@keycloakify/angular 0.0.1-rc.12 → 0.0.1-rc.13
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/dist/LICENSE +21 -0
- package/dist/esm2022/account/classes/component-reference/component-reference.class.mjs +1 -1
- package/dist/esm2022/account/directives/kc-class/kc-class.directive.mjs +10 -6
- package/dist/esm2022/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.mjs +2 -2
- package/dist/esm2022/lib/pipes/is-array-with-empty-object/public-api.mjs +1 -1
- package/dist/esm2022/lib/pipes/to-array/to-array.pipe.mjs +2 -2
- package/dist/esm2022/lib/pipes/to-number/to-number.pipe.mjs +2 -2
- package/dist/esm2022/lib/public-api.mjs +2 -2
- package/dist/esm2022/public-api.mjs +2 -2
- package/dist/fesm2022/keycloakify-angular-account-classes-component-reference.mjs.map +1 -1
- package/dist/fesm2022/keycloakify-angular-account-directives-kc-class.mjs +8 -4
- package/dist/fesm2022/keycloakify-angular-account-directives-kc-class.mjs.map +1 -1
- package/dist/fesm2022/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs +1 -1
- package/dist/fesm2022/keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs.map +1 -1
- package/dist/fesm2022/keycloakify-angular-lib-pipes-to-array.mjs +1 -1
- package/dist/fesm2022/keycloakify-angular-lib-pipes-to-array.mjs.map +1 -1
- package/dist/fesm2022/keycloakify-angular-lib-pipes-to-number.mjs +1 -1
- package/dist/fesm2022/keycloakify-angular-lib-pipes-to-number.mjs.map +1 -1
- package/dist/fesm2022/keycloakify-angular-lib.mjs +1 -1
- package/dist/fesm2022/keycloakify-angular-lib.mjs.map +1 -1
- package/dist/fesm2022/keycloakify-angular.mjs +1 -1
- package/dist/fesm2022/keycloakify-angular.mjs.map +1 -1
- package/dist/src/account/classes/component-reference/component-reference.class.ts +3 -3
- package/dist/src/account/classes/component-reference/index.ts +1 -1
- package/dist/src/account/containers/template/index.ts +1 -1
- package/dist/src/account/directives/kc-class/index.ts +1 -1
- package/dist/src/account/directives/kc-class/kc-class.directive.ts +141 -121
- package/dist/src/account/pages/account/index.ts +1 -1
- package/dist/src/account/pages/applications/index.ts +1 -1
- package/dist/src/account/pages/federatedIdentity/index.ts +1 -1
- package/dist/src/account/pages/log/index.ts +1 -1
- package/dist/src/account/pages/password/index.ts +1 -1
- package/dist/src/account/pages/sessions/index.ts +1 -1
- package/dist/src/account/pages/totp/index.ts +1 -1
- package/dist/src/account/providers/keycloakify-angular/index.ts +1 -1
- package/dist/src/account/services/account-resource-injector/index.ts +1 -1
- package/dist/src/account/services/i18n/index.ts +1 -1
- package/dist/src/account/tokens/classes/index.ts +1 -1
- package/dist/src/account/tokens/i18n/index.ts +1 -1
- package/dist/src/account/tokens/kc-context/index.ts +1 -1
- package/dist/src/lib/directives/attributes/index.ts +1 -1
- package/dist/src/lib/models/script/index.ts +1 -1
- package/dist/src/lib/pipes/input-type/index.ts +1 -1
- package/dist/src/lib/pipes/is-array-with-empty-object/index.ts +1 -1
- package/dist/src/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.ts +10 -10
- package/dist/src/lib/pipes/kc-sanitize/index.ts +1 -1
- package/dist/src/lib/pipes/to-array/index.ts +1 -1
- package/dist/src/lib/pipes/to-array/to-array.pipe.ts +8 -8
- package/dist/src/lib/pipes/to-number/index.ts +1 -1
- package/dist/src/lib/pipes/to-number/to-number.pipe.ts +7 -7
- package/dist/src/lib/services/resource-injector/index.ts +1 -1
- package/dist/src/lib/tokens/use-default-css/index.ts +1 -1
- package/dist/src/login/classes/component-reference/index.ts +1 -1
- package/dist/src/login/components/add-remove-buttons-multi-valued-attribute/index.ts +1 -1
- package/dist/src/login/components/field-errors/index.ts +1 -1
- package/dist/src/login/components/group-label/index.ts +1 -1
- package/dist/src/login/components/input-field-by-type/index.ts +1 -1
- package/dist/src/login/components/input-tag/index.ts +1 -1
- package/dist/src/login/components/input-tag-selects/index.ts +1 -1
- package/dist/src/login/components/logout-other-sessions/index.ts +1 -1
- package/dist/src/login/components/password-wrapper/index.ts +1 -1
- package/dist/src/login/components/select-tag/index.ts +1 -1
- package/dist/src/login/components/textarea-tag/index.ts +1 -1
- package/dist/src/login/components/user-profile-form-fields/index.ts +1 -1
- package/dist/src/login/containers/template/index.ts +1 -1
- package/dist/src/login/directives/kc-class/index.ts +1 -1
- package/dist/src/login/pages/code/index.ts +1 -1
- package/dist/src/login/pages/delete-account-confirm/index.ts +1 -1
- package/dist/src/login/pages/delete-credential/index.ts +1 -1
- package/dist/src/login/pages/error/index.ts +1 -1
- package/dist/src/login/pages/frontchannel-logout/index.ts +1 -1
- package/dist/src/login/pages/idp-review-user-profile/index.ts +1 -1
- package/dist/src/login/pages/info/index.ts +1 -1
- package/dist/src/login/pages/login/index.ts +1 -1
- package/dist/src/login/pages/login-config-totp/index.ts +1 -1
- package/dist/src/login/pages/login-idp-link-confirm/index.ts +1 -1
- package/dist/src/login/pages/login-idp-link-confirm-override/index.ts +1 -1
- package/dist/src/login/pages/login-idp-link-email/index.ts +1 -1
- package/dist/src/login/pages/login-oauth-grant/index.ts +1 -1
- package/dist/src/login/pages/login-oauth2-device-verify-user-code/index.ts +1 -1
- package/dist/src/login/pages/login-otp/index.ts +1 -1
- package/dist/src/login/pages/login-page-expired/index.ts +1 -1
- package/dist/src/login/pages/login-passkeys-conditional-authenticate/index.ts +1 -1
- package/dist/src/login/pages/login-password/index.ts +1 -1
- package/dist/src/login/pages/login-recovery-authn-code-config/index.ts +1 -1
- package/dist/src/login/pages/login-recovery-authn-code-input/index.ts +1 -1
- package/dist/src/login/pages/login-reset-otp/index.ts +1 -1
- package/dist/src/login/pages/login-reset-password/index.ts +1 -1
- package/dist/src/login/pages/login-update-password/index.ts +1 -1
- package/dist/src/login/pages/login-update-profile/index.ts +1 -1
- package/dist/src/login/pages/login-username/index.ts +1 -1
- package/dist/src/login/pages/login-verify-email/index.ts +1 -1
- package/dist/src/login/pages/login-x509-info/index.ts +1 -1
- package/dist/src/login/pages/logout-confirm/index.ts +1 -1
- package/dist/src/login/pages/register/index.ts +1 -1
- package/dist/src/login/pages/saml-post-form/index.ts +1 -1
- package/dist/src/login/pages/select-authenticator/index.ts +1 -1
- package/dist/src/login/pages/terms/index.ts +1 -1
- package/dist/src/login/pages/update-email/index.ts +1 -1
- package/dist/src/login/pages/webauthn-authenticate/index.ts +1 -1
- package/dist/src/login/pages/webauthn-error/index.ts +1 -1
- package/dist/src/login/pages/webauthn-register/index.ts +1 -1
- package/dist/src/login/providers/keycloakify-angular/index.ts +1 -1
- package/dist/src/login/services/i18n/index.ts +1 -1
- package/dist/src/login/services/login-resource-injector/index.ts +1 -1
- package/dist/src/login/services/submit/index.ts +1 -1
- package/dist/src/login/services/user-profile-form/index.ts +1 -1
- package/dist/src/login/tokens/classes/index.ts +1 -1
- package/dist/src/login/tokens/i18n/index.ts +1 -1
- package/dist/src/login/tokens/kc-context/index.ts +1 -1
- package/dist/src/login/tokens/make-user-confirm-password/index.ts +1 -1
- package/dist/src/tsconfig.lib.json +7 -9
- package/dist/src/tsconfig.lib.prod.json +8 -8
- package/package.json +1 -1
package/dist/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2020 GitHub user u/kathari00 u/LucaPeruzzo u/garronej
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export class ComponentReference {
|
|
2
2
|
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LXJlZmVyZW5jZS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hY2NvdW50L2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZS9jb21wb25lbnQtcmVmZXJlbmNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE1BQU0sT0FBZ0Isa0JBQWtCO0NBSXZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9hY2NvdW50JztcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDb21wb25lbnRSZWZlcmVuY2Uge1xuICAgIGRvVXNlRGVmYXVsdENzcyE6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gICAgY2xhc3NlcyE6IFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+PiB8IHVuZGVmaW5lZDtcbiAgICBhZGRpdGlvbmFsQ2xhc3NlcyE6IFBhcnRpYWw8UmVjb3JkPENsYXNzS2V5LCBzdHJpbmc+Pjtcbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
/* eslint-disable @typescript-eslint/consistent-indexed-object-style */
|
|
3
|
-
import { Directive, ElementRef, inject, Input, isDevMode, Renderer2, ɵstringify as stringify
|
|
3
|
+
import { Directive, ElementRef, inject, Input, isDevMode, Renderer2, ɵstringify as stringify } from '@angular/core';
|
|
4
4
|
import { getKcClsx } from 'keycloakify/account/lib/kcClsx';
|
|
5
5
|
import { ComponentReference } from '@keycloakify/angular/account/classes/component-reference';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -25,7 +25,8 @@ export class KcClassDirective {
|
|
|
25
25
|
}
|
|
26
26
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
27
27
|
set kcClass(value) {
|
|
28
|
-
this.rawKcClass =
|
|
28
|
+
this.rawKcClass =
|
|
29
|
+
typeof value === 'string' ? value.trim().split(/\s+/) : value;
|
|
29
30
|
}
|
|
30
31
|
ngDoCheck() {
|
|
31
32
|
for (const klass of this.initialClasses) {
|
|
@@ -70,14 +71,17 @@ export class KcClassDirective {
|
|
|
70
71
|
let klassChecked = klass;
|
|
71
72
|
if (kcClsxCheck) {
|
|
72
73
|
const doUseDefaultCss = this.#host.doUseDefaultCss ?? true;
|
|
73
|
-
const classes = {
|
|
74
|
+
const classes = {
|
|
75
|
+
...(this.#host.classes ?? {}),
|
|
76
|
+
...(this.#host.additionalClasses ?? {})
|
|
77
|
+
};
|
|
74
78
|
const kcClsx = getKcClsx({ doUseDefaultCss, classes }).kcClsx;
|
|
75
79
|
klassChecked = kcClsx(klass);
|
|
76
80
|
}
|
|
77
81
|
this.stateMap.set(klassChecked, {
|
|
78
82
|
enabled: nextEnabled,
|
|
79
83
|
changed: true,
|
|
80
|
-
touched: true
|
|
84
|
+
touched: true
|
|
81
85
|
});
|
|
82
86
|
}
|
|
83
87
|
}
|
|
@@ -108,7 +112,7 @@ export class KcClassDirective {
|
|
|
108
112
|
}
|
|
109
113
|
klass = klass.trim();
|
|
110
114
|
if (klass.length > 0) {
|
|
111
|
-
klass.split(/\s+/).forEach(
|
|
115
|
+
klass.split(/\s+/).forEach(klass => {
|
|
112
116
|
if (enabled) {
|
|
113
117
|
this.#renderer.addClass(this.#el.nativeElement, klass);
|
|
114
118
|
}
|
|
@@ -134,4 +138,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
134
138
|
type: Input,
|
|
135
139
|
args: ['kcClass']
|
|
136
140
|
}] } });
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2MtY2xhc3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FjY291bnQvZGlyZWN0aXZlcy9rYy1jbGFzcy9rYy1jbGFzcy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELHVFQUF1RTtBQUN2RSxPQUFPLEVBQ0wsU0FBUyxFQUVULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxJQUFJLFNBQVMsR0FDeEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOztBQWM5RixNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRVUsbUJBQWMsR0FBYSxFQUFFLENBQUM7UUFJOUIsYUFBUSxHQUFHLElBQUksR0FBRyxFQUFvQyxDQUFDO1FBQ3RELGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUIsUUFBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6QixVQUFLLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7S0FpSDdDO0lBbkhVLFNBQVMsQ0FBcUI7SUFDOUIsR0FBRyxDQUFzQjtJQUN6QixLQUFLLENBQThCO0lBQzVDLDJEQUEyRDtJQUMzRCxJQUNJLEtBQUssQ0FBQyxLQUFhO1FBQ3JCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3ZFLENBQUM7SUFFRCwyREFBMkQ7SUFDM0QsSUFDSSxPQUFPLENBQUMsS0FBcUM7UUFDL0MsSUFBSSxDQUFDLFFB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T0FBTztzQkFEVixLQUFLO3VCQUFDLFNBQVM7Z0JBT1osT0FBTztzQkFEVixLQUFLO3VCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvY29uc2lzdGVudC1pbmRleGVkLW9iamVjdC1zdHlsZSAqL1xuaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBEb0NoZWNrLFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBpc0Rldk1vZGUsXG4gIFJlbmRlcmVyMixcbiAgybVzdHJpbmdpZnkgYXMgc3RyaW5naWZ5LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsYXNzS2V5IH0gZnJvbSAna2V5Y2xvYWtpZnkvYWNjb3VudCc7XG5pbXBvcnQgeyBnZXRLY0Nsc3ggfSBmcm9tICdrZXljbG9ha2lmeS9hY2NvdW50L2xpYi9rY0Nsc3gnO1xuaW1wb3J0IHsgQ29tcG9uZW50UmVmZXJlbmNlIH0gZnJvbSAnQGtleWNsb2FraWZ5L2FuZ3VsYXIvYWNjb3VudC9jbGFzc2VzL2NvbXBvbmVudC1yZWZlcmVuY2UnO1xuXG5pbnRlcmZhY2UgQ3NzQ2xhc3NTdGF0ZSB7XG4gIC8vIFBFUkY6IGNvdWxkIHVzZSBhIGJpdCBtYXNrIHRvIHJlcHJlc2VudCBzdGF0ZSBhcyBhbGwgZmllbGRzIGFyZSBib29sZWFuIGZsYWdzXG4gIGVuYWJsZWQ6IGJvb2xlYW47XG4gIGNoYW5nZWQ6IGJvb2xlYW47XG4gIHRvdWNoZWQ6IGJvb2xlYW47XG59XG5cbnR5cGUgS2NDbGFzc1N1cHBvcnRlZFR5cGVzID0gQ2xhc3NLZXlbXSB8IFNldDxDbGFzc0tleT4gfCBQYXJ0aWFsPHsgW2tleSBpbiBDbGFzc0tleV06IGFueSB9PiB8IG51bGwgfCB1bmRlZmluZWQ7XG5cbnR5cGUgTmdDbGFzc1N1cHBvcnRlZFR5cGVzID0gc3RyaW5nW10gfCBTZXQ8c3RyaW5nPiB8IHsgW2tleTogc3RyaW5nXTogYW55IH0gfCBudWxsIHwgdW5kZWZpbmVkO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdba2NDbGFzc10nLCBzdGFuZGFsb25lOiB0cnVlIH0pXG5leHBvcnQgY2xhc3MgS2NDbGFzc0RpcmVjdGl2ZSBpbXBsZW1lbnRzIERvQ2hlY2sge1xuICBwcml2YXRlIGluaXRpYWxDbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICBwcml2YXRlIHJhd0NsYXNzOiBOZ0NsYXNzU3VwcG9ydGVkVHlwZXM7XG4gIHByaXZhdGUgcmF3S2NDbGFzczogS2NDbGFzc1N1cHBvcnRlZFR5cGVzO1xuXG4gIHByaXZhdGUgc3RhdGVNYXAgPSBuZXcgTWFwPHN0cmluZyB8IENsYXNzS2V5LCBDc3NDbGFzc1N0YXRlPigpO1xuICByZWFkb25seSAjcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcbiAgcmVhZG9ubHkgI2VsID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICByZWFkb25seSAjaG9zdCA9IGluamVjdChDb21wb25lbnRSZWZlcmVuY2UpO1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ2NsYXNzJylcbiAgc2V0IGtsYXNzKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmluaXRpYWxDbGFzc2VzID0gdmFsdWUgIT0gbnVsbCA/IHZhbHVlLnRyaW0oKS5zcGxpdCgvXFxzKy8pIDogW107XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ25nQ2xhc3MnKVxuICBzZXQgbmdDbGFzcyh2YWx1ZTogc3RyaW5nIHwgTmdDbGFzc1N1cHBvcnRlZFR5cGVzKSB7XG4gICAgdGhpcy5yYXdDbGFzcyA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB2YWx1ZS50cmltKCkuc3BsaXQoL1xccysvKSA6IHZhbHVlO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdrY0NsYXNzJylcbiAgc2V0IGtjQ2xhc3ModmFsdWU6IENsYXNzS2V5IHwgS2NDbGFzc1N1cHBvcnRlZFR5cGVzKSB7XG4gICAgdGhpcy5yYXdLY0NsYXNzID0gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/ICh2YWx1ZS50cmltKCkuc3BsaXQoL1xccysvKSBhcyBDbGFzc0tleVtdKSA6IHZhbHVlO1xuICB9XG5cbiAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgIGZvciAoY29uc3Qga2xhc3Mgb2YgdGhpcy5pbml0aWFsQ2xhc3Nlcykge1xuICAgICAgdGhpcy5fdXBkYXRlU3RhdGUoa2xhc3MsIHRydWUpO1xuICAgIH1cbiAgICAvLyBjbGFzc2VzIGZyb20gdGhlIFtuZ0NsYXNzXSBiaW5kaW5nXG4gICAgY29uc3QgcmF3Q2xhc3MgPSB0aGlzLnJhd0NsYXNzO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHJhd0NsYXNzKSB8fCByYXdDbGFzcyBpbnN0YW5jZW9mIFNldCkge1xuICAgICAgZm9yIChjb25zdCBrbGFzcyBvZiByYXdDbGFzcykge1xuICAgICAgICB0aGlzLl91cGRhdGVTdGF0ZShrbGFzcywgdHJ1ZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChyYXdDbGFzcyAhPSBudWxsKSB7XG4gICAgICBmb3IgKGNvbnN0IGtsYXNzIG9mIE9iamVjdC5rZXlzKHJhd0NsYXNzKSkge1xuICAgICAgICB0aGlzLl91cGRhdGVTdGF0ZShrbGFzcywgQm9vbGVhbihyYXdDbGFzc1trbGFzc10pKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBjbGFzc2VzIGZyb20gdGhlIFtrY0NsYXNzXSBiaW5kaW5nXG4gICAgY29uc3QgcmF3S2NDbGFzcyA9IHRoaXMucmF3S2NDbGFzcztcbiAgICBpZiAoQXJyYXkuaXNBcnJheShyYXdLY0NsYXNzKSB8fCByYXdLY0NsYXNzIGluc3RhbmNlb2YgU2V0KSB7XG4gICAgICBmb3IgKGNvbnN0IGtsYXNzIG9mIHJhd0tjQ2xhc3MpIHtcbiAgICAgICAgdGhpcy5fdXBkYXRlU3RhdGUoa2xhc3MsIHRydWUsIHRydWUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocmF3S2NDbGFzcyAhPSBudWxsKSB7XG4gICAgICBmb3IgKGNvbnN0IGtsYXNzIG9mIE9iamVjdC5rZXlzKHJhd0tjQ2xhc3MpKSB7XG4gICAgICAgIHRoaXMuX3VwZGF0ZVN0YXRlKGtsYXNzLCBCb29sZWFuKHJhd0tjQ2xhc3Nba2xhc3MgYXMgQ2xhc3NLZXldKSwgdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fYXBwbHlTdGF0ZURpZmYoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVN0YXRlKGtsYXNzOiBzdHJpbmcgfCBDbGFzc0tleSwgbmV4dEVuYWJsZWQ6IGJvb2xlYW4sIGtjQ2xzeENoZWNrID0gZmFsc2UpIHtcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMuc3RhdGVNYXAuZ2V0KGtsYXNzKTtcbiAgICBpZiAoc3RhdGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKHN0YXRlLmVuYWJsZWQgIT09IG5leHRFbmFibGVkKSB7XG4gICAgICAgIHN0YXRlLmNoYW5nZWQgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5lbmFibGVkID0gbmV4dEVuYWJsZWQ7XG4gICAgICB9XG4gICAgICBzdGF0ZS50b3VjaGVkID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGV0IGtsYXNzQ2hlY2tlZCA9IGtsYXNzO1xuICAgICAgaWYgKGtjQ2xzeENoZWNrKSB7XG4gICAgICAgIGNvbnN0IGRvVXNlRGVmYXVsdENzcyA9IHRoaXMuI2hvc3QuZG9Vc2VEZWZhdWx0Q3NzID8/IHRydWU7XG4gICAgICAgIGNvbnN0IGNsYXNzZXMgPSB7IC4uLih0aGlzLiNob3N0LmNsYXNzZXMgPz8ge30pLCAuLi4odGhpcy4jaG9zdC5hZGRpdGlvbmFsQ2xhc3NlcyA/PyB7fSkgfTtcbiAgICAgICAgY29uc3Qga2NDbHN4ID0gZ2V0S2NDbHN4KHsgZG9Vc2VEZWZhdWx0Q3NzLCBjbGFzc2VzIH0pLmtjQ2xzeDtcbiAgICAgICAga2xhc3NDaGVja2VkID0ga2NDbHN4KGtsYXNzIGFzIENsYXNzS2V5KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc3RhdGVNYXAuc2V0KGtsYXNzQ2hlY2tlZCwge1xuICAgICAgICBlbmFibGVkOiBuZXh0RW5hYmxlZCxcbiAgICAgICAgY2hhbmdlZDogdHJ1ZSxcbiAgICAgICAgdG91Y2hlZDogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5U3RhdGVEaWZmKCkge1xuICAgIGZvciAoY29uc3Qgc3RhdGVFbnRyeSBvZiB0aGlzLnN0YXRlTWFwKSB7XG4gICAgICBjb25zdCBrbGFzcyA9IHN0YXRlRW50cnlbMF07XG4gICAgICBjb25zdCBzdGF0ZSA9IHN0YXRlRW50cnlbMV07XG5cbiAgICAgIGlmIChzdGF0ZS5jaGFuZ2VkKSB7XG4gICAgICAgIHRoaXMuX3RvZ2dsZUNsYXNzKGtsYXNzLCBzdGF0ZS5lbmFibGVkKTtcbiAgICAgICAgc3RhdGUuY2hhbmdlZCA9IGZhbHNlO1xuICAgICAgfSBlbHNlIGlmICghc3RhdGUudG91Y2hlZCkge1xuICAgICAgICAvLyBBIGNsYXNzIHRoYXQgd2FzIHByZXZpb3VzbHkgYWN0aXZlIGdvdCByZW1vdmVkIGZyb20gdGhlIG5ldyBjb2xsZWN0aW9uIG9mIGNsYXNzZXMgLVxuICAgICAgICAvLyByZW1vdmUgZnJvbSB0aGUgRE9NIGFzIHdlbGwuXG4gICAgICAgIGlmIChzdGF0ZS5lbmFibGVkKSB7XG4gICAgICAgICAgdGhpcy5fdG9nZ2xlQ2xhc3Moa2xhc3MsIGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnN0YXRlTWFwLmRlbGV0ZShrbGFzcyk7XG4gICAgICB9XG5cbiAgICAgIHN0YXRlLnRvdWNoZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF90b2dnbGVDbGFzcyhrbGFzczogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICBpZiAodHlwZW9mIGtsYXNzICE9PSAnc3RyaW5nJykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5nQ2xhc3MgY2FuIG9ubHkgdG9nZ2xlIENTUyBjbGFzc2VzIGV4cHJlc3NlZCBhcyBzdHJpbmdzLCBnb3QgJHtzdHJpbmdpZnkoa2xhc3MpfWApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGtsYXNzID0ga2xhc3MudHJpbSgpO1xuICAgIGlmIChrbGFzcy5sZW5ndGggPiAwKSB7XG4gICAgICBrbGFzcy5zcGxpdCgvXFxzKy8pLmZvckVhY2goKGtsYXNzKSA9PiB7XG4gICAgICAgIGlmIChlbmFibGVkKSB7XG4gICAgICAgICAgdGhpcy4jcmVuZGVyZXIuYWRkQ2xhc3ModGhpcy4jZWwubmF0aXZlRWxlbWVudCwga2xhc3MpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuI2VsLm5hdGl2ZUVsZW1lbnQsIGtsYXNzKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2MtY2xhc3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FjY291bnQvZGlyZWN0aXZlcy9rYy1jbGFzcy9rYy1jbGFzcy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELHVFQUF1RTtBQUN2RSxPQUFPLEVBQ0gsU0FBUyxFQUVULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxJQUFJLFNBQVMsRUFDMUIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOztBQXdCOUYsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUVZLG1CQUFjLEdBQWEsRUFBRSxDQUFDO1FBSTlCLGFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBb0MsQ0FBQztRQUN0RCxjQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlCLFFBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0tBMkgvQztJQTdIWSxTQUFTLENBQXFCO0lBQzlCLEdBQUcsQ0FBc0I7SUFDekIsS0FBSyxDQUE4QjtJQUM1QywyREFBMkQ7SUFDM0QsSUFDSSxLQUFLLENBQUMsS0FBYTtRQUNuQixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN6RSxDQUFDO0lBRUQsMkRBQTJEO0lBQzNELElBQ0ksT0FBTyxDQUFDLEtBQXFDO1FBQzdDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbEYsQ0FBQztJQUVELDJEQUEyRDtJQUMzRCxJQUNJLE9BQU8sQ0FBQyxLQUF1QztRQUMvQyxJQUFJLENBQUMsVUFBVTtZQUNYLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQWdCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN0RixDQUFDO0lBRUQsU0FBUztRQUNMLEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25DLENBQUM7UUFDRCxxQ0FBcUM7UUFDckMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUMvQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxZQUFZLEdBQUcsRUFBRSxDQUFDO1lBQ3JELEtBQUssTUFBTSxLQUFLLElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ25DLENBQUM7UUFDTCxDQUFDO2FBQU0sSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7WUFDMUIsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7UUFDTCxDQUFDO1FBRUQscUNBQXFDO1FBQ3JDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbkMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLFVBQVUsWUFBWSxHQUFHLEVBQUUsQ0FBQztZQUN6RCxLQUFLLE1BQU0sS0FBSyxJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDekMsQ0FBQztRQUNMLENBQUM7YUFBTSxJQUFJLFVBQVUsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUM1QixLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztnQkFDMUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFpQixDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMzRSxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8sWUFBWSxDQUNoQixLQUF3QixFQUN4QixXQUFvQixFQUNwQixXQUFXLEdBQUcsS0FBSztRQUVuQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QyxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QixJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssV0FBVyxFQUFFLENBQUM7Z0JBQ2hDLEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO2dCQUNyQixLQUFLLENBQUMsT0FBTyxHQUFHLFdBQVcsQ0FBQztZQUNoQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDekIsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxXQUFXLEVBQUUsQ0FBQztnQkFDZCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUM7Z0JBQzNELE1BQU0sT0FBTyxHQUFHO29CQUNaLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7b0JBQzdCLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixJQUFJLEVBQUUsQ0FBQztpQkFDMUMsQ0FBQztnQkFDRixNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7Z0JBQzlELFlBQVksR0FBRyxNQUFNLENBQUMsS0FBaUIsQ0FBQyxDQUFDO1lBQzdDLENBQUM7WUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUU7Z0JBQzVCLE9BQU8sRUFBRSxXQUFXO2dCQUNwQixPQUFPLEVBQUUsSUFBSTtnQkFDYixPQUFPLEVBQUUsSUFBSTthQUNoQixDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWU7UUFDbkIsS0FBSyxNQUFNLFVBQVUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckMsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUU1QixJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN4QyxLQUFLLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUMxQixDQUFDO2lCQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3hCLHNGQUFzRjtnQkFDdEYsK0JBQStCO2dCQUMvQixJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3BDLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEMsQ0FBQztZQUVELEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQzFCLENBQUM7SUFDTCxDQUFDO0lBRU8sWUFBWSxDQUFDLEtBQWEsRUFBRSxPQUFnQjtRQUNoRCxJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDZCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUM1QixNQUFNLElBQUksS0FBSyxDQUNYLGlFQUFpRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDdEYsQ0FBQztZQUNOLENBQUM7UUFDTCxDQUFDO1FBRUQsS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDbkIsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQy9CLElBQUksT0FBTyxFQUFFLENBQUM7b0JBQ1YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzNELENBQUM7cUJBQU0sQ0FBQztvQkFDSixJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDOUQsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNMLENBQUM7OEdBbElRLGdCQUFnQjtrR0FBaEIsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFOzhCQVk5QyxLQUFLO3NCQURSLEtBQUs7dUJBQUMsT0FBTztnQkFPVixPQUFPO3NCQURWLEtBQUs7dUJBQUMsU0FBUztnQkFPWixPQUFPO3NCQURWLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9jb25zaXN0ZW50LWluZGV4ZWQtb2JqZWN0LXN0eWxlICovXG5pbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBEb0NoZWNrLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIGlzRGV2TW9kZSxcbiAgICBSZW5kZXJlcjIsXG4gICAgybVzdHJpbmdpZnkgYXMgc3RyaW5naWZ5XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xhc3NLZXkgfSBmcm9tICdrZXljbG9ha2lmeS9hY2NvdW50JztcbmltcG9ydCB7IGdldEtjQ2xzeCB9IGZyb20gJ2tleWNsb2FraWZ5L2FjY291bnQvbGliL2tjQ2xzeCc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWZlcmVuY2UgfSBmcm9tICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9hY2NvdW50L2NsYXNzZXMvY29tcG9uZW50LXJlZmVyZW5jZSc7XG5cbmludGVyZmFjZSBDc3NDbGFzc1N0YXRlIHtcbiAgICAvLyBQRVJGOiBjb3VsZCB1c2UgYSBiaXQgbWFzayB0byByZXByZXNlbnQgc3RhdGUgYXMgYWxsIGZpZWxkcyBhcmUgYm9vbGVhbiBmbGFnc1xuICAgIGVuYWJsZWQ6IGJvb2xlYW47XG4gICAgY2hhbmdlZDogYm9vbGVhbjtcbiAgICB0b3VjaGVkOiBib29sZWFuO1xufVxuXG50eXBlIEtjQ2xhc3NTdXBwb3J0ZWRUeXBlcyA9XG4gICAgfCBDbGFzc0tleVtdXG4gICAgfCBTZXQ8Q2xhc3NLZXk+XG4gICAgfCBQYXJ0aWFsPHsgW2tleSBpbiBDbGFzc0tleV06IGFueSB9PlxuICAgIHwgbnVsbFxuICAgIHwgdW5kZWZpbmVkO1xuXG50eXBlIE5nQ2xhc3NTdXBwb3J0ZWRUeXBlcyA9XG4gICAgfCBzdHJpbmdbXVxuICAgIHwgU2V0PHN0cmluZz5cbiAgICB8IHsgW2tleTogc3RyaW5nXTogYW55IH1cbiAgICB8IG51bGxcbiAgICB8IHVuZGVmaW5lZDtcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2tjQ2xhc3NdJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIEtjQ2xhc3NEaXJlY3RpdmUgaW1wbGVtZW50cyBEb0NoZWNrIHtcbiAgICBwcml2YXRlIGluaXRpYWxDbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICAgIHByaXZhdGUgcmF3Q2xhc3M6IE5nQ2xhc3NTdXBwb3J0ZWRUeXBlcztcbiAgICBwcml2YXRlIHJhd0tjQ2xhc3M6IEtjQ2xhc3NTdXBwb3J0ZWRUeXBlcztcblxuICAgIHByaXZhdGUgc3RhdGVNYXAgPSBuZXcgTWFwPHN0cmluZyB8IENsYXNzS2V5LCBDc3NDbGFzc1N0YXRlPigpO1xuICAgIHJlYWRvbmx5ICNyZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICAgIHJlYWRvbmx5ICNlbCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgICByZWFkb25seSAjaG9zdCA9IGluamVjdChDb21wb25lbnRSZWZlcmVuY2UpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjbGFzcycpXG4gICAgc2V0IGtsYXNzKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5pbml0aWFsQ2xhc3NlcyA9IHZhbHVlICE9IG51bGwgPyB2YWx1ZS50cmltKCkuc3BsaXQoL1xccysvKSA6IFtdO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCduZ0NsYXNzJylcbiAgICBzZXQgbmdDbGFzcyh2YWx1ZTogc3RyaW5nIHwgTmdDbGFzc1N1cHBvcnRlZFR5cGVzKSB7XG4gICAgICAgIHRoaXMucmF3Q2xhc3MgPSB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gdmFsdWUudHJpbSgpLnNwbGl0KC9cXHMrLykgOiB2YWx1ZTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgna2NDbGFzcycpXG4gICAgc2V0IGtjQ2xhc3ModmFsdWU6IENsYXNzS2V5IHwgS2NDbGFzc1N1cHBvcnRlZFR5cGVzKSB7XG4gICAgICAgIHRoaXMucmF3S2NDbGFzcyA9XG4gICAgICAgICAgICB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gKHZhbHVlLnRyaW0oKS5zcGxpdCgvXFxzKy8pIGFzIENsYXNzS2V5W10pIDogdmFsdWU7XG4gICAgfVxuXG4gICAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgICAgICBmb3IgKGNvbnN0IGtsYXNzIG9mIHRoaXMuaW5pdGlhbENsYXNzZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVN0YXRlKGtsYXNzLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBjbGFzc2VzIGZyb20gdGhlIFtuZ0NsYXNzXSBiaW5kaW5nXG4gICAgICAgIGNvbnN0IHJhd0NsYXNzID0gdGhpcy5yYXdDbGFzcztcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmF3Q2xhc3MpIHx8IHJhd0NsYXNzIGluc3RhbmNlb2YgU2V0KSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtsYXNzIG9mIHJhd0NsYXNzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdXBkYXRlU3RhdGUoa2xhc3MsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKHJhd0NsYXNzICE9IG51bGwpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2xhc3Mgb2YgT2JqZWN0LmtleXMocmF3Q2xhc3MpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdXBkYXRlU3RhdGUoa2xhc3MsIEJvb2xlYW4ocmF3Q2xhc3Nba2xhc3NdKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBjbGFzc2VzIGZyb20gdGhlIFtrY0NsYXNzXSBiaW5kaW5nXG4gICAgICAgIGNvbnN0IHJhd0tjQ2xhc3MgPSB0aGlzLnJhd0tjQ2xhc3M7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHJhd0tjQ2xhc3MpIHx8IHJhd0tjQ2xhc3MgaW5zdGFuY2VvZiBTZXQpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2xhc3Mgb2YgcmF3S2NDbGFzcykge1xuICAgICAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVN0YXRlKGtsYXNzLCB0cnVlLCB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChyYXdLY0NsYXNzICE9IG51bGwpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2xhc3Mgb2YgT2JqZWN0LmtleXMocmF3S2NDbGFzcykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVTdGF0ZShrbGFzcywgQm9vbGVhbihyYXdLY0NsYXNzW2tsYXNzIGFzIENsYXNzS2V5XSksIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fYXBwbHlTdGF0ZURpZmYoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF91cGRhdGVTdGF0ZShcbiAgICAgICAga2xhc3M6IHN0cmluZyB8IENsYXNzS2V5LFxuICAgICAgICBuZXh0RW5hYmxlZDogYm9vbGVhbixcbiAgICAgICAga2NDbHN4Q2hlY2sgPSBmYWxzZVxuICAgICkge1xuICAgICAgICBjb25zdCBzdGF0ZSA9IHRoaXMuc3RhdGVNYXAuZ2V0KGtsYXNzKTtcbiAgICAgICAgaWYgKHN0YXRlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmIChzdGF0ZS5lbmFibGVkICE9PSBuZXh0RW5hYmxlZCkge1xuICAgICAgICAgICAgICAgIHN0YXRlLmNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHN0YXRlLmVuYWJsZWQgPSBuZXh0RW5hYmxlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN0YXRlLnRvdWNoZWQgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGV0IGtsYXNzQ2hlY2tlZCA9IGtsYXNzO1xuICAgICAgICAgICAgaWYgKGtjQ2xzeENoZWNrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZG9Vc2VEZWZhdWx0Q3NzID0gdGhpcy4jaG9zdC5kb1VzZURlZmF1bHRDc3MgPz8gdHJ1ZTtcbiAgICAgICAgICAgICAgICBjb25zdCBjbGFzc2VzID0ge1xuICAgICAgICAgICAgICAgICAgICAuLi4odGhpcy4jaG9zdC5jbGFzc2VzID8/IHt9KSxcbiAgICAgICAgICAgICAgICAgICAgLi4uKHRoaXMuI2hvc3QuYWRkaXRpb25hbENsYXNzZXMgPz8ge30pXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBjb25zdCBrY0Nsc3ggPSBnZXRLY0Nsc3goeyBkb1VzZURlZmF1bHRDc3MsIGNsYXNzZXMgfSkua2NDbHN4O1xuICAgICAgICAgICAgICAgIGtsYXNzQ2hlY2tlZCA9IGtjQ2xzeChrbGFzcyBhcyBDbGFzc0tleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnN0YXRlTWFwLnNldChrbGFzc0NoZWNrZWQsIHtcbiAgICAgICAgICAgICAgICBlbmFibGVkOiBuZXh0RW5hYmxlZCxcbiAgICAgICAgICAgICAgICBjaGFuZ2VkOiB0cnVlLFxuICAgICAgICAgICAgICAgIHRvdWNoZWQ6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfYXBwbHlTdGF0ZURpZmYoKSB7XG4gICAgICAgIGZvciAoY29uc3Qgc3RhdGVFbnRyeSBvZiB0aGlzLnN0YXRlTWFwKSB7XG4gICAgICAgICAgICBjb25zdCBrbGFzcyA9IHN0YXRlRW50cnlbMF07XG4gICAgICAgICAgICBjb25zdCBzdGF0ZSA9IHN0YXRlRW50cnlbMV07XG5cbiAgICAgICAgICAgIGlmIChzdGF0ZS5jaGFuZ2VkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdG9nZ2xlQ2xhc3Moa2xhc3MsIHN0YXRlLmVuYWJsZWQpO1xuICAgICAgICAgICAgICAgIHN0YXRlLmNoYW5nZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIXN0YXRlLnRvdWNoZWQpIHtcbiAgICAgICAgICAgICAgICAvLyBBIGNsYXNzIHRoYXQgd2FzIHByZXZpb3VzbHkgYWN0aXZlIGdvdCByZW1vdmVkIGZyb20gdGhlIG5ldyBjb2xsZWN0aW9uIG9mIGNsYXNzZXMgLVxuICAgICAgICAgICAgICAgIC8vIHJlbW92ZSBmcm9tIHRoZSBET00gYXMgd2VsbC5cbiAgICAgICAgICAgICAgICBpZiAoc3RhdGUuZW5hYmxlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl90b2dnbGVDbGFzcyhrbGFzcywgZmFsc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnN0YXRlTWFwLmRlbGV0ZShrbGFzcyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN0YXRlLnRvdWNoZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX3RvZ2dsZUNsYXNzKGtsYXNzOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGtsYXNzICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgYE5nQ2xhc3MgY2FuIG9ubHkgdG9nZ2xlIENTUyBjbGFzc2VzIGV4cHJlc3NlZCBhcyBzdHJpbmdzLCBnb3QgJHtzdHJpbmdpZnkoa2xhc3MpfWBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAga2xhc3MgPSBrbGFzcy50cmltKCk7XG4gICAgICAgIGlmIChrbGFzcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBrbGFzcy5zcGxpdCgvXFxzKy8pLmZvckVhY2goa2xhc3MgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlbmFibGVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuI3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuI2VsLm5hdGl2ZUVsZW1lbnQsIGtsYXNzKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLiNyZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLiNlbC5uYXRpdmVFbGVtZW50LCBrbGFzcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
package/dist/esm2022/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.mjs
CHANGED
|
@@ -14,7 +14,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
14
14
|
type: Pipe,
|
|
15
15
|
args: [{
|
|
16
16
|
name: 'isArrayWithEmptyObject',
|
|
17
|
-
standalone: true
|
|
17
|
+
standalone: true
|
|
18
18
|
}]
|
|
19
19
|
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtYXJyYXktd2l0aC1lbXB0eS1vYmplY3QucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvcGlwZXMvaXMtYXJyYXktd2l0aC1lbXB0eS1vYmplY3QvaXMtYXJyYXktd2l0aC1lbXB0eS1vYmplY3QucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNcEQsTUFBTSxPQUFPLDBCQUEwQjtJQUNuQyxTQUFTLENBQUMsUUFBaUI7UUFDdkIsT0FBTyxDQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ3ZCLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUNyQixPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRO1lBQy9CLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FDeEMsQ0FBQztJQUNOLENBQUM7OEdBUlEsMEJBQTBCOzRHQUExQiwwQkFBMEI7OzJGQUExQiwwQkFBMEI7a0JBSnRDLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLHdCQUF3QjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ2lzQXJyYXlXaXRoRW1wdHlPYmplY3QnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXNBcnJheVdpdGhFbXB0eU9iamVjdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0odmFyaWFibGU6IHVua25vd24pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIEFycmF5LmlzQXJyYXkodmFyaWFibGUpICYmXG4gICAgICAgICAgICB2YXJpYWJsZS5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgICAgIHR5cGVvZiB2YXJpYWJsZVswXSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHZhcmlhYmxlWzBdKS5sZW5ndGggPT09IDBcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './is-array-with-empty-object.pipe';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvcGlwZXMvaXMtYXJyYXktd2l0aC1lbXB0eS1vYmplY3QvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pcy1hcnJheS13aXRoLWVtcHR5LW9iamVjdC5waXBlJztcbiJdfQ==
|
|
@@ -15,7 +15,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
15
15
|
type: Pipe,
|
|
16
16
|
args: [{
|
|
17
17
|
name: 'toArray',
|
|
18
|
-
standalone: true
|
|
18
|
+
standalone: true
|
|
19
19
|
}]
|
|
20
20
|
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG8tYXJyYXkucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvcGlwZXMvdG8tYXJyYXkvdG8tYXJyYXkucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNcEQsTUFBTSxPQUFPLFdBQVc7SUFDcEIsU0FBUyxDQUFDLEtBQXdCLEVBQUUsZUFBZSxHQUFHLEtBQUs7UUFDdkQsb0RBQW9EO1FBQ3BELElBQUksS0FBSyxZQUFZLEtBQUssRUFBRSxDQUFDO1lBQ3pCLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFDRCxPQUFPLGVBQWUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFDLENBQUM7OEdBUFEsV0FBVzs0R0FBWCxXQUFXOzsyRkFBWCxXQUFXO2tCQUp2QixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxTQUFTO29CQUNmLFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICd0b0FycmF5JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRvQXJyYXlQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSwgZW1wdHlXaGVuU3RyaW5nID0gZmFsc2UpOiBzdHJpbmdbXSB7XG4gICAgICAgIC8vIGlmICghdmFsdWUpIHRocm93IG5ldyBFcnJvcignbXVzdCBwYXNzIGEgdmFsdWUnKTtcbiAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZW1wdHlXaGVuU3RyaW5nID8gW10gOiBbdmFsdWVdO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -14,7 +14,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
14
14
|
type: Pipe,
|
|
15
15
|
args: [{
|
|
16
16
|
name: 'toNumber',
|
|
17
|
-
standalone: true
|
|
17
|
+
standalone: true
|
|
18
18
|
}]
|
|
19
19
|
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG8tbnVtYmVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3BpcGVzL3RvLW51bWJlci90by1udW1iZXIucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNcEQsTUFBTSxPQUFPLFlBQVk7SUFDckIsU0FBUyxDQUFDLEtBQXNCO1FBQzVCLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDcEMsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNwRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDOzhHQUxRLFlBQVk7NEdBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFKeEIsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsVUFBVTtvQkFDaEIsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ3RvTnVtYmVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRvTnVtYmVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgbnVtYmVyID0gcGFyc2VJbnQoYCR7dmFsdWV9YCk7XG4gICAgICAgIGlmIChpc05hTihudW1iZXIpKSB0aHJvdyBuZXcgRXJyb3IoJ251bWJlciBpcyBOYU4nKTtcbiAgICAgICAgcmV0dXJuIG51bWJlcjtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const KEYCLOAKIFY_ANGULAR_LIB =
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export const KEYCLOAKIFY_ANGULAR_LIB = '@keycloakify/angular/lib';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBLRVlDTE9BS0lGWV9BTkdVTEFSX0xJQiA9ICdAa2V5Y2xvYWtpZnkvYW5ndWxhci9saWInO1xuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const KEYCLOAKIFY_ANGULAR =
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export const KEYCLOAKIFY_ANGULAR = '@keycloakify/angular';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEtFWUNMT0FLSUZZX0FOR1VMQVIgPSAnQGtleWNsb2FraWZ5L2FuZ3VsYXInO1xuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keycloakify-angular-account-classes-component-reference.mjs","sources":["../../src/account/classes/component-reference/component-reference.class.ts","../../src/account/classes/component-reference/keycloakify-angular-account-classes-component-reference.ts"],"sourcesContent":["import { ClassKey } from 'keycloakify/account';\nexport abstract class ComponentReference {\n
|
|
1
|
+
{"version":3,"file":"keycloakify-angular-account-classes-component-reference.mjs","sources":["../../src/account/classes/component-reference/component-reference.class.ts","../../src/account/classes/component-reference/keycloakify-angular-account-classes-component-reference.ts"],"sourcesContent":["import { ClassKey } from 'keycloakify/account';\nexport abstract class ComponentReference {\n doUseDefaultCss!: boolean | undefined;\n classes!: Partial<Record<ClassKey, string>> | undefined;\n additionalClasses!: Partial<Record<ClassKey, string>>;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"MACsB,kBAAkB,CAAA;AAIvC;;ACLD;;AAEG;;;;"}
|
|
@@ -26,7 +26,8 @@ class KcClassDirective {
|
|
|
26
26
|
}
|
|
27
27
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
28
28
|
set kcClass(value) {
|
|
29
|
-
this.rawKcClass =
|
|
29
|
+
this.rawKcClass =
|
|
30
|
+
typeof value === 'string' ? value.trim().split(/\s+/) : value;
|
|
30
31
|
}
|
|
31
32
|
ngDoCheck() {
|
|
32
33
|
for (const klass of this.initialClasses) {
|
|
@@ -71,14 +72,17 @@ class KcClassDirective {
|
|
|
71
72
|
let klassChecked = klass;
|
|
72
73
|
if (kcClsxCheck) {
|
|
73
74
|
const doUseDefaultCss = this.#host.doUseDefaultCss ?? true;
|
|
74
|
-
const classes = {
|
|
75
|
+
const classes = {
|
|
76
|
+
...(this.#host.classes ?? {}),
|
|
77
|
+
...(this.#host.additionalClasses ?? {})
|
|
78
|
+
};
|
|
75
79
|
const kcClsx = getKcClsx({ doUseDefaultCss, classes }).kcClsx;
|
|
76
80
|
klassChecked = kcClsx(klass);
|
|
77
81
|
}
|
|
78
82
|
this.stateMap.set(klassChecked, {
|
|
79
83
|
enabled: nextEnabled,
|
|
80
84
|
changed: true,
|
|
81
|
-
touched: true
|
|
85
|
+
touched: true
|
|
82
86
|
});
|
|
83
87
|
}
|
|
84
88
|
}
|
|
@@ -109,7 +113,7 @@ class KcClassDirective {
|
|
|
109
113
|
}
|
|
110
114
|
klass = klass.trim();
|
|
111
115
|
if (klass.length > 0) {
|
|
112
|
-
klass.split(/\s+/).forEach(
|
|
116
|
+
klass.split(/\s+/).forEach(klass => {
|
|
113
117
|
if (enabled) {
|
|
114
118
|
this.#renderer.addClass(this.#el.nativeElement, klass);
|
|
115
119
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keycloakify-angular-account-directives-kc-class.mjs","sources":["../../src/account/directives/kc-class/kc-class.directive.ts","../../src/account/directives/kc-class/keycloakify-angular-account-directives-kc-class.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/consistent-indexed-object-style */\nimport {\n Directive,\n DoCheck,\n ElementRef,\n inject,\n Input,\n isDevMode,\n Renderer2,\n ɵstringify as stringify,\n} from '@angular/core';\nimport { ClassKey } from 'keycloakify/account';\nimport { getKcClsx } from 'keycloakify/account/lib/kcClsx';\nimport { ComponentReference } from '@keycloakify/angular/account/classes/component-reference';\n\ninterface CssClassState {\n // PERF: could use a bit mask to represent state as all fields are boolean flags\n enabled: boolean;\n changed: boolean;\n touched: boolean;\n}\n\ntype KcClassSupportedTypes = ClassKey[] | Set<ClassKey> | Partial<{ [key in ClassKey]: any }> | null | undefined;\n\ntype NgClassSupportedTypes = string[] | Set<string> | { [key: string]: any } | null | undefined;\n\n@Directive({ selector: '[kcClass]', standalone: true })\nexport class KcClassDirective implements DoCheck {\n private initialClasses: string[] = [];\n private rawClass: NgClassSupportedTypes;\n private rawKcClass: KcClassSupportedTypes;\n\n private stateMap = new Map<string | ClassKey, CssClassState>();\n readonly #renderer = inject(Renderer2);\n readonly #el = inject(ElementRef);\n readonly #host = inject(ComponentReference);\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('class')\n set klass(value: string) {\n this.initialClasses = value != null ? value.trim().split(/\\s+/) : [];\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('ngClass')\n set ngClass(value: string | NgClassSupportedTypes) {\n this.rawClass = typeof value === 'string' ? value.trim().split(/\\s+/) : value;\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('kcClass')\n set kcClass(value: ClassKey | KcClassSupportedTypes) {\n this.rawKcClass = typeof value === 'string' ? (value.trim().split(/\\s+/) as ClassKey[]) : value;\n }\n\n ngDoCheck(): void {\n for (const klass of this.initialClasses) {\n this._updateState(klass, true);\n }\n // classes from the [ngClass] binding\n const rawClass = this.rawClass;\n if (Array.isArray(rawClass) || rawClass instanceof Set) {\n for (const klass of rawClass) {\n this._updateState(klass, true);\n }\n } else if (rawClass != null) {\n for (const klass of Object.keys(rawClass)) {\n this._updateState(klass, Boolean(rawClass[klass]));\n }\n }\n\n // classes from the [kcClass] binding\n const rawKcClass = this.rawKcClass;\n if (Array.isArray(rawKcClass) || rawKcClass instanceof Set) {\n for (const klass of rawKcClass) {\n this._updateState(klass, true, true);\n }\n } else if (rawKcClass != null) {\n for (const klass of Object.keys(rawKcClass)) {\n this._updateState(klass, Boolean(rawKcClass[klass as ClassKey]), true);\n }\n }\n\n this._applyStateDiff();\n }\n\n private _updateState(klass: string | ClassKey, nextEnabled: boolean, kcClsxCheck = false) {\n const state = this.stateMap.get(klass);\n if (state !== undefined) {\n if (state.enabled !== nextEnabled) {\n state.changed = true;\n state.enabled = nextEnabled;\n }\n state.touched = true;\n } else {\n let klassChecked = klass;\n if (kcClsxCheck) {\n const doUseDefaultCss = this.#host.doUseDefaultCss ?? true;\n const classes = { ...(this.#host.classes ?? {}), ...(this.#host.additionalClasses ?? {}) };\n const kcClsx = getKcClsx({ doUseDefaultCss, classes }).kcClsx;\n klassChecked = kcClsx(klass as ClassKey);\n }\n this.stateMap.set(klassChecked, {\n enabled: nextEnabled,\n changed: true,\n touched: true,\n });\n }\n }\n\n private _applyStateDiff() {\n for (const stateEntry of this.stateMap) {\n const klass = stateEntry[0];\n const state = stateEntry[1];\n\n if (state.changed) {\n this._toggleClass(klass, state.enabled);\n state.changed = false;\n } else if (!state.touched) {\n // A class that was previously active got removed from the new collection of classes -\n // remove from the DOM as well.\n if (state.enabled) {\n this._toggleClass(klass, false);\n }\n this.stateMap.delete(klass);\n }\n\n state.touched = false;\n }\n }\n\n private _toggleClass(klass: string, enabled: boolean): void {\n if (isDevMode()) {\n if (typeof klass !== 'string') {\n throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${stringify(klass)}`);\n }\n }\n\n klass = klass.trim();\n if (klass.length > 0) {\n klass.split(/\\s+/).forEach((klass) => {\n if (enabled) {\n this.#renderer.addClass(this.#el.nativeElement, klass);\n } else {\n this.#renderer.removeClass(this.#el.nativeElement, klass);\n }\n });\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["stringify"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"keycloakify-angular-account-directives-kc-class.mjs","sources":["../../src/account/directives/kc-class/kc-class.directive.ts","../../src/account/directives/kc-class/keycloakify-angular-account-directives-kc-class.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/consistent-indexed-object-style */\nimport {\n Directive,\n DoCheck,\n ElementRef,\n inject,\n Input,\n isDevMode,\n Renderer2,\n ɵstringify as stringify\n} from '@angular/core';\nimport { ClassKey } from 'keycloakify/account';\nimport { getKcClsx } from 'keycloakify/account/lib/kcClsx';\nimport { ComponentReference } from '@keycloakify/angular/account/classes/component-reference';\n\ninterface CssClassState {\n // PERF: could use a bit mask to represent state as all fields are boolean flags\n enabled: boolean;\n changed: boolean;\n touched: boolean;\n}\n\ntype KcClassSupportedTypes =\n | ClassKey[]\n | Set<ClassKey>\n | Partial<{ [key in ClassKey]: any }>\n | null\n | undefined;\n\ntype NgClassSupportedTypes =\n | string[]\n | Set<string>\n | { [key: string]: any }\n | null\n | undefined;\n\n@Directive({ selector: '[kcClass]', standalone: true })\nexport class KcClassDirective implements DoCheck {\n private initialClasses: string[] = [];\n private rawClass: NgClassSupportedTypes;\n private rawKcClass: KcClassSupportedTypes;\n\n private stateMap = new Map<string | ClassKey, CssClassState>();\n readonly #renderer = inject(Renderer2);\n readonly #el = inject(ElementRef);\n readonly #host = inject(ComponentReference);\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('class')\n set klass(value: string) {\n this.initialClasses = value != null ? value.trim().split(/\\s+/) : [];\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('ngClass')\n set ngClass(value: string | NgClassSupportedTypes) {\n this.rawClass = typeof value === 'string' ? value.trim().split(/\\s+/) : value;\n }\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('kcClass')\n set kcClass(value: ClassKey | KcClassSupportedTypes) {\n this.rawKcClass =\n typeof value === 'string' ? (value.trim().split(/\\s+/) as ClassKey[]) : value;\n }\n\n ngDoCheck(): void {\n for (const klass of this.initialClasses) {\n this._updateState(klass, true);\n }\n // classes from the [ngClass] binding\n const rawClass = this.rawClass;\n if (Array.isArray(rawClass) || rawClass instanceof Set) {\n for (const klass of rawClass) {\n this._updateState(klass, true);\n }\n } else if (rawClass != null) {\n for (const klass of Object.keys(rawClass)) {\n this._updateState(klass, Boolean(rawClass[klass]));\n }\n }\n\n // classes from the [kcClass] binding\n const rawKcClass = this.rawKcClass;\n if (Array.isArray(rawKcClass) || rawKcClass instanceof Set) {\n for (const klass of rawKcClass) {\n this._updateState(klass, true, true);\n }\n } else if (rawKcClass != null) {\n for (const klass of Object.keys(rawKcClass)) {\n this._updateState(klass, Boolean(rawKcClass[klass as ClassKey]), true);\n }\n }\n\n this._applyStateDiff();\n }\n\n private _updateState(\n klass: string | ClassKey,\n nextEnabled: boolean,\n kcClsxCheck = false\n ) {\n const state = this.stateMap.get(klass);\n if (state !== undefined) {\n if (state.enabled !== nextEnabled) {\n state.changed = true;\n state.enabled = nextEnabled;\n }\n state.touched = true;\n } else {\n let klassChecked = klass;\n if (kcClsxCheck) {\n const doUseDefaultCss = this.#host.doUseDefaultCss ?? true;\n const classes = {\n ...(this.#host.classes ?? {}),\n ...(this.#host.additionalClasses ?? {})\n };\n const kcClsx = getKcClsx({ doUseDefaultCss, classes }).kcClsx;\n klassChecked = kcClsx(klass as ClassKey);\n }\n this.stateMap.set(klassChecked, {\n enabled: nextEnabled,\n changed: true,\n touched: true\n });\n }\n }\n\n private _applyStateDiff() {\n for (const stateEntry of this.stateMap) {\n const klass = stateEntry[0];\n const state = stateEntry[1];\n\n if (state.changed) {\n this._toggleClass(klass, state.enabled);\n state.changed = false;\n } else if (!state.touched) {\n // A class that was previously active got removed from the new collection of classes -\n // remove from the DOM as well.\n if (state.enabled) {\n this._toggleClass(klass, false);\n }\n this.stateMap.delete(klass);\n }\n\n state.touched = false;\n }\n }\n\n private _toggleClass(klass: string, enabled: boolean): void {\n if (isDevMode()) {\n if (typeof klass !== 'string') {\n throw new Error(\n `NgClass can only toggle CSS classes expressed as strings, got ${stringify(klass)}`\n );\n }\n }\n\n klass = klass.trim();\n if (klass.length > 0) {\n klass.split(/\\s+/).forEach(klass => {\n if (enabled) {\n this.#renderer.addClass(this.#el.nativeElement, klass);\n } else {\n this.#renderer.removeClass(this.#el.nativeElement, klass);\n }\n });\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["stringify"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs","sources":["../../src/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.ts","../../src/lib/pipes/is-array-with-empty-object/keycloakify-angular-lib-pipes-is-array-with-empty-object.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n
|
|
1
|
+
{"version":3,"file":"keycloakify-angular-lib-pipes-is-array-with-empty-object.mjs","sources":["../../src/lib/pipes/is-array-with-empty-object/is-array-with-empty-object.pipe.ts","../../src/lib/pipes/is-array-with-empty-object/keycloakify-angular-lib-pipes-is-array-with-empty-object.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'isArrayWithEmptyObject',\n standalone: true\n})\nexport class IsArrayWithEmptyObjectPipe implements PipeTransform {\n transform(variable: unknown): boolean {\n return (\n Array.isArray(variable) &&\n variable.length === 1 &&\n typeof variable[0] === 'object' &&\n Object.keys(variable[0]).length === 0\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAMa,0BAA0B,CAAA;AACnC,IAAA,SAAS,CAAC,QAAiB,EAAA;AACvB,QAAA,QACI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YACvB,QAAQ,CAAC,MAAM,KAAK,CAAC;AACrB,YAAA,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ;AAC/B,YAAA,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EACvC;KACL;8GARQ,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,CAAA,CAAA,EAAA;;2FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,wBAAwB;AAC9B,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;;;ACLD;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keycloakify-angular-lib-pipes-to-array.mjs","sources":["../../src/lib/pipes/to-array/to-array.pipe.ts","../../src/lib/pipes/to-array/keycloakify-angular-lib-pipes-to-array.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n
|
|
1
|
+
{"version":3,"file":"keycloakify-angular-lib-pipes-to-array.mjs","sources":["../../src/lib/pipes/to-array/to-array.pipe.ts","../../src/lib/pipes/to-array/keycloakify-angular-lib-pipes-to-array.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'toArray',\n standalone: true\n})\nexport class ToArrayPipe implements PipeTransform {\n transform(value: string | string[], emptyWhenString = false): string[] {\n // if (!value) throw new Error('must pass a value');\n if (value instanceof Array) {\n return value;\n }\n return emptyWhenString ? [] : [value];\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAMa,WAAW,CAAA;AACpB,IAAA,SAAS,CAAC,KAAwB,EAAE,eAAe,GAAG,KAAK,EAAA;;AAEvD,QAAA,IAAI,KAAK,YAAY,KAAK,EAAE;AACxB,YAAA,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,eAAe,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;KACzC;8GAPQ,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,CAAA,EAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBAJvB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,SAAS;AACf,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;;;ACLD;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keycloakify-angular-lib-pipes-to-number.mjs","sources":["../../src/lib/pipes/to-number/to-number.pipe.ts","../../src/lib/pipes/to-number/keycloakify-angular-lib-pipes-to-number.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n
|
|
1
|
+
{"version":3,"file":"keycloakify-angular-lib-pipes-to-number.mjs","sources":["../../src/lib/pipes/to-number/to-number.pipe.ts","../../src/lib/pipes/to-number/keycloakify-angular-lib-pipes-to-number.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'toNumber',\n standalone: true\n})\nexport class ToNumberPipe implements PipeTransform {\n transform(value: string | number): number {\n const number = parseInt(`${value}`);\n if (isNaN(number)) throw new Error('number is NaN');\n return number;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAMa,YAAY,CAAA;AACrB,IAAA,SAAS,CAAC,KAAsB,EAAA;QAC5B,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAA,CAAE,CAAC,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,CAAC;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;AACpD,QAAA,OAAO,MAAM,CAAC;KACjB;8GALQ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,UAAA,EAAA,CAAA,CAAA,EAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,UAAU;AAChB,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;;;ACLD;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keycloakify-angular-lib.mjs","sources":["../../src/lib/public-api.ts","../../src/lib/keycloakify-angular-lib.ts"],"sourcesContent":["export const KEYCLOAKIFY_ANGULAR_LIB =
|
|
1
|
+
{"version":3,"file":"keycloakify-angular-lib.mjs","sources":["../../src/lib/public-api.ts","../../src/lib/keycloakify-angular-lib.ts"],"sourcesContent":["export const KEYCLOAKIFY_ANGULAR_LIB = '@keycloakify/angular/lib';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"AAAO,MAAM,uBAAuB,GAAG;;ACAvC;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keycloakify-angular.mjs","sources":["../../src/public-api.ts","../../src/keycloakify-angular.ts"],"sourcesContent":["export const KEYCLOAKIFY_ANGULAR =
|
|
1
|
+
{"version":3,"file":"keycloakify-angular.mjs","sources":["../../src/public-api.ts","../../src/keycloakify-angular.ts"],"sourcesContent":["export const KEYCLOAKIFY_ANGULAR = '@keycloakify/angular';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"AAAO,MAAM,mBAAmB,GAAG;;ACAnC;;AAEG;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ClassKey } from 'keycloakify/account';
|
|
2
2
|
export abstract class ComponentReference {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
doUseDefaultCss!: boolean | undefined;
|
|
4
|
+
classes!: Partial<Record<ClassKey, string>> | undefined;
|
|
5
|
+
additionalClasses!: Partial<Record<ClassKey, string>>;
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './public-api';
|
|
1
|
+
export * from './public-api';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './public-api';
|
|
1
|
+
export * from './public-api';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './public-api';
|
|
1
|
+
export * from './public-api';
|