@valtimo/components 12.0.0 → 12.1.1
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/assets/css/carbon.scss +3 -0
- package/assets/css/compatibility.scss +22 -0
- package/esm2022/lib/components/breadcrumb-navigation/breadcrumb-navigation.component.mjs +2 -2
- package/esm2022/lib/components/breadcrumb-navigation/breadcrumb.service.mjs +11 -2
- package/esm2022/lib/components/carbon-list/carbon-list.component.mjs +132 -39
- package/esm2022/lib/components/carbon-list/carbon-list.module.mjs +7 -3
- package/esm2022/lib/components/carbon-list/no-results/carbon-no-results.component.mjs +37 -5
- package/esm2022/lib/components/carbon-list/services/carbon-list-drag-and-drop.service.mjs +165 -0
- package/esm2022/lib/components/carbon-list/services/index.mjs +17 -0
- package/esm2022/lib/components/date-picker/date-picker.component.mjs +1 -1
- package/esm2022/lib/components/form-io/form-io-builder.component.mjs +2 -2
- package/esm2022/lib/components/input/input.component.mjs +1 -1
- package/esm2022/lib/components/input-label/input-label.component.mjs +6 -3
- package/esm2022/lib/components/list/list.module.mjs +22 -4
- package/esm2022/lib/components/multi-input/carbon-multi-input.component.mjs +1 -1
- package/esm2022/lib/components/multi-input-form/multi-input-form.component.mjs +3 -3
- package/esm2022/lib/components/page-header/page-header.component.mjs +2 -2
- package/esm2022/lib/components/radio/radio.component.mjs +1 -1
- package/esm2022/lib/components/right-sidebar/right-sidebar.component.mjs +92 -75
- package/esm2022/lib/components/search-fields/search-fields.component.mjs +23 -13
- package/esm2022/lib/components/select/select.component.mjs +1 -1
- package/esm2022/lib/components/stepper/stepper-footer-step/stepper-footer-step.component.mjs +4 -4
- package/esm2022/lib/components/stepper/stepper.module.mjs +5 -4
- package/esm2022/lib/components/tooltip-icon/tooltip-icon.component.mjs +2 -2
- package/esm2022/lib/components/view-content/type-converters/booleanTypeConverter.mjs +13 -17
- package/esm2022/lib/components/view-content/type-converters/currencyTypeConverter.mjs +37 -0
- package/esm2022/lib/components/view-content/type-converters/dateTimeTypeConverter.mjs +31 -0
- package/esm2022/lib/components/view-content/type-converters/dateTypeConverter.mjs +5 -3
- package/esm2022/lib/components/view-content/type-converters/enumTypeConverter.mjs +2 -2
- package/esm2022/lib/components/view-content/type-converters/numberTypeConverter.mjs +37 -0
- package/esm2022/lib/components/view-content/type-converters/percentTypeConverter.mjs +37 -0
- package/esm2022/lib/components/view-content/type-converters/relatedFilesTypeConverter.mjs +1 -1
- package/esm2022/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.mjs +1 -1
- package/esm2022/lib/components/view-content/type-converters/stringTypeConverter.mjs +1 -1
- package/esm2022/lib/components/view-content/type-converters/type-converters.model.mjs +60 -17
- package/esm2022/lib/components/view-content/view-content.module.mjs +33 -0
- package/esm2022/lib/components/view-content/view-content.service.mjs +11 -22
- package/esm2022/lib/components/widget/widget.component.mjs +2 -2
- package/esm2022/lib/constants/carbon.constants.mjs +2 -1
- package/esm2022/lib/directives/fit-page/fit-page.directive.mjs +2 -2
- package/esm2022/lib/models/carbon-list.model.mjs +5 -2
- package/esm2022/lib/models/carbon-tag.model.mjs +2 -2
- package/esm2022/lib/models/modal.model.mjs +1 -1
- package/esm2022/lib/services/index.mjs +2 -1
- package/esm2022/lib/services/key-generator.service.mjs +50 -0
- package/esm2022/lib/services/key-state.service.mjs +33 -0
- package/fesm2022/valtimo-components.mjs +816 -195
- package/fesm2022/valtimo-components.mjs.map +1 -1
- package/lib/components/breadcrumb-navigation/breadcrumb.service.d.ts +3 -0
- package/lib/components/breadcrumb-navigation/breadcrumb.service.d.ts.map +1 -1
- package/lib/components/carbon-list/carbon-list.component.d.ts +28 -9
- package/lib/components/carbon-list/carbon-list.component.d.ts.map +1 -1
- package/lib/components/carbon-list/carbon-list.module.d.ts +2 -1
- package/lib/components/carbon-list/carbon-list.module.d.ts.map +1 -1
- package/lib/components/carbon-list/no-results/carbon-no-results.component.d.ts +13 -3
- package/lib/components/carbon-list/no-results/carbon-no-results.component.d.ts.map +1 -1
- package/lib/components/carbon-list/services/carbon-list-drag-and-drop.service.d.ts +40 -0
- package/lib/components/carbon-list/services/carbon-list-drag-and-drop.service.d.ts.map +1 -0
- package/lib/components/carbon-list/services/index.d.ts +2 -0
- package/lib/components/carbon-list/services/index.d.ts.map +1 -0
- package/lib/components/form-io/form-io-builder.component.d.ts.map +1 -1
- package/lib/components/input-label/input-label.component.d.ts +2 -1
- package/lib/components/input-label/input-label.component.d.ts.map +1 -1
- package/lib/components/list/list.module.d.ts +2 -1
- package/lib/components/list/list.module.d.ts.map +1 -1
- package/lib/components/right-sidebar/right-sidebar.component.d.ts +17 -20
- package/lib/components/right-sidebar/right-sidebar.component.d.ts.map +1 -1
- package/lib/components/search-fields/search-fields.component.d.ts +4 -4
- package/lib/components/search-fields/search-fields.component.d.ts.map +1 -1
- package/lib/components/stepper/stepper.module.d.ts +2 -1
- package/lib/components/stepper/stepper.module.d.ts.map +1 -1
- package/lib/components/view-content/type-converters/booleanTypeConverter.d.ts +6 -0
- package/lib/components/view-content/type-converters/booleanTypeConverter.d.ts.map +1 -1
- package/lib/components/view-content/type-converters/currencyTypeConverter.d.ts +7 -0
- package/lib/components/view-content/type-converters/currencyTypeConverter.d.ts.map +1 -0
- package/lib/components/view-content/type-converters/dateTimeTypeConverter.d.ts +6 -0
- package/lib/components/view-content/type-converters/dateTimeTypeConverter.d.ts.map +1 -0
- package/lib/components/view-content/type-converters/dateTypeConverter.d.ts.map +1 -1
- package/lib/components/view-content/type-converters/enumTypeConverter.d.ts.map +1 -1
- package/lib/components/view-content/type-converters/numberTypeConverter.d.ts +7 -0
- package/lib/components/view-content/type-converters/numberTypeConverter.d.ts.map +1 -0
- package/lib/components/view-content/type-converters/percentTypeConverter.d.ts +7 -0
- package/lib/components/view-content/type-converters/percentTypeConverter.d.ts.map +1 -0
- package/lib/components/view-content/type-converters/relatedFilesTypeConverter.d.ts.map +1 -1
- package/lib/components/view-content/type-converters/stringReplaceUnderscoreTypeConverter.d.ts.map +1 -1
- package/lib/components/view-content/type-converters/stringTypeConverter.d.ts.map +1 -1
- package/lib/components/view-content/type-converters/type-converters.model.d.ts +13 -1
- package/lib/components/view-content/type-converters/type-converters.model.d.ts.map +1 -1
- package/lib/components/view-content/view-content.module.d.ts +8 -0
- package/lib/components/view-content/view-content.module.d.ts.map +1 -0
- package/lib/components/view-content/view-content.service.d.ts +1 -5
- package/lib/components/view-content/view-content.service.d.ts.map +1 -1
- package/lib/constants/carbon.constants.d.ts +1 -0
- package/lib/constants/carbon.constants.d.ts.map +1 -1
- package/lib/models/carbon-list.model.d.ts +15 -3
- package/lib/models/carbon-list.model.d.ts.map +1 -1
- package/lib/models/carbon-tag.model.d.ts +2 -0
- package/lib/models/carbon-tag.model.d.ts.map +1 -1
- package/lib/models/modal.model.d.ts +2 -1
- package/lib/models/modal.model.d.ts.map +1 -1
- package/lib/services/index.d.ts +1 -0
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/key-generator.service.d.ts +8 -0
- package/lib/services/key-generator.service.d.ts.map +1 -0
- package/lib/services/key-state.service.d.ts +12 -0
- package/lib/services/key-state.service.d.ts.map +1 -0
- package/package.json +4 -2
|
@@ -21,6 +21,7 @@ import { TranslateModule } from '@ngx-translate/core';
|
|
|
21
21
|
import { ButtonModule, ContentSwitcherModule, DialogModule, IconModule, ModalModule, PaginationModule, TableModule, TagModule, } from 'carbon-components-angular';
|
|
22
22
|
import { ValtimoCdsModalDirectiveModule } from '../../directives/valtimo-cds-modal/valtimo-cds-modal-directive.module';
|
|
23
23
|
import { CardModule } from '../card/card.module';
|
|
24
|
+
import { ViewContentModule } from '../view-content/view-content.module';
|
|
24
25
|
import { CarbonListComponent } from './carbon-list.component';
|
|
25
26
|
import { CarbonListFilterPipe } from './CarbonListFilterPipe.directive';
|
|
26
27
|
import { CarbonNoResultsComponent } from './no-results/carbon-no-results.component';
|
|
@@ -46,7 +47,8 @@ export class CarbonListModule {
|
|
|
46
47
|
NgbTooltipModule,
|
|
47
48
|
TagModule,
|
|
48
49
|
ModalModule,
|
|
49
|
-
ValtimoCdsModalDirectiveModule
|
|
50
|
+
ValtimoCdsModalDirectiveModule,
|
|
51
|
+
ViewContentModule], exports: [CarbonListComponent, CarbonListFilterPipe, CarbonNoResultsComponent] }); }
|
|
50
52
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CarbonListModule, imports: [CardModule,
|
|
51
53
|
CommonModule,
|
|
52
54
|
FormsModule,
|
|
@@ -62,7 +64,8 @@ export class CarbonListModule {
|
|
|
62
64
|
NgbTooltipModule,
|
|
63
65
|
TagModule,
|
|
64
66
|
ModalModule,
|
|
65
|
-
ValtimoCdsModalDirectiveModule
|
|
67
|
+
ValtimoCdsModalDirectiveModule,
|
|
68
|
+
ViewContentModule] }); }
|
|
66
69
|
}
|
|
67
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CarbonListModule, decorators: [{
|
|
68
71
|
type: NgModule,
|
|
@@ -90,8 +93,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
90
93
|
TagModule,
|
|
91
94
|
ModalModule,
|
|
92
95
|
ValtimoCdsModalDirectiveModule,
|
|
96
|
+
ViewContentModule,
|
|
93
97
|
],
|
|
94
98
|
exports: [CarbonListComponent, CarbonListFilterPipe, CarbonNoResultsComponent],
|
|
95
99
|
}]
|
|
96
100
|
}] });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyYm9uLWxpc3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYXJib24tbGlzdC9jYXJib24tbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLG1CQUFtQixFQUFFLGdCQUFnQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDakYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFDTCxZQUFZLEVBQ1oscUJBQXFCLEVBQ3JCLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sdUVBQXVFLENBQUM7QUFDckgsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ2xGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDOztBQThCM0UsTUFBTSxPQUFPLGdCQUFnQjs4R0FBaEIsZ0JBQWdCOytHQUFoQixnQkFBZ0IsaUJBMUJ6QixtQkFBbUI7WUFDbkIsb0JBQW9CO1lBQ3BCLHdCQUF3QjtZQUN4Qix3QkFBd0IsYUFHeEIsVUFBVTtZQUNWLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGdCQUFnQjtZQUNoQixXQUFXO1lBQ1gsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIsVUFBVTtZQUNWLFlBQVk7WUFDWixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLFNBQVM7WUFDVCxXQUFXO1lBQ1gsOEJBQThCO1lBQzlCLGlCQUFpQixhQUVULG1CQUFtQixFQUFFLG9CQUFvQixFQUFFLHdCQUF3QjsrR0FFbEUsZ0JBQWdCLFlBcEJ6QixVQUFVO1lBQ1YsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsZ0JBQWdCO1lBQ2hCLFdBQVc7WUFDWCxlQUFlO1lBQ2YsbUJBQW1CO1lBQ25CLHFCQUFxQjtZQUNyQixVQUFVO1lBQ1YsWUFBWTtZQUNaLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsU0FBUztZQUNULFdBQVc7WUFDWCw4QkFBOEI7WUFDOUIsaUJBQWlCOzsyRkFJUixnQkFBZ0I7a0JBNUI1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7cUJBQ3pCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxVQUFVO3dCQUNWLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCxlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIscUJBQXFCO3dCQUNyQixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLFNBQVM7d0JBQ1QsV0FBVzt3QkFDWCw4QkFBOEI7d0JBQzlCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsd0JBQXdCLENBQUM7aUJBQy9FIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge05nYlBhZ2luYXRpb25Nb2R1bGUsIE5nYlRvb2x0aXBNb2R1bGV9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7XG4gIEJ1dHRvbk1vZHVsZSxcbiAgQ29udGVudFN3aXRjaGVyTW9kdWxlLFxuICBEaWFsb2dNb2R1bGUsXG4gIEljb25Nb2R1bGUsXG4gIE1vZGFsTW9kdWxlLFxuICBQYWdpbmF0aW9uTW9kdWxlLFxuICBUYWJsZU1vZHVsZSxcbiAgVGFnTW9kdWxlLFxufSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbmltcG9ydCB7VmFsdGltb0Nkc01vZGFsRGlyZWN0aXZlTW9kdWxlfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3ZhbHRpbW8tY2RzLW1vZGFsL3ZhbHRpbW8tY2RzLW1vZGFsLWRpcmVjdGl2ZS5tb2R1bGUnO1xuaW1wb3J0IHtDYXJkTW9kdWxlfSBmcm9tICcuLi9jYXJkL2NhcmQubW9kdWxlJztcbmltcG9ydCB7Vmlld0NvbnRlbnRNb2R1bGV9IGZyb20gJy4uL3ZpZXctY29udGVudC92aWV3LWNvbnRlbnQubW9kdWxlJztcbmltcG9ydCB7Q2FyYm9uTGlzdENvbXBvbmVudH0gZnJvbSAnLi9jYXJib24tbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHtDYXJib25MaXN0RmlsdGVyUGlwZX0gZnJvbSAnLi9DYXJib25MaXN0RmlsdGVyUGlwZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtDYXJib25Ob1Jlc3VsdHNDb21wb25lbnR9IGZyb20gJy4vbm8tcmVzdWx0cy9jYXJib24tbm8tcmVzdWx0cy5jb21wb25lbnQnO1xuaW1wb3J0IHtDYXJib25UYWdzTW9kYWxDb21wb25lbnR9IGZyb20gJy4vdGFncy1tb2RhbC90YWdzLW1vZGFsLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENhcmJvbkxpc3RDb21wb25lbnQsXG4gICAgQ2FyYm9uTGlzdEZpbHRlclBpcGUsXG4gICAgQ2FyYm9uTm9SZXN1bHRzQ29tcG9uZW50LFxuICAgIENhcmJvblRhZ3NNb2RhbENvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENhcmRNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE5nYlBhZ2luYXRpb25Nb2R1bGUsXG4gICAgUGFnaW5hdGlvbk1vZHVsZSxcbiAgICBUYWJsZU1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBDb250ZW50U3dpdGNoZXJNb2R1bGUsXG4gICAgSWNvbk1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgRGlhbG9nTW9kdWxlLFxuICAgIE5nYlRvb2x0aXBNb2R1bGUsXG4gICAgVGFnTW9kdWxlLFxuICAgIE1vZGFsTW9kdWxlLFxuICAgIFZhbHRpbW9DZHNNb2RhbERpcmVjdGl2ZU1vZHVsZSxcbiAgICBWaWV3Q29udGVudE1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW0NhcmJvbkxpc3RDb21wb25lbnQsIENhcmJvbkxpc3RGaWx0ZXJQaXBlLCBDYXJib25Ob1Jlc3VsdHNDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJib25MaXN0TW9kdWxlIHt9XG4iXX0=
|
|
@@ -13,21 +13,47 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
16
|
+
import { ChangeDetectionStrategy, Component, Input, signal, ViewChild, } from '@angular/core';
|
|
17
17
|
import * as i0 from "@angular/core";
|
|
18
18
|
import * as i1 from "@angular/common";
|
|
19
19
|
import * as i2 from "@ngx-translate/core";
|
|
20
20
|
export class CarbonNoResultsComponent {
|
|
21
21
|
constructor() {
|
|
22
22
|
this.illustration = 'valtimo-layout/img/no-results.svg';
|
|
23
|
+
this.smallPadding = false;
|
|
24
|
+
this.collapseVertically = false;
|
|
25
|
+
this.alwaysRenderVertically = false;
|
|
26
|
+
this.renderVertically = signal(false);
|
|
27
|
+
}
|
|
28
|
+
ngAfterViewInit() {
|
|
29
|
+
if (this.collapseVertically)
|
|
30
|
+
this.openWidthObserver();
|
|
31
|
+
}
|
|
32
|
+
ngOnDestroy() {
|
|
33
|
+
this._observer?.disconnect();
|
|
34
|
+
}
|
|
35
|
+
openWidthObserver() {
|
|
36
|
+
this._observer = new ResizeObserver(event => {
|
|
37
|
+
this.observerMutation(event);
|
|
38
|
+
});
|
|
39
|
+
this._observer.observe(this._noResultsRef.nativeElement);
|
|
40
|
+
}
|
|
41
|
+
observerMutation(event) {
|
|
42
|
+
const elementWidth = event[0]?.borderBoxSize[0]?.inlineSize;
|
|
43
|
+
if (typeof elementWidth === 'number' && elementWidth !== 0) {
|
|
44
|
+
this.renderVertically.set(elementWidth < 480);
|
|
45
|
+
}
|
|
23
46
|
}
|
|
24
47
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CarbonNoResultsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: { action: "action", description: "description", illustration: "illustration", title: "title" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: { action: "action", description: "description", illustration: "illustration", title: "title", smallPadding: "smallPadding", collapseVertically: "collapseVertically", alwaysRenderVertically: "alwaysRenderVertically" }, viewQueries: [{ propertyName: "_noResultsRef", first: true, predicate: ["noResults"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n #noResults\n class=\"valtimo-no-results\"\n [ngClass]=\"{\n 'valtimo-no-results--small-padding': smallPadding,\n 'valtimo-no-results--render-vertically': renderVertically() || alwaysRenderVertically\n }\"\n>\n <img [src]=\"illustration\" alt=\"{{ 'interface.noResults' | translate }}\" />\n\n <div class=\"valtimo-no-results__content\">\n <h4 class=\"valtimo-no-results__title\">\n {{ title }}\n </h4>\n\n <span class=\"valtimo-no-results__description\" [innerHtml]=\"description\"></span>\n\n <ng-container [ngTemplateOutlet]=\"action\"></ng-container>\n </div>\n</div>\n", styles: [".valtimo-no-results{display:flex;justify-content:center;padding:100px 0;gap:64px}.valtimo-no-results--small-padding{padding:24px 0}.valtimo-no-results img{height:150px;padding-left:calc(40% - 214px);object-fit:contain}.valtimo-no-results__content{display:flex;flex-direction:column;justify-content:center;color:var(--cds-text-primary);gap:8px;width:60%}.valtimo-no-results__content:has(button){justify-content:space-between}.valtimo-no-results__title{font-size:28px}.valtimo-no-results span{font-size:16px;line-height:24px;width:75%}.valtimo-no-results h4{width:75%}.valtimo-no-results--render-vertically{flex-direction:column;gap:24px}.valtimo-no-results--render-vertically .valtimo-no-results__content{align-items:center;width:100%}.valtimo-no-results--render-vertically .valtimo-no-results__title,.valtimo-no-results--render-vertically .valtimo-no-results__description{text-align:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
26
49
|
}
|
|
27
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CarbonNoResultsComponent, decorators: [{
|
|
28
51
|
type: Component,
|
|
29
|
-
args: [{ selector: 'valtimo-no-results', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div
|
|
30
|
-
}], propDecorators: {
|
|
52
|
+
args: [{ selector: 'valtimo-no-results', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n #noResults\n class=\"valtimo-no-results\"\n [ngClass]=\"{\n 'valtimo-no-results--small-padding': smallPadding,\n 'valtimo-no-results--render-vertically': renderVertically() || alwaysRenderVertically\n }\"\n>\n <img [src]=\"illustration\" alt=\"{{ 'interface.noResults' | translate }}\" />\n\n <div class=\"valtimo-no-results__content\">\n <h4 class=\"valtimo-no-results__title\">\n {{ title }}\n </h4>\n\n <span class=\"valtimo-no-results__description\" [innerHtml]=\"description\"></span>\n\n <ng-container [ngTemplateOutlet]=\"action\"></ng-container>\n </div>\n</div>\n", styles: [".valtimo-no-results{display:flex;justify-content:center;padding:100px 0;gap:64px}.valtimo-no-results--small-padding{padding:24px 0}.valtimo-no-results img{height:150px;padding-left:calc(40% - 214px);object-fit:contain}.valtimo-no-results__content{display:flex;flex-direction:column;justify-content:center;color:var(--cds-text-primary);gap:8px;width:60%}.valtimo-no-results__content:has(button){justify-content:space-between}.valtimo-no-results__title{font-size:28px}.valtimo-no-results span{font-size:16px;line-height:24px;width:75%}.valtimo-no-results h4{width:75%}.valtimo-no-results--render-vertically{flex-direction:column;gap:24px}.valtimo-no-results--render-vertically .valtimo-no-results__content{align-items:center;width:100%}.valtimo-no-results--render-vertically .valtimo-no-results__title,.valtimo-no-results--render-vertically .valtimo-no-results__description{text-align:center}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
53
|
+
}], propDecorators: { _noResultsRef: [{
|
|
54
|
+
type: ViewChild,
|
|
55
|
+
args: ['noResults']
|
|
56
|
+
}], action: [{
|
|
31
57
|
type: Input
|
|
32
58
|
}], description: [{
|
|
33
59
|
type: Input
|
|
@@ -35,5 +61,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
35
61
|
type: Input
|
|
36
62
|
}], title: [{
|
|
37
63
|
type: Input
|
|
64
|
+
}], smallPadding: [{
|
|
65
|
+
type: Input
|
|
66
|
+
}], collapseVertically: [{
|
|
67
|
+
type: Input
|
|
68
|
+
}], alwaysRenderVertically: [{
|
|
69
|
+
type: Input
|
|
38
70
|
}] } });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyYm9uLW5vLXJlc3VsdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYXJib24tbGlzdC9uby1yZXN1bHRzL2NhcmJvbi1uby1yZXN1bHRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2FyYm9uLWxpc3Qvbm8tcmVzdWx0cy9jYXJib24tbm8tcmVzdWx0cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULEtBQUssRUFFTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDOzs7O0FBUXZCLE1BQU0sT0FBTyx3QkFBd0I7SUFOckM7UUFXVyxpQkFBWSxHQUFHLG1DQUFtQyxDQUFDO1FBRW5ELGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUMzQiwyQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFFeEIscUJBQWdCLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBMEJsRDtJQXRCUSxlQUFlO1FBQ3BCLElBQUksSUFBSSxDQUFDLGtCQUFrQjtZQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEtBQWlDO1FBQ3hELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDO1FBRTVELElBQUksT0FBTyxZQUFZLEtBQUssUUFBUSxJQUFJLFlBQVksS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMzRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFlBQVksR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQzs4R0FwQ1Usd0JBQXdCO2tHQUF4Qix3QkFBd0Isd1lDbENyQyxtdkNBb0NBOzsyRkRGYSx3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU07OEJBR2YsYUFBYTtzQkFBNUMsU0FBUzt1QkFBQyxXQUFXO2dCQUViLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIHNpZ25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tbm8tcmVzdWx0cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXJib24tbm8tcmVzdWx0cy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmJvbi1uby1yZXN1bHRzLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJib25Ob1Jlc3VsdHNDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdub1Jlc3VsdHMnKSBwcml2YXRlIF9ub1Jlc3VsdHNSZWY6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBJbnB1dCgpIGFjdGlvbjogVGVtcGxhdGVSZWY8YW55PjtcbiAgQElucHV0KCkgZGVzY3JpcHRpb246IHN0cmluZztcbiAgQElucHV0KCkgaWxsdXN0cmF0aW9uID0gJ3ZhbHRpbW8tbGF5b3V0L2ltZy9uby1yZXN1bHRzLnN2Zyc7XG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNtYWxsUGFkZGluZyA9IGZhbHNlO1xuICBASW5wdXQoKSBjb2xsYXBzZVZlcnRpY2FsbHkgPSBmYWxzZTtcbiAgQElucHV0KCkgYWx3YXlzUmVuZGVyVmVydGljYWxseSA9IGZhbHNlO1xuXG4gIHB1YmxpYyByZWFkb25seSByZW5kZXJWZXJ0aWNhbGx5ID0gc2lnbmFsKGZhbHNlKTtcblxuICBwcml2YXRlIF9vYnNlcnZlciE6IFJlc2l6ZU9ic2VydmVyO1xuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY29sbGFwc2VWZXJ0aWNhbGx5KSB0aGlzLm9wZW5XaWR0aE9ic2VydmVyKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fb2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlbldpZHRoT2JzZXJ2ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5fb2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoZXZlbnQgPT4ge1xuICAgICAgdGhpcy5vYnNlcnZlck11dGF0aW9uKGV2ZW50KTtcbiAgICB9KTtcbiAgICB0aGlzLl9vYnNlcnZlci5vYnNlcnZlKHRoaXMuX25vUmVzdWx0c1JlZi5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZXJNdXRhdGlvbihldmVudDogQXJyYXk8UmVzaXplT2JzZXJ2ZXJFbnRyeT4pOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50V2lkdGggPSBldmVudFswXT8uYm9yZGVyQm94U2l6ZVswXT8uaW5saW5lU2l6ZTtcblxuICAgIGlmICh0eXBlb2YgZWxlbWVudFdpZHRoID09PSAnbnVtYmVyJyAmJiBlbGVtZW50V2lkdGggIT09IDApIHtcbiAgICAgIHRoaXMucmVuZGVyVmVydGljYWxseS5zZXQoZWxlbWVudFdpZHRoIDwgNDgwKTtcbiAgICB9XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGRpdlxuICAjbm9SZXN1bHRzXG4gIGNsYXNzPVwidmFsdGltby1uby1yZXN1bHRzXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICd2YWx0aW1vLW5vLXJlc3VsdHMtLXNtYWxsLXBhZGRpbmcnOiBzbWFsbFBhZGRpbmcsXG4gICAgJ3ZhbHRpbW8tbm8tcmVzdWx0cy0tcmVuZGVyLXZlcnRpY2FsbHknOiByZW5kZXJWZXJ0aWNhbGx5KCkgfHwgYWx3YXlzUmVuZGVyVmVydGljYWxseVxuICB9XCJcbj5cbiAgPGltZyBbc3JjXT1cImlsbHVzdHJhdGlvblwiIGFsdD1cInt7ICdpbnRlcmZhY2Uubm9SZXN1bHRzJyB8IHRyYW5zbGF0ZSB9fVwiIC8+XG5cbiAgPGRpdiBjbGFzcz1cInZhbHRpbW8tbm8tcmVzdWx0c19fY29udGVudFwiPlxuICAgIDxoNCBjbGFzcz1cInZhbHRpbW8tbm8tcmVzdWx0c19fdGl0bGVcIj5cbiAgICAgIHt7IHRpdGxlIH19XG4gICAgPC9oND5cblxuICAgIDxzcGFuIGNsYXNzPVwidmFsdGltby1uby1yZXN1bHRzX19kZXNjcmlwdGlvblwiIFtpbm5lckh0bWxdPVwiZGVzY3JpcHRpb25cIj48L3NwYW4+XG5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImFjdGlvblwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { Injectable } from '@angular/core';
|
|
17
|
+
import { BehaviorSubject, combineLatest, filter, fromEvent, Subject, take, } from 'rxjs';
|
|
18
|
+
import { MoveRowDirection } from '../../../models';
|
|
19
|
+
import * as i0 from "@angular/core";
|
|
20
|
+
export class CarbonListDragAndDropService {
|
|
21
|
+
constructor() {
|
|
22
|
+
this.dragAndDropEvents$ = new Subject();
|
|
23
|
+
this._ROW_DRAG_CLASS = 'valtimo-carbon-list__drag-table-row';
|
|
24
|
+
this._carbonListElementRefSubject$ = new BehaviorSubject(null);
|
|
25
|
+
this._tableRowsSubject$ = new BehaviorSubject(null);
|
|
26
|
+
this._tableRowToMoveStartIndex$ = new BehaviorSubject(0);
|
|
27
|
+
this._tableRowToMoveSubject$ = new BehaviorSubject(null);
|
|
28
|
+
this._tableRowMouseOverSubject$ = new BehaviorSubject(null);
|
|
29
|
+
this._mouseMoveDirection$ = new BehaviorSubject(MoveRowDirection.UP);
|
|
30
|
+
this._lastMouseY = 0;
|
|
31
|
+
this._pauseSwap$ = new BehaviorSubject(false);
|
|
32
|
+
}
|
|
33
|
+
get _carbonListElementRef$() {
|
|
34
|
+
return this._carbonListElementRefSubject$.pipe(filter(ref => !!ref));
|
|
35
|
+
}
|
|
36
|
+
get _tableRows$() {
|
|
37
|
+
return this._tableRowsSubject$.pipe(filter(trs => !!trs));
|
|
38
|
+
}
|
|
39
|
+
get _tableRowToMove$() {
|
|
40
|
+
return this._tableRowToMoveSubject$.pipe(filter(tr => !!tr));
|
|
41
|
+
}
|
|
42
|
+
get _tableRowMouseOver$() {
|
|
43
|
+
return this._tableRowMouseOverSubject$.pipe(filter(tr => !!tr));
|
|
44
|
+
}
|
|
45
|
+
setCarbonListElementRef(ref) {
|
|
46
|
+
this._carbonListElementRefSubject$.next(ref);
|
|
47
|
+
}
|
|
48
|
+
startDrag(startMouseY, rowToBeMovedStartIndex) {
|
|
49
|
+
this._lastMouseY = startMouseY;
|
|
50
|
+
this._tableRowToMoveStartIndex$.next(rowToBeMovedStartIndex);
|
|
51
|
+
this.setTableRows(rowToBeMovedStartIndex);
|
|
52
|
+
this.openMouseMoveSubscription();
|
|
53
|
+
this.openTableRowSubscription();
|
|
54
|
+
this.openMouseUpSubscription();
|
|
55
|
+
}
|
|
56
|
+
openMouseMoveSubscription() {
|
|
57
|
+
this._mouseMoveSubscription = fromEvent(document, 'mousemove').subscribe((e) => {
|
|
58
|
+
this._mouseMoveDirection$.next(e.y > this._lastMouseY ? MoveRowDirection.DOWN : MoveRowDirection.UP);
|
|
59
|
+
this._lastMouseY = e.y;
|
|
60
|
+
const elementsUnderMouse = document.querySelectorAll(':hover');
|
|
61
|
+
const arrayElementsUnderMouse = elementsUnderMouse && Array.from(elementsUnderMouse);
|
|
62
|
+
const tableRowUnderMouse = arrayElementsUnderMouse?.find(element => element.localName === 'tr');
|
|
63
|
+
if (tableRowUnderMouse)
|
|
64
|
+
this.setTableRowUnderMouse(tableRowUnderMouse);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
openTableRowSubscription() {
|
|
68
|
+
this._tableRowsSubscription = combineLatest([
|
|
69
|
+
this._pauseSwap$,
|
|
70
|
+
this._tableRowMouseOver$,
|
|
71
|
+
this._tableRowToMove$,
|
|
72
|
+
this._mouseMoveDirection$,
|
|
73
|
+
]).subscribe(([pauseSwap, tableRowMouseOver, tableRowToMove, mouseMoveDirection]) => {
|
|
74
|
+
if (tableRowMouseOver !== tableRowToMove && !pauseSwap) {
|
|
75
|
+
this.pauseSwap();
|
|
76
|
+
if (mouseMoveDirection === MoveRowDirection.UP) {
|
|
77
|
+
tableRowToMove.parentNode.insertBefore(tableRowToMove, tableRowMouseOver);
|
|
78
|
+
this.continueSwap();
|
|
79
|
+
}
|
|
80
|
+
else if (tableRowMouseOver.nextSibling) {
|
|
81
|
+
tableRowToMove.parentNode.insertBefore(tableRowToMove, tableRowMouseOver.nextSibling);
|
|
82
|
+
this.continueSwap();
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
openMouseUpSubscription() {
|
|
88
|
+
this._mouseupSubscription = fromEvent(document, 'mouseup').subscribe(() => {
|
|
89
|
+
this.stopDrag();
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
setTableRowUnderMouse(element) {
|
|
93
|
+
combineLatest([this._tableRowMouseOverSubject$, this._tableRows$])
|
|
94
|
+
.pipe(take(1))
|
|
95
|
+
.subscribe(([currentTableRow, tableRows]) => {
|
|
96
|
+
const findTableRow = tableRows.find(row => row === element);
|
|
97
|
+
if (findTableRow && currentTableRow !== findTableRow)
|
|
98
|
+
this._tableRowMouseOverSubject$.next(findTableRow);
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
pauseSwap() {
|
|
102
|
+
this._pauseSwap$.next(true);
|
|
103
|
+
}
|
|
104
|
+
continueSwap() {
|
|
105
|
+
window.requestAnimationFrame(() => window.requestAnimationFrame(() => this._pauseSwap$.next(false)));
|
|
106
|
+
}
|
|
107
|
+
reset() {
|
|
108
|
+
this._tableRowsSubject$.next(null);
|
|
109
|
+
this._tableRowMouseOverSubject$.next(null);
|
|
110
|
+
this._pauseSwap$.next(false);
|
|
111
|
+
}
|
|
112
|
+
stopDrag() {
|
|
113
|
+
this._mouseupSubscription?.unsubscribe();
|
|
114
|
+
this._mouseMoveSubscription?.unsubscribe();
|
|
115
|
+
this._tableRowsSubscription?.unsubscribe();
|
|
116
|
+
this.reset();
|
|
117
|
+
this.emitReorderEvent();
|
|
118
|
+
}
|
|
119
|
+
emitReorderEvent() {
|
|
120
|
+
combineLatest([
|
|
121
|
+
this._carbonListElementRef$,
|
|
122
|
+
this._tableRowToMove$,
|
|
123
|
+
this._tableRowToMoveStartIndex$,
|
|
124
|
+
])
|
|
125
|
+
.pipe(take(1))
|
|
126
|
+
.subscribe(([elementRef, movedRow, startIndex]) => {
|
|
127
|
+
movedRow.classList.remove(this._ROW_DRAG_CLASS);
|
|
128
|
+
const htmlTableRowElements = this.getTableRows(elementRef);
|
|
129
|
+
const newIndex = htmlTableRowElements && htmlTableRowElements.findIndex(row => row === movedRow);
|
|
130
|
+
this.dragAndDropEvents$.next({ startIndex, newIndex });
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
getTableRows(elementRef) {
|
|
134
|
+
const carbonListElement = elementRef.nativeElement;
|
|
135
|
+
const carbonListChildren = carbonListElement?.children && Array.from(carbonListElement?.children);
|
|
136
|
+
const tableContainerElement = carbonListChildren?.find(child => child.localName === 'cds-table-container');
|
|
137
|
+
const tableContainerElementChildren = tableContainerElement?.children && Array.from(tableContainerElement.children);
|
|
138
|
+
const tableElement = tableContainerElementChildren?.find(child => child.localName === 'cds-table');
|
|
139
|
+
const tableElementChildren = tableElement?.children && Array.from(tableElement?.children);
|
|
140
|
+
const htmlTableElement = tableElementChildren?.find(child => child.localName === 'table');
|
|
141
|
+
const htmlTableElementChildren = htmlTableElement?.children && Array.from(htmlTableElement?.children);
|
|
142
|
+
const htmlTableBodyElement = htmlTableElementChildren?.find(child => child.localName === 'tbody');
|
|
143
|
+
const htmlTableRowElements = htmlTableBodyElement?.children &&
|
|
144
|
+
Array.from(htmlTableBodyElement.children);
|
|
145
|
+
return htmlTableRowElements || null;
|
|
146
|
+
}
|
|
147
|
+
setTableRows(tableRowToMoveIndex) {
|
|
148
|
+
this._carbonListElementRef$.pipe(take(1)).subscribe(elementRef => {
|
|
149
|
+
const htmlTableRowElements = this.getTableRows(elementRef);
|
|
150
|
+
const tableRowToMove = htmlTableRowElements && htmlTableRowElements[tableRowToMoveIndex];
|
|
151
|
+
if (htmlTableRowElements)
|
|
152
|
+
this._tableRowsSubject$.next(htmlTableRowElements);
|
|
153
|
+
if (tableRowToMove) {
|
|
154
|
+
this._tableRowToMoveSubject$.next(tableRowToMove);
|
|
155
|
+
tableRowToMove.classList.add(this._ROW_DRAG_CLASS);
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CarbonListDragAndDropService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
160
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CarbonListDragAndDropService }); }
|
|
161
|
+
}
|
|
162
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: CarbonListDragAndDropService, decorators: [{
|
|
163
|
+
type: Injectable
|
|
164
|
+
}] });
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyYm9uLWxpc3QtZHJhZy1hbmQtZHJvcC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYXJib24tbGlzdC9zZXJ2aWNlcy9jYXJib24tbGlzdC1kcmFnLWFuZC1kcm9wLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQWEsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLE1BQU0sRUFDTixTQUFTLEVBRVQsT0FBTyxFQUVQLElBQUksR0FDTCxNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBbUIsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7QUFHbkUsTUFBTSxPQUFPLDRCQUE0QjtJQUR6QztRQUVrQix1QkFBa0IsR0FBRyxJQUFJLE9BQU8sRUFBb0IsQ0FBQztRQUVwRCxvQkFBZSxHQUFHLHFDQUFxQyxDQUFDO1FBRXhELGtDQUE2QixHQUM1QyxJQUFJLGVBQWUsQ0FBeUMsSUFBSSxDQUFDLENBQUM7UUFLbkQsdUJBQWtCLEdBQUcsSUFBSSxlQUFlLENBQStCLElBQUksQ0FBQyxDQUFDO1FBSzdFLCtCQUEwQixHQUFHLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzVELDRCQUF1QixHQUFHLElBQUksZUFBZSxDQUE2QixJQUFJLENBQUMsQ0FBQztRQUtoRiwrQkFBMEIsR0FBRyxJQUFJLGVBQWUsQ0FDL0QsSUFBSSxDQUNMLENBQUM7UUFLZSx5QkFBb0IsR0FBRyxJQUFJLGVBQWUsQ0FDekQsZ0JBQWdCLENBQUMsRUFBRSxDQUNwQixDQUFDO1FBRU0sZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFFUCxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0tBd0pwRTtJQXBMQyxJQUFZLHNCQUFzQjtRQUNoQyxPQUFPLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUdELElBQVksV0FBVztRQUNyQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUlELElBQVksZ0JBQWdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBS0QsSUFBWSxtQkFBbUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFjTSx1QkFBdUIsQ0FBQyxHQUFvQztRQUNqRSxJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxTQUFTLENBQUMsV0FBbUIsRUFBRSxzQkFBOEI7UUFDbEUsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU8seUJBQXlCO1FBQy9CLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxTQUFTLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQWEsRUFBRSxFQUFFO1lBQ3pGLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQzVCLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQ3JFLENBQUM7WUFDRixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFdkIsTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDL0QsTUFBTSx1QkFBdUIsR0FBRyxrQkFBa0IsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDckYsTUFBTSxrQkFBa0IsR0FBRyx1QkFBdUIsRUFBRSxJQUFJLENBQ3RELE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQ3RDLENBQUM7WUFDRixJQUFJLGtCQUFrQjtnQkFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsa0JBQXlDLENBQUMsQ0FBQztRQUNoRyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLGFBQWEsQ0FBQztZQUMxQyxJQUFJLENBQUMsV0FBVztZQUNoQixJQUFJLENBQUMsbUJBQW1CO1lBQ3hCLElBQUksQ0FBQyxnQkFBZ0I7WUFDckIsSUFBSSxDQUFDLG9CQUFvQjtTQUMxQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixDQUFDLEVBQUUsRUFBRTtZQUNsRixJQUFJLGlCQUFpQixLQUFLLGNBQWMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUN2RCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBRWpCLElBQUksa0JBQWtCLEtBQUssZ0JBQWdCLENBQUMsRUFBRSxFQUFFLENBQUM7b0JBQy9DLGNBQWMsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO29CQUMxRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3RCLENBQUM7cUJBQU0sSUFBSSxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDekMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO29CQUN0RixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3RCLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sdUJBQXVCO1FBQzdCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDeEUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLHFCQUFxQixDQUFDLE9BQTRCO1FBQ3hELGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDL0QsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiLFNBQVMsQ0FBQyxDQUFDLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxFQUFFLEVBQUU7WUFDMUMsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxPQUFPLENBQUMsQ0FBQztZQUM1RCxJQUFJLFlBQVksSUFBSSxlQUFlLEtBQUssWUFBWTtnQkFDbEQsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN2RCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxTQUFTO1FBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVPLFlBQVk7UUFDbEIsTUFBTSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxDQUNoQyxNQUFNLENBQUMscUJBQXFCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDakUsQ0FBQztJQUNKLENBQUM7SUFFTyxLQUFLO1FBQ1gsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTyxRQUFRO1FBQ2QsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUMzQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixhQUFhLENBQUM7WUFDWixJQUFJLENBQUMsc0JBQXNCO1lBQzNCLElBQUksQ0FBQyxnQkFBZ0I7WUFDckIsSUFBSSxDQUFDLDBCQUEwQjtTQUNoQyxDQUFDO2FBQ0MsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiLFNBQVMsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFO1lBQ2hELFFBQVEsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNoRCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDM0QsTUFBTSxRQUFRLEdBQ1osb0JBQW9CLElBQUksb0JBQW9CLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLFFBQVEsQ0FBQyxDQUFDO1lBRWxGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBQyxVQUFVLEVBQUUsUUFBUSxFQUFDLENBQUMsQ0FBQztRQUN2RCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxZQUFZLENBQUMsVUFBMkM7UUFDOUQsTUFBTSxpQkFBaUIsR0FBRyxVQUFVLENBQUMsYUFBc0MsQ0FBQztRQUM1RSxNQUFNLGtCQUFrQixHQUN0QixpQkFBaUIsRUFBRSxRQUFRLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN6RSxNQUFNLHFCQUFxQixHQUFHLGtCQUFrQixFQUFFLElBQUksQ0FDcEQsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxLQUFLLHFCQUFxQixDQUNuRCxDQUFDO1FBQ0YsTUFBTSw2QkFBNkIsR0FDakMscUJBQXFCLEVBQUUsUUFBUSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEYsTUFBTSxZQUFZLEdBQUcsNkJBQTZCLEVBQUUsSUFBSSxDQUN0RCxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLEtBQUssV0FBVyxDQUN6QyxDQUFDO1FBQ0YsTUFBTSxvQkFBb0IsR0FBRyxZQUFZLEVBQUUsUUFBUSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzFGLE1BQU0sZ0JBQWdCLEdBQUcsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFNBQVMsS0FBSyxPQUFPLENBQUMsQ0FBQztRQUMxRixNQUFNLHdCQUF3QixHQUM1QixnQkFBZ0IsRUFBRSxRQUFRLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN2RSxNQUFNLG9CQUFvQixHQUFHLHdCQUF3QixFQUFFLElBQUksQ0FDekQsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxLQUFLLE9BQU8sQ0FDckMsQ0FBQztRQUNGLE1BQU0sb0JBQW9CLEdBQ3hCLG9CQUFvQixFQUFFLFFBQVE7WUFDN0IsS0FBSyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQWtDLENBQUM7UUFFOUUsT0FBTyxvQkFBb0IsSUFBSSxJQUFJLENBQUM7SUFDdEMsQ0FBQztJQUVPLFlBQVksQ0FBQyxtQkFBMkI7UUFDOUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDL0QsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzNELE1BQU0sY0FBYyxHQUFHLG9CQUFvQixJQUFJLG9CQUFvQixDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFFekYsSUFBSSxvQkFBb0I7Z0JBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1lBRTdFLElBQUksY0FBYyxFQUFFLENBQUM7Z0JBQ25CLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQ2xELGNBQWMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNyRCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQTFMVSw0QkFBNEI7a0hBQTVCLDRCQUE0Qjs7MkZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7RWxlbWVudFJlZiwgSW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIGZpbHRlcixcbiAgZnJvbUV2ZW50LFxuICBPYnNlcnZhYmxlLFxuICBTdWJqZWN0LFxuICBTdWJzY3JpcHRpb24sXG4gIHRha2UsXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtDYXJib25MaXN0Q29tcG9uZW50fSBmcm9tICcuLi9jYXJib24tbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHtEcmFnQW5kRHJvcEV2ZW50LCBNb3ZlUm93RGlyZWN0aW9ufSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2FyYm9uTGlzdERyYWdBbmREcm9wU2VydmljZSB7XG4gIHB1YmxpYyByZWFkb25seSBkcmFnQW5kRHJvcEV2ZW50cyQgPSBuZXcgU3ViamVjdDxEcmFnQW5kRHJvcEV2ZW50PigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX1JPV19EUkFHX0NMQVNTID0gJ3ZhbHRpbW8tY2FyYm9uLWxpc3RfX2RyYWctdGFibGUtcm93JztcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jYXJib25MaXN0RWxlbWVudFJlZlN1YmplY3QkID1cbiAgICBuZXcgQmVoYXZpb3JTdWJqZWN0PEVsZW1lbnRSZWY8Q2FyYm9uTGlzdENvbXBvbmVudD4gfCBudWxsPihudWxsKTtcbiAgcHJpdmF0ZSBnZXQgX2NhcmJvbkxpc3RFbGVtZW50UmVmJCgpOiBPYnNlcnZhYmxlPEVsZW1lbnRSZWY8Q2FyYm9uTGlzdENvbXBvbmVudD4+IHtcbiAgICByZXR1cm4gdGhpcy5fY2FyYm9uTGlzdEVsZW1lbnRSZWZTdWJqZWN0JC5waXBlKGZpbHRlcihyZWYgPT4gISFyZWYpKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3RhYmxlUm93c1N1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxIVE1MVGFibGVSb3dFbGVtZW50W10gfCBudWxsPihudWxsKTtcbiAgcHJpdmF0ZSBnZXQgX3RhYmxlUm93cyQoKTogT2JzZXJ2YWJsZTxIVE1MVGFibGVSb3dFbGVtZW50W10+IHtcbiAgICByZXR1cm4gdGhpcy5fdGFibGVSb3dzU3ViamVjdCQucGlwZShmaWx0ZXIodHJzID0+ICEhdHJzKSk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IF90YWJsZVJvd1RvTW92ZVN0YXJ0SW5kZXgkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xuICBwcml2YXRlIHJlYWRvbmx5IF90YWJsZVJvd1RvTW92ZVN1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxIVE1MVGFibGVSb3dFbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gIHByaXZhdGUgZ2V0IF90YWJsZVJvd1RvTW92ZSQoKTogT2JzZXJ2YWJsZTxIVE1MVGFibGVSb3dFbGVtZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX3RhYmxlUm93VG9Nb3ZlU3ViamVjdCQucGlwZShmaWx0ZXIodHIgPT4gISF0cikpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdGFibGVSb3dNb3VzZU92ZXJTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SFRNTFRhYmxlUm93RWxlbWVudCB8IG51bGw+KFxuICAgIG51bGxcbiAgKTtcbiAgcHJpdmF0ZSBnZXQgX3RhYmxlUm93TW91c2VPdmVyJCgpOiBPYnNlcnZhYmxlPEhUTUxUYWJsZVJvd0VsZW1lbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5fdGFibGVSb3dNb3VzZU92ZXJTdWJqZWN0JC5waXBlKGZpbHRlcih0ciA9PiAhIXRyKSk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IF9tb3VzZU1vdmVEaXJlY3Rpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNb3ZlUm93RGlyZWN0aW9uPihcbiAgICBNb3ZlUm93RGlyZWN0aW9uLlVQXG4gICk7XG5cbiAgcHJpdmF0ZSBfbGFzdE1vdXNlWSA9IDA7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcGF1c2VTd2FwJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByaXZhdGUgX21vdXNlTW92ZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBfbW91c2V1cFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBfdGFibGVSb3dzU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIHB1YmxpYyBzZXRDYXJib25MaXN0RWxlbWVudFJlZihyZWY6IEVsZW1lbnRSZWY8Q2FyYm9uTGlzdENvbXBvbmVudD4pOiB2b2lkIHtcbiAgICB0aGlzLl9jYXJib25MaXN0RWxlbWVudFJlZlN1YmplY3QkLm5leHQocmVmKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGFydERyYWcoc3RhcnRNb3VzZVk6IG51bWJlciwgcm93VG9CZU1vdmVkU3RhcnRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fbGFzdE1vdXNlWSA9IHN0YXJ0TW91c2VZO1xuICAgIHRoaXMuX3RhYmxlUm93VG9Nb3ZlU3RhcnRJbmRleCQubmV4dChyb3dUb0JlTW92ZWRTdGFydEluZGV4KTtcbiAgICB0aGlzLnNldFRhYmxlUm93cyhyb3dUb0JlTW92ZWRTdGFydEluZGV4KTtcbiAgICB0aGlzLm9wZW5Nb3VzZU1vdmVTdWJzY3JpcHRpb24oKTtcbiAgICB0aGlzLm9wZW5UYWJsZVJvd1N1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMub3Blbk1vdXNlVXBTdWJzY3JpcHRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgb3Blbk1vdXNlTW92ZVN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9tb3VzZU1vdmVTdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQoZG9jdW1lbnQsICdtb3VzZW1vdmUnKS5zdWJzY3JpYmUoKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgIHRoaXMuX21vdXNlTW92ZURpcmVjdGlvbiQubmV4dChcbiAgICAgICAgZS55ID4gdGhpcy5fbGFzdE1vdXNlWSA/IE1vdmVSb3dEaXJlY3Rpb24uRE9XTiA6IE1vdmVSb3dEaXJlY3Rpb24uVVBcbiAgICAgICk7XG4gICAgICB0aGlzLl9sYXN0TW91c2VZID0gZS55O1xuXG4gICAgICBjb25zdCBlbGVtZW50c1VuZGVyTW91c2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCc6aG92ZXInKTtcbiAgICAgIGNvbnN0IGFycmF5RWxlbWVudHNVbmRlck1vdXNlID0gZWxlbWVudHNVbmRlck1vdXNlICYmIEFycmF5LmZyb20oZWxlbWVudHNVbmRlck1vdXNlKTtcbiAgICAgIGNvbnN0IHRhYmxlUm93VW5kZXJNb3VzZSA9IGFycmF5RWxlbWVudHNVbmRlck1vdXNlPy5maW5kKFxuICAgICAgICBlbGVtZW50ID0+IGVsZW1lbnQubG9jYWxOYW1lID09PSAndHInXG4gICAgICApO1xuICAgICAgaWYgKHRhYmxlUm93VW5kZXJNb3VzZSkgdGhpcy5zZXRUYWJsZVJvd1VuZGVyTW91c2UodGFibGVSb3dVbmRlck1vdXNlIGFzIEhUTUxUYWJsZVJvd0VsZW1lbnQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvcGVuVGFibGVSb3dTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fdGFibGVSb3dzU3Vic2NyaXB0aW9uID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLl9wYXVzZVN3YXAkLFxuICAgICAgdGhpcy5fdGFibGVSb3dNb3VzZU92ZXIkLFxuICAgICAgdGhpcy5fdGFibGVSb3dUb01vdmUkLFxuICAgICAgdGhpcy5fbW91c2VNb3ZlRGlyZWN0aW9uJCxcbiAgICBdKS5zdWJzY3JpYmUoKFtwYXVzZVN3YXAsIHRhYmxlUm93TW91c2VPdmVyLCB0YWJsZVJvd1RvTW92ZSwgbW91c2VNb3ZlRGlyZWN0aW9uXSkgPT4ge1xuICAgICAgaWYgKHRhYmxlUm93TW91c2VPdmVyICE9PSB0YWJsZVJvd1RvTW92ZSAmJiAhcGF1c2VTd2FwKSB7XG4gICAgICAgIHRoaXMucGF1c2VTd2FwKCk7XG5cbiAgICAgICAgaWYgKG1vdXNlTW92ZURpcmVjdGlvbiA9PT0gTW92ZVJvd0RpcmVjdGlvbi5VUCkge1xuICAgICAgICAgIHRhYmxlUm93VG9Nb3ZlLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHRhYmxlUm93VG9Nb3ZlLCB0YWJsZVJvd01vdXNlT3Zlcik7XG4gICAgICAgICAgdGhpcy5jb250aW51ZVN3YXAoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0YWJsZVJvd01vdXNlT3Zlci5uZXh0U2libGluZykge1xuICAgICAgICAgIHRhYmxlUm93VG9Nb3ZlLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHRhYmxlUm93VG9Nb3ZlLCB0YWJsZVJvd01vdXNlT3Zlci5uZXh0U2libGluZyk7XG4gICAgICAgICAgdGhpcy5jb250aW51ZVN3YXAoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvcGVuTW91c2VVcFN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9tb3VzZXVwU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KGRvY3VtZW50LCAnbW91c2V1cCcpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnN0b3BEcmFnKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNldFRhYmxlUm93VW5kZXJNb3VzZShlbGVtZW50OiBIVE1MVGFibGVSb3dFbGVtZW50KTogdm9pZCB7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5fdGFibGVSb3dNb3VzZU92ZXJTdWJqZWN0JCwgdGhpcy5fdGFibGVSb3dzJF0pXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoW2N1cnJlbnRUYWJsZVJvdywgdGFibGVSb3dzXSkgPT4ge1xuICAgICAgICBjb25zdCBmaW5kVGFibGVSb3cgPSB0YWJsZVJvd3MuZmluZChyb3cgPT4gcm93ID09PSBlbGVtZW50KTtcbiAgICAgICAgaWYgKGZpbmRUYWJsZVJvdyAmJiBjdXJyZW50VGFibGVSb3cgIT09IGZpbmRUYWJsZVJvdylcbiAgICAgICAgICB0aGlzLl90YWJsZVJvd01vdXNlT3ZlclN1YmplY3QkLm5leHQoZmluZFRhYmxlUm93KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXVzZVN3YXAoKTogdm9pZCB7XG4gICAgdGhpcy5fcGF1c2VTd2FwJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBjb250aW51ZVN3YXAoKTogdm9pZCB7XG4gICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PlxuICAgICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB0aGlzLl9wYXVzZVN3YXAkLm5leHQoZmFsc2UpKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMuX3RhYmxlUm93c1N1YmplY3QkLm5leHQobnVsbCk7XG4gICAgdGhpcy5fdGFibGVSb3dNb3VzZU92ZXJTdWJqZWN0JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuX3BhdXNlU3dhcCQubmV4dChmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIHN0b3BEcmFnKCk6IHZvaWQge1xuICAgIHRoaXMuX21vdXNldXBTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fbW91c2VNb3ZlU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX3RhYmxlUm93c1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnJlc2V0KCk7XG4gICAgdGhpcy5lbWl0UmVvcmRlckV2ZW50KCk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRSZW9yZGVyRXZlbnQoKTogdm9pZCB7XG4gICAgY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLl9jYXJib25MaXN0RWxlbWVudFJlZiQsXG4gICAgICB0aGlzLl90YWJsZVJvd1RvTW92ZSQsXG4gICAgICB0aGlzLl90YWJsZVJvd1RvTW92ZVN0YXJ0SW5kZXgkLFxuICAgIF0pXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoW2VsZW1lbnRSZWYsIG1vdmVkUm93LCBzdGFydEluZGV4XSkgPT4ge1xuICAgICAgICBtb3ZlZFJvdy5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX1JPV19EUkFHX0NMQVNTKTtcbiAgICAgICAgY29uc3QgaHRtbFRhYmxlUm93RWxlbWVudHMgPSB0aGlzLmdldFRhYmxlUm93cyhlbGVtZW50UmVmKTtcbiAgICAgICAgY29uc3QgbmV3SW5kZXggPVxuICAgICAgICAgIGh0bWxUYWJsZVJvd0VsZW1lbnRzICYmIGh0bWxUYWJsZVJvd0VsZW1lbnRzLmZpbmRJbmRleChyb3cgPT4gcm93ID09PSBtb3ZlZFJvdyk7XG5cbiAgICAgICAgdGhpcy5kcmFnQW5kRHJvcEV2ZW50cyQubmV4dCh7c3RhcnRJbmRleCwgbmV3SW5kZXh9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUYWJsZVJvd3MoZWxlbWVudFJlZjogRWxlbWVudFJlZjxDYXJib25MaXN0Q29tcG9uZW50Pik6IEhUTUxUYWJsZVJvd0VsZW1lbnRbXSB8IG51bGwge1xuICAgIGNvbnN0IGNhcmJvbkxpc3RFbGVtZW50ID0gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIGFueSBhcyBIVE1MRGl2RWxlbWVudDtcbiAgICBjb25zdCBjYXJib25MaXN0Q2hpbGRyZW4gPVxuICAgICAgY2FyYm9uTGlzdEVsZW1lbnQ/LmNoaWxkcmVuICYmIEFycmF5LmZyb20oY2FyYm9uTGlzdEVsZW1lbnQ/LmNoaWxkcmVuKTtcbiAgICBjb25zdCB0YWJsZUNvbnRhaW5lckVsZW1lbnQgPSBjYXJib25MaXN0Q2hpbGRyZW4/LmZpbmQoXG4gICAgICBjaGlsZCA9PiBjaGlsZC5sb2NhbE5hbWUgPT09ICdjZHMtdGFibGUtY29udGFpbmVyJ1xuICAgICk7XG4gICAgY29uc3QgdGFibGVDb250YWluZXJFbGVtZW50Q2hpbGRyZW4gPVxuICAgICAgdGFibGVDb250YWluZXJFbGVtZW50Py5jaGlsZHJlbiAmJiBBcnJheS5mcm9tKHRhYmxlQ29udGFpbmVyRWxlbWVudC5jaGlsZHJlbik7XG4gICAgY29uc3QgdGFibGVFbGVtZW50ID0gdGFibGVDb250YWluZXJFbGVtZW50Q2hpbGRyZW4/LmZpbmQoXG4gICAgICBjaGlsZCA9PiBjaGlsZC5sb2NhbE5hbWUgPT09ICdjZHMtdGFibGUnXG4gICAgKTtcbiAgICBjb25zdCB0YWJsZUVsZW1lbnRDaGlsZHJlbiA9IHRhYmxlRWxlbWVudD8uY2hpbGRyZW4gJiYgQXJyYXkuZnJvbSh0YWJsZUVsZW1lbnQ/LmNoaWxkcmVuKTtcbiAgICBjb25zdCBodG1sVGFibGVFbGVtZW50ID0gdGFibGVFbGVtZW50Q2hpbGRyZW4/LmZpbmQoY2hpbGQgPT4gY2hpbGQubG9jYWxOYW1lID09PSAndGFibGUnKTtcbiAgICBjb25zdCBodG1sVGFibGVFbGVtZW50Q2hpbGRyZW4gPVxuICAgICAgaHRtbFRhYmxlRWxlbWVudD8uY2hpbGRyZW4gJiYgQXJyYXkuZnJvbShodG1sVGFibGVFbGVtZW50Py5jaGlsZHJlbik7XG4gICAgY29uc3QgaHRtbFRhYmxlQm9keUVsZW1lbnQgPSBodG1sVGFibGVFbGVtZW50Q2hpbGRyZW4/LmZpbmQoXG4gICAgICBjaGlsZCA9PiBjaGlsZC5sb2NhbE5hbWUgPT09ICd0Ym9keSdcbiAgICApO1xuICAgIGNvbnN0IGh0bWxUYWJsZVJvd0VsZW1lbnRzID1cbiAgICAgIGh0bWxUYWJsZUJvZHlFbGVtZW50Py5jaGlsZHJlbiAmJlxuICAgICAgKEFycmF5LmZyb20oaHRtbFRhYmxlQm9keUVsZW1lbnQuY2hpbGRyZW4pIGFzIGFueSBhcyBIVE1MVGFibGVSb3dFbGVtZW50W10pO1xuXG4gICAgcmV0dXJuIGh0bWxUYWJsZVJvd0VsZW1lbnRzIHx8IG51bGw7XG4gIH1cblxuICBwcml2YXRlIHNldFRhYmxlUm93cyh0YWJsZVJvd1RvTW92ZUluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLl9jYXJib25MaXN0RWxlbWVudFJlZiQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoZWxlbWVudFJlZiA9PiB7XG4gICAgICBjb25zdCBodG1sVGFibGVSb3dFbGVtZW50cyA9IHRoaXMuZ2V0VGFibGVSb3dzKGVsZW1lbnRSZWYpO1xuICAgICAgY29uc3QgdGFibGVSb3dUb01vdmUgPSBodG1sVGFibGVSb3dFbGVtZW50cyAmJiBodG1sVGFibGVSb3dFbGVtZW50c1t0YWJsZVJvd1RvTW92ZUluZGV4XTtcblxuICAgICAgaWYgKGh0bWxUYWJsZVJvd0VsZW1lbnRzKSB0aGlzLl90YWJsZVJvd3NTdWJqZWN0JC5uZXh0KGh0bWxUYWJsZVJvd0VsZW1lbnRzKTtcblxuICAgICAgaWYgKHRhYmxlUm93VG9Nb3ZlKSB7XG4gICAgICAgIHRoaXMuX3RhYmxlUm93VG9Nb3ZlU3ViamVjdCQubmV4dCh0YWJsZVJvd1RvTW92ZSk7XG4gICAgICAgIHRhYmxlUm93VG9Nb3ZlLmNsYXNzTGlzdC5hZGQodGhpcy5fUk9XX0RSQUdfQ0xBU1MpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2015-2024 Ritense BV, the Netherlands.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
export * from './carbon-list-drag-and-drop.service';
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhcmJvbi1saXN0L3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsY0FBYyxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vY2FyYm9uLWxpc3QtZHJhZy1hbmQtZHJvcC5zZXJ2aWNlJztcbiJdfQ==
|
|
@@ -119,7 +119,7 @@ export class DatePickerComponent {
|
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
121
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DatePickerComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
122
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: DatePickerComponent, selector: "v-date-picker", inputs: { name: "name", title: "title", titleTranslationKey: "titleTranslationKey", widthPx: "widthPx", fullWidth: "fullWidth", margin: "margin", disabled: "disabled", tooltip: "tooltip", required: "required", defaultDate: "defaultDate", defaultDateIsToday: "defaultDateIsToday", smallLabel: "smallLabel", clear$: "clear$", enableTime: "enableTime", carbonTheme: "carbonTheme" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.full-width": "this.fullWidthClass" } }, viewQueries: [{ propertyName: "datePickerElement", first: true, predicate: ["datePickerElement"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"v-date-picker-container\">\n <ng-container *ngTemplateOutlet=\"inputTitle\"></ng-container>\n <ng-container *ngTemplateOutlet=\"dateInput\"></ng-container>\n</div>\n\n<ng-template #inputTitle>\n <v-input-label\n *ngIf=\"title || titleTranslationKey\"\n [name]=\"name\"\n [required]=\"required\"\n [small]=\"smallLabel\"\n [titleTranslationKey]=\"titleTranslationKey\"\n [title]=\"title\"\n [tooltip]=\"tooltip\"\n >\n </v-input-label>\n</ng-template>\n\n<ng-template #dateInput>\n <input\n #datePickerElement\n cdsText\n [ngClass]=\"{\n 'v-date-picker--full-width': fullWidthClass,\n 'v-date-picker--margin': margin\n }\"\n [ngModel]=\"dateValue$ | async\"\n [disabled]=\"disabled\"\n [style.width.px]=\"widthPx + 20\"\n type=\"text\"\n />\n</ng-template>\n", styles: [".full-width{width:100%}.v-date-picker-container{display:flex;flex-direction:column}.v-date-picker{all:unset;font-size:var(--v-input-font-size);line-height:var(--v-input-line-height);color:var(--v-input-color);font-weight:var(--v-input-font-weight);padding-block-start:var(--v-input-padding-block);padding-block-end:var(--v-input-padding-block);padding-inline-start:var(--v-input-padding-inline);padding-inline-end:var(--v-input-padding-inline);background-color:var(--v-input-bg-color);border-radius:var(--v-input-border-radius);border:var(--v-input-border);transition:var(--v-input-transition);width:var(--v-input-default-width);box-sizing:border-box}.v-date-picker:focus{outline:var(--v-input-focus-border);outline-offset:var(--v-outline-offset)}.v-date-picker:disabled{color:var(--v-input-font-color-disabled);cursor:var(--v-input-disabled-cursor)}.v-date-picker--full-width{width:100%}.v-date-picker--margin{margin-block-end:var(--v-input-margin)}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.InputLabelComponent, selector: "v-input-label", inputs: ["name", "tooltip", "largeMargin", "small", "title", "titleTranslationKey", "required", "disabled", "carbonTheme"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
122
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: DatePickerComponent, selector: "v-date-picker", inputs: { name: "name", title: "title", titleTranslationKey: "titleTranslationKey", widthPx: "widthPx", fullWidth: "fullWidth", margin: "margin", disabled: "disabled", tooltip: "tooltip", required: "required", defaultDate: "defaultDate", defaultDateIsToday: "defaultDateIsToday", smallLabel: "smallLabel", clear$: "clear$", enableTime: "enableTime", carbonTheme: "carbonTheme" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.full-width": "this.fullWidthClass" } }, viewQueries: [{ propertyName: "datePickerElement", first: true, predicate: ["datePickerElement"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"v-date-picker-container\">\n <ng-container *ngTemplateOutlet=\"inputTitle\"></ng-container>\n <ng-container *ngTemplateOutlet=\"dateInput\"></ng-container>\n</div>\n\n<ng-template #inputTitle>\n <v-input-label\n *ngIf=\"title || titleTranslationKey\"\n [name]=\"name\"\n [required]=\"required\"\n [small]=\"smallLabel\"\n [titleTranslationKey]=\"titleTranslationKey\"\n [title]=\"title\"\n [tooltip]=\"tooltip\"\n >\n </v-input-label>\n</ng-template>\n\n<ng-template #dateInput>\n <input\n #datePickerElement\n cdsText\n [ngClass]=\"{\n 'v-date-picker--full-width': fullWidthClass,\n 'v-date-picker--margin': margin\n }\"\n [ngModel]=\"dateValue$ | async\"\n [disabled]=\"disabled\"\n [style.width.px]=\"widthPx + 20\"\n type=\"text\"\n />\n</ng-template>\n", styles: [".full-width{width:100%}.v-date-picker-container{display:flex;flex-direction:column}.v-date-picker{all:unset;font-size:var(--v-input-font-size);line-height:var(--v-input-line-height);color:var(--v-input-color);font-weight:var(--v-input-font-weight);padding-block-start:var(--v-input-padding-block);padding-block-end:var(--v-input-padding-block);padding-inline-start:var(--v-input-padding-inline);padding-inline-end:var(--v-input-padding-inline);background-color:var(--v-input-bg-color);border-radius:var(--v-input-border-radius);border:var(--v-input-border);transition:var(--v-input-transition);width:var(--v-input-default-width);box-sizing:border-box}.v-date-picker:focus{outline:var(--v-input-focus-border);outline-offset:var(--v-outline-offset)}.v-date-picker:disabled{color:var(--v-input-font-color-disabled);cursor:var(--v-input-disabled-cursor)}.v-date-picker--full-width{width:100%}.v-date-picker--margin{margin-block-end:var(--v-input-margin)}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.InputLabelComponent, selector: "v-input-label", inputs: ["name", "tooltip", "largeMargin", "small", "noMargin", "title", "titleTranslationKey", "required", "disabled", "carbonTheme"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
123
123
|
}
|
|
124
124
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DatePickerComponent, decorators: [{
|
|
125
125
|
type: Component,
|
|
@@ -41,7 +41,7 @@ export class FormioBuilderComponent {
|
|
|
41
41
|
: null;
|
|
42
42
|
this.triggerRebuild.emit(options);
|
|
43
43
|
return options;
|
|
44
|
-
}), delay(1000), tap(
|
|
44
|
+
}), delay(1000), tap(options => this.triggerRebuild.emit(options)));
|
|
45
45
|
}
|
|
46
46
|
ngOnInit() {
|
|
47
47
|
const originalEditForm = Components.baseEditForm;
|
|
@@ -69,4 +69,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
69
69
|
}], change: [{
|
|
70
70
|
type: Output
|
|
71
71
|
}] } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pby1idWlsZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS1pby9mb3JtLWlvLWJ1aWxkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGltby9jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWlvL2Zvcm0taW8tYnVpbGRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEVBQUMsS0FBSyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBV3JFLE1BQU0sT0FBTyxzQkFBc0I7SUErQmpDLFlBQ1UsZ0JBQWtDLEVBQ2xDLFlBQWdDO1FBRGhDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsaUJBQVksR0FBWixZQUFZLENBQW9CO1FBL0IxQyw0REFBNEQ7UUFDbEQsV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2xELG1CQUFjLEdBQWdDLElBQUksWUFBWSxFQUFFLENBQUM7UUFFL0QscUJBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQ2xFLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLEVBQzVDLG9CQUFvQixFQUFFLENBQ3ZCLENBQUM7UUFFTyxtQkFBYyxHQUE4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUM3RSxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDYixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUMvRSxNQUFNLE9BQU8sR0FDWCxPQUFPLGtCQUFrQixLQUFLLFFBQVE7Z0JBQ3BDLENBQUMsQ0FBQztvQkFDRSxRQUFRO29CQUNSLElBQUksRUFBRTt3QkFDSixDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMseUJBQXlCLENBQUMsa0JBQWtCLENBQUM7cUJBQzVFO2lCQUNGO2dCQUNILENBQUMsQ0FBQyxJQUFJLENBQUM7WUFFWCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsQyxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDLENBQUMsRUFDRixLQUFLLENBQUMsSUFBSSxDQUFDLEVBQ1gsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FDbEQsQ0FBQztJQUtDLENBQUM7SUFFSixRQUFRO1FBQ04sTUFBTSxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsWUFBWSxDQUFDO1FBQ2pELFVBQVUsQ0FBQyxZQUFZLEdBQUcsVUFBVSxHQUFHLE1BQU07WUFDM0MsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQztZQUM3QyxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsVUFBVTtpQkFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsS0FBSyxNQUFNLENBQUM7aUJBQ3ZDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxLQUFLLEtBQUssQ0FBQztpQkFDakQsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEtBQUssS0FBSyxDQUFDLENBQUM7WUFDckQsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQ3pCLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBSztRQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7OEdBbkRVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHdIQzdCbkMsMDBCQXdCQTs7MkZES2Esc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLHlCQUF5QjtzSEFLMUIsSUFBSTtzQkFBWixLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDI0IFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbXBvbmVudHN9IGZyb20gJ2Zvcm1pb2pzJztcbmltcG9ydCB7ZGVsYXksIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Rm9ybWlvT3B0aW9uc30gZnJvbSAnQGZvcm1pby9hbmd1bGFyL2Zvcm1pby5jb21tb24nO1xuaW1wb3J0IHtGb3JtSW9TdGF0ZVNlcnZpY2V9IGZyb20gJy4vc2VydmljZXMvZm9ybS1pby1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbHRpbW8tZm9ybS1pby1idWlsZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0taW8tYnVpbGRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Zvcm0taW8tYnVpbGRlci5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1pb0J1aWxkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBmb3JtOiBhbnk7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxuICBAT3V0cHV0KCkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgcHVibGljIHRyaWdnZXJSZWJ1aWxkOiBFdmVudEVtaXR0ZXI8Rm9ybWlvT3B0aW9ucz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcmVhZG9ubHkgY3VycmVudExhbmd1YWdlJCA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5zdHJlYW0oJ2tleScpLnBpcGUoXG4gICAgbWFwKCgpID0+IHRoaXMudHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZyksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICApO1xuXG4gIHJlYWRvbmx5IGZvcm1pb09wdGlvbnMkOiBPYnNlcnZhYmxlPEZvcm1pb09wdGlvbnM+ID0gdGhpcy5jdXJyZW50TGFuZ3VhZ2UkLnBpcGUoXG4gICAgbWFwKGxhbmd1YWdlID0+IHtcbiAgICAgIGNvbnN0IGZvcm1pb1RyYW5zbGF0aW9ucyA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdmb3JtaW9UcmFuc2xhdGlvbnMnKTtcbiAgICAgIGNvbnN0IG9wdGlvbnMgPVxuICAgICAgICB0eXBlb2YgZm9ybWlvVHJhbnNsYXRpb25zID09PSAnb2JqZWN0J1xuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICBsYW5ndWFnZSxcbiAgICAgICAgICAgICAgaTE4bjoge1xuICAgICAgICAgICAgICAgIFtsYW5ndWFnZV06IHRoaXMuc3RhdGVTZXJ2aWNlLmZsYXR0ZW5UcmFuc2xhdGlvbnNPYmplY3QoZm9ybWlvVHJhbnNsYXRpb25zKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IG51bGw7XG5cbiAgICAgIHRoaXMudHJpZ2dlclJlYnVpbGQuZW1pdChvcHRpb25zKTtcbiAgICAgIHJldHVybiBvcHRpb25zO1xuICAgIH0pLFxuICAgIGRlbGF5KDEwMDApLFxuICAgIHRhcChvcHRpb25zID0+IHRoaXMudHJpZ2dlclJlYnVpbGQuZW1pdChvcHRpb25zKSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdGF0ZVNlcnZpY2U6IEZvcm1Jb1N0YXRlU2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3Qgb3JpZ2luYWxFZGl0Rm9ybSA9IENvbXBvbmVudHMuYmFzZUVkaXRGb3JtO1xuICAgIENvbXBvbmVudHMuYmFzZUVkaXRGb3JtID0gZnVuY3Rpb24gKC4uLmV4dGVuZCkge1xuICAgICAgY29uc3QgZWRpdEZvcm0gPSBvcmlnaW5hbEVkaXRGb3JtKC4uLmV4dGVuZCk7XG4gICAgICBjb25zdCBrZXlGaWVsZCA9IGVkaXRGb3JtLmNvbXBvbmVudHNcbiAgICAgICAgLmZpbmQoZWxlbWVudCA9PiBlbGVtZW50LmtleSA9PT0gJ3RhYnMnKVxuICAgICAgICAuY29tcG9uZW50cy5maW5kKGVsZW1lbnQgPT4gZWxlbWVudC5rZXkgPT09ICdhcGknKVxuICAgICAgICAuY29tcG9uZW50cy5maW5kKGVsZW1lbnQgPT4gZWxlbWVudC5rZXkgPT09ICdrZXknKTtcbiAgICAgIGRlbGV0ZSBrZXlGaWVsZC52YWxpZGF0ZTtcbiAgICAgIHJldHVybiBlZGl0Rm9ybTtcbiAgICB9O1xuICB9XG5cbiAgb25DaGFuZ2UoZXZlbnQpIHtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjQgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48ZGl2PlxuICA8Zm9ybS1idWlsZGVyXG4gICAgW2Zvcm1dPVwiZm9ybVwiXG4gICAgW3JlYnVpbGRdPVwidHJpZ2dlclJlYnVpbGRcIlxuICAgIFtvcHRpb25zXT1cImZvcm1pb09wdGlvbnMkIHwgYXN5bmNcIlxuICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gID48L2Zvcm0tYnVpbGRlcj5cbjwvZGl2PlxuIl19
|
|
@@ -118,7 +118,7 @@ export class InputComponent {
|
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
120
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
121
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: InputComponent, selector: "v-input", inputs: { name: "name", type: "type", title: "title", titleTranslationKey: "titleTranslationKey", defaultValue: "defaultValue", widthPx: "widthPx", fullWidth: "fullWidth", margin: "margin", smallMargin: "smallMargin", disabled: "disabled", step: "step", min: "min", maxLength: "maxLength", tooltip: "tooltip", required: "required", hideNumberSpinBox: "hideNumberSpinBox", smallLabel: "smallLabel", rows: "rows", clear$: "clear$", carbonTheme: "carbonTheme", placeholder: "placeholder" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.full-width": "this.fullWidthClass" } }, usesOnChanges: true, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"v-input-container\">\n <ng-container *ngTemplateOutlet=\"inputTitle\"></ng-container>\n <ng-container *ngTemplateOutlet=\"textInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"textareaInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"passwordInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"numberInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"digitOnlyInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"checkboxInput\"></ng-container>\n</div>\n\n<ng-template #inputTitle>\n <v-input-label\n *ngIf=\"title || titleTranslationKey\"\n [name]=\"name\"\n [required]=\"required\"\n [small]=\"smallLabel\"\n [titleTranslationKey]=\"titleTranslationKey\"\n [title]=\"title\"\n [tooltip]=\"tooltip\"\n >\n </v-input-label>\n</ng-template>\n\n<ng-template #textInput>\n <input\n *ngIf=\"isText\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin\n }\"\n [ngModel]=\"inputValue$ | async\"\n cdsText\n [disabled]=\"disabled\"\n [maxLength]=\"maxLength\"\n [min]=\"0\"\n [name]=\"name\"\n [step]=\"step\"\n (ngModelChange)=\"onValueChange($event)\"\n (keydown)=\"onKeydown($event)\"\n [style.width.px]=\"widthPx\"\n [placeholder]=\"placeholder\"\n type=\"text\"\n />\n</ng-template>\n\n<ng-template #textareaInput>\n <textarea\n *ngIf=\"isTextarea\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin\n }\"\n cdsTextArea\n [disabled]=\"disabled\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n [rows]=\"rows\"\n (keydown)=\"onKeydown($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n [style.width.px]=\"widthPx\"\n ></textarea>\n</ng-template>\n\n<ng-template #passwordInput>\n <ng-container *ngIf=\"isPassword\">\n <div\n *ngIf=\"{showPassword: showPassword$ | async} as obs\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin\n }\"\n class=\"v-input__password-container\"\n >\n <input\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass\n }\"\n cdsText\n [disabled]=\"disabled\"\n [maxLength]=\"maxLength\"\n [min]=\"0\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n [step]=\"step\"\n (keydown)=\"onKeydown($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n [style.width.px]=\"widthPx\"\n [type]=\"obs.showPassword ? 'text' : 'password'\"\n />\n <div class=\"v-input__password-icon\">\n <v-button\n [mdiIcon]=\"obs.showPassword ? 'eye-off' : 'eye'\"\n type=\"icon-grey-small\"\n (clickEvent)=\"toggleShowPassword()\"\n ></v-button>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #numberInput>\n <input\n *ngIf=\"isNumber\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin,\n 'v-input--hide-spinbox': hideNumberSpinBox\n }\"\n cdsText\n [disabled]=\"disabled\"\n [maxLength]=\"maxLength\"\n [min]=\"min\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n [step]=\"step\"\n (keydown)=\"onKeydown($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n [style.width.px]=\"widthPx\"\n type=\"number\"\n />\n</ng-template>\n\n<ng-template #digitOnlyInput>\n <input\n *ngIf=\"isDigitOnly\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin\n }\"\n cdsText\n digitOnly\n [disabled]=\"disabled\"\n [maxLength]=\"maxLength\"\n [min]=\"0\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n [step]=\"step\"\n (keydown)=\"onKeydown($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n [style.width.px]=\"widthPx\"\n type=\"text\"\n />\n</ng-template>\n\n<ng-template #checkboxInput>\n <div *ngIf=\"isCheckbox\" (click)=\"stopCheckboxEventPropagation($event)\">\n <cds-checkbox\n [disabled]=\"disabled\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n (ngModelChange)=\"onValueChange($event)\"\n >\n </cds-checkbox>\n </div>\n</ng-template>\n", styles: [".full-width{width:100%}.v-input-container{display:flex;flex-direction:column}.v-input__label{margin:0;font-size:var(--v-input-title-font-size);color:var(--v-input-title-font-color);line-height:var(--v-input-title-line-height);font-weight:var(--v-input-title-font-weight);margin-block-end:var(--v-input-title-margin)}.v-input{all:unset;font-size:var(--v-input-font-size);line-height:var(--v-input-line-height);color:var(--v-input-color);font-weight:var(--v-input-font-weight);padding-block-start:var(--v-input-padding-block);padding-block-end:var(--v-input-padding-block);padding-inline-start:var(--v-input-padding-inline);padding-inline-end:var(--v-input-padding-inline);background-color:var(--v-input-bg-color);border-radius:var(--v-input-border-radius);border:var(--v-input-border);transition:var(--v-input-transition);width:var(--v-input-default-width);box-sizing:border-box}.v-input:focus{outline:var(--v-input-focus-border);outline-offset:var(--v-outline-offset)}.v-input:disabled{color:var(--v-input-font-color-disabled);cursor:var(--v-input-disabled-cursor)}.v-input--full-width{width:100%}.v-input--margin{margin-block-end:var(--v-input-margin)}.v-input--small-margin{margin-block-end:var(--v-input-small-margin)}.v-input__password-container{display:flex;flex-direction:row;align-items:center}.v-input__password-icon{margin-inline-start:var(--v-input-password-icon-spacing)}.v-input--hide-spinbox::-webkit-outer-spin-button,.v-input--hide-spinbox::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.v-input--hide-spinbox{-moz-appearance:textfield}.v-input--checkbox{width:20px;height:20px;margin-block-end:var(--v-input-margin)}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.InputLabelComponent, selector: "v-input-label", inputs: ["name", "tooltip", "largeMargin", "small", "title", "titleTranslationKey", "required", "disabled", "carbonTheme"] }, { kind: "component", type: i4.ButtonComponent, selector: "v-button", inputs: ["type", "mdiIcon", "disabled", "title", "titleTranslationKey"], outputs: ["clickEvent"] }, { kind: "component", type: i5.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "directive", type: i5.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i5.TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: ["theme", "invalid", "skeleton"] }, { kind: "directive", type: i6.DigitOnlyDirective, selector: "[digitOnly]", inputs: ["decimal", "decimalSeparator", "allowNegatives", "allowPaste", "negativeSign", "min", "max", "pattern"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
|
|
121
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: InputComponent, selector: "v-input", inputs: { name: "name", type: "type", title: "title", titleTranslationKey: "titleTranslationKey", defaultValue: "defaultValue", widthPx: "widthPx", fullWidth: "fullWidth", margin: "margin", smallMargin: "smallMargin", disabled: "disabled", step: "step", min: "min", maxLength: "maxLength", tooltip: "tooltip", required: "required", hideNumberSpinBox: "hideNumberSpinBox", smallLabel: "smallLabel", rows: "rows", clear$: "clear$", carbonTheme: "carbonTheme", placeholder: "placeholder" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.full-width": "this.fullWidthClass" } }, usesOnChanges: true, ngImport: i0, template: "<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div class=\"v-input-container\">\n <ng-container *ngTemplateOutlet=\"inputTitle\"></ng-container>\n <ng-container *ngTemplateOutlet=\"textInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"textareaInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"passwordInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"numberInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"digitOnlyInput\"></ng-container>\n <ng-container *ngTemplateOutlet=\"checkboxInput\"></ng-container>\n</div>\n\n<ng-template #inputTitle>\n <v-input-label\n *ngIf=\"title || titleTranslationKey\"\n [name]=\"name\"\n [required]=\"required\"\n [small]=\"smallLabel\"\n [titleTranslationKey]=\"titleTranslationKey\"\n [title]=\"title\"\n [tooltip]=\"tooltip\"\n >\n </v-input-label>\n</ng-template>\n\n<ng-template #textInput>\n <input\n *ngIf=\"isText\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin\n }\"\n [ngModel]=\"inputValue$ | async\"\n cdsText\n [disabled]=\"disabled\"\n [maxLength]=\"maxLength\"\n [min]=\"0\"\n [name]=\"name\"\n [step]=\"step\"\n (ngModelChange)=\"onValueChange($event)\"\n (keydown)=\"onKeydown($event)\"\n [style.width.px]=\"widthPx\"\n [placeholder]=\"placeholder\"\n type=\"text\"\n />\n</ng-template>\n\n<ng-template #textareaInput>\n <textarea\n *ngIf=\"isTextarea\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin\n }\"\n cdsTextArea\n [disabled]=\"disabled\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n [rows]=\"rows\"\n (keydown)=\"onKeydown($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n [style.width.px]=\"widthPx\"\n ></textarea>\n</ng-template>\n\n<ng-template #passwordInput>\n <ng-container *ngIf=\"isPassword\">\n <div\n *ngIf=\"{showPassword: showPassword$ | async} as obs\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin\n }\"\n class=\"v-input__password-container\"\n >\n <input\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass\n }\"\n cdsText\n [disabled]=\"disabled\"\n [maxLength]=\"maxLength\"\n [min]=\"0\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n [step]=\"step\"\n (keydown)=\"onKeydown($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n [style.width.px]=\"widthPx\"\n [type]=\"obs.showPassword ? 'text' : 'password'\"\n />\n <div class=\"v-input__password-icon\">\n <v-button\n [mdiIcon]=\"obs.showPassword ? 'eye-off' : 'eye'\"\n type=\"icon-grey-small\"\n (clickEvent)=\"toggleShowPassword()\"\n ></v-button>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #numberInput>\n <input\n *ngIf=\"isNumber\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin,\n 'v-input--hide-spinbox': hideNumberSpinBox\n }\"\n cdsText\n [disabled]=\"disabled\"\n [maxLength]=\"maxLength\"\n [min]=\"min\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n [step]=\"step\"\n (keydown)=\"onKeydown($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n [style.width.px]=\"widthPx\"\n type=\"number\"\n />\n</ng-template>\n\n<ng-template #digitOnlyInput>\n <input\n *ngIf=\"isDigitOnly\"\n [ngClass]=\"{\n 'v-input--full-width': fullWidthClass,\n 'v-input--margin': margin,\n 'v-input--small-margin': smallMargin\n }\"\n cdsText\n digitOnly\n [disabled]=\"disabled\"\n [maxLength]=\"maxLength\"\n [min]=\"0\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n [step]=\"step\"\n (keydown)=\"onKeydown($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n [style.width.px]=\"widthPx\"\n type=\"text\"\n />\n</ng-template>\n\n<ng-template #checkboxInput>\n <div *ngIf=\"isCheckbox\" (click)=\"stopCheckboxEventPropagation($event)\">\n <cds-checkbox\n [disabled]=\"disabled\"\n [name]=\"name\"\n [ngModel]=\"inputValue$ | async\"\n (ngModelChange)=\"onValueChange($event)\"\n >\n </cds-checkbox>\n </div>\n</ng-template>\n", styles: [".full-width{width:100%}.v-input-container{display:flex;flex-direction:column}.v-input__label{margin:0;font-size:var(--v-input-title-font-size);color:var(--v-input-title-font-color);line-height:var(--v-input-title-line-height);font-weight:var(--v-input-title-font-weight);margin-block-end:var(--v-input-title-margin)}.v-input{all:unset;font-size:var(--v-input-font-size);line-height:var(--v-input-line-height);color:var(--v-input-color);font-weight:var(--v-input-font-weight);padding-block-start:var(--v-input-padding-block);padding-block-end:var(--v-input-padding-block);padding-inline-start:var(--v-input-padding-inline);padding-inline-end:var(--v-input-padding-inline);background-color:var(--v-input-bg-color);border-radius:var(--v-input-border-radius);border:var(--v-input-border);transition:var(--v-input-transition);width:var(--v-input-default-width);box-sizing:border-box}.v-input:focus{outline:var(--v-input-focus-border);outline-offset:var(--v-outline-offset)}.v-input:disabled{color:var(--v-input-font-color-disabled);cursor:var(--v-input-disabled-cursor)}.v-input--full-width{width:100%}.v-input--margin{margin-block-end:var(--v-input-margin)}.v-input--small-margin{margin-block-end:var(--v-input-small-margin)}.v-input__password-container{display:flex;flex-direction:row;align-items:center}.v-input__password-icon{margin-inline-start:var(--v-input-password-icon-spacing)}.v-input--hide-spinbox::-webkit-outer-spin-button,.v-input--hide-spinbox::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.v-input--hide-spinbox{-moz-appearance:textfield}.v-input--checkbox{width:20px;height:20px;margin-block-end:var(--v-input-margin)}\n/*!\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.InputLabelComponent, selector: "v-input-label", inputs: ["name", "tooltip", "largeMargin", "small", "noMargin", "title", "titleTranslationKey", "required", "disabled", "carbonTheme"] }, { kind: "component", type: i4.ButtonComponent, selector: "v-button", inputs: ["type", "mdiIcon", "disabled", "title", "titleTranslationKey"], outputs: ["clickEvent"] }, { kind: "component", type: i5.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "directive", type: i5.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i5.TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: ["theme", "invalid", "skeleton"] }, { kind: "directive", type: i6.DigitOnlyDirective, selector: "[digitOnly]", inputs: ["decimal", "decimalSeparator", "allowNegatives", "allowPaste", "negativeSign", "min", "max", "pattern"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
|
|
122
122
|
}
|
|
123
123
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: InputComponent, decorators: [{
|
|
124
124
|
type: Component,
|