design-angular-kit 1.0.0-1 → 1.0.0-11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +183 -24
- package/assets/i18n/en.json +97 -0
- package/assets/i18n/it.json +97 -0
- package/esm2020/lib/abstracts/abstract-form.component.mjs +171 -0
- package/esm2020/lib/abstracts/abstract.component.mjs +45 -0
- package/esm2020/lib/components/components.module.mjs +256 -0
- package/esm2020/lib/components/core/accordion/accordion.component.mjs +31 -0
- package/esm2020/lib/components/core/alert/alert.component.mjs +69 -0
- package/esm2020/lib/components/core/badge/badge.directive.mjs +34 -0
- package/esm2020/lib/components/core/button/button.directive.mjs +80 -0
- package/esm2020/lib/components/core/callout/callout.component.mjs +84 -0
- package/esm2020/lib/components/core/card/card.component.mjs +58 -0
- package/esm2020/lib/components/core/carousel/carousel/carousel.component.mjs +79 -0
- package/esm2020/lib/components/core/carousel/carousel-item/carousel-item.component.mjs +15 -0
- package/esm2020/lib/components/core/chip/chip.component.mjs +89 -0
- package/esm2020/lib/components/core/collapse/collapse.component.mjs +101 -0
- package/esm2020/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.mjs +24 -0
- package/esm2020/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.mjs +11 -0
- package/esm2020/lib/components/core/dimmer/dimmer.component.mjs +59 -0
- package/esm2020/lib/components/core/dropdown/dropdown/dropdown.component.mjs +130 -0
- package/esm2020/lib/components/core/dropdown/dropdown-item/dropdown-item.component.mjs +68 -0
- package/esm2020/lib/components/core/forward/forward.directive.mjs +51 -0
- package/esm2020/lib/components/core/link/link.component.mjs +40 -0
- package/esm2020/lib/components/core/list/list/list.component.mjs +13 -0
- package/esm2020/lib/components/core/list/list-item/list-item.component.mjs +36 -0
- package/esm2020/lib/components/core/modal/modal.component.mjs +98 -0
- package/esm2020/lib/components/core/notifications/notifications.component.mjs +110 -0
- package/esm2020/lib/components/core/pagination/pagination.component.mjs +131 -0
- package/esm2020/lib/components/core/popover/popover.directive.mjs +179 -0
- package/esm2020/lib/components/core/progress-bar/progress-bar.component.mjs +34 -0
- package/esm2020/lib/components/core/progress-button/progress-button.component.mjs +27 -0
- package/esm2020/lib/components/core/rating/rating.component.mjs +49 -0
- package/esm2020/lib/components/core/spinner/spinner.component.mjs +35 -0
- package/esm2020/lib/components/core/steppers/steppers-container/steppers-container.component.mjs +127 -0
- package/esm2020/lib/components/core/steppers/steppers-item/steppers-item.component.mjs +19 -0
- package/esm2020/lib/components/core/tab/tab-container/tab-container.component.mjs +59 -0
- package/esm2020/lib/components/core/tab/tab-item/tab-item.component.mjs +36 -0
- package/esm2020/lib/components/core/table/table.component.mjs +57 -0
- package/esm2020/lib/components/core/tooltip/tooltip.directive.mjs +143 -0
- package/esm2020/lib/components/form/checkbox/checkbox.component.mjs +40 -0
- package/esm2020/lib/components/form/input/input.component.mjs +222 -0
- package/esm2020/lib/components/form/password-input/password-input.component.mjs +112 -0
- package/esm2020/lib/components/form/radio-button/radio-button.component.mjs +68 -0
- package/esm2020/lib/components/form/select/select.component.mjs +62 -0
- package/esm2020/lib/components/form/textarea/textarea.component.mjs +46 -0
- package/esm2020/lib/components/form/upload-drag-drop/upload-drag-drop.component.mjs +139 -0
- package/esm2020/lib/components/form/upload-file-list/upload-file-list.component.mjs +104 -0
- package/esm2020/lib/components/navigation/back-button/back-button.component.mjs +69 -0
- package/esm2020/lib/components/navigation/back-to-top/back-to-top.component.mjs +64 -0
- package/esm2020/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.mjs +56 -0
- package/esm2020/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +23 -0
- package/esm2020/lib/components/navigation/header/header.component.mjs +57 -0
- package/esm2020/lib/components/utils/icon/icon.component.mjs +54 -0
- package/esm2020/lib/components/utils/language-switcher/language-switcher.component.mjs +39 -0
- package/esm2020/lib/components/utils/not-found-page/not-found-page.component.mjs +13 -0
- package/esm2020/lib/design-angular-kit.module.mjs +45 -131
- package/esm2020/lib/interfaces/core.mjs +16 -0
- package/esm2020/lib/interfaces/form.mjs +2 -0
- package/esm2020/lib/interfaces/icon.mjs +2 -0
- package/esm2020/lib/interfaces/utils.mjs +2 -0
- package/esm2020/lib/pipes/mark-matching-text.pipe.mjs +36 -0
- package/esm2020/lib/services/notifications/notifications.service.mjs +120 -0
- package/esm2020/lib/utils/boolean-input.mjs +15 -0
- package/esm2020/lib/utils/file-utils.mjs +73 -0
- package/esm2020/lib/utils/regex.mjs +26 -0
- package/esm2020/lib/validators/it-validators.mjs +134 -0
- package/esm2020/public_api.mjs +67 -36
- package/fesm2015/design-angular-kit.mjs +3550 -2712
- package/fesm2015/design-angular-kit.mjs.map +1 -1
- package/fesm2020/design-angular-kit.mjs +3519 -2722
- package/fesm2020/design-angular-kit.mjs.map +1 -1
- package/lib/abstracts/abstract-form.component.d.ts +86 -0
- package/lib/abstracts/abstract.component.d.ts +30 -0
- package/lib/components/components.module.d.ts +60 -0
- package/lib/components/core/accordion/accordion.component.d.ts +12 -0
- package/lib/components/core/alert/alert.component.d.ts +39 -0
- package/lib/components/core/badge/badge.directive.d.ts +16 -0
- package/lib/components/core/button/button.directive.d.ts +36 -0
- package/lib/components/core/callout/callout.component.d.ts +47 -0
- package/lib/components/core/card/card.component.d.ts +41 -0
- package/lib/components/core/carousel/carousel/carousel.component.d.ts +50 -0
- package/lib/components/core/carousel/carousel-item/carousel-item.component.d.ts +11 -0
- package/lib/components/core/chip/chip.component.d.ts +62 -0
- package/lib/components/core/collapse/collapse.component.d.ts +60 -0
- package/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.d.ts +12 -0
- package/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.d.ts +5 -0
- package/lib/components/core/dimmer/dimmer.component.d.ts +24 -0
- package/lib/components/core/dropdown/dropdown/dropdown.component.d.ts +81 -0
- package/lib/components/core/dropdown/dropdown-item/dropdown-item.component.d.ts +39 -0
- package/lib/components/core/forward/forward.directive.d.ts +14 -0
- package/lib/components/core/link/link.component.d.ts +31 -0
- package/lib/components/core/list/list/list.component.d.ts +10 -0
- package/lib/components/core/list/list-item/list-item.component.d.ts +24 -0
- package/lib/components/core/modal/modal.component.d.ts +59 -0
- package/lib/components/core/notifications/notifications.component.d.ts +44 -0
- package/lib/components/core/pagination/pagination.component.d.ts +92 -0
- package/lib/components/core/popover/popover.directive.d.ts +98 -0
- package/lib/components/core/progress-bar/progress-bar.component.d.ts +28 -0
- package/lib/components/core/progress-button/progress-button.component.d.ts +22 -0
- package/lib/components/core/rating/rating.component.d.ts +24 -0
- package/lib/components/core/spinner/spinner.component.d.ts +21 -0
- package/lib/components/core/steppers/steppers-container/steppers-container.component.d.ts +104 -0
- package/lib/components/core/steppers/steppers-item/steppers-item.component.d.ts +20 -0
- package/lib/components/core/tab/tab-container/tab-container.component.d.ts +30 -0
- package/lib/components/core/tab/tab-item/tab-item.component.d.ts +34 -0
- package/lib/components/core/table/table.component.d.ts +54 -0
- package/lib/components/core/tooltip/tooltip.directive.d.ts +81 -0
- package/lib/components/form/checkbox/checkbox.component.d.ts +30 -0
- package/lib/components/form/input/input.component.d.ts +96 -0
- package/lib/components/form/password-input/password-input.component.d.ts +55 -0
- package/lib/components/form/radio-button/radio-button.component.d.ts +29 -0
- package/lib/components/form/select/select.component.d.ts +30 -0
- package/lib/components/form/textarea/textarea.component.d.ts +24 -0
- package/lib/components/form/upload-drag-drop/upload-drag-drop.component.d.ts +54 -0
- package/lib/components/form/upload-file-list/upload-file-list.component.d.ts +59 -0
- package/lib/components/navigation/back-button/back-button.component.d.ts +47 -0
- package/lib/components/navigation/back-to-top/back-to-top.component.d.ts +41 -0
- package/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.d.ts +32 -0
- package/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.d.ts +22 -0
- package/lib/components/navigation/header/header.component.d.ts +24 -0
- package/lib/components/utils/icon/icon.component.d.ts +40 -0
- package/lib/components/utils/language-switcher/language-switcher.component.d.ts +23 -0
- package/lib/components/utils/not-found-page/not-found-page.component.d.ts +5 -0
- package/lib/design-angular-kit.module.d.ts +7 -24
- package/lib/interfaces/core.d.ts +59 -0
- package/lib/interfaces/form.d.ts +67 -0
- package/lib/interfaces/icon.d.ts +3 -0
- package/lib/interfaces/utils.d.ts +10 -0
- package/lib/services/notifications/notifications.service.d.ts +63 -0
- package/lib/utils/boolean-input.d.ts +11 -0
- package/lib/utils/file-utils.d.ts +32 -0
- package/lib/utils/regex.d.ts +25 -0
- package/lib/validators/it-validators.d.ts +58 -0
- package/package.json +22 -13
- package/public_api.d.ts +59 -35
- package/esm2020/lib/badge/badge.directive.mjs +0 -83
- package/esm2020/lib/breadcrumb/breadcrumb-item.component.mjs +0 -66
- package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +0 -89
- package/esm2020/lib/button/button.directive.mjs +0 -185
- package/esm2020/lib/button/button.module.mjs +0 -18
- package/esm2020/lib/checkbox/checkbox.component.mjs +0 -138
- package/esm2020/lib/collapse/collapse-group.component.mjs +0 -57
- package/esm2020/lib/collapse/collapse-item.component.mjs +0 -79
- package/esm2020/lib/collapse/collapse.config.mjs +0 -12
- package/esm2020/lib/collapse/collapse.directive.mjs +0 -55
- package/esm2020/lib/collapse/collapse.module.mjs +0 -22
- package/esm2020/lib/dropdown/dropdown-divider.component.mjs +0 -11
- package/esm2020/lib/dropdown/dropdown-item.component.mjs +0 -97
- package/esm2020/lib/dropdown/dropdown.component.mjs +0 -143
- package/esm2020/lib/dropdown/dropdown.config.mjs +0 -12
- package/esm2020/lib/dropdown/dropdown.directive.mjs +0 -156
- package/esm2020/lib/dropdown/dropdown.module.mjs +0 -25
- package/esm2020/lib/enums/icons.enum.mjs +0 -27
- package/esm2020/lib/form-input/form-input-password.utils.mjs +0 -154
- package/esm2020/lib/form-input/form-input.component.mjs +0 -495
- package/esm2020/lib/form-input/it-prefix.directive.mjs +0 -13
- package/esm2020/lib/form-input/it-suffix.directive.mjs +0 -13
- package/esm2020/lib/form-input/it-text-prefix.directive.mjs +0 -13
- package/esm2020/lib/form-input/it-text-suffix.directive.mjs +0 -13
- package/esm2020/lib/form-input/mark-matching-text.pipe.mjs +0 -36
- package/esm2020/lib/icon/icon.component.mjs +0 -87
- package/esm2020/lib/icon/icon.module.mjs +0 -18
- package/esm2020/lib/models/Alignment.mjs +0 -15
- package/esm2020/lib/models/ButtonSize.mjs +0 -15
- package/esm2020/lib/models/InputType.mjs +0 -44
- package/esm2020/lib/models/ThemeColor.mjs +0 -30
- package/esm2020/lib/popover/popover.config.mjs +0 -17
- package/esm2020/lib/popover/popover.directive.mjs +0 -33
- package/esm2020/lib/popover/popover.module.mjs +0 -19
- package/esm2020/lib/progress-bar/progress-bar.component.mjs +0 -98
- package/esm2020/lib/radio/radio.component.mjs +0 -287
- package/esm2020/lib/radio/unique-selection-dispatcher.mjs +0 -55
- package/esm2020/lib/tabs/tab-group.component.mjs +0 -177
- package/esm2020/lib/tabs/tab.component.mjs +0 -73
- package/esm2020/lib/tabs/tabs.module.mjs +0 -20
- package/esm2020/lib/toggle/toggle.component.mjs +0 -86
- package/esm2020/lib/tooltip/tooltip.config.mjs +0 -17
- package/esm2020/lib/tooltip/tooltip.directive.mjs +0 -43
- package/esm2020/lib/tooltip/tooltip.module.mjs +0 -19
- package/esm2020/lib/util/focus-mouse.directive.mjs +0 -32
- package/esm2020/lib/util/util.mjs +0 -12
- package/esm2020/lib/util/utils.module.mjs +0 -16
- package/lib/badge/badge.directive.d.ts +0 -33
- package/lib/breadcrumb/breadcrumb-item.component.d.ts +0 -33
- package/lib/breadcrumb/breadcrumb.component.d.ts +0 -33
- package/lib/button/button.directive.d.ts +0 -72
- package/lib/button/button.module.d.ts +0 -8
- package/lib/checkbox/checkbox.component.d.ts +0 -61
- package/lib/collapse/collapse-group.component.d.ts +0 -16
- package/lib/collapse/collapse-item.component.d.ts +0 -46
- package/lib/collapse/collapse.config.d.ts +0 -6
- package/lib/collapse/collapse.directive.d.ts +0 -25
- package/lib/collapse/collapse.module.d.ts +0 -12
- package/lib/dropdown/dropdown-divider.component.d.ts +0 -5
- package/lib/dropdown/dropdown-item.component.d.ts +0 -56
- package/lib/dropdown/dropdown.component.d.ts +0 -65
- package/lib/dropdown/dropdown.config.d.ts +0 -6
- package/lib/dropdown/dropdown.directive.d.ts +0 -77
- package/lib/dropdown/dropdown.module.d.ts +0 -15
- package/lib/enums/icons.enum.d.ts +0 -23
- package/lib/form-input/form-input-password.utils.d.ts +0 -45
- package/lib/form-input/form-input.component.d.ts +0 -283
- package/lib/form-input/it-prefix.directive.d.ts +0 -5
- package/lib/form-input/it-suffix.directive.d.ts +0 -5
- package/lib/form-input/it-text-prefix.directive.d.ts +0 -5
- package/lib/form-input/it-text-suffix.directive.d.ts +0 -5
- package/lib/icon/icon.component.d.ts +0 -34
- package/lib/icon/icon.module.d.ts +0 -8
- package/lib/models/Alignment.d.ts +0 -12
- package/lib/models/ButtonSize.d.ts +0 -11
- package/lib/models/InputType.d.ts +0 -36
- package/lib/models/ThemeColor.d.ts +0 -21
- package/lib/popover/popover.config.d.ts +0 -11
- package/lib/popover/popover.directive.d.ts +0 -20
- package/lib/popover/popover.module.d.ts +0 -9
- package/lib/progress-bar/progress-bar.component.d.ts +0 -55
- package/lib/radio/radio.component.d.ts +0 -116
- package/lib/radio/unique-selection-dispatcher.d.ts +0 -36
- package/lib/tabs/tab-group.component.d.ts +0 -71
- package/lib/tabs/tab.component.d.ts +0 -44
- package/lib/tabs/tabs.module.d.ts +0 -10
- package/lib/toggle/toggle.component.d.ts +0 -46
- package/lib/tooltip/tooltip.config.d.ts +0 -11
- package/lib/tooltip/tooltip.directive.d.ts +0 -27
- package/lib/tooltip/tooltip.module.d.ts +0 -9
- package/lib/util/focus-mouse.directive.d.ts +0 -13
- package/lib/util/util.d.ts +0 -5
- package/lib/util/utils.module.d.ts +0 -7
- /package/lib/{form-input → pipes}/mark-matching-text.pipe.d.ts +0 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';
|
|
2
|
+
export declare class ItValidators {
|
|
3
|
+
static SpecialCharacterPattern: string;
|
|
4
|
+
/**
|
|
5
|
+
* Static pattern validator with custom error
|
|
6
|
+
* @param regex
|
|
7
|
+
* @param error
|
|
8
|
+
*/
|
|
9
|
+
static customPattern(regex: RegExp, error: ValidationErrors): ValidatorFn;
|
|
10
|
+
/**
|
|
11
|
+
* Set Validator if the condition is satisfied
|
|
12
|
+
* @param validator the validator to apply if the condition is true
|
|
13
|
+
* @param condition the condition
|
|
14
|
+
*/
|
|
15
|
+
static conditional(validator: ValidatorFn, condition: (control: AbstractControl) => boolean): ValidatorFn;
|
|
16
|
+
/**
|
|
17
|
+
* Check whether our password and confirm password are a match
|
|
18
|
+
* @param control
|
|
19
|
+
*/
|
|
20
|
+
static passwordMatch(control: AbstractControl): AbstractControl | null;
|
|
21
|
+
/**
|
|
22
|
+
* Password validator
|
|
23
|
+
* @param minLength minimum password length - default 10
|
|
24
|
+
* @param hasNumber check whether the entered password has a number - default true
|
|
25
|
+
* @param hasCapitalCase check whether the entered password has upper case letter - default true
|
|
26
|
+
* @param hasSmallCase check whether the entered password has a lower-case letter - default true
|
|
27
|
+
* @param hasSpecialCharacters check whether the entered password has a special character - default true
|
|
28
|
+
*/
|
|
29
|
+
static password(minLength?: number, hasNumber?: boolean, hasCapitalCase?: boolean, hasSmallCase?: boolean, hasSpecialCharacters?: boolean): ValidatorFn;
|
|
30
|
+
/**
|
|
31
|
+
* Email validator
|
|
32
|
+
*/
|
|
33
|
+
static get email(): ValidatorFn;
|
|
34
|
+
/**
|
|
35
|
+
* Phone number validator
|
|
36
|
+
*/
|
|
37
|
+
static get tel(): ValidatorFn;
|
|
38
|
+
/**
|
|
39
|
+
* URL validator
|
|
40
|
+
*/
|
|
41
|
+
static get url(): ValidatorFn;
|
|
42
|
+
/**
|
|
43
|
+
* Italian Tax Code validator
|
|
44
|
+
*/
|
|
45
|
+
static get taxCode(): ValidatorFn;
|
|
46
|
+
/**
|
|
47
|
+
* VAT Number validator
|
|
48
|
+
*/
|
|
49
|
+
static get vatNumber(): ValidatorFn;
|
|
50
|
+
/**
|
|
51
|
+
* Italian Postal Code validator (CAP)
|
|
52
|
+
*/
|
|
53
|
+
static get cap(): ValidatorFn;
|
|
54
|
+
/**
|
|
55
|
+
* Check if value is a valid RegExp
|
|
56
|
+
*/
|
|
57
|
+
static get regExp(): ValidatorFn;
|
|
58
|
+
}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "design-angular-kit",
|
|
3
3
|
"description": "Un toolkit Angular conforme alle linee guida di design per i servizi web della PA",
|
|
4
|
-
"version": "1.0.0-
|
|
5
|
-
"license": "
|
|
4
|
+
"version": "1.0.0-11",
|
|
5
|
+
"license": "BSD-3-Clause",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"angular",
|
|
8
8
|
"toolkit",
|
|
@@ -15,20 +15,29 @@
|
|
|
15
15
|
"type": "git",
|
|
16
16
|
"url": "https://github.com/italia/design-angular-kit.git"
|
|
17
17
|
},
|
|
18
|
+
"author": {
|
|
19
|
+
"name": "Antonino Bonanno",
|
|
20
|
+
"email": "bonanno@net-serv.it",
|
|
21
|
+
"url": "https://github.com/AntoninoBonanno"
|
|
22
|
+
},
|
|
23
|
+
"contributors": [
|
|
24
|
+
{
|
|
25
|
+
"name": "Net Service Srl",
|
|
26
|
+
"email": "areatecnica@net-serv.it",
|
|
27
|
+
"url": "https://www.net-serv.it/"
|
|
28
|
+
}
|
|
29
|
+
],
|
|
18
30
|
"dependencies": {
|
|
19
|
-
"
|
|
20
|
-
"@ng-bootstrap/ng-bootstrap": "13.0.0",
|
|
21
|
-
"@popperjs/core": "^2.10.2",
|
|
22
|
-
"bootstrap": "^5.2.0",
|
|
23
|
-
"tslib": "^2.0.0",
|
|
24
|
-
"io-ts": "^2.2.16",
|
|
25
|
-
"fp-ts": "^2.13.1"
|
|
31
|
+
"tslib": "^2.4.1"
|
|
26
32
|
},
|
|
27
33
|
"peerDependencies": {
|
|
28
|
-
"@angular/
|
|
29
|
-
"@angular/
|
|
30
|
-
"@angular/
|
|
31
|
-
"
|
|
34
|
+
"@angular/animations": "^15.0.4",
|
|
35
|
+
"@angular/common": "^15.0.4",
|
|
36
|
+
"@angular/core": "^15.0.4",
|
|
37
|
+
"@angular/platform-browser": "^15.0.4",
|
|
38
|
+
"@ngx-translate/core": "^14.0.0",
|
|
39
|
+
"@ngx-translate/http-loader": "^7.0.0",
|
|
40
|
+
"bootstrap-italia": "^2.3.5"
|
|
32
41
|
},
|
|
33
42
|
"module": "fesm2015/design-angular-kit.mjs",
|
|
34
43
|
"es2020": "fesm2020/design-angular-kit.mjs",
|
package/public_api.d.ts
CHANGED
|
@@ -1,36 +1,60 @@
|
|
|
1
|
-
export * from './lib/progress-bar/progress-bar.component';
|
|
2
|
-
export * from './lib/checkbox/checkbox.component';
|
|
3
|
-
export * from './lib/popover/popover.directive';
|
|
4
|
-
export * from './lib/popover/popover.config';
|
|
5
|
-
export * from './lib/popover/popover.module';
|
|
6
|
-
export * from './lib/toggle/toggle.component';
|
|
7
|
-
export * from './lib/radio/radio.component';
|
|
8
|
-
export * from './lib/tooltip/tooltip.directive';
|
|
9
|
-
export * from './lib/tooltip/tooltip.module';
|
|
10
|
-
export * from './lib/tooltip/tooltip.config';
|
|
11
|
-
export * from './lib/button/button.directive';
|
|
12
|
-
export * from './lib/button/button.module';
|
|
13
|
-
export * from './lib/badge/badge.directive';
|
|
14
|
-
export * from './lib/collapse/collapse.directive';
|
|
15
|
-
export * from './lib/collapse/collapse-item.component';
|
|
16
|
-
export * from './lib/collapse/collapse-group.component';
|
|
17
|
-
export * from './lib/collapse/collapse.module';
|
|
18
|
-
export * from './lib/form-input/form-input.component';
|
|
19
|
-
export * from './lib/form-input/it-prefix.directive';
|
|
20
|
-
export * from './lib/form-input/it-suffix.directive';
|
|
21
|
-
export * from './lib/form-input/it-text-suffix.directive';
|
|
22
|
-
export * from './lib/form-input/it-text-prefix.directive';
|
|
23
|
-
export * from './lib/dropdown/dropdown.component';
|
|
24
|
-
export * from './lib/dropdown/dropdown-item.component';
|
|
25
|
-
export * from './lib/dropdown/dropdown-divider.component';
|
|
26
|
-
export * from './lib/breadcrumb/breadcrumb.component';
|
|
27
|
-
export * from './lib/breadcrumb/breadcrumb-item.component';
|
|
28
|
-
export * from './lib/tabs/tab-group.component';
|
|
29
|
-
export * from './lib/icon/icon.component';
|
|
30
|
-
export * from './lib/icon/icon.module';
|
|
31
|
-
export * from './lib/dropdown/dropdown.directive';
|
|
32
|
-
export * from './lib/dropdown/dropdown.config';
|
|
33
|
-
export * from './lib/dropdown/dropdown.module';
|
|
34
|
-
export * from './lib/util/utils.module';
|
|
35
|
-
export * from './lib/util/focus-mouse.directive';
|
|
36
1
|
export * from './lib/design-angular-kit.module';
|
|
2
|
+
export * from './lib/components/components.module';
|
|
3
|
+
export * from './lib/components/core/accordion/accordion.component';
|
|
4
|
+
export * from './lib/components/core/alert/alert.component';
|
|
5
|
+
export * from './lib/components/core/badge/badge.directive';
|
|
6
|
+
export * from './lib/components/core/button/button.directive';
|
|
7
|
+
export * from './lib/components/core/callout/callout.component';
|
|
8
|
+
export * from './lib/components/core/card/card.component';
|
|
9
|
+
export * from './lib/components/core/carousel/carousel/carousel.component';
|
|
10
|
+
export * from './lib/components/core/carousel/carousel-item/carousel-item.component';
|
|
11
|
+
export * from './lib/components/core/chip/chip.component';
|
|
12
|
+
export * from './lib/components/core/collapse/collapse.component';
|
|
13
|
+
export * from './lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component';
|
|
14
|
+
export * from './lib/components/core/dimmer/dimmer.component';
|
|
15
|
+
export * from './lib/components/core/dimmer/dimmer-icon/dimmer-icon.component';
|
|
16
|
+
export * from './lib/components/core/dropdown/dropdown/dropdown.component';
|
|
17
|
+
export * from './lib/components/core/dropdown/dropdown-item/dropdown-item.component';
|
|
18
|
+
export * from './lib/components/core/forward/forward.directive';
|
|
19
|
+
export * from './lib/components/core/link/link.component';
|
|
20
|
+
export * from './lib/components/core/list/list/list.component';
|
|
21
|
+
export * from './lib/components/core/list/list-item/list-item.component';
|
|
22
|
+
export * from './lib/components/core/modal/modal.component';
|
|
23
|
+
export * from './lib/components/core/notifications/notifications.component';
|
|
24
|
+
export * from './lib/components/core/pagination/pagination.component';
|
|
25
|
+
export * from './lib/components/core/popover/popover.directive';
|
|
26
|
+
export * from './lib/components/core/progress-bar/progress-bar.component';
|
|
27
|
+
export * from './lib/components/core/progress-button/progress-button.component';
|
|
28
|
+
export * from './lib/components/core/rating/rating.component';
|
|
29
|
+
export * from './lib/components/core/spinner/spinner.component';
|
|
30
|
+
export * from './lib/components/core/steppers/steppers-container/steppers-container.component';
|
|
31
|
+
export * from './lib/components/core/steppers/steppers-item/steppers-item.component';
|
|
32
|
+
export * from './lib/components/core/tab/tab-container/tab-container.component';
|
|
33
|
+
export * from './lib/components/core/tab/tab-item/tab-item.component';
|
|
34
|
+
export * from './lib/components/core/table/table.component';
|
|
35
|
+
export * from './lib/components/core/tooltip/tooltip.directive';
|
|
36
|
+
export * from './lib/components/form/checkbox/checkbox.component';
|
|
37
|
+
export * from './lib/components/form/input/input.component';
|
|
38
|
+
export * from './lib/components/form/password-input/password-input.component';
|
|
39
|
+
export * from './lib/components/form/radio-button/radio-button.component';
|
|
40
|
+
export * from './lib/components/form/select/select.component';
|
|
41
|
+
export * from './lib/components/form/textarea/textarea.component';
|
|
42
|
+
export * from './lib/components/form/upload-drag-drop/upload-drag-drop.component';
|
|
43
|
+
export * from './lib/components/form/upload-file-list/upload-file-list.component';
|
|
44
|
+
export * from './lib/components/navigation/back-button/back-button.component';
|
|
45
|
+
export * from './lib/components/navigation/back-to-top/back-to-top.component';
|
|
46
|
+
export * from './lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component';
|
|
47
|
+
export * from './lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component';
|
|
48
|
+
export * from './lib/components/navigation/header/header.component';
|
|
49
|
+
export * from './lib/components/utils/icon/icon.component';
|
|
50
|
+
export * from './lib/components/utils/language-switcher/language-switcher.component';
|
|
51
|
+
export * from './lib/components/utils/not-found-page/not-found-page.component';
|
|
52
|
+
export * from './lib/services/notifications/notifications.service';
|
|
53
|
+
export * from './lib/pipes/mark-matching-text.pipe';
|
|
54
|
+
export * from './lib/interfaces/core';
|
|
55
|
+
export * from './lib/interfaces/form';
|
|
56
|
+
export * from './lib/interfaces/icon';
|
|
57
|
+
export * from './lib/interfaces/utils';
|
|
58
|
+
export * from './lib/utils/regex';
|
|
59
|
+
export * from './lib/utils/file-utils';
|
|
60
|
+
export * from './lib/validators/it-validators';
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { Directive, Input, HostBinding } from '@angular/core';
|
|
2
|
-
import { ThemeColor, THEME_COLORS } from '../models/ThemeColor';
|
|
3
|
-
import { Util } from '../util/util';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Una badge con design bootstrap italia.
|
|
7
|
-
*/
|
|
8
|
-
export class BadgeDirective {
|
|
9
|
-
constructor(el) {
|
|
10
|
-
this.el = el;
|
|
11
|
-
this._badgeColor = THEME_COLORS.LIGHT;
|
|
12
|
-
this._badgeText = '';
|
|
13
|
-
this._isPill = false;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* (Opzionale) indica il colore del badge. Può essere `primary`, `secondary`, `danger`, `warning`, `info`, `success`, `light` o `dark`.
|
|
17
|
-
* Se non viene fornito o il valore è diverso da quelli previsti il suo valore di default è `light`.
|
|
18
|
-
*/
|
|
19
|
-
get badgeColor() {
|
|
20
|
-
return this._badgeColor;
|
|
21
|
-
}
|
|
22
|
-
set badgeColor(value) {
|
|
23
|
-
if (ThemeColor.is(value)) {
|
|
24
|
-
this._badgeColor = value;
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
this._badgeColor = THEME_COLORS.LIGHT;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* La direttiva che abilita l'elemento come badge. Mostra il testo come contenuto del badge.
|
|
32
|
-
* Se valutato ad `undefined`, `null` o stringa vuota il badge non viene mostrato.
|
|
33
|
-
*/
|
|
34
|
-
get badgeText() { return this._badgeText; }
|
|
35
|
-
set badgeText(value) {
|
|
36
|
-
if (value) {
|
|
37
|
-
this._badgeText = value;
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
this._badgeText = '';
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Indica se il badge è arrotondato o meno.
|
|
45
|
-
*/
|
|
46
|
-
get isPill() { return this._isPill; }
|
|
47
|
-
set isPill(value) {
|
|
48
|
-
this._isPill = Util.coerceBooleanProperty(value);
|
|
49
|
-
}
|
|
50
|
-
getBadgeColorClassName() {
|
|
51
|
-
return `bg-${this._badgeColor}`;
|
|
52
|
-
}
|
|
53
|
-
get hostClasses() {
|
|
54
|
-
return [
|
|
55
|
-
'badge',
|
|
56
|
-
this.getBadgeColorClassName(),
|
|
57
|
-
this.isPill ? 'rounded-pill' : '',
|
|
58
|
-
].join(' ');
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
BadgeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BadgeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
62
|
-
BadgeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: BadgeDirective, selector: "[itBadge]", inputs: { badgeColor: "badgeColor", badgeText: ["itBadge", "badgeText"], isPill: "isPill" }, host: { properties: { "innerText": "this.badgeText", "class": "this.hostClasses" } }, exportAs: ["itBadge"], ngImport: i0 });
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BadgeDirective, decorators: [{
|
|
64
|
-
type: Directive,
|
|
65
|
-
args: [{
|
|
66
|
-
selector: '[itBadge]',
|
|
67
|
-
exportAs: 'itBadge'
|
|
68
|
-
}]
|
|
69
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { badgeColor: [{
|
|
70
|
-
type: Input
|
|
71
|
-
}], badgeText: [{
|
|
72
|
-
type: Input,
|
|
73
|
-
args: ['itBadge']
|
|
74
|
-
}, {
|
|
75
|
-
type: HostBinding,
|
|
76
|
-
args: ['innerText']
|
|
77
|
-
}], isPill: [{
|
|
78
|
-
type: Input
|
|
79
|
-
}], hostClasses: [{
|
|
80
|
-
type: HostBinding,
|
|
81
|
-
args: ['class']
|
|
82
|
-
}] } });
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvYmFkZ2UvYmFkZ2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRXBDOztHQUVHO0FBS0gsTUFBTSxPQUFPLGNBQWM7SUEwRHpCLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBekMxQixnQkFBVyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFnQmpDLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFFaEIsWUFBTyxHQUFHLEtBQUssQ0FBQztJQXVCYyxDQUFDO0lBeER2Qzs7O09BR0c7SUFDSCxJQUNJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLEtBQVU7UUFDdkIsSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1NBQzFCO2FBQU07WUFDTCxJQUFJLENBQUMsV0FBVyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7U0FDdkM7SUFDSCxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFFSSxTQUFTLEtBQWEsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNuRCxJQUFJLFNBQVMsQ0FBQyxLQUFhO1FBQ3pCLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7U0FDekI7YUFBTTtZQUNMLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQztJQUlEOztPQUVHO0lBQ0gsSUFDSSxNQUFNLEtBQWMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM5QyxJQUFJLE1BQU0sQ0FBQyxLQUFjO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsT0FBTyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLE9BQU87WUFDUCxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFO1NBQ2xDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsQ0FBQzs7NEdBeERVLGNBQWM7Z0dBQWQsY0FBYzs0RkFBZCxjQUFjO2tCQUoxQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxXQUFXO29CQUNyQixRQUFRLEVBQUUsU0FBUztpQkFDcEI7aUdBUUssVUFBVTtzQkFEYixLQUFLO2dCQW1CRixTQUFTO3NCQUZaLEtBQUs7dUJBQUMsU0FBUzs7c0JBQ2YsV0FBVzt1QkFBQyxXQUFXO2dCQWdCcEIsTUFBTTtzQkFEVCxLQUFLO2dCQVdGLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lQ29sb3IsIFRIRU1FX0NPTE9SUyB9IGZyb20gJy4uL21vZGVscy9UaGVtZUNvbG9yJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi91dGlsL3V0aWwnO1xuXG4vKipcbiAqIFVuYSBiYWRnZSBjb24gZGVzaWduIGJvb3RzdHJhcCBpdGFsaWEuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tpdEJhZGdlXScsIC8vIHRzbGludDpkaXNhYmxlLWxpbmVcbiAgZXhwb3J0QXM6ICdpdEJhZGdlJ1xufSlcbmV4cG9ydCBjbGFzcyBCYWRnZURpcmVjdGl2ZSB7XG5cbiAgLyoqXG4gICAqIChPcHppb25hbGUpIGluZGljYSBpbCBjb2xvcmUgZGVsIGJhZGdlLiBQdcOyIGVzc2VyZSBgcHJpbWFyeWAsIGBzZWNvbmRhcnlgLCBgZGFuZ2VyYCwgYHdhcm5pbmdgLCBgaW5mb2AsIGBzdWNjZXNzYCwgYGxpZ2h0YCBvIGBkYXJrYC5cbiAgICogU2Ugbm9uIHZpZW5lIGZvcm5pdG8gbyBpbCB2YWxvcmUgw6ggZGl2ZXJzbyBkYSBxdWVsbGkgcHJldmlzdGkgaWwgc3VvIHZhbG9yZSBkaSBkZWZhdWx0IMOoIGBsaWdodGAuXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgYmFkZ2VDb2xvcigpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9iYWRnZUNvbG9yO1xuICB9XG4gIHNldCBiYWRnZUNvbG9yKHZhbHVlOiBhbnkpIHtcbiAgICBpZiAoVGhlbWVDb2xvci5pcyh2YWx1ZSkpIHtcbiAgICAgIHRoaXMuX2JhZGdlQ29sb3IgPSB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fYmFkZ2VDb2xvciA9IFRIRU1FX0NPTE9SUy5MSUdIVDtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfYmFkZ2VDb2xvciA9IFRIRU1FX0NPTE9SUy5MSUdIVDtcblxuICAvKipcbiAgICogTGEgZGlyZXR0aXZhIGNoZSBhYmlsaXRhIGwnZWxlbWVudG8gY29tZSBiYWRnZS4gTW9zdHJhIGlsIHRlc3RvIGNvbWUgY29udGVudXRvIGRlbCBiYWRnZS5cbiAgICogU2UgdmFsdXRhdG8gYWQgYHVuZGVmaW5lZGAsIGBudWxsYCBvIHN0cmluZ2EgdnVvdGEgaWwgYmFkZ2Ugbm9uIHZpZW5lIG1vc3RyYXRvLlxuICAgKi9cbiAgQElucHV0KCdpdEJhZGdlJylcbiAgQEhvc3RCaW5kaW5nKCdpbm5lclRleHQnKVxuICBnZXQgYmFkZ2VUZXh0KCk6IHN0cmluZyB7IHJldHVybiB0aGlzLl9iYWRnZVRleHQ7IH1cbiAgc2V0IGJhZGdlVGV4dCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLl9iYWRnZVRleHQgPSB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fYmFkZ2VUZXh0ID0gJyc7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2JhZGdlVGV4dCA9ICcnO1xuXG4gIHByaXZhdGUgX2lzUGlsbCA9IGZhbHNlO1xuICAvKipcbiAgICogSW5kaWNhIHNlIGlsIGJhZGdlIMOoIGFycm90b25kYXRvIG8gbWVuby5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBpc1BpbGwoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9pc1BpbGw7IH1cbiAgc2V0IGlzUGlsbCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2lzUGlsbCA9IFV0aWwuY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QmFkZ2VDb2xvckNsYXNzTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgYmctJHt0aGlzLl9iYWRnZUNvbG9yfWA7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtcbiAgICAgICdiYWRnZScsXG4gICAgICB0aGlzLmdldEJhZGdlQ29sb3JDbGFzc05hbWUoKSxcbiAgICAgIHRoaXMuaXNQaWxsID8gJ3JvdW5kZWQtcGlsbCcgOiAnJyxcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHsgfVxuXG59XG4iXX0=
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "../util/focus-mouse.directive";
|
|
5
|
-
import * as i3 from "../icon/icon.component";
|
|
6
|
-
let identifier = 0;
|
|
7
|
-
export class BreadcrumbItemComponent {
|
|
8
|
-
constructor(_cdRef, _elemRef) {
|
|
9
|
-
this._cdRef = _cdRef;
|
|
10
|
-
this._elemRef = _elemRef;
|
|
11
|
-
this.id = `it-breadcrumb-item-${identifier++}`;
|
|
12
|
-
this._isLast = false;
|
|
13
|
-
this.customClass = '';
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Il link alla pagina verso cui andare al click di questo elemento del breadcrumb
|
|
17
|
-
*/
|
|
18
|
-
get link() { return this._link; }
|
|
19
|
-
set link(value) { this._link = value; }
|
|
20
|
-
/**
|
|
21
|
-
* La classe dell'icona da usare prima del testo dell'elemento del breadcrumb
|
|
22
|
-
*/
|
|
23
|
-
get icon() { return this._icon; }
|
|
24
|
-
set icon(value) { this._icon = value; }
|
|
25
|
-
get iconColor() { return this._iconColor; }
|
|
26
|
-
set iconColor(value) {
|
|
27
|
-
if (this._iconColor !== value) {
|
|
28
|
-
this._iconColor = value;
|
|
29
|
-
this._cdRef.detectChanges();
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
get separator() { return this._separator; }
|
|
33
|
-
set separator(value) { this._separator = value; }
|
|
34
|
-
get isLast() { return this._isLast; }
|
|
35
|
-
set isLast(value) {
|
|
36
|
-
this._isLast = value;
|
|
37
|
-
const breadcrumbItem = this._elemRef.nativeElement.querySelector('.breadcrumb-item');
|
|
38
|
-
if (this._isLast) {
|
|
39
|
-
breadcrumbItem.setAttribute('aria-current', 'page');
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
if (breadcrumbItem.hasAttribute('aria-current')) {
|
|
43
|
-
breadcrumbItem.removeAttribute('aria-current');
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
this._cdRef.detectChanges();
|
|
47
|
-
}
|
|
48
|
-
get breadcrumbClass() {
|
|
49
|
-
return 'breadcrumb-item ' + (this.customClass ?? '') + (this.isLast ? ' active' : '');
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
BreadcrumbItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BreadcrumbItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
-
BreadcrumbItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: BreadcrumbItemComponent, selector: "it-breadcrumb-item", inputs: { link: "link", icon: "icon", iconColor: "iconColor", customClass: "customClass" }, ngImport: i0, template: "<li [class]=\"breadcrumbClass\" [id]=\"id\">\n <it-icon [icon] = \"icon\" [color] = \"iconColor\"></it-icon>\n\n <a [href]=\"link\" focusMouse>\n <ng-content></ng-content>\n </a> \n <span class=\"separator\" *ngIf=\"!isLast\">{{separator}}</span>\n</li>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.FocusMouseDirective, selector: "[focusMouse]", exportAs: ["focusMouse"] }, { kind: "component", type: i3.IconComponent, selector: "it-icon", inputs: ["rounded", "roundedColor", "icon", "wai", "size", "color", "bgColor", "padded", "expand", "position", "verticalAlign"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BreadcrumbItemComponent, decorators: [{
|
|
55
|
-
type: Component,
|
|
56
|
-
args: [{ selector: 'it-breadcrumb-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<li [class]=\"breadcrumbClass\" [id]=\"id\">\n <it-icon [icon] = \"icon\" [color] = \"iconColor\"></it-icon>\n\n <a [href]=\"link\" focusMouse>\n <ng-content></ng-content>\n </a> \n <span class=\"separator\" *ngIf=\"!isLast\">{{separator}}</span>\n</li>\n" }]
|
|
57
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { link: [{
|
|
58
|
-
type: Input
|
|
59
|
-
}], icon: [{
|
|
60
|
-
type: Input
|
|
61
|
-
}], iconColor: [{
|
|
62
|
-
type: Input
|
|
63
|
-
}], customClass: [{
|
|
64
|
-
type: Input
|
|
65
|
-
}] } });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFjLHVCQUF1QixFQUFxQixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFFakgsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBUW5CLE1BQU0sT0FBTyx1QkFBdUI7SUFHbEMsWUFBb0IsTUFBeUIsRUFBVSxRQUFvQjtRQUF2RCxXQUFNLEdBQU4sTUFBTSxDQUFtQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVk7UUFGM0UsT0FBRSxHQUFHLHNCQUFzQixVQUFVLEVBQUUsRUFBRSxDQUFDO1FBK0NsQyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRWYsZ0JBQVcsR0FBVyxFQUFFLENBQUM7SUEvQzZDLENBQUM7SUFFaEY7O09BRUc7SUFDSCxJQUNJLElBQUksS0FBYSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLElBQUksSUFBSSxDQUFDLEtBQWEsSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFHL0M7O09BRUc7SUFDSCxJQUNJLElBQUksS0FBYSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLElBQUksSUFBSSxDQUFDLEtBQWEsSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFHL0MsSUFDSSxTQUFTLEtBQWEsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNuRCxJQUFJLFNBQVMsQ0FBQyxLQUFhO1FBQ3pCLElBQUcsSUFBSSxDQUFDLFVBQVUsS0FBSyxLQUFLLEVBQUU7WUFDNUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7WUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFHRCxJQUFJLFNBQVMsS0FBYSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ25ELElBQUksU0FBUyxDQUFDLEtBQWEsSUFBSSxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFHekQsSUFBSSxNQUFNLEtBQWMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM5QyxJQUFJLE1BQU0sQ0FBQyxLQUFjO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3JGLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixjQUFjLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNyRDthQUFNO1lBQ0wsSUFBSSxjQUFjLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUMvQyxjQUFjLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ2hEO1NBQ0Y7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFLRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxrQkFBa0IsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7O3FIQXREVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixzSkNWcEMsd1FBUUE7NEZERWEsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNFLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNO2lJQVczQyxJQUFJO3NCQURQLEtBQUs7Z0JBU0YsSUFBSTtzQkFEUCxLQUFLO2dCQU1GLFNBQVM7c0JBRFosS0FBSztnQkE2QkcsV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgRWxlbWVudFJlZiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmxldCBpZGVudGlmaWVyID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXQtYnJlYWRjcnVtYi1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JyZWFkY3J1bWItaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JyZWFkY3J1bWItaXRlbS5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEJyZWFkY3J1bWJJdGVtQ29tcG9uZW50IHtcbiAgaWQgPSBgaXQtYnJlYWRjcnVtYi1pdGVtLSR7aWRlbnRpZmllcisrfWA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLCBwcml2YXRlIF9lbGVtUmVmOiBFbGVtZW50UmVmKSB7IH1cblxuICAvKipcbiAgICogSWwgbGluayBhbGxhIHBhZ2luYSB2ZXJzbyBjdWkgYW5kYXJlIGFsIGNsaWNrIGRpIHF1ZXN0byBlbGVtZW50byBkZWwgYnJlYWRjcnVtYlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGxpbmsoKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuX2xpbms7IH1cbiAgc2V0IGxpbmsodmFsdWU6IHN0cmluZykgeyB0aGlzLl9saW5rID0gdmFsdWU7IH1cbiAgcHJpdmF0ZSBfbGluazogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMYSBjbGFzc2UgZGVsbCdpY29uYSBkYSB1c2FyZSBwcmltYSBkZWwgdGVzdG8gZGVsbCdlbGVtZW50byBkZWwgYnJlYWRjcnVtYlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGljb24oKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuX2ljb247IH1cbiAgc2V0IGljb24odmFsdWU6IHN0cmluZykgeyB0aGlzLl9pY29uID0gdmFsdWU7IH1cbiAgcHJpdmF0ZSBfaWNvbjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBpY29uQ29sb3IoKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuX2ljb25Db2xvcjsgfVxuICBzZXQgaWNvbkNvbG9yKHZhbHVlOiBzdHJpbmcpIHsgXG4gICAgaWYodGhpcy5faWNvbkNvbG9yICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy5faWNvbkNvbG9yID0gdmFsdWU7XG4gICAgICB0aGlzLl9jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2ljb25Db2xvcjogc3RyaW5nO1xuXG4gIGdldCBzZXBhcmF0b3IoKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuX3NlcGFyYXRvcjsgfVxuICBzZXQgc2VwYXJhdG9yKHZhbHVlOiBzdHJpbmcpIHsgdGhpcy5fc2VwYXJhdG9yID0gdmFsdWU7IH1cbiAgcHJpdmF0ZSBfc2VwYXJhdG9yOiBzdHJpbmc7XG5cbiAgZ2V0IGlzTGFzdCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2lzTGFzdDsgfVxuICBzZXQgaXNMYXN0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNMYXN0ID0gdmFsdWU7XG4gICAgY29uc3QgYnJlYWRjcnVtYkl0ZW0gPSB0aGlzLl9lbGVtUmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLmJyZWFkY3J1bWItaXRlbScpO1xuICAgIGlmICh0aGlzLl9pc0xhc3QpIHtcbiAgICAgIGJyZWFkY3J1bWJJdGVtLnNldEF0dHJpYnV0ZSgnYXJpYS1jdXJyZW50JywgJ3BhZ2UnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGJyZWFkY3J1bWJJdGVtLmhhc0F0dHJpYnV0ZSgnYXJpYS1jdXJyZW50JykpIHtcbiAgICAgICAgYnJlYWRjcnVtYkl0ZW0ucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWN1cnJlbnQnKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG4gIHByaXZhdGUgX2lzTGFzdCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzOiBzdHJpbmcgPSAnJztcblxuICBnZXQgYnJlYWRjcnVtYkNsYXNzKCkge1xuICAgIHJldHVybiAnYnJlYWRjcnVtYi1pdGVtICcgKyAodGhpcy5jdXN0b21DbGFzcyA/PyAnJykgKyAodGhpcy5pc0xhc3QgPyAnIGFjdGl2ZScgOiAnJyk7XG4gIH1cblxufVxuIiwiPGxpIFtjbGFzc109XCJicmVhZGNydW1iQ2xhc3NcIiBbaWRdPVwiaWRcIj5cbiAgPGl0LWljb24gW2ljb25dID0gXCJpY29uXCIgW2NvbG9yXSA9IFwiaWNvbkNvbG9yXCI+PC9pdC1pY29uPlxuXG4gIDxhIFtocmVmXT1cImxpbmtcIiBmb2N1c01vdXNlPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9hPiBcbiAgPHNwYW4gY2xhc3M9XCJzZXBhcmF0b3JcIiAqbmdJZj1cIiFpc0xhc3RcIj57e3NlcGFyYXRvcn19PC9zcGFuPlxuPC9saT5cbiJdfQ==
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ContentChildren, forwardRef, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import { BreadcrumbItemComponent } from './breadcrumb-item.component';
|
|
3
|
-
import { Util } from '../util/util';
|
|
4
|
-
import { Subscription } from 'rxjs';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/common";
|
|
7
|
-
const DEFAULT_SEPARATOR = '/';
|
|
8
|
-
let identifier = 0;
|
|
9
|
-
/**
|
|
10
|
-
* Una componente che indica la posizione della pagina corrente all’interno di una gerarchia di navigazione
|
|
11
|
-
*/
|
|
12
|
-
export class BreadcrumbComponent {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.id = `it-breadcrumb-${identifier++}`;
|
|
15
|
-
this._dark = false;
|
|
16
|
-
this._separator = DEFAULT_SEPARATOR;
|
|
17
|
-
this.customClass = '';
|
|
18
|
-
this.ariaLabel = 'breadcrumb';
|
|
19
|
-
this._subscription = Subscription.EMPTY;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Indica che il breadcrumb utilizza il tema di colorazione scura.
|
|
23
|
-
* Accetta una espressione booleana o può essere usato come attributo senza valore
|
|
24
|
-
*/
|
|
25
|
-
get dark() { return this._dark; }
|
|
26
|
-
set dark(value) {
|
|
27
|
-
this._dark = Util.coerceBooleanProperty(value);
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Il carattere che verrà usato come separatore tra gli elementi del breadcrumb
|
|
31
|
-
*/
|
|
32
|
-
get separator() { return this._separator; }
|
|
33
|
-
set separator(value) { this._separator = value ? value : DEFAULT_SEPARATOR; }
|
|
34
|
-
get breadcrumbClass() {
|
|
35
|
-
return 'breadcrumb ' + (this.customClass ?? '') + (this._dark ? ' dark' : '');
|
|
36
|
-
}
|
|
37
|
-
ngAfterContentInit() {
|
|
38
|
-
this._reloadBreadcrumbs(this._items);
|
|
39
|
-
}
|
|
40
|
-
ngOnChanges(changes) {
|
|
41
|
-
if (changes['separator']) {
|
|
42
|
-
if (!changes['separator'].firstChange) {
|
|
43
|
-
this._reloadBreadcrumbs(this._items);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
else if (changes['dark']) {
|
|
47
|
-
this._reloadBreadcrumbs(this._items);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
ngOnDestroy() {
|
|
51
|
-
if (this._subscription) {
|
|
52
|
-
this._subscription.unsubscribe();
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
_reloadBreadcrumbs(currentItems) {
|
|
56
|
-
currentItems.forEach(item => {
|
|
57
|
-
item.separator = this.separator;
|
|
58
|
-
item.isLast = (item === currentItems.last);
|
|
59
|
-
item.iconColor = item.iconColor || (this._dark ? 'white' : 'primary');
|
|
60
|
-
});
|
|
61
|
-
this._subscribeToChanges();
|
|
62
|
-
}
|
|
63
|
-
_subscribeToChanges() {
|
|
64
|
-
if (this._subscription) {
|
|
65
|
-
this._subscription.unsubscribe();
|
|
66
|
-
}
|
|
67
|
-
this._subscription = this._items.changes.subscribe(items => {
|
|
68
|
-
this._reloadBreadcrumbs(items);
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
BreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
73
|
-
BreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: BreadcrumbComponent, selector: "it-breadcrumb", inputs: { dark: "dark", separator: "separator", customClass: "customClass", ariaLabel: "ariaLabel" }, queries: [{ propertyName: "_items", predicate: i0.forwardRef(function () { return BreadcrumbItemComponent; }), descendants: true }], usesOnChanges: true, ngImport: i0, template: "<nav class=\"breadcrumb-container\" [attr.aria-label]=\"ariaLabel\" [id]=\"id\">\n <ol [ngClass]=\"breadcrumbClass\">\n <ng-content></ng-content>\n </ol>\n</nav>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: BreadcrumbComponent, decorators: [{
|
|
75
|
-
type: Component,
|
|
76
|
-
args: [{ selector: 'it-breadcrumb', changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav class=\"breadcrumb-container\" [attr.aria-label]=\"ariaLabel\" [id]=\"id\">\n <ol [ngClass]=\"breadcrumbClass\">\n <ng-content></ng-content>\n </ol>\n</nav>" }]
|
|
77
|
-
}], propDecorators: { dark: [{
|
|
78
|
-
type: Input
|
|
79
|
-
}], separator: [{
|
|
80
|
-
type: Input
|
|
81
|
-
}], _items: [{
|
|
82
|
-
type: ContentChildren,
|
|
83
|
-
args: [forwardRef(() => BreadcrumbItemComponent), { descendants: true }]
|
|
84
|
-
}], customClass: [{
|
|
85
|
-
type: Input
|
|
86
|
-
}], ariaLabel: [{
|
|
87
|
-
type: Input
|
|
88
|
-
}] } });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBYSxVQUFVLEVBQ0QsdUJBQXVCLEVBQy9FLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBRXBDLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxDQUFDO0FBQzlCLElBQUksVUFBVSxHQUFHLENBQUMsQ0FBQztBQUVuQjs7R0FFRztBQU9ILE1BQU0sT0FBTyxtQkFBbUI7SUFOaEM7UUFPRSxPQUFFLEdBQUcsaUJBQWlCLFVBQVUsRUFBRSxFQUFFLENBQUM7UUFXN0IsVUFBSyxHQUFHLEtBQUssQ0FBQztRQVFkLGVBQVUsR0FBRyxpQkFBaUIsQ0FBQztRQU12QyxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUd6QixjQUFTLEdBQVcsWUFBWSxDQUFDO1FBTXpCLGtCQUFhLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztLQTJDNUM7SUEzRUM7OztPQUdHO0lBQ0gsSUFDSSxJQUFJLEtBQWMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMxQyxJQUFJLElBQUksQ0FBQyxLQUFjO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdB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bGRyZW4sIFF1ZXJ5TGlzdCwgZm9yd2FyZFJlZixcbiAgQWZ0ZXJDb250ZW50SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIFNpbXBsZUNoYW5nZXMsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2JyZWFkY3J1bWItaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uL3V0aWwvdXRpbCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuY29uc3QgREVGQVVMVF9TRVBBUkFUT1IgPSAnLyc7XG5sZXQgaWRlbnRpZmllciA9IDA7XG5cbi8qKlxuICogVW5hIGNvbXBvbmVudGUgY2hlIGluZGljYSBsYSBwb3NpemlvbmUgZGVsbGEgcGFnaW5hIGNvcnJlbnRlIGFsbOKAmWludGVybm8gZGkgdW5hIGdlcmFyY2hpYSBkaSBuYXZpZ2F6aW9uZVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpdC1icmVhZGNydW1iJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JyZWFkY3J1bWIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9icmVhZGNydW1iLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQnJlYWRjcnVtYkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgaWQgPSBgaXQtYnJlYWRjcnVtYi0ke2lkZW50aWZpZXIrK31gO1xuXG4gIC8qKlxuICAgKiBJbmRpY2EgY2hlIGlsIGJyZWFkY3J1bWIgdXRpbGl6emEgaWwgdGVtYSBkaSBjb2xvcmF6aW9uZSBzY3VyYS5cbiAgICogQWNjZXR0YSB1bmEgZXNwcmVzc2lvbmUgYm9vbGVhbmEgbyBwdcOyIGVzc2VyZSB1c2F0byBjb21lIGF0dHJpYnV0byBzZW56YSB2YWxvcmVcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBkYXJrKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGFyazsgfVxuICBzZXQgZGFyayh2YWx1ZTogYm9vbGVhbikgeyBcbiAgICB0aGlzLl9kYXJrID0gVXRpbC5jb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyBcbiAgfVxuICBwcml2YXRlIF9kYXJrID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElsIGNhcmF0dGVyZSBjaGUgdmVycsOgIHVzYXRvIGNvbWUgc2VwYXJhdG9yZSB0cmEgZ2xpIGVsZW1lbnRpIGRlbCBicmVhZGNydW1iXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgc2VwYXJhdG9yKCk6IHN0cmluZyB7IHJldHVybiB0aGlzLl9zZXBhcmF0b3I7IH1cbiAgc2V0IHNlcGFyYXRvcih2YWx1ZTogc3RyaW5nKSB7IHRoaXMuX3NlcGFyYXRvciA9IHZhbHVlID8gdmFsdWUgOiBERUZBVUxUX1NFUEFSQVRPUjsgfVxuICBwcml2YXRlIF9zZXBhcmF0b3IgPSBERUZBVUxUX1NFUEFSQVRPUjtcblxuICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gQnJlYWRjcnVtYkl0ZW1Db21wb25lbnQpLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHByaXZhdGUgX2l0ZW1zOiBRdWVyeUxpc3Q8QnJlYWRjcnVtYkl0ZW1Db21wb25lbnQ+O1xuXG4gIEBJbnB1dCgpIFxuICBjdXN0b21DbGFzczogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgXG4gIGFyaWFMYWJlbDogc3RyaW5nID0gJ2JyZWFkY3J1bWInO1xuXG4gIGdldCBicmVhZGNydW1iQ2xhc3MoKSB7XG4gICAgcmV0dXJuICdicmVhZGNydW1iICcgKyAodGhpcy5jdXN0b21DbGFzcyA/PyAnJykgKyAodGhpcy5fZGFyayA/ICcgZGFyaycgOiAnJyk7XG4gIH1cblxuICBwcml2YXRlIF9zdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMuX3JlbG9hZEJyZWFkY3J1bWJzKHRoaXMuX2l0ZW1zKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snc2VwYXJhdG9yJ10pIHtcbiAgICAgIGlmICghY2hhbmdlc1snc2VwYXJhdG9yJ10uZmlyc3RDaGFuZ2UpIHtcbiAgICAgICAgdGhpcy5fcmVsb2FkQnJlYWRjcnVtYnModGhpcy5faXRlbXMpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoY2hhbmdlc1snZGFyayddKSB7XG4gICAgICB0aGlzLl9yZWxvYWRCcmVhZGNydW1icyh0aGlzLl9pdGVtcyk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuX3N1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVsb2FkQnJlYWRjcnVtYnMoY3VycmVudEl0ZW1zOiBRdWVyeUxpc3Q8QnJlYWRjcnVtYkl0ZW1Db21wb25lbnQ+KSB7XG4gICAgY3VycmVudEl0ZW1zLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICBpdGVtLnNlcGFyYXRvciA9IHRoaXMuc2VwYXJhdG9yO1xuICAgICAgaXRlbS5pc0xhc3QgPSAoaXRlbSA9PT0gY3VycmVudEl0ZW1zLmxhc3QpO1xuICAgICAgaXRlbS5pY29uQ29sb3IgPSBpdGVtLmljb25Db2xvciB8fCAodGhpcy5fZGFyayA/ICd3aGl0ZScgOiAncHJpbWFyeScpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fc3Vic2NyaWJlVG9DaGFuZ2VzKCk7XG4gIH1cblxuXG4gIHByaXZhdGUgX3N1YnNjcmliZVRvQ2hhbmdlcygpIHtcbiAgICBpZiAodGhpcy5fc3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSB0aGlzLl9pdGVtcy5jaGFuZ2VzLnN1YnNjcmliZShpdGVtcyA9PiB7XG4gICAgICB0aGlzLl9yZWxvYWRCcmVhZGNydW1icyhpdGVtcyk7XG4gICAgfSk7XG4gIH1cblxufVxuIiwiPG5hdiBjbGFzcz1cImJyZWFkY3J1bWItY29udGFpbmVyXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIiBbaWRdPVwiaWRcIj5cbiAgPG9sIFtuZ0NsYXNzXT1cImJyZWFkY3J1bWJDbGFzc1wiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9vbD5cbjwvbmF2PiJdfQ==
|