Skip to content

Commit 316a5c3

Browse files
committed
refactor: folder structure
1 parent c844f49 commit 316a5c3

10 files changed

+76
-53
lines changed

Diff for: packages/parameters/src/SSMProvider.ts renamed to packages/parameters/src/ssm/SSMProvider.ts

+5-31
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { BaseProvider, DEFAULT_PROVIDERS, transformValue } from './BaseProvider';
2-
import { GetParameterError } from './Exceptions';
3-
import { DEFAULT_MAX_AGE_SECS } from './constants';
1+
import { BaseProvider, DEFAULT_PROVIDERS, transformValue } from '../BaseProvider';
2+
import { GetParameterError } from '../Exceptions';
3+
import { DEFAULT_MAX_AGE_SECS } from '../constants';
44
import { SSMClient, GetParameterCommand, paginateGetParametersByPath, GetParametersCommand } from '@aws-sdk/client-ssm';
55
import type {
66
SSMClientConfig,
@@ -339,7 +339,7 @@ class SSMProvider extends BaseProvider {
339339
let value;
340340
// NOTE: if transform is set, we do it before caching to reduce number of operations
341341
if (parameterValue && parameterOptions.transform) {
342-
value = transformValue(parameterValue, parameterOptions.transform, throwOnError);
342+
value = transformValue(parameterValue, parameterOptions.transform, throwOnError, parameterName);
343343
} else if (parameterValue) {
344344
value = parameterValue;
345345
}
@@ -356,33 +356,7 @@ class SSMProvider extends BaseProvider {
356356
}
357357
}
358358

359-
const getParameter = (name: string, options?: SSMGetOptionsInterface): Promise<undefined | string | Record<string, unknown>> => {
360-
if (!DEFAULT_PROVIDERS.hasOwnProperty('ssm')) {
361-
DEFAULT_PROVIDERS.ssm = new SSMProvider();
362-
}
363-
364-
return DEFAULT_PROVIDERS.ssm.get(name, options);
365-
};
366-
367-
const getParameters = (path: string, options?: SSMGetMultipleOptionsInterface): Promise<undefined | Record<string, unknown>> => {
368-
if (!DEFAULT_PROVIDERS.hasOwnProperty('ssm')) {
369-
DEFAULT_PROVIDERS.ssm = new SSMProvider();
370-
}
371-
372-
return DEFAULT_PROVIDERS.ssm.getMultiple(path, options);
373-
};
374-
375-
const getParametersByName = (parameters: Record<string, SSMGetParametersByNameOptionsInterface>, options?: SSMGetParametersByNameOptionsInterface): Promise<Record<string, unknown>> => {
376-
if (!DEFAULT_PROVIDERS.hasOwnProperty('ssm')) {
377-
DEFAULT_PROVIDERS.ssm = new SSMProvider();
378-
}
379-
380-
return (DEFAULT_PROVIDERS.ssm as SSMProvider).getParametersByName(parameters, options);
381-
};
382-
383359
export {
384360
SSMProvider,
385-
getParameter,
386-
getParameters,
387-
getParametersByName,
361+
DEFAULT_PROVIDERS,
388362
};

Diff for: packages/parameters/src/ssm/getParameter.ts

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { SSMProvider, DEFAULT_PROVIDERS } from './SSMProvider';
2+
import type { SSMGetOptionsInterface } from 'types/SSMProvider';
3+
4+
const getParameter = (
5+
name: string,
6+
options?: SSMGetOptionsInterface
7+
): Promise<undefined | string | Record<string, unknown>> => {
8+
if (!DEFAULT_PROVIDERS.hasOwnProperty('ssm')) {
9+
DEFAULT_PROVIDERS.ssm = new SSMProvider();
10+
}
11+
12+
return DEFAULT_PROVIDERS.ssm.get(name, options);
13+
};
14+
15+
export {
16+
getParameter,
17+
};

Diff for: packages/parameters/src/ssm/getParameters.ts

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { SSMProvider, DEFAULT_PROVIDERS } from './SSMProvider';
2+
import type { SSMGetMultipleOptionsInterface } from 'types/SSMProvider';
3+
4+
const getParameters = (
5+
path: string,
6+
options?: SSMGetMultipleOptionsInterface
7+
): Promise<undefined | Record<string, unknown>> => {
8+
if (!DEFAULT_PROVIDERS.hasOwnProperty('ssm')) {
9+
DEFAULT_PROVIDERS.ssm = new SSMProvider();
10+
}
11+
12+
return DEFAULT_PROVIDERS.ssm.getMultiple(path, options);
13+
};
14+
15+
export {
16+
getParameters,
17+
};

Diff for: packages/parameters/src/ssm/getParametersByName.ts

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { SSMProvider, DEFAULT_PROVIDERS } from './SSMProvider';
2+
import type { SSMGetParametersByNameOptionsInterface } from 'types/SSMProvider';
3+
4+
const getParametersByName = (
5+
parameters: Record<string, SSMGetParametersByNameOptionsInterface>,
6+
options?: SSMGetParametersByNameOptionsInterface
7+
): Promise<Record<string, unknown>> => {
8+
if (!DEFAULT_PROVIDERS.hasOwnProperty('ssm')) {
9+
DEFAULT_PROVIDERS.ssm = new SSMProvider();
10+
}
11+
12+
return (DEFAULT_PROVIDERS.ssm as SSMProvider).getParametersByName(parameters, options);
13+
};
14+
15+
export {
16+
getParametersByName,
17+
};

Diff for: packages/parameters/src/ssm/index.ts

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
export * from './SSMProvider';
2+
export * from './getParameter';
3+
export * from './getParameters';
4+
export * from './getParametersByName';

Diff for: packages/parameters/src/types/SSMProvider.ts

+4-10
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { GetParameterCommandInput, GetParametersByPathCommandInput } from '@aws-sdk/client-ssm';
2-
import type { TransformOptions } from 'types/BaseProvider';
2+
import type { GetOptionsInterface, GetMultipleOptionsInterface, TransformOptions } from './BaseProvider';
33

44
/**
55
* Options for the SSMProvider get method.
@@ -9,21 +9,15 @@ import type { TransformOptions } from 'types/BaseProvider';
99
* @property {boolean} decrypt - If true, the parameter will be decrypted.
1010
* @property {Partial<GetParameterCommandInput>} sdkOptions - Options for the AWS SDK.
1111
*/
12-
interface SSMGetOptionsInterface {
13-
maxAge?: number
14-
sdkOptions?: Partial<GetParameterCommandInput>
15-
forceFetch?: boolean
12+
interface SSMGetOptionsInterface extends GetOptionsInterface {
1613
decrypt?: boolean
17-
transform?: TransformOptions
14+
sdkOptions?: Partial<GetParameterCommandInput>
1815
}
1916

20-
interface SSMGetMultipleOptionsInterface {
21-
maxAge?: number
22-
forceFetch?: boolean
17+
interface SSMGetMultipleOptionsInterface extends GetMultipleOptionsInterface {
2318
sdkOptions?: Partial<GetParametersByPathCommandInput>
2419
decrypt?: boolean
2520
recursive?: boolean
26-
transform?: TransformOptions
2721
throwOnTransformError?: boolean
2822
}
2923

Diff for: packages/parameters/tests/unit/SSMProvider.test.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/**
2-
* Test SSMProvider class
2+
* Test SSMProvider class
33
*
4-
* @group unit/parameters/SSMProvider/class
4+
* @group unit/parameters/ssm/class
55
*/
6-
import { SSMProvider } from '../../src/SSMProvider';
6+
import { SSMProvider } from '../../src/ssm';
77
import {
88
SSMClient,
99
GetParameterCommand,

Diff for: packages/parameters/tests/unit/getParameter.test.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/**
2-
* Test getParameter function
2+
* Test getParameter function
33
*
4-
* @group unit/parameters/SSMProvider/getParameter/function
4+
* @group unit/parameters/ssm/getParameter/function
55
*/
66
import { DEFAULT_PROVIDERS } from '../../src/BaseProvider';
7-
import { SSMProvider, getParameter } from '../../src/SSMProvider';
7+
import { SSMProvider, getParameter } from '../../src/ssm';
88
import { SSMClient, GetParameterCommand } from '@aws-sdk/client-ssm';
99
import { mockClient } from 'aws-sdk-client-mock';
1010
import 'aws-sdk-client-mock-jest';

Diff for: packages/parameters/tests/unit/getParameters.test.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/**
2-
* Test getParameters function
2+
* Test getParameters function
33
*
4-
* @group unit/parameters/SSMProvider/getParameters/function
4+
* @group unit/parameters/ssm/getParameters/function
55
*/
66
import { DEFAULT_PROVIDERS } from '../../src/BaseProvider';
7-
import { SSMProvider, getParameters } from '../../src/SSMProvider';
7+
import { SSMProvider, getParameters } from '../../src/ssm';
88
import { SSMClient, GetParametersByPathCommand } from '@aws-sdk/client-ssm';
99
import { mockClient } from 'aws-sdk-client-mock';
1010
import 'aws-sdk-client-mock-jest';

Diff for: packages/parameters/tests/unit/getParametersByName.test.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/**
2-
* Test getParametersByName function
2+
* Test getParametersByName function
33
*
4-
* @group unit/parameters/SSMProvider/getParametersByName/function
4+
* @group unit/parameters/ssm/getParametersByName/function
55
*/
66
import { DEFAULT_PROVIDERS } from '../../src/BaseProvider';
7-
import { SSMProvider, getParametersByName } from '../../src/SSMProvider';
7+
import { SSMProvider, getParametersByName } from '../../src/ssm';
88

99
describe('Function: getParametersByName', () => {
1010

0 commit comments

Comments
 (0)