myrta-ui 14.0.0-beta.1 → 14.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/esm2020/lib/components/badges/components/badge/badge.component.mjs +2 -2
- package/esm2020/lib/components/button/button.component.mjs +3 -3
- package/esm2020/lib/components/cdk-tooltip/cdk-tooltip.directive.mjs +1 -1
- package/esm2020/lib/components/chars-left/chars-left.component.mjs +6 -3
- package/esm2020/lib/components/dropdown/dropdown.component.mjs +2 -2
- package/esm2020/lib/components/error-message/error-message.component.mjs +7 -4
- package/esm2020/lib/components/form/checkbox/checkbox.component.mjs +5 -12
- package/esm2020/lib/components/form/checkbox/checkbox.enum.mjs +2 -5
- package/esm2020/lib/components/form/checkbox-group/checkbox-group.component.mjs +10 -4
- package/esm2020/lib/components/form/checkbox-group/components/checkbox-group-header/checkbox-group-header.component.mjs +1 -1
- package/esm2020/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.mjs +24 -15
- package/esm2020/lib/components/form/document-editor/document-editor.component.mjs +1 -1
- package/esm2020/lib/components/form/editor/config/default-inline-style.mjs +6 -0
- package/esm2020/lib/components/form/editor/editor.component.mjs +45 -13
- package/esm2020/lib/components/form/editor/editor.enum.mjs +2 -0
- package/esm2020/lib/components/form/input-date-time/input-date-time.component.mjs +50 -18
- package/esm2020/lib/components/form/input-date-time/input-date-time.enum.mjs +1 -1
- package/esm2020/lib/components/form/input-datepicker/input-datepicker.component.mjs +13 -8
- package/esm2020/lib/components/form/input-file/input-file.component.mjs +4 -3
- package/esm2020/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.mjs +3 -3
- package/esm2020/lib/components/form/input-file-image/input-file-image.component.mjs +23 -12
- package/esm2020/lib/components/form/input-file-image/input-file-image.enum.mjs +3 -3
- package/esm2020/lib/components/form/input-number/input-number.component.mjs +54 -27
- package/esm2020/lib/components/form/input-number/input-number.enum.mjs +1 -1
- package/esm2020/lib/components/form/input-opt/components/input-opt/input-opt.component.mjs +2 -4
- package/esm2020/lib/components/form/input-password/input-password.component.mjs +37 -23
- package/esm2020/lib/components/form/input-password/input-password.enum.mjs +1 -1
- package/esm2020/lib/components/form/input-password/input-password.module.mjs +12 -4
- package/esm2020/lib/components/form/input-phone/input-phone.component.mjs +2 -2
- package/esm2020/lib/components/form/input-search/input-search.component.mjs +44 -36
- package/esm2020/lib/components/form/input-search/input-search.enum.mjs +1 -1
- package/esm2020/lib/components/form/input-search/input-search.module.mjs +7 -4
- package/esm2020/lib/components/form/input-select/input-select.component.mjs +10 -4
- package/esm2020/lib/components/form/input-tel/assets/base64.mjs +4 -0
- package/esm2020/lib/components/form/input-tel/data/all-countries.mjs +1323 -0
- package/esm2020/lib/components/form/input-tel/data/country-iso.enum.mjs +247 -0
- package/esm2020/lib/components/form/input-tel/data/phone-number-format.enum.mjs +6 -0
- package/esm2020/lib/components/form/input-tel/data/search-country-field.enum.mjs +8 -0
- package/esm2020/lib/components/form/input-tel/directives/input-tel.directive.mjs +62 -0
- package/esm2020/lib/components/form/input-tel/enums/input-phone.enum.mjs +7 -0
- package/esm2020/lib/components/form/input-tel/input-tel.component.mjs +389 -0
- package/esm2020/lib/components/form/input-tel/input-tel.module.mjs +47 -0
- package/esm2020/lib/components/form/input-tel/models/country.model.mjs +2 -0
- package/esm2020/lib/components/form/input-text/input-text.component.mjs +35 -29
- package/esm2020/lib/components/form/input-textarea/input-textarea.component.mjs +47 -42
- package/esm2020/lib/components/form/input-timepicker/input-timepicker.component.mjs +3 -3
- package/esm2020/lib/components/form/radio/radio.component.mjs +3 -3
- package/esm2020/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.mjs +49 -0
- package/esm2020/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.mjs +69 -0
- package/esm2020/lib/components/form/radio-group/helpers/filter-search-group.mjs +27 -0
- package/esm2020/lib/components/form/radio-group/helpers/get-item-by-id.mjs +11 -0
- package/esm2020/lib/components/form/radio-group/helpers/move-selected-to-first.mjs +27 -0
- package/esm2020/lib/components/form/radio-group/models/radio-group.model.mjs +2 -0
- package/esm2020/lib/components/form/radio-group/radio-group.component.mjs +185 -0
- package/esm2020/lib/components/form/radio-group/radio-group.module.mjs +47 -0
- package/esm2020/lib/components/form/rating/rating.component.mjs +4 -4
- package/esm2020/lib/components/form/switch/switch.component.mjs +2 -2
- package/esm2020/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.mjs +3 -3
- package/esm2020/lib/components/gallery/components/gallery-item/gallery-item.component.mjs +4 -4
- package/esm2020/lib/components/hint-error-message/hint-error-message.component.mjs +6 -6
- package/esm2020/lib/components/label/label.component.mjs +3 -3
- package/esm2020/lib/components/modal/modal.component.mjs +13 -3
- package/esm2020/lib/components/paginator/paginator.component.mjs +16 -6
- package/esm2020/lib/components/paginator/paginator.module.mjs +8 -8
- package/esm2020/lib/components/progress/progress.component.mjs +2 -2
- package/esm2020/lib/components/save-state/components/save-state-editor/save-state-editor.component.mjs +2 -2
- package/esm2020/lib/components/save-state/save-state.component.mjs +3 -3
- package/esm2020/lib/components/save-state/save-state.enum.mjs +1 -1
- package/esm2020/lib/components/table/table.component.mjs +3 -3
- package/esm2020/lib/components/tabs/tabs-group/tabs-group.component.mjs +2 -2
- package/esm2020/lib/components/tooltip/tooltip-trigger/tooltip-trigger.component.mjs +4 -14
- package/esm2020/lib/components/wrappers/content-wrapper/content-wrapper.component.mjs +2 -2
- package/esm2020/lib/enums/typed.input.state.mjs +1 -1
- package/esm2020/lib/services/index.mjs +2 -1
- package/esm2020/lib/services/mrx-autosave/mrx-autosave.service.mjs +1 -1
- package/esm2020/lib/services/mrx-form-validator/constants/invalid-messages.mjs +10 -0
- package/esm2020/lib/services/mrx-form-validator/helpers/get-error-message.helper.mjs +10 -0
- package/esm2020/lib/services/mrx-form-validator/helpers/get-sorting-validations.helper.mjs +28 -0
- package/esm2020/lib/services/mrx-form-validator/models/index.mjs +4 -0
- package/esm2020/lib/services/mrx-form-validator/models/validations-options.model.mjs +2 -0
- package/esm2020/lib/services/mrx-form-validator/models/validations-settings.model.mjs +2 -0
- package/esm2020/lib/services/mrx-form-validator/models/validations-types.model.mjs +22 -0
- package/esm2020/lib/services/mrx-form-validator/mrx-form-validator.mjs +84 -183
- package/esm2020/lib/services/mrx-form-validator/validations/callback.validation.mjs +15 -0
- package/esm2020/lib/services/mrx-form-validator/validations/email.validation.mjs +11 -0
- package/esm2020/lib/services/mrx-form-validator/validations/max-length.validation.mjs +10 -0
- package/esm2020/lib/services/mrx-form-validator/validations/max-value.validation.mjs +10 -0
- package/esm2020/lib/services/mrx-form-validator/validations/min-length.validation.mjs +11 -0
- package/esm2020/lib/services/mrx-form-validator/validations/min-value.validation.mjs +10 -0
- package/esm2020/lib/services/mrx-form-validator/validations/pattern.validation.mjs +11 -0
- package/esm2020/lib/services/mrx-form-validator/validations/required.validation.mjs +22 -0
- package/esm2020/public-api.mjs +7 -1
- package/fesm2015/myrta-ui.mjs +4004 -1339
- package/fesm2015/myrta-ui.mjs.map +1 -1
- package/fesm2020/myrta-ui.mjs +3999 -1341
- package/fesm2020/myrta-ui.mjs.map +1 -1
- package/lib/components/chars-left/chars-left.component.d.ts +1 -0
- package/lib/components/error-message/error-message.component.d.ts +2 -1
- package/lib/components/form/checkbox/checkbox.component.d.ts +2 -4
- package/lib/components/form/checkbox/checkbox.enum.d.ts +0 -4
- package/lib/components/form/checkbox-group/checkbox-group.component.d.ts +3 -1
- package/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.d.ts +4 -1
- package/lib/components/form/editor/config/default-inline-style.d.ts +11 -0
- package/lib/components/form/editor/editor.component.d.ts +13 -4
- package/lib/components/form/editor/editor.enum.d.ts +5 -0
- package/lib/components/form/input-date-time/input-date-time.component.d.ts +6 -2
- package/lib/components/form/input-date-time/input-date-time.enum.d.ts +1 -1
- package/lib/components/form/input-datepicker/input-datepicker.component.d.ts +2 -1
- package/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.d.ts +6 -0
- package/lib/components/form/input-file-image/input-file-image.component.d.ts +4 -2
- package/lib/components/form/input-file-image/input-file-image.enum.d.ts +2 -2
- package/lib/components/form/input-number/input-number.component.d.ts +11 -3
- package/lib/components/form/input-number/input-number.enum.d.ts +2 -2
- package/lib/components/form/input-opt/components/input-opt/input-opt.component.d.ts +2 -2
- package/lib/components/form/input-password/input-password.component.d.ts +14 -9
- package/lib/components/form/input-password/input-password.enum.d.ts +4 -0
- package/lib/components/form/input-password/input-password.module.d.ts +3 -1
- package/lib/components/form/input-search/input-search.component.d.ts +15 -11
- package/lib/components/form/input-search/input-search.enum.d.ts +5 -0
- package/lib/components/form/input-search/input-search.module.d.ts +2 -1
- package/lib/components/form/input-select/input-select.component.d.ts +3 -1
- package/lib/components/form/input-tel/assets/base64.d.ts +3 -0
- package/lib/components/form/input-tel/data/all-countries.d.ts +1 -0
- package/lib/components/form/input-tel/data/country-iso.enum.d.ts +245 -0
- package/lib/components/form/input-tel/data/phone-number-format.enum.d.ts +5 -0
- package/lib/components/form/input-tel/data/search-country-field.enum.d.ts +6 -0
- package/lib/components/form/input-tel/directives/input-tel.directive.d.ts +21 -0
- package/lib/components/form/input-tel/enums/input-phone.enum.d.ts +11 -0
- package/lib/components/form/input-tel/input-tel.component.d.ts +89 -0
- package/lib/components/form/input-tel/input-tel.module.d.ts +14 -0
- package/lib/components/form/input-tel/models/country.model.d.ts +18 -0
- package/lib/components/form/input-text/input-text.component.d.ts +12 -9
- package/lib/components/form/input-textarea/input-textarea.component.d.ts +12 -15
- package/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.d.ts +20 -0
- package/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.d.ts +28 -0
- package/lib/components/form/radio-group/helpers/filter-search-group.d.ts +2 -0
- package/lib/components/form/radio-group/helpers/get-item-by-id.d.ts +2 -0
- package/lib/components/form/radio-group/helpers/move-selected-to-first.d.ts +2 -0
- package/lib/components/form/radio-group/models/radio-group.model.d.ts +12 -0
- package/lib/components/form/radio-group/radio-group.component.d.ts +60 -0
- package/lib/components/form/radio-group/radio-group.module.d.ts +16 -0
- package/lib/components/modal/modal.component.d.ts +1 -0
- package/lib/components/paginator/paginator.component.d.ts +3 -1
- package/lib/components/paginator/paginator.module.d.ts +3 -3
- package/lib/components/save-state/save-state.enum.d.ts +1 -1
- package/lib/components/tooltip/tooltip-trigger/tooltip-trigger.component.d.ts +0 -1
- package/lib/helpers/formatting-iso-to-string.d.ts +1 -1
- package/lib/services/index.d.ts +1 -0
- package/lib/services/mrx-autosave/mrx-autosave.service.d.ts +1 -1
- package/lib/services/mrx-form-validator/constants/invalid-messages.d.ts +9 -0
- package/lib/services/mrx-form-validator/helpers/get-error-message.helper.d.ts +3 -0
- package/lib/services/mrx-form-validator/helpers/get-sorting-validations.helper.d.ts +2 -0
- package/lib/services/mrx-form-validator/models/index.d.ts +3 -0
- package/lib/services/mrx-form-validator/models/validations-options.model.d.ts +28 -0
- package/lib/services/mrx-form-validator/models/validations-settings.model.d.ts +7 -0
- package/lib/services/mrx-form-validator/models/validations-types.model.d.ts +19 -0
- package/lib/services/mrx-form-validator/mrx-form-validator.d.ts +4 -32
- package/lib/services/mrx-form-validator/validations/callback.validation.d.ts +6 -0
- package/lib/services/mrx-form-validator/validations/email.validation.d.ts +6 -0
- package/lib/services/mrx-form-validator/validations/max-length.validation.d.ts +6 -0
- package/lib/services/mrx-form-validator/validations/max-value.validation.d.ts +6 -0
- package/lib/services/mrx-form-validator/validations/min-length.validation.d.ts +6 -0
- package/lib/services/mrx-form-validator/validations/min-value.validation.d.ts +6 -0
- package/lib/services/mrx-form-validator/validations/pattern.validation.d.ts +6 -0
- package/lib/services/mrx-form-validator/validations/required.validation.d.ts +6 -0
- package/package.json +3 -1
- package/public-api.d.ts +5 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "../../../input-search/input-search.component";
|
|
6
|
+
import * as i4 from "../../../../label/label.component";
|
|
7
|
+
export class RadioGroupHeaderComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.searchValue = '';
|
|
10
|
+
this.searchSize = 'medium';
|
|
11
|
+
this.searchable = false;
|
|
12
|
+
this.searchPlaceholder = '';
|
|
13
|
+
// LABEL
|
|
14
|
+
this.tooltip = '';
|
|
15
|
+
this.labelText = '';
|
|
16
|
+
this.linkText = '';
|
|
17
|
+
this.checkedItemsCount = 0;
|
|
18
|
+
this.required = false;
|
|
19
|
+
this.updateradioGroupSearchValue = new EventEmitter();
|
|
20
|
+
}
|
|
21
|
+
changeSearchValue(searchValue) {
|
|
22
|
+
this.updateradioGroupSearchValue.emit(searchValue);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
RadioGroupHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
26
|
+
RadioGroupHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RadioGroupHeaderComponent, selector: "mrx-radio-group-header", inputs: { searchSize: "searchSize", searchable: "searchable", searchPlaceholder: "searchPlaceholder", tooltip: "tooltip", labelText: "labelText", linkText: "linkText", checkedItemsCount: "checkedItemsCount", required: "required" }, outputs: { updateradioGroupSearchValue: "updateradioGroupSearchValue" }, ngImport: i0, template: "<mrx-label\r\n *ngIf=\"labelText\"\r\n [tooltip]=\"tooltip\"\r\n [required]=\"required\"\r\n>{{ labelText }}</mrx-label>\r\n\r\n<div class=\"mrx-radio-group-head--search mb-12px\" *ngIf=\"searchable\">\r\n <mrx-input-search\r\n [ngModel]=\"searchValue\"\r\n [size]=\"searchSize\"\r\n [placeholder]=\"searchPlaceholder\"\r\n (ngModelChange)=\"changeSearchValue($event)\"\r\n ></mrx-input-search>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.InputSearchComponent, selector: "mrx-input-search", inputs: ["fields", "disabled", "required", "readonly", "maxlength", "minlength", "placeholder", "customClasses", "mask", "size", "invalid", "invalidMessage", "checkInvalid", "restrictInput"], outputs: ["changed", "modelChange", "blurred", "cleared", "searched"] }, { kind: "component", type: i4.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeCheckboxValue", "clickedLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupHeaderComponent, decorators: [{
|
|
28
|
+
type: Component,
|
|
29
|
+
args: [{ selector: 'mrx-radio-group-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mrx-label\r\n *ngIf=\"labelText\"\r\n [tooltip]=\"tooltip\"\r\n [required]=\"required\"\r\n>{{ labelText }}</mrx-label>\r\n\r\n<div class=\"mrx-radio-group-head--search mb-12px\" *ngIf=\"searchable\">\r\n <mrx-input-search\r\n [ngModel]=\"searchValue\"\r\n [size]=\"searchSize\"\r\n [placeholder]=\"searchPlaceholder\"\r\n (ngModelChange)=\"changeSearchValue($event)\"\r\n ></mrx-input-search>\r\n</div>\r\n" }]
|
|
30
|
+
}], ctorParameters: function () { return []; }, propDecorators: { searchSize: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}], searchable: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], searchPlaceholder: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], tooltip: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], labelText: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], linkText: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], checkedItemsCount: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], required: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], updateradioGroupSearchValue: [{
|
|
47
|
+
type: Output
|
|
48
|
+
}] } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL3JhZGlvLWdyb3VwL2NvbXBvbmVudHMvcmFkaW8tZ3JvdXAtaGVhZGVyL3JhZGlvLWdyb3VwLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9yYWRpby1ncm91cC9jb21wb25lbnRzL3JhZGlvLWdyb3VwLWhlYWRlci9yYWRpby1ncm91cC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUWhHLE1BQU0sT0FBTyx5QkFBeUI7SUFpQnBDO1FBaEJPLGdCQUFXLEdBQUcsRUFBRSxDQUFBO1FBRWQsZUFBVSxHQUEwQixRQUFRLENBQUM7UUFFN0MsZUFBVSxHQUFHLEtBQUssQ0FBQTtRQUNsQixzQkFBaUIsR0FBRyxFQUFFLENBQUE7UUFFL0IsUUFBUTtRQUNDLFlBQU8sR0FBRyxFQUFFLENBQUE7UUFDWixjQUFTLEdBQUcsRUFBRSxDQUFBO1FBQ2QsYUFBUSxHQUFHLEVBQUUsQ0FBQTtRQUNiLHNCQUFpQixHQUFHLENBQUMsQ0FBQTtRQUNyQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRVQsZ0NBQTJCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7SUFFaEYsQ0FBQztJQUVWLGlCQUFpQixDQUFDLFdBQWtDO1FBQ3pELElBQUksQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDcEQsQ0FBQzs7c0hBckJVLHlCQUF5QjswR0FBekIseUJBQXlCLCtXQ1R0QywyYUFjQTsyRkRMYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUVqQix1QkFBdUIsQ0FBQyxNQUFNOzBFQUt0QyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRVcsMkJBQTJCO3NCQUEzQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5wdXRTZWFyY2hTaXplc1R5cGVzIH0gZnJvbSAnLi8uLi8uLi8uLi9pbnB1dC1zZWFyY2gvaW5wdXQtc2VhcmNoLmVudW0nO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmFkaW9Hcm91cFNlYXJjaFZhbHVlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3JhZGlvLWdyb3VwLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LXJhZGlvLWdyb3VwLWhlYWRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLWdyb3VwLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFJhZGlvR3JvdXBIZWFkZXJDb21wb25lbnQge1xyXG4gIHB1YmxpYyBzZWFyY2hWYWx1ZSA9ICcnXHJcblxyXG4gIEBJbnB1dCgpIHNlYXJjaFNpemU6IElucHV0U2VhcmNoU2l6ZXNUeXBlcyA9ICdtZWRpdW0nO1xyXG5cclxuICBASW5wdXQoKSBzZWFyY2hhYmxlID0gZmFsc2VcclxuICBASW5wdXQoKSBzZWFyY2hQbGFjZWhvbGRlciA9ICcnXHJcblxyXG4gIC8vIExBQkVMXHJcbiAgQElucHV0KCkgdG9vbHRpcCA9ICcnXHJcbiAgQElucHV0KCkgbGFiZWxUZXh0ID0gJydcclxuICBASW5wdXQoKSBsaW5rVGV4dCA9ICcnXHJcbiAgQElucHV0KCkgY2hlY2tlZEl0ZW1zQ291bnQgPSAwXHJcbiAgQElucHV0KCkgcmVxdWlyZWQgPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyB1cGRhdGVyYWRpb0dyb3VwU2VhcmNoVmFsdWU6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VTZWFyY2hWYWx1ZShzZWFyY2hWYWx1ZTogUmFkaW9Hcm91cFNlYXJjaFZhbHVlKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwZGF0ZXJhZGlvR3JvdXBTZWFyY2hWYWx1ZS5lbWl0KHNlYXJjaFZhbHVlKVxyXG4gIH1cclxufVxyXG4iLCI8bXJ4LWxhYmVsXHJcbiAgKm5nSWY9XCJsYWJlbFRleHRcIlxyXG4gIFt0b29sdGlwXT1cInRvb2x0aXBcIlxyXG4gIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXHJcbj57eyBsYWJlbFRleHQgfX08L21yeC1sYWJlbD5cclxuXHJcbjxkaXYgY2xhc3M9XCJtcngtcmFkaW8tZ3JvdXAtaGVhZC0tc2VhcmNoIG1iLTEycHhcIiAqbmdJZj1cInNlYXJjaGFibGVcIj5cclxuICA8bXJ4LWlucHV0LXNlYXJjaFxyXG4gICAgW25nTW9kZWxdPVwic2VhcmNoVmFsdWVcIlxyXG4gICAgW3NpemVdPVwic2VhcmNoU2l6ZVwiXHJcbiAgICBbcGxhY2Vob2xkZXJdPVwic2VhcmNoUGxhY2Vob2xkZXJcIlxyXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlU2VhcmNoVmFsdWUoJGV2ZW50KVwiXHJcbiAgPjwvbXJ4LWlucHV0LXNlYXJjaD5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "../../../radio/radio.component";
|
|
6
|
+
export class RadioGroupItemComponent {
|
|
7
|
+
constructor(detector) {
|
|
8
|
+
this.detector = detector;
|
|
9
|
+
this.invalid = false;
|
|
10
|
+
this.name = '';
|
|
11
|
+
this.selectedValue = null;
|
|
12
|
+
this.displaced = false;
|
|
13
|
+
this.level = 0;
|
|
14
|
+
this.bold = false;
|
|
15
|
+
this.animationTrigger = null;
|
|
16
|
+
this.disabled = false;
|
|
17
|
+
this.readonly = false;
|
|
18
|
+
this.animationEnd = new EventEmitter();
|
|
19
|
+
this.radioChanged = new EventEmitter();
|
|
20
|
+
}
|
|
21
|
+
get isIndeterminate() {
|
|
22
|
+
return this.item.id === null;
|
|
23
|
+
}
|
|
24
|
+
trackByFn(index, item) {
|
|
25
|
+
return item.id;
|
|
26
|
+
}
|
|
27
|
+
radioChangeModel(value, item) {
|
|
28
|
+
if (this.isIndeterminate) {
|
|
29
|
+
this.radioChanged.emit({ value: false, item });
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
this.radioChanged.emit({ value: value, item });
|
|
33
|
+
}
|
|
34
|
+
this.detector.detectChanges();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
RadioGroupItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupItemComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
38
|
+
RadioGroupItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RadioGroupItemComponent, selector: "mrx-radio-group-item", inputs: { invalid: "invalid", name: "name", selectedValue: "selectedValue", item: "item", displaced: "displaced", level: "level", bold: "bold", animationTrigger: "animationTrigger", isLast: "isLast", disabled: "disabled", readonly: "readonly" }, outputs: { animationEnd: "animationEnd", radioChanged: "radioChanged" }, ngImport: i0, template: "<div class=\"mrx-radio-group__item\" [class.mrx-radio-group__item--buttom-ident]=\"!isLast\">\r\n <div class=\"mrx-radio-group__item--array\" *ngIf=\"item.array.length && level < 10; else singleradioTemplate\">\r\n <div class=\"mrx-radio-group__item--array-head mb-12px\">\r\n\r\n <mrx-radio\r\n [ngModel]=\"selectedValue?.id\"\r\n [value]=\"item.id\"\r\n [name]=\"name\"\r\n [boldLabel]=\"bold\"\r\n [invalid]=\"invalid\"\r\n [indeterminate]=\"isIndeterminate\"\r\n (ngModelChange)=\"radioChangeModel($event, item)\"\r\n >{{ item.text }}</mrx-radio>\r\n </div>\r\n\r\n <div class=\"mrx-radio-group__item--array-list\">\r\n <ng-container>\r\n <mrx-radio-group-item\r\n *ngFor=\"let child of item.array; trackBy: trackByFn\"\r\n [level]=\"level + 1\"\r\n [selectedValue]=\"selectedValue\"\r\n [item]=\"child\"\r\n [invalid]=\"invalid\"\r\n [bold]=\"bold\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n [animationTrigger]=\"animationTrigger\"\r\n (radioChanged)=\"radioChanged.emit($event)\"\r\n ></mrx-radio-group-item>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <ng-template #singleradioTemplate>\r\n <div class=\"mrx-radio-group__item--single\">\r\n <mrx-radio\r\n [ngModel]=\"selectedValue?.id\"\r\n [indeterminate]=\"false\"\r\n [name]=\"name\"\r\n [boldLabel]=\"bold\"\r\n [type]=\"'default'\"\r\n [value]=\"item.id\"\r\n [invalid]=\"invalid\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n (ngModelChange)=\"radioChangeModel($event, item)\"\r\n >{{ item.text }}</mrx-radio>\r\n </div>\r\n </ng-template>\r\n</div>\r\n\r\n\r\n", styles: [".mrx-radio-group__item--array-head{display:flex;justify-content:flex-start;align-items:center}.mrx-radio-group__item--array-list{padding-left:20px}.mrx-radio-group__item--buttom-ident{margin-bottom:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.RadioComponent, selector: "mrx-radio", inputs: ["required", "type", "name", "boldLabel", "disabled", "readonly", "placeholder", "label", "customClasses", "invalid", "value"] }, { kind: "component", type: RadioGroupItemComponent, selector: "mrx-radio-group-item", inputs: ["invalid", "name", "selectedValue", "item", "displaced", "level", "bold", "animationTrigger", "isLast", "disabled", "readonly"], outputs: ["animationEnd", "radioChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupItemComponent, decorators: [{
|
|
40
|
+
type: Component,
|
|
41
|
+
args: [{ selector: 'mrx-radio-group-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mrx-radio-group__item\" [class.mrx-radio-group__item--buttom-ident]=\"!isLast\">\r\n <div class=\"mrx-radio-group__item--array\" *ngIf=\"item.array.length && level < 10; else singleradioTemplate\">\r\n <div class=\"mrx-radio-group__item--array-head mb-12px\">\r\n\r\n <mrx-radio\r\n [ngModel]=\"selectedValue?.id\"\r\n [value]=\"item.id\"\r\n [name]=\"name\"\r\n [boldLabel]=\"bold\"\r\n [invalid]=\"invalid\"\r\n [indeterminate]=\"isIndeterminate\"\r\n (ngModelChange)=\"radioChangeModel($event, item)\"\r\n >{{ item.text }}</mrx-radio>\r\n </div>\r\n\r\n <div class=\"mrx-radio-group__item--array-list\">\r\n <ng-container>\r\n <mrx-radio-group-item\r\n *ngFor=\"let child of item.array; trackBy: trackByFn\"\r\n [level]=\"level + 1\"\r\n [selectedValue]=\"selectedValue\"\r\n [item]=\"child\"\r\n [invalid]=\"invalid\"\r\n [bold]=\"bold\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n [animationTrigger]=\"animationTrigger\"\r\n (radioChanged)=\"radioChanged.emit($event)\"\r\n ></mrx-radio-group-item>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <ng-template #singleradioTemplate>\r\n <div class=\"mrx-radio-group__item--single\">\r\n <mrx-radio\r\n [ngModel]=\"selectedValue?.id\"\r\n [indeterminate]=\"false\"\r\n [name]=\"name\"\r\n [boldLabel]=\"bold\"\r\n [type]=\"'default'\"\r\n [value]=\"item.id\"\r\n [invalid]=\"invalid\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n (ngModelChange)=\"radioChangeModel($event, item)\"\r\n >{{ item.text }}</mrx-radio>\r\n </div>\r\n </ng-template>\r\n</div>\r\n\r\n\r\n", styles: [".mrx-radio-group__item--array-head{display:flex;justify-content:flex-start;align-items:center}.mrx-radio-group__item--array-list{padding-left:20px}.mrx-radio-group__item--buttom-ident{margin-bottom:12px}\n"] }]
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { invalid: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], name: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], selectedValue: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], item: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], displaced: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], level: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], bold: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}], animationTrigger: [{
|
|
57
|
+
type: Input
|
|
58
|
+
}], isLast: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], disabled: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], readonly: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], animationEnd: [{
|
|
65
|
+
type: Output
|
|
66
|
+
}], radioChanged: [{
|
|
67
|
+
type: Output
|
|
68
|
+
}] } });
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9yYWRpby1ncm91cC9jb21wb25lbnRzL3JhZGlvLWdyb3VwLWl0ZW0vcmFkaW8tZ3JvdXAtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9yYWRpby1ncm91cC9jb21wb25lbnRzL3JhZGlvLWdyb3VwLWl0ZW0vcmFkaW8tZ3JvdXAtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTdkIsTUFBTSxPQUFPLHVCQUF1QjtJQWtCbEMsWUFBb0IsUUFBMkI7UUFBM0IsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFoQi9CLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUNsQixrQkFBYSxHQUEwQixJQUFJLENBQUM7UUFFNUMsY0FBUyxHQUFHLEtBQUssQ0FBQTtRQUNqQixVQUFLLEdBQUcsQ0FBQyxDQUFBO1FBQ0YsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUNwQixxQkFBZ0IsR0FBbUIsSUFBSSxDQUFBO1FBRWhDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVoQixpQkFBWSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQzVELGlCQUFZLEdBQzNCLElBQUksWUFBWSxFQUE0RCxDQUFDO0lBRy9FLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUE7SUFDOUIsQ0FBQztJQUVNLFNBQVMsQ0FBQyxLQUFhLEVBQUUsSUFBb0I7UUFDbEQsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxLQUE4QixFQUFFLElBQW9CO1FBQzFFLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtTQUMvQzthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7U0FDL0M7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQy9CLENBQUM7O29IQXJDVSx1QkFBdUI7d0dBQXZCLHVCQUF1QiwyWENoQnBDLHM0REFxREEsdS9CRHJDYSx1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDRSxzQkFBc0IsbUJBR2YsdUJBQXVCLENBQUMsTUFBTTt3R0FJL0IsT0FBTztzQkFBdEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFFVyxZQUFZO3NCQUE1QixNQUFNO2dCQUNVLFlBQVk7c0JBQTVCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSYWRpb0dyb3VwSXRlbSwgUmFkaW9JbmRldGVybWluYXRlU3RhdGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmFkaW8tZ3JvdXAubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtcmFkaW8tZ3JvdXAtaXRlbScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLWdyb3VwLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JhZGlvLWdyb3VwLWl0ZW0uY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmFkaW9Hcm91cEl0ZW1Db21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkVmFsdWU6IFJhZGlvR3JvdXBJdGVtIHwgbnVsbCA9IG51bGw7XHJcbiAgQElucHV0KCkgaXRlbSE6IFJhZGlvR3JvdXBJdGVtXHJcbiAgQElucHV0KCkgZGlzcGxhY2VkID0gZmFsc2VcclxuICBASW5wdXQoKSBsZXZlbCA9IDBcclxuICBASW5wdXQoKSBwdWJsaWMgYm9sZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGFuaW1hdGlvblRyaWdnZXI6IGJvb2xlYW4gfCBudWxsID0gbnVsbFxyXG4gIEBJbnB1dCgpIGlzTGFzdCE6IGJvb2xlYW5cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBhbmltYXRpb25FbmQ6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIHJhZGlvQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHsgdmFsdWU6IFJhZGlvSW5kZXRlcm1pbmF0ZVN0YXRlLCBpdGVtOiBSYWRpb0dyb3VwSXRlbSB9PiA9XHJcbiAgICBuZXcgRXZlbnRFbWl0dGVyPHsgdmFsdWU6IFJhZGlvSW5kZXRlcm1pbmF0ZVN0YXRlLCBpdGVtOiBSYWRpb0dyb3VwSXRlbSB9PigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc0luZGV0ZXJtaW5hdGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtLmlkID09PSBudWxsXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IFJhZGlvR3JvdXBJdGVtKSB7XHJcbiAgICByZXR1cm4gaXRlbS5pZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByYWRpb0NoYW5nZU1vZGVsKHZhbHVlOiBSYWRpb0luZGV0ZXJtaW5hdGVTdGF0ZSwgaXRlbTogUmFkaW9Hcm91cEl0ZW0pOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmlzSW5kZXRlcm1pbmF0ZSkge1xyXG4gICAgICB0aGlzLnJhZGlvQ2hhbmdlZC5lbWl0KHsgdmFsdWU6IGZhbHNlLCBpdGVtIH0pXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJhZGlvQ2hhbmdlZC5lbWl0KHsgdmFsdWU6IHZhbHVlLCBpdGVtIH0pXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKClcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1yeC1yYWRpby1ncm91cF9faXRlbVwiIFtjbGFzcy5tcngtcmFkaW8tZ3JvdXBfX2l0ZW0tLWJ1dHRvbS1pZGVudF09XCIhaXNMYXN0XCI+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC1yYWRpby1ncm91cF9faXRlbS0tYXJyYXlcIiAqbmdJZj1cIml0ZW0uYXJyYXkubGVuZ3RoICYmIGxldmVsIDwgMTA7IGVsc2Ugc2luZ2xlcmFkaW9UZW1wbGF0ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1yYWRpby1ncm91cF9faXRlbS0tYXJyYXktaGVhZCBtYi0xMnB4XCI+XHJcblxyXG4gICAgICA8bXJ4LXJhZGlvXHJcbiAgICAgICAgICBbbmdNb2RlbF09XCJzZWxlY3RlZFZhbHVlPy5pZFwiXHJcbiAgICAgICAgICBbdmFsdWVdPVwiaXRlbS5pZFwiXHJcbiAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgICAgICAgIFtib2xkTGFiZWxdPVwiYm9sZFwiXHJcbiAgICAgICAgICBbaW52YWxpZF09XCJpbnZhbGlkXCJcclxuICAgICAgICAgIFtpbmRldGVybWluYXRlXT1cImlzSW5kZXRlcm1pbmF0ZVwiXHJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJyYWRpb0NoYW5nZU1vZGVsKCRldmVudCwgaXRlbSlcIlxyXG4gICAgICA+e3sgaXRlbS50ZXh0IH19PC9tcngtcmFkaW8+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LXJhZGlvLWdyb3VwX19pdGVtLS1hcnJheS1saXN0XCI+XHJcbiAgICAgIDxuZy1jb250YWluZXI+XHJcbiAgICAgICAgPG1yeC1yYWRpby1ncm91cC1pdGVtXHJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjaGlsZCBvZiBpdGVtLmFycmF5OyB0cmFja0J5OiB0cmFja0J5Rm5cIlxyXG4gICAgICAgICAgICBbbGV2ZWxdPVwibGV2ZWwgKyAxXCJcclxuICAgICAgICAgICAgW3NlbGVjdGVkVmFsdWVdPVwic2VsZWN0ZWRWYWx1ZVwiXHJcbiAgICAgICAgICAgIFtpdGVtXT1cImNoaWxkXCJcclxuICAgICAgICAgICAgW2ludmFsaWRdPVwiaW52YWxpZFwiXHJcbiAgICAgICAgICAgIFtib2xkXT1cImJvbGRcIlxyXG4gICAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgW2FuaW1hdGlvblRyaWdnZXJdPVwiYW5pbWF0aW9uVHJpZ2dlclwiXHJcbiAgICAgICAgICAgIChyYWRpb0NoYW5nZWQpPVwicmFkaW9DaGFuZ2VkLmVtaXQoJGV2ZW50KVwiXHJcbiAgICAgICAgPjwvbXJ4LXJhZGlvLWdyb3VwLWl0ZW0+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAjc2luZ2xlcmFkaW9UZW1wbGF0ZT5cclxuICAgIDxkaXYgY2xhc3M9XCJtcngtcmFkaW8tZ3JvdXBfX2l0ZW0tLXNpbmdsZVwiPlxyXG4gICAgICA8bXJ4LXJhZGlvXHJcbiAgICAgICAgICBbbmdNb2RlbF09XCJzZWxlY3RlZFZhbHVlPy5pZFwiXHJcbiAgICAgICAgICBbaW5kZXRlcm1pbmF0ZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgICAgICAgIFtib2xkTGFiZWxdPVwiYm9sZFwiXHJcbiAgICAgICAgICBbdHlwZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgW3ZhbHVlXT1cIml0ZW0uaWRcIlxyXG4gICAgICAgICAgW2ludmFsaWRdPVwiaW52YWxpZFwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInJhZGlvQ2hhbmdlTW9kZWwoJGV2ZW50LCBpdGVtKVwiXHJcbiAgICAgID57eyBpdGVtLnRleHQgfX08L21yeC1yYWRpbz5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvZGl2PlxyXG5cclxuXHJcbiJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export const filterSearchGroup = (list, searchValue) => {
|
|
2
|
+
if (!list)
|
|
3
|
+
return list;
|
|
4
|
+
const getIntersectionsFromString = (array) => {
|
|
5
|
+
const searchArray = [];
|
|
6
|
+
array.forEach((item) => {
|
|
7
|
+
if (item.text.toLowerCase().includes(searchValue.toLowerCase())) {
|
|
8
|
+
if (item.array) {
|
|
9
|
+
const newArray = getIntersectionsFromString(item.array);
|
|
10
|
+
searchArray.push({ ...item, array: newArray });
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
searchArray.push(item);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
if (item.array) {
|
|
18
|
+
const newArray = getIntersectionsFromString(item.array);
|
|
19
|
+
newArray.length && searchArray.push({ ...item, array: newArray });
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
return searchArray;
|
|
24
|
+
};
|
|
25
|
+
return getIntersectionsFromString(list);
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXNlYXJjaC1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL3JhZGlvLWdyb3VwL2hlbHBlcnMvZmlsdGVyLXNlYXJjaC1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLElBQXNCLEVBQUUsV0FBa0MsRUFBRSxFQUFFO0lBQzlGLElBQUksQ0FBQyxJQUFJO1FBQUUsT0FBTyxJQUFJLENBQUE7SUFFdEIsTUFBTSwwQkFBMEIsR0FBRyxDQUFDLEtBQXVCLEVBQUUsRUFBRTtRQUM3RCxNQUFNLFdBQVcsR0FBcUIsRUFBRSxDQUFBO1FBRXhDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFvQixFQUFFLEVBQUU7WUFDckMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRTtnQkFDL0QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO29CQUNkLE1BQU0sUUFBUSxHQUFxQiwwQkFBMEIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7b0JBQ3pFLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBQyxHQUFHLElBQUksRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFDLENBQUMsQ0FBQTtpQkFDN0M7cUJBQU07b0JBQ0wsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtpQkFDdkI7YUFDRjtpQkFBTTtnQkFDTCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7b0JBQ2QsTUFBTSxRQUFRLEdBQXFCLDBCQUEwQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtvQkFDekUsUUFBUSxDQUFDLE1BQU0sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUMsR0FBRyxJQUFJLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBQyxDQUFDLENBQUE7aUJBQ2hFO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQTtRQUVGLE9BQU8sV0FBVyxDQUFBO0lBQ3BCLENBQUMsQ0FBQTtJQUVELE9BQU8sMEJBQTBCLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDekMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmFkaW9Hcm91cEl0ZW0sIFJhZGlvR3JvdXBTZWFyY2hWYWx1ZSB9IGZyb20gJy4uL21vZGVscy9yYWRpby1ncm91cC5tb2RlbCc7XHJcblxyXG5leHBvcnQgY29uc3QgZmlsdGVyU2VhcmNoR3JvdXAgPSAobGlzdDogUmFkaW9Hcm91cEl0ZW1bXSwgc2VhcmNoVmFsdWU6IFJhZGlvR3JvdXBTZWFyY2hWYWx1ZSkgPT4ge1xyXG4gIGlmICghbGlzdCkgcmV0dXJuIGxpc3RcclxuXHJcbiAgY29uc3QgZ2V0SW50ZXJzZWN0aW9uc0Zyb21TdHJpbmcgPSAoYXJyYXk6IFJhZGlvR3JvdXBJdGVtW10pID0+IHtcclxuICAgIGNvbnN0IHNlYXJjaEFycmF5OiBSYWRpb0dyb3VwSXRlbVtdID0gW11cclxuXHJcbiAgICBhcnJheS5mb3JFYWNoKChpdGVtOiBSYWRpb0dyb3VwSXRlbSkgPT4ge1xyXG4gICAgICBpZiAoaXRlbS50ZXh0LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVmFsdWUudG9Mb3dlckNhc2UoKSkpIHtcclxuICAgICAgICBpZiAoaXRlbS5hcnJheSkge1xyXG4gICAgICAgICAgY29uc3QgbmV3QXJyYXk6IFJhZGlvR3JvdXBJdGVtW10gPSBnZXRJbnRlcnNlY3Rpb25zRnJvbVN0cmluZyhpdGVtLmFycmF5KVxyXG4gICAgICAgICAgc2VhcmNoQXJyYXkucHVzaCh7Li4uaXRlbSwgYXJyYXk6IG5ld0FycmF5fSlcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgc2VhcmNoQXJyYXkucHVzaChpdGVtKVxyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAoaXRlbS5hcnJheSkge1xyXG4gICAgICAgICAgY29uc3QgbmV3QXJyYXk6IFJhZGlvR3JvdXBJdGVtW10gPSBnZXRJbnRlcnNlY3Rpb25zRnJvbVN0cmluZyhpdGVtLmFycmF5KVxyXG4gICAgICAgICAgbmV3QXJyYXkubGVuZ3RoICYmIHNlYXJjaEFycmF5LnB1c2goey4uLml0ZW0sIGFycmF5OiBuZXdBcnJheX0pXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIHJldHVybiBzZWFyY2hBcnJheVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGdldEludGVyc2VjdGlvbnNGcm9tU3RyaW5nKGxpc3QpXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export const getItemById = (list, itemId) => {
|
|
2
|
+
const findById = (acc, el) => {
|
|
3
|
+
if (el?.id === itemId)
|
|
4
|
+
return el;
|
|
5
|
+
if (el?.array)
|
|
6
|
+
return el.array.reduce(findById, acc);
|
|
7
|
+
return acc;
|
|
8
|
+
};
|
|
9
|
+
return list.reduce(findById, null);
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWl0ZW0tYnktaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9yYWRpby1ncm91cC9oZWxwZXJzL2dldC1pdGVtLWJ5LWlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLElBQXNCLEVBQUUsTUFBdUIsRUFBRSxFQUFFO0lBQzdFLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBMEIsRUFBRSxFQUF5QixFQUF5QixFQUFFO1FBQ2hHLElBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxNQUFNO1lBQUcsT0FBTyxFQUFFLENBQUM7UUFDbkMsSUFBSyxFQUFFLEVBQUUsS0FBSztZQUFHLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxDQUFBO0lBRUQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNyQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSYWRpb0dyb3VwSXRlbSB9IGZyb20gJy4uL21vZGVscy9yYWRpby1ncm91cC5tb2RlbCc7XHJcblxyXG5leHBvcnQgY29uc3QgZ2V0SXRlbUJ5SWQgPSAobGlzdDogUmFkaW9Hcm91cEl0ZW1bXSwgaXRlbUlkOiBzdHJpbmcgfCBudW1iZXIpID0+IHtcclxuICBjb25zdCBmaW5kQnlJZCA9IChhY2M6IFJhZGlvR3JvdXBJdGVtIHwgbnVsbCwgZWw6IFJhZGlvR3JvdXBJdGVtIHwgbnVsbCk6IFJhZGlvR3JvdXBJdGVtIHwgbnVsbCA9PiB7XHJcbiAgICBpZiAoIGVsPy5pZCA9PT0gaXRlbUlkICkgcmV0dXJuIGVsO1xyXG4gICAgaWYgKCBlbD8uYXJyYXkgKSByZXR1cm4gZWwuYXJyYXkucmVkdWNlKGZpbmRCeUlkLCBhY2MpO1xyXG4gICAgcmV0dXJuIGFjYztcclxuICB9XHJcblxyXG4gIHJldHVybiBsaXN0LnJlZHVjZShmaW5kQnlJZCwgbnVsbCk7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export const moveSelectedToFirst = (list, sortable, targetItem) => {
|
|
2
|
+
if (!list || !sortable || !targetItem)
|
|
3
|
+
return list;
|
|
4
|
+
const sortArray = (array) => {
|
|
5
|
+
for (let i = 0; i < array.length; i++) {
|
|
6
|
+
const item = array[i];
|
|
7
|
+
if (item.id === targetItem.id) {
|
|
8
|
+
const sortedArr = [item, ...array.filter((x) => x.id !== item.id)];
|
|
9
|
+
return { hasTargetElement: true, sortedArr };
|
|
10
|
+
}
|
|
11
|
+
else if (item.array?.length) {
|
|
12
|
+
{
|
|
13
|
+
const { sortedArr: newArr, hasTargetElement } = sortArray(item.array);
|
|
14
|
+
if (hasTargetElement) {
|
|
15
|
+
item.array = newArr;
|
|
16
|
+
const sortedArr = [item, ...array.filter((x) => x.id !== item.id)];
|
|
17
|
+
return { hasTargetElement, sortedArr };
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return { hasTargetElement: false, sortedArr: array };
|
|
23
|
+
};
|
|
24
|
+
const { sortedArr } = sortArray(list);
|
|
25
|
+
return sortedArr;
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1zZWxlY3RlZC10by1maXJzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL3JhZGlvLWdyb3VwL2hlbHBlcnMvbW92ZS1zZWxlY3RlZC10by1maXJzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxJQUFzQixFQUN0QixRQUFpQixFQUNqQixVQUFpQyxFQUNqQyxFQUFFO0lBQ0YsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLFVBQVU7UUFBRSxPQUFPLElBQUksQ0FBQztJQUVuRCxNQUFNLFNBQVMsR0FBRyxDQUNoQixLQUF1QixFQUNxQyxFQUFFO1FBQzlELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3JDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssVUFBVSxDQUFDLEVBQUUsRUFBRTtnQkFDN0IsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNuRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDO2FBQzlDO2lCQUFNLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUU7Z0JBQzdCO29CQUNFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixFQUFFLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDdEUsSUFBSSxnQkFBZ0IsRUFBRTt3QkFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7d0JBQ3BCLE1BQU0sU0FBUyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzt3QkFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxDQUFDO3FCQUN4QztpQkFDRjthQUNGO1NBQ0Y7UUFDRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUN2RCxDQUFDLENBQUM7SUFDRixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJhZGlvR3JvdXBJdGVtIH0gZnJvbSAnLi4vbW9kZWxzL3JhZGlvLWdyb3VwLm1vZGVsJztcclxuXHJcbmV4cG9ydCBjb25zdCBtb3ZlU2VsZWN0ZWRUb0ZpcnN0ID0gKFxyXG4gIGxpc3Q6IFJhZGlvR3JvdXBJdGVtW10sXHJcbiAgc29ydGFibGU6IGJvb2xlYW4sXHJcbiAgdGFyZ2V0SXRlbTogUmFkaW9Hcm91cEl0ZW0gfCBudWxsXHJcbikgPT4ge1xyXG4gIGlmICghbGlzdCB8fCAhc29ydGFibGUgfHwgIXRhcmdldEl0ZW0pIHJldHVybiBsaXN0O1xyXG5cclxuICBjb25zdCBzb3J0QXJyYXkgPSAoXHJcbiAgICBhcnJheTogUmFkaW9Hcm91cEl0ZW1bXVxyXG4gICk6IHsgc29ydGVkQXJyOiBSYWRpb0dyb3VwSXRlbVtdOyBoYXNUYXJnZXRFbGVtZW50OiBib29sZWFuIH0gPT4ge1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBpdGVtID0gYXJyYXlbaV07XHJcbiAgICAgIGlmIChpdGVtLmlkID09PSB0YXJnZXRJdGVtLmlkKSB7XHJcbiAgICAgICAgY29uc3Qgc29ydGVkQXJyID0gW2l0ZW0sIC4uLmFycmF5LmZpbHRlcigoeCkgPT4geC5pZCAhPT0gaXRlbS5pZCldO1xyXG4gICAgICAgIHJldHVybiB7IGhhc1RhcmdldEVsZW1lbnQ6IHRydWUsIHNvcnRlZEFyciB9O1xyXG4gICAgICB9IGVsc2UgaWYgKGl0ZW0uYXJyYXk/Lmxlbmd0aCkge1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIGNvbnN0IHsgc29ydGVkQXJyOiBuZXdBcnIsIGhhc1RhcmdldEVsZW1lbnQgfSA9IHNvcnRBcnJheShpdGVtLmFycmF5KTtcclxuICAgICAgICAgIGlmIChoYXNUYXJnZXRFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIGl0ZW0uYXJyYXkgPSBuZXdBcnI7XHJcbiAgICAgICAgICAgIGNvbnN0IHNvcnRlZEFyciA9IFtpdGVtLCAuLi5hcnJheS5maWx0ZXIoKHgpID0+IHguaWQgIT09IGl0ZW0uaWQpXTtcclxuICAgICAgICAgICAgcmV0dXJuIHsgaGFzVGFyZ2V0RWxlbWVudCwgc29ydGVkQXJyIH07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4geyBoYXNUYXJnZXRFbGVtZW50OiBmYWxzZSwgc29ydGVkQXJyOiBhcnJheSB9O1xyXG4gIH07XHJcbiAgY29uc3QgeyBzb3J0ZWRBcnIgfSA9IHNvcnRBcnJheShsaXN0KTtcclxuICByZXR1cm4gc29ydGVkQXJyO1xyXG59O1xyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9yYWRpby1ncm91cC9tb2RlbHMvcmFkaW8tZ3JvdXAubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgUmFkaW9Hcm91cEl0ZW0ge1xyXG4gIGlkOiBzdHJpbmcgfCBudW1iZXIsXHJcbiAgdGV4dDogc3RyaW5nLFxyXG4gIHBhcmVudElkPzogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCxcclxuICBhcnJheTogUmFkaW9Hcm91cEl0ZW1bXSxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmFkaW9JbmRldGVybWluYXRlU3RhdGUgPSBib29sZWFuIHwgbnVsbFxyXG5cclxuZXhwb3J0IHR5cGUgUmFkaW9Hcm91cFNlYXJjaFZhbHVlID0gc3RyaW5nXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJhZGlvR3JvdXBWYWx1ZVdpdGhJZCB7XHJcbiAgdmFsdWU6IFJhZGlvR3JvdXBJdGVtIHwgbnVsbFxyXG4gIGlkOiBzdHJpbmdcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, Injectable, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { cloneDeep } from 'lodash-es';
|
|
4
|
+
import { moveSelectedToFirst } from './helpers/move-selected-to-first';
|
|
5
|
+
import { filterSearchGroup } from './helpers/filter-search-group';
|
|
6
|
+
import { getItemById } from './helpers/get-item-by-id';
|
|
7
|
+
import { v4 as uuid } from 'uuid';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/common";
|
|
10
|
+
import * as i2 from "../../error-message/error-message.component";
|
|
11
|
+
import * as i3 from "../../save-state/save-state.component";
|
|
12
|
+
import * as i4 from "./components/radio-group-item/radio-group-item.component";
|
|
13
|
+
import * as i5 from "./components/radio-group-header/radio-group-header.component";
|
|
14
|
+
export class RadioGroupComponent {
|
|
15
|
+
constructor() {
|
|
16
|
+
this._isInit = false;
|
|
17
|
+
this._groupItemsWrapperHeight = 0;
|
|
18
|
+
this._searchValue = '';
|
|
19
|
+
this.selectedValue = null;
|
|
20
|
+
this.filteredList = [];
|
|
21
|
+
// SAVE STATE
|
|
22
|
+
this.uuid = uuid();
|
|
23
|
+
this.fields = [];
|
|
24
|
+
this.searchSize = 'medium';
|
|
25
|
+
this.name = '';
|
|
26
|
+
this.scrollMaxHeight = 200;
|
|
27
|
+
this.searchable = false;
|
|
28
|
+
this.bold = false;
|
|
29
|
+
this.scrollable = false;
|
|
30
|
+
this.sortable = false;
|
|
31
|
+
this.disabled = false;
|
|
32
|
+
this.readonly = false;
|
|
33
|
+
this.enableMessage = 'Ничего не найдено';
|
|
34
|
+
this.searchPlaceholder = '';
|
|
35
|
+
this.customClasses = '';
|
|
36
|
+
this.required = false;
|
|
37
|
+
this.invalid = false;
|
|
38
|
+
this.invalidMessage = '';
|
|
39
|
+
this.checkInvalid = null;
|
|
40
|
+
// TOOLTIP
|
|
41
|
+
this.tooltip = '';
|
|
42
|
+
// LABEL
|
|
43
|
+
this.labelText = '';
|
|
44
|
+
this.changed = new EventEmitter();
|
|
45
|
+
this.modelChange = new EventEmitter();
|
|
46
|
+
this.modelCheckedChange = new EventEmitter();
|
|
47
|
+
this.modelItemChange = new EventEmitter();
|
|
48
|
+
this.onChange = (value) => {
|
|
49
|
+
};
|
|
50
|
+
this.onTouched = () => {
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
set items(value) {
|
|
54
|
+
this.filteredList = value;
|
|
55
|
+
}
|
|
56
|
+
get items() {
|
|
57
|
+
return this.filteredList;
|
|
58
|
+
}
|
|
59
|
+
get isSearchValue() {
|
|
60
|
+
return this._searchValue;
|
|
61
|
+
}
|
|
62
|
+
get displaced() {
|
|
63
|
+
return this.items.some((item) => item.array.length);
|
|
64
|
+
}
|
|
65
|
+
get getClasses() {
|
|
66
|
+
return `${this.customClasses}`;
|
|
67
|
+
}
|
|
68
|
+
get getShowScroll() {
|
|
69
|
+
return this._groupItemsWrapperHeight > this.scrollMaxHeight;
|
|
70
|
+
}
|
|
71
|
+
trackByFn(index, item) {
|
|
72
|
+
return item.id;
|
|
73
|
+
}
|
|
74
|
+
writeValue(selectedValue) {
|
|
75
|
+
this.selectedValue = selectedValue;
|
|
76
|
+
this._isInit = true;
|
|
77
|
+
}
|
|
78
|
+
registerOnChange(fn) {
|
|
79
|
+
this.onChange = fn;
|
|
80
|
+
}
|
|
81
|
+
registerOnTouched(fn) {
|
|
82
|
+
this.onTouched = fn;
|
|
83
|
+
}
|
|
84
|
+
updateValue(list, targetItem) {
|
|
85
|
+
this.changed.emit(targetItem);
|
|
86
|
+
this.modelChange.emit({ value: targetItem, id: this.uuid });
|
|
87
|
+
this.modelCheckedChange.emit(targetItem);
|
|
88
|
+
this.onChange(targetItem);
|
|
89
|
+
this.onTouched();
|
|
90
|
+
}
|
|
91
|
+
checkHeightGroupWrapper() {
|
|
92
|
+
this._groupItemsWrapperHeight = this.groupItemsWrapper.nativeElement.scrollHeight;
|
|
93
|
+
}
|
|
94
|
+
updateRadioGroupSearchValue(searchValue) {
|
|
95
|
+
this._searchValue = searchValue;
|
|
96
|
+
this.filteredList = filterSearchGroup(this.items, this._searchValue);
|
|
97
|
+
}
|
|
98
|
+
radioChanged({ item }) {
|
|
99
|
+
const cloneList = cloneDeep(this.filteredList);
|
|
100
|
+
const targetItem = getItemById(cloneList, item.id);
|
|
101
|
+
this.selectedValue = targetItem;
|
|
102
|
+
this.filteredList = moveSelectedToFirst(cloneList, this.sortable, targetItem);
|
|
103
|
+
this.updateValue(this.filteredList, targetItem);
|
|
104
|
+
this.modelItemChange.emit(targetItem);
|
|
105
|
+
}
|
|
106
|
+
get isInvalidMessage() {
|
|
107
|
+
return !!this.invalidMessage || !!this.invalidMessage.length;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
RadioGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
111
|
+
RadioGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RadioGroupComponent, selector: "mrx-radio-group", inputs: { fields: "fields", searchSize: "searchSize", name: "name", scrollMaxHeight: "scrollMaxHeight", searchable: "searchable", bold: "bold", scrollable: "scrollable", sortable: "sortable", disabled: "disabled", readonly: "readonly", enableMessage: "enableMessage", searchPlaceholder: "searchPlaceholder", customClasses: "customClasses", required: "required", invalid: "invalid", invalidMessage: "invalidMessage", checkInvalid: "checkInvalid", tooltip: "tooltip", labelText: "labelText", items: "items" }, outputs: { changed: "changed", modelChange: "modelChange", modelCheckedChange: "modelCheckedChange", modelItemChange: "modelItemChange" }, providers: [
|
|
112
|
+
{
|
|
113
|
+
provide: NG_VALUE_ACCESSOR,
|
|
114
|
+
useExisting: forwardRef(() => RadioGroupComponent),
|
|
115
|
+
multi: true,
|
|
116
|
+
},
|
|
117
|
+
], viewQueries: [{ propertyName: "groupItemsWrapper", first: true, predicate: ["groupItemsWrapper"], descendants: true }], ngImport: i0, template: "<div class=\"mrx-radio-group\" [class]=\"getClasses\">\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\" type=\"radioGroup\"></mrx-save-state>\r\n\r\n <mrx-radio-group-header\r\n [searchable]=\"searchable\"\r\n [searchPlaceholder]=\"searchPlaceholder\"\r\n [tooltip]=\"tooltip\"\r\n [required]=\"required\"\r\n [searchSize]=\"searchSize\"\r\n [labelText]=\"labelText\"\r\n (updateradioGroupSearchValue)=\"updateRadioGroupSearchValue($event)\"\r\n ></mrx-radio-group-header>\r\n\r\n <div\r\n #groupItemsWrapper\r\n *ngIf=\"filteredList?.length; else enableMessageTemplate\"\r\n class=\"mrx-radio-group-wrapper\"\r\n [class.mrx-radio-group-wrapper--scrollable]=\"scrollable\"\r\n [class.--active]=\"getShowScroll\"\r\n [style.max-height]=\"scrollable ? scrollMaxHeight + 'px' : 'auto'\">\r\n <mrx-radio-group-item\r\n *ngFor=\"let item of filteredList; trackBy: trackByFn; let last = last\"\r\n [displaced]=\"displaced || false\"\r\n [item]=\"item\"\r\n [isLast]=\"last\"\r\n [selectedValue]=\"selectedValue\"\r\n [name]=\"name\"\r\n [bold]=\"bold\"\r\n [invalid]=\"invalid\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n [animationTrigger]=\"!!isSearchValue\"\r\n (animationEnd)=\"checkHeightGroupWrapper()\"\r\n (radioChanged)=\"radioChanged($event)\"\r\n ></mrx-radio-group-item>\r\n </div>\r\n\r\n <ng-template #enableMessageTemplate>\r\n <p class=\"mrx-radio-group__empty-message py-12px\">{{ enableMessage }}</p>\r\n </ng-template>\r\n\r\n <mrx-error-message\r\n *ngIf=\"invalid && isInvalidMessage\"\r\n [invalidMessage]=\"invalidMessage\"\r\n [customClasses]=\"'mt-12px'\"\r\n ></mrx-error-message>\r\n </div>\r\n", styles: [".mrx-radio-group{position:relative}.mrx-radio-group-wrapper--scrollable{overflow-y:auto;border-width:1px 0 1px 0;border-style:solid;border-color:transparent;padding-top:0;padding-bottom:0;transition:boder-color .2s,padding-top .2s,padding-bottom .2s}.mrx-radio-group-wrapper--scrollable.--active{padding-top:12px;padding-bottom:12px;border-color:var(--neutral-bg-divider)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }, { kind: "component", type: i3.SaveStateComponent, selector: "mrx-save-state", inputs: ["type", "fields", "id"] }, { kind: "component", type: i4.RadioGroupItemComponent, selector: "mrx-radio-group-item", inputs: ["invalid", "name", "selectedValue", "item", "displaced", "level", "bold", "animationTrigger", "isLast", "disabled", "readonly"], outputs: ["animationEnd", "radioChanged"] }, { kind: "component", type: i5.RadioGroupHeaderComponent, selector: "mrx-radio-group-header", inputs: ["searchSize", "searchable", "searchPlaceholder", "tooltip", "labelText", "linkText", "checkedItemsCount", "required"], outputs: ["updateradioGroupSearchValue"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
118
|
+
RadioGroupComponent.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupComponent, providedIn: RadioGroupComponent });
|
|
119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupComponent, decorators: [{
|
|
120
|
+
type: Injectable,
|
|
121
|
+
args: [{
|
|
122
|
+
providedIn: RadioGroupComponent
|
|
123
|
+
}]
|
|
124
|
+
}, {
|
|
125
|
+
type: Component,
|
|
126
|
+
args: [{ selector: 'mrx-radio-group', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
127
|
+
{
|
|
128
|
+
provide: NG_VALUE_ACCESSOR,
|
|
129
|
+
useExisting: forwardRef(() => RadioGroupComponent),
|
|
130
|
+
multi: true,
|
|
131
|
+
},
|
|
132
|
+
], template: "<div class=\"mrx-radio-group\" [class]=\"getClasses\">\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\" type=\"radioGroup\"></mrx-save-state>\r\n\r\n <mrx-radio-group-header\r\n [searchable]=\"searchable\"\r\n [searchPlaceholder]=\"searchPlaceholder\"\r\n [tooltip]=\"tooltip\"\r\n [required]=\"required\"\r\n [searchSize]=\"searchSize\"\r\n [labelText]=\"labelText\"\r\n (updateradioGroupSearchValue)=\"updateRadioGroupSearchValue($event)\"\r\n ></mrx-radio-group-header>\r\n\r\n <div\r\n #groupItemsWrapper\r\n *ngIf=\"filteredList?.length; else enableMessageTemplate\"\r\n class=\"mrx-radio-group-wrapper\"\r\n [class.mrx-radio-group-wrapper--scrollable]=\"scrollable\"\r\n [class.--active]=\"getShowScroll\"\r\n [style.max-height]=\"scrollable ? scrollMaxHeight + 'px' : 'auto'\">\r\n <mrx-radio-group-item\r\n *ngFor=\"let item of filteredList; trackBy: trackByFn; let last = last\"\r\n [displaced]=\"displaced || false\"\r\n [item]=\"item\"\r\n [isLast]=\"last\"\r\n [selectedValue]=\"selectedValue\"\r\n [name]=\"name\"\r\n [bold]=\"bold\"\r\n [invalid]=\"invalid\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n [animationTrigger]=\"!!isSearchValue\"\r\n (animationEnd)=\"checkHeightGroupWrapper()\"\r\n (radioChanged)=\"radioChanged($event)\"\r\n ></mrx-radio-group-item>\r\n </div>\r\n\r\n <ng-template #enableMessageTemplate>\r\n <p class=\"mrx-radio-group__empty-message py-12px\">{{ enableMessage }}</p>\r\n </ng-template>\r\n\r\n <mrx-error-message\r\n *ngIf=\"invalid && isInvalidMessage\"\r\n [invalidMessage]=\"invalidMessage\"\r\n [customClasses]=\"'mt-12px'\"\r\n ></mrx-error-message>\r\n </div>\r\n", styles: [".mrx-radio-group{position:relative}.mrx-radio-group-wrapper--scrollable{overflow-y:auto;border-width:1px 0 1px 0;border-style:solid;border-color:transparent;padding-top:0;padding-bottom:0;transition:boder-color .2s,padding-top .2s,padding-bottom .2s}.mrx-radio-group-wrapper--scrollable.--active{padding-top:12px;padding-bottom:12px;border-color:var(--neutral-bg-divider)}\n"] }]
|
|
133
|
+
}], propDecorators: { fields: [{
|
|
134
|
+
type: Input
|
|
135
|
+
}], searchSize: [{
|
|
136
|
+
type: Input
|
|
137
|
+
}], name: [{
|
|
138
|
+
type: Input
|
|
139
|
+
}], scrollMaxHeight: [{
|
|
140
|
+
type: Input
|
|
141
|
+
}], searchable: [{
|
|
142
|
+
type: Input
|
|
143
|
+
}], bold: [{
|
|
144
|
+
type: Input
|
|
145
|
+
}], scrollable: [{
|
|
146
|
+
type: Input
|
|
147
|
+
}], sortable: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], disabled: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], readonly: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], enableMessage: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], searchPlaceholder: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], customClasses: [{
|
|
158
|
+
type: Input
|
|
159
|
+
}], required: [{
|
|
160
|
+
type: Input
|
|
161
|
+
}], invalid: [{
|
|
162
|
+
type: Input
|
|
163
|
+
}], invalidMessage: [{
|
|
164
|
+
type: Input
|
|
165
|
+
}], checkInvalid: [{
|
|
166
|
+
type: Input
|
|
167
|
+
}], tooltip: [{
|
|
168
|
+
type: Input
|
|
169
|
+
}], labelText: [{
|
|
170
|
+
type: Input
|
|
171
|
+
}], items: [{
|
|
172
|
+
type: Input
|
|
173
|
+
}], groupItemsWrapper: [{
|
|
174
|
+
type: ViewChild,
|
|
175
|
+
args: ['groupItemsWrapper']
|
|
176
|
+
}], changed: [{
|
|
177
|
+
type: Output
|
|
178
|
+
}], modelChange: [{
|
|
179
|
+
type: Output
|
|
180
|
+
}], modelCheckedChange: [{
|
|
181
|
+
type: Output
|
|
182
|
+
}], modelItemChange: [{
|
|
183
|
+
type: Output
|
|
184
|
+
}] } });
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFDVixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDdEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBbUJsQyxNQUFNLE9BQU8sbUJBQW1CO0lBaEJoQztRQWlCVSxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLDZCQUF3QixHQUFHLENBQUMsQ0FBQztRQUM3QixpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUduQixrQkFBYSxHQUEwQixJQUFJLENBQUM7UUFDNUMsaUJBQVksR0FBcUIsRUFBRSxDQUFDO1FBRTNDLGFBQWE7UUFDTixTQUFJLEdBQVcsSUFBSSxFQUFFLENB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O3NCQUFsQyxNQUFNO2dCQUNVLGVBQWU7c0JBQS9CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dFNlYXJjaFNpemVzVHlwZXMgfSBmcm9tICcuLy4uL2lucHV0LXNlYXJjaC9pbnB1dC1zZWFyY2guZW51bSc7XHJcbmltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5qZWN0YWJsZSxcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBSYWRpb0dyb3VwSXRlbSwgUmFkaW9Hcm91cFZhbHVlV2l0aElkIH0gZnJvbSAnLi9tb2RlbHMvcmFkaW8tZ3JvdXAubW9kZWwnO1xyXG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xyXG5pbXBvcnQgeyBtb3ZlU2VsZWN0ZWRUb0ZpcnN0IH0gZnJvbSAnLi9oZWxwZXJzL21vdmUtc2VsZWN0ZWQtdG8tZmlyc3QnO1xyXG5pbXBvcnQgeyBmaWx0ZXJTZWFyY2hHcm91cCB9IGZyb20gJy4vaGVscGVycy9maWx0ZXItc2VhcmNoLWdyb3VwJztcclxuaW1wb3J0IHsgZ2V0SXRlbUJ5SWQgfSBmcm9tICcuL2hlbHBlcnMvZ2V0LWl0ZW0tYnktaWQnO1xyXG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbXJ4LWF1dG9zYXZlL21yeC1hdXRvc2F2ZS5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBSYWRpb0dyb3VwQ29tcG9uZW50XHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LXJhZGlvLWdyb3VwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaW8tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JhZGlvLWdyb3VwLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBSYWRpb0dyb3VwQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSYWRpb0dyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG4gIHByaXZhdGUgX2lzSW5pdCA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX2dyb3VwSXRlbXNXcmFwcGVySGVpZ2h0ID0gMDtcclxuICBwcml2YXRlIF9zZWFyY2hWYWx1ZSA9ICcnO1xyXG5cclxuXHJcbiAgcHVibGljIHNlbGVjdGVkVmFsdWU6IFJhZGlvR3JvdXBJdGVtIHwgbnVsbCA9IG51bGw7XHJcbiAgcHVibGljIGZpbHRlcmVkTGlzdDogUmFkaW9Hcm91cEl0ZW1bXSA9IFtdO1xyXG5cclxuICAvLyBTQVZFIFNUQVRFXHJcbiAgcHVibGljIHV1aWQ6IHN0cmluZyA9IHV1aWQoKTtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHNlYXJjaFNpemU6IElucHV0U2VhcmNoU2l6ZXNUeXBlcyA9ICdtZWRpdW0nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBuYW1lID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHNjcm9sbE1heEhlaWdodCA9IDIwMDtcclxuICBASW5wdXQoKSBwdWJsaWMgc2VhcmNoYWJsZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBib2xkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHNjcm9sbGFibGUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgc29ydGFibGUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZW5hYmxlTWVzc2FnZSA9ICfQndC40YfQtdCz0L4g0L3QtSDQvdCw0LnQtNC10L3Qvic7XHJcbiAgQElucHV0KCkgcHVibGljIHNlYXJjaFBsYWNlaG9sZGVyID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUNsYXNzZXMgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkTWVzc2FnZTogc3RyaW5nIHwgc3RyaW5nW10gPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tJbnZhbGlkOiB0cnVlIHwgZmFsc2UgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgLy8gVE9PTFRJUFxyXG4gIEBJbnB1dCgpIHRvb2x0aXAgPSAnJztcclxuXHJcbiAgLy8gTEFCRUxcclxuICBASW5wdXQoKSBsYWJlbFRleHQgPSAnJztcclxuXHJcbiAgQElucHV0KCkgc2V0IGl0ZW1zKHZhbHVlOiBSYWRpb0dyb3VwSXRlbVtdKSB7XHJcbiAgICB0aGlzLmZpbHRlcmVkTGlzdCA9IHZhbHVlXHJcbiAgfVxyXG5cclxuICBnZXQgaXRlbXMoKTogUmFkaW9Hcm91cEl0ZW1bXSB7XHJcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJlZExpc3RcclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2dyb3VwSXRlbXNXcmFwcGVyJykgZ3JvdXBJdGVtc1dyYXBwZXIhOiBFbGVtZW50UmVmO1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIGNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxSYWRpb0dyb3VwSXRlbSB8IG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxSYWRpb0dyb3VwSXRlbSB8IG51bGw+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPFJhZGlvR3JvdXBWYWx1ZVdpdGhJZD4gPSBuZXcgRXZlbnRFbWl0dGVyPFJhZGlvR3JvdXBWYWx1ZVdpdGhJZD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hlY2tlZENoYW5nZTogRXZlbnRFbWl0dGVyPFJhZGlvR3JvdXBJdGVtIHwgbnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPFJhZGlvR3JvdXBJdGVtIHwgbnVsbD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsSXRlbUNoYW5nZTogRXZlbnRFbWl0dGVyPFJhZGlvR3JvdXBJdGVtIHwgbnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPFJhZGlvR3JvdXBJdGVtIHwgbnVsbD4oKTtcclxuXHJcbiAgcHVibGljIGdldCBpc1NlYXJjaFZhbHVlKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc2VhcmNoVmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGRpc3BsYWNlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLnNvbWUoKGl0ZW06IFJhZGlvR3JvdXBJdGVtKSA9PiBpdGVtLmFycmF5Lmxlbmd0aCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmN1c3RvbUNsYXNzZXN9YDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0U2hvd1Njcm9sbCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9ncm91cEl0ZW1zV3JhcHBlckhlaWdodCA+IHRoaXMuc2Nyb2xsTWF4SGVpZ2h0O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBpdGVtOiBSYWRpb0dyb3VwSXRlbSkge1xyXG4gICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICB9O1xyXG4gIHByaXZhdGUgb25Ub3VjaGVkID0gKCkgPT4ge1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHNlbGVjdGVkVmFsdWU6IFJhZGlvR3JvdXBJdGVtKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSBzZWxlY3RlZFZhbHVlO1xyXG4gICAgdGhpcy5faXNJbml0ID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVZhbHVlKGxpc3Q6IFJhZGlvR3JvdXBJdGVtW10sIHRhcmdldEl0ZW06IFJhZGlvR3JvdXBJdGVtIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQodGFyZ2V0SXRlbSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoe3ZhbHVlOiB0YXJnZXRJdGVtLCBpZDogdGhpcy51dWlkfSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hlY2tlZENoYW5nZS5lbWl0KHRhcmdldEl0ZW0pO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0YXJnZXRJdGVtKTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2hlY2tIZWlnaHRHcm91cFdyYXBwZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9ncm91cEl0ZW1zV3JhcHBlckhlaWdodCA9IHRoaXMuZ3JvdXBJdGVtc1dyYXBwZXIubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlUmFkaW9Hcm91cFNlYXJjaFZhbHVlKHNlYXJjaFZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NlYXJjaFZhbHVlID0gc2VhcmNoVmFsdWU7XHJcbiAgICB0aGlzLmZpbHRlcmVkTGlzdCA9IGZpbHRlclNlYXJjaEdyb3VwKHRoaXMuaXRlbXMsIHRoaXMuX3NlYXJjaFZhbHVlKTtcclxuICB9XHJcblxyXG4gIHJhZGlvQ2hhbmdlZCh7aXRlbX06IHsgaXRlbTogUmFkaW9Hcm91cEl0ZW0gfSkge1xyXG4gICAgY29uc3QgY2xvbmVMaXN0OiBSYWRpb0dyb3VwSXRlbVtdID0gY2xvbmVEZWVwKHRoaXMuZmlsdGVyZWRMaXN0KTtcclxuICAgIGNvbnN0IHRhcmdldEl0ZW06IFJhZGlvR3JvdXBJdGVtIHwgbnVsbCA9IGdldEl0ZW1CeUlkKGNsb25lTGlzdCwgaXRlbS5pZCk7XHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB0YXJnZXRJdGVtO1xyXG4gICAgdGhpcy5maWx0ZXJlZExpc3QgPSBtb3ZlU2VsZWN0ZWRUb0ZpcnN0KGNsb25lTGlzdCwgdGhpcy5zb3J0YWJsZSwgdGFyZ2V0SXRlbSk7XHJcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMuZmlsdGVyZWRMaXN0LCB0YXJnZXRJdGVtKTtcclxuICAgIHRoaXMubW9kZWxJdGVtQ2hhbmdlLmVtaXQodGFyZ2V0SXRlbSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzSW52YWxpZE1lc3NhZ2UoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmludmFsaWRNZXNzYWdlIHx8ICEhdGhpcy5pbnZhbGlkTWVzc2FnZS5sZW5ndGg7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtcmFkaW8tZ3JvdXBcIiBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiPlxyXG4gICAgPG1yeC1zYXZlLXN0YXRlIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIiB0eXBlPVwicmFkaW9Hcm91cFwiPjwvbXJ4LXNhdmUtc3RhdGU+XHJcblxyXG4gICAgPG1yeC1yYWRpby1ncm91cC1oZWFkZXJcclxuICAgICAgW3NlYXJjaGFibGVdPVwic2VhcmNoYWJsZVwiXHJcbiAgICAgIFtzZWFyY2hQbGFjZWhvbGRlcl09XCJzZWFyY2hQbGFjZWhvbGRlclwiXHJcbiAgICAgIFt0b29sdGlwXT1cInRvb2x0aXBcIlxyXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxyXG4gICAgICBbc2VhcmNoU2l6ZV09XCJzZWFyY2hTaXplXCJcclxuICAgICAgW2xhYmVsVGV4dF09XCJsYWJlbFRleHRcIlxyXG4gICAgICAodXBkYXRlcmFkaW9Hcm91cFNlYXJjaFZhbHVlKT1cInVwZGF0ZVJhZGlvR3JvdXBTZWFyY2hWYWx1ZSgkZXZlbnQpXCJcclxuICAgID48L21yeC1yYWRpby1ncm91cC1oZWFkZXI+XHJcblxyXG4gICAgPGRpdlxyXG4gICAgICAgICNncm91cEl0ZW1zV3JhcHBlclxyXG4gICAgICAgICpuZ0lmPVwiZmlsdGVyZWRMaXN0Py5sZW5ndGg7IGVsc2UgZW5hYmxlTWVzc2FnZVRlbXBsYXRlXCJcclxuICAgICAgICBjbGFzcz1cIm1yeC1yYWRpby1ncm91cC13cmFwcGVyXCJcclxuICAgICAgICBbY2xhc3MubXJ4LXJhZGlvLWdyb3VwLXdyYXBwZXItLXNjcm9sbGFibGVdPVwic2Nyb2xsYWJsZVwiXHJcbiAgICAgICAgW2NsYXNzLi0tYWN0aXZlXT1cImdldFNob3dTY3JvbGxcIlxyXG4gICAgICAgIFtzdHlsZS5tYXgtaGVpZ2h0XT1cInNjcm9sbGFibGUgPyBzY3JvbGxNYXhIZWlnaHQgKyAncHgnIDogJ2F1dG8nXCI+XHJcbiAgICAgIDxtcngtcmFkaW8tZ3JvdXAtaXRlbVxyXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsdGVyZWRMaXN0OyB0cmFja0J5OiB0cmFja0J5Rm47IGxldCBsYXN0ID0gbGFzdFwiXHJcbiAgICAgICAgICBbZGlzcGxhY2VkXT1cImRpc3BsYWNlZCB8fCBmYWxzZVwiXHJcbiAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcclxuICAgICAgICAgIFtpc0xhc3RdPVwibGFzdFwiXHJcbiAgICAgICAgICBbc2VsZWN0ZWRWYWx1ZV09XCJzZWxlY3RlZFZhbHVlXCJcclxuICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxyXG4gICAgICAgICAgW2JvbGRdPVwiYm9sZFwiXHJcbiAgICAgICAgICBbaW52YWxpZF09XCJpbnZhbGlkXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgW2FuaW1hdGlvblRyaWdnZXJdPVwiISFpc1NlYXJjaFZhbHVlXCJcclxuICAgICAgICAgIChhbmltYXRpb25FbmQpPVwiY2hlY2tIZWlnaHRHcm91cFdyYXBwZXIoKVwiXHJcbiAgICAgICAgICAocmFkaW9DaGFuZ2VkKT1cInJhZGlvQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgPjwvbXJ4LXJhZGlvLWdyb3VwLWl0ZW0+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2VuYWJsZU1lc3NhZ2VUZW1wbGF0ZT5cclxuICAgICAgPHAgY2xhc3M9XCJtcngtcmFkaW8tZ3JvdXBfX2VtcHR5LW1lc3NhZ2UgcHktMTJweFwiPnt7IGVuYWJsZU1lc3NhZ2UgfX08L3A+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgIDxtcngtZXJyb3ItbWVzc2FnZVxyXG4gICAgICAqbmdJZj1cImludmFsaWQgJiYgaXNJbnZhbGlkTWVzc2FnZVwiXHJcbiAgICAgIFtpbnZhbGlkTWVzc2FnZV09XCJpbnZhbGlkTWVzc2FnZVwiXHJcbiAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidtdC0xMnB4J1wiXHJcbiAgICA+PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuICA8L2Rpdj5cclxuIl19
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { RadioGroupComponent } from './radio-group.component';
|
|
4
|
+
import { FormsModule } from '@angular/forms';
|
|
5
|
+
import { RadioModule } from '../radio/radio.module';
|
|
6
|
+
import { RadioGroupItemComponent } from './components/radio-group-item/radio-group-item.component';
|
|
7
|
+
import { RadioGroupHeaderComponent } from './components/radio-group-header/radio-group-header.component';
|
|
8
|
+
import { ErrorMessageModule } from '../../error-message/error-message.module';
|
|
9
|
+
import { LabelModule } from '../../label/label.module';
|
|
10
|
+
import { InputSearchModule } from '../input-search/input-search.module';
|
|
11
|
+
import { SaveStateModule } from '../../save-state/save-state.module';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
export class RadioGroupModule {
|
|
14
|
+
}
|
|
15
|
+
RadioGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
16
|
+
RadioGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupModule, declarations: [RadioGroupComponent, RadioGroupItemComponent, RadioGroupHeaderComponent], imports: [CommonModule,
|
|
17
|
+
FormsModule,
|
|
18
|
+
RadioModule,
|
|
19
|
+
InputSearchModule,
|
|
20
|
+
LabelModule,
|
|
21
|
+
ErrorMessageModule,
|
|
22
|
+
SaveStateModule], exports: [RadioGroupComponent] });
|
|
23
|
+
RadioGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupModule, imports: [CommonModule,
|
|
24
|
+
FormsModule,
|
|
25
|
+
RadioModule,
|
|
26
|
+
InputSearchModule,
|
|
27
|
+
LabelModule,
|
|
28
|
+
ErrorMessageModule,
|
|
29
|
+
SaveStateModule] });
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioGroupModule, decorators: [{
|
|
31
|
+
type: NgModule,
|
|
32
|
+
args: [{
|
|
33
|
+
declarations: [RadioGroupComponent, RadioGroupItemComponent, RadioGroupHeaderComponent],
|
|
34
|
+
imports: [
|
|
35
|
+
CommonModule,
|
|
36
|
+
FormsModule,
|
|
37
|
+
RadioModule,
|
|
38
|
+
InputSearchModule,
|
|
39
|
+
LabelModule,
|
|
40
|
+
ErrorMessageModule,
|
|
41
|
+
SaveStateModule
|
|
42
|
+
],
|
|
43
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
44
|
+
exports: [RadioGroupComponent]
|
|
45
|
+
}]
|
|
46
|
+
}] });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDbkcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDOUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFpQnJFLE1BQU0sT0FBTyxnQkFBZ0I7OzZHQUFoQixnQkFBZ0I7OEdBQWhCLGdCQUFnQixpQkFiWixtQkFBbUIsRUFBRSx1QkFBdUIsRUFBRSx5QkFBeUIsYUFFcEYsWUFBWTtRQUNaLFdBQVc7UUFDWCxXQUFXO1FBQ1gsaUJBQWlCO1FBQ2pCLFdBQVc7UUFDWCxrQkFBa0I7UUFDbEIsZUFBZSxhQUdQLG1CQUFtQjs4R0FFbEIsZ0JBQWdCLFlBWHpCLFlBQVk7UUFDWixXQUFXO1FBQ1gsV0FBVztRQUNYLGlCQUFpQjtRQUNqQixXQUFXO1FBQ1gsa0JBQWtCO1FBQ2xCLGVBQWU7MkZBS04sZ0JBQWdCO2tCQWQ1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixFQUFFLHlCQUF5QixDQUFDO29CQUN2RixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLFdBQVc7d0JBQ1gsaUJBQWlCO3dCQUNqQixXQUFXO3dCQUNYLGtCQUFrQjt3QkFDbEIsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFJhZGlvR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3JhZGlvLWdyb3VwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBSYWRpb01vZHVsZSB9IGZyb20gJy4uL3JhZGlvL3JhZGlvLm1vZHVsZSc7XHJcbmltcG9ydCB7IFJhZGlvR3JvdXBJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JhZGlvLWdyb3VwLWl0ZW0vcmFkaW8tZ3JvdXAtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSYWRpb0dyb3VwSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JhZGlvLWdyb3VwLWhlYWRlci9yYWRpby1ncm91cC1oZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXJyb3JNZXNzYWdlTW9kdWxlIH0gZnJvbSAnLi4vLi4vZXJyb3ItbWVzc2FnZS9lcnJvci1tZXNzYWdlLm1vZHVsZSc7XHJcbmltcG9ydCB7IExhYmVsTW9kdWxlIH0gZnJvbSAnLi4vLi4vbGFiZWwvbGFiZWwubW9kdWxlJztcclxuaW1wb3J0IHsgSW5wdXRTZWFyY2hNb2R1bGUgfSBmcm9tICcuLi9pbnB1dC1zZWFyY2gvaW5wdXQtc2VhcmNoLm1vZHVsZSc7XHJcbmltcG9ydCB7IFNhdmVTdGF0ZU1vZHVsZSB9IGZyb20gJy4uLy4uL3NhdmUtc3RhdGUvc2F2ZS1zdGF0ZS5tb2R1bGUnO1xyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbUmFkaW9Hcm91cENvbXBvbmVudCwgUmFkaW9Hcm91cEl0ZW1Db21wb25lbnQsIFJhZGlvR3JvdXBIZWFkZXJDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmFkaW9Nb2R1bGUsXHJcbiAgICBJbnB1dFNlYXJjaE1vZHVsZSxcclxuICAgIExhYmVsTW9kdWxlLFxyXG4gICAgRXJyb3JNZXNzYWdlTW9kdWxlLFxyXG4gICAgU2F2ZVN0YXRlTW9kdWxlXHJcbiAgXSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXHJcbiAgZXhwb3J0czogW1JhZGlvR3JvdXBDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSYWRpb0dyb3VwTW9kdWxlIHtcclxufVxyXG5cclxuIl19
|