design-angular-kit 1.0.0-15 → 1.0.0-17
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 +52 -1
- package/esm2022/lib/abstracts/abstract-form.component.mjs +187 -0
- package/esm2022/lib/abstracts/abstract.component.mjs +46 -0
- package/esm2022/lib/components/components.module.mjs +189 -0
- package/esm2022/lib/components/core/accordion/accordion.component.mjs +39 -0
- package/esm2022/lib/components/core/alert/alert.component.mjs +75 -0
- package/esm2022/lib/components/core/badge/badge.directive.mjs +39 -0
- package/esm2022/lib/components/core/button/button.directive.mjs +86 -0
- package/esm2022/lib/components/core/callout/callout.component.mjs +58 -0
- package/esm2022/lib/components/core/card/card.component.mjs +65 -0
- package/esm2022/lib/components/core/carousel/carousel/carousel.component.mjs +90 -0
- package/esm2022/lib/components/core/carousel/carousel-item/carousel-item.component.mjs +20 -0
- package/esm2022/lib/components/core/carousel/carousel.module.mjs +24 -0
- package/esm2022/lib/components/core/chip/chip.component.mjs +97 -0
- package/esm2022/lib/components/core/collapse/collapse.component.mjs +102 -0
- package/esm2022/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.mjs +25 -0
- package/esm2022/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.mjs +12 -0
- package/esm2022/lib/components/core/dimmer/dimmer.component.mjs +60 -0
- package/esm2022/lib/components/core/dimmer/dimmer.module.mjs +28 -0
- package/esm2022/lib/components/core/dropdown/dropdown/dropdown.component.mjs +144 -0
- package/esm2022/lib/components/core/dropdown/dropdown-item/dropdown-item.component.mjs +69 -0
- package/esm2022/lib/components/core/dropdown/dropdown.module.mjs +19 -0
- package/esm2022/lib/components/core/forward/forward.directive.mjs +54 -0
- package/esm2022/lib/components/core/link/link.component.mjs +47 -0
- package/esm2022/lib/components/core/list/list/list.component.mjs +18 -0
- package/esm2022/lib/components/core/list/list-item/list-item.component.mjs +41 -0
- package/esm2022/lib/components/core/list/list.module.mjs +24 -0
- package/esm2022/lib/components/core/modal/modal.component.mjs +165 -0
- package/esm2022/lib/components/core/notifications/notifications.component.mjs +112 -0
- package/esm2022/lib/components/core/pagination/pagination.component.mjs +134 -0
- package/esm2022/lib/components/core/popover/popover.directive.mjs +176 -0
- package/esm2022/lib/components/core/progress-bar/progress-bar.component.mjs +36 -0
- package/esm2022/lib/components/core/progress-button/progress-button.component.mjs +28 -0
- package/esm2022/lib/components/core/spinner/spinner.component.mjs +37 -0
- package/esm2022/lib/components/core/steppers/steppers-container/steppers-container.component.mjs +139 -0
- package/esm2022/lib/components/core/steppers/steppers-item/steppers-item.component.mjs +20 -0
- package/esm2022/lib/components/core/steppers/steppers.module.mjs +24 -0
- package/esm2022/lib/components/core/tab/tab-container/tab-container.component.mjs +61 -0
- package/esm2022/lib/components/core/tab/tab-item/tab-item.component.mjs +37 -0
- package/esm2022/lib/components/core/tab/tab.module.mjs +24 -0
- package/esm2022/lib/components/core/table/table.component.mjs +58 -0
- package/esm2022/lib/components/core/tooltip/tooltip.directive.mjs +143 -0
- package/esm2022/lib/components/form/checkbox/checkbox.component.mjs +42 -0
- package/esm2022/lib/components/form/form.module.mjs +52 -0
- package/esm2022/lib/components/form/input/input.component.mjs +237 -0
- package/esm2022/lib/components/form/password-input/password-input.component.mjs +156 -0
- package/esm2022/lib/components/form/radio-button/radio-button.component.mjs +70 -0
- package/esm2022/lib/components/form/rating/rating.component.mjs +52 -0
- package/esm2022/lib/components/form/select/select.component.mjs +69 -0
- package/esm2022/lib/components/form/textarea/textarea.component.mjs +48 -0
- package/esm2022/lib/components/form/upload-drag-drop/upload-drag-drop.component.mjs +141 -0
- package/esm2022/lib/components/form/upload-file-list/upload-file-list.component.mjs +106 -0
- package/esm2022/lib/components/navigation/back-button/back-button.component.mjs +72 -0
- package/esm2022/lib/components/navigation/back-to-top/back-to-top.component.mjs +65 -0
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.mjs +58 -0
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +24 -0
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumbs.module.mjs +19 -0
- package/esm2022/lib/components/navigation/header/header.component.mjs +59 -0
- package/esm2022/lib/components/utils/error-page/error-page.component.mjs +82 -0
- package/esm2022/lib/components/utils/icon/icon.component.mjs +56 -0
- package/esm2022/lib/components/utils/language-switcher/language-switcher.component.mjs +42 -0
- package/esm2022/lib/design-angular-kit-config.mjs +15 -0
- package/esm2022/lib/design-angular-kit.module.mjs +69 -0
- package/esm2022/lib/interfaces/design-angular-kit-init.mjs +2 -0
- package/{esm2020 → esm2022}/lib/interfaces/form.mjs +1 -1
- package/esm2022/lib/pipes/mark-matching-text.pipe.mjs +38 -0
- package/esm2022/lib/services/notification/notification.service.mjs +121 -0
- package/esm2022/lib/utils/file-utils.mjs +73 -0
- package/esm2022/lib/validators/it-validators.mjs +148 -0
- package/esm2022/public_api.mjs +84 -0
- package/fesm2022/design-angular-kit.mjs +4522 -0
- package/fesm2022/design-angular-kit.mjs.map +1 -0
- package/lib/abstracts/abstract-form.component.d.ts +4 -4
- package/lib/abstracts/abstract.component.d.ts +3 -3
- package/lib/components/components.module.d.ts +32 -52
- package/lib/components/core/accordion/accordion.component.d.ts +6 -5
- package/lib/components/core/alert/alert.component.d.ts +5 -5
- package/lib/components/core/badge/badge.directive.d.ts +5 -5
- package/lib/components/core/button/button.directive.d.ts +11 -11
- package/lib/components/core/callout/callout.component.d.ts +7 -7
- package/lib/components/core/card/card.component.d.ts +8 -8
- package/lib/components/core/carousel/carousel/carousel.component.d.ts +10 -10
- package/lib/components/core/carousel/carousel-item/carousel-item.component.d.ts +4 -4
- package/lib/components/core/carousel/carousel.module.d.ts +8 -0
- package/lib/components/core/chip/chip.component.d.ts +6 -3
- package/lib/components/core/collapse/collapse.component.d.ts +8 -8
- package/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.d.ts +3 -3
- package/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.d.ts +3 -3
- package/lib/components/core/dimmer/dimmer.component.d.ts +4 -4
- package/lib/components/core/dimmer/dimmer.module.d.ts +9 -0
- package/lib/components/core/dropdown/dropdown/dropdown.component.d.ts +14 -9
- package/lib/components/core/dropdown/dropdown-item/dropdown-item.component.d.ts +8 -8
- package/lib/components/core/dropdown/dropdown.module.d.ts +8 -0
- package/lib/components/core/forward/forward.directive.d.ts +3 -3
- package/lib/components/core/link/link.component.d.ts +9 -8
- package/lib/components/core/list/list/list.component.d.ts +4 -4
- package/lib/components/core/list/list-item/list-item.component.d.ts +9 -9
- package/lib/components/core/list/list.module.d.ts +8 -0
- package/lib/components/core/modal/modal.component.d.ts +11 -11
- package/lib/components/core/notifications/notifications.component.d.ts +6 -6
- package/lib/components/core/pagination/pagination.component.d.ts +8 -8
- package/lib/components/core/popover/popover.directive.d.ts +3 -3
- package/lib/components/core/progress-bar/progress-bar.component.d.ts +6 -6
- package/lib/components/core/progress-button/progress-button.component.d.ts +5 -5
- package/lib/components/core/spinner/spinner.component.d.ts +5 -5
- package/lib/components/core/steppers/steppers-container/steppers-container.component.d.ts +37 -13
- package/lib/components/core/steppers/steppers-item/steppers-item.component.d.ts +5 -5
- package/lib/components/core/steppers/steppers.module.d.ts +8 -0
- package/lib/components/core/tab/tab-container/tab-container.component.d.ts +9 -9
- package/lib/components/core/tab/tab-item/tab-item.component.d.ts +8 -8
- package/lib/components/core/tab/tab.module.d.ts +8 -0
- package/lib/components/core/table/table.component.d.ts +12 -12
- package/lib/components/core/tooltip/tooltip.directive.d.ts +3 -3
- package/lib/components/form/checkbox/checkbox.component.d.ts +9 -9
- package/lib/components/form/form.module.d.ts +15 -0
- package/lib/components/form/input/input.component.d.ts +28 -12
- package/lib/components/form/password-input/password-input.component.d.ts +11 -6
- package/lib/components/form/radio-button/radio-button.component.d.ts +6 -6
- package/lib/components/form/rating/rating.component.d.ts +24 -0
- package/lib/components/form/select/select.component.d.ts +6 -6
- package/lib/components/form/textarea/textarea.component.d.ts +5 -5
- package/lib/components/form/upload-drag-drop/upload-drag-drop.component.d.ts +4 -4
- package/lib/components/form/upload-file-list/upload-file-list.component.d.ts +6 -6
- package/lib/components/navigation/back-button/back-button.component.d.ts +3 -3
- package/lib/components/navigation/back-to-top/back-to-top.component.d.ts +7 -7
- package/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.d.ts +6 -6
- package/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.d.ts +6 -6
- package/lib/components/navigation/breadcrumbs/breadcrumbs.module.d.ts +8 -0
- package/lib/components/navigation/header/header.component.d.ts +6 -6
- package/lib/components/utils/error-page/error-page.component.d.ts +6 -6
- package/lib/components/utils/icon/icon.component.d.ts +10 -7
- package/lib/components/utils/language-switcher/language-switcher.component.d.ts +4 -4
- package/lib/design-angular-kit-config.d.ts +16 -0
- package/lib/design-angular-kit.module.d.ts +6 -4
- package/lib/interfaces/core.d.ts +16 -16
- package/lib/interfaces/design-angular-kit-init.d.ts +7 -0
- package/lib/interfaces/form.d.ts +3 -3
- package/lib/interfaces/icon.d.ts +3 -3
- package/lib/pipes/mark-matching-text.pipe.d.ts +4 -4
- package/lib/services/{notifications/notifications.service.d.ts → notification/notification.service.d.ts} +3 -3
- package/lib/utils/boolean-input.d.ts +1 -1
- package/package.json +13 -18
- package/public_api.d.ts +14 -4
- package/esm2020/lib/abstracts/abstract-form.component.mjs +0 -188
- package/esm2020/lib/abstracts/abstract.component.mjs +0 -45
- package/esm2020/lib/components/components.module.mjs +0 -256
- package/esm2020/lib/components/core/accordion/accordion.component.mjs +0 -35
- package/esm2020/lib/components/core/alert/alert.component.mjs +0 -73
- package/esm2020/lib/components/core/badge/badge.directive.mjs +0 -37
- package/esm2020/lib/components/core/button/button.directive.mjs +0 -84
- package/esm2020/lib/components/core/callout/callout.component.mjs +0 -57
- package/esm2020/lib/components/core/card/card.component.mjs +0 -64
- package/esm2020/lib/components/core/carousel/carousel/carousel.component.mjs +0 -89
- package/esm2020/lib/components/core/carousel/carousel-item/carousel-item.component.mjs +0 -19
- package/esm2020/lib/components/core/chip/chip.component.mjs +0 -89
- package/esm2020/lib/components/core/collapse/collapse.component.mjs +0 -101
- package/esm2020/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.mjs +0 -24
- package/esm2020/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.mjs +0 -11
- package/esm2020/lib/components/core/dimmer/dimmer.component.mjs +0 -59
- package/esm2020/lib/components/core/dropdown/dropdown/dropdown.component.mjs +0 -130
- package/esm2020/lib/components/core/dropdown/dropdown-item/dropdown-item.component.mjs +0 -68
- package/esm2020/lib/components/core/forward/forward.directive.mjs +0 -52
- package/esm2020/lib/components/core/link/link.component.mjs +0 -40
- package/esm2020/lib/components/core/list/list/list.component.mjs +0 -17
- package/esm2020/lib/components/core/list/list-item/list-item.component.mjs +0 -41
- package/esm2020/lib/components/core/modal/modal.component.mjs +0 -163
- package/esm2020/lib/components/core/notifications/notifications.component.mjs +0 -110
- package/esm2020/lib/components/core/pagination/pagination.component.mjs +0 -131
- package/esm2020/lib/components/core/popover/popover.directive.mjs +0 -174
- package/esm2020/lib/components/core/progress-bar/progress-bar.component.mjs +0 -34
- package/esm2020/lib/components/core/progress-button/progress-button.component.mjs +0 -27
- package/esm2020/lib/components/core/rating/rating.component.mjs +0 -49
- package/esm2020/lib/components/core/spinner/spinner.component.mjs +0 -35
- package/esm2020/lib/components/core/steppers/steppers-container/steppers-container.component.mjs +0 -127
- package/esm2020/lib/components/core/steppers/steppers-item/steppers-item.component.mjs +0 -19
- package/esm2020/lib/components/core/tab/tab-container/tab-container.component.mjs +0 -59
- package/esm2020/lib/components/core/tab/tab-item/tab-item.component.mjs +0 -36
- package/esm2020/lib/components/core/table/table.component.mjs +0 -57
- package/esm2020/lib/components/core/tooltip/tooltip.directive.mjs +0 -141
- package/esm2020/lib/components/form/checkbox/checkbox.component.mjs +0 -40
- package/esm2020/lib/components/form/input/input.component.mjs +0 -222
- package/esm2020/lib/components/form/password-input/password-input.component.mjs +0 -152
- package/esm2020/lib/components/form/radio-button/radio-button.component.mjs +0 -68
- package/esm2020/lib/components/form/select/select.component.mjs +0 -62
- package/esm2020/lib/components/form/textarea/textarea.component.mjs +0 -46
- package/esm2020/lib/components/form/upload-drag-drop/upload-drag-drop.component.mjs +0 -139
- package/esm2020/lib/components/form/upload-file-list/upload-file-list.component.mjs +0 -104
- package/esm2020/lib/components/navigation/back-button/back-button.component.mjs +0 -69
- package/esm2020/lib/components/navigation/back-to-top/back-to-top.component.mjs +0 -64
- package/esm2020/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.mjs +0 -56
- package/esm2020/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +0 -23
- package/esm2020/lib/components/navigation/header/header.component.mjs +0 -57
- package/esm2020/lib/components/utils/error-page/error-page.component.mjs +0 -79
- package/esm2020/lib/components/utils/icon/icon.component.mjs +0 -47
- package/esm2020/lib/components/utils/language-switcher/language-switcher.component.mjs +0 -39
- package/esm2020/lib/design-angular-kit.module.mjs +0 -56
- package/esm2020/lib/pipes/mark-matching-text.pipe.mjs +0 -36
- package/esm2020/lib/services/notifications/notifications.service.mjs +0 -120
- package/esm2020/lib/utils/file-utils.mjs +0 -73
- package/esm2020/lib/validators/it-validators.mjs +0 -147
- package/esm2020/public_api.mjs +0 -71
- package/fesm2015/design-angular-kit.mjs +0 -4378
- package/fesm2015/design-angular-kit.mjs.map +0 -1
- package/fesm2020/design-angular-kit.mjs +0 -4313
- package/fesm2020/design-angular-kit.mjs.map +0 -1
- package/lib/components/core/rating/rating.component.d.ts +0 -24
- /package/{esm2020 → esm2022}/design-angular-kit.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/interfaces/core.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/interfaces/icon.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/interfaces/utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/boolean-input.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/regex.mjs +0 -0
package/README.md
CHANGED
|
@@ -63,13 +63,64 @@ npm install design-angular-kit@unstable --save
|
|
|
63
63
|
Procedi a registrare `DesignAngularKitModule` nel tuo **app.module.ts**.
|
|
64
64
|
|
|
65
65
|
```typescript
|
|
66
|
+
import {DesignAngularKitModule, ItComponentsModule} from 'design-angular-kit';
|
|
67
|
+
|
|
66
68
|
@NgModule({
|
|
67
69
|
imports: [
|
|
68
70
|
...
|
|
69
|
-
DesignAngularKitModule
|
|
71
|
+
DesignAngularKitModule,
|
|
72
|
+
ItComponentsModule // importa tutti i componenti della libreria
|
|
70
73
|
]
|
|
71
74
|
})
|
|
72
75
|
```
|
|
76
|
+
<details>
|
|
77
|
+
<summary>Configurazione custom della libreria</summary>
|
|
78
|
+
|
|
79
|
+
```typescript
|
|
80
|
+
import {DesignAngularKitModule, DesignAngularKitInit} from 'design-angular-kit';
|
|
81
|
+
|
|
82
|
+
// Puoi aggiungere alla libreria una configurazione iniziale
|
|
83
|
+
const initConfig: DesignAngularKitInit | undefined = {
|
|
84
|
+
/**
|
|
85
|
+
* The initial path in the `href` attribute in the `IconComponent` component
|
|
86
|
+
* @default './bootstrap-italia/dist/svg/sprites.svg'
|
|
87
|
+
*/
|
|
88
|
+
iconHref: string | undefined,
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
@NgModule({
|
|
92
|
+
imports: [
|
|
93
|
+
...
|
|
94
|
+
DesignAngularKitModule.forRoot(initConfig)
|
|
95
|
+
]
|
|
96
|
+
})
|
|
97
|
+
```
|
|
98
|
+
</details>
|
|
99
|
+
|
|
100
|
+
Usa `ItComponentsModule` per importare tutti i componenti della libreria, in alternativa puoi importare solo i componenti/moduli di cui hai bisogno, ad es. Alert, Paginazione e Breadcrumb.
|
|
101
|
+
|
|
102
|
+
```typescript
|
|
103
|
+
import {ItAlertComponent, ItPaginationComponent, ItBreadcrumbsModule} from 'design-angular-kit';
|
|
104
|
+
|
|
105
|
+
@NgModule({
|
|
106
|
+
imports: [
|
|
107
|
+
ItAlertComponent,
|
|
108
|
+
ItPaginationComponent,
|
|
109
|
+
ItBreadcrumbsModule // Include ItBreadcrumbComponent e ItBreadcrumbItemComponent
|
|
110
|
+
],
|
|
111
|
+
})
|
|
112
|
+
export class YourAppModule {
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
@Component({
|
|
116
|
+
selector: 'app-product',
|
|
117
|
+
standalone: true,
|
|
118
|
+
imports: [ItAlertComponent],
|
|
119
|
+
templateUrl: './product.component.html'
|
|
120
|
+
})
|
|
121
|
+
export class ProductComponent {
|
|
122
|
+
}
|
|
123
|
+
```
|
|
73
124
|
|
|
74
125
|
### Importazione stili bootstrap-italia
|
|
75
126
|
Configura gli stili richiesti nel file `styles.scss`. Importa la libreria SCSS come mostrato nell'esempio qui sotto.
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { FormControl } from '@angular/forms';
|
|
2
|
+
import { Component, Input, Optional, Self } from '@angular/core';
|
|
3
|
+
import { ItAbstractComponent } from './abstract.component';
|
|
4
|
+
import { isFalseBooleanInput, isTrueBooleanInput } from '../utils/boolean-input';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@ngx-translate/core";
|
|
7
|
+
import * as i2 from "@angular/forms";
|
|
8
|
+
class ItAbstractFormComponent extends ItAbstractComponent {
|
|
9
|
+
/**
|
|
10
|
+
* Set the disabled state
|
|
11
|
+
*/
|
|
12
|
+
set disabled(isDisabled) {
|
|
13
|
+
this.setDisabledState(isTrueBooleanInput(isDisabled));
|
|
14
|
+
}
|
|
15
|
+
constructor(_translateService, _ngControl) {
|
|
16
|
+
super();
|
|
17
|
+
this._translateService = _translateService;
|
|
18
|
+
this._ngControl = _ngControl;
|
|
19
|
+
/**
|
|
20
|
+
* Validation color display mode (validation triggered if field is touched or not pristine)
|
|
21
|
+
* - <b>true</b>: Always show the validation color
|
|
22
|
+
* - <b>false</b>: Never show validation color
|
|
23
|
+
* - <b>only-valid</b>: Show only valid validation color
|
|
24
|
+
* - <b>only-invalid</b>: Show only invalid validation color
|
|
25
|
+
* @default <b>only-invalid</b>: Show only invalid validation color
|
|
26
|
+
*/
|
|
27
|
+
this.validationMode = 'only-invalid';
|
|
28
|
+
this.onChange = (_) => {
|
|
29
|
+
};
|
|
30
|
+
this.onTouched = () => {
|
|
31
|
+
};
|
|
32
|
+
this.control = new FormControl();
|
|
33
|
+
this._ngControl && (this._ngControl.valueAccessor = this);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Check if field is invalid (Validation failed)
|
|
37
|
+
*/
|
|
38
|
+
get isInvalid() {
|
|
39
|
+
if (this.validationMode === 'only-valid' || (this.validationMode !== 'only-invalid' && isFalseBooleanInput(this.validationMode))) {
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
if (this._ngControl) {
|
|
43
|
+
return this._ngControl.invalid === true && (!this._ngControl.pristine || this._ngControl.touched === true);
|
|
44
|
+
}
|
|
45
|
+
return this.control.invalid && (!this.control.pristine || this.control.touched);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Check if field is valid (Validation successful)
|
|
49
|
+
*/
|
|
50
|
+
get isValid() {
|
|
51
|
+
if (this.validationMode === 'only-invalid' || (this.validationMode !== 'only-valid' && isFalseBooleanInput(this.validationMode))) {
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
if (this._ngControl) {
|
|
55
|
+
return this._ngControl.valid === true && (!this._ngControl.pristine || this._ngControl.touched === true);
|
|
56
|
+
}
|
|
57
|
+
return this.control.valid && (!this.control.pristine || this.control.touched);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Return the invalid message string from TranslateService
|
|
61
|
+
*/
|
|
62
|
+
get invalidMessage() {
|
|
63
|
+
if (this.hasError('required')) {
|
|
64
|
+
return this._translateService.get('it.errors.required-field');
|
|
65
|
+
}
|
|
66
|
+
return this._translateService.get('it.errors.invalid-field');
|
|
67
|
+
}
|
|
68
|
+
ngOnInit() {
|
|
69
|
+
if (this._ngControl?.control) {
|
|
70
|
+
this.control.setValidators(this._ngControl.control.validator);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
registerOnChange(fn) {
|
|
74
|
+
this.control.valueChanges.subscribe(fn);
|
|
75
|
+
this.onChange = fn;
|
|
76
|
+
}
|
|
77
|
+
registerOnTouched(fn) {
|
|
78
|
+
this.onTouched = fn;
|
|
79
|
+
}
|
|
80
|
+
setDisabledState(isDisabled) {
|
|
81
|
+
if (isDisabled) {
|
|
82
|
+
return this.control.disable();
|
|
83
|
+
}
|
|
84
|
+
this.control.enable();
|
|
85
|
+
}
|
|
86
|
+
writeValue(value) {
|
|
87
|
+
this.control.setValue(value, { emitEvent: false });
|
|
88
|
+
this._changeDetectorRef.detectChanges();
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Mark the control as touched
|
|
92
|
+
*/
|
|
93
|
+
markAsTouched() {
|
|
94
|
+
if (!this.control.touched) {
|
|
95
|
+
this.onTouched();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Fired to check if form control is touched
|
|
100
|
+
*/
|
|
101
|
+
ngDoCheck() {
|
|
102
|
+
if (this._ngControl?.control) {
|
|
103
|
+
const ngControl = this._ngControl.control;
|
|
104
|
+
if (this.control.touched !== ngControl.touched) {
|
|
105
|
+
if (ngControl.touched) {
|
|
106
|
+
this.control.markAsTouched();
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
this.control.markAsUntouched();
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
if (this.control.pristine !== ngControl.pristine) {
|
|
113
|
+
if (ngControl.pristine) {
|
|
114
|
+
this.control.markAsPristine();
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
this.control.markAsDirty();
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
this._changeDetectorRef.detectChanges();
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Add the validators in control and parent control
|
|
125
|
+
* @param validators the validators
|
|
126
|
+
* @protected
|
|
127
|
+
*/
|
|
128
|
+
addValidators(validators) {
|
|
129
|
+
if (!Array.isArray(validators)) {
|
|
130
|
+
validators = [validators];
|
|
131
|
+
}
|
|
132
|
+
validators.forEach(validator => {
|
|
133
|
+
if (!this.control.hasValidator(validator)) {
|
|
134
|
+
this.control.addValidators(validator);
|
|
135
|
+
}
|
|
136
|
+
if (this._ngControl?.control && !this._ngControl.control.hasValidator(validator)) {
|
|
137
|
+
this._ngControl.control.addValidators(validator);
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Reports whether the control with the given path has the error specified. <br/>
|
|
143
|
+
* If the control is not present, false is returned.
|
|
144
|
+
* @param errorCode The code of the error to check
|
|
145
|
+
* @param path A list of control names that designates how to move from the current control
|
|
146
|
+
* to the control that should be queried for errors.
|
|
147
|
+
* @returns whether the given error is present in the control at the given path.
|
|
148
|
+
*/
|
|
149
|
+
hasError(errorCode, path) {
|
|
150
|
+
if (this._ngControl) {
|
|
151
|
+
return this._ngControl.hasError(errorCode, path);
|
|
152
|
+
}
|
|
153
|
+
return this.control.hasError(errorCode, path);
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Reports error data for the control with the given path.
|
|
157
|
+
* @param errorCode The code of the error to check
|
|
158
|
+
* @param path A list of control names that designates how to move from the current control
|
|
159
|
+
* to the control that should be queried for errors.
|
|
160
|
+
* @returns error data for that particular error. If the control or error is not present,
|
|
161
|
+
* null is returned.
|
|
162
|
+
*/
|
|
163
|
+
getError(errorCode, path) {
|
|
164
|
+
if (this._ngControl) {
|
|
165
|
+
return this._ngControl.getError(errorCode, path);
|
|
166
|
+
}
|
|
167
|
+
return this.control.getError(errorCode, path);
|
|
168
|
+
}
|
|
169
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItAbstractFormComponent, deps: [{ token: i1.TranslateService }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
170
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: ItAbstractFormComponent, selector: "ng-component", inputs: { label: "label", validationMode: "validationMode", disabled: "disabled" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
171
|
+
}
|
|
172
|
+
export { ItAbstractFormComponent };
|
|
173
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItAbstractFormComponent, decorators: [{
|
|
174
|
+
type: Component,
|
|
175
|
+
args: [{ template: '' }]
|
|
176
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: i2.NgControl, decorators: [{
|
|
177
|
+
type: Self
|
|
178
|
+
}, {
|
|
179
|
+
type: Optional
|
|
180
|
+
}] }]; }, propDecorators: { label: [{
|
|
181
|
+
type: Input
|
|
182
|
+
}], validationMode: [{
|
|
183
|
+
type: Input
|
|
184
|
+
}], disabled: [{
|
|
185
|
+
type: Input
|
|
186
|
+
}] } });
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9hYnN0cmFjdHMvYWJzdHJhY3QtZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3QixXQUFXLEVBQTBCLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0YsT0FBTyxFQUFFLFNBQVMsRUFBVyxLQUFLLEVBQVUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQWdCLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFJL0YsTUFDc0IsdUJBQWlDLFNBQVEsbUJBQW1CO0lBaUJoRjs7T0FFRztJQUNILElBQWEsUUFBUSxDQUFDLFVBQXdCO1FBQzVDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFPRCxZQUNxQixpQkFBbUMsRUFDZixVQUFxQjtRQUU1RCxLQUFLLEVBQUUsQ0FBQztRQUhXLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFDZixlQUFVLEdBQVYsVUFBVSxDQUFXO1FBeEI5RDs7Ozs7OztXQU9HO1FBQ00sbUJBQWMsR0FBaUQsY0FBYyxDQUFDO1FBb0V2RixhQUFRLEdBQUcsQ0FBQyxDQUFJLEVBQUUsRUFBRTtRQUNwQixDQUFDLENBQUM7UUFFRixjQUFTLEdBQUcsR0FBRyxFQUFFO1FBQ2pCLENBQUMsQ0FBQztRQXJEQSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxH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QUFLO2dCQVVHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBS08sUUFBUTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgTmdDb250cm9sLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbXBvbmVudCwgRG9DaGVjaywgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWwsIFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEl0QWJzdHJhY3RDb21wb25lbnQgfSBmcm9tICcuL2Fic3RyYWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGlzRmFsc2VCb29sZWFuSW5wdXQsIGlzVHJ1ZUJvb2xlYW5JbnB1dCB9IGZyb20gJy4uL3V0aWxzL2Jvb2xlYW4taW5wdXQnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgSXRBYnN0cmFjdEZvcm1Db21wb25lbnQ8VCA9IGFueT4gZXh0ZW5kcyBJdEFic3RyYWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgRG9DaGVjayB7XG5cbiAgLyoqXG4gICAqIFRoZSBsYWJlbCBvZiBmb3JtIGNvbnRyb2xcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBWYWxpZGF0aW9uIGNvbG9yIGRpc3BsYXkgbW9kZSAodmFsaWRhdGlvbiB0cmlnZ2VyZWQgaWYgZmllbGQgaXMgdG91Y2hlZCBvciBub3QgcHJpc3RpbmUpXG4gICAqIC0gPGI+dHJ1ZTwvYj46IEFsd2F5cyBzaG93IHRoZSB2YWxpZGF0aW9uIGNvbG9yXG4gICAqIC0gPGI+ZmFsc2U8L2I+OiBOZXZlciBzaG93IHZhbGlkYXRpb24gY29sb3JcbiAgICogLSA8Yj5vbmx5LXZhbGlkPC9iPjogU2hvdyBvbmx5IHZhbGlkIHZhbGlkYXRpb24gY29sb3JcbiAgICogLSA8Yj5vbmx5LWludmFsaWQ8L2I+OiBTaG93IG9ubHkgaW52YWxpZCB2YWxpZGF0aW9uIGNvbG9yXG4gICAqIEBkZWZhdWx0IDxiPm9ubHktaW52YWxpZDwvYj46IFNob3cgb25seSBpbnZhbGlkIHZhbGlkYXRpb24gY29sb3JcbiAgICovXG4gIEBJbnB1dCgpIHZhbGlkYXRpb25Nb2RlOiBCb29sZWFuSW5wdXQgfCAnb25seS12YWxpZCcgfCAnb25seS1pbnZhbGlkJyA9ICdvbmx5LWludmFsaWQnO1xuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGRpc2FibGVkIHN0YXRlXG4gICAqL1xuICBASW5wdXQoKSBzZXQgZGlzYWJsZWQoaXNEaXNhYmxlZDogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5zZXREaXNhYmxlZFN0YXRlKGlzVHJ1ZUJvb2xlYW5JbnB1dChpc0Rpc2FibGVkKSk7XG4gIH1cblxuICAvKipcbiAgICogSW50ZXJuYWwgZm9ybSBjb250cm9sXG4gICAqL1xuICBwcm90ZWN0ZWQgY29udHJvbDogRm9ybUNvbnRyb2w7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF90cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIHJlYWRvbmx5IF9uZ0NvbnRyb2w6IE5nQ29udHJvbFxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuY29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgpO1xuICAgIHRoaXMuX25nQ29udHJvbCAmJiAodGhpcy5fbmdDb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBmaWVsZCBpcyBpbnZhbGlkIChWYWxpZGF0aW9uIGZhaWxlZClcbiAgICovXG4gIGdldCBpc0ludmFsaWQoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHRoaXMudmFsaWRhdGlvbk1vZGUgPT09ICdvbmx5LXZhbGlkJyB8fCAodGhpcy52YWxpZGF0aW9uTW9kZSAhPT0gJ29ubHktaW52YWxpZCcgJiYgaXNGYWxzZUJvb2xlYW5JbnB1dCh0aGlzLnZhbGlkYXRpb25Nb2RlKSkpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX25nQ29udHJvbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX25nQ29udHJvbC5pbnZhbGlkID09PSB0cnVlICYmICghdGhpcy5fbmdDb250cm9sLnByaXN0aW5lIHx8IHRoaXMuX25nQ29udHJvbC50b3VjaGVkID09PSB0cnVlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5pbnZhbGlkICYmICghdGhpcy5jb250cm9sLnByaXN0aW5lIHx8IHRoaXMuY29udHJvbC50b3VjaGVkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBmaWVsZCBpcyB2YWxpZCAoVmFsaWRhdGlvbiBzdWNjZXNzZnVsKVxuICAgKi9cbiAgZ2V0IGlzVmFsaWQoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHRoaXMudmFsaWRhdGlvbk1vZGUgPT09ICdvbmx5LWludmFsaWQnIHx8ICh0aGlzLnZhbGlkYXRpb25Nb2RlICE9PSAnb25seS12YWxpZCcgJiYgaXNGYWxzZUJvb2xlYW5JbnB1dCh0aGlzLnZhbGlkYXRpb25Nb2RlKSkpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX25nQ29udHJvbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX25nQ29udHJvbC52YWxpZCA9PT0gdHJ1ZSAmJiAoIXRoaXMuX25nQ29udHJvbC5wcmlzdGluZSB8fCB0aGlzLl9uZ0NvbnRyb2wudG91Y2hlZCA9PT0gdHJ1ZSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNvbnRyb2wudmFsaWQgJiYgKCF0aGlzLmNvbnRyb2wucHJpc3RpbmUgfHwgdGhpcy5jb250cm9sLnRvdWNoZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgaW52YWxpZCBtZXNzYWdlIHN0cmluZyBmcm9tIFRyYW5zbGF0ZVNlcnZpY2VcbiAgICovXG4gIGdldCBpbnZhbGlkTWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIGlmICh0aGlzLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdHJhbnNsYXRlU2VydmljZS5nZXQoJ2l0LmVycm9ycy5yZXF1aXJlZC1maWVsZCcpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl90cmFuc2xhdGVTZXJ2aWNlLmdldCgnaXQuZXJyb3JzLmludmFsaWQtZmllbGQnKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9uZ0NvbnRyb2w/LmNvbnRyb2wpIHtcbiAgICAgIHRoaXMuY29udHJvbC5zZXRWYWxpZGF0b3JzKCh0aGlzLl9uZ0NvbnRyb2wuY29udHJvbCBhcyBGb3JtQ29udHJvbCkudmFsaWRhdG9yKTtcbiAgICB9XG4gIH1cblxuICBvbkNoYW5nZSA9IChfOiBUKSA9PiB7XG4gIH07XG5cbiAgb25Ub3VjaGVkID0gKCkgPT4ge1xuICB9O1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKGZuKTtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb250cm9sLmRpc2FibGUoKTtcbiAgICB9XG4gICAgdGhpcy5jb250cm9sLmVuYWJsZSgpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbC5zZXRWYWx1ZSh2YWx1ZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXJrIHRoZSBjb250cm9sIGFzIHRvdWNoZWRcbiAgICovXG4gIG1hcmtBc1RvdWNoZWQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNvbnRyb2wudG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRmlyZWQgdG8gY2hlY2sgaWYgZm9ybSBjb250cm9sIGlzIHRvdWNoZWRcbiAgICovXG4gIG5nRG9DaGVjaygpIHtcbiAgICBpZiAodGhpcy5fbmdDb250cm9sPy5jb250cm9sKSB7XG4gICAgICBjb25zdCBuZ0NvbnRyb2wgPSB0aGlzLl9uZ0NvbnRyb2wuY29udHJvbDtcbiAgICAgIGlmICh0aGlzLmNvbnRyb2wudG91Y2hlZCAhPT0gbmdDb250cm9sLnRvdWNoZWQpIHtcbiAgICAgICAgaWYgKG5nQ29udHJvbC50b3VjaGVkKSB7XG4gICAgICAgICAgdGhpcy5jb250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmNvbnRyb2wubWFya0FzVW50b3VjaGVkKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmNvbnRyb2wucHJpc3RpbmUgIT09IG5nQ29udHJvbC5wcmlzdGluZSkge1xuICAgICAgICBpZiAobmdDb250cm9sLnByaXN0aW5lKSB7XG4gICAgICAgICAgdGhpcy5jb250cm9sLm1hcmtBc1ByaXN0aW5lKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5jb250cm9sLm1hcmtBc0RpcnR5KCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCB0aGUgdmFsaWRhdG9ycyBpbiBjb250cm9sIGFuZCBwYXJlbnQgY29udHJvbFxuICAgKiBAcGFyYW0gdmFsaWRhdG9ycyB0aGUgdmFsaWRhdG9yc1xuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgYWRkVmFsaWRhdG9ycyh2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbiB8IFZhbGlkYXRvckZuW10pOiB2b2lkIHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsaWRhdG9ycykpIHtcbiAgICAgIHZhbGlkYXRvcnMgPSBbdmFsaWRhdG9yc107XG4gICAgfVxuXG4gICAgdmFsaWRhdG9ycy5mb3JFYWNoKHZhbGlkYXRvciA9PiB7XG4gICAgICBpZiAoIXRoaXMuY29udHJvbC5oYXNWYWxpZGF0b3IodmFsaWRhdG9yKSkge1xuICAgICAgICB0aGlzLmNvbnRyb2wuYWRkVmFsaWRhdG9ycyh2YWxpZGF0b3IpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5fbmdDb250cm9sPy5jb250cm9sICYmICF0aGlzLl9uZ0NvbnRyb2wuY29udHJvbC5oYXNWYWxpZGF0b3IodmFsaWRhdG9yKSkge1xuICAgICAgICB0aGlzLl9uZ0NvbnRyb2wuY29udHJvbC5hZGRWYWxpZGF0b3JzKHZhbGlkYXRvcik7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVwb3J0cyB3aGV0aGVyIHRoZSBjb250cm9sIHdpdGggdGhlIGdpdmVuIHBhdGggaGFzIHRoZSBlcnJvciBzcGVjaWZpZWQuIDxici8+XG4gICAqIElmIHRoZSBjb250cm9sIGlzIG5vdCBwcmVzZW50LCBmYWxzZSBpcyByZXR1cm5lZC5cbiAgICogQHBhcmFtIGVycm9yQ29kZSBUaGUgY29kZSBvZiB0aGUgZXJyb3IgdG8gY2hlY2tcbiAgICogQHBhcmFtIHBhdGggQSBsaXN0IG9mIGNvbnRyb2wgbmFtZXMgdGhhdCBkZXNpZ25hdGVzIGhvdyB0byBtb3ZlIGZyb20gdGhlIGN1cnJlbnQgY29udHJvbFxuICAgKiB0byB0aGUgY29udHJvbCB0aGF0IHNob3VsZCBiZSBxdWVyaWVkIGZvciBlcnJvcnMuXG4gICAqIEByZXR1cm5zIHdoZXRoZXIgdGhlIGdpdmVuIGVycm9yIGlzIHByZXNlbnQgaW4gdGhlIGNvbnRyb2wgYXQgdGhlIGdpdmVuIHBhdGguXG4gICAqL1xuICBwdWJsaWMgaGFzRXJyb3IoZXJyb3JDb2RlOiBzdHJpbmcsIHBhdGg/OiBBcnJheTxzdHJpbmcgfCBudW1iZXI+IHwgc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuX25nQ29udHJvbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX25nQ29udHJvbC5oYXNFcnJvcihlcnJvckNvZGUsIHBhdGgpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jb250cm9sLmhhc0Vycm9yKGVycm9yQ29kZSwgcGF0aCk7XG4gIH1cblxuICAvKipcbiAgICogUmVwb3J0cyBlcnJvciBkYXRhIGZvciB0aGUgY29udHJvbCB3aXRoIHRoZSBnaXZlbiBwYXRoLlxuICAgKiBAcGFyYW0gZXJyb3JDb2RlIFRoZSBjb2RlIG9mIHRoZSBlcnJvciB0byBjaGVja1xuICAgKiBAcGFyYW0gcGF0aCBBIGxpc3Qgb2YgY29udHJvbCBuYW1lcyB0aGF0IGRlc2lnbmF0ZXMgaG93IHRvIG1vdmUgZnJvbSB0aGUgY3VycmVudCBjb250cm9sXG4gICAqIHRvIHRoZSBjb250cm9sIHRoYXQgc2hvdWxkIGJlIHF1ZXJpZWQgZm9yIGVycm9ycy5cbiAgICogQHJldHVybnMgZXJyb3IgZGF0YSBmb3IgdGhhdCBwYXJ0aWN1bGFyIGVycm9yLiBJZiB0aGUgY29udHJvbCBvciBlcnJvciBpcyBub3QgcHJlc2VudCxcbiAgICogbnVsbCBpcyByZXR1cm5lZC5cbiAgICovXG4gIHB1YmxpYyBnZXRFcnJvcihlcnJvckNvZGU6IHN0cmluZywgcGF0aD86IEFycmF5PHN0cmluZyB8IG51bWJlcj4gfCBzdHJpbmcpOiBhbnkge1xuICAgIGlmICh0aGlzLl9uZ0NvbnRyb2wpIHtcbiAgICAgIHJldHVybiB0aGlzLl9uZ0NvbnRyb2wuZ2V0RXJyb3IoZXJyb3JDb2RlLCBwYXRoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5nZXRFcnJvcihlcnJvckNvZGUsIHBhdGgpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { ChangeDetectorRef, Component, ElementRef, EventEmitter, inject, Input, Output, Renderer2 } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class ItAbstractComponent {
|
|
4
|
+
/**
|
|
5
|
+
* Counter of active instances
|
|
6
|
+
* @private
|
|
7
|
+
*/
|
|
8
|
+
static { this.instances = 0; }
|
|
9
|
+
constructor() {
|
|
10
|
+
/**
|
|
11
|
+
* The element ID
|
|
12
|
+
*/
|
|
13
|
+
this.id = this.getDefaultId();
|
|
14
|
+
this._renderer = inject(Renderer2);
|
|
15
|
+
this._elementRef = inject(ElementRef);
|
|
16
|
+
this._changeDetectorRef = inject(ChangeDetectorRef);
|
|
17
|
+
this.valueChanges = new EventEmitter();
|
|
18
|
+
}
|
|
19
|
+
ngAfterViewInit() {
|
|
20
|
+
this._renderer.removeAttribute(this._elementRef.nativeElement, 'id');
|
|
21
|
+
}
|
|
22
|
+
ngOnChanges(changes) {
|
|
23
|
+
this.valueChanges.next(); // The inputs were changed
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Generate unique id for components
|
|
27
|
+
* @private
|
|
28
|
+
*/
|
|
29
|
+
getDefaultId() {
|
|
30
|
+
const name = this.constructor.name.replace('Component', '');
|
|
31
|
+
const kebabName = name.replace(/[A-Z]+(?![a-z])|[A-Z]/g, ($, ofs) => (ofs ? '-' : '') + $.toLowerCase());
|
|
32
|
+
return `${kebabName}-${ItAbstractComponent.instances++}`;
|
|
33
|
+
}
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItAbstractComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: ItAbstractComponent, selector: "ng-component", inputs: { id: "id" }, outputs: { valueChanges: "valueChanges" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true }); }
|
|
36
|
+
}
|
|
37
|
+
export { ItAbstractComponent };
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItAbstractComponent, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{ template: '' }]
|
|
41
|
+
}], ctorParameters: function () { return []; }, propDecorators: { id: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], valueChanges: [{
|
|
44
|
+
type: Output
|
|
45
|
+
}] } });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvYWJzdHJhY3RzL2Fic3RyYWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQzs7QUFFdkIsTUFDc0IsbUJBQW1CO0lBWXZDOzs7T0FHRzthQUNZLGNBQVMsR0FBRyxDQUFDLEFBQUosQ0FBSztJQU83QjtRQXJCQTs7V0FFRztRQUNNLE9BQUUsR0FBVyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFtQnhDLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUVwRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFDL0MsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQywwQkFBMEI7SUFDdEQsQ0FBQztJQUVEOzs7T0FHRztJQUNLLFlBQVk7UUFDbEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM1RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLHdCQUF3QixFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDekcsT0FBTyxHQUFHLFNBQVMsSUFBSSxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO0lBQzNELENBQUM7OEdBL0NtQixtQkFBbUI7a0dBQW5CLG1CQUFtQiwwSUFEbEIsRUFBRTs7U0FDSCxtQkFBbUI7MkZBQW5CLG1CQUFtQjtrQkFEeEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7MEVBTWhCLEVBQUU7c0JBQVYsS0FBSztnQkFLVyxZQUFZO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgSXRBYnN0cmFjdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XG5cbiAgLyoqXG4gICAqIFRoZSBlbGVtZW50IElEXG4gICAqL1xuICBASW5wdXQoKSBpZDogc3RyaW5nID0gdGhpcy5nZXREZWZhdWx0SWQoKTtcblxuICAvKipcbiAgICogRmlyZWQgd2hlbiBjb21wb25lbnQgaW5wdXQgYXR0cmlidXRlcyB3YXMgY2hhbmdlZFxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB2YWx1ZUNoYW5nZXM6IEV2ZW50RW1pdHRlcjx2b2lkPjtcblxuICAvKipcbiAgICogQ291bnRlciBvZiBhY3RpdmUgaW5zdGFuY2VzXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBpbnN0YW5jZXMgPSAwO1xuXG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9yZW5kZXJlcjogUmVuZGVyZXIyOyAvLyBJbmplY3RlZFxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7IC8vIEluamVjdGVkXG4gIHByb3RlY3RlZCByZWFkb25seSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmOyAvLyBJbmplY3RlZFxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX3JlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XG4gICAgdGhpcy5fZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICB0aGlzLnZhbHVlQ2hhbmdlcyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnaWQnKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlcy5uZXh0KCk7IC8vIFRoZSBpbnB1dHMgd2VyZSBjaGFuZ2VkXG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgdW5pcXVlIGlkIGZvciBjb21wb25lbnRzXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIGdldERlZmF1bHRJZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLmNvbnN0cnVjdG9yLm5hbWUucmVwbGFjZSgnQ29tcG9uZW50JywgJycpO1xuICAgIGNvbnN0IGtlYmFiTmFtZSA9IG5hbWUucmVwbGFjZSgvW0EtWl0rKD8hW2Etel0pfFtBLVpdL2csICgkLCBvZnMpID0+IChvZnMgPyAnLScgOiAnJykgKyAkLnRvTG93ZXJDYXNlKCkpO1xuICAgIHJldHVybiBgJHtrZWJhYk5hbWV9LSR7SXRBYnN0cmFjdENvbXBvbmVudC5pbnN0YW5jZXMrK31gO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { ItAccordionComponent } from './core/accordion/accordion.component';
|
|
3
|
+
import { ItAlertComponent } from './core/alert/alert.component';
|
|
4
|
+
import { ItBadgeDirective } from './core/badge/badge.directive';
|
|
5
|
+
import { ItButtonDirective } from './core/button/button.directive';
|
|
6
|
+
import { ItCalloutComponent } from './core/callout/callout.component';
|
|
7
|
+
import { ItCardComponent } from './core/card/card.component';
|
|
8
|
+
import { ItCarouselModule } from './core/carousel/carousel.module';
|
|
9
|
+
import { ItCollapseComponent } from './core/collapse/collapse.component';
|
|
10
|
+
import { ItDimmerModule } from './core/dimmer/dimmer.module';
|
|
11
|
+
import { ItDropdownModule } from './core/dropdown/dropdown.module';
|
|
12
|
+
import { ItLinkComponent } from './core/link/link.component';
|
|
13
|
+
import { ItListModule } from './core/list/list.module';
|
|
14
|
+
import { ItModalComponent } from './core/modal/modal.component';
|
|
15
|
+
import { ItNotificationsComponent } from './core/notifications/notifications.component';
|
|
16
|
+
import { ItPaginationComponent } from './core/pagination/pagination.component';
|
|
17
|
+
import { ItPopoverDirective } from './core/popover/popover.directive';
|
|
18
|
+
import { ItProgressBarComponent } from './core/progress-bar/progress-bar.component';
|
|
19
|
+
import { ItProgressButtonComponent } from './core/progress-button/progress-button.component';
|
|
20
|
+
import { ItSpinnerComponent } from './core/spinner/spinner.component';
|
|
21
|
+
import { ItSteppersModule } from './core/steppers/steppers.module';
|
|
22
|
+
import { ItTabModule } from './core/tab/tab.module';
|
|
23
|
+
import { ItTableComponent } from './core/table/table.component';
|
|
24
|
+
import { ItTooltipDirective } from './core/tooltip/tooltip.directive';
|
|
25
|
+
import { ItFormModule } from './form/form.module';
|
|
26
|
+
import { ItBackButtonComponent } from './navigation/back-button/back-button.component';
|
|
27
|
+
import { ItBackToTopComponent } from './navigation/back-to-top/back-to-top.component';
|
|
28
|
+
import { ItBreadcrumbsModule } from './navigation/breadcrumbs/breadcrumbs.module';
|
|
29
|
+
import { ItHeaderComponent } from './navigation/header/header.component';
|
|
30
|
+
import { ItIconComponent } from './utils/icon/icon.component';
|
|
31
|
+
import { ItLanguageSwitcherComponent } from './utils/language-switcher/language-switcher.component';
|
|
32
|
+
import { ItErrorPageComponent } from './utils/error-page/error-page.component';
|
|
33
|
+
import { ItChipComponent } from './core/chip/chip.component';
|
|
34
|
+
import { ItForwardDirective } from './core/forward/forward.directive';
|
|
35
|
+
import { MarkMatchingTextPipe } from '../pipes/mark-matching-text.pipe';
|
|
36
|
+
import * as i0 from "@angular/core";
|
|
37
|
+
/**
|
|
38
|
+
* Core components
|
|
39
|
+
*/
|
|
40
|
+
const core = [
|
|
41
|
+
ItAccordionComponent,
|
|
42
|
+
ItAlertComponent,
|
|
43
|
+
ItBadgeDirective,
|
|
44
|
+
ItButtonDirective,
|
|
45
|
+
ItCalloutComponent,
|
|
46
|
+
ItCardComponent,
|
|
47
|
+
ItCarouselModule,
|
|
48
|
+
ItChipComponent,
|
|
49
|
+
ItCollapseComponent,
|
|
50
|
+
ItDimmerModule,
|
|
51
|
+
ItDropdownModule,
|
|
52
|
+
ItForwardDirective,
|
|
53
|
+
ItLinkComponent,
|
|
54
|
+
ItListModule,
|
|
55
|
+
ItModalComponent,
|
|
56
|
+
ItNotificationsComponent,
|
|
57
|
+
ItPaginationComponent,
|
|
58
|
+
ItPopoverDirective,
|
|
59
|
+
ItProgressBarComponent,
|
|
60
|
+
ItProgressButtonComponent,
|
|
61
|
+
ItSpinnerComponent,
|
|
62
|
+
ItSteppersModule,
|
|
63
|
+
ItTabModule,
|
|
64
|
+
ItTableComponent,
|
|
65
|
+
ItTooltipDirective
|
|
66
|
+
];
|
|
67
|
+
/**
|
|
68
|
+
* Navigation Components
|
|
69
|
+
*/
|
|
70
|
+
const navigation = [
|
|
71
|
+
ItBackButtonComponent,
|
|
72
|
+
ItBackToTopComponent,
|
|
73
|
+
ItBreadcrumbsModule,
|
|
74
|
+
ItHeaderComponent
|
|
75
|
+
];
|
|
76
|
+
/**
|
|
77
|
+
* Utils components
|
|
78
|
+
*/
|
|
79
|
+
const utils = [
|
|
80
|
+
ItErrorPageComponent,
|
|
81
|
+
ItIconComponent,
|
|
82
|
+
ItLanguageSwitcherComponent,
|
|
83
|
+
MarkMatchingTextPipe
|
|
84
|
+
];
|
|
85
|
+
class ItComponentsModule {
|
|
86
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
87
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.4", ngImport: i0, type: ItComponentsModule, imports: [ItAccordionComponent,
|
|
88
|
+
ItAlertComponent,
|
|
89
|
+
ItBadgeDirective,
|
|
90
|
+
ItButtonDirective,
|
|
91
|
+
ItCalloutComponent,
|
|
92
|
+
ItCardComponent,
|
|
93
|
+
ItCarouselModule,
|
|
94
|
+
ItChipComponent,
|
|
95
|
+
ItCollapseComponent,
|
|
96
|
+
ItDimmerModule,
|
|
97
|
+
ItDropdownModule,
|
|
98
|
+
ItForwardDirective,
|
|
99
|
+
ItLinkComponent,
|
|
100
|
+
ItListModule,
|
|
101
|
+
ItModalComponent,
|
|
102
|
+
ItNotificationsComponent,
|
|
103
|
+
ItPaginationComponent,
|
|
104
|
+
ItPopoverDirective,
|
|
105
|
+
ItProgressBarComponent,
|
|
106
|
+
ItProgressButtonComponent,
|
|
107
|
+
ItSpinnerComponent,
|
|
108
|
+
ItSteppersModule,
|
|
109
|
+
ItTabModule,
|
|
110
|
+
ItTableComponent,
|
|
111
|
+
ItTooltipDirective, ItFormModule, ItBackButtonComponent,
|
|
112
|
+
ItBackToTopComponent,
|
|
113
|
+
ItBreadcrumbsModule,
|
|
114
|
+
ItHeaderComponent, ItErrorPageComponent,
|
|
115
|
+
ItIconComponent,
|
|
116
|
+
ItLanguageSwitcherComponent,
|
|
117
|
+
MarkMatchingTextPipe], exports: [ItAccordionComponent,
|
|
118
|
+
ItAlertComponent,
|
|
119
|
+
ItBadgeDirective,
|
|
120
|
+
ItButtonDirective,
|
|
121
|
+
ItCalloutComponent,
|
|
122
|
+
ItCardComponent,
|
|
123
|
+
ItCarouselModule,
|
|
124
|
+
ItChipComponent,
|
|
125
|
+
ItCollapseComponent,
|
|
126
|
+
ItDimmerModule,
|
|
127
|
+
ItDropdownModule,
|
|
128
|
+
ItForwardDirective,
|
|
129
|
+
ItLinkComponent,
|
|
130
|
+
ItListModule,
|
|
131
|
+
ItModalComponent,
|
|
132
|
+
ItNotificationsComponent,
|
|
133
|
+
ItPaginationComponent,
|
|
134
|
+
ItPopoverDirective,
|
|
135
|
+
ItProgressBarComponent,
|
|
136
|
+
ItProgressButtonComponent,
|
|
137
|
+
ItSpinnerComponent,
|
|
138
|
+
ItSteppersModule,
|
|
139
|
+
ItTabModule,
|
|
140
|
+
ItTableComponent,
|
|
141
|
+
ItTooltipDirective, ItFormModule, ItBackButtonComponent,
|
|
142
|
+
ItBackToTopComponent,
|
|
143
|
+
ItBreadcrumbsModule,
|
|
144
|
+
ItHeaderComponent, ItErrorPageComponent,
|
|
145
|
+
ItIconComponent,
|
|
146
|
+
ItLanguageSwitcherComponent,
|
|
147
|
+
MarkMatchingTextPipe] }); }
|
|
148
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItComponentsModule, imports: [ItAlertComponent,
|
|
149
|
+
ItCarouselModule,
|
|
150
|
+
ItChipComponent,
|
|
151
|
+
ItDimmerModule,
|
|
152
|
+
ItDropdownModule,
|
|
153
|
+
ItListModule,
|
|
154
|
+
ItModalComponent,
|
|
155
|
+
ItNotificationsComponent,
|
|
156
|
+
ItPaginationComponent,
|
|
157
|
+
ItProgressBarComponent,
|
|
158
|
+
ItProgressButtonComponent,
|
|
159
|
+
ItSpinnerComponent,
|
|
160
|
+
ItSteppersModule,
|
|
161
|
+
ItTabModule, ItFormModule, ItBackButtonComponent,
|
|
162
|
+
ItBreadcrumbsModule,
|
|
163
|
+
ItHeaderComponent, ItErrorPageComponent,
|
|
164
|
+
ItLanguageSwitcherComponent, ItCarouselModule,
|
|
165
|
+
ItDimmerModule,
|
|
166
|
+
ItDropdownModule,
|
|
167
|
+
ItListModule,
|
|
168
|
+
ItSteppersModule,
|
|
169
|
+
ItTabModule, ItFormModule, ItBreadcrumbsModule] }); }
|
|
170
|
+
}
|
|
171
|
+
export { ItComponentsModule };
|
|
172
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItComponentsModule, decorators: [{
|
|
173
|
+
type: NgModule,
|
|
174
|
+
args: [{
|
|
175
|
+
imports: [
|
|
176
|
+
...core,
|
|
177
|
+
ItFormModule,
|
|
178
|
+
...navigation,
|
|
179
|
+
...utils
|
|
180
|
+
],
|
|
181
|
+
exports: [
|
|
182
|
+
...core,
|
|
183
|
+
ItFormModule,
|
|
184
|
+
...navigation,
|
|
185
|
+
...utils
|
|
186
|
+
]
|
|
187
|
+
}]
|
|
188
|
+
}] });
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvbXBvbmVudHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFB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d0JBQ1osR0FBRyxVQUFVO3dCQUNiLEdBQUcsS0FBSztxQkFDVDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyxJQUFJO3dCQUNQLFlBQVk7d0JBQ1osR0FBRyxVQUFVO3dCQUNiLEdBQUcsS0FBSztxQkFDVDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJdEFjY29yZGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29yZS9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdEFsZXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdEJhZGdlRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlL2JhZGdlL2JhZGdlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJdEJ1dHRvbkRpcmVjdGl2ZSB9IGZyb20gJy4vY29yZS9idXR0b24vYnV0dG9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJdENhbGxvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvY2FsbG91dC9jYWxsb3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdENhcmRDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvY2FyZC9jYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdENhcm91c2VsTW9kdWxlIH0gZnJvbSAnLi9jb3JlL2Nhcm91c2VsL2Nhcm91c2VsLm1vZHVsZSc7XG5pbXBvcnQgeyBJdENvbGxhcHNlQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2NvbGxhcHNlL2NvbGxhcHNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdERpbW1lck1vZHVsZSB9IGZyb20gJy4vY29yZS9kaW1tZXIvZGltbWVyLm1vZHVsZSc7XG5pbXBvcnQgeyBJdERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnLi9jb3JlL2Ryb3Bkb3duL2Ryb3Bkb3duLm1vZHVsZSc7XG5pbXBvcnQgeyBJdExpbmtDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbGluay9saW5rLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdExpc3RNb2R1bGUgfSBmcm9tICcuL2NvcmUvbGlzdC9saXN0Lm1vZHVsZSc7XG5pbXBvcnQgeyBJdE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL21vZGFsL21vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdE5vdGlmaWNhdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvcmUvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdFBvcG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2NvcmUvcG9wb3Zlci9wb3BvdmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJdFByb2dyZXNzQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEl0UHJvZ3Jlc3NCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NvcmUvcHJvZ3Jlc3MtYnV0dG9uL3Byb2dyZXNzLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSXRTcGlubmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSXRTdGVwcGVyc01vZHVsZSB9IGZyb20gJy4vY29yZS9zdGVwcGVycy9zdGVwcGVycy5tb2R1bGUnO1xuaW1wb3J0IHsgSXRUYWJNb2R1bGUgfSBmcm9tICcuL2NvcmUvdGFiL3RhYi5tb2R1bGUnO1xuaW1wb3J0IHsgSXRUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29yZS90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSXRUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSXRGb3JtTW9kdWxlIH0gZnJvbSAnLi9mb3JtL2Zvcm0ubW9kdWxlJztcbmltcG9ydCB7IEl0QmFja0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vbmF2aWdhdGlvbi9iYWNrLWJ1dHRvbi9iYWNrLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSXRCYWNrVG9Ub3BDb21wb25lbnQgfSBmcm9tICcuL25hdmlnYXRpb24vYmFjay10by10b3AvYmFjay10by10b3AuY29tcG9uZW50JztcbmltcG9ydCB7IEl0QnJlYWRjcnVtYnNNb2R1bGUgfSBmcm9tICcuL25hdmlnYXRpb24vYnJlYWRjcnVtYnMvYnJlYWRjcnVtYnMubW9kdWxlJztcbmltcG9ydCB7IEl0SGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZpZ2F0aW9uL2hlYWRlci9oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEl0SWNvbkNvbXBvbmVudCB9IGZyb20gJy4vdXRpbHMvaWNvbi9pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdExhbmd1YWdlU3dpdGNoZXJDb21wb25lbnQgfSBmcm9tICcuL3V0aWxzL2xhbmd1YWdlLXN3aXRjaGVyL2xhbmd1YWdlLXN3aXRjaGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdEVycm9yUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vdXRpbHMvZXJyb3ItcGFnZS9lcnJvci1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdENoaXBDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvY2hpcC9jaGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdEZvcndhcmREaXJlY3RpdmUgfSBmcm9tICcuL2NvcmUvZm9yd2FyZC9mb3J3YXJkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNYXJrTWF0Y2hpbmdUZXh0UGlwZSB9IGZyb20gJy4uL3BpcGVzL21hcmstbWF0Y2hpbmctdGV4dC5waXBlJztcblxuXG4vKipcbiAqIENvcmUgY29tcG9uZW50c1xuICovXG5jb25zdCBjb3JlID0gW1xuICBJdEFjY29yZGlvbkNvbXBvbmVudCxcbiAgSXRBbGVydENvbXBvbmVudCxcbiAgSXRCYWRnZURpcmVjdGl2ZSxcbiAgSXRCdXR0b25EaXJlY3RpdmUsXG4gIEl0Q2FsbG91dENvbXBvbmVudCxcbiAgSXRDYXJkQ29tcG9uZW50LFxuICBJdENhcm91c2VsTW9kdWxlLFxuICBJdENoaXBDb21wb25lbnQsXG4gIEl0Q29sbGFwc2VDb21wb25lbnQsXG4gIEl0RGltbWVyTW9kdWxlLFxuICBJdERyb3Bkb3duTW9kdWxlLFxuICBJdEZvcndhcmREaXJlY3RpdmUsXG4gIEl0TGlua0NvbXBvbmVudCxcbiAgSXRMaXN0TW9kdWxlLFxuICBJdE1vZGFsQ29tcG9uZW50LFxuICBJdE5vdGlmaWNhdGlvbnNDb21wb25lbnQsXG4gIEl0UGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgSXRQb3BvdmVyRGlyZWN0aXZlLFxuICBJdFByb2dyZXNzQmFyQ29tcG9uZW50LFxuICBJdFByb2dyZXNzQnV0dG9uQ29tcG9uZW50LFxuICBJdFNwaW5uZXJDb21wb25lbnQsXG4gIEl0U3RlcHBlcnNNb2R1bGUsXG4gIEl0VGFiTW9kdWxlLFxuICBJdFRhYmxlQ29tcG9uZW50LFxuICBJdFRvb2x0aXBEaXJlY3RpdmVcbl07XG5cbi8qKlxuICogTmF2aWdhdGlvbiBDb21wb25lbnRzXG4gKi9cbmNvbnN0IG5hdmlnYXRpb24gPSBbXG4gIEl0QmFja0J1dHRvbkNvbXBvbmVudCxcbiAgSXRCYWNrVG9Ub3BDb21wb25lbnQsXG4gIEl0QnJlYWRjcnVtYnNNb2R1bGUsXG4gIEl0SGVhZGVyQ29tcG9uZW50XG5dO1xuXG4vKipcbiAqIFV0aWxzIGNvbXBvbmVudHNcbiAqL1xuY29uc3QgdXRpbHMgPSBbXG4gIEl0RXJyb3JQYWdlQ29tcG9uZW50LFxuICBJdEljb25Db21wb25lbnQsXG4gIEl0TGFuZ3VhZ2VTd2l0Y2hlckNvbXBvbmVudCxcbiAgTWFya01hdGNoaW5nVGV4dFBpcGVcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICAuLi5jb3JlLFxuICAgIEl0Rm9ybU1vZHVsZSwgLy8gRm9ybSBjb21wb25lbnRzXG4gICAgLi4ubmF2aWdhdGlvbixcbiAgICAuLi51dGlsc1xuICBdLFxuICBleHBvcnRzOiBbXG4gICAgLi4uY29yZSxcbiAgICBJdEZvcm1Nb2R1bGUsIC8vIEZvcm0gY29tcG9uZW50c1xuICAgIC4uLm5hdmlnYXRpb24sXG4gICAgLi4udXRpbHNcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBJdENvbXBvbmVudHNNb2R1bGUge1xufVxuIl19
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { ItCollapseComponent } from '../collapse/collapse.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Accordion
|
|
6
|
+
* @description Build vertically collapsible accordions based on Collapse.
|
|
7
|
+
*/
|
|
8
|
+
class ItAccordionComponent extends ItCollapseComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this.isCollapsed = true;
|
|
12
|
+
}
|
|
13
|
+
ngAfterViewInit() {
|
|
14
|
+
super.ngAfterViewInit();
|
|
15
|
+
this._renderer.removeAttribute(this._elementRef.nativeElement, 'title');
|
|
16
|
+
this.isCollapsed = !this.isOpenedOnStart;
|
|
17
|
+
this.hideEvent.subscribe(() => {
|
|
18
|
+
this.isCollapsed = true;
|
|
19
|
+
this._changeDetectorRef.detectChanges();
|
|
20
|
+
});
|
|
21
|
+
this.showEvent.subscribe(() => {
|
|
22
|
+
this.isCollapsed = false;
|
|
23
|
+
this._changeDetectorRef.detectChanges();
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItAccordionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: ItAccordionComponent, isStandalone: true, selector: "it-accordion[title]", inputs: { title: "title" }, viewQueries: [{ propertyName: "collapseDiv", first: true, predicate: ["collapse"], descendants: true }], exportAs: ["itAccordion"], usesInheritance: true, ngImport: i0, template: "<div class=\"accordion\">\n <div class=\"accordion-item\">\n\n <h2 class=\"accordion-header\" id=\"collapse-{{id}}-heading\">\n <button\n class=\"accordion-button\"\n type=\"button\"\n data-bs-toggle=\"collapse\"\n [class.collapsed]=\"isCollapsed\"\n [attr.data-bs-target]=\"'#collapse-' + id\"\n [attr.aria-controls]=\"'collapse-' + id\"\n [attr.aria-expanded]=\"isOpenedOnStart ? 'true' : 'false'\">\n {{title}}\n </button>\n </h2>\n\n <div #collapse id=\"collapse-{{id}}\" role=\"region\"\n class=\"accordion-collapse collapse {{class}}\"\n [attr.aria-labelledby]=\"'collapse-' + id + '-heading'\">\n\n <div class=\"accordion-body\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28
|
+
}
|
|
29
|
+
export { ItAccordionComponent };
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: ItAccordionComponent, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{ standalone: true, selector: 'it-accordion[title]', exportAs: 'itAccordion', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "<div class=\"accordion\">\n <div class=\"accordion-item\">\n\n <h2 class=\"accordion-header\" id=\"collapse-{{id}}-heading\">\n <button\n class=\"accordion-button\"\n type=\"button\"\n data-bs-toggle=\"collapse\"\n [class.collapsed]=\"isCollapsed\"\n [attr.data-bs-target]=\"'#collapse-' + id\"\n [attr.aria-controls]=\"'collapse-' + id\"\n [attr.aria-expanded]=\"isOpenedOnStart ? 'true' : 'false'\">\n {{title}}\n </button>\n </h2>\n\n <div #collapse id=\"collapse-{{id}}\" role=\"region\"\n class=\"accordion-collapse collapse {{class}}\"\n [attr.aria-labelledby]=\"'collapse-' + id + '-heading'\">\n\n <div class=\"accordion-body\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n\n" }]
|
|
33
|
+
}], propDecorators: { title: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], collapseDiv: [{
|
|
36
|
+
type: ViewChild,
|
|
37
|
+
args: ['collapse']
|
|
38
|
+
}] } });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7O0FBRXJFOzs7R0FHRztBQUNILE1BUWEsb0JBQXFCLFNBQVEsbUJBQW1CO0lBUjdEOztRQWlCWSxnQkFBVyxHQUFZLElBQUksQ0FBQztLQWlCdkM7SUFmVSxlQUFlO1FBQ3RCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUN6QyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBeEJVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLHNRQ2ZqQyxrekJBMkJBOztTRFphLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQVJoQyxTQUFTO2lDQUNJLElBQUksWUFDTixxQkFBcUIsWUFFckIsYUFBYSxtQkFDTix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLEVBQUU7OEJBT0YsS0FBSztzQkFBYixLQUFLO2dCQUVvQyxXQUFXO3NCQUFwRCxTQUFTO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJdENvbGxhcHNlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29sbGFwc2UvY29sbGFwc2UuY29tcG9uZW50JztcblxuLyoqXG4gKiBBY2NvcmRpb25cbiAqIEBkZXNjcmlwdGlvbiBCdWlsZCB2ZXJ0aWNhbGx5IGNvbGxhcHNpYmxlIGFjY29yZGlvbnMgYmFzZWQgb24gQ29sbGFwc2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ2l0LWFjY29yZGlvblt0aXRsZV0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sJyxcbiAgZXhwb3J0QXM6ICdpdEFjY29yZGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBJdEFjY29yZGlvbkNvbXBvbmVudCBleHRlbmRzIEl0Q29sbGFwc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcblxuICAvKipcbiAgICogQWNjb3JkaW9uIFRpdGxlXG4gICAqL1xuICBASW5wdXQoKSB0aXRsZSE6IHN0cmluZztcblxuICBAVmlld0NoaWxkKCdjb2xsYXBzZScpIHByb3RlY3RlZCBvdmVycmlkZSBjb2xsYXBzZURpdj86IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIHByb3RlY3RlZCBpc0NvbGxhcHNlZDogYm9vbGVhbiA9IHRydWU7XG5cbiAgb3ZlcnJpZGUgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd0aXRsZScpO1xuXG4gICAgdGhpcy5pc0NvbGxhcHNlZCA9ICF0aGlzLmlzT3BlbmVkT25TdGFydDtcbiAgICB0aGlzLmhpZGVFdmVudC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5pc0NvbGxhcHNlZCA9IHRydWU7XG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gICAgdGhpcy5zaG93RXZlbnQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuaXNDb2xsYXBzZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KTtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiYWNjb3JkaW9uXCI+XG4gIDxkaXYgY2xhc3M9XCJhY2NvcmRpb24taXRlbVwiPlxuXG4gICAgPGgyIGNsYXNzPVwiYWNjb3JkaW9uLWhlYWRlclwiIGlkPVwiY29sbGFwc2Ute3tpZH19LWhlYWRpbmdcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJhY2NvcmRpb24tYnV0dG9uXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGRhdGEtYnMtdG9nZ2xlPVwiY29sbGFwc2VcIlxuICAgICAgICBbY2xhc3MuY29sbGFwc2VkXT1cImlzQ29sbGFwc2VkXCJcbiAgICAgICAgW2F0dHIuZGF0YS1icy10YXJnZXRdPVwiJyNjb2xsYXBzZS0nICsgaWRcIlxuICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cIidjb2xsYXBzZS0nICsgaWRcIlxuICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImlzT3BlbmVkT25TdGFydCA/ICd0cnVlJyA6ICdmYWxzZSdcIj5cbiAgICAgICAge3t0aXRsZX19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2gyPlxuXG4gICAgPGRpdiAjY29sbGFwc2UgaWQ9XCJjb2xsYXBzZS17e2lkfX1cIiByb2xlPVwicmVnaW9uXCJcbiAgICAgICAgIGNsYXNzPVwiYWNjb3JkaW9uLWNvbGxhcHNlIGNvbGxhcHNlIHt7Y2xhc3N9fVwiXG4gICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiJ2NvbGxhcHNlLScgKyBpZCArICctaGVhZGluZydcIj5cblxuICAgICAgPGRpdiBjbGFzcz1cImFjY29yZGlvbi1ib2R5XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=
|