angular-toolbox 0.0.7 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +14 -10
- package/{esm2020 → esm2022}/angular-toolbox.mjs +4 -4
- package/esm2022/lib/angular-toolbox.module.mjs +21 -0
- package/esm2022/lib/core/bridge/app-bridge.mjs +76 -0
- package/esm2022/lib/core/error/app-bridge-error.mjs +24 -0
- package/esm2022/lib/core/error/http-mock-service-error.mjs +26 -0
- package/esm2022/lib/core/error/index.mjs +5 -0
- package/esm2022/lib/core/error/integrity-error.mjs +26 -0
- package/esm2022/lib/core/error/subscription-error.mjs +26 -0
- package/esm2022/lib/core/impl/index.mjs +2 -0
- package/esm2022/lib/core/impl/lang/identifiable-component.mjs +31 -0
- package/esm2022/lib/core/impl/lang/index.mjs +2 -0
- package/esm2022/lib/core/impl/version/version.impl.mjs +34 -0
- package/esm2022/lib/core/index.mjs +3 -0
- package/esm2022/lib/directive/anchor-link.directive.mjs +62 -0
- package/esm2022/lib/directive/button-role.directive.mjs +102 -0
- package/esm2022/lib/directive/content-renderer.directive.mjs +61 -0
- package/esm2022/lib/directive/index.mjs +5 -0
- package/esm2022/lib/directive/navigate-to-url.directive.mjs +51 -0
- package/esm2022/lib/directive/navigation-directive-base.mjs +23 -0
- package/esm2022/lib/framework/index.mjs +2 -0
- package/esm2022/lib/framework/mock/http/config/http-mock-parameters.mjs +9 -0
- package/esm2022/lib/framework/mock/http/config/http-mock.decorator.mjs +48 -0
- package/esm2022/lib/framework/mock/http/config/index.mjs +3 -0
- package/esm2022/lib/framework/mock/http/config/route-mock-config.mjs +9 -0
- package/esm2022/lib/framework/mock/http/core/data-storage.mjs +9 -0
- package/esm2022/lib/framework/mock/http/event/event-target.impl.mjs +122 -0
- package/esm2022/lib/framework/mock/http/event/progress-event-mock.mjs +48 -0
- package/esm2022/lib/framework/mock/http/index.mjs +4 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/constants.mjs +111 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/escape-to-regexp-string.mjs +34 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/get-flags.mjs +28 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/iter.mjs +76 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/lexer.mjs +96 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/loose-replacer.mjs +28 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/decode-key-to-string.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/encode.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/key.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/lex-token.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/lexer-type.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/loose-replacer-provider.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/non-delimiter-encoder-provider.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/parse-options.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/path-to-regexp-options.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/route-string-tokenizer.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/simple-tokens.mjs +30 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/token-data-regexp-factory.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/token-type.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/model/token.mjs +17 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/string-to-token-data.mjs +87 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/to-key-regexp.mjs +41 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/to-stringify.mjs +29 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/token-data-to-regexp.mjs +49 -0
- package/esm2022/lib/framework/mock/http/path-to-regexp/token-data.mjs +33 -0
- package/esm2022/lib/framework/mock/http/util/data-storage.builder.mjs +35 -0
- package/esm2022/lib/framework/mock/http/util/http-headers-mock.builder.mjs +138 -0
- package/esm2022/lib/framework/mock/http/util/http-headers.util.mjs +56 -0
- package/esm2022/lib/framework/mock/http/util/http-method-ref.enum.mjs +60 -0
- package/esm2022/lib/framework/mock/http/util/http-mock-response.builder.mjs +117 -0
- package/esm2022/lib/framework/mock/http/util/index.mjs +3 -0
- package/esm2022/lib/framework/mock/http/xhr/delegate-xhr.mjs +316 -0
- package/esm2022/lib/framework/mock/http/xhr/http-mock-factory.impl.mjs +29 -0
- package/esm2022/lib/framework/mock/http/xhr/http-mock-factory.mjs +19 -0
- package/esm2022/lib/framework/mock/http/xhr/index.mjs +2 -0
- package/esm2022/lib/framework/mock/http/xhr/xhr-base.mjs +123 -0
- package/esm2022/lib/framework/mock/http/xhr/xhr-proxy-impl.mjs +177 -0
- package/esm2022/lib/model/business/index.mjs +5 -0
- package/esm2022/lib/model/business/lang/app-bridge-command.mjs +9 -0
- package/esm2022/lib/model/business/lang/destroyable.mjs +9 -0
- package/esm2022/lib/model/business/lang/identifiable.mjs +9 -0
- package/esm2022/lib/model/business/lang/index.mjs +5 -0
- package/esm2022/lib/model/business/lang/instantiable.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-method-mock.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-mock-config.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-mock-endpoint.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-mock-error.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-mock-interceptor.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/http-response-mock.mjs +9 -0
- package/esm2022/lib/model/business/mock/http/index.mjs +8 -0
- package/esm2022/lib/model/business/mock/http/xhr-proxy.mjs +9 -0
- package/esm2022/lib/model/business/ui/dark-mode-config.mjs +9 -0
- package/esm2022/lib/model/business/ui/dark-mode-config.provider.mjs +43 -0
- package/esm2022/lib/model/business/ui/dark-mode.constant.mjs +16 -0
- package/esm2022/lib/model/business/ui/index.mjs +5 -0
- package/esm2022/lib/model/business/ui/scroll-behavior.type.mjs +9 -0
- package/esm2022/lib/model/business/version/index.mjs +4 -0
- package/esm2022/lib/model/business/version/version-config.mjs +9 -0
- package/esm2022/lib/model/business/version/version-config.provider.mjs +40 -0
- package/esm2022/lib/model/business/version/version.mjs +10 -0
- package/esm2022/lib/model/index.mjs +3 -0
- package/esm2022/lib/model/service/index.mjs +5 -0
- package/esm2022/lib/model/service/mock/http/http-mock.service.mjs +239 -0
- package/esm2022/lib/model/service/subscription/subscription.service.mjs +122 -0
- package/esm2022/lib/model/service/ui/app-bridge.service.mjs +142 -0
- package/esm2022/lib/model/service/ui/dark-mode.service.mjs +183 -0
- package/esm2022/lib/model/service/ui/index.mjs +4 -0
- package/esm2022/lib/model/service/ui/scroll.service.mjs +93 -0
- package/esm2022/lib/model/service/version/version.service.mjs +51 -0
- package/{esm2020 → esm2022}/lib/pipe/index.mjs +1 -1
- package/esm2022/lib/pipe/safe/safe-html.pipe.mjs +34 -0
- package/esm2022/lib/util/aria-role.constant.mjs +16 -0
- package/esm2022/lib/util/default-scroll-behavior.mjs +13 -0
- package/esm2022/lib/util/empty-string.const.mjs +12 -0
- package/esm2022/lib/util/index.mjs +5 -0
- package/esm2022/lib/util/js-type.mjs +40 -0
- package/esm2022/lib/util/uuid.mjs +126 -0
- package/esm2022/public-api.mjs +18 -0
- package/fesm2022/angular-toolbox.mjs +3710 -0
- package/fesm2022/angular-toolbox.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/angular-toolbox.module.d.ts +9 -7
- package/lib/core/bridge/app-bridge.d.ts +59 -0
- package/lib/core/error/app-bridge-error.d.ts +16 -0
- package/lib/core/error/http-mock-service-error.d.ts +18 -0
- package/lib/core/error/index.d.ts +4 -0
- package/lib/core/error/integrity-error.d.ts +18 -0
- package/lib/core/error/subscription-error.d.ts +18 -0
- package/lib/core/impl/index.d.ts +1 -0
- package/lib/core/impl/lang/identifiable-component.d.ts +26 -0
- package/lib/core/impl/lang/index.d.ts +1 -0
- package/lib/core/impl/version/version.impl.d.ts +42 -0
- package/lib/core/index.d.ts +2 -0
- package/lib/directive/anchor-link.directive.d.ts +29 -0
- package/lib/directive/button-role.directive.d.ts +52 -0
- package/lib/directive/content-renderer.directive.d.ts +39 -0
- package/lib/directive/index.d.ts +4 -0
- package/lib/directive/navigate-to-url.directive.d.ts +23 -0
- package/lib/directive/navigation-directive-base.d.ts +19 -0
- package/lib/framework/index.d.ts +1 -0
- package/lib/framework/mock/http/config/http-mock-parameters.d.ts +13 -0
- package/lib/framework/mock/http/config/http-mock.decorator.d.ts +13 -0
- package/lib/framework/mock/http/config/index.d.ts +2 -0
- package/lib/framework/mock/http/config/route-mock-config.d.ts +30 -0
- package/lib/framework/mock/http/core/data-storage.d.ts +38 -0
- package/lib/framework/mock/http/event/event-target.impl.d.ts +70 -0
- package/lib/framework/mock/http/event/progress-event-mock.d.ts +36 -0
- package/lib/framework/mock/http/index.d.ts +3 -0
- package/lib/framework/mock/http/path-to-regexp/constants.d.ts +111 -0
- package/lib/framework/mock/http/path-to-regexp/escape-to-regexp-string.d.ts +24 -0
- package/lib/framework/mock/http/path-to-regexp/get-flags.d.ts +25 -0
- package/lib/framework/mock/http/path-to-regexp/iter.d.ts +50 -0
- package/lib/framework/mock/http/path-to-regexp/lexer.d.ts +24 -0
- package/lib/framework/mock/http/path-to-regexp/loose-replacer.d.ts +25 -0
- package/lib/framework/mock/http/path-to-regexp/model/decode-key-to-string.d.ts +21 -0
- package/lib/framework/mock/http/path-to-regexp/model/encode.d.ts +20 -0
- package/lib/framework/mock/http/path-to-regexp/model/key.d.ts +45 -0
- package/lib/framework/mock/http/path-to-regexp/model/lex-token.d.ts +34 -0
- package/lib/framework/mock/http/path-to-regexp/model/lexer-type.d.ts +21 -0
- package/lib/framework/mock/http/path-to-regexp/model/loose-replacer-provider.d.ts +20 -0
- package/lib/framework/mock/http/path-to-regexp/model/non-delimiter-encoder-provider.d.ts +21 -0
- package/lib/framework/mock/http/path-to-regexp/model/parse-options.d.ts +33 -0
- package/lib/framework/mock/http/path-to-regexp/model/path-to-regexp-options.d.ts +52 -0
- package/lib/framework/mock/http/path-to-regexp/model/route-string-tokenizer.d.ts +22 -0
- package/lib/framework/mock/http/path-to-regexp/model/simple-tokens.d.ts +21 -0
- package/lib/framework/mock/http/path-to-regexp/model/token-data-regexp-factory.d.ts +23 -0
- package/lib/framework/mock/http/path-to-regexp/model/token-type.d.ts +20 -0
- package/lib/framework/mock/http/path-to-regexp/model/token.d.ts +21 -0
- package/lib/framework/mock/http/path-to-regexp/string-to-token-data.d.ts +21 -0
- package/lib/framework/mock/http/path-to-regexp/to-key-regexp.d.ts +22 -0
- package/lib/framework/mock/http/path-to-regexp/to-stringify.d.ts +21 -0
- package/lib/framework/mock/http/path-to-regexp/token-data-to-regexp.d.ts +21 -0
- package/lib/framework/mock/http/path-to-regexp/token-data.d.ts +32 -0
- package/lib/framework/mock/http/util/data-storage.builder.d.ts +25 -0
- package/lib/framework/mock/http/util/http-headers-mock.builder.d.ts +106 -0
- package/lib/framework/mock/http/util/http-headers.util.d.ts +31 -0
- package/lib/framework/mock/http/util/http-method-ref.enum.d.ts +58 -0
- package/lib/framework/mock/http/util/http-mock-response.builder.d.ts +83 -0
- package/lib/framework/mock/http/util/index.d.ts +2 -0
- package/lib/framework/mock/http/xhr/delegate-xhr.d.ts +199 -0
- package/lib/framework/mock/http/xhr/http-mock-factory.d.ts +14 -0
- package/lib/framework/mock/http/xhr/http-mock-factory.impl.d.ts +24 -0
- package/lib/framework/mock/http/xhr/index.d.ts +1 -0
- package/lib/framework/mock/http/xhr/xhr-base.d.ts +123 -0
- package/lib/framework/mock/http/xhr/xhr-proxy-impl.d.ts +125 -0
- package/lib/model/business/index.d.ts +4 -0
- package/lib/model/business/lang/app-bridge-command.d.ts +11 -0
- package/lib/model/business/lang/destroyable.d.ts +16 -0
- package/lib/model/business/lang/identifiable.d.ts +19 -0
- package/lib/model/business/lang/index.d.ts +4 -0
- package/lib/model/business/lang/instantiable.d.ts +15 -0
- package/lib/model/business/mock/http/http-method-mock.d.ts +35 -0
- package/lib/model/business/mock/http/http-mock-config.d.ts +28 -0
- package/lib/model/business/mock/http/http-mock-endpoint.d.ts +41 -0
- package/lib/model/business/mock/http/http-mock-error.d.ts +21 -0
- package/lib/model/business/mock/http/http-mock-interceptor.d.ts +27 -0
- package/lib/model/business/mock/http/http-response-mock.d.ts +44 -0
- package/lib/model/business/mock/http/index.d.ts +7 -0
- package/lib/model/business/mock/http/xhr-proxy.d.ts +15 -0
- package/lib/model/business/ui/dark-mode-config.d.ts +29 -0
- package/lib/model/business/ui/dark-mode-config.provider.d.ts +21 -0
- package/lib/model/business/ui/dark-mode.constant.d.ts +15 -0
- package/lib/model/business/ui/index.d.ts +4 -0
- package/lib/model/business/ui/scroll-behavior.type.d.ts +11 -0
- package/lib/model/business/version/index.d.ts +3 -0
- package/lib/model/business/version/version-config.d.ts +28 -0
- package/lib/model/business/version/version-config.provider.d.ts +22 -0
- package/lib/model/business/version/version.d.ts +34 -0
- package/lib/model/index.d.ts +2 -0
- package/lib/model/service/index.d.ts +4 -0
- package/lib/model/service/mock/http/http-mock.service.d.ts +101 -0
- package/lib/model/service/subscription/subscription.service.d.ts +66 -0
- package/lib/model/service/ui/app-bridge.service.d.ts +80 -0
- package/lib/model/service/ui/dark-mode.service.d.ts +99 -0
- package/lib/model/service/ui/index.d.ts +3 -0
- package/lib/model/service/ui/scroll.service.d.ts +55 -0
- package/lib/model/service/version/version.service.d.ts +30 -0
- package/lib/pipe/index.d.ts +1 -1
- package/lib/pipe/safe/safe-html.pipe.d.ts +30 -10
- package/lib/util/aria-role.constant.d.ts +15 -0
- package/lib/util/default-scroll-behavior.d.ts +12 -0
- package/lib/util/empty-string.const.d.ts +11 -0
- package/lib/util/index.d.ts +4 -0
- package/lib/util/js-type.d.ts +39 -0
- package/lib/util/uuid.d.ts +89 -0
- package/package.json +10 -13
- package/public-api.d.ts +14 -3
- package/esm2020/lib/angular-toolbox.module.mjs +0 -26
- package/esm2020/lib/pipe/safe/safe-html.pipe.mjs +0 -18
- package/esm2020/lib/service/index.mjs +0 -3
- package/esm2020/lib/service/subscription/subscription.service.mjs +0 -60
- package/esm2020/lib/service/ui/dark-mode.service.mjs +0 -167
- package/esm2020/public-api.mjs +0 -7
- package/fesm2015/angular-toolbox.mjs +0 -278
- package/fesm2015/angular-toolbox.mjs.map +0 -1
- package/fesm2020/angular-toolbox.mjs +0 -274
- package/fesm2020/angular-toolbox.mjs.map +0 -1
- package/lib/service/index.d.ts +0 -2
- package/lib/service/subscription/subscription.service.d.ts +0 -33
- package/lib/service/ui/dark-mode.service.d.ts +0 -92
|
@@ -0,0 +1,89 @@
|
|
|
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 { Destroyable } from "../model";
|
|
9
|
+
/**
|
|
10
|
+
* A class that represents an immutable universally unique identifier (UUID).
|
|
11
|
+
* This class is not available in workers.
|
|
12
|
+
*/
|
|
13
|
+
export declare class Uuid implements Destroyable {
|
|
14
|
+
/**
|
|
15
|
+
* @private
|
|
16
|
+
* Stores a reference to the UUID associated with this `Uuid` instance.
|
|
17
|
+
*/
|
|
18
|
+
private readonly _uuid;
|
|
19
|
+
/**
|
|
20
|
+
* @private
|
|
21
|
+
* Stores a boolean value used to lock constructor access.
|
|
22
|
+
*/
|
|
23
|
+
private static _lockConstructor;
|
|
24
|
+
/**
|
|
25
|
+
* @private
|
|
26
|
+
* Stores a reference to all UUIDs already created.
|
|
27
|
+
*/
|
|
28
|
+
private static _hash;
|
|
29
|
+
/**
|
|
30
|
+
* @private
|
|
31
|
+
* Created a new `Uuid` instance.
|
|
32
|
+
*
|
|
33
|
+
* @param uuid A string used that represents the UUID associated with this `Uuid` instance.
|
|
34
|
+
* If `null` creates a random UUID value.
|
|
35
|
+
* @param tracked If `true`, stores the UUID reference in the system.
|
|
36
|
+
*/
|
|
37
|
+
private constructor();
|
|
38
|
+
/**
|
|
39
|
+
* Returns a string that represents the UUID value associated with this `Uuid` instance.
|
|
40
|
+
*
|
|
41
|
+
* @returns The UUID string value associated with this `Uuid` instance.
|
|
42
|
+
*/
|
|
43
|
+
toString(): string;
|
|
44
|
+
/**
|
|
45
|
+
* Compares the given `Uuid` instance with this `Uuid`.
|
|
46
|
+
*
|
|
47
|
+
* @param uuid The `Uuid` instance to compare with this `Uuid`.
|
|
48
|
+
*
|
|
49
|
+
* @returns `true` whether both `Uuid` instances are equal; `false` otherwise.
|
|
50
|
+
*/
|
|
51
|
+
equals(uuid: Uuid): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Creates and returns a new `Uuid` instance.
|
|
54
|
+
*
|
|
55
|
+
* @param track If `true`, stores the UUID reference in the system.
|
|
56
|
+
*
|
|
57
|
+
* @returns A new `Uuid` instance.
|
|
58
|
+
*/
|
|
59
|
+
static build(track?: boolean): Uuid;
|
|
60
|
+
/**
|
|
61
|
+
* Creates and returns a new `Uuid` instance built from the specified `uuid` parameter.
|
|
62
|
+
*
|
|
63
|
+
* @param uuid The UUID string value used to create the new `Uuid` instance.
|
|
64
|
+
* @param track If `true`, performs a validation process to ensure that the UUID string does not exists in the system.
|
|
65
|
+
*
|
|
66
|
+
* @returns A new `Uuid` instance built from the specified `uuid` parameter.
|
|
67
|
+
*/
|
|
68
|
+
static fromString(uuid: string, track?: boolean): Uuid;
|
|
69
|
+
/**
|
|
70
|
+
* Performs validation on the specified `uuid` string parameter.
|
|
71
|
+
*
|
|
72
|
+
* @param uuid A UUID representation string to validate.
|
|
73
|
+
* @returns `true` whether the `uuid` string parameter is valid; `false` otherwise.
|
|
74
|
+
*/
|
|
75
|
+
static validate(uuid: string): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Performs a test to ensure that the UUID string is not tracked the system.
|
|
78
|
+
*
|
|
79
|
+
* @param uuid A UUID representation string to test.
|
|
80
|
+
* @returns `true` whether the `uuid` string parameter is tracked; `false` otherwise.
|
|
81
|
+
*/
|
|
82
|
+
static isTracked(uuid: string): boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Releases the `Uuid` instance from the tracking system and makes it elligible for garbage collection.
|
|
85
|
+
*
|
|
86
|
+
* @returns `true` whether the `Uuid` instance was found and removed; `false` otherwise.
|
|
87
|
+
*/
|
|
88
|
+
destroy(): boolean;
|
|
89
|
+
}
|
package/package.json
CHANGED
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "angular-toolbox",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.9.0",
|
|
4
|
+
"license": "SEE LICENSE IN LICENSE",
|
|
4
5
|
"peerDependencies": {
|
|
5
|
-
"@angular/common": "^
|
|
6
|
-
"@angular/core": "^
|
|
6
|
+
"@angular/common": "^18.0.0",
|
|
7
|
+
"@angular/core": "^18.0.0",
|
|
8
|
+
"@angular/platform-browser": "^18.0.0",
|
|
9
|
+
"@angular/router": "^18.0.0"
|
|
7
10
|
},
|
|
8
11
|
"dependencies": {
|
|
9
12
|
"tslib": "^2.3.0"
|
|
10
13
|
},
|
|
11
14
|
"sideEffects": false,
|
|
12
|
-
"module": "
|
|
13
|
-
"es2020": "fesm2020/angular-toolbox.mjs",
|
|
14
|
-
"esm2020": "esm2020/angular-toolbox.mjs",
|
|
15
|
-
"fesm2020": "fesm2020/angular-toolbox.mjs",
|
|
16
|
-
"fesm2015": "fesm2015/angular-toolbox.mjs",
|
|
15
|
+
"module": "fesm2022/angular-toolbox.mjs",
|
|
17
16
|
"typings": "index.d.ts",
|
|
18
17
|
"exports": {
|
|
19
18
|
"./package.json": {
|
|
@@ -21,11 +20,9 @@
|
|
|
21
20
|
},
|
|
22
21
|
".": {
|
|
23
22
|
"types": "./index.d.ts",
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"node": "./fesm2015/angular-toolbox.mjs",
|
|
28
|
-
"default": "./fesm2020/angular-toolbox.mjs"
|
|
23
|
+
"esm2022": "./esm2022/angular-toolbox.mjs",
|
|
24
|
+
"esm": "./esm2022/angular-toolbox.mjs",
|
|
25
|
+
"default": "./fesm2022/angular-toolbox.mjs"
|
|
29
26
|
}
|
|
30
27
|
}
|
|
31
28
|
}
|
package/public-api.d.ts
CHANGED
|
@@ -1,3 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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 * from './lib/angular-toolbox.module';
|
|
9
|
+
export * from './lib/core';
|
|
10
|
+
export * from './lib/directive';
|
|
11
|
+
export * from './lib/framework';
|
|
12
|
+
export * from './lib/model';
|
|
13
|
+
export * from './lib/pipe';
|
|
14
|
+
export * from './lib/util';
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { SafeHtmlPipe } from './pipe/safe/safe-html.pipe';
|
|
3
|
-
import { DARK_MODE_CONFIG } from './service/ui/dark-mode.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class AngularToolboxModule {
|
|
6
|
-
}
|
|
7
|
-
AngularToolboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AngularToolboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
-
AngularToolboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: AngularToolboxModule, declarations: [SafeHtmlPipe], exports: [SafeHtmlPipe] });
|
|
9
|
-
AngularToolboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AngularToolboxModule, providers: [
|
|
10
|
-
{ provide: DARK_MODE_CONFIG, useValue: DARK_MODE_CONFIG }
|
|
11
|
-
] });
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AngularToolboxModule, decorators: [{
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
declarations: [
|
|
16
|
-
SafeHtmlPipe
|
|
17
|
-
],
|
|
18
|
-
providers: [
|
|
19
|
-
{ provide: DARK_MODE_CONFIG, useValue: DARK_MODE_CONFIG }
|
|
20
|
-
],
|
|
21
|
-
exports: [
|
|
22
|
-
SafeHtmlPipe
|
|
23
|
-
]
|
|
24
|
-
}]
|
|
25
|
-
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10b29sYm94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL2FuZ3VsYXItdG9vbGJveC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7O0FBYWxFLE1BQU0sT0FBTyxvQkFBb0I7O2lIQUFwQixvQkFBb0I7a0hBQXBCLG9CQUFvQixpQkFUekIsWUFBWSxhQU1aLFlBQVk7a0hBR1Asb0JBQW9CLGFBUGxCO1FBQ1AsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFO0tBQzFEOzJGQUtNLG9CQUFvQjtrQkFYaEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YsWUFBWTtxQkFDZjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1AsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFO3FCQUMxRDtvQkFDSCxPQUFPLEVBQUU7d0JBQ0wsWUFBWTtxQkFDZjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhZmVIdG1sUGlwZSB9IGZyb20gJy4vcGlwZS9zYWZlL3NhZmUtaHRtbC5waXBlJztcclxuaW1wb3J0IHsgREFSS19NT0RFX0NPTkZJRyB9IGZyb20gJy4vc2VydmljZS91aS9kYXJrLW1vZGUuc2VydmljZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgU2FmZUh0bWxQaXBlXHJcbiAgICBdLFxyXG4gICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgeyBwcm92aWRlOiBEQVJLX01PREVfQ09ORklHLCB1c2VWYWx1ZTogREFSS19NT0RFX0NPTkZJRyB9XHJcbiAgICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgU2FmZUh0bWxQaXBlXHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbmd1bGFyVG9vbGJveE1vZHVsZSB7IH0iXX0=
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/platform-browser";
|
|
4
|
-
export class SafeHtmlPipe {
|
|
5
|
-
constructor(_sanitizer) {
|
|
6
|
-
this._sanitizer = _sanitizer;
|
|
7
|
-
}
|
|
8
|
-
transform(value) {
|
|
9
|
-
return this._sanitizer.bypassSecurityTrustHtml(value);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
SafeHtmlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SafeHtmlPipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
13
|
-
SafeHtmlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SafeHtmlPipe, name: "safeHtml" });
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SafeHtmlPipe, decorators: [{
|
|
15
|
-
type: Pipe,
|
|
16
|
-
args: [{ name: 'safeHtml' }]
|
|
17
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS1odG1sLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9waXBlL3NhZmUvc2FmZS1odG1sLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFpQixJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUdwRCxNQUFNLE9BQU8sWUFBWTtJQUV2QixZQUFvQixVQUF3QjtRQUF4QixlQUFVLEdBQVYsVUFBVSxDQUFjO0lBQUcsQ0FBQztJQUV6QyxTQUFTLENBQUMsS0FBYTtRQUM1QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQzs7eUdBTlUsWUFBWTt1R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBRHhCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInXHJcbmltcG9ydCB7IFBpcGVUcmFuc2Zvcm0sIFBpcGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuQFBpcGUoeyBuYW1lOiAnc2FmZUh0bWwnfSlcclxuZXhwb3J0IGNsYXNzIFNhZmVIdG1sUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0gIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHt9XHJcblxyXG4gIHB1YmxpYyB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZyk6IFNhZmVIdG1sIHtcclxuICAgIHJldHVybiB0aGlzLl9zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodmFsdWUpO1xyXG4gIH1cclxufSJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './subscription/subscription.service';
|
|
2
|
-
export * from './ui/dark-mode.service';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9zZXJ2aWNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi91aS9kYXJrLW1vZGUuc2VydmljZSc7Il19
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* A lightweight service that helps to manage unregistration issues of Angular subscriptions.
|
|
5
|
-
*/
|
|
6
|
-
export class SubscriptionService {
|
|
7
|
-
constructor() {
|
|
8
|
-
/**
|
|
9
|
-
* The internal Subscription instances storage.
|
|
10
|
-
*/
|
|
11
|
-
this._subMap = new Map();
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Stores a new Subscription instance associated with the specified reference.
|
|
15
|
-
*
|
|
16
|
-
* @param ref the reference for which to store a new Subscription instance.
|
|
17
|
-
* @param subscription the Subscription instance to register.
|
|
18
|
-
* @returns a reference to this SubscriptionService instance.
|
|
19
|
-
*/
|
|
20
|
-
register(ref, subscription) {
|
|
21
|
-
if (!this._subMap.has(ref))
|
|
22
|
-
this._subMap.set(ref, []);
|
|
23
|
-
this._subMap.get(ref)?.push(subscription);
|
|
24
|
-
return this;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Unsubscribes and removes all Subscription instances associated with the specified reference.
|
|
28
|
-
*
|
|
29
|
-
* @param ref the reference for which to remove all Subscription instances.
|
|
30
|
-
* @returns true whether the specified reference exists; false otherwise.
|
|
31
|
-
*/
|
|
32
|
-
clearAll(ref) {
|
|
33
|
-
let result = false;
|
|
34
|
-
if (this._subMap.has(ref)) {
|
|
35
|
-
this._subMap.get(ref)?.forEach(subscription => subscription.unsubscribe());
|
|
36
|
-
this._subMap.delete(ref);
|
|
37
|
-
result = true;
|
|
38
|
-
}
|
|
39
|
-
return result;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Returns all Subscription instances associated with the specified reference.
|
|
43
|
-
*
|
|
44
|
-
* @param ref the reference for which to remove get Subscription instances.
|
|
45
|
-
* @returns all Subscription instances associated with the specified reference, or whether
|
|
46
|
-
* the specified reference does not exists.
|
|
47
|
-
*/
|
|
48
|
-
get(ref) {
|
|
49
|
-
return this._subMap.get(ref) || null;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
SubscriptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SubscriptionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
53
|
-
SubscriptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SubscriptionService, providedIn: 'root' });
|
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SubscriptionService, decorators: [{
|
|
55
|
-
type: Injectable,
|
|
56
|
-
args: [{
|
|
57
|
-
providedIn: 'root'
|
|
58
|
-
}]
|
|
59
|
-
}] });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9zZXJ2aWNlL3N1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQzs7R0FFRztBQUNILE1BQU0sT0FBTyxtQkFBbUI7SUFOaEM7UUFRSTs7V0FFRztRQUNLLFlBQU8sR0FBcUMsSUFBSSxHQUFHLEVBQStCLENBQUM7S0F5QzlGO0lBdkNHOzs7Ozs7T0FNRztJQUNJLFFBQVEsQ0FBQyxHQUFXLEVBQUUsWUFBMEI7UUFDbkQsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQztZQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksUUFBUSxDQUFDLEdBQVc7UUFDdkIsSUFBSSxNQUFNLEdBQVksS0FBSyxDQUFDO1FBQzVCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDM0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsTUFBTSxHQUFHLElBQUksQ0FBQztTQUNqQjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxHQUFHLENBQUMsR0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUN6QyxDQUFDOztnSEE3Q1EsbUJBQW1CO29IQUFuQixtQkFBbUIsY0FMaEIsTUFBTTsyRkFLVCxtQkFBbUI7a0JBTi9CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG4vKipcbiAqIEEgbGlnaHR3ZWlnaHQgc2VydmljZSB0aGF0IGhlbHBzIHRvIG1hbmFnZSB1bnJlZ2lzdHJhdGlvbiBpc3N1ZXMgb2YgQW5ndWxhciBzdWJzY3JpcHRpb25zLlxuICovXG5leHBvcnQgY2xhc3MgU3Vic2NyaXB0aW9uU2VydmljZSB7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaW50ZXJuYWwgU3Vic2NyaXB0aW9uIGluc3RhbmNlcyBzdG9yYWdlLlxuICAgICAqL1xuICAgIHByaXZhdGUgX3N1Yk1hcDogTWFwPFN0cmluZywgQXJyYXk8U3Vic2NyaXB0aW9uPj4gPSBuZXcgTWFwPFN0cmluZywgQXJyYXk8U3Vic2NyaXB0aW9uPj4oKTtcblxuICAgIC8qKlxuICAgICAqIFN0b3JlcyBhIG5ldyBTdWJzY3JpcHRpb24gaW5zdGFuY2UgYXNzb2NpYXRlZCB3aXRoIHRoZSBzcGVjaWZpZWQgcmVmZXJlbmNlLlxuICAgICAqIFxuICAgICAqIEBwYXJhbSByZWYgdGhlIHJlZmVyZW5jZSBmb3Igd2hpY2ggdG8gc3RvcmUgYSBuZXcgU3Vic2NyaXB0aW9uIGluc3RhbmNlLlxuICAgICAqIEBwYXJhbSBzdWJzY3JpcHRpb24gdGhlIFN1YnNjcmlwdGlvbiBpbnN0YW5jZSB0byByZWdpc3Rlci5cbiAgICAgKiBAcmV0dXJucyBhIHJlZmVyZW5jZSB0byB0aGlzIFN1YnNjcmlwdGlvblNlcnZpY2UgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcHVibGljIHJlZ2lzdGVyKHJlZjogU3RyaW5nLCBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbik6IFN1YnNjcmlwdGlvblNlcnZpY2Uge1xuICAgICAgICBpZiAoIXRoaXMuX3N1Yk1hcC5oYXMocmVmKSkgdGhpcy5fc3ViTWFwLnNldChyZWYsIFtdKTtcbiAgICAgICAgdGhpcy5fc3ViTWFwLmdldChyZWYpPy5wdXNoKHN1YnNjcmlwdGlvbik7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cbiBcbiAgICAvKipcbiAgICAgKiBVbnN1YnNjcmliZXMgYW5kIHJlbW92ZXMgYWxsIFN1YnNjcmlwdGlvbiBpbnN0YW5jZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBzcGVjaWZpZWQgcmVmZXJlbmNlLlxuICAgICAqIFxuICAgICAqIEBwYXJhbSByZWYgdGhlIHJlZmVyZW5jZSBmb3Igd2hpY2ggdG8gcmVtb3ZlIGFsbCBTdWJzY3JpcHRpb24gaW5zdGFuY2VzLlxuICAgICAqIEByZXR1cm5zIHRydWUgd2hldGhlciB0aGUgc3BlY2lmaWVkIHJlZmVyZW5jZSBleGlzdHM7IGZhbHNlIG90aGVyd2lzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgY2xlYXJBbGwocmVmOiBTdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgbGV0IHJlc3VsdDogYm9vbGVhbiA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5fc3ViTWFwLmhhcyhyZWYpKSB7XG4gICAgICAgICAgICB0aGlzLl9zdWJNYXAuZ2V0KHJlZik/LmZvckVhY2goc3Vic2NyaXB0aW9uID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcbiAgICAgICAgICAgIHRoaXMuX3N1Yk1hcC5kZWxldGUocmVmKTtcbiAgICAgICAgICAgIHJlc3VsdCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFsbCBTdWJzY3JpcHRpb24gaW5zdGFuY2VzIGFzc29jaWF0ZWQgd2l0aCB0aGUgc3BlY2lmaWVkIHJlZmVyZW5jZS5cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0gcmVmIHRoZSByZWZlcmVuY2UgZm9yIHdoaWNoIHRvIHJlbW92ZSBnZXQgU3Vic2NyaXB0aW9uIGluc3RhbmNlcy5cbiAgICAgKiBAcmV0dXJucyBhbGwgU3Vic2NyaXB0aW9uIGluc3RhbmNlcyBhc3NvY2lhdGVkIHdpdGggdGhlIHNwZWNpZmllZCByZWZlcmVuY2UsIG9yIHdoZXRoZXJcbiAgICAgKiAgICAgICAgICB0aGUgc3BlY2lmaWVkIHJlZmVyZW5jZSBkb2VzIG5vdCBleGlzdHMuXG4gICAgICovXG4gICAgcHVibGljIGdldChyZWY6IFN0cmluZyk6IEFycmF5PFN1YnNjcmlwdGlvbj4gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N1Yk1hcC5nZXQocmVmKSB8fCBudWxsO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable, EventEmitter } from '@angular/core';
|
|
2
|
-
import { DOCUMENT } from '@angular/common';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
// --> Internal constants
|
|
5
|
-
const STORAGE_KEY = "dark-mode-key";
|
|
6
|
-
const CSS_PROP = "dark-mode";
|
|
7
|
-
const ADD_ACTION = "add";
|
|
8
|
-
const REMOVE_ACTION = "remove";
|
|
9
|
-
/**
|
|
10
|
-
* The default provider for the DarkModeService configuration. You typically define
|
|
11
|
-
* the custom properties in the main NgModule declaration to initialize the app dark mode:
|
|
12
|
-
*
|
|
13
|
-
* @NgModule({
|
|
14
|
-
* ...
|
|
15
|
-
* providers: [
|
|
16
|
-
* { provide: DARK_MODE_CONFIG, useValue: { enableDarkMode: true} }
|
|
17
|
-
* ],
|
|
18
|
-
* ...
|
|
19
|
-
* s);
|
|
20
|
-
*/
|
|
21
|
-
export const DARK_MODE_CONFIG = {
|
|
22
|
-
/**
|
|
23
|
-
* Indicates whether the dark mode uses browser settings (true), or not (false).
|
|
24
|
-
* Default value is false.
|
|
25
|
-
*/
|
|
26
|
-
darkModeEnabled: false,
|
|
27
|
-
/**
|
|
28
|
-
* Indicates whether the dark mode uses browser settings (true), or not (false).
|
|
29
|
-
* Default value is false.
|
|
30
|
-
*/
|
|
31
|
-
detectBrowserSettings: false,
|
|
32
|
-
/**
|
|
33
|
-
* CSS property name used to set the dark mode look and feel.
|
|
34
|
-
* Default value is 'dark-mode'.
|
|
35
|
-
*/
|
|
36
|
-
cssProperty: CSS_PROP,
|
|
37
|
-
/**
|
|
38
|
-
* Reference to the key value used to persist the dark mode state to local storage.
|
|
39
|
-
* Default value is 'dark-mode-key'.
|
|
40
|
-
*/
|
|
41
|
-
storageKey: STORAGE_KEY
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* A lightweight service that provides Dark Mode implementation for your Angular application.
|
|
45
|
-
*/
|
|
46
|
-
export class DarkModeService {
|
|
47
|
-
/**
|
|
48
|
-
* Creates a new DarkModeService instance.
|
|
49
|
-
* @param _document the reference to the Document singleton.
|
|
50
|
-
* @param config the reference to the DarkModeConfig provider.
|
|
51
|
-
*/
|
|
52
|
-
constructor(_document, config) {
|
|
53
|
-
this._document = _document;
|
|
54
|
-
// --> Private properties
|
|
55
|
-
this._darkModeEnabled = false;
|
|
56
|
-
this._cssProperty = CSS_PROP;
|
|
57
|
-
this._storageKey = STORAGE_KEY;
|
|
58
|
-
/**
|
|
59
|
-
* The callback function that is triggered when the dark mode changes.
|
|
60
|
-
* @typeParam EventEmitter<boolean> the value returned by the darkModeEnabled() property.
|
|
61
|
-
*/
|
|
62
|
-
this.change = new EventEmitter(true);
|
|
63
|
-
this.initDarkMode(config);
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Toogles the dark mode state.
|
|
67
|
-
*/
|
|
68
|
-
toggleDarkMode() {
|
|
69
|
-
this._darkModeEnabled ? this.disableDarkMode() : this.enableDarkMode();
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Sets the dark mode state to active.
|
|
73
|
-
*/
|
|
74
|
-
enableDarkMode() {
|
|
75
|
-
this.setDarkMode(ADD_ACTION);
|
|
76
|
-
this.setStoredDarkMode();
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Sets the dark mode state to inactive.
|
|
80
|
-
*/
|
|
81
|
-
disableDarkMode() {
|
|
82
|
-
this.setDarkMode(REMOVE_ACTION);
|
|
83
|
-
this.setStoredDarkMode();
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Returns a boolean value that indicates the dark mode state is active (true), or not (false).
|
|
87
|
-
* @returns true whether the dark mode state is active; false otherwise.
|
|
88
|
-
*/
|
|
89
|
-
darkModeEnabled() {
|
|
90
|
-
return this._darkModeEnabled;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Returns the value of the CSS property as defined by the config provider.
|
|
94
|
-
* @returns the value of the CSS property.
|
|
95
|
-
*/
|
|
96
|
-
getCssProperty() {
|
|
97
|
-
return this._cssProperty;
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Returns the value of the storage key as defined by the config provider.
|
|
101
|
-
* @returns the value of the storage key.
|
|
102
|
-
*/
|
|
103
|
-
getStorageKey() {
|
|
104
|
-
return this._storageKey;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Removes the dark mode information from local storage.
|
|
108
|
-
*/
|
|
109
|
-
invalidateStorage() {
|
|
110
|
-
localStorage.removeItem(this._storageKey);
|
|
111
|
-
}
|
|
112
|
-
// --> Private methods
|
|
113
|
-
initDarkMode(config) {
|
|
114
|
-
this._darkModeEnabled = config.darkModeEnabled || false;
|
|
115
|
-
this._cssProperty = config.cssProperty || CSS_PROP;
|
|
116
|
-
this._storageKey = config.storageKey || STORAGE_KEY;
|
|
117
|
-
if (this._darkModeEnabled) {
|
|
118
|
-
this.enableDarkMode();
|
|
119
|
-
}
|
|
120
|
-
else {
|
|
121
|
-
this.initStoredDarkMode();
|
|
122
|
-
}
|
|
123
|
-
if (config.detectBrowserSettings)
|
|
124
|
-
this.initBrowserMode();
|
|
125
|
-
}
|
|
126
|
-
initStoredDarkMode() {
|
|
127
|
-
const result = localStorage.getItem(this._storageKey);
|
|
128
|
-
if (result === "true")
|
|
129
|
-
this.enableDarkMode();
|
|
130
|
-
}
|
|
131
|
-
setStoredDarkMode() {
|
|
132
|
-
const data = String(this._darkModeEnabled);
|
|
133
|
-
localStorage.setItem(this._storageKey, data);
|
|
134
|
-
}
|
|
135
|
-
setDarkMode(action) {
|
|
136
|
-
const classList = this._document.body.classList;
|
|
137
|
-
if (action === ADD_ACTION) {
|
|
138
|
-
classList.add(this._cssProperty);
|
|
139
|
-
this._darkModeEnabled = true;
|
|
140
|
-
}
|
|
141
|
-
else if (action === REMOVE_ACTION) {
|
|
142
|
-
classList.remove(this._cssProperty);
|
|
143
|
-
this._darkModeEnabled = false;
|
|
144
|
-
}
|
|
145
|
-
this.change.emit(this._darkModeEnabled);
|
|
146
|
-
}
|
|
147
|
-
initBrowserMode() {
|
|
148
|
-
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
149
|
-
this.enableDarkMode();
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
DarkModeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DarkModeService, deps: [{ token: DOCUMENT }, { token: DARK_MODE_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
154
|
-
DarkModeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DarkModeService, providedIn: 'root' });
|
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DarkModeService, decorators: [{
|
|
156
|
-
type: Injectable,
|
|
157
|
-
args: [{
|
|
158
|
-
providedIn: 'root'
|
|
159
|
-
}]
|
|
160
|
-
}], ctorParameters: function () { return [{ type: Document, decorators: [{
|
|
161
|
-
type: Inject,
|
|
162
|
-
args: [DOCUMENT]
|
|
163
|
-
}] }, { type: undefined, decorators: [{
|
|
164
|
-
type: Inject,
|
|
165
|
-
args: [DARK_MODE_CONFIG]
|
|
166
|
-
}] }]; } });
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFyay1tb2RlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9zZXJ2aWNlL3VpL2RhcmstbW9kZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRTNDLHlCQUF5QjtBQUN6QixNQUFNLFdBQVcsR0FBVyxlQUFlLENBQUM7QUFDNUMsTUFBTSxRQUFRLEdBQVcsV0FBVyxDQUFDO0FBQ3JDLE1BQU0sVUFBVSxHQUFXLEtBQUssQ0FBQztBQUNqQyxNQUFNLGFBQWEsR0FBVyxRQUFRLENBQUM7QUE2QnZDOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQW1CO0lBRTVDOzs7T0FHRztJQUNILGVBQWUsRUFBRSxLQUFLO0lBRXRCOzs7T0FHRztJQUNILHFCQUFxQixFQUFFLEtBQUs7SUFFNUI7OztPQUdHO0lBQ0gsV0FBVyxFQUFFLFFBQVE7SUFFckI7OztPQUdHO0lBQ0gsVUFBVSxFQUFFLFdBQVc7Q0FDMUIsQ0FBQztBQUtGOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFheEI7Ozs7T0FJRztJQUNILFlBQXNDLFNBQW1CLEVBQTRCLE1BQXNCO1FBQXJFLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFoQnpELHlCQUF5QjtRQUNqQixxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMsaUJBQVksR0FBVyxRQUFRLENBQUM7UUFDaEMsZ0JBQVcsR0FBVyxXQUFXLENBQUM7UUFFMUM7OztXQUdHO1FBQ2EsV0FBTSxHQUEwQixJQUFJLFlBQVksQ0FBVSxJQUFJLENBQUMsQ0FBQztRQVE1RSxJQUFJLENBQUMsWUFBWSxDQUFD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QUFDLE9BQU8sRUFBRTtZQUNoRixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDekI7SUFDTCxDQUFDOzs0R0FuSFEsZUFBZSxrQkFrQkosUUFBUSxhQUF1QyxnQkFBZ0I7Z0hBbEIxRSxlQUFlLGNBTFosTUFBTTsyRkFLVCxlQUFlO2tCQU4zQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBc0JnQixNQUFNOzJCQUFDLFFBQVE7OzBCQUFnQyxNQUFNOzJCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbi8vIC0tPiBJbnRlcm5hbCBjb25zdGFudHNcbmNvbnN0IFNUT1JBR0VfS0VZOiBzdHJpbmcgPSBcImRhcmstbW9kZS1rZXlcIjtcbmNvbnN0IENTU19QUk9QOiBzdHJpbmcgPSBcImRhcmstbW9kZVwiO1xuY29uc3QgQUREX0FDVElPTjogc3RyaW5nID0gXCJhZGRcIjtcbmNvbnN0IFJFTU9WRV9BQ1RJT046IHN0cmluZyA9IFwicmVtb3ZlXCI7XG5cbi8qKlxuICogRGVmaW5lcyBwcm9wZXJ0aWVzIGZvciB0aGUgRGFya01vZGVTZXJ2aWNlIGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGFya01vZGVDb25maWcge1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGRhcmsgbW9kZSBpcyBhY3RpdmF0ZWQgYnkgZGVmYXVsdCAodHJ1ZSksIG9yIG5vdCAoZmFsc2UpLlxuICAgICAqL1xuICAgIGRhcmtNb2RlRW5hYmxlZD86IGJvb2xlYW47XG4gICAgXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGRhcmsgbW9kZSB1c2VzIGJyb3dzZXIgc2V0dGluZ3MgKHRydWUpLCBvciBub3QgKGZhbHNlKS5cbiAgICAgKiBXaGVuIHRydWUsIHRoaXMgcHJvcGVydHkgb3ZlcnJpZGVzIHRoZSBkYXJrTW9kZUVuYWJsZWQgcHJvcGVydHkuXG4gICAgICovXG4gICAgZGV0ZWN0QnJvd3NlclNldHRpbmdzPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIENTUyBwcm9wZXJ0eSBuYW1lIHVzZWQgdG8gc2V0IHRoZSBkYXJrIG1vZGUgbG9vayBhbmQgZmVlbC5cbiAgICAgKi9cbiAgICBjc3NQcm9wZXJ0eT86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFJlZmVyZW5jZSB0byB0aGUga2V5IHZhbHVlIHVzZWQgdG8gcGVyc2lzdCB0aGUgZGFyayBtb2RlIHN0YXRlIHRvIGxvY2FsIHN0b3JhZ2UuXG4gICAgICovXG4gICAgc3RvcmFnZUtleT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBUaGUgZGVmYXVsdCBwcm92aWRlciBmb3IgdGhlIERhcmtNb2RlU2VydmljZSBjb25maWd1cmF0aW9uLiBZb3UgdHlwaWNhbGx5IGRlZmluZVxuICogdGhlIGN1c3RvbSBwcm9wZXJ0aWVzIGluIHRoZSBtYWluIE5nTW9kdWxlIGRlY2xhcmF0aW9uIHRvIGluaXRpYWxpemUgdGhlIGFwcCBkYXJrIG1vZGU6XG4gKiBcbiAqIEBOZ01vZHVsZSh7XG4gKiAuLi5cbiAqIHByb3ZpZGVyczogW1xuICogICB7IHByb3ZpZGU6IERBUktfTU9ERV9DT05GSUcsIHVzZVZhbHVlOiB7IGVuYWJsZURhcmtNb2RlOiB0cnVlfSB9XG4gKiBdLFxuICogLi4uXG4gKiBzKTtcbiAqL1xuZXhwb3J0IGNvbnN0IERBUktfTU9ERV9DT05GSUc6IERhcmtNb2RlQ29uZmlnID0ge1xuICAgIFxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSBkYXJrIG1vZGUgdXNlcyBicm93c2VyIHNldHRpbmdzICh0cnVlKSwgb3Igbm90IChmYWxzZSkuXG4gICAgICogRGVmYXVsdCB2YWx1ZSBpcyBmYWxzZS5cbiAgICAgKi9cbiAgICBkYXJrTW9kZUVuYWJsZWQ6IGZhbHNlLFxuICAgIFxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSBkYXJrIG1vZGUgdXNlcyBicm93c2VyIHNldHRpbmdzICh0cnVlKSwgb3Igbm90IChmYWxzZSkuXG4gICAgICogRGVmYXVsdCB2YWx1ZSBpcyBmYWxzZS5cbiAgICAgKi9cbiAgICBkZXRlY3RCcm93c2VyU2V0dGluZ3M6IGZhbHNlLFxuICAgIFxuICAgIC8qKlxuICAgICAqIENTUyBwcm9wZXJ0eSBuYW1lIHVzZWQgdG8gc2V0IHRoZSBkYXJrIG1vZGUgbG9vayBhbmQgZmVlbC5cbiAgICAgKiBEZWZhdWx0IHZhbHVlIGlzICdkYXJrLW1vZGUnLlxuICAgICAqL1xuICAgIGNzc1Byb3BlcnR5OiBDU1NfUFJPUCxcbiAgICBcbiAgICAvKipcbiAgICAgKiBSZWZlcmVuY2UgdG8gdGhlIGtleSB2YWx1ZSB1c2VkIHRvIHBlcnNpc3QgdGhlIGRhcmsgbW9kZSBzdGF0ZSB0byBsb2NhbCBzdG9yYWdlLlxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgJ2RhcmstbW9kZS1rZXknLlxuICAgICAqL1xuICAgIHN0b3JhZ2VLZXk6IFNUT1JBR0VfS0VZXG59O1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuLyoqXG4gKiBBIGxpZ2h0d2VpZ2h0IHNlcnZpY2UgdGhhdCBwcm92aWRlcyBEYXJrIE1vZGUgaW1wbGVtZW50YXRpb24gZm9yIHlvdXIgQW5ndWxhciBhcHBsaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIERhcmtNb2RlU2VydmljZSB7XG5cbiAgICAvLyAtLT4gUHJpdmF0ZSBwcm9wZXJ0aWVzXG4gICAgcHJpdmF0ZSBfZGFya01vZGVFbmFibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfY3NzUHJvcGVydHk6IHN0cmluZyA9IENTU19QUk9QO1xuICAgIHByaXZhdGUgX3N0b3JhZ2VLZXk6IHN0cmluZyA9IFNUT1JBR0VfS0VZO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgaXMgdHJpZ2dlcmVkIHdoZW4gdGhlIGRhcmsgbW9kZSBjaGFuZ2VzLlxuICAgICAqIEB0eXBlUGFyYW0gRXZlbnRFbWl0dGVyPGJvb2xlYW4+IHRoZSB2YWx1ZSByZXR1cm5lZCBieSB0aGUgZGFya01vZGVFbmFibGVkKCkgcHJvcGVydHkuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPih0cnVlKTtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBuZXcgRGFya01vZGVTZXJ2aWNlIGluc3RhbmNlLlxuICAgICAqIEBwYXJhbSBfZG9jdW1lbnQgdGhlIHJlZmVyZW5jZSB0byB0aGUgRG9jdW1lbnQgc2luZ2xldG9uLlxuICAgICAqIEBwYXJhbSBjb25maWcgdGhlIHJlZmVyZW5jZSB0byB0aGUgRGFya01vZGVDb25maWcgcHJvdmlkZXIuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IERvY3VtZW50LCBASW5qZWN0KERBUktfTU9ERV9DT05GSUcpIGNvbmZpZzogRGFya01vZGVDb25maWcpIHtcbiAgICAgICAgdGhpcy5pbml0RGFya01vZGUoY29uZmlnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUb29nbGVzIHRoZSBkYXJrIG1vZGUgc3RhdGUuXG4gICAgICovXG4gICAgcHVibGljIHRvZ2dsZURhcmtNb2RlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kYXJrTW9kZUVuYWJsZWQgPyB0aGlzLmRpc2FibGVEYXJrTW9kZSgpIDogdGhpcy5lbmFibGVEYXJrTW9kZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGRhcmsgbW9kZSBzdGF0ZSB0byBhY3RpdmUuXG4gICAgICovXG4gICAgcHVibGljIGVuYWJsZURhcmtNb2RlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldERhcmtNb2RlKEFERF9BQ1RJT04pO1xuICAgICAgICB0aGlzLnNldFN0b3JlZERhcmtNb2RlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgZGFyayBtb2RlIHN0YXRlIHRvIGluYWN0aXZlLlxuICAgICAqL1xuICAgIHB1YmxpYyBkaXNhYmxlRGFya01vZGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0RGFya01vZGUoUkVNT1ZFX0FDVElPTik7XG4gICAgICAgIHRoaXMuc2V0U3RvcmVkRGFya01vZGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgYm9vbGVhbiB2YWx1ZSB0aGF0IGluZGljYXRlcyB0aGUgZGFyayBtb2RlIHN0YXRlIGlzIGFjdGl2ZSAodHJ1ZSksIG9yIG5vdCAoZmFsc2UpLlxuICAgICAqIEByZXR1cm5zIHRydWUgd2hldGhlciB0aGUgZGFyayBtb2RlIHN0YXRlIGlzIGFjdGl2ZTsgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqL1xuICAgIHB1YmxpYyBkYXJrTW9kZUVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXJrTW9kZUVuYWJsZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIENTUyBwcm9wZXJ0eSBhcyBkZWZpbmVkIGJ5IHRoZSBjb25maWcgcHJvdmlkZXIuXG4gICAgICogQHJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSBDU1MgcHJvcGVydHkuXG4gICAgICovXG4gICAgcHVibGljIGdldENzc1Byb3BlcnR5KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jc3NQcm9wZXJ0eTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgc3RvcmFnZSBrZXkgYXMgZGVmaW5lZCBieSB0aGUgY29uZmlnIHByb3ZpZGVyLlxuICAgICAqIEByZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgc3RvcmFnZSBrZXkuXG4gICAgICovXG4gICAgcHVibGljIGdldFN0b3JhZ2VLZXkoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N0b3JhZ2VLZXk7XG4gICAgfVxuICAgIFxuICAgIC8qKlxuICAgICAqIFJlbW92ZXMgdGhlIGRhcmsgbW9kZSBpbmZvcm1hdGlvbiBmcm9tIGxvY2FsIHN0b3JhZ2UuXG4gICAgICovXG4gICAgcHVibGljIGludmFsaWRhdGVTdG9yYWdlKCk6IHZvaWQge1xuICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh0aGlzLl9zdG9yYWdlS2V5KTtcbiAgICB9XG5cbiAgICAvLyAtLT4gUHJpdmF0ZSBtZXRob2RzXG4gICAgcHJpdmF0ZSBpbml0RGFya01vZGUoY29uZmlnOiBEYXJrTW9kZUNvbmZpZyk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kYXJrTW9kZUVuYWJsZWQgPSBjb25maWcuZGFya01vZGVFbmFibGVkIHx8IGZhbHNlO1xuICAgICAgICB0aGlzLl9jc3NQcm9wZXJ0eSA9IGNvbmZpZy5jc3NQcm9wZXJ0eSB8fCBDU1NfUFJPUDtcbiAgICAgICAgdGhpcy5fc3RvcmFnZUtleSA9IGNvbmZpZy5zdG9yYWdlS2V5IHx8IFNUT1JBR0VfS0VZO1xuICAgICAgICBpZiAodGhpcy5fZGFya01vZGVFbmFibGVkKSB7XG4gICAgICAgICAgICB0aGlzLmVuYWJsZURhcmtNb2RlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmluaXRTdG9yZWREYXJrTW9kZSgpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25maWcuZGV0ZWN0QnJvd3NlclNldHRpbmdzKSB0aGlzLmluaXRCcm93c2VyTW9kZSgpO1xuICAgIH1cbiAgICBcbiAgICBwcml2YXRlIGluaXRTdG9yZWREYXJrTW9kZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcmVzdWx0OiBzdHJpbmcgfCBudWxsID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5fc3RvcmFnZUtleSk7XG4gICAgICAgIGlmIChyZXN1bHQgPT09IFwidHJ1ZVwiKSB0aGlzLmVuYWJsZURhcmtNb2RlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRTdG9yZWREYXJrTW9kZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGF0YTogc3RyaW5nID0gU3RyaW5nKHRoaXMuX2RhcmtNb2RlRW5hYmxlZCk7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuX3N0b3JhZ2VLZXksIGRhdGEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0RGFya01vZGUoYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY2xhc3NMaXN0OiBET01Ub2tlbkxpc3QgPSB0aGlzLl9kb2N1bWVudC5ib2R5LmNsYXNzTGlzdDtcbiAgICAgICAgaWYgKGFjdGlvbiA9PT0gQUREX0FDVElPTikge1xuICAgICAgICAgICAgY2xhc3NMaXN0LmFkZCh0aGlzLl9jc3NQcm9wZXJ0eSk7XG4gICAgICAgICAgICB0aGlzLl9kYXJrTW9kZUVuYWJsZWQgPSB0cnVlO1xuICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbiA9PT0gUkVNT1ZFX0FDVElPTikge1xuICAgICAgICAgICAgY2xhc3NMaXN0LnJlbW92ZSh0aGlzLl9jc3NQcm9wZXJ0eSk7XG4gICAgICAgICAgICB0aGlzLl9kYXJrTW9kZUVuYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMuX2RhcmtNb2RlRW5hYmxlZCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0QnJvd3Nlck1vZGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh3aW5kb3cubWF0Y2hNZWRpYSAmJiB3aW5kb3cubWF0Y2hNZWRpYSgnKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKScpLm1hdGNoZXMpIHtcbiAgICAgICAgICAgIHRoaXMuZW5hYmxlRGFya01vZGUoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIl19
|
package/esm2020/public-api.mjs
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of angular-toolbox
|
|
3
|
-
*/
|
|
4
|
-
export * from './lib/angular-toolbox.module';
|
|
5
|
-
export * from './lib/pipe';
|
|
6
|
-
export * from './lib/service';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGFuZ3VsYXItdG9vbGJveFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FuZ3VsYXItdG9vbGJveC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlJztcbiJdfQ==
|