@squiz/dx-common-lib 1.69.1 → 1.71.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/lib/api-key-validation/ApiKeyValidationService.d.ts +1 -0
  3. package/lib/api-key-validation/CloudflareApiKeyService.d.ts +2 -0
  4. package/lib/api-key-validation/CloudflareApiKeyService.js +15 -6
  5. package/lib/api-key-validation/CloudflareApiKeyService.js.map +1 -1
  6. package/lib/api-key-validation/CloudflareApiKeyService.spec.js +29 -5
  7. package/lib/api-key-validation/CloudflareApiKeyService.spec.js.map +1 -1
  8. package/lib/api-key-validation/DevelopmentApiKeyService.d.ts +2 -1
  9. package/lib/api-key-validation/DevelopmentApiKeyService.js +5 -1
  10. package/lib/api-key-validation/DevelopmentApiKeyService.js.map +1 -1
  11. package/lib/api-key-validation/DevelopmentApiKeyService.spec.js +11 -0
  12. package/lib/api-key-validation/DevelopmentApiKeyService.spec.js.map +1 -1
  13. package/lib/api-key-validation/getApiKeyService.js +1 -2
  14. package/lib/api-key-validation/getApiKeyService.js.map +1 -1
  15. package/lib/assertions/assertAssign.js +1 -2
  16. package/lib/assertions/assertAssign.js.map +1 -1
  17. package/lib/assertions/assertAssignWithDefaultUndefinedValue.js +1 -2
  18. package/lib/assertions/assertAssignWithDefaultUndefinedValue.js.map +1 -1
  19. package/lib/assertions/assertIsArray.js +1 -2
  20. package/lib/assertions/assertIsArray.js.map +1 -1
  21. package/lib/assertions/assertIsBoolean.js +1 -2
  22. package/lib/assertions/assertIsBoolean.js.map +1 -1
  23. package/lib/assertions/assertIsDefined.js +1 -2
  24. package/lib/assertions/assertIsDefined.js.map +1 -1
  25. package/lib/assertions/assertIsEnumValue.js +1 -2
  26. package/lib/assertions/assertIsEnumValue.js.map +1 -1
  27. package/lib/assertions/assertIsMapOfStringAny.js +1 -2
  28. package/lib/assertions/assertIsMapOfStringAny.js.map +1 -1
  29. package/lib/assertions/assertIsMapOfStringString.js +1 -2
  30. package/lib/assertions/assertIsMapOfStringString.js.map +1 -1
  31. package/lib/assertions/assertIsNotAnEmptyString.js +1 -2
  32. package/lib/assertions/assertIsNotAnEmptyString.js.map +1 -1
  33. package/lib/assertions/assertIsObject.js +1 -2
  34. package/lib/assertions/assertIsObject.js.map +1 -1
  35. package/lib/assertions/assertIsString.js +1 -2
  36. package/lib/assertions/assertIsString.js.map +1 -1
  37. package/lib/cache/applyDefaultRulesToCacheControlObject.d.ts +15 -15
  38. package/lib/cache/applyDefaultRulesToCacheControlObject.js +1 -2
  39. package/lib/cache/applyDefaultRulesToCacheControlObject.js.map +1 -1
  40. package/lib/cache/cacheControlToString.js +1 -2
  41. package/lib/cache/cacheControlToString.js.map +1 -1
  42. package/lib/cache/parseAndSanitiseCacheControlHeader.js +3 -3
  43. package/lib/cache/parseAndSanitiseCacheControlHeader.js.map +1 -1
  44. package/lib/cache/parseCacheControl.js +1 -2
  45. package/lib/cache/parseCacheControl.js.map +1 -1
  46. package/lib/edge-components-secret-key-service/DevelopmentEdgeComponentsSecretKeyService.d.ts +7 -0
  47. package/lib/edge-components-secret-key-service/DevelopmentEdgeComponentsSecretKeyService.js +16 -0
  48. package/lib/edge-components-secret-key-service/DevelopmentEdgeComponentsSecretKeyService.js.map +1 -0
  49. package/lib/edge-components-secret-key-service/DevelopmentEdgeComponentsSecretKeyService.spec.d.ts +1 -0
  50. package/lib/edge-components-secret-key-service/DevelopmentEdgeComponentsSecretKeyService.spec.js +13 -0
  51. package/lib/edge-components-secret-key-service/DevelopmentEdgeComponentsSecretKeyService.spec.js.map +1 -0
  52. package/lib/edge-components-secret-key-service/EdgeComponentsSecretKeyService.d.ts +4 -0
  53. package/lib/edge-components-secret-key-service/EdgeComponentsSecretKeyService.js +3 -0
  54. package/lib/edge-components-secret-key-service/EdgeComponentsSecretKeyService.js.map +1 -0
  55. package/lib/edge-components-secret-key-service/ProductionEdgeComponentsSecretKeyService.d.ts +16 -0
  56. package/lib/edge-components-secret-key-service/ProductionEdgeComponentsSecretKeyService.js +49 -0
  57. package/lib/edge-components-secret-key-service/ProductionEdgeComponentsSecretKeyService.js.map +1 -0
  58. package/lib/edge-components-secret-key-service/ProductionEdgeComponentsSecretKeyService.spec.d.ts +1 -0
  59. package/lib/edge-components-secret-key-service/ProductionEdgeComponentsSecretKeyService.spec.js +34 -0
  60. package/lib/edge-components-secret-key-service/ProductionEdgeComponentsSecretKeyService.spec.js.map +1 -0
  61. package/lib/edge-components-secret-key-service/getEdgeComponentsSecretService.d.ts +5 -0
  62. package/lib/edge-components-secret-key-service/getEdgeComponentsSecretService.js +20 -0
  63. package/lib/edge-components-secret-key-service/getEdgeComponentsSecretService.js.map +1 -0
  64. package/lib/edge-components-secret-key-service/getEdgeComponentsSecretService.spec.d.ts +1 -0
  65. package/lib/edge-components-secret-key-service/getEdgeComponentsSecretService.spec.js +28 -0
  66. package/lib/edge-components-secret-key-service/getEdgeComponentsSecretService.spec.js.map +1 -0
  67. package/lib/esi-mac-token-generator/EsiMacTokenGenerator.d.ts +8 -0
  68. package/lib/esi-mac-token-generator/EsiMacTokenGenerator.js +24 -0
  69. package/lib/esi-mac-token-generator/EsiMacTokenGenerator.js.map +1 -0
  70. package/lib/esi-mac-token-generator/EsiMacTokenGenerator.spec.d.ts +1 -0
  71. package/lib/esi-mac-token-generator/EsiMacTokenGenerator.spec.js +23 -0
  72. package/lib/esi-mac-token-generator/EsiMacTokenGenerator.spec.js.map +1 -0
  73. package/lib/index.d.ts +5 -0
  74. package/lib/index.js +5 -0
  75. package/lib/index.js.map +1 -1
  76. package/lib/json-order/index.d.ts +2 -2
  77. package/lib/json-order/key.js.map +1 -1
  78. package/lib/json-order/order.js.map +1 -1
  79. package/lib/json-order/parse.js.map +1 -1
  80. package/lib/server-utils/errorMiddleware.js +1 -2
  81. package/lib/server-utils/errorMiddleware.js.map +1 -1
  82. package/lib/server-utils/requestLogger.js +2 -3
  83. package/lib/server-utils/requestLogger.js.map +1 -1
  84. package/lib/util/getNodeEnv.js +1 -2
  85. package/lib/util/getNodeEnv.js.map +1 -1
  86. package/lib/util/getPageInfo.js +1 -2
  87. package/lib/util/getPageInfo.js.map +1 -1
  88. package/lib/util/isPathTryingToAccessOutsideOfRoot.js +1 -2
  89. package/lib/util/isPathTryingToAccessOutsideOfRoot.js.map +1 -1
  90. package/lib/util/isReadable.js +1 -2
  91. package/lib/util/isReadable.js.map +1 -1
  92. package/lib/util/joinAbsoluteUrlPath.js +1 -2
  93. package/lib/util/joinAbsoluteUrlPath.js.map +1 -1
  94. package/lib/util/never.js +1 -2
  95. package/lib/util/never.js.map +1 -1
  96. package/lib/util/parseEnvVarForVar.js +1 -2
  97. package/lib/util/parseEnvVarForVar.js.map +1 -1
  98. package/lib/zip/zipDirectory.js +1 -2
  99. package/lib/zip/zipDirectory.js.map +1 -1
  100. package/package.json +3 -3
  101. package/src/api-key-validation/ApiKeyValidationService.ts +2 -0
  102. package/src/api-key-validation/CloudflareApiKeyService.spec.ts +52 -5
  103. package/src/api-key-validation/CloudflareApiKeyService.ts +16 -8
  104. package/src/api-key-validation/DevelopmentApiKeyService.spec.ts +13 -0
  105. package/src/api-key-validation/DevelopmentApiKeyService.ts +6 -0
  106. package/src/edge-components-secret-key-service/DevelopmentEdgeComponentsSecretKeyService.spec.ts +11 -0
  107. package/src/edge-components-secret-key-service/DevelopmentEdgeComponentsSecretKeyService.ts +13 -0
  108. package/src/edge-components-secret-key-service/EdgeComponentsSecretKeyService.ts +4 -0
  109. package/src/edge-components-secret-key-service/ProductionEdgeComponentsSecretKeyService.spec.ts +47 -0
  110. package/src/edge-components-secret-key-service/ProductionEdgeComponentsSecretKeyService.ts +63 -0
  111. package/src/edge-components-secret-key-service/getEdgeComponentsSecretService.spec.ts +39 -0
  112. package/src/edge-components-secret-key-service/getEdgeComponentsSecretService.ts +21 -0
  113. package/src/esi-mac-token-generator/EsiMacTokenGenerator.spec.ts +25 -0
  114. package/src/esi-mac-token-generator/EsiMacTokenGenerator.ts +28 -0
  115. package/src/index.ts +5 -0
  116. package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Change Log
2
2
 
3
+ ## 1.71.0
4
+
5
+ ### Minor Changes
6
+
7
+ - aa3ade1: Secure component ESI tags generated by Page Render
8
+
9
+ ## 1.70.0
10
+
11
+ ### Minor Changes
12
+
13
+ - e6d7a26: fetch api key secret for edge component service
14
+
3
15
  ## 1.69.1
4
16
 
5
17
  ### Patch Changes
@@ -4,4 +4,5 @@ export interface ApiKeyValidationService {
4
4
  * @deprecated Suggest moving towards using JWT authentication.
5
5
  */
6
6
  getInterServiceKeys(): string[];
7
+ getEsiSecretToken(): string;
7
8
  }
@@ -3,6 +3,7 @@ import { ApiKeyValidationService } from './ApiKeyValidationService';
3
3
  import { Logger } from '@squiz/dx-logger-lib';
4
4
  export interface CloudFlareKeys {
5
5
  'inter-service-keys': string[];
6
+ 'esi-secret-token': string;
6
7
  }
7
8
  export declare class CloudflareApiKeyService implements ApiKeyValidationService {
8
9
  protected secretName: string;
@@ -13,4 +14,5 @@ export declare class CloudflareApiKeyService implements ApiKeyValidationService
13
14
  protected getValidApiKeys(): Promise<CloudFlareKeys>;
14
15
  refreshApiKeys(): Promise<void>;
15
16
  getInterServiceKeys(): string[];
17
+ getEsiSecretToken(): string;
16
18
  }
@@ -6,6 +6,7 @@ const UnAuthenticatedRequestError_1 = require("../error/UnAuthenticatedRequestEr
6
6
  const dx_logger_lib_1 = require("@squiz/dx-logger-lib");
7
7
  let validKeys = {
8
8
  'inter-service-keys': [],
9
+ 'esi-secret-token': '',
9
10
  };
10
11
  let refreshInterval;
11
12
  // number must be smaller than 24 days.
@@ -42,16 +43,21 @@ class CloudflareApiKeyService {
42
43
  }
43
44
  try {
44
45
  if (!secretValue.SecretString) {
45
- throw new Error('cloudflare api key SecretString undefined');
46
+ throw new Error('Cloudflare api key SecretString undefined');
46
47
  }
47
- const secret = JSON.parse(secretValue.SecretString);
48
- if (secret['inter-service-keys']) {
49
- return secret;
48
+ try {
49
+ const secret = JSON.parse(secretValue.SecretString);
50
+ if (secret['inter-service-keys'] && secret['esi-secret-token']) {
51
+ return secret;
52
+ }
50
53
  }
51
- throw new Error('api keys retrieved and decoded successfully but contained no values');
54
+ catch (e) {
55
+ throw new Error('Invalid JSON');
56
+ }
57
+ throw new Error('Missing all required keys');
52
58
  }
53
59
  catch (e) {
54
- throw new Error('failed to decode cloudflare api key values');
60
+ throw new Error(`Failed to decode cloudflare api key values: ${e.message}`);
55
61
  }
56
62
  }
57
63
  async refreshApiKeys() {
@@ -68,6 +74,9 @@ class CloudflareApiKeyService {
68
74
  getInterServiceKeys() {
69
75
  return validKeys['inter-service-keys'];
70
76
  }
77
+ getEsiSecretToken() {
78
+ return validKeys['esi-secret-token'];
79
+ }
71
80
  }
72
81
  exports.CloudflareApiKeyService = CloudflareApiKeyService;
73
82
  //# sourceMappingURL=CloudflareApiKeyService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CloudflareApiKeyService.js","sourceRoot":"","sources":["../../src/api-key-validation/CloudflareApiKeyService.ts"],"names":[],"mappings":";;;AAAA,4EAIyC;AACzC,sFAAmF;AAEnF,wDAAyD;AAMzD,IAAI,SAAS,GAAmB;IAC9B,oBAAoB,EAAE,EAAE;CACzB,CAAC;AAEF,IAAI,eAA+C,CAAC;AACpD,uCAAuC;AACvC,2EAA2E;AAC3E,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,qCAAqC;AAEjF,MAAa,uBAAuB;IAIlC,YAAsB,UAAkB,EAAE,MAAe;QAAnC,eAAU,GAAV,UAAU,CAAQ;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,6CAAoB,CAAC;QAC5C,yBAAyB;QACzB,4BAA4B;SAC7B,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,GAAG,IAAA,yBAAS,EAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC,CAAC;SACzD;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEM,sBAAsB,CAAC,GAAW;QACvC,IAAI,SAAS,CAAC,oBAAoB,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE;YAC/C,MAAM,IAAI,yDAA2B,CAAC,4CAA4C,CAAC,CAAC;SACrF;QAED,OAAO,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IAES,KAAK,CAAC,eAAe;QAC7B,IAAI,WAAwC,CAAC;QAE7C,IAAI;YACF,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CACzC,IAAI,8CAAqB,CAAC;gBACxB,QAAQ,EAAE,IAAI,CAAC,UAAU;aAC1B,CAAC,CACH,CAAC;SACH;QAAC,OAAO,CAAM,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,oCAAoC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;SACnE;QAED,IAAI;YACF,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAC9D;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAEpD,IAAI,MAAM,CAAC,oBAAoB,CAAC,EAAE;gBAChC,OAAO,MAAM,CAAC;aACf;YAED,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;SACxF;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC/D;IACH,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpC,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAEzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,oBAAoB,CAAC,CAAC,MAAM,2BAA2B,CAAC,CAAC;QAE7F,IAAI,CAAC,eAAe,EAAE;YACpB,eAAe,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;gBACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9B,CAAC,EAAE,aAAa,CAAC,CAAC;SACnB;IACH,CAAC;IAED,wEAAwE;IACjE,mBAAmB;QACxB,OAAO,SAAS,CAAC,oBAAoB,CAAC,CAAC;IACzC,CAAC;CACF;AAxED,0DAwEC"}
1
+ {"version":3,"file":"CloudflareApiKeyService.js","sourceRoot":"","sources":["../../src/api-key-validation/CloudflareApiKeyService.ts"],"names":[],"mappings":"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"}
@@ -11,18 +11,26 @@ describe('CloudflareApiKeyService', () => {
11
11
  describe('refreshApiKeys', () => {
12
12
  it('should throw an error if the secret value is not in the expected format', async () => {
13
13
  sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: 'bad json' }));
14
- await expect(service.refreshApiKeys()).rejects.toThrowError(new Error('failed to decode cloudflare api key values'));
14
+ await expect(service.refreshApiKeys()).rejects.toThrowError(new Error('Failed to decode cloudflare api key values: Invalid JSON'));
15
+ });
16
+ it('should throw an error if the secret value missing "inter-service-keys" value', async () => {
17
+ sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: '{"esi-secret-token": "foo"}' }));
18
+ await expect(service.refreshApiKeys()).rejects.toThrowError(new Error('Failed to decode cloudflare api key values: Missing all required keys'));
19
+ });
20
+ it('should throw an error if the secret value missing "esi-secret-token" value', async () => {
21
+ sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: '{"inter-service-keys": []}' }));
22
+ await expect(service.refreshApiKeys()).rejects.toThrowError(new Error('Failed to decode cloudflare api key values: Missing all required keys'));
15
23
  });
16
24
  it('should make a request to the aws secrets manager when refreshing the keys', async () => {
17
25
  sendSpy.mockClear();
18
- sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: '{"inter-service-keys":[]}' }));
26
+ sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: '{"inter-service-keys":[], "esi-secret-token": "foo"}' }));
19
27
  await service.refreshApiKeys();
20
28
  expect(sendSpy.mock.lastCall[0].input).toEqual({ SecretId: 'my-secret-name' });
21
29
  expect(sendSpy.mock.lastCall[0]).toBeInstanceOf(client_secrets_manager_1.GetSecretValueCommand);
22
30
  });
23
31
  it('should start a refresh timer once called, but only once', (done) => {
24
32
  sendSpy.mockClear();
25
- sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: '{"inter-service-keys":["my-new-key"]}' }));
33
+ sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: '{"inter-service-keys":["my-new-key"], "esi-secret-token": "foo"}' }));
26
34
  const spy = jest.spyOn(service, 'refreshApiKeys');
27
35
  expect(spy).not.toBeCalled();
28
36
  expect(setInterval).toHaveBeenCalledTimes(1); // for the above 2 tests
@@ -38,7 +46,7 @@ describe('CloudflareApiKeyService', () => {
38
46
  describe('interServiceKeyIsValid', () => {
39
47
  describe('when there are no api keys', () => {
40
48
  beforeAll(async () => {
41
- sendSpy.mockImplementation(() => Promise.resolve({ SecretString: '{"inter-service-keys":[]}' }));
49
+ sendSpy.mockImplementation(() => Promise.resolve({ SecretString: '{"inter-service-keys":[], "esi-secret-token": "foo"}' }));
42
50
  await service.refreshApiKeys();
43
51
  });
44
52
  it('should throw an unauthenticated request error when validating a key if there are no keys to validate against', () => {
@@ -48,7 +56,7 @@ describe('CloudflareApiKeyService', () => {
48
56
  describe('when there are api keys', () => {
49
57
  beforeAll(async () => {
50
58
  sendSpy.mockImplementation(() => Promise.resolve({
51
- SecretString: '{"keys":["my-key", "my-other-key"], "inter-service-keys":["my-inter-service-key"]}',
59
+ SecretString: '{"keys":["my-key", "my-other-key"], "inter-service-keys":["my-inter-service-key"], "esi-secret-token": "foo"}',
52
60
  }));
53
61
  await service.refreshApiKeys();
54
62
  });
@@ -57,5 +65,21 @@ describe('CloudflareApiKeyService', () => {
57
65
  });
58
66
  });
59
67
  });
68
+ describe('getInterServiceKeys', () => {
69
+ it('should return "esi-secret-token" from the secret manager', async () => {
70
+ sendSpy.mockClear();
71
+ sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: '{"inter-service-keys":["some-key"], "esi-secret-token": "foo"}' }));
72
+ await service.refreshApiKeys();
73
+ expect(service.getInterServiceKeys()).toEqual(['some-key']);
74
+ });
75
+ });
76
+ describe('getEsiSecretToken', () => {
77
+ it('should return "esi-secret-token" from the secret manager', async () => {
78
+ sendSpy.mockClear();
79
+ sendSpy.mockImplementationOnce(() => Promise.resolve({ SecretString: '{"inter-service-keys":[], "esi-secret-token": "foo"}' }));
80
+ await service.refreshApiKeys();
81
+ expect(service.getEsiSecretToken()).toEqual('foo');
82
+ });
83
+ });
60
84
  });
61
85
  //# sourceMappingURL=CloudflareApiKeyService.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CloudflareApiKeyService.spec.js","sourceRoot":"","sources":["../../src/api-key-validation/CloudflareApiKeyService.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CloudflareApiKeyService.spec.js","sourceRoot":"","sources":["../../src/api-key-validation/CloudflareApiKeyService.spec.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
- /// <reference types="node" />
2
1
  import { Logger } from '@squiz/dx-logger-lib';
3
2
  import { ApiKeyValidationService } from './ApiKeyValidationService';
4
3
  import { IncomingMessage } from 'http';
4
+ export declare const DEVELOPMENT_ESI_SECRET = "cf-secret-token";
5
5
  export declare class DevelopmentApiKeyService implements ApiKeyValidationService {
6
6
  private logger;
7
7
  constructor(logger?: Logger);
8
8
  matrixKeyIsValid(key: string | undefined, request: IncomingMessage): boolean;
9
9
  interServiceKeyIsValid(key: string | undefined): boolean;
10
10
  getInterServiceKeys(): string[];
11
+ getEsiSecretToken(): string;
11
12
  }
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DevelopmentApiKeyService = void 0;
3
+ exports.DevelopmentApiKeyService = exports.DEVELOPMENT_ESI_SECRET = void 0;
4
4
  const dx_logger_lib_1 = require("@squiz/dx-logger-lib");
5
+ exports.DEVELOPMENT_ESI_SECRET = `cf-secret-token`;
5
6
  class DevelopmentApiKeyService {
6
7
  constructor(logger) {
7
8
  this.logger = logger || (0, dx_logger_lib_1.getLogger)({ name: 'DevelopmentApiKeyService' });
@@ -21,6 +22,9 @@ class DevelopmentApiKeyService {
21
22
  getInterServiceKeys() {
22
23
  return ['inter-service-api-key'];
23
24
  }
25
+ getEsiSecretToken() {
26
+ return exports.DEVELOPMENT_ESI_SECRET;
27
+ }
24
28
  }
25
29
  exports.DevelopmentApiKeyService = DevelopmentApiKeyService;
26
30
  //# sourceMappingURL=DevelopmentApiKeyService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DevelopmentApiKeyService.js","sourceRoot":"","sources":["../../src/api-key-validation/DevelopmentApiKeyService.ts"],"names":[],"mappings":";;;AAAA,wDAAyD;AAIzD,MAAa,wBAAwB;IAGnC,YAAmB,MAAe;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAA,yBAAS,EAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,CAAC;IAC1E,CAAC;IACM,gBAAgB,CAAC,GAAuB,EAAE,OAAwB;;QACvE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE;YACpE,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,MAAA,OAAO,CAAC,OAAO,0CAAG,YAAY,CAAC;SAC3C,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IACM,sBAAsB,CAAC,GAAuB;QACnD,OAAO,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,wEAAwE;IACjE,mBAAmB;QACxB,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACnC,CAAC;CACF;AApBD,4DAoBC"}
1
+ {"version":3,"file":"DevelopmentApiKeyService.js","sourceRoot":"","sources":["../../src/api-key-validation/DevelopmentApiKeyService.ts"],"names":[],"mappings":";;;AAAA,wDAAyD;AAI5C,QAAA,sBAAsB,GAAG,iBAAiB,CAAC;AAExD,MAAa,wBAAwB;IAGnC,YAAmB,MAAe;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAA,yBAAS,EAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,CAAC;IAC1E,CAAC;IACM,gBAAgB,CAAC,GAAuB,EAAE,OAAwB;;QACvE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE;YACpE,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,MAAA,OAAO,CAAC,OAAO,0CAAG,YAAY,CAAC;SAC3C,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IACM,sBAAsB,CAAC,GAAuB;QACnD,OAAO,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,wEAAwE;IACjE,mBAAmB;QACxB,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACnC,CAAC;IAEM,iBAAiB;QACtB,OAAO,8BAAsB,CAAC;IAChC,CAAC;CACF;AAxBD,4DAwBC"}
@@ -17,5 +17,16 @@ describe('DevelopmentApiKeyService', () => {
17
17
  expect(service.interServiceKeyIsValid('invalid-api-key')).toEqual(false);
18
18
  });
19
19
  });
20
+ describe('getInterServiceKeys', () => {
21
+ it('should return a fixed value', async () => {
22
+ console.log(service.getInterServiceKeys());
23
+ expect(service.getInterServiceKeys()).toEqual(['inter-service-api-key']);
24
+ });
25
+ });
26
+ describe('getEsiSecretToken', () => {
27
+ it('should return a fixed value', async () => {
28
+ expect(service.getEsiSecretToken()).toEqual('cf-secret-token');
29
+ });
30
+ });
20
31
  });
21
32
  //# sourceMappingURL=DevelopmentApiKeyService.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DevelopmentApiKeyService.spec.js","sourceRoot":"","sources":["../../src/api-key-validation/DevelopmentApiKeyService.spec.ts"],"names":[],"mappings":";;AAAA,yEAAsE;AAEtE,wDAAiD;AAEjD,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,IAAA,yBAAS,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAExF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,uBAAuB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACnE,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"DevelopmentApiKeyService.spec.js","sourceRoot":"","sources":["../../src/api-key-validation/DevelopmentApiKeyService.spec.ts"],"names":[],"mappings":";;AAAA,yEAAsE;AAEtE,wDAAiD;AAEjD,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,IAAA,yBAAS,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAExF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,uBAAuB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACnE,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YAC3C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;YAC3C,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YAC3C,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getApiKeyService = void 0;
3
+ exports.getApiKeyService = getApiKeyService;
4
4
  const util_1 = require("../util");
5
5
  const CloudflareApiKeyService_1 = require("./CloudflareApiKeyService");
6
6
  const DevelopmentApiKeyService_1 = require("./DevelopmentApiKeyService");
@@ -22,5 +22,4 @@ function getApiKeyService(prodEnv) {
22
22
  (0, util_1.never)(env);
23
23
  }
24
24
  }
25
- exports.getApiKeyService = getApiKeyService;
26
25
  //# sourceMappingURL=getApiKeyService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getApiKeyService.js","sourceRoot":"","sources":["../../src/api-key-validation/getApiKeyService.ts"],"names":[],"mappings":";;;AAAA,kCAA4C;AAC5C,uEAAoE;AACpE,yEAAsE;AAEtE;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAGhC;IACC,MAAM,GAAG,GAAG,IAAA,iBAAU,GAAE,CAAC;IAEzB,QAAQ,GAAG,EAAE;QACX,mCAAmC;QACnC,KAAK,aAAa;YAChB,OAAO,IAAI,mDAAwB,EAAE,CAAC;QACxC,KAAK,YAAY;YACf,IAAI,OAAO,IAAI,SAAS,EAAE;gBACxB,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAC;aACtG;YAED,OAAO,IAAI,iDAAuB,CAChC,MAAM,OAAO,CAAC,qBAAqB,IAAI,OAAO,CAAC,WAAW,sBAAsB,CACjF,CAAC;QAEJ;YACE,IAAA,YAAK,EAAC,GAAG,CAAC,CAAC;KACd;AACH,CAAC;AAtBD,4CAsBC"}
1
+ {"version":3,"file":"getApiKeyService.js","sourceRoot":"","sources":["../../src/api-key-validation/getApiKeyService.ts"],"names":[],"mappings":";;AAOA,4CAsBC;AA7BD,kCAA4C;AAC5C,uEAAoE;AACpE,yEAAsE;AAEtE;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAGhC;IACC,MAAM,GAAG,GAAG,IAAA,iBAAU,GAAE,CAAC;IAEzB,QAAQ,GAAG,EAAE,CAAC;QACZ,mCAAmC;QACnC,KAAK,aAAa;YAChB,OAAO,IAAI,mDAAwB,EAAE,CAAC;QACxC,KAAK,YAAY;YACf,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAC;YACvG,CAAC;YAED,OAAO,IAAI,iDAAuB,CAChC,MAAM,OAAO,CAAC,qBAAqB,IAAI,OAAO,CAAC,WAAW,sBAAsB,CACjF,CAAC;QAEJ;YACE,IAAA,YAAK,EAAC,GAAG,CAAC,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertAssign = void 0;
3
+ exports.assertAssign = assertAssign;
4
4
  const assert_1 = require("assert");
5
5
  /**
6
6
  * Assert and return unknown value as known type
@@ -19,5 +19,4 @@ function assertAssign(value, assertionFunc, errorMessage) {
19
19
  }
20
20
  return value;
21
21
  }
22
- exports.assertAssign = assertAssign;
23
22
  //# sourceMappingURL=assertAssign.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertAssign.js","sourceRoot":"","sources":["../../src/assertions/assertAssign.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC;;GAEG;AACH,SAAgB,YAAY,CAC1B,KAAc,EACd,aAAiD,EACjD,YAAqB;IAErB,IAAI;QACF,aAAa,CAAC,KAAK,CAAC,CAAC;KACtB;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,YAAY,EAAE;YAChB,MAAM,IAAI,uBAAc,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;SACrD;aAAM;YACL,MAAM,CAAC,CAAC;SACT;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAhBD,oCAgBC"}
1
+ {"version":3,"file":"assertAssign.js","sourceRoot":"","sources":["../../src/assertions/assertAssign.ts"],"names":[],"mappings":";;AAKA,oCAgBC;AArBD,mCAAwC;AAExC;;GAEG;AACH,SAAgB,YAAY,CAC1B,KAAc,EACd,aAAiD,EACjD,YAAqB;IAErB,IAAI,CAAC;QACH,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,IAAI,uBAAc,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertAssignWithDefaultUndefinedValue = void 0;
3
+ exports.assertAssignWithDefaultUndefinedValue = assertAssignWithDefaultUndefinedValue;
4
4
  const assertAssign_1 = require("./assertAssign");
5
5
  /**
6
6
  * If value is undefined, return default value otherwise assert it meets assertion rule
@@ -11,5 +11,4 @@ function assertAssignWithDefaultUndefinedValue(value, assertionFunc, defaultValu
11
11
  }
12
12
  return (0, assertAssign_1.assertAssign)(value, assertionFunc, errorMessage);
13
13
  }
14
- exports.assertAssignWithDefaultUndefinedValue = assertAssignWithDefaultUndefinedValue;
15
14
  //# sourceMappingURL=assertAssignWithDefaultUndefinedValue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertAssignWithDefaultUndefinedValue.js","sourceRoot":"","sources":["../../src/assertions/assertAssignWithDefaultUndefinedValue.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAE9C;;GAEG;AACH,SAAgB,qCAAqC,CACnD,KAAc,EACd,aAAiD,EACjD,YAAe,EACf,YAAqB;IAErB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;QACzC,OAAO,YAAY,CAAC;KACrB;IAED,OAAO,IAAA,2BAAY,EAAC,KAAK,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;AAC1D,CAAC;AAXD,sFAWC"}
1
+ {"version":3,"file":"assertAssignWithDefaultUndefinedValue.js","sourceRoot":"","sources":["../../src/assertions/assertAssignWithDefaultUndefinedValue.ts"],"names":[],"mappings":";;AAKA,sFAWC;AAhBD,iDAA8C;AAE9C;;GAEG;AACH,SAAgB,qCAAqC,CACnD,KAAc,EACd,aAAiD,EACjD,YAAe,EACf,YAAqB;IAErB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC1C,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,OAAO,IAAA,2BAAY,EAAC,KAAK,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;AAC1D,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertIsArray = void 0;
3
+ exports.assertIsArray = assertIsArray;
4
4
  const assert_1 = require("assert");
5
5
  function assertIsArray(val) {
6
6
  if (!Array.isArray(val)) {
@@ -11,5 +11,4 @@ function assertIsArray(val) {
11
11
  });
12
12
  }
13
13
  }
14
- exports.assertIsArray = assertIsArray;
15
14
  //# sourceMappingURL=assertIsArray.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsArray.js","sourceRoot":"","sources":["../../src/assertions/assertIsArray.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC,SAAgB,aAAa,CAAC,GAAQ;IACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACvB,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,YAAY,GAAG,cAAc;SACvC,CAAC,CAAC;KACJ;AACH,CAAC;AARD,sCAQC"}
1
+ {"version":3,"file":"assertIsArray.js","sourceRoot":"","sources":["../../src/assertions/assertIsArray.ts"],"names":[],"mappings":";;AAEA,sCAQC;AAVD,mCAAwC;AAExC,SAAgB,aAAa,CAAC,GAAQ;IACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,YAAY,GAAG,cAAc;SACvC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -3,10 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.assertIsBoolean = void 0;
6
+ exports.assertIsBoolean = assertIsBoolean;
7
7
  const strict_1 = __importDefault(require("assert/strict"));
8
8
  function assertIsBoolean(value) {
9
9
  strict_1.default.ok(typeof value === 'boolean', `Expected ${value} to be a boolean`);
10
10
  }
11
- exports.assertIsBoolean = assertIsBoolean;
12
11
  //# sourceMappingURL=assertIsBoolean.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsBoolean.js","sourceRoot":"","sources":["../../src/assertions/assertIsBoolean.ts"],"names":[],"mappings":";;;;;;AAAA,2DAAmC;AAEnC,SAAgB,eAAe,CAAC,KAAc;IAC5C,gBAAM,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,SAAS,EAAE,YAAY,KAAK,kBAAkB,CAAC,CAAC;AAC7E,CAAC;AAFD,0CAEC"}
1
+ {"version":3,"file":"assertIsBoolean.js","sourceRoot":"","sources":["../../src/assertions/assertIsBoolean.ts"],"names":[],"mappings":";;;;;AAEA,0CAEC;AAJD,2DAAmC;AAEnC,SAAgB,eAAe,CAAC,KAAc;IAC5C,gBAAM,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,SAAS,EAAE,YAAY,KAAK,kBAAkB,CAAC,CAAC;AAC7E,CAAC"}
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertIsDefined = void 0;
3
+ exports.assertIsDefined = assertIsDefined;
4
4
  const assert_1 = require("assert");
5
5
  function assertIsDefined(value) {
6
6
  if (value === undefined || value === null) {
7
7
  throw new assert_1.AssertionError({ message: `Expected 'val' to be defined, but received ${value}` });
8
8
  }
9
9
  }
10
- exports.assertIsDefined = assertIsDefined;
11
10
  //# sourceMappingURL=assertIsDefined.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsDefined.js","sourceRoot":"","sources":["../../src/assertions/assertIsDefined.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC,SAAgB,eAAe,CAAI,KAAQ;IACzC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;QACzC,MAAM,IAAI,uBAAc,CAAC,EAAE,OAAO,EAAE,8CAA8C,KAAK,EAAE,EAAE,CAAC,CAAC;KAC9F;AACH,CAAC;AAJD,0CAIC"}
1
+ {"version":3,"file":"assertIsDefined.js","sourceRoot":"","sources":["../../src/assertions/assertIsDefined.ts"],"names":[],"mappings":";;AAEA,0CAIC;AAND,mCAAwC;AAExC,SAAgB,eAAe,CAAI,KAAQ;IACzC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC1C,MAAM,IAAI,uBAAc,CAAC,EAAE,OAAO,EAAE,8CAA8C,KAAK,EAAE,EAAE,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertIsEnumValue = void 0;
3
+ exports.assertIsEnumValue = assertIsEnumValue;
4
4
  const assert_1 = require("assert");
5
5
  function assertIsEnumValue(val, obj) {
6
6
  if (isValueIsEnumValue(val, obj) === false) {
@@ -11,7 +11,6 @@ function assertIsEnumValue(val, obj) {
11
11
  });
12
12
  }
13
13
  }
14
- exports.assertIsEnumValue = assertIsEnumValue;
15
14
  function isValueIsEnumValue(val, enumType) {
16
15
  return Object.values(enumType).includes(val);
17
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsEnumValue.js","sourceRoot":"","sources":["../../src/assertions/assertIsEnumValue.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC,SAAgB,iBAAiB,CAAmB,GAAY,EAAE,GAAM;IACtE,IAAI,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,KAAK,EAAE;QAC1C,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAC5B,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;KACJ;AACH,CAAC;AARD,8CAQC;AAED,SAAS,kBAAkB,CAAuB,GAAY,EAAE,QAAe;IAC7E,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAyB,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"assertIsEnumValue.js","sourceRoot":"","sources":["../../src/assertions/assertIsEnumValue.ts"],"names":[],"mappings":";;AAEA,8CAQC;AAVD,mCAAwC;AAExC,SAAgB,iBAAiB,CAAmB,GAAY,EAAE,GAAM;IACtE,IAAI,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;QAC3C,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAC5B,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAuB,GAAY,EAAE,QAAe;IAC7E,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAyB,CAAC,CAAC;AACrE,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertIsMapOfStringAny = void 0;
3
+ exports.assertIsMapOfStringAny = assertIsMapOfStringAny;
4
4
  const assert_1 = require("assert");
5
5
  function assertIsMapOfStringAny(value) {
6
6
  if (!value) {
@@ -18,5 +18,4 @@ function assertIsMapOfStringAny(value) {
18
18
  });
19
19
  }
20
20
  }
21
- exports.assertIsMapOfStringAny = assertIsMapOfStringAny;
22
21
  //# sourceMappingURL=assertIsMapOfStringAny.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsMapOfStringAny.js","sourceRoot":"","sources":["../../src/assertions/assertIsMapOfStringAny.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC,SAAgB,sBAAsB,CAAC,KAAc;IACnD,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,UAAU;YACpB,OAAO,EAAE,mCAAmC;SAC7C,CAAC,CAAC;KACJ;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;KACJ;AACH,CAAC;AAhBD,wDAgBC"}
1
+ {"version":3,"file":"assertIsMapOfStringAny.js","sourceRoot":"","sources":["../../src/assertions/assertIsMapOfStringAny.ts"],"names":[],"mappings":";;AAEA,wDAgBC;AAlBD,mCAAwC;AAExC,SAAgB,sBAAsB,CAAC,KAAc;IACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,UAAU;YACpB,OAAO,EAAE,mCAAmC;SAC7C,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertIsMapOfStringString = void 0;
3
+ exports.assertIsMapOfStringString = assertIsMapOfStringString;
4
4
  const assert_1 = require("assert");
5
5
  function assertIsMapOfStringString(value) {
6
6
  if (!value) {
@@ -27,5 +27,4 @@ function assertIsMapOfStringString(value) {
27
27
  }
28
28
  }
29
29
  }
30
- exports.assertIsMapOfStringString = assertIsMapOfStringString;
31
30
  //# sourceMappingURL=assertIsMapOfStringString.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsMapOfStringString.js","sourceRoot":"","sources":["../../src/assertions/assertIsMapOfStringString.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC,SAAgB,yBAAyB,CAAC,KAAc;IACtD,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,UAAU;YACpB,OAAO,EAAE,mCAAmC;SAC7C,CAAC,CAAC;KACJ;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;KACJ;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACpD,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,MAAM,IAAI,uBAAc,CAAC;gBACvB,MAAM,EAAE,OAAO,SAAS;gBACxB,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,YAAY,GAAG,wBAAwB;aACjD,CAAC,CAAC;SACJ;KACF;AACH,CAAC;AA1BD,8DA0BC"}
1
+ {"version":3,"file":"assertIsMapOfStringString.js","sourceRoot":"","sources":["../../src/assertions/assertIsMapOfStringString.ts"],"names":[],"mappings":";;AAEA,8DA0BC;AA5BD,mCAAwC;AAExC,SAAgB,yBAAyB,CAAC,KAAc;IACtD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,UAAU;YACpB,OAAO,EAAE,mCAAmC;SAC7C,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACrD,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,IAAI,uBAAc,CAAC;gBACvB,MAAM,EAAE,OAAO,SAAS;gBACxB,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,YAAY,GAAG,wBAAwB;aACjD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertIsNotAnEmptyString = void 0;
3
+ exports.assertIsNotAnEmptyString = assertIsNotAnEmptyString;
4
4
  const assert_1 = require("assert");
5
5
  function assertIsNotAnEmptyString(val) {
6
6
  if (typeof val !== 'string') {
@@ -16,5 +16,4 @@ function assertIsNotAnEmptyString(val) {
16
16
  });
17
17
  }
18
18
  }
19
- exports.assertIsNotAnEmptyString = assertIsNotAnEmptyString;
20
19
  //# sourceMappingURL=assertIsNotAnEmptyString.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsNotAnEmptyString.js","sourceRoot":"","sources":["../../src/assertions/assertIsNotAnEmptyString.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC,SAAgB,wBAAwB,CAAC,GAAQ;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,OAAO,GAAG;YAClB,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;KACJ;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,MAAM,IAAI,uBAAc,CAAC;YACvB,OAAO,EAAE,wBAAwB;SAClC,CAAC,CAAC;KACJ;AACH,CAAC;AAdD,4DAcC"}
1
+ {"version":3,"file":"assertIsNotAnEmptyString.js","sourceRoot":"","sources":["../../src/assertions/assertIsNotAnEmptyString.ts"],"names":[],"mappings":";;AAEA,4DAcC;AAhBD,mCAAwC;AAExC,SAAgB,wBAAwB,CAAC,GAAQ;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,OAAO,GAAG;YAClB,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,uBAAc,CAAC;YACvB,OAAO,EAAE,wBAAwB;SAClC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertIsObject = void 0;
3
+ exports.assertIsObject = assertIsObject;
4
4
  const assert_1 = require("assert");
5
5
  function assertIsObject(val) {
6
6
  if (Object.prototype.toString.call(val) !== '[object Object]') {
@@ -11,5 +11,4 @@ function assertIsObject(val) {
11
11
  });
12
12
  }
13
13
  }
14
- exports.assertIsObject = assertIsObject;
15
14
  //# sourceMappingURL=assertIsObject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsObject.js","sourceRoot":"","sources":["../../src/assertions/assertIsObject.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC,SAAgB,cAAc,CAAC,GAAQ;IACrC,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,iBAAiB,EAAE;QAC7D,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;YAC3C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,wBAAwB;SAClC,CAAC,CAAC;KACJ;AACH,CAAC;AARD,wCAQC"}
1
+ {"version":3,"file":"assertIsObject.js","sourceRoot":"","sources":["../../src/assertions/assertIsObject.ts"],"names":[],"mappings":";;AAEA,wCAQC;AAVD,mCAAwC;AAExC,SAAgB,cAAc,CAAC,GAAQ;IACrC,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,iBAAiB,EAAE,CAAC;QAC9D,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;YAC3C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,wBAAwB;SAClC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertIsString = void 0;
3
+ exports.assertIsString = assertIsString;
4
4
  const assert_1 = require("assert");
5
5
  function assertIsString(val) {
6
6
  if (typeof val !== 'string') {
@@ -11,5 +11,4 @@ function assertIsString(val) {
11
11
  });
12
12
  }
13
13
  }
14
- exports.assertIsString = assertIsString;
15
14
  //# sourceMappingURL=assertIsString.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertIsString.js","sourceRoot":"","sources":["../../src/assertions/assertIsString.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAExC,SAAgB,cAAc,CAAC,GAAQ;IACrC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;KACJ;AACH,CAAC;AARD,wCAQC"}
1
+ {"version":3,"file":"assertIsString.js","sourceRoot":"","sources":["../../src/assertions/assertIsString.ts"],"names":[],"mappings":";;AAEA,wCAQC;AAVD,mCAAwC;AAExC,SAAgB,cAAc,CAAC,GAAQ;IACrC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,uBAAc,CAAC;YACvB,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1,19 +1,19 @@
1
1
  import { CacheControl } from './parseCacheControl';
2
2
  export declare function applyDefaultRulesToCacheControlObject(cacheControlInput: CacheControl): {
3
3
  [x: string]: string | number | boolean | undefined;
4
- 'max-age'?: number | undefined;
5
- 's-maxage'?: number | undefined;
6
- 'min-fresh'?: number | undefined;
7
- 'stale-while-revalidate'?: number | undefined;
8
- 'stale-if-error'?: number | undefined;
9
- public?: true | undefined;
10
- private?: true | undefined;
11
- 'no-store'?: true | undefined;
12
- 'no-cache'?: true | undefined;
13
- 'no-transform'?: true | undefined;
14
- 'must-revalidate'?: true | undefined;
15
- 'proxy-revalidate'?: true | undefined;
16
- 'must-understand'?: true | undefined;
17
- immutable?: true | undefined;
18
- extension?: string | undefined;
4
+ 'max-age'?: number;
5
+ 's-maxage'?: number;
6
+ 'min-fresh'?: number;
7
+ 'stale-while-revalidate'?: number;
8
+ 'stale-if-error'?: number;
9
+ public?: true;
10
+ private?: true;
11
+ 'no-store'?: true;
12
+ 'no-cache'?: true;
13
+ 'no-transform'?: true;
14
+ 'must-revalidate'?: true;
15
+ 'proxy-revalidate'?: true;
16
+ 'must-understand'?: true;
17
+ immutable?: true;
18
+ extension?: string;
19
19
  };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.applyDefaultRulesToCacheControlObject = void 0;
3
+ exports.applyDefaultRulesToCacheControlObject = applyDefaultRulesToCacheControlObject;
4
4
  const parseAndSanitiseCacheControlHeader_1 = require("./parseAndSanitiseCacheControlHeader");
5
5
  function applyDefaultRulesToCacheControlObject(cacheControlInput) {
6
6
  const cacheControl = { ...cacheControlInput };
@@ -17,5 +17,4 @@ function applyDefaultRulesToCacheControlObject(cacheControlInput) {
17
17
  delete cacheControl['no-cache'];
18
18
  return cacheControl;
19
19
  }
20
- exports.applyDefaultRulesToCacheControlObject = applyDefaultRulesToCacheControlObject;
21
20
  //# sourceMappingURL=applyDefaultRulesToCacheControlObject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"applyDefaultRulesToCacheControlObject.js","sourceRoot":"","sources":["../../src/cache/applyDefaultRulesToCacheControlObject.ts"],"names":[],"mappings":";;;AACA,6FAA2G;AAE3G,SAAgB,qCAAqC,CAAC,iBAA+B;IACnF,MAAM,YAAY,GAAG,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAE9C,IAAI,YAAY,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE;QACzC,YAAY,CAAC,SAAS,CAAC,GAAG,IAAA,kDAAa,EAAC,YAAY,CAAC,SAAS,CAAC,EAAE,sDAAiB,EAAE,sDAAiB,CAAC,CAAC;KACxG;IAED,IAAI,YAAY,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE;QAC1C,YAAY,CAAC,UAAU,CAAC,GAAG,IAAA,kDAAa,EAAC,YAAY,CAAC,UAAU,CAAC,EAAE,sDAAiB,EAAE,sDAAiB,CAAC,CAAC;KAC1G;IAED,IAAI,YAAY,CAAC,WAAW,CAAC,KAAK,SAAS,EAAE;QAC3C,YAAY,CAAC,WAAW,CAAC,GAAG,IAAA,kDAAa,EAAC,YAAY,CAAC,WAAW,CAAC,EAAE,sDAAiB,EAAE,sDAAiB,CAAC,CAAC;KAC5G;IAED,OAAO,YAAY,CAAC,UAAU,CAAC,CAAC;IAChC,OAAO,YAAY,CAAC,UAAU,CAAC,CAAC;IAEhC,OAAO,YAAY,CAAC;AACtB,CAAC;AAnBD,sFAmBC"}
1
+ {"version":3,"file":"applyDefaultRulesToCacheControlObject.js","sourceRoot":"","sources":["../../src/cache/applyDefaultRulesToCacheControlObject.ts"],"names":[],"mappings":";;AAGA,sFAmBC;AArBD,6FAA2G;AAE3G,SAAgB,qCAAqC,CAAC,iBAA+B;IACnF,MAAM,YAAY,GAAG,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAE9C,IAAI,YAAY,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1C,YAAY,CAAC,SAAS,CAAC,GAAG,IAAA,kDAAa,EAAC,YAAY,CAAC,SAAS,CAAC,EAAE,sDAAiB,EAAE,sDAAiB,CAAC,CAAC;IACzG,CAAC;IAED,IAAI,YAAY,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE,CAAC;QAC3C,YAAY,CAAC,UAAU,CAAC,GAAG,IAAA,kDAAa,EAAC,YAAY,CAAC,UAAU,CAAC,EAAE,sDAAiB,EAAE,sDAAiB,CAAC,CAAC;IAC3G,CAAC;IAED,IAAI,YAAY,CAAC,WAAW,CAAC,KAAK,SAAS,EAAE,CAAC;QAC5C,YAAY,CAAC,WAAW,CAAC,GAAG,IAAA,kDAAa,EAAC,YAAY,CAAC,WAAW,CAAC,EAAE,sDAAiB,EAAE,sDAAiB,CAAC,CAAC;IAC7G,CAAC;IAED,OAAO,YAAY,CAAC,UAAU,CAAC,CAAC;IAChC,OAAO,YAAY,CAAC,UAAU,CAAC,CAAC;IAEhC,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.cacheControlToString = void 0;
3
+ exports.cacheControlToString = cacheControlToString;
4
4
  function cacheControlToString(cacheControl) {
5
5
  const parts = [];
6
6
  for (const key of Object.keys(cacheControl)) {
@@ -20,5 +20,4 @@ function cacheControlToString(cacheControl) {
20
20
  }
21
21
  return parts.join(', ');
22
22
  }
23
- exports.cacheControlToString = cacheControlToString;
24
23
  //# sourceMappingURL=cacheControlToString.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cacheControlToString.js","sourceRoot":"","sources":["../../src/cache/cacheControlToString.ts"],"names":[],"mappings":";;;AAEA,SAAgB,oBAAoB,CAAC,YAA0B;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;QAC3C,IAAI,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;YAChD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACjB;aAAM;YACL,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC7B,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;aAC1B;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBACpC,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC;aACtB;YAED,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;SAC/B;KACF;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAnBD,oDAmBC"}
1
+ {"version":3,"file":"cacheControlToString.js","sourceRoot":"","sources":["../../src/cache/cacheControlToString.ts"],"names":[],"mappings":";;AAEA,oDAmBC;AAnBD,SAAgB,oBAAoB,CAAC,YAA0B;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QAC5C,IAAI,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC3B,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC;YACvB,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}