angular-toolbox 0.11.3 → 0.11.4
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.
- package/README.md +1 -1
- package/esm2022/lib/core/bridge/app-bridge.mjs +3 -3
- package/esm2022/lib/core/error/app-bridge-error.mjs +3 -3
- package/esm2022/lib/core/error/http-mock-service-error.mjs +3 -3
- package/esm2022/lib/core/error/integrity-error.mjs +3 -3
- package/esm2022/lib/core/error/subscription-error.mjs +3 -3
- package/esm2022/lib/core/impl/lang/identifiable-component.mjs +3 -3
- package/esm2022/lib/core/impl/version/version.impl.mjs +3 -3
- package/esm2022/lib/framework/index.mjs +3 -1
- package/esm2022/lib/framework/logging/connector/console-log-connector.mjs +48 -0
- package/esm2022/lib/framework/logging/connector/default-log-connector.mjs +34 -0
- package/esm2022/lib/framework/logging/connector/html-log-connector.mjs +177 -0
- package/esm2022/lib/framework/logging/connector/index.mjs +4 -0
- package/esm2022/lib/framework/logging/impl/abstract-logger.mjs +100 -0
- package/esm2022/lib/framework/logging/impl/index.mjs +3 -0
- package/esm2022/lib/framework/logging/impl/log-impl.mjs +28 -0
- package/esm2022/lib/framework/logging/index.mjs +4 -0
- package/esm2022/lib/framework/logging/util/index.mjs +4 -0
- package/esm2022/lib/framework/logging/util/log.builder.mjs +28 -0
- package/esm2022/lib/framework/logging/util/log.constant.mjs +24 -0
- package/esm2022/lib/framework/logging/util/log.util.mjs +142 -0
- package/esm2022/lib/framework/mock/http/core/data-storage.mjs +1 -1
- package/esm2022/lib/framework/mock/http/core/response-delay.mjs +9 -0
- package/esm2022/lib/framework/mock/http/event/event-target.impl.mjs +15 -1
- package/esm2022/lib/framework/mock/http/logging/http-mock-logger.mjs +15 -0
- package/esm2022/lib/framework/mock/http/logging/http-mock-logging-metadata.builder.mjs +35 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/escape-to-regexp-string.mjs +3 -3
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/lex-token.mjs +3 -3
- package/esm2022/lib/framework/mock/http/util/data-storage.builder.mjs +5 -3
- package/esm2022/lib/framework/mock/http/util/http-headers.util.mjs +18 -3
- package/esm2022/lib/framework/mock/http/util/http-mock-max-delay.mjs +12 -0
- package/esm2022/lib/framework/mock/http/util/http-mock-response-delay.util.mjs +33 -0
- package/esm2022/lib/framework/mock/http/util/http-mock-response.builder.mjs +45 -9
- package/esm2022/lib/framework/mock/http/util/index.mjs +2 -1
- package/esm2022/lib/framework/mock/http/xhr/delegate-xhr.mjs +75 -41
- package/esm2022/lib/framework/mock/http/xhr/http-mock-factory.impl.mjs +4 -3
- package/esm2022/lib/framework/mock/http/xhr/http-mock-factory.mjs +3 -2
- package/esm2022/lib/framework/mock/http/xhr/xhr-proxy-impl.mjs +7 -6
- package/esm2022/lib/framework/mock/http-monitoring-console/component/console-footer/console-footer.component.mjs +30 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/console-menu/console-menu.component.mjs +30 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/http-monitoring-console/http-monitoring-console.component.mjs +140 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/renderer/icon-renderer/icon-renderer.component.mjs +37 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/renderer/json-viewer/json-viewer.component.mjs +34 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/renderer/json-viewer-panel/json-viewer-panel.component.mjs +27 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/renderer/payload-renderer/payload-renderer.component.mjs +50 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/renderer/response-body-renderer/response-body-renderer.component.mjs +50 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/renderer/response-preview-renderer/response-preview-renderer.component.mjs +71 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/renderer/timing-renderer/timing-renderer.component.mjs +55 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/component/request-details/request-details.component.mjs +67 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/connector/http-monitoring-console-log-connector.mjs +52 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/index.mjs +2 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/atx-console-action-type.mjs +14 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/atx-console-action.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/atx-console-json.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/atx-is-imported-log.mjs +10 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/io/atx-body-dto.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/io/atx-header-dto.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-log-metadata.dto.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-log.dto.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-request-metadata.dto.ts.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-request.dto.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-response.dto.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/business/io/hmfl.mjs +9 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/atx-log-io.service.mjs +77 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/body-converter.mjs +22 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/body-serializer.mjs +47 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/http-request-converter.mjs +44 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/http-response-converter.mjs +32 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/log-converter.mjs +31 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/log-headers-converter.mjs +35 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/log-message.util.mjs +19 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/log-metadata-converter.mjs +27 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/model/service/io/request-metadata-converter.mjs +29 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/util/console-body-type.mjs +18 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/util/console-type-class.mjs +17 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/util/data.util.mjs +75 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/util/size.util.mjs +35 -0
- package/esm2022/lib/framework/mock/http-monitoring-console/util/url.util.mjs +26 -0
- package/esm2022/lib/model/business/index.mjs +2 -1
- package/esm2022/lib/model/business/lang/app-bridge-command.mjs +3 -3
- package/esm2022/lib/model/business/lang/destroyable.mjs +3 -3
- package/esm2022/lib/model/business/lang/identifiable.mjs +3 -3
- package/esm2022/lib/model/business/logging/http-mock-logging-constant.enum.mjs +34 -0
- package/esm2022/lib/model/business/logging/index.mjs +6 -0
- package/esm2022/lib/model/business/logging/log-connector.mjs +9 -0
- package/esm2022/lib/model/business/logging/log-level.enum.mjs +35 -0
- package/esm2022/lib/model/business/logging/log.mjs +9 -0
- package/esm2022/lib/model/business/logging/logger.mjs +2 -0
- package/esm2022/lib/model/business/logging/transactional-logger.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/fetch-client.mjs +7 -2
- package/esm2022/lib/model/business/mock/http/http-method-mock.mjs +1 -1
- package/esm2022/lib/model/business/mock/http/http-mock-request-metadata.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/index.mjs +3 -1
- package/esm2022/lib/model/business/mock/http/logging/http-mock-logging-metadata.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/logging/http-mock-logging-prefetch-metadata.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/logging/index.mjs +3 -0
- package/esm2022/lib/model/service/index.mjs +3 -2
- package/esm2022/lib/model/service/logging/index.mjs +2 -0
- package/esm2022/lib/model/service/logging/logger-service.mjs +24 -0
- package/esm2022/lib/model/service/mock/http/index.mjs +3 -0
- package/esm2022/lib/model/service/mock/http/logging/http-mock-logging-service.mjs +110 -0
- package/esm2022/lib/model/service/mock/http/logging/index.mjs +2 -0
- package/esm2022/lib/model/service/ui/app-bridge.service.mjs +3 -3
- package/esm2022/lib/model/service/ui/dark-mode.service.mjs +3 -3
- package/esm2022/lib/model/service/version/angular-toolbox-version.service.mjs +3 -3
- package/esm2022/lib/util/default-scroll-behavior.mjs +3 -3
- package/fesm2022/angular-toolbox.mjs +3112 -1000
- package/fesm2022/angular-toolbox.mjs.map +1 -1
- package/lib/core/bridge/app-bridge.d.ts +2 -2
- package/lib/core/error/app-bridge-error.d.ts +2 -2
- package/lib/core/error/http-mock-service-error.d.ts +2 -2
- package/lib/core/error/integrity-error.d.ts +2 -2
- package/lib/core/error/subscription-error.d.ts +2 -2
- package/lib/core/impl/lang/identifiable-component.d.ts +2 -2
- package/lib/core/impl/version/version.impl.d.ts +2 -2
- package/lib/framework/index.d.ts +2 -0
- package/lib/framework/logging/connector/console-log-connector.d.ts +34 -0
- package/lib/framework/logging/connector/default-log-connector.d.ts +34 -0
- package/lib/framework/logging/connector/html-log-connector.d.ts +72 -0
- package/lib/framework/logging/connector/index.d.ts +3 -0
- package/lib/framework/logging/impl/abstract-logger.d.ts +69 -0
- package/lib/framework/logging/impl/index.d.ts +2 -0
- package/lib/framework/logging/impl/log-impl.d.ts +42 -0
- package/lib/framework/logging/index.d.ts +3 -0
- package/lib/framework/logging/util/index.d.ts +3 -0
- package/lib/framework/logging/util/log.builder.d.ts +24 -0
- package/lib/framework/logging/util/log.constant.d.ts +23 -0
- package/lib/framework/logging/util/log.util.d.ts +48 -0
- package/lib/framework/mock/http/core/data-storage.d.ts +6 -1
- package/lib/framework/mock/http/core/response-delay.d.ts +23 -0
- package/lib/framework/mock/http/event/event-target.impl.d.ts +8 -0
- package/lib/framework/mock/http/logging/http-mock-logger.d.ts +14 -0
- package/lib/framework/mock/http/logging/http-mock-logging-metadata.builder.d.ts +20 -0
- package/lib/framework/mock/http/path-to-regexp/escape-to-regexp-string.d.ts +2 -2
- package/lib/framework/mock/http/path-to-regexp/model/lex-token.d.ts +2 -2
- package/lib/framework/mock/http/util/data-storage.builder.d.ts +3 -2
- package/lib/framework/mock/http/util/http-headers.util.d.ts +10 -0
- package/lib/framework/mock/http/util/http-mock-max-delay.d.ts +11 -0
- package/lib/framework/mock/http/util/http-mock-response-delay.util.d.ts +22 -0
- package/lib/framework/mock/http/util/http-mock-response.builder.d.ts +16 -0
- package/lib/framework/mock/http/util/index.d.ts +1 -0
- package/lib/framework/mock/http/xhr/delegate-xhr.d.ts +11 -4
- package/lib/framework/mock/http/xhr/http-mock-factory.impl.d.ts +3 -1
- package/lib/framework/mock/http/xhr/xhr-proxy-impl.d.ts +6 -5
- package/lib/framework/mock/http-monitoring-console/component/console-footer/console-footer.component.d.ts +8 -0
- package/lib/framework/mock/http-monitoring-console/component/console-menu/console-menu.component.d.ts +21 -0
- package/lib/framework/mock/http-monitoring-console/component/http-monitoring-console/http-monitoring-console.component.d.ts +42 -0
- package/lib/framework/mock/http-monitoring-console/component/renderer/icon-renderer/icon-renderer.component.d.ts +12 -0
- package/lib/framework/mock/http-monitoring-console/component/renderer/json-viewer/json-viewer.component.d.ts +8 -0
- package/lib/framework/mock/http-monitoring-console/component/renderer/json-viewer-panel/json-viewer-panel.component.d.ts +7 -0
- package/lib/framework/mock/http-monitoring-console/component/renderer/payload-renderer/payload-renderer.component.d.ts +20 -0
- package/lib/framework/mock/http-monitoring-console/component/renderer/response-body-renderer/response-body-renderer.component.d.ts +20 -0
- package/lib/framework/mock/http-monitoring-console/component/renderer/response-preview-renderer/response-preview-renderer.component.d.ts +27 -0
- package/lib/framework/mock/http-monitoring-console/component/renderer/timing-renderer/timing-renderer.component.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/component/request-details/request-details.component.d.ts +27 -0
- package/lib/framework/mock/http-monitoring-console/connector/http-monitoring-console-log-connector.d.ts +40 -0
- package/lib/framework/mock/http-monitoring-console/index.d.ts +1 -0
- package/lib/framework/mock/http-monitoring-console/model/business/atx-console-action-type.d.ts +12 -0
- package/lib/framework/mock/http-monitoring-console/model/business/atx-console-action.d.ts +12 -0
- package/lib/framework/mock/http-monitoring-console/model/business/atx-console-json.d.ts +14 -0
- package/lib/framework/mock/http-monitoring-console/model/business/atx-is-imported-log.d.ts +9 -0
- package/lib/framework/mock/http-monitoring-console/model/business/io/atx-body-dto.d.ts +11 -0
- package/lib/framework/mock/http-monitoring-console/model/business/io/atx-header-dto.d.ts +11 -0
- package/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-log-metadata.dto.d.ts +18 -0
- package/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-log.dto.d.ts +23 -0
- package/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-request-metadata.dto.ts.d.ts +32 -0
- package/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-request.dto.d.ts +18 -0
- package/lib/framework/mock/http-monitoring-console/model/business/io/atx-http-response.dto.d.ts +16 -0
- package/lib/framework/mock/http-monitoring-console/model/business/io/hmfl.d.ts +12 -0
- package/lib/framework/mock/http-monitoring-console/model/service/atx-log-io.service.d.ts +11 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/body-converter.d.ts +12 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/body-serializer.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/http-request-converter.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/http-response-converter.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/log-converter.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/log-headers-converter.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/log-message.util.d.ts +12 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/log-metadata-converter.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/model/service/io/request-metadata-converter.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/util/console-body-type.d.ts +16 -0
- package/lib/framework/mock/http-monitoring-console/util/console-type-class.d.ts +15 -0
- package/lib/framework/mock/http-monitoring-console/util/data.util.d.ts +13 -0
- package/lib/framework/mock/http-monitoring-console/util/size.util.d.ts +11 -0
- package/lib/framework/mock/http-monitoring-console/util/url.util.d.ts +13 -0
- package/lib/model/business/index.d.ts +1 -0
- package/lib/model/business/lang/app-bridge-command.d.ts +2 -2
- package/lib/model/business/lang/destroyable.d.ts +2 -2
- package/lib/model/business/lang/identifiable.d.ts +2 -2
- package/lib/model/business/logging/http-mock-logging-constant.enum.d.ts +32 -0
- package/lib/model/business/logging/index.d.ts +5 -0
- package/lib/model/business/logging/log-connector.d.ts +36 -0
- package/lib/model/business/logging/log-level.enum.d.ts +33 -0
- package/lib/model/business/logging/log.d.ts +34 -0
- package/lib/model/business/logging/logger.d.ts +58 -0
- package/lib/model/business/logging/transactional-logger.d.ts +28 -0
- package/lib/model/business/mock/http/fetch-client.d.ts +1 -1
- package/lib/model/business/mock/http/http-method-mock.d.ts +1 -6
- package/lib/model/business/mock/http/http-mock-request-metadata.d.ts +33 -0
- package/lib/model/business/mock/http/index.d.ts +2 -0
- package/lib/model/business/mock/http/logging/http-mock-logging-metadata.d.ts +15 -0
- package/lib/model/business/mock/http/logging/http-mock-logging-prefetch-metadata.d.ts +16 -0
- package/lib/model/business/mock/http/logging/index.d.ts +2 -0
- package/lib/model/service/index.d.ts +2 -1
- package/lib/model/service/logging/index.d.ts +1 -0
- package/lib/model/service/logging/logger-service.d.ts +9 -0
- package/lib/model/service/mock/http/index.d.ts +2 -0
- package/lib/model/service/mock/http/logging/http-mock-logging-service.d.ts +78 -0
- package/lib/model/service/mock/http/logging/index.d.ts +1 -0
- package/lib/model/service/ui/dark-mode.service.d.ts +2 -2
- package/lib/util/default-scroll-behavior.d.ts +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* The default implementation of the `Log` interface.
|
|
10
|
+
*/
|
|
11
|
+
export class LogImpl {
|
|
12
|
+
/**
|
|
13
|
+
* Creates a new `LogImpl` instance.
|
|
14
|
+
*
|
|
15
|
+
* @param caller Ahuman readable reference for the invoker associated with this log.
|
|
16
|
+
* @param message The message associated with this log.
|
|
17
|
+
* @param level The criticality level of this log.
|
|
18
|
+
* @param metadata Optional metada associated with this log.
|
|
19
|
+
*/
|
|
20
|
+
constructor(caller, message, level, metadata) {
|
|
21
|
+
this.caller = caller;
|
|
22
|
+
this.message = message;
|
|
23
|
+
this.level = level;
|
|
24
|
+
this.metadata = metadata;
|
|
25
|
+
this.timestamp = Date.now();
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWltcGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbG9nZ2luZy9pbXBsL2xvZy1pbXBsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUlIOztHQUVHO0FBQ0gsTUFBTSxPQUFPLE9BQU87SUEyQmhCOzs7Ozs7O09BT0c7SUFDSCxZQUFZLE1BQWMsRUFBRSxPQUFlLEVBQUUsS0FBZSxFQUFFLFFBQWM7UUFDeEUsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDaEMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXHJcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgTG9nLCBMb2dMZXZlbCB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbFwiO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIG9mIHRoZSBgTG9nYCBpbnRlcmZhY2UuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgTG9nSW1wbCBpbXBsZW1lbnRzIExvZyB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBAaW5oZXJpdGRvY1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2FsbGVyOiBzdHJpbmc7XHJcbiAgICBcclxuICAgIC8qKlxyXG4gICAgICogQGluaGVyaXRkb2NcclxuICAgICAqL1xyXG4gICAgcHVibGljIHJlYWRvbmx5IG1lc3NhZ2U6IHN0cmluZztcclxuXHJcbiAgICAvKipcclxuICAgICAqIEBpbmhlcml0ZG9jXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyByZWFkb25seSBsZXZlbDogTG9nTGV2ZWw7XHJcbiAgICBcclxuICAgIC8qKlxyXG4gICAgICogQGluaGVyaXRkb2NcclxuICAgICAqL1xyXG4gICAgcHVibGljIHJlYWRvbmx5IHRpbWVzdGFtcDogbnVtYmVyO1xyXG4gICAgXHJcbiAgICAvKipcclxuICAgICAqIEBpbmhlcml0ZG9jXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyByZWFkb25seSBtZXRhZGF0YTogYW55O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ3JlYXRlcyBhIG5ldyBgTG9nSW1wbGAgaW5zdGFuY2UuXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSBjYWxsZXIgQWh1bWFuIHJlYWRhYmxlIHJlZmVyZW5jZSBmb3IgdGhlIGludm9rZXIgYXNzb2NpYXRlZCB3aXRoIHRoaXMgbG9nLlxyXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIG1lc3NhZ2UgYXNzb2NpYXRlZCB3aXRoIHRoaXMgbG9nLlxyXG4gICAgICogQHBhcmFtIGxldmVsIFRoZSBjcml0aWNhbGl0eSBsZXZlbCBvZiB0aGlzIGxvZy5cclxuICAgICAqIEBwYXJhbSBtZXRhZGF0YSBPcHRpb25hbCBtZXRhZGEgYXNzb2NpYXRlZCB3aXRoIHRoaXMgbG9nLlxyXG4gICAgICovXHJcbiAgICBjb25zdHJ1Y3RvcihjYWxsZXI6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nLCBsZXZlbDogTG9nTGV2ZWwsIG1ldGFkYXRhPzogYW55KSB7XHJcbiAgICAgICAgdGhpcy5jYWxsZXIgPSBjYWxsZXI7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTtcclxuICAgICAgICB0aGlzLmxldmVsID0gbGV2ZWw7XHJcbiAgICAgICAgdGhpcy5tZXRhZGF0YSA9IG1ldGFkYXRhO1xyXG4gICAgICAgIHRoaXMudGltZXN0YW1wID0gRGF0ZS5ub3coKTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './util';
|
|
2
|
+
export * from './impl';
|
|
3
|
+
export * from './connector';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbG9nZ2luZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdXRpbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vaW1wbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29ubmVjdG9yJzsiXX0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './log.builder';
|
|
2
|
+
export * from './log.util';
|
|
3
|
+
export * from './log.constant';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbG9nZ2luZy91dGlsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xvZy5idWlsZGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9sb2cudXRpbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbG9nLmNvbnN0YW50JzsiXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
import { LogLevel } from "../../../model";
|
|
9
|
+
import { LogImpl } from "../impl";
|
|
10
|
+
/**
|
|
11
|
+
* A static builder that creates new `Log` objects.
|
|
12
|
+
*/
|
|
13
|
+
export class LogBuilder {
|
|
14
|
+
/**
|
|
15
|
+
* Builds and returns a new `Log` object initialized with the specified parameters.
|
|
16
|
+
*
|
|
17
|
+
* @param caller The reference to the object that sends the new log.
|
|
18
|
+
* @param message The message of the new log.
|
|
19
|
+
* @param level The level of the new log.
|
|
20
|
+
* @param metadata The optional metadata associated with the new log.
|
|
21
|
+
*
|
|
22
|
+
* @returns A new `Log` object
|
|
23
|
+
*/
|
|
24
|
+
static build(caller, message, level = LogLevel.INFO, metadata) {
|
|
25
|
+
return new LogImpl(caller, message, level, metadata);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbG9nZ2luZy91dGlsL2xvZy5idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBTyxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRWxDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFFbkI7Ozs7Ozs7OztPQVNHO0lBQ0ksTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFjLEVBQUUsT0FBZSxFQUFFLFFBQWtCLFFBQVEsQ0FBQyxJQUFJLEVBQUUsUUFBYztRQUNoRyxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAbGljZW5zZVxyXG4gKiBDb3B5cmlnaHQgUGFzY2FsIEVDSEVNQU5OLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxyXG4gKlxyXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpblxyXG4gKiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vcGFzY2FsZWNoZW1hbm4uY29tL2FuZ3VsYXItdG9vbGJveC9yZXNvdXJjZXMvbGljZW5zZVxyXG4gKi9cclxuXHJcbmltcG9ydCB7IExvZywgTG9nTGV2ZWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxcIjtcclxuaW1wb3J0IHsgTG9nSW1wbCB9IGZyb20gXCIuLi9pbXBsXCI7XHJcblxyXG4vKipcclxuICogQSBzdGF0aWMgYnVpbGRlciB0aGF0IGNyZWF0ZXMgbmV3IGBMb2dgIG9iamVjdHMuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgTG9nQnVpbGRlciB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBCdWlsZHMgYW5kIHJldHVybnMgYSBuZXcgYExvZ2Agb2JqZWN0IGluaXRpYWxpemVkIHdpdGggdGhlIHNwZWNpZmllZCBwYXJhbWV0ZXJzLlxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0gY2FsbGVyIFRoZSByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCB0aGF0IHNlbmRzIHRoZSBuZXcgbG9nLlxyXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIG1lc3NhZ2Ugb2YgdGhlIG5ldyBsb2cuXHJcbiAgICAgKiBAcGFyYW0gbGV2ZWwgVGhlIGxldmVsIG9mIHRoZSBuZXcgbG9nLlxyXG4gICAgICogQHBhcmFtIG1ldGFkYXRhIFRoZSBvcHRpb25hbCBtZXRhZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIG5ldyBsb2cuXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm5zIEEgbmV3IGBMb2dgIG9iamVjdFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGJ1aWxkKGNhbGxlcjogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcsIGxldmVsOiBMb2dMZXZlbCA9IExvZ0xldmVsLklORk8sIG1ldGFkYXRhPzogYW55KTogTG9nIHtcclxuICAgICAgICByZXR1cm4gbmV3IExvZ0ltcGwoY2FsbGVyLCBtZXNzYWdlLCBsZXZlbCwgbWV0YWRhdGEpO1xyXG4gICAgfVxyXG59Il19
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* A convenient string used to identify logs of LogLevel.INFO.
|
|
10
|
+
*/
|
|
11
|
+
export const LOG_INFO_STRING = "INFO";
|
|
12
|
+
/**
|
|
13
|
+
* A convenient string used to identify logs of LogLevel.CONFIG.
|
|
14
|
+
*/
|
|
15
|
+
export const LOG_CONFIG_STRING = "CONFIG";
|
|
16
|
+
/**
|
|
17
|
+
* A convenient string used to identify logs of LogLevel.WARNING.
|
|
18
|
+
*/
|
|
19
|
+
export const LOG_WARNING_STRING = "WARNING";
|
|
20
|
+
/**
|
|
21
|
+
* A convenient string used to identify logs of LogLevel.ERROR.
|
|
22
|
+
*/
|
|
23
|
+
export const LOG_ERROR_STRING = "ERROR";
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmNvbnN0YW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci10b29sYm94L3NyYy9saWIvZnJhbWV3b3JrL2xvZ2dpbmcvdXRpbC9sb2cuY29uc3RhbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUg7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQVcsTUFBTSxDQUFDO0FBRTlDOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQVcsUUFBUSxDQUFDO0FBRWxEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQVcsU0FBUyxDQUFDO0FBRXBEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQVcsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEEgY29udmVuaWVudCBzdHJpbmcgdXNlZCB0byBpZGVudGlmeSBsb2dzIG9mIExvZ0xldmVsLklORk8uXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgTE9HX0lORk9fU1RSSU5HOiBzdHJpbmcgPSBcIklORk9cIjtcclxuXHJcbi8qKlxyXG4gKiBBIGNvbnZlbmllbnQgc3RyaW5nIHVzZWQgdG8gaWRlbnRpZnkgbG9ncyBvZiBMb2dMZXZlbC5DT05GSUcuXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgTE9HX0NPTkZJR19TVFJJTkc6IHN0cmluZyA9IFwiQ09ORklHXCI7XHJcblxyXG4vKipcclxuICogQSBjb252ZW5pZW50IHN0cmluZyB1c2VkIHRvIGlkZW50aWZ5IGxvZ3Mgb2YgTG9nTGV2ZWwuV0FSTklORy5cclxuICovXHJcbmV4cG9ydCBjb25zdCBMT0dfV0FSTklOR19TVFJJTkc6IHN0cmluZyA9IFwiV0FSTklOR1wiO1xyXG5cclxuLyoqXHJcbiAqIEEgY29udmVuaWVudCBzdHJpbmcgdXNlZCB0byBpZGVudGlmeSBsb2dzIG9mIExvZ0xldmVsLkVSUk9SLlxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IExPR19FUlJPUl9TVFJJTkc6IHN0cmluZyA9IFwiRVJST1JcIjsiXX0=
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
import { formatDate } from "@angular/common";
|
|
9
|
+
import { LogLevel } from "../../../model";
|
|
10
|
+
import { EMPTY_STRING, OBJECT, STRING } from "../../../util";
|
|
11
|
+
import { LOG_CONFIG_STRING, LOG_ERROR_STRING, LOG_INFO_STRING, LOG_WARNING_STRING } from "./log.constant";
|
|
12
|
+
/**
|
|
13
|
+
* @private
|
|
14
|
+
*/
|
|
15
|
+
const TS_FMT = "HH:MM:SS";
|
|
16
|
+
/**
|
|
17
|
+
* @private
|
|
18
|
+
*/
|
|
19
|
+
const SEPARATOR = ", ";
|
|
20
|
+
/**
|
|
21
|
+
* @private
|
|
22
|
+
*/
|
|
23
|
+
const R_BRACKET = "[";
|
|
24
|
+
/**
|
|
25
|
+
* @private
|
|
26
|
+
*/
|
|
27
|
+
const L_BRACKET = "]";
|
|
28
|
+
/**
|
|
29
|
+
* @private
|
|
30
|
+
*/
|
|
31
|
+
const LOCALE = "en-us";
|
|
32
|
+
/**
|
|
33
|
+
* @private
|
|
34
|
+
*/
|
|
35
|
+
const getStringEnd = (cusror, size) => {
|
|
36
|
+
return cusror !== size ? SEPARATOR : EMPTY_STRING;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* A convenient utility class for formatting logs.
|
|
40
|
+
*/
|
|
41
|
+
export class LogUtil {
|
|
42
|
+
/**
|
|
43
|
+
* Turns the specified log list into a human redeable string.
|
|
44
|
+
*
|
|
45
|
+
* @param logList The list of logs to format.
|
|
46
|
+
* @returns The formatted log list.
|
|
47
|
+
*/
|
|
48
|
+
static logListToString(logList) {
|
|
49
|
+
const len = logList.length - 1, getLevelString = LogUtil.getLevelString;
|
|
50
|
+
let logs = EMPTY_STRING, i = 0, levelTxt = EMPTY_STRING;
|
|
51
|
+
for (; i <= len; ++i) {
|
|
52
|
+
const log = logList[i];
|
|
53
|
+
logs += `[${LogUtil.dateToHHMMSS(log.timestamp)}][${getLevelString(log.level)}][${log.caller}][${log.message}]${LogUtil.metadataToString(log.metadata)}\n`;
|
|
54
|
+
}
|
|
55
|
+
return logs;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Turns the specified log level into a human redeable string.
|
|
59
|
+
*
|
|
60
|
+
* @param level The log level to format.
|
|
61
|
+
* @returns The formatted log level.
|
|
62
|
+
*/
|
|
63
|
+
static getLevelString(level) {
|
|
64
|
+
if (level === LogLevel.INFO)
|
|
65
|
+
return LOG_INFO_STRING;
|
|
66
|
+
if (level === LogLevel.CONFIG)
|
|
67
|
+
return LOG_CONFIG_STRING;
|
|
68
|
+
if (level === LogLevel.WARNING)
|
|
69
|
+
return LOG_WARNING_STRING;
|
|
70
|
+
if (level === LogLevel.ERROR)
|
|
71
|
+
return LOG_ERROR_STRING;
|
|
72
|
+
return EMPTY_STRING;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Return a string that represents the specified metadata object.
|
|
76
|
+
*
|
|
77
|
+
* @param obj The metadata object to format.
|
|
78
|
+
* @returns A string that represents the specified metadata object.
|
|
79
|
+
*/
|
|
80
|
+
static metadataToString(obj) {
|
|
81
|
+
let result = EMPTY_STRING;
|
|
82
|
+
if (!obj)
|
|
83
|
+
return result;
|
|
84
|
+
if (Array.isArray(obj))
|
|
85
|
+
return LogUtil.formatArray(obj);
|
|
86
|
+
const keys = Object.keys(obj), len = keys.length - 1;
|
|
87
|
+
let i = 0;
|
|
88
|
+
for (; i <= len; ++i) {
|
|
89
|
+
const key = keys[i];
|
|
90
|
+
const value = obj[key];
|
|
91
|
+
if (value === null)
|
|
92
|
+
result += `${key}=null${getStringEnd(i, len)}`;
|
|
93
|
+
else if (value === undefined)
|
|
94
|
+
result += `${key}=undefined${getStringEnd(i, len)}`;
|
|
95
|
+
else if (typeof value === STRING)
|
|
96
|
+
result += `${key}="${value}"${getStringEnd(i, len)}`;
|
|
97
|
+
else if (Array.isArray(value))
|
|
98
|
+
result += `${key}=${LogUtil.formatArray(value)}${getStringEnd(i, len)}`;
|
|
99
|
+
else if (typeof value === OBJECT)
|
|
100
|
+
result += `${key}=${LogUtil.metadataToString(value)}${getStringEnd(i, len)}`;
|
|
101
|
+
else
|
|
102
|
+
result += `${key}=${value}${getStringEnd(i, len)}`;
|
|
103
|
+
}
|
|
104
|
+
;
|
|
105
|
+
if (result.endsWith(SEPARATOR)) {
|
|
106
|
+
result = result.slice(0, -2);
|
|
107
|
+
}
|
|
108
|
+
return result !== EMPTY_STRING ? R_BRACKET + result + L_BRACKET : result;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Returns a string that represents the specified timestamp in form `"HH:MM:SS"`.
|
|
112
|
+
*
|
|
113
|
+
* @param timestamp The timestamp to format.
|
|
114
|
+
* @returns A string that represents the specified timestamp in form `"HH:MM:SS"`.
|
|
115
|
+
*/
|
|
116
|
+
static dateToHHMMSS(timestamp) {
|
|
117
|
+
return formatDate(timestamp, TS_FMT, LOCALE);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Returns a string that represents the specified array.
|
|
121
|
+
*
|
|
122
|
+
* @param array The array to format.
|
|
123
|
+
* @returns A tring that represents the specified array.
|
|
124
|
+
*/
|
|
125
|
+
static formatArray(array) {
|
|
126
|
+
const len = array.length - 1;
|
|
127
|
+
let i = 0, result = EMPTY_STRING;
|
|
128
|
+
for (; i <= len; ++i) {
|
|
129
|
+
const value = array[i];
|
|
130
|
+
if (typeof value === STRING)
|
|
131
|
+
result += `"${value}"${getStringEnd(i, len)}`;
|
|
132
|
+
else if (Array.isArray(value))
|
|
133
|
+
result += `${LogUtil.formatArray(value)}${getStringEnd(i, len)}`;
|
|
134
|
+
else if (typeof value === OBJECT)
|
|
135
|
+
result += `${LogUtil.metadataToString(value)}${getStringEnd(i, len)}`;
|
|
136
|
+
else
|
|
137
|
+
result += `${value}${getStringEnd(i, len)}`;
|
|
138
|
+
}
|
|
139
|
+
return `[${result}]`;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbG9nZ2luZy91dGlsL2xvZy51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQU8sUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRzs7R0FFRztBQUNILE1BQU0sTUFBTSxHQUFXLFVBQVUsQ0FBQztBQUVsQzs7R0FFRztBQUNILE1BQU0sU0FBUyxHQUFXLElBQUksQ0FBQztBQUUvQjs7R0FFRztBQUNILE1BQU0sU0FBUyxHQUFXLEdBQUcsQ0FBQztBQUU5Qjs7R0FFRztBQUNILE1BQU0sU0FBUyxHQUFXLEdBQUcsQ0FBQztBQUU5Qjs7R0FFRztBQUNILE1BQU0sTUFBTSxHQUFXLE9BQU8sQ0FBQztBQUUvQjs7R0FFRztBQUNILE1BQU0sWUFBWSxHQUFhLENBQUMsTUFBYyxFQUFFLElBQVksRUFBRSxFQUFFO0lBQzVELE9BQU8sTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7QUFDdEQsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sT0FBTztJQUVoQjs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxlQUFlLENBQUMsT0FBYztRQUN4QyxNQUFNLEdBQUcsR0FBVyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDaEMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7UUFDOUMsSUFBSSxJQUFJLEdBQVcsWUFBWSxFQUMzQixDQUFDLEdBQVcsQ0FBQyxFQUNiLFFBQVEsR0FBVyxZQUFZLENBQUM7UUFDcEMsT0FBTSxDQUFDLElBQUksR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDbEIsTUFBTSxHQUFHLEdBQVEsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksSUFBSSxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxLQUFLLGNBQWMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvSixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFlO1FBQ3hDLElBQUksS0FBSyxLQUFLLFFBQVEsQ0FBQyxJQUFJO1lBQUUsT0FBTyxlQUFlLENBQUM7UUFDcEQsSUFBSSxLQUFLLEtBQUssUUFBUSxDQUFDLE1BQU07WUFBRSxPQUFPLGlCQUFpQixDQUFDO1FBQ3hELElBQUksS0FBSyxLQUFLLFFBQVEsQ0FBQyxPQUFPO1lBQUUsT0FBTyxrQkFBa0IsQ0FBQztRQUMxRCxJQUFJLEtBQUssS0FBSyxRQUFRLENBQUMsS0FBSztZQUFFLE9BQU8sZ0JBQWdCLENBQUM7UUFDdEQsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLGdCQUFnQixDQUFDLEdBQVE7UUFDbkMsSUFBSSxNQUFNLEdBQVcsWUFBWSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxNQUFNLENBQUM7UUFDeEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUFFLE9BQU8sT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4RCxNQUFNLElBQUksR0FBYSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUNqQyxHQUFHLEdBQVcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLE9BQU0sQ0FBQyxJQUFJLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2xCLE1BQU0sR0FBRyxHQUFXLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM1QixNQUFNLEtBQUssR0FBUSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUIsSUFBSSxLQUFLLEtBQUssSUFBSTtnQkFBRSxNQUFNLElBQUksR0FBRyxHQUFHLFFBQVEsWUFBWSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO2lCQUM5RCxJQUFJLEtBQUssS0FBSyxTQUFTO2dCQUFFLE1BQU0sSUFBSSxHQUFHLEdBQUcsYUFBYSxZQUFZLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7aUJBQzdFLElBQUksT0FBTyxLQUFLLEtBQUssTUFBTTtnQkFBRSxNQUFNLElBQUksR0FBRyxHQUFHLEtBQUssS0FBSyxJQUFJLFlBQVksQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztpQkFDbEYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFBRSxNQUFNLElBQUksR0FBRyxHQUFHLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7aUJBQ2xHLElBQUksT0FBTyxLQUFLLEtBQUssTUFBTTtnQkFBRSxNQUFNLElBQUksR0FBRyxHQUFHLElBQUksT0FBTyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxHQUFHLFlBQVksQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQzs7Z0JBQzFHLE1BQU0sSUFBSSxHQUFHLEdBQUcsSUFBSSxLQUFLLEdBQUcsWUFBWSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzVELENBQUM7UUFBQSxDQUFDO1FBQ0YsSUFBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDNUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUNELE9BQU8sTUFBTSxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUM3RSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQWlCO1FBQ3hDLE9BQU8sVUFBVSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ssTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFZO1FBQ25DLE1BQU0sR0FBRyxHQUFXLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxHQUFXLENBQUMsRUFDYixNQUFNLEdBQVcsWUFBWSxDQUFDO1FBQ2xDLE9BQU0sQ0FBQyxJQUFJLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2xCLE1BQU0sS0FBSyxHQUFRLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM1QixJQUFJLE9BQU8sS0FBSyxLQUFLLE1BQU07Z0JBQUUsTUFBTSxJQUFJLElBQUksS0FBSyxJQUFJLFlBQVksQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztpQkFDdEUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFBRSxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxHQUFHLFlBQVksQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztpQkFDM0YsSUFBSSxPQUFPLEtBQUssS0FBSyxNQUFNO2dCQUFFLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7O2dCQUNuRyxNQUFNLElBQUksR0FBRyxLQUFLLEdBQUcsWUFBWSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ3JELENBQUM7UUFDRCxPQUFPLElBQUksTUFBTSxHQUFHLENBQUM7SUFDekIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgZm9ybWF0RGF0ZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgTG9nLCBMb2dMZXZlbH0gZnJvbSBcIi4uLy4uLy4uL21vZGVsXCI7XHJcbmltcG9ydCB7IEVNUFRZX1NUUklORywgT0JKRUNULCBTVFJJTkcgfSBmcm9tIFwiLi4vLi4vLi4vdXRpbFwiO1xyXG5pbXBvcnQgeyBMT0dfQ09ORklHX1NUUklORywgTE9HX0VSUk9SX1NUUklORywgTE9HX0lORk9fU1RSSU5HLCBMT0dfV0FSTklOR19TVFJJTkcgfSBmcm9tIFwiLi9sb2cuY29uc3RhbnRcIjtcclxuXHJcbi8qKlxyXG4gKiBAcHJpdmF0ZVxyXG4gKi9cclxuY29uc3QgVFNfRk1UOiBzdHJpbmcgPSBcIkhIOk1NOlNTXCI7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICovXHJcbmNvbnN0IFNFUEFSQVRPUjogc3RyaW5nID0gXCIsIFwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqL1xyXG5jb25zdCBSX0JSQUNLRVQ6IHN0cmluZyA9IFwiW1wiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqL1xyXG5jb25zdCBMX0JSQUNLRVQ6IHN0cmluZyA9IFwiXVwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqL1xyXG5jb25zdCBMT0NBTEU6IHN0cmluZyA9IFwiZW4tdXNcIjtcclxuXHJcbi8qKlxyXG4gKiBAcHJpdmF0ZVxyXG4gKi9cclxuY29uc3QgZ2V0U3RyaW5nRW5kOiBGdW5jdGlvbiA9IChjdXNyb3I6IG51bWJlciwgc2l6ZTogbnVtYmVyKSA9PiB7XHJcbiAgICByZXR1cm4gY3Vzcm9yICE9PSBzaXplID8gU0VQQVJBVE9SIDogRU1QVFlfU1RSSU5HO1xyXG59XHJcblxyXG4vKipcclxuICogQSBjb252ZW5pZW50IHV0aWxpdHkgY2xhc3MgZm9yIGZvcm1hdHRpbmcgbG9ncy5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBMb2dVdGlsIHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFR1cm5zIHRoZSBzcGVjaWZpZWQgbG9nIGxpc3QgaW50byBhIGh1bWFuIHJlZGVhYmxlIHN0cmluZy5cclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIGxvZ0xpc3QgVGhlIGxpc3Qgb2YgbG9ncyB0byBmb3JtYXQuXHJcbiAgICAgKiBAcmV0dXJucyBUaGUgZm9ybWF0dGVkIGxvZyBsaXN0LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGxvZ0xpc3RUb1N0cmluZyhsb2dMaXN0OiBMb2dbXSk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgbGVuOiBudW1iZXIgPSBsb2dMaXN0Lmxlbmd0aCAtIDEsXHJcbiAgICAgICAgICAgICAgZ2V0TGV2ZWxTdHJpbmcgPSBMb2dVdGlsLmdldExldmVsU3RyaW5nO1xyXG4gICAgICAgIGxldCBsb2dzOiBzdHJpbmcgPSBFTVBUWV9TVFJJTkcsXHJcbiAgICAgICAgICAgIGk6IG51bWJlciA9IDAsXHJcbiAgICAgICAgICAgIGxldmVsVHh0OiBzdHJpbmcgPSBFTVBUWV9TVFJJTkc7XHJcbiAgICAgICAgZm9yKDsgaSA8PSBsZW47ICsraSkge1xyXG4gICAgICAgICAgICBjb25zdCBsb2c6IExvZyA9IGxvZ0xpc3RbaV07XHJcbiAgICAgICAgICAgIGxvZ3MgKz0gYFske0xvZ1V0aWwuZGF0ZVRvSEhNTVNTKGxvZy50aW1lc3RhbXApfV1bJHtnZXRMZXZlbFN0cmluZyhsb2cubGV2ZWwpfV1bJHtsb2cuY2FsbGVyfV1bJHtsb2cubWVzc2FnZX1dJHtMb2dVdGlsLm1ldGFkYXRhVG9TdHJpbmcobG9nLm1ldGFkYXRhKX1cXG5gO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbG9ncztcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFR1cm5zIHRoZSBzcGVjaWZpZWQgbG9nIGxldmVsIGludG8gYSBodW1hbiByZWRlYWJsZSBzdHJpbmcuXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSBsZXZlbCBUaGUgbG9nIGxldmVsIHRvIGZvcm1hdC5cclxuICAgICAqIEByZXR1cm5zIFRoZSBmb3JtYXR0ZWQgbG9nIGxldmVsLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGdldExldmVsU3RyaW5nKGxldmVsOiBMb2dMZXZlbCk6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKGxldmVsID09PSBMb2dMZXZlbC5JTkZPKSByZXR1cm4gTE9HX0lORk9fU1RSSU5HO1xyXG4gICAgICAgIGlmIChsZXZlbCA9PT0gTG9nTGV2ZWwuQ09ORklHKSByZXR1cm4gTE9HX0NPTkZJR19TVFJJTkc7XHJcbiAgICAgICAgaWYgKGxldmVsID09PSBMb2dMZXZlbC5XQVJOSU5HKSByZXR1cm4gTE9HX1dBUk5JTkdfU1RSSU5HO1xyXG4gICAgICAgIGlmIChsZXZlbCA9PT0gTG9nTGV2ZWwuRVJST1IpIHJldHVybiBMT0dfRVJST1JfU1RSSU5HO1xyXG4gICAgICAgIHJldHVybiBFTVBUWV9TVFJJTkc7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXR1cm4gYSBzdHJpbmcgdGhhdCByZXByZXNlbnRzIHRoZSBzcGVjaWZpZWQgbWV0YWRhdGEgb2JqZWN0LlxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0gb2JqIFRoZSBtZXRhZGF0YSBvYmplY3QgdG8gZm9ybWF0LlxyXG4gICAgICogQHJldHVybnMgQSBzdHJpbmcgdGhhdCByZXByZXNlbnRzIHRoZSBzcGVjaWZpZWQgbWV0YWRhdGEgb2JqZWN0LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIG1ldGFkYXRhVG9TdHJpbmcob2JqOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCByZXN1bHQ6IHN0cmluZyA9IEVNUFRZX1NUUklORztcclxuICAgICAgICBpZiAoIW9iaikgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvYmopKSByZXR1cm4gTG9nVXRpbC5mb3JtYXRBcnJheShvYmopO1xyXG4gICAgICAgIGNvbnN0IGtleXM6IHN0cmluZ1tdID0gT2JqZWN0LmtleXMob2JqKSxcclxuICAgICAgICAgICAgICBsZW46IG51bWJlciA9IGtleXMubGVuZ3RoIC0gMTtcclxuICAgICAgICBsZXQgaTogbnVtYmVyID0gMDtcclxuICAgICAgICBmb3IoOyBpIDw9IGxlbjsgKytpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGtleTogc3RyaW5nID0ga2V5c1tpXTtcclxuICAgICAgICAgICAgY29uc3QgdmFsdWU6IGFueSA9IG9ialtrZXldO1xyXG4gICAgICAgICAgICBpZiAodmFsdWUgPT09IG51bGwpIHJlc3VsdCArPSBgJHtrZXl9PW51bGwke2dldFN0cmluZ0VuZChpLCBsZW4pfWA7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHJlc3VsdCArPSBgJHtrZXl9PXVuZGVmaW5lZCR7Z2V0U3RyaW5nRW5kKGksIGxlbil9YDtcclxuICAgICAgICAgICAgZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSBTVFJJTkcpIHJlc3VsdCArPSBgJHtrZXl9PVwiJHt2YWx1ZX1cIiR7Z2V0U3RyaW5nRW5kKGksIGxlbil9YDtcclxuICAgICAgICAgICAgZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHJlc3VsdCArPSBgJHtrZXl9PSR7TG9nVXRpbC5mb3JtYXRBcnJheSh2YWx1ZSl9JHtnZXRTdHJpbmdFbmQoaSwgbGVuKX1gO1xyXG4gICAgICAgICAgICBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09IE9CSkVDVCkgcmVzdWx0ICs9IGAke2tleX09JHtMb2dVdGlsLm1ldGFkYXRhVG9TdHJpbmcodmFsdWUpfSR7Z2V0U3RyaW5nRW5kKGksIGxlbil9YDtcclxuICAgICAgICAgICAgZWxzZSByZXN1bHQgKz0gYCR7a2V5fT0ke3ZhbHVlfSR7Z2V0U3RyaW5nRW5kKGksIGxlbil9YDtcclxuICAgICAgICB9O1xyXG4gICAgICAgIGlmKHJlc3VsdC5lbmRzV2l0aChTRVBBUkFUT1IpKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IHJlc3VsdC5zbGljZSgwLCAtIDIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzdWx0ICE9PSBFTVBUWV9TVFJJTkcgPyBSX0JSQUNLRVQgKyByZXN1bHQgKyBMX0JSQUNLRVQgOiByZXN1bHQ7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC8qKlxyXG4gICAgICogUmV0dXJucyBhIHN0cmluZyB0aGF0IHJlcHJlc2VudHMgdGhlIHNwZWNpZmllZCB0aW1lc3RhbXAgaW4gZm9ybSBgXCJISDpNTTpTU1wiYC5cclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHRpbWVzdGFtcCBUaGUgdGltZXN0YW1wIHRvIGZvcm1hdC5cclxuICAgICAqIEByZXR1cm5zIEEgc3RyaW5nIHRoYXQgcmVwcmVzZW50cyB0aGUgc3BlY2lmaWVkIHRpbWVzdGFtcCBpbiBmb3JtIGBcIkhIOk1NOlNTXCJgLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGRhdGVUb0hITU1TUyh0aW1lc3RhbXA6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIGZvcm1hdERhdGUodGltZXN0YW1wLCBUU19GTVQsIExPQ0FMRSk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC8qKlxyXG4gICAgICogUmV0dXJucyBhIHN0cmluZyB0aGF0IHJlcHJlc2VudHMgdGhlIHNwZWNpZmllZCBhcnJheS5cclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIGFycmF5IFRoZSBhcnJheSB0byBmb3JtYXQuXHJcbiAgICAgKiBAcmV0dXJucyBBIHRyaW5nIHRoYXQgcmVwcmVzZW50cyB0aGUgc3BlY2lmaWVkIGFycmF5LlxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIHN0YXRpYyBmb3JtYXRBcnJheShhcnJheTogYW55W10pOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoIC0gMTtcclxuICAgICAgICBsZXQgaTogbnVtYmVyID0gMCxcclxuICAgICAgICAgICAgcmVzdWx0OiBzdHJpbmcgPSBFTVBUWV9TVFJJTkc7XHJcbiAgICAgICAgZm9yKDsgaSA8PSBsZW47ICsraSkge1xyXG4gICAgICAgICAgICBjb25zdCB2YWx1ZTogYW55ID0gYXJyYXlbaV07XHJcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFNUUklORykgcmVzdWx0ICs9IGBcIiR7dmFsdWV9XCIke2dldFN0cmluZ0VuZChpLCBsZW4pfWA7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSByZXN1bHQgKz0gYCR7TG9nVXRpbC5mb3JtYXRBcnJheSh2YWx1ZSl9JHtnZXRTdHJpbmdFbmQoaSwgbGVuKX1gO1xyXG4gICAgICAgICAgICBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09IE9CSkVDVCkgcmVzdWx0ICs9IGAke0xvZ1V0aWwubWV0YWRhdGFUb1N0cmluZyh2YWx1ZSl9JHtnZXRTdHJpbmdFbmQoaSwgbGVuKX1gO1xyXG4gICAgICAgICAgICBlbHNlIHJlc3VsdCArPSBgJHt2YWx1ZX0ke2dldFN0cmluZ0VuZChpLCBsZW4pfWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBgWyR7cmVzdWx0fV1gO1xyXG4gICAgfVxyXG59Il19
|
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
7
|
*/
|
|
8
8
|
export {};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zdG9yYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci10b29sYm94L3NyYy9saWIvZnJhbWV3b3JrL21vY2svaHR0cC9jb3JlL2RhdGEtc3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQGxpY2Vuc2VcclxuICogQ29weXJpZ2h0IFBhc2NhbCBFQ0hFTUFOTi4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cclxuICpcclxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW5cclxuICogdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Bhc2NhbGVjaGVtYW5uLmNvbS9hbmd1bGFyLXRvb2xib3gvcmVzb3VyY2VzL2xpY2Vuc2VcclxuICovXHJcblxyXG5pbXBvcnQgeyBIdHRwUmVzcG9uc2VNb2NrLCBIdHRwTW9ja1JlcXVlc3RNZXRhZGF0YSB9IGZyb20gXCIuLi8uLi8uLi8uLi9tb2RlbFwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqIFV0aWxpdHkgaW50ZXJmYWNlIHVzZWQgYnkgdGhlIGBEZWxlZ2F0ZVhocmAgY2xhc3MgdG8gc3RvcmUgSFRUUCByZXF1ZXN0IGluZm9ybWF0aW9uLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBEYXRhU3RvcmFnZSB7XHJcbiAgICBcclxuICAgIC8qKlxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqL1xyXG4gICAgaHR0cFJlc3BvbnNlOiBIdHRwUmVzcG9uc2VNb2NrO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqIFRoZSBhbW91bnQgb2YgZGF0YSBjdXJyZW50bHkgbG9hZGVkLlxyXG4gICAgICovXHJcbiAgICBsb2FkZWQ6IG51bWJlcjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKiBUaGUgdG90YWwgc2l6ZSBvZiBkYXRhIHRvIGxvYWQuXHJcbiAgICAgKi9cclxuICAgIHRvdGFsOiBudW1iZXI7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICogVGhlIGxvYWRlZCBkYXRhLlxyXG4gICAgICovXHJcbiAgICBkYXRhOiBhbnk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICogVGhlIEpTT04gc3RyaW5nIHByZXByZXNlbnRhdGlvbiBvZiB0aGUgbG9hZGVkIGRhdGEuXHJcbiAgICAgKi9cclxuICAgIHN0cmluZ2lmaWVkRGF0YTogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqIFRoZSBtZXRhZGF0YSBhc3NvY2lhdGVkIHRvIHRoZSBIVFRQIHJlcXVlc3QuXHJcbiAgICAgKi9cclxuICAgIHJlcXVlc3RNZXRhZGF0YTogSHR0cE1vY2tSZXF1ZXN0TWV0YWRhdGE7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UtZGVsYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbW9jay9odHRwL2NvcmUvcmVzcG9uc2UtZGVsYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqIFV0aWxpdHkgaW50ZXJmYWNlIHVzZWQgYnkgdGhlIGBEZWxlZ2F0ZVhocmAgY2xhc3MgdG8gbWFuYWdlIHRoZSBkZWxheSBvZiBhbiBIVFRQIHJlc3BvbnNlLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBSZXNwb25zZURlbGF5IHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKiBUaGUgYW1vdW50IG9mIHRpbWUgdGhlIEhUVFAgcmVzcXVlc3QgaXMgc3RhbGxlZCBiZWZvcmUgc2VuZGluZyB0aGUgcmVzcG9uc2UsIGluIG1pbGxpc2Vjb25kcy5cclxuICAgICAqL1xyXG4gICAgc3RhbGxlZDogbnVtYmVyO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqIFRoZSBjb21wbGV0ZSBkdXJhdGlvbiBvZiBhbiBIVFRQIHJlcXVlc3QsIGluIG1pbGxpc2Vjb25kcy5cclxuICAgICAqL1xyXG4gICAgZHVyYXRpb246IG51bWJlcjtcclxufVxyXG4iXX0=
|
|
@@ -75,6 +75,8 @@ export class EventTargetImpl {
|
|
|
75
75
|
const listenersForType = ll.get(type);
|
|
76
76
|
if (listenersForType.has(listener))
|
|
77
77
|
listenersForType.delete(listener);
|
|
78
|
+
if (listenersForType.size === 0)
|
|
79
|
+
ll.delete(type);
|
|
78
80
|
}
|
|
79
81
|
}
|
|
80
82
|
/**
|
|
@@ -107,9 +109,21 @@ export class EventTargetImpl {
|
|
|
107
109
|
listener.handleEvent(event);
|
|
108
110
|
if (options && options.once)
|
|
109
111
|
listenersForType.delete(listener);
|
|
112
|
+
if (listenersForType.size === 0)
|
|
113
|
+
ll.delete(type);
|
|
110
114
|
}
|
|
111
115
|
return true;
|
|
112
116
|
}
|
|
117
|
+
/**
|
|
118
|
+
* Checks whether the `EventTarget` object has any listeners registered for a specific type of event.
|
|
119
|
+
*
|
|
120
|
+
* @param type The type of event.
|
|
121
|
+
*
|
|
122
|
+
* @return A value of `true` if a listener of the specified type is registered; `false` otherwise.
|
|
123
|
+
*/
|
|
124
|
+
hasEventListener(type) {
|
|
125
|
+
return this._listenerList.has(type);
|
|
126
|
+
}
|
|
113
127
|
/**
|
|
114
128
|
* @private
|
|
115
129
|
*/
|
|
@@ -119,4 +133,4 @@ export class EventTargetImpl {
|
|
|
119
133
|
}
|
|
120
134
|
}
|
|
121
135
|
}
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtdGFyZ2V0LmltcGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbW9jay9odHRwL2V2ZW50L2V2ZW50LXRhcmdldC5pbXBsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTVDOztHQUVHO0FBQ0gsTUFBTSxHQUFHLEdBQVcsa0JBQWtCLENBQUM7QUFFdkM7O0dBRUc7QUFDSCxNQUFNLE1BQU0sR0FBVyxxQkFBcUIsQ0FBQztBQUU3Qzs7Ozs7O0dBTUc7QUFDSCxNQUFNLE9BQU8sZUFBZTtJQU94Qjs7T0FFRztJQUNIO1FBQ0ksSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO0lBQ2hELENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0ksZ0JBQWdCLENBQUMsSUFBWSxFQUFFLFFBQW1ELEVBQUUsT0FBdUQ7UUFDOUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sRUFBRSxHQUFxQixJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ2hELElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUMzQyxNQUFNLGdCQUFnQixHQUFrQixFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNsQyw2Q0FBNkM7WUFDN0MsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLG1CQUFtQixDQUFDLElBQVksRUFBRSxRQUFtRCxFQUFFLE9BQW9EO1FBQzlJLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM5QyxNQUFNLEVBQUUsR0FBcUIsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUNoRCxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNmLE1BQU0sZ0JBQWdCLEdBQWtCLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDckQsSUFBSSxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO2dCQUFFLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxRSxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLGFBQWEsQ0FBQyxLQUFZO1FBQzdCLElBQUksQ0FBQyxDQUFDLEtBQUssWUFBWSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sSUFBSSxTQUFTLENBQ2YseUZBQXlGLENBQzVGLENBQUM7UUFDTixDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQVcsS0FBSyxDQUFDLElBQUksQ0FBQztRQUNoQyxNQUFNLEVBQUUsR0FBcUIsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUNoRCxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLGdCQUFnQjtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ25DLEtBQUssTUFBTSxZQUFZLElBQUksZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUNwRCxNQUFNLFFBQVEsR0FBUSxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEMsTUFBTSxPQUFPLEdBQVEsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JDLGtGQUFrRjtZQUNsRixJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVE7Z0JBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDN0QsMEVBQTBFO2lCQUNyRSxJQUFJLFFBQVEsSUFBSSxPQUFPLFFBQVEsQ0FBQyxXQUFXLEtBQUssUUFBUTtnQkFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzNGLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxJQUFJO2dCQUFFLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ssY0FBYyxDQUFDLE1BQWMsRUFBRSxNQUFjO1FBQ2pELElBQUksTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ2IsTUFBTSxJQUFJLFNBQVMsQ0FDZixpQ0FBaUMsTUFBTSxpREFBaUQsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FDbkksQ0FBQztRQUNOLENBQUM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQGxpY2Vuc2VcclxuICogQ29weXJpZ2h0IFBhc2NhbCBFQ0hFTUFOTi4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cclxuICpcclxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW5cclxuICogdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Bhc2NhbGVjaGVtYW5uLmNvbS9hbmd1bGFyLXRvb2xib3gvcmVzb3VyY2VzL2xpY2Vuc2VcclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBkZXJpdmVkIGZyb20gdGhlIGZvbGxvd2luZyBvcmlnaW5hbCBzb3VyY2UgY29kZTpcclxuICogLSBodHRwczovL2dpdGh1Yi5jb20vYmVubGVzaC9ldmVudC10YXJnZXQtcG9seWZpbGxcclxuICogLSBDb3B5cmlnaHQgKGMpIDIwMjAgQmVuIExlc2hcclxuICogXHJcbiAqIFVzZSBvZiB0aGUgb3JpZ2luYWwgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgXHJcbiAqIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXRcclxuICogaHR0cHM6Ly9naXRodWIuY29tL2Jlbmxlc2gvZXZlbnQtdGFyZ2V0LXBvbHlmaWxsL2Jsb2IvbWFzdGVyL0xJQ0VOU0VcclxuICovXHJcblxyXG5pbXBvcnQgeyBGVU5DVElPTiB9IGZyb20gXCIuLi8uLi8uLi8uLi91dGlsXCI7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICovXHJcbmNvbnN0IEFERDogc3RyaW5nID0gXCJhZGRFdmVudExpc3RlbmVyXCI7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICovXHJcbmNvbnN0IFJFTU9WRTogc3RyaW5nID0gXCJyZW1vdmVFdmVudExpc3RlbmVyXCI7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICogQSB1dGlsaXR5IGNsYXNzIHRoZSBwcm92aWRlcyBhbiBpbXBsZW1lbnRhdGlvbiBmb3IgdGhlIGBFdmVudFRhcmdldGAgaW50ZXJmYWNlLlxyXG4gKiBUaGlzIGNsYXNzIGlzIHVzZWQgaW50ZXJuYWxseSBieSB0aGUgZnJhbWV3b3JrOyBwbGVhc2UgZG8gbm90IGV4cG9zZSBpdC5cclxuICogXHJcbiAqIEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0V2ZW50VGFyZ2V0XHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRXZlbnRUYXJnZXRJbXBsIGltcGxlbWVudHMgRXZlbnRUYXJnZXQge1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBfbGlzdGVuZXJMaXN0OiBNYXA8c3RyaW5nLCBhbnk+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgdGhpcy5fbGlzdGVuZXJMaXN0ID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKiBTZXRzIHVwIGEgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGNhbGxlZCB3aGVuZXZlciB0aGUgc3BlY2lmaWVkIGV2ZW50IGlzIGRlbGl2ZXJlZCB0byB0aGUgdGFyZ2V0LlxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0gdHlwZSBhIGNhc2Utc2Vuc2l0aXZlIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGV2ZW50IHR5cGUgdG8gbGlzdGVuIGZvci5cclxuICAgICAqIEBwYXJhbSBsaXN0ZW5lciB0aGUgb2JqZWN0IHRoYXQgcmVjZWl2ZXMgYSBub3RpZmljYXRpb24gKGFuIG9iamVjdCB0aGF0IGltcGxlbWVudHMgdGhlXHJcbiAgICAgKiAgICAgICAgICAgICAgICAgYEV2ZW50YCBpbnRlcmZhY2UpIHdoZW4gYW4gZXZlbnQgb2YgdGhlIHNwZWNpZmllZCB0eXBlIG9jY3Vycy4gXHJcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBhbiBvYmplY3QgdGhhdCBzcGVjaWZpZXMgY2hhcmFjdGVyaXN0aWNzIGFib3V0IHRoZSBldmVudCBsaXN0ZW5lci5cclxuICAgICAqIFxyXG4gICAgICogQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRXZlbnRUYXJnZXQvYWRkRXZlbnRMaXN0ZW5lclxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWRkRXZlbnRMaXN0ZW5lcih0eXBlOiBzdHJpbmcsIGxpc3RlbmVyOiBFdmVudExpc3RlbmVyT3JFdmVudExpc3RlbmVyT2JqZWN0IHwgbnVsbCwgb3B0aW9ucz86IGJvb2xlYW4gfCBBZGRFdmVudExpc3RlbmVyT3B0aW9ucyB8IHVuZGVmaW5lZCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY2hlY2tBcmdMZW5ndGgoYXJndW1lbnRzLmxlbmd0aCwgQUREKTtcclxuICAgICAgICBjb25zdCBsbDogTWFwPHN0cmluZywgYW55PiA9IHRoaXMuX2xpc3RlbmVyTGlzdDtcclxuICAgICAgICBpZiAoIWxsLmhhcyh0eXBlKSkgbGwuc2V0KHR5cGUsIG5ldyBNYXAoKSk7XHJcbiAgICAgICAgY29uc3QgbGlzdGVuZXJzRm9yVHlwZTogTWFwPGFueSwgYW55PiA9IGxsLmdldCh0eXBlKTtcclxuICAgICAgICBpZiAoIWxpc3RlbmVyc0ZvclR5cGUuaGFzKGxpc3RlbmVyKSkge1xyXG4gICAgICAgICAgICAvLyBBbnkgZ2l2ZW4gbGlzdGVuZXIgaXMgb25seSByZWdpc3RlcmVkIG9uY2VcclxuICAgICAgICAgICAgbGlzdGVuZXJzRm9yVHlwZS5zZXQobGlzdGVuZXIsIG9wdGlvbnMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKiBSZW1vdmVzIGFuIGV2ZW50IGxpc3RlbmVyIHByZXZpb3VzbHkgcmVnaXN0ZXJlZCB3aXRoIGBFdmVudFRhcmdldC5hZGRFdmVudExpc3RlbmVyKClgIGZyb20gdGhlIHRhcmdldC4gXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB0eXBlIGEgY2FzZS1zZW5zaXRpdmUgd2hpY2ggc3BlY2lmaWVzIHRoZSB0eXBlIG9mIGV2ZW50IGZvciB3aGljaCB0byByZW1vdmUgYW4gZXZlbnQgbGlzdGVuZXIuXHJcbiAgICAgKiBAcGFyYW0gbGlzdGVuZXIgdGhlIGV2ZW50IGxpc3RlbmVyIGZ1bmN0aW9uIG9mIHRoZSBldmVudCBoYW5kbGVyIHRvIHJlbW92ZSBmcm9tIHRoZSBldmVudCB0YXJnZXQuXHJcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBBbiBvcHRpb25zIG9iamVjdCB0aGF0IHNwZWNpZmllcyBjaGFyYWN0ZXJpc3RpY3MgYWJvdXQgdGhlIGV2ZW50IGxpc3RlbmVyLlxyXG4gICAgICogXHJcbiAgICAgKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9FdmVudFRhcmdldC9yZW1vdmVFdmVudExpc3RlbmVyXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyByZW1vdmVFdmVudExpc3RlbmVyKHR5cGU6IHN0cmluZywgbGlzdGVuZXI6IEV2ZW50TGlzdGVuZXJPckV2ZW50TGlzdGVuZXJPYmplY3QgfCBudWxsLCBvcHRpb25zPzogYm9vbGVhbiB8IEV2ZW50TGlzdGVuZXJPcHRpb25zIHwgdW5kZWZpbmVkKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5jaGVja0FyZ0xlbmd0aChhcmd1bWVudHMubGVuZ3RoLCBSRU1PVkUpO1xyXG4gICAgICAgIGNvbnN0IGxsOiBNYXA8c3RyaW5nLCBhbnk+ID0gdGhpcy5fbGlzdGVuZXJMaXN0O1xyXG4gICAgICAgIGlmIChsbC5oYXModHlwZSkpIHtcclxuICAgICAgICAgICAgY29uc3QgbGlzdGVuZXJzRm9yVHlwZTogTWFwPGFueSwgYW55PiA9IGxsLmdldCh0eXBlKTtcclxuICAgICAgICAgICAgaWYgKGxpc3RlbmVyc0ZvclR5cGUuaGFzKGxpc3RlbmVyKSkgbGlzdGVuZXJzRm9yVHlwZS5kZWxldGUobGlzdGVuZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKiBTZW5kcyBhbiBgRXZlbnRgIHRvIHRoaXMgdG8gdGhlIGBFdmVudGAgb2JqZWN0LCAoc3luY2hyb25vdXNseSkgaW52b2tpbmcgdGhlIGFmZmVjdGVkIGV2ZW50IGxpc3RlbmVyc1xyXG4gICAgICogaW4gdGhlIGFwcHJvcHJpYXRlIG9yZGVyLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBldmVudCB0aGUgYEV2ZW50IG9iamVjdCB0byBkaXNwYXRjaC4gSXRzIEV2ZW50LnRhcmdldCBwcm9wZXJ0eSB3aWxsIGJlIHNldCB0byB0aGUgY3VycmVudCBFdmVudFRhcmdldC5cclxuICAgICAqIEByZXR1cm5zIHRydWUgc2luY2UgdGhlcmUgYXJlIG5vIGNhbmNlbGxhYmxlIGV2ZW50cyBvbiBhIGJhc2UgYEV2ZW50VGFyZ2V0YC5cclxuICAgICAqIFxyXG4gICAgICogQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRXZlbnRUYXJnZXQvZGlzcGF0Y2hFdmVudFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZGlzcGF0Y2hFdmVudChldmVudDogRXZlbnQpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIShldmVudCBpbnN0YW5jZW9mIEV2ZW50KSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxyXG4gICAgICAgICAgICAgICAgXCJGYWlsZWQgdG8gZXhlY3V0ZSAnZGlzcGF0Y2hFdmVudCcgb24gJ0V2ZW50VGFyZ2V0JzogcGFyYW1ldGVyIDEgaXMgbm90IG9mIHR5cGUgJ0V2ZW50Jy5cIlxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCB0eXBlOiBzdHJpbmcgPSBldmVudC50eXBlO1xyXG4gICAgICAgIGNvbnN0IGxsOiBNYXA8c3RyaW5nLCBhbnk+ID0gdGhpcy5fbGlzdGVuZXJMaXN0O1xyXG4gICAgICAgIGNvbnN0IGxpc3RlbmVyc0ZvclR5cGUgPSBsbC5nZXQodHlwZSk7XHJcbiAgICAgICAgaWYgKCFsaXN0ZW5lcnNGb3JUeXBlKSByZXR1cm4gdHJ1ZTtcclxuICAgICAgICBmb3IgKGNvbnN0IGxpc3RuZXJFbnRyeSBvZiBsaXN0ZW5lcnNGb3JUeXBlLmVudHJpZXMoKSkge1xyXG4gICAgICAgICAgICBjb25zdCBsaXN0ZW5lcjogYW55ID0gbGlzdG5lckVudHJ5WzBdO1xyXG4gICAgICAgICAgICBjb25zdCBvcHRpb25zOiBhbnkgPSBsaXN0bmVyRW50cnlbMV07XHJcbiAgICAgICAgICAgIC8vIExpc3RlbmVyIGZ1bmN0aW9ucyBtdXN0IGJlIGV4ZWN1dGVkIHdpdGggdGhlIEV2ZW50VGFyZ2V0IGFzIHRoZSBgdGhpc2AgY29udGV4dC5cclxuICAgICAgICAgICAgaWYgKHR5cGVvZiBsaXN0ZW5lciA9PT0gRlVOQ1RJT04pIGxpc3RlbmVyLmNhbGwodGhpcywgZXZlbnQpO1xyXG4gICAgICAgICAgICAvLyBMaXN0ZW5lciBvYmplY3RzIGhhdmUgdGhlaXIgaGFuZGxlRXZlbnQgbWV0aG9kIGNhbGxlZCwgaWYgdGhleSBoYXZlIG9uZVxyXG4gICAgICAgICAgICBlbHNlIGlmIChsaXN0ZW5lciAmJiB0eXBlb2YgbGlzdGVuZXIuaGFuZGxlRXZlbnQgPT09IEZVTkNUSU9OKSBsaXN0ZW5lci5oYW5kbGVFdmVudChldmVudCk7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMub25jZSkgbGlzdGVuZXJzRm9yVHlwZS5kZWxldGUobGlzdGVuZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgY2hlY2tBcmdMZW5ndGgoYXJnTGVuOiBudW1iZXIsIG1ldGhvZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGFyZ0xlbiA8IDIpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcclxuICAgICAgICAgICAgICAgIGBUeXBlRXJyb3I6IEZhaWxlZCB0byBleGVjdXRlICcke21ldGhvZH0nIG9uICdFdmVudFRhcmdldCc6IDIgYXJndW1lbnRzIHJlcXVpcmVkLCBidXQgJHthcmdMZW4gPT09IDEgPyAnb25seSAxJyA6ICcwJ30gcHJlc2VudC5gXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtdGFyZ2V0LmltcGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbW9jay9odHRwL2V2ZW50L2V2ZW50LXRhcmdldC5pbXBsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTVDOztHQUVHO0FBQ0gsTUFBTSxHQUFHLEdBQVcsa0JBQWtCLENBQUM7QUFFdkM7O0dBRUc7QUFDSCxNQUFNLE1BQU0sR0FBVyxxQkFBcUIsQ0FBQztBQUU3Qzs7Ozs7O0dBTUc7QUFDSCxNQUFNLE9BQU8sZUFBZTtJQU94Qjs7T0FFRztJQUNIO1FBQ0ksSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO0lBQ2hELENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0ksZ0JBQWdCLENBQUMsSUFBWSxFQUFFLFFBQW1ELEVBQUUsT0FBdUQ7UUFDOUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sRUFBRSxHQUFxQixJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ2hELElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUMzQyxNQUFNLGdCQUFnQixHQUFrQixFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNsQyw2Q0FBNkM7WUFDN0MsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLG1CQUFtQixDQUFDLElBQVksRUFBRSxRQUFtRCxFQUFFLE9BQW9EO1FBQzlJLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM5QyxNQUFNLEVBQUUsR0FBcUIsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUNoRCxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNmLE1BQU0sZ0JBQWdCLEdBQWtCLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDckQsSUFBSSxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO2dCQUFFLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN0RSxJQUFJLGdCQUFnQixDQUFDLElBQUksS0FBSyxDQUFDO2dCQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckQsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSSxhQUFhLENBQUMsS0FBWTtRQUM3QixJQUFJLENBQUMsQ0FBQyxLQUFLLFlBQVksS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM1QixNQUFNLElBQUksU0FBUyxDQUNmLHlGQUF5RixDQUM1RixDQUFDO1FBQ04sQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFXLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDaEMsTUFBTSxFQUFFLEdBQXFCLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDaEQsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxnQkFBZ0I7WUFBRSxPQUFPLElBQUksQ0FBQztRQUNuQyxLQUFLLE1BQU0sWUFBWSxJQUFJLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDcEQsTUFBTSxRQUFRLEdBQVEsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sT0FBTyxHQUFRLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyQyxrRkFBa0Y7WUFDbEYsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRO2dCQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzdELDBFQUEwRTtpQkFDckUsSUFBSSxRQUFRLElBQUksT0FBTyxRQUFRLENBQUMsV0FBVyxLQUFLLFFBQVE7Z0JBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzRixJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsSUFBSTtnQkFBRSxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDL0QsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLEtBQUssQ0FBQztnQkFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksZ0JBQWdCLENBQUMsSUFBWTtRQUNoQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7T0FFRztJQUNLLGNBQWMsQ0FBQyxNQUFjLEVBQUUsTUFBYztRQUNqRCxJQUFJLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNiLE1BQU0sSUFBSSxTQUFTLENBQ2YsaUNBQWlDLE1BQU0saURBQWlELE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQ25JLENBQUM7UUFDTixDQUFDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHRoZSBmb2xsb3dpbmcgb3JpZ2luYWwgc291cmNlIGNvZGU6XHJcbiAqIC0gaHR0cHM6Ly9naXRodWIuY29tL2Jlbmxlc2gvZXZlbnQtdGFyZ2V0LXBvbHlmaWxsXHJcbiAqIC0gQ29weXJpZ2h0IChjKSAyMDIwIEJlbiBMZXNoXHJcbiAqIFxyXG4gKiBVc2Ugb2YgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIFxyXG4gKiB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0XHJcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9iZW5sZXNoL2V2ZW50LXRhcmdldC1wb2x5ZmlsbC9ibG9iL21hc3Rlci9MSUNFTlNFXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgRlVOQ1RJT04gfSBmcm9tIFwiLi4vLi4vLi4vLi4vdXRpbFwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqL1xyXG5jb25zdCBBREQ6IHN0cmluZyA9IFwiYWRkRXZlbnRMaXN0ZW5lclwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqL1xyXG5jb25zdCBSRU1PVkU6IHN0cmluZyA9IFwicmVtb3ZlRXZlbnRMaXN0ZW5lclwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqIEEgdXRpbGl0eSBjbGFzcyB0aGUgcHJvdmlkZXMgYW4gaW1wbGVtZW50YXRpb24gZm9yIHRoZSBgRXZlbnRUYXJnZXRgIGludGVyZmFjZS5cclxuICogVGhpcyBjbGFzcyBpcyB1c2VkIGludGVybmFsbHkgYnkgdGhlIGZyYW1ld29yazsgcGxlYXNlIGRvIG5vdCBleHBvc2UgaXQuXHJcbiAqIFxyXG4gKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9FdmVudFRhcmdldFxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIEV2ZW50VGFyZ2V0SW1wbCBpbXBsZW1lbnRzIEV2ZW50VGFyZ2V0IHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgX2xpc3RlbmVyTGlzdDogTWFwPHN0cmluZywgYW55PjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgICAgIHRoaXMuX2xpc3RlbmVyTGlzdCA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICogU2V0cyB1cCBhIGZ1bmN0aW9uIHRoYXQgd2lsbCBiZSBjYWxsZWQgd2hlbmV2ZXIgdGhlIHNwZWNpZmllZCBldmVudCBpcyBkZWxpdmVyZWQgdG8gdGhlIHRhcmdldC5cclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHR5cGUgYSBjYXNlLXNlbnNpdGl2ZSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBldmVudCB0eXBlIHRvIGxpc3RlbiBmb3IuXHJcbiAgICAgKiBAcGFyYW0gbGlzdGVuZXIgdGhlIG9iamVjdCB0aGF0IHJlY2VpdmVzIGEgbm90aWZpY2F0aW9uIChhbiBvYmplY3QgdGhhdCBpbXBsZW1lbnRzIHRoZVxyXG4gICAgICogICAgICAgICAgICAgICAgIGBFdmVudGAgaW50ZXJmYWNlKSB3aGVuIGFuIGV2ZW50IG9mIHRoZSBzcGVjaWZpZWQgdHlwZSBvY2N1cnMuIFxyXG4gICAgICogQHBhcmFtIG9wdGlvbnMgYW4gb2JqZWN0IHRoYXQgc3BlY2lmaWVzIGNoYXJhY3RlcmlzdGljcyBhYm91dCB0aGUgZXZlbnQgbGlzdGVuZXIuXHJcbiAgICAgKiBcclxuICAgICAqIEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0V2ZW50VGFyZ2V0L2FkZEV2ZW50TGlzdGVuZXJcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFkZEV2ZW50TGlzdGVuZXIodHlwZTogc3RyaW5nLCBsaXN0ZW5lcjogRXZlbnRMaXN0ZW5lck9yRXZlbnRMaXN0ZW5lck9iamVjdCB8IG51bGwsIG9wdGlvbnM/OiBib29sZWFuIHwgQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmNoZWNrQXJnTGVuZ3RoKGFyZ3VtZW50cy5sZW5ndGgsIEFERCk7XHJcbiAgICAgICAgY29uc3QgbGw6IE1hcDxzdHJpbmcsIGFueT4gPSB0aGlzLl9saXN0ZW5lckxpc3Q7XHJcbiAgICAgICAgaWYgKCFsbC5oYXModHlwZSkpIGxsLnNldCh0eXBlLCBuZXcgTWFwKCkpO1xyXG4gICAgICAgIGNvbnN0IGxpc3RlbmVyc0ZvclR5cGU6IE1hcDxhbnksIGFueT4gPSBsbC5nZXQodHlwZSk7XHJcbiAgICAgICAgaWYgKCFsaXN0ZW5lcnNGb3JUeXBlLmhhcyhsaXN0ZW5lcikpIHtcclxuICAgICAgICAgICAgLy8gQW55IGdpdmVuIGxpc3RlbmVyIGlzIG9ubHkgcmVnaXN0ZXJlZCBvbmNlXHJcbiAgICAgICAgICAgIGxpc3RlbmVyc0ZvclR5cGUuc2V0KGxpc3RlbmVyLCBvcHRpb25zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICogUmVtb3ZlcyBhbiBldmVudCBsaXN0ZW5lciBwcmV2aW91c2x5IHJlZ2lzdGVyZWQgd2l0aCBgRXZlbnRUYXJnZXQuYWRkRXZlbnRMaXN0ZW5lcigpYCBmcm9tIHRoZSB0YXJnZXQuIFxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0gdHlwZSBhIGNhc2Utc2Vuc2l0aXZlIHdoaWNoIHNwZWNpZmllcyB0aGUgdHlwZSBvZiBldmVudCBmb3Igd2hpY2ggdG8gcmVtb3ZlIGFuIGV2ZW50IGxpc3RlbmVyLlxyXG4gICAgICogQHBhcmFtIGxpc3RlbmVyIHRoZSBldmVudCBsaXN0ZW5lciBmdW5jdGlvbiBvZiB0aGUgZXZlbnQgaGFuZGxlciB0byByZW1vdmUgZnJvbSB0aGUgZXZlbnQgdGFyZ2V0LlxyXG4gICAgICogQHBhcmFtIG9wdGlvbnMgQW4gb3B0aW9ucyBvYmplY3QgdGhhdCBzcGVjaWZpZXMgY2hhcmFjdGVyaXN0aWNzIGFib3V0IHRoZSBldmVudCBsaXN0ZW5lci5cclxuICAgICAqIFxyXG4gICAgICogQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRXZlbnRUYXJnZXQvcmVtb3ZlRXZlbnRMaXN0ZW5lclxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcmVtb3ZlRXZlbnRMaXN0ZW5lcih0eXBlOiBzdHJpbmcsIGxpc3RlbmVyOiBFdmVudExpc3RlbmVyT3JFdmVudExpc3RlbmVyT2JqZWN0IHwgbnVsbCwgb3B0aW9ucz86IGJvb2xlYW4gfCBFdmVudExpc3RlbmVyT3B0aW9ucyB8IHVuZGVmaW5lZCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY2hlY2tBcmdMZW5ndGgoYXJndW1lbnRzLmxlbmd0aCwgUkVNT1ZFKTtcclxuICAgICAgICBjb25zdCBsbDogTWFwPHN0cmluZywgYW55PiA9IHRoaXMuX2xpc3RlbmVyTGlzdDtcclxuICAgICAgICBpZiAobGwuaGFzKHR5cGUpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxpc3RlbmVyc0ZvclR5cGU6IE1hcDxhbnksIGFueT4gPSBsbC5nZXQodHlwZSk7XHJcbiAgICAgICAgICAgIGlmIChsaXN0ZW5lcnNGb3JUeXBlLmhhcyhsaXN0ZW5lcikpIGxpc3RlbmVyc0ZvclR5cGUuZGVsZXRlKGxpc3RlbmVyKTtcclxuICAgICAgICAgICAgaWYgKGxpc3RlbmVyc0ZvclR5cGUuc2l6ZSA9PT0gMCkgbGwuZGVsZXRlKHR5cGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKiBTZW5kcyBhbiBgRXZlbnRgIHRvIHRoaXMgdG8gdGhlIGBFdmVudGAgb2JqZWN0LCAoc3luY2hyb25vdXNseSkgaW52b2tpbmcgdGhlIGFmZmVjdGVkIGV2ZW50IGxpc3RlbmVyc1xyXG4gICAgICogaW4gdGhlIGFwcHJvcHJpYXRlIG9yZGVyLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBldmVudCB0aGUgYEV2ZW50IG9iamVjdCB0byBkaXNwYXRjaC4gSXRzIEV2ZW50LnRhcmdldCBwcm9wZXJ0eSB3aWxsIGJlIHNldCB0byB0aGUgY3VycmVudCBFdmVudFRhcmdldC5cclxuICAgICAqIEByZXR1cm5zIHRydWUgc2luY2UgdGhlcmUgYXJlIG5vIGNhbmNlbGxhYmxlIGV2ZW50cyBvbiBhIGJhc2UgYEV2ZW50VGFyZ2V0YC5cclxuICAgICAqIFxyXG4gICAgICogQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRXZlbnRUYXJnZXQvZGlzcGF0Y2hFdmVudFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZGlzcGF0Y2hFdmVudChldmVudDogRXZlbnQpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIShldmVudCBpbnN0YW5jZW9mIEV2ZW50KSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxyXG4gICAgICAgICAgICAgICAgXCJGYWlsZWQgdG8gZXhlY3V0ZSAnZGlzcGF0Y2hFdmVudCcgb24gJ0V2ZW50VGFyZ2V0JzogcGFyYW1ldGVyIDEgaXMgbm90IG9mIHR5cGUgJ0V2ZW50Jy5cIlxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCB0eXBlOiBzdHJpbmcgPSBldmVudC50eXBlO1xyXG4gICAgICAgIGNvbnN0IGxsOiBNYXA8c3RyaW5nLCBhbnk+ID0gdGhpcy5fbGlzdGVuZXJMaXN0O1xyXG4gICAgICAgIGNvbnN0IGxpc3RlbmVyc0ZvclR5cGUgPSBsbC5nZXQodHlwZSk7XHJcbiAgICAgICAgaWYgKCFsaXN0ZW5lcnNGb3JUeXBlKSByZXR1cm4gdHJ1ZTtcclxuICAgICAgICBmb3IgKGNvbnN0IGxpc3RuZXJFbnRyeSBvZiBsaXN0ZW5lcnNGb3JUeXBlLmVudHJpZXMoKSkge1xyXG4gICAgICAgICAgICBjb25zdCBsaXN0ZW5lcjogYW55ID0gbGlzdG5lckVudHJ5WzBdO1xyXG4gICAgICAgICAgICBjb25zdCBvcHRpb25zOiBhbnkgPSBsaXN0bmVyRW50cnlbMV07XHJcbiAgICAgICAgICAgIC8vIExpc3RlbmVyIGZ1bmN0aW9ucyBtdXN0IGJlIGV4ZWN1dGVkIHdpdGggdGhlIEV2ZW50VGFyZ2V0IGFzIHRoZSBgdGhpc2AgY29udGV4dC5cclxuICAgICAgICAgICAgaWYgKHR5cGVvZiBsaXN0ZW5lciA9PT0gRlVOQ1RJT04pIGxpc3RlbmVyLmNhbGwodGhpcywgZXZlbnQpO1xyXG4gICAgICAgICAgICAvLyBMaXN0ZW5lciBvYmplY3RzIGhhdmUgdGhlaXIgaGFuZGxlRXZlbnQgbWV0aG9kIGNhbGxlZCwgaWYgdGhleSBoYXZlIG9uZVxyXG4gICAgICAgICAgICBlbHNlIGlmIChsaXN0ZW5lciAmJiB0eXBlb2YgbGlzdGVuZXIuaGFuZGxlRXZlbnQgPT09IEZVTkNUSU9OKSBsaXN0ZW5lci5oYW5kbGVFdmVudChldmVudCk7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMub25jZSkgbGlzdGVuZXJzRm9yVHlwZS5kZWxldGUobGlzdGVuZXIpO1xyXG4gICAgICAgICAgICBpZiAobGlzdGVuZXJzRm9yVHlwZS5zaXplID09PSAwKSBsbC5kZWxldGUodHlwZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2hlY2tzIHdoZXRoZXIgdGhlIGBFdmVudFRhcmdldGAgb2JqZWN0IGhhcyBhbnkgbGlzdGVuZXJzIHJlZ2lzdGVyZWQgZm9yIGEgc3BlY2lmaWMgdHlwZSBvZiBldmVudC5cclxuICAgICAqIFxyXG4gICAgICogQHBhcmFtIHR5cGUgVGhlIHR5cGUgb2YgZXZlbnQuXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm4gIEEgdmFsdWUgb2YgYHRydWVgIGlmIGEgbGlzdGVuZXIgb2YgdGhlIHNwZWNpZmllZCB0eXBlIGlzIHJlZ2lzdGVyZWQ7IGBmYWxzZWAgb3RoZXJ3aXNlLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaGFzRXZlbnRMaXN0ZW5lcih0eXBlOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fbGlzdGVuZXJMaXN0Lmhhcyh0eXBlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgY2hlY2tBcmdMZW5ndGgoYXJnTGVuOiBudW1iZXIsIG1ldGhvZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGFyZ0xlbiA8IDIpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcclxuICAgICAgICAgICAgICAgIGBUeXBlRXJyb3I6IEZhaWxlZCB0byBleGVjdXRlICcke21ldGhvZH0nIG9uICdFdmVudFRhcmdldCc6IDIgYXJndW1lbnRzIHJlcXVpcmVkLCBidXQgJHthcmdMZW4gPT09IDEgPyAnb25seSAxJyA6ICcwJ30gcHJlc2VudC5gXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
import { AbstractLogger } from "../../../logging";
|
|
9
|
+
/**
|
|
10
|
+
* @private
|
|
11
|
+
* The `Logger` implementation used by the `HttpMockLoggingService` class to manage logs.
|
|
12
|
+
*/
|
|
13
|
+
export class HttpMockLogger extends AbstractLogger {
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1tb2NrLWxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL2ZyYW1ld29yay9tb2NrL2h0dHAvbG9nZ2luZy9odHRwLW1vY2stbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVsRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sY0FBZSxTQUFRLGNBQWM7Q0FBRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAbGljZW5zZVxyXG4gKiBDb3B5cmlnaHQgUGFzY2FsIEVDSEVNQU5OLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxyXG4gKlxyXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpblxyXG4gKiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vcGFzY2FsZWNoZW1hbm4uY29tL2FuZ3VsYXItdG9vbGJveC9yZXNvdXJjZXMvbGljZW5zZVxyXG4gKi9cclxuXHJcbmltcG9ydCB7IEFic3RyYWN0TG9nZ2VyIH0gZnJvbSBcIi4uLy4uLy4uL2xvZ2dpbmdcIjtcclxuXHJcbi8qKlxyXG4gKiBAcHJpdmF0ZVxyXG4gKiBUaGUgYExvZ2dlcmAgaW1wbGVtZW50YXRpb24gdXNlZCBieSB0aGUgYEh0dHBNb2NrTG9nZ2luZ1NlcnZpY2VgIGNsYXNzIHRvIG1hbmFnZSBsb2dzLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIEh0dHBNb2NrTG9nZ2VyIGV4dGVuZHMgQWJzdHJhY3RMb2dnZXIge30iXX0=
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
import { HttpResponse } from "@angular/common/http";
|
|
9
|
+
import { HttpHeadersUtil } from "../util/http-headers.util";
|
|
10
|
+
/**
|
|
11
|
+
* @private
|
|
12
|
+
* A static builder for creating `HttpMockLoggingMetadata` objects.
|
|
13
|
+
*/
|
|
14
|
+
export class HttpMockLoggingMetadataBuilder {
|
|
15
|
+
/**
|
|
16
|
+
* @private
|
|
17
|
+
* Creates and returns a new `HttpMockLoggingMetadata` object.
|
|
18
|
+
*/
|
|
19
|
+
static build(xhr, request, requestMetadata) {
|
|
20
|
+
const responseInit = {
|
|
21
|
+
body: xhr.response,
|
|
22
|
+
status: xhr.status,
|
|
23
|
+
statusText: xhr.statusText,
|
|
24
|
+
url: xhr.responseURL,
|
|
25
|
+
headers: HttpHeadersUtil.encode(xhr.getAllResponseHeaders())
|
|
26
|
+
};
|
|
27
|
+
const response = new HttpResponse(responseInit);
|
|
28
|
+
return {
|
|
29
|
+
request: request,
|
|
30
|
+
response: response,
|
|
31
|
+
requestMetadata: requestMetadata
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1tb2NrLWxvZ2dpbmctbWV0YWRhdGEuYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL2ZyYW1ld29yay9tb2NrL2h0dHAvbG9nZ2luZy9odHRwLW1vY2stbG9nZ2luZy1tZXRhZGF0YS5idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBZSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFNUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLDhCQUE4QjtJQUV2Qzs7O09BR0c7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQWEsRUFBRSxPQUF5QixFQUFFLGVBQXdDO1FBQ2xHLE1BQU0sWUFBWSxHQUFRO1lBQ3RCLElBQUksRUFBRSxHQUFHLENBQUMsUUFBUTtZQUNsQixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07WUFDbEIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1lBQzFCLEdBQUcsRUFBRSxHQUFHLENBQUMsV0FBVztZQUNwQixPQUFPLEVBQUUsZUFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLEVBQUUsQ0FBQztTQUMvRCxDQUFDO1FBQ0YsTUFBTSxRQUFRLEdBQXNCLElBQUksWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ25FLE9BQU87WUFDSCxPQUFPLEVBQUUsT0FBTztZQUNoQixRQUFRLEVBQUUsUUFBUTtZQUNsQixlQUFlLEVBQUUsZUFBZTtTQUNuQyxDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgSHR0cFJlcXVlc3QsIEh0dHBSZXNwb25zZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBYaHJQcm94eSwgSHR0cE1vY2tMb2dnaW5nTWV0YWRhdGEsIEh0dHBNb2NrUmVxdWVzdE1ldGFkYXRhIH0gZnJvbSBcIi4uLy4uLy4uLy4uL21vZGVsXCI7XHJcbmltcG9ydCB7IEh0dHBIZWFkZXJzVXRpbCB9IGZyb20gXCIuLi91dGlsL2h0dHAtaGVhZGVycy51dGlsXCI7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICogQSBzdGF0aWMgYnVpbGRlciBmb3IgY3JlYXRpbmcgYEh0dHBNb2NrTG9nZ2luZ01ldGFkYXRhYCBvYmplY3RzLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIEh0dHBNb2NrTG9nZ2luZ01ldGFkYXRhQnVpbGRlciB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICogQ3JlYXRlcyBhbmQgcmV0dXJucyBhIG5ldyBgSHR0cE1vY2tMb2dnaW5nTWV0YWRhdGFgIG9iamVjdC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBidWlsZCh4aHI6IFhoclByb3h5LCByZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCByZXF1ZXN0TWV0YWRhdGE6IEh0dHBNb2NrUmVxdWVzdE1ldGFkYXRhKTogSHR0cE1vY2tMb2dnaW5nTWV0YWRhdGEge1xyXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlSW5pdDogYW55ID0ge1xyXG4gICAgICAgICAgICBib2R5OiB4aHIucmVzcG9uc2UsXHJcbiAgICAgICAgICAgIHN0YXR1czogeGhyLnN0YXR1cyxcclxuICAgICAgICAgICAgc3RhdHVzVGV4dDogeGhyLnN0YXR1c1RleHQsXHJcbiAgICAgICAgICAgIHVybDogeGhyLnJlc3BvbnNlVVJMLFxyXG4gICAgICAgICAgICBoZWFkZXJzOiBIdHRwSGVhZGVyc1V0aWwuZW5jb2RlKHhoci5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSlcclxuICAgICAgICB9O1xyXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlOiBIdHRwUmVzcG9uc2U8YW55PiA9IG5ldyBIdHRwUmVzcG9uc2UocmVzcG9uc2VJbml0KTtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICByZXF1ZXN0OiByZXF1ZXN0LFxyXG4gICAgICAgICAgICByZXNwb25zZTogcmVzcG9uc2UsXHJcbiAgICAgICAgICAgIHJlcXVlc3RNZXRhZGF0YTogcmVxdWVzdE1ldGFkYXRhXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
4
|
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
7
|
*
|
|
8
8
|
* This source code is derived from the following original source code:
|
|
9
9
|
* - https://github.com/pillarjs/path-to-regexp
|
|
@@ -31,4 +31,4 @@ const ESCAPE_VALUE = "\\$1";
|
|
|
31
31
|
export const escapeRegexpString = (str) => {
|
|
32
32
|
return str.replace(ESCAPE_REGEXP, ESCAPE_VALUE);
|
|
33
33
|
};
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNjYXBlLXRvLXJlZ2V4cC1zdHJpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbW9jay9odHRwL3BhdGgtdG8tcmVnZXhwL2VzY2FwZS10by1yZWdleHAtc3RyaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBSUg7O0dBRUc7QUFDSCxNQUFNLGFBQWEsR0FBVywyQkFBMkIsQ0FBQztBQUUxRDs7R0FFRztBQUNILE1BQU0sWUFBWSxHQUFXLE1BQU0sQ0FBQztBQUVwQzs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBVyxDQUFDLEdBQVcsRUFBQyxFQUFFO0lBQ3ZELE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUM7QUFDbEQsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHRoZSBmb2xsb3dpbmcgb3JpZ2luYWwgc291cmNlIGNvZGU6XHJcbiAqIC0gaHR0cHM6Ly9naXRodWIuY29tL3BpbGxhcmpzL3BhdGgtdG8tcmVnZXhwXHJcbiAqIC0gQ29weXJpZ2h0IChjKSAyMDE0IEJsYWtlIEVtYnJleSAoaGVsbG9AYmxha2VlbWJyZXkuY29tKVxyXG4gKiBcclxuICogVXNlIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSBcclxuICogdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdFxyXG4gKiBodHRwczovL2dpdGh1Yi5jb20vcGlsbGFyanMvcGF0aC10by1yZWdleHAvYmxvYi9tYXN0ZXIvTElDRU5TRVxyXG4gKi9cclxuXHJcbmltcG9ydCB7IEVuY29kZSB9IGZyb20gXCIuL21vZGVsL2VuY29kZVwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqL1xyXG5jb25zdCBFU0NBUEVfUkVHRVhQOiBSZWdFeHAgPSAvKFsuKyo/PV4hOiR7fSgpW1xcXXwvXFxcXF0pL2c7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICovXHJcbmNvbnN0IEVTQ0FQRV9WQUxVRTogc3RyaW5nID0gXCJcXFxcJDFcIjtcclxuXHJcbi8qKlxyXG4gKiBAcHJpdmF0ZVxyXG4gKiBFc2NhcGUgYSByZWd1bGFyIGV4cHJlc3Npb24gc3RyaW5nLlxyXG4gKiBcclxuICogQHBhcmFtIHN0ciBUaGUgcmVndWxhciBleHByZXNzaW9uIHN0cmluZyB0byBlc2NhcGUuXHJcbiAqIEByZXR1cm5zIEFuIGVzY2FwZWQgYSByZWd1bGFyIGV4cHJlc3Npb24gc3RyaW5nLlxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGVzY2FwZVJlZ2V4cFN0cmluZzogRW5jb2RlID0gKHN0cjogc3RyaW5nKT0+IHtcclxuICByZXR1cm4gc3RyLnJlcGxhY2UoRVNDQVBFX1JFR0VYUCwgRVNDQVBFX1ZBTFVFKTtcclxufVxyXG4iXX0=
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
4
|
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
7
|
*
|
|
8
8
|
* This source code is derived from the following original source code:
|
|
9
9
|
* - https://github.com/pillarjs/path-to-regexp
|
|
@@ -14,4 +14,4 @@
|
|
|
14
14
|
* https://github.com/pillarjs/path-to-regexp/blob/master/LICENSE
|
|
15
15
|
*/
|
|
16
16
|
export {};
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGV4LXRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci10b29sYm94L3NyYy9saWIvZnJhbWV3b3JrL21vY2svaHR0cC9wYXRoLXRvLXJlZ2V4cC9tb2RlbC9sZXgtdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0ciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQGxpY2Vuc2VcclxuICogQ29weXJpZ2h0IFBhc2NhbCBFQ0hFTUFOTi4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cclxuICpcclxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW5cclxuICogdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Bhc2NhbGVjaGVtYW5uLmNvbS9hbmd1bGFyLXRvb2xib3gvcmVzb3VyY2VzL2xpY2Vuc2VcclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBkZXJpdmVkIGZyb20gdGhlIGZvbGxvd2luZyBvcmlnaW5hbCBzb3VyY2UgY29kZTpcclxuICogLSBodHRwczovL2dpdGh1Yi5jb20vcGlsbGFyanMvcGF0aC10by1yZWdleHBcclxuICogLSBDb3B5cmlnaHQgKGMpIDIwMTQgQmxha2UgRW1icmV5IChoZWxsb0BibGFrZWVtYnJleS5jb20pXHJcbiAqIFxyXG4gKiBVc2Ugb2YgdGhlIG9yaWdpbmFsIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIFxyXG4gKiB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0XHJcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9waWxsYXJqcy9wYXRoLXRvLXJlZ2V4cC9ibG9iL21hc3Rlci9MSUNFTlNFXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgVG9rZW5UeXBlIH0gZnJvbSBcIi4vdG9rZW4tdHlwZVwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqIERlZmluZXMgdGhlIEFQSSBmb3IgdG9rZW5pemVyIHJlc3VsdHMuXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIExleFRva2VuIHtcclxuICAgIFxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgdHlwZTogVG9rZW5UeXBlO1xyXG4gICAgXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBpbmRleDogbnVtYmVyO1xyXG4gICAgXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICB2YWx1ZTogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|
|
@@ -17,10 +17,11 @@ export class DataStorageBuilder {
|
|
|
17
17
|
*
|
|
18
18
|
* @param httpResponse The `HttpResponseMock` to be stored by the framework.
|
|
19
19
|
* @param data The data of the HTTP response to be stored by the framework.
|
|
20
|
+
* @param metadata The metadata of the HTTP mock request to be stored by the framework.
|
|
20
21
|
*
|
|
21
22
|
* @returns A new `DataStorage` object.
|
|
22
23
|
*/
|
|
23
|
-
static buildDataStorage(httpResponse, data) {
|
|
24
|
+
static buildDataStorage(httpResponse, data, metadata) {
|
|
24
25
|
// TODO: add support for different data types (string, Blob, etc.)
|
|
25
26
|
const stringifiedData = data ? JSON.stringify(data) : EMPTY_STRING;
|
|
26
27
|
return {
|
|
@@ -28,8 +29,9 @@ export class DataStorageBuilder {
|
|
|
28
29
|
loaded: 0,
|
|
29
30
|
total: data ? new Blob([stringifiedData]).size : 0,
|
|
30
31
|
data: data,
|
|
31
|
-
stringifiedData: stringifiedData
|
|
32
|
+
stringifiedData: stringifiedData,
|
|
33
|
+
requestMetadata: metadata
|
|
32
34
|
};
|
|
33
35
|
}
|
|
34
36
|
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zdG9yYWdlLmJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbW9jay9odHRwL3V0aWwvZGF0YS1zdG9yYWdlLmJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBR0gsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBSWhEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxrQkFBa0I7SUFFM0I7Ozs7Ozs7OztPQVNHO0lBQ0ksTUFBTSxDQUFDLGdCQUFnQixDQUFDLFlBQThCLEVBQUUsSUFBUyxFQUFFLFFBQWlDO1FBQ3ZHLGtFQUFrRTtRQUNsRSxNQUFNLGVBQWUsR0FBVyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUMzRSxPQUFPO1lBQ0gsWUFBWSxFQUFFLFlBQVk7WUFDMUIsTUFBTSxFQUFFLENBQUM7WUFDVCxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2xELElBQUksRUFBRSxJQUFJO1lBQ1YsZUFBZSxFQUFFLGVBQWU7WUFDaEMsZUFBZSxFQUFFLFFBQVE7U0FDNUIsQ0FBQztJQUNOLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAbGljZW5zZVxyXG4gKiBDb3B5cmlnaHQgUGFzY2FsIEVDSEVNQU5OLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxyXG4gKlxyXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpblxyXG4gKiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vcGFzY2FsZWNoZW1hbm4uY29tL2FuZ3VsYXItdG9vbGJveC9yZXNvdXJjZXMvbGljZW5zZVxyXG4gKi9cclxuXHJcblxyXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vdXRpbFwiO1xyXG5pbXBvcnQgeyBIdHRwTW9ja1JlcXVlc3RNZXRhZGF0YSwgSHR0cFJlc3BvbnNlTW9jayB9IGZyb20gXCIuLi8uLi8uLi8uLi9tb2RlbFwiO1xyXG5pbXBvcnQgeyBEYXRhU3RvcmFnZSB9IGZyb20gXCIuLi9jb3JlL2RhdGEtc3RvcmFnZVwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqIEEgc3RhdGljIHV0aWxpdHkgY2xhc3MgZm9yIGJ1aWxkaW5nIGBEYXRhU3RvcmFnZWAgb2JqZWN0cy5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBEYXRhU3RvcmFnZUJ1aWxkZXIge1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqIEJ1aWxkcyBhbmQgcmV0dXJucyBhIG5ldyBgRGF0YVN0b3JhZ2VgIG9iamVjdHMuXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSBodHRwUmVzcG9uc2UgVGhlIGBIdHRwUmVzcG9uc2VNb2NrYCB0byBiZSBzdG9yZWQgYnkgdGhlIGZyYW1ld29yay5cclxuICAgICAqIEBwYXJhbSBkYXRhIFRoZSBkYXRhIG9mIHRoZSBIVFRQIHJlc3BvbnNlIHRvIGJlIHN0b3JlZCBieSB0aGUgZnJhbWV3b3JrLlxyXG4gICAgICogQHBhcmFtIG1ldGFkYXRhIFRoZSBtZXRhZGF0YSBvZiB0aGUgSFRUUCBtb2NrIHJlcXVlc3QgdG8gYmUgc3RvcmVkIGJ5IHRoZSBmcmFtZXdvcmsuXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm5zIEEgbmV3IGBEYXRhU3RvcmFnZWAgb2JqZWN0LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGJ1aWxkRGF0YVN0b3JhZ2UoaHR0cFJlc3BvbnNlOiBIdHRwUmVzcG9uc2VNb2NrLCBkYXRhOiBhbnksIG1ldGFkYXRhOiBIdHRwTW9ja1JlcXVlc3RNZXRhZGF0YSk6IERhdGFTdG9yYWdlIHtcclxuICAgICAgICAvLyBUT0RPOiBhZGQgc3VwcG9ydCBmb3IgZGlmZmVyZW50IGRhdGEgdHlwZXMgKHN0cmluZywgQmxvYiwgZXRjLilcclxuICAgICAgICBjb25zdCBzdHJpbmdpZmllZERhdGE6IHN0cmluZyA9IGRhdGEgPyBKU09OLnN0cmluZ2lmeShkYXRhKSA6IEVNUFRZX1NUUklORztcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBodHRwUmVzcG9uc2U6IGh0dHBSZXNwb25zZSxcclxuICAgICAgICAgICAgbG9hZGVkOiAwLFxyXG4gICAgICAgICAgICB0b3RhbDogZGF0YSA/IG5ldyBCbG9iKFtzdHJpbmdpZmllZERhdGFdKS5zaXplIDogMCxcclxuICAgICAgICAgICAgZGF0YTogZGF0YSxcclxuICAgICAgICAgICAgc3RyaW5naWZpZWREYXRhOiBzdHJpbmdpZmllZERhdGEsXHJcbiAgICAgICAgICAgIHJlcXVlc3RNZXRhZGF0YTogbWV0YWRhdGFcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -5,13 +5,14 @@
|
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
6
|
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
7
|
*/
|
|
8
|
+
import { HttpHeaders } from "@angular/common/http";
|
|
8
9
|
import { EMPTY_STRING } from "../../../../util";
|
|
9
10
|
import { httpHeadersMock } from "./http-headers-mock.builder";
|
|
10
11
|
/**
|
|
11
12
|
* @private
|
|
12
13
|
* Internal reference to a new line character.
|
|
13
14
|
*/
|
|
14
|
-
const
|
|
15
|
+
const CRLF = "\r\n";
|
|
15
16
|
/**
|
|
16
17
|
* @private
|
|
17
18
|
* A set of static utilities for manipulating `HttpHeaders` objects.
|
|
@@ -33,10 +34,24 @@ export class HttpHeadersUtil {
|
|
|
33
34
|
const keys = headers.keys();
|
|
34
35
|
const last = keys.length - 1;
|
|
35
36
|
keys.forEach((key, index) => {
|
|
36
|
-
result += `${key}: ${headers.getAll(key)}${index !== last ?
|
|
37
|
+
result += `${key}: ${headers.getAll(key)}${index !== last ? CRLF : EMPTY_STRING}`;
|
|
37
38
|
});
|
|
38
39
|
return result;
|
|
39
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* @private
|
|
43
|
+
* Returns a `HttpHeaders` object built from the string returns by the `XMLHttpRequest.getAllResponseHeaders()` method,
|
|
44
|
+
* or `null` wheher `XMLHttpRequest.getAllResponseHeaders()` return `null`.
|
|
45
|
+
*
|
|
46
|
+
* @param value The string to turn into a `HttpHeaders `object.
|
|
47
|
+
*
|
|
48
|
+
* @returns A `HttpHeaders` object, or `null`.
|
|
49
|
+
*/
|
|
50
|
+
static encode(value) {
|
|
51
|
+
if (value === null)
|
|
52
|
+
return null;
|
|
53
|
+
return new HttpHeaders(value);
|
|
54
|
+
}
|
|
40
55
|
/**
|
|
41
56
|
* @private
|
|
42
57
|
* Creates the default `HttpHeaders` object for a mocked HTTP request.
|
|
@@ -53,4 +68,4 @@ export class HttpHeadersUtil {
|
|
|
53
68
|
.headers();
|
|
54
69
|
}
|
|
55
70
|
}
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1oZWFkZXJzLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvbW9jay9odHRwL3V0aWwvaHR0cC1oZWFkZXJzLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFOUQ7OztHQUdHO0FBQ0gsTUFBTSxJQUFJLEdBQVcsTUFBTSxDQUFDO0FBRTVCOzs7R0FHRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBRXhCOzs7Ozs7OztPQVFHO0lBQ0ksTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFnQztRQUNwRCxJQUFJLE1BQU0sR0FBVyxZQUFZLENBQUM7UUFDbEMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPLE1BQU0sQ0FBQztRQUM1QixNQUFNLElBQUksR0FBYSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEMsTUFBTSxJQUFJLEdBQVcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQVcsRUFBRSxLQUFhLEVBQUMsRUFBRTtZQUN2QyxNQUFNLElBQUksR0FBRyxHQUFHLEtBQUssT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RGLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFvQjtRQUNyQyxJQUFJLEtBQUssS0FBSyxJQUFJO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDaEMsT0FBTyxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsMkJBQTJCO1FBQ3JDLDJEQUEyRDtRQUMzRCxPQUFPLGVBQWUsRUFBRSxDQUFDLFlBQVksRUFBRTthQUNkLGNBQWMsRUFBRTthQUNoQixjQUFjLEVBQUU7YUFDaEIsUUFBUSxFQUFFO2FBQ1YsU0FBUyxFQUFFO2FBQ1gsT0FBTyxFQUFFLENBQUM7SUFDdkMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgSHR0cEhlYWRlcnMgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3V0aWxcIjtcclxuaW1wb3J0IHsgaHR0cEhlYWRlcnNNb2NrIH0gZnJvbSBcIi4vaHR0cC1oZWFkZXJzLW1vY2suYnVpbGRlclwiO1xyXG5cclxuLyoqXHJcbiAqIEBwcml2YXRlXHJcbiAqIEludGVybmFsIHJlZmVyZW5jZSB0byBhIG5ldyBsaW5lIGNoYXJhY3Rlci5cclxuICovXHJcbmNvbnN0IENSTEY6IHN0cmluZyA9IFwiXFxyXFxuXCI7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICogQSBzZXQgb2Ygc3RhdGljIHV0aWxpdGllcyBmb3IgbWFuaXB1bGF0aW5nIGBIdHRwSGVhZGVyc2Agb2JqZWN0cy5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBIdHRwSGVhZGVyc1V0aWwge1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqIFJldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50YXRpb24gdGhlIHRoZSBzcGVjaWZpZWQgYEh0dHBIZWFkZXJzIGBvYmplY3QsIGNvbXBhdGlibGUgd2l0aCB0aGUgZm9ybWF0XHJcbiAgICAgKiBleHBlY3RlZCBieSB0aGUgYFhNTEh0dHBSZXF1ZXN0LmdldEFsbFJlc3BvbnNlSGVhZGVycygpYCBtZXRob2QuXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSBoZWFkZXJzIFRoZSBgSHR0cEhlYWRlcnNgIG9iamVjdCB0byBmb3JtYXQuXHJcbiAgICAgKiBcclxuICAgICAqIEByZXR1cm5zIEEgc3RyaW5nIGNvbXBhdGlibGUgd2l0aCB0aGUgZm9ybWF0IGV4cGVjdGVkIGJ5IHRoZSBgWE1MSHR0cFJlcXVlc3QuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKClgIG1ldGhvZC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBzdHJpbmdpZnkoaGVhZGVyczogSHR0cEhlYWRlcnMgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCByZXN1bHQ6IHN0cmluZyA9IEVNUFRZX1NUUklORztcclxuICAgICAgICBpZiAoIWhlYWRlcnMpIHJldHVybiByZXN1bHQ7XHJcbiAgICAgICAgY29uc3Qga2V5czogc3RyaW5nW10gPSBoZWFkZXJzLmtleXMoKTtcclxuICAgICAgICBjb25zdCBsYXN0OiBudW1iZXIgPSBrZXlzLmxlbmd0aCAtIDE7XHJcbiAgICAgICAga2V5cy5mb3JFYWNoKChrZXk6IHN0cmluZywgaW5kZXg6IG51bWJlcik9PiB7XHJcbiAgICAgICAgICAgIHJlc3VsdCArPSBgJHtrZXl9OiAke2hlYWRlcnMuZ2V0QWxsKGtleSl9JHtpbmRleCAhPT0gbGFzdCA/IENSTEYgOiBFTVBUWV9TVFJJTkd9YDtcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAvKipcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKiBSZXR1cm5zIGEgYEh0dHBIZWFkZXJzYCBvYmplY3QgYnVpbHQgZnJvbSB0aGUgc3RyaW5nIHJldHVybnMgYnkgdGhlIGBYTUxIdHRwUmVxdWVzdC5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKWAgbWV0aG9kLFxyXG4gICAgICogb3IgYG51bGxgIHdoZWhlciAgYFhNTEh0dHBSZXF1ZXN0LmdldEFsbFJlc3BvbnNlSGVhZGVycygpYCByZXR1cm4gYG51bGxgLlxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0gdmFsdWUgVGhlIHN0cmluZyB0byB0dXJuIGludG8gYSBgSHR0cEhlYWRlcnMgYG9iamVjdC5cclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMgQSBgSHR0cEhlYWRlcnNgIG9iamVjdCwgb3IgYG51bGxgLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGVuY29kZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCk6IEh0dHBIZWFkZXJzIHwgbnVsbCB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsKSByZXR1cm4gbnVsbDtcclxuICAgICAgICByZXR1cm4gbmV3IEh0dHBIZWFkZXJzKHZhbHVlKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLyoqXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICogQ3JlYXRlcyB0aGUgZGVmYXVsdCBgSHR0cEhlYWRlcnNgIG9iamVjdCBmb3IgYSBtb2NrZWQgSFRUUCByZXF1ZXN0LlxyXG4gICAgICogXHJcbiAgICAgKiBAcmV0dXJucyBUaGUgZGVmYXVsdCBgSHR0cEhlYWRlcnNgIG9iamVjdCBmb3IgYSBtb2NrZWQgSFRUUCByZXF1ZXN0LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZURlZmF1bHRSZXF1ZXN0SGVhZGVycygpOiBIdHRwSGVhZGVycyB7XHJcbiAgICAgICAgLy8gXCJBY2NlcHRcIiBoZWFkZXIgaXMgc2V0IGJ5IEFuZ3VsYXIgZnJhbWV3b3JrIHdoZW4gbWlzc2luZ1xyXG4gICAgICAgIHJldHVybiBodHRwSGVhZGVyc01vY2soKS5jYWNoZUNvbnRyb2woKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hY2NlcHRFbmNvZGluZygpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmFjY2VwdExhbmd1YWdlKClcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJpb3JpdHkoKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC51c2VyQWdlbnQoKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5oZWFkZXJzKCk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be found in
|
|
6
|
+
* the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* A convenient constant that represents the maximum value for a delayed HTTP response.
|
|
10
|
+
*/
|
|
11
|
+
export const HTTP_MOCK_MAX_DELAY = 10000;
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1tb2NrLW1heC1kZWxheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL2ZyYW1ld29yay9tb2NrL2h0dHAvdXRpbC9odHRwLW1vY2stbWF4LWRlbGF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQVcsS0FBSyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEEgY29udmVuaWVudCBjb25zdGFudCB0aGF0IHJlcHJlc2VudHMgdGhlIG1heGltdW0gdmFsdWUgZm9yIGEgZGVsYXllZCBIVFRQIHJlc3BvbnNlLlxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IEhUVFBfTU9DS19NQVhfREVMQVk6IG51bWJlciA9IDEwMDAwO1xyXG4iXX0=
|