@skyux/ag-grid 8.7.0 → 9.0.0-alpha.0

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.
Files changed (99) hide show
  1. package/{esm2020 → esm2022}/lib/modules/ag-grid/ag-grid-adapter.service.mjs +8 -11
  2. package/esm2022/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.mjs +240 -0
  3. package/{esm2020 → esm2022}/lib/modules/ag-grid/ag-grid-row-delete.component.mjs +6 -6
  4. package/esm2022/lib/modules/ag-grid/ag-grid-row-delete.directive.mjs +268 -0
  5. package/esm2022/lib/modules/ag-grid/ag-grid-wrapper.component.mjs +259 -0
  6. package/{esm2020 → esm2022}/lib/modules/ag-grid/ag-grid.module.mjs +51 -51
  7. package/esm2022/lib/modules/ag-grid/ag-grid.service.mjs +457 -0
  8. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.mjs +72 -0
  9. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.mjs +9 -9
  10. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.mjs +95 -0
  11. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.mjs +9 -9
  12. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.mjs +119 -0
  13. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.module.mjs +5 -5
  14. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.mjs +109 -0
  15. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.module.mjs +13 -13
  16. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.mjs +77 -0
  17. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.module.mjs +5 -5
  18. package/esm2022/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.mjs +75 -0
  19. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.module.mjs +5 -5
  20. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component.mjs +42 -0
  21. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component.mjs +49 -0
  22. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.module.mjs +15 -15
  23. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component.mjs +31 -0
  24. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.module.mjs +5 -5
  25. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component.mjs +78 -0
  26. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.module.mjs +5 -5
  27. package/esm2022/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.mjs +38 -0
  28. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.module.mjs +5 -5
  29. package/esm2022/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.mjs +88 -0
  30. package/{esm2020 → esm2022}/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator.module.mjs +5 -5
  31. package/esm2022/lib/modules/ag-grid/header/header-group.component.mjs +97 -0
  32. package/esm2022/lib/modules/ag-grid/header/header.component.mjs +144 -0
  33. package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-group-info.mjs +4 -4
  34. package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-info.mjs +4 -4
  35. package/esm2022/lib/modules/shared/sky-ag-grid-resources.module.mjs +74 -0
  36. package/fesm2022/skyux-ag-grid.mjs +3025 -0
  37. package/fesm2022/skyux-ag-grid.mjs.map +1 -0
  38. package/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.d.ts +1 -1
  39. package/lib/modules/ag-grid/ag-grid-row-delete.directive.d.ts +1 -1
  40. package/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component.d.ts +1 -1
  41. package/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component.d.ts +1 -1
  42. package/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.d.ts +1 -1
  43. package/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.d.ts +1 -1
  44. package/package.json +19 -25
  45. package/esm2020/lib/modules/ag-grid/ag-grid-data-manager-adapter.directive.mjs +0 -233
  46. package/esm2020/lib/modules/ag-grid/ag-grid-row-delete.directive.mjs +0 -264
  47. package/esm2020/lib/modules/ag-grid/ag-grid-wrapper.component.mjs +0 -247
  48. package/esm2020/lib/modules/ag-grid/ag-grid.service.mjs +0 -453
  49. package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.mjs +0 -75
  50. package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.mjs +0 -98
  51. package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.mjs +0 -122
  52. package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.mjs +0 -112
  53. package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.mjs +0 -80
  54. package/esm2020/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.mjs +0 -78
  55. package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component.mjs +0 -45
  56. package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component.mjs +0 -52
  57. package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component.mjs +0 -34
  58. package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component.mjs +0 -80
  59. package/esm2020/lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component.mjs +0 -41
  60. package/esm2020/lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component.mjs +0 -90
  61. package/esm2020/lib/modules/ag-grid/header/header-group.component.mjs +0 -95
  62. package/esm2020/lib/modules/ag-grid/header/header.component.mjs +0 -141
  63. package/esm2020/lib/modules/shared/sky-ag-grid-resources.module.mjs +0 -74
  64. package/fesm2015/skyux-ag-grid.mjs +0 -2996
  65. package/fesm2015/skyux-ag-grid.mjs.map +0 -1
  66. package/fesm2020/skyux-ag-grid.mjs +0 -3012
  67. package/fesm2020/skyux-ag-grid.mjs.map +0 -1
  68. /package/{esm2020 → esm2022}/index.mjs +0 -0
  69. /package/{esm2020 → esm2022}/lib/modules/ag-grid/apply-lookup-properties-defaults.mjs +0 -0
  70. /package/{esm2020 → esm2022}/lib/modules/ag-grid/icons/icon-map.mjs +0 -0
  71. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/ag-grid-row-delete-cancel-args.mjs +0 -0
  72. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/ag-grid-row-delete-config.mjs +0 -0
  73. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/ag-grid-row-delete-confirm-args.mjs +0 -0
  74. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/ag-grid-row-delete-contents.mjs +0 -0
  75. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/autocomplete-properties.mjs +0 -0
  76. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-class.mjs +0 -0
  77. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-autocomplete-params.mjs +0 -0
  78. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-currency-params.mjs +0 -0
  79. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-datepicker-params.mjs +0 -0
  80. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-initial-action.mjs +0 -0
  81. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-lookup-params.mjs +0 -0
  82. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-number-params.mjs +0 -0
  83. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-text-params.mjs +0 -0
  84. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-editor-utils.mjs +0 -0
  85. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-renderer-currency-params.mjs +0 -0
  86. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-renderer-lookup-params.mjs +0 -0
  87. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-renderer-validator-params.mjs +0 -0
  88. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/cell-type.mjs +0 -0
  89. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/currency-properties.mjs +0 -0
  90. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/datepicker-properties.mjs +0 -0
  91. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-class.mjs +0 -0
  92. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-group-params.mjs +0 -0
  93. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/header-params.mjs +0 -0
  94. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/lookup-properties.mjs +0 -0
  95. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/number-properties.mjs +0 -0
  96. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/sky-grid-options.mjs +0 -0
  97. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/text-properties.mjs +0 -0
  98. /package/{esm2020 → esm2022}/lib/modules/ag-grid/types/validator-properties.mjs +0 -0
  99. /package/{esm2020 → esm2022}/skyux-ag-grid.mjs +0 -0
@@ -1,75 +0,0 @@
1
- var _SkyAgGridCellEditorAutocompleteComponent_triggerType, _SkyAgGridCellEditorAutocompleteComponent_params;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import { ChangeDetectionStrategy, Component, ElementRef, ViewChild, } from '@angular/core';
4
- import { UntypedFormControl, UntypedFormGroup } from '@angular/forms';
5
- import { SkyAgGridCellEditorInitialAction } from '../../types/cell-editor-initial-action';
6
- import { SkyAgGridCellEditorUtils } from '../../types/cell-editor-utils';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/forms";
9
- import * as i2 from "@skyux/lookup";
10
- import * as i3 from "@skyux/i18n";
11
- /**
12
- * @internal
13
- */
14
- export class SkyAgGridCellEditorAutocompleteComponent {
15
- constructor() {
16
- this.editorForm = new UntypedFormGroup({
17
- selection: new UntypedFormControl(),
18
- });
19
- this.skyComponentProperties = {};
20
- _SkyAgGridCellEditorAutocompleteComponent_triggerType.set(this, void 0);
21
- _SkyAgGridCellEditorAutocompleteComponent_params.set(this, void 0);
22
- }
23
- agInit(params) {
24
- __classPrivateFieldSet(this, _SkyAgGridCellEditorAutocompleteComponent_params, params, "f");
25
- __classPrivateFieldSet(this, _SkyAgGridCellEditorAutocompleteComponent_triggerType, SkyAgGridCellEditorUtils.getEditorInitialAction(params), "f");
26
- const control = this.editorForm.get('selection');
27
- if (control) {
28
- switch (__classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_triggerType, "f")) {
29
- case SkyAgGridCellEditorInitialAction.Delete:
30
- control.setValue(undefined);
31
- break;
32
- case SkyAgGridCellEditorInitialAction.Replace:
33
- case SkyAgGridCellEditorInitialAction.Highlighted:
34
- case SkyAgGridCellEditorInitialAction.Untouched:
35
- default:
36
- control.setValue(params.value);
37
- break;
38
- }
39
- }
40
- this.columnHeader = __classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_params, "f").colDef && __classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_params, "f").colDef.headerName;
41
- this.rowNumber = __classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_params, "f").rowIndex + 1;
42
- this.skyComponentProperties = __classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_params, "f").skyComponentProperties || {};
43
- }
44
- afterGuiAttached() {
45
- if (this.input) {
46
- this.input.nativeElement.focus();
47
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Replace) {
48
- const charPress = __classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_params, "f")?.charPress;
49
- this.input.nativeElement.select();
50
- this.input.nativeElement.setRangeText(charPress);
51
- // Ensure the cursor is at the end of the text.
52
- this.input.nativeElement.setSelectionRange(charPress.length, charPress.length);
53
- this.input.nativeElement.dispatchEvent(new Event('input'));
54
- }
55
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Highlighted) {
56
- this.input.nativeElement.select();
57
- }
58
- }
59
- }
60
- getValue() {
61
- const val = this.editorForm.get('selection')?.value;
62
- return val !== undefined && val !== null ? val : undefined;
63
- }
64
- }
65
- _SkyAgGridCellEditorAutocompleteComponent_triggerType = new WeakMap(), _SkyAgGridCellEditorAutocompleteComponent_params = new WeakMap();
66
- SkyAgGridCellEditorAutocompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridCellEditorAutocompleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
67
- SkyAgGridCellEditorAutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyAgGridCellEditorAutocompleteComponent, selector: "sky-ag-grid-cell-editor-autocomplete", viewQueries: [{ propertyName: "input", first: true, predicate: ["skyCellEditorAutocomplete"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"sky-ag-grid-cell-editor-autocomplete\" [formGroup]=\"editorForm\">\n <sky-autocomplete\n [data]=\"skyComponentProperties.data\"\n [debounceTime]=\"skyComponentProperties.debounceTime\"\n [descriptorProperty]=\"skyComponentProperties.descriptorProperty\"\n [propertiesToSearch]=\"skyComponentProperties.propertiesToSearch\"\n [search]=\"skyComponentProperties.search\"\n [searchFilters]=\"skyComponentProperties.searchFilters\"\n [searchResultsLimit]=\"skyComponentProperties.searchResultsLimit\"\n [searchResultTemplate]=\"skyComponentProperties.searchResultTemplate\"\n [searchTextMinimumCharacters]=\"\n skyComponentProperties.searchTextMinimumCharacters\n \"\n (selectionChange)=\"\n skyComponentProperties.selectionChange &&\n skyComponentProperties.selectionChange($event)\n \"\n >\n <input\n formControlName=\"selection\"\n skyAutocomplete\n #skyCellEditorAutocomplete\n type=\"text\"\n [attr.aria-label]=\"\n 'sky_ag_grid_cell_editor_autocomplete_aria_label'\n | skyLibResources : columnHeader : rowNumber\n \"\n />\n </sky-autocomplete>\n</div>\n", styles: ["sky-autocomplete input{border:none;box-shadow:none}\n"], dependencies: [{ kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.λ2, selector: "sky-autocomplete", inputs: ["ariaLabelledBy", "data", "debounceTime", "descriptorProperty", "enableShowMore", "messageStream", "wrapperClass", "propertiesToSearch", "search", "searchResultTemplate", "searchTextMinimumCharacters", "searchFilters", "searchResultsLimit", "showAddButton", "noResultsFoundText", "searchAsyncDisabled"], outputs: ["addClick", "showMoreClick", "selectionChange", "searchAsync"] }, { kind: "directive", type: i2.λ1, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: ["autocompleteAttribute", "disabled"] }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridCellEditorAutocompleteComponent, decorators: [{
69
- type: Component,
70
- args: [{ selector: 'sky-ag-grid-cell-editor-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"sky-ag-grid-cell-editor-autocomplete\" [formGroup]=\"editorForm\">\n <sky-autocomplete\n [data]=\"skyComponentProperties.data\"\n [debounceTime]=\"skyComponentProperties.debounceTime\"\n [descriptorProperty]=\"skyComponentProperties.descriptorProperty\"\n [propertiesToSearch]=\"skyComponentProperties.propertiesToSearch\"\n [search]=\"skyComponentProperties.search\"\n [searchFilters]=\"skyComponentProperties.searchFilters\"\n [searchResultsLimit]=\"skyComponentProperties.searchResultsLimit\"\n [searchResultTemplate]=\"skyComponentProperties.searchResultTemplate\"\n [searchTextMinimumCharacters]=\"\n skyComponentProperties.searchTextMinimumCharacters\n \"\n (selectionChange)=\"\n skyComponentProperties.selectionChange &&\n skyComponentProperties.selectionChange($event)\n \"\n >\n <input\n formControlName=\"selection\"\n skyAutocomplete\n #skyCellEditorAutocomplete\n type=\"text\"\n [attr.aria-label]=\"\n 'sky_ag_grid_cell_editor_autocomplete_aria_label'\n | skyLibResources : columnHeader : rowNumber\n \"\n />\n </sky-autocomplete>\n</div>\n", styles: ["sky-autocomplete input{border:none;box-shadow:none}\n"] }]
71
- }], propDecorators: { input: [{
72
- type: ViewChild,
73
- args: ['skyCellEditorAutocomplete', { read: ElementRef }]
74
- }] } });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1lZGl0b3ItYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1hdXRvY29tcGxldGUvY2VsbC1lZGl0b3ItYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1hdXRvY29tcGxldGUvY2VsbC1lZGl0b3ItYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU10RSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7QUFFekU7O0dBRUc7QUFPSCxNQUFNLE9BQU8sd0NBQXdDO0lBTnJEO1FBVVMsZUFBVSxHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDdkMsU0FBUyxFQUFFLElBQUksa0JBQWtCLEVBQUU7U0FDcEMsQ0FBQyxDQUFDO1FBRUksMkJBQXNCLEdBQW9DLEVBQUUsQ0FBQztRQUVwRSx3RUFBMkQ7UUFDM0QsbUVBQXFEO0tBcUR0RDtJQWhEUSxNQUFNLENBQUMsTUFBdUM7UUFDbkQsdUJBQUEsSUFBSSxvREFBVyxNQUFNLE1BQUEsQ0FBQztRQUN0Qix1QkFBQSxJQUFJLHlEQUFnQix3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsTUFBQSxDQUFDO1FBQzVFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pELElBQUksT0FBTyxFQUFFO1lBQ1gsUUFBUSx1QkFBQSxJQUFJLDZEQUFhLEVBQUU7Z0JBQ3pCLEtBQUssZ0NBQWdDLENBQUMsTUFBTTtvQkFDMUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDNUIsTUFBTTtnQkFDUixLQUFLLGdDQUFnQyxDQUFDLE9BQU8sQ0FBQztnQkFDOUMsS0FBSyxnQ0FBZ0MsQ0FBQyxXQUFXLENBQUM7Z0JBQ2xELEtBQUssZ0NBQWdDLENBQUMsU0FBUyxDQUFDO2dCQUNoRDtvQkFDRSxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDL0IsTUFBTTthQUNUO1NBQ0Y7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLHVCQUFBLElBQUksd0RBQVEsQ0FBQyxNQUFNLElBQUksdUJBQUEsSUFBSSx3REFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDMUUsSUFBSSxDQUFDLFNBQVMsR0FBRyx1QkFBQSxJQUFJLHdEQUFRLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsdUJBQUEsSUFBSSx3REFBUSxDQUFDLHNCQUFzQixJQUFJLEVBQUUsQ0FBQztJQUMxRSxDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2pDLElBQUksdUJBQUEsSUFBSSw2REFBYSxLQUFLLGdDQUFnQyxDQUFDLE9BQU8sRUFBRTtnQkFDbEUsTUFBTSxTQUFTLEdBQUcsdUJBQUEsSUFBSSx3REFBUSxFQUFFLFNBQW1CLENBQUM7Z0JBRXBELElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ2pELCtDQUErQztnQkFDL0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQ3hDLFNBQVMsQ0FBQyxNQUFNLEVBQ2hCLFNBQVMsQ0FBQyxNQUFNLENBQ2pCLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7YUFDNUQ7WUFDRCxJQUFJLHVCQUFBLElBQUksNkRBQWEsS0FBSyxnQ0FBZ0MsQ0FBQyxXQUFXLEVBQUU7Z0JBQ3RFLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ25DO1NBQ0Y7SUFDSCxDQUFDO0lBRU0sUUFBUTtRQUNiLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssQ0FBQztRQUNwRCxPQUFPLEdBQUcsS0FBSyxTQUFTLElBQUksR0FBRyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDN0QsQ0FBQzs7O3FJQS9EVSx3Q0FBd0M7eUhBQXhDLHdDQUF3QywyS0FhSCxVQUFVLDZCQ3JDNUQseXBDQThCQTsyRkROYSx3Q0FBd0M7a0JBTnBELFNBQVM7K0JBQ0Usc0NBQXNDLG1CQUcvQix1QkFBdUIsQ0FBQyxNQUFNOzhCQWdCeEMsS0FBSztzQkFEWCxTQUFTO3VCQUFDLDJCQUEyQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IElDZWxsRWRpdG9yQW5ndWxhckNvbXAgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuXG5pbXBvcnQgeyBTa3lBZ0dyaWRBdXRvY29tcGxldGVQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vLi4vdHlwZXMvYXV0b2NvbXBsZXRlLXByb3BlcnRpZXMnO1xuaW1wb3J0IHsgU2t5Q2VsbEVkaXRvckF1dG9jb21wbGV0ZVBhcmFtcyB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLWF1dG9jb21wbGV0ZS1wYXJhbXMnO1xuaW1wb3J0IHsgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24gfSBmcm9tICcuLi8uLi90eXBlcy9jZWxsLWVkaXRvci1pbml0aWFsLWFjdGlvbic7XG5pbXBvcnQgeyBTa3lBZ0dyaWRDZWxsRWRpdG9yVXRpbHMgfSBmcm9tICcuLi8uLi90eXBlcy9jZWxsLWVkaXRvci11dGlscyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1hZy1ncmlkLWNlbGwtZWRpdG9yLWF1dG9jb21wbGV0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jZWxsLWVkaXRvci1hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jZWxsLWVkaXRvci1hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreUFnR3JpZENlbGxFZGl0b3JBdXRvY29tcGxldGVDb21wb25lbnRcbiAgaW1wbGVtZW50cyBJQ2VsbEVkaXRvckFuZ3VsYXJDb21wXG57XG4gIHB1YmxpYyBjb2x1bW5IZWFkZXI6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgcHVibGljIGVkaXRvckZvcm0gPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgc2VsZWN0aW9uOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCksXG4gIH0pO1xuICBwdWJsaWMgcm93TnVtYmVyOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBza3lDb21wb25lbnRQcm9wZXJ0aWVzOiBTa3lBZ0dyaWRBdXRvY29tcGxldGVQcm9wZXJ0aWVzID0ge307XG5cbiAgI3RyaWdnZXJUeXBlOiBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbiB8IHVuZGVmaW5lZDtcbiAgI3BhcmFtczogU2t5Q2VsbEVkaXRvckF1dG9jb21wbGV0ZVBhcmFtcyB8IHVuZGVmaW5lZDtcblxuICBAVmlld0NoaWxkKCdza3lDZWxsRWRpdG9yQXV0b2NvbXBsZXRlJywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIHB1YmxpYyBpbnB1dDogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgYWdJbml0KHBhcmFtczogU2t5Q2VsbEVkaXRvckF1dG9jb21wbGV0ZVBhcmFtcyk6IHZvaWQge1xuICAgIHRoaXMuI3BhcmFtcyA9IHBhcmFtcztcbiAgICB0aGlzLiN0cmlnZ2VyVHlwZSA9IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscy5nZXRFZGl0b3JJbml0aWFsQWN0aW9uKHBhcmFtcyk7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZWRpdG9yRm9ybS5nZXQoJ3NlbGVjdGlvbicpO1xuICAgIGlmIChjb250cm9sKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMuI3RyaWdnZXJUeXBlKSB7XG4gICAgICAgIGNhc2UgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uRGVsZXRlOlxuICAgICAgICAgIGNvbnRyb2wuc2V0VmFsdWUodW5kZWZpbmVkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5SZXBsYWNlOlxuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLkhpZ2hsaWdodGVkOlxuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLlVudG91Y2hlZDpcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBjb250cm9sLnNldFZhbHVlKHBhcmFtcy52YWx1ZSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5jb2x1bW5IZWFkZXIgPSB0aGlzLiNwYXJhbXMuY29sRGVmICYmIHRoaXMuI3BhcmFtcy5jb2xEZWYuaGVhZGVyTmFtZTtcbiAgICB0aGlzLnJvd051bWJlciA9IHRoaXMuI3BhcmFtcy5yb3dJbmRleCArIDE7XG4gICAgdGhpcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzID0gdGhpcy4jcGFyYW1zLnNreUNvbXBvbmVudFByb3BlcnRpZXMgfHwge307XG4gIH1cblxuICBwdWJsaWMgYWZ0ZXJHdWlBdHRhY2hlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pbnB1dCkge1xuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICBpZiAodGhpcy4jdHJpZ2dlclR5cGUgPT09IFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLlJlcGxhY2UpIHtcbiAgICAgICAgY29uc3QgY2hhclByZXNzID0gdGhpcy4jcGFyYW1zPy5jaGFyUHJlc3MgYXMgc3RyaW5nO1xuXG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3QoKTtcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNldFJhbmdlVGV4dChjaGFyUHJlc3MpO1xuICAgICAgICAvLyBFbnN1cmUgdGhlIGN1cnNvciBpcyBhdCB0aGUgZW5kIG9mIHRoZSB0ZXh0LlxuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UoXG4gICAgICAgICAgY2hhclByZXNzLmxlbmd0aCxcbiAgICAgICAgICBjaGFyUHJlc3MubGVuZ3RoXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnKSk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy4jdHJpZ2dlclR5cGUgPT09IFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLkhpZ2hsaWdodGVkKSB7XG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3QoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWUoKTogYW55IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCB2YWwgPSB0aGlzLmVkaXRvckZvcm0uZ2V0KCdzZWxlY3Rpb24nKT8udmFsdWU7XG4gICAgcmV0dXJuIHZhbCAhPT0gdW5kZWZpbmVkICYmIHZhbCAhPT0gbnVsbCA/IHZhbCA6IHVuZGVmaW5lZDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNreS1hZy1ncmlkLWNlbGwtZWRpdG9yLWF1dG9jb21wbGV0ZVwiIFtmb3JtR3JvdXBdPVwiZWRpdG9yRm9ybVwiPlxuICA8c2t5LWF1dG9jb21wbGV0ZVxuICAgIFtkYXRhXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXMuZGF0YVwiXG4gICAgW2RlYm91bmNlVGltZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzLmRlYm91bmNlVGltZVwiXG4gICAgW2Rlc2NyaXB0b3JQcm9wZXJ0eV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzLmRlc2NyaXB0b3JQcm9wZXJ0eVwiXG4gICAgW3Byb3BlcnRpZXNUb1NlYXJjaF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzLnByb3BlcnRpZXNUb1NlYXJjaFwiXG4gICAgW3NlYXJjaF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzLnNlYXJjaFwiXG4gICAgW3NlYXJjaEZpbHRlcnNdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcy5zZWFyY2hGaWx0ZXJzXCJcbiAgICBbc2VhcmNoUmVzdWx0c0xpbWl0XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXMuc2VhcmNoUmVzdWx0c0xpbWl0XCJcbiAgICBbc2VhcmNoUmVzdWx0VGVtcGxhdGVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcy5zZWFyY2hSZXN1bHRUZW1wbGF0ZVwiXG4gICAgW3NlYXJjaFRleHRNaW5pbXVtQ2hhcmFjdGVyc109XCJcbiAgICAgIHNreUNvbXBvbmVudFByb3BlcnRpZXMuc2VhcmNoVGV4dE1pbmltdW1DaGFyYWN0ZXJzXG4gICAgXCJcbiAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIlxuICAgICAgc2t5Q29tcG9uZW50UHJvcGVydGllcy5zZWxlY3Rpb25DaGFuZ2UgJiZcbiAgICAgICAgc2t5Q29tcG9uZW50UHJvcGVydGllcy5zZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVxuICAgIFwiXG4gID5cbiAgICA8aW5wdXRcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cInNlbGVjdGlvblwiXG4gICAgICBza3lBdXRvY29tcGxldGVcbiAgICAgICNza3lDZWxsRWRpdG9yQXV0b2NvbXBsZXRlXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxuICAgICAgICAnc2t5X2FnX2dyaWRfY2VsbF9lZGl0b3JfYXV0b2NvbXBsZXRlX2FyaWFfbGFiZWwnXG4gICAgICAgICAgfCBza3lMaWJSZXNvdXJjZXMgOiBjb2x1bW5IZWFkZXIgOiByb3dOdW1iZXJcbiAgICAgIFwiXG4gICAgLz5cbiAgPC9za3ktYXV0b2NvbXBsZXRlPlxuPC9kaXY+XG4iXX0=
@@ -1,98 +0,0 @@
1
- var _SkyAgGridCellEditorCurrencyComponent_triggerType, _SkyAgGridCellEditorCurrencyComponent_changeDetector;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import { ChangeDetectionStrategy, Component, ElementRef, ViewChild, } from '@angular/core';
4
- import { UntypedFormControl, UntypedFormGroup } from '@angular/forms';
5
- import { SkyAgGridCellEditorInitialAction } from '../../types/cell-editor-initial-action';
6
- import { SkyAgGridCellEditorUtils } from '../../types/cell-editor-utils';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/forms";
9
- import * as i2 from "@skyux/autonumeric";
10
- import * as i3 from "@skyux/i18n";
11
- /**
12
- * @internal
13
- */
14
- export class SkyAgGridCellEditorCurrencyComponent {
15
- constructor(changeDetector) {
16
- this.skyComponentProperties = {};
17
- this.editorForm = new UntypedFormGroup({
18
- currency: new UntypedFormControl(),
19
- });
20
- _SkyAgGridCellEditorCurrencyComponent_triggerType.set(this, void 0);
21
- _SkyAgGridCellEditorCurrencyComponent_changeDetector.set(this, void 0);
22
- __classPrivateFieldSet(this, _SkyAgGridCellEditorCurrencyComponent_changeDetector, changeDetector, "f");
23
- }
24
- /**
25
- * agInit is called by agGrid once after the editor is created and provides the editor with the information it needs.
26
- * @param params The cell editor params that include data about the cell, column, row, and grid.
27
- */
28
- agInit(params) {
29
- this.params = params;
30
- this.columnHeader = this.params.colDef.headerName;
31
- this.rowNumber = this.params.rowIndex + 1;
32
- this.columnWidth = this.params.column.getActualWidth();
33
- this.rowHeightWithoutBorders = SkyAgGridCellEditorUtils.subtractOrZero(this.params.node?.rowHeight, 4);
34
- this.skyComponentProperties = this.params.skyComponentProperties || {
35
- decimalPlaces: 2,
36
- currencySymbol: '$',
37
- };
38
- }
39
- /**
40
- * afterGuiAttached is called by agGrid after the editor is rendered in the DOM. Once it is attached the editor is ready to be focused on.
41
- */
42
- afterGuiAttached() {
43
- this.input?.nativeElement.focus();
44
- // This setup is in `afterGuiAttached` due to the lifecycle of autonumeric which will highlight the initial value if it is in place when it renders.
45
- // Since we don't want that, we set the initial value after autonumeric initializes.
46
- __classPrivateFieldSet(this, _SkyAgGridCellEditorCurrencyComponent_triggerType, SkyAgGridCellEditorUtils.getEditorInitialAction(this.params), "f");
47
- const control = this.editorForm.get('currency');
48
- if (control) {
49
- switch (__classPrivateFieldGet(this, _SkyAgGridCellEditorCurrencyComponent_triggerType, "f")) {
50
- case SkyAgGridCellEditorInitialAction.Delete:
51
- control.setValue(undefined);
52
- break;
53
- case SkyAgGridCellEditorInitialAction.Replace:
54
- control.setValue(parseFloat(String(this.params?.charPress)) || undefined);
55
- break;
56
- case SkyAgGridCellEditorInitialAction.Highlighted:
57
- case SkyAgGridCellEditorInitialAction.Untouched:
58
- default:
59
- control.setValue(parseFloat(String(this.params?.value)));
60
- break;
61
- }
62
- }
63
- __classPrivateFieldGet(this, _SkyAgGridCellEditorCurrencyComponent_changeDetector, "f").markForCheck();
64
- // Without the `setTimeout` there is inconsistent behavior with the highlighting when no initial value is present.
65
- setTimeout(() => {
66
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorCurrencyComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Highlighted) {
67
- this.input?.nativeElement.select();
68
- }
69
- }, 100);
70
- }
71
- /**
72
- * getValue is called by agGrid when editing is stopped to get the new value of the cell.
73
- */
74
- getValue() {
75
- const val = this.editorForm.get('currency')?.value;
76
- return val !== undefined && val !== null ? val : undefined;
77
- }
78
- /**
79
- * The autoNumeric library's event handler suppresses the escape key event. This additional handler re-enables AG Grid's default functionality.
80
- */
81
- onPressEscape() {
82
- if (this.params) {
83
- this.params.api.stopEditing(true);
84
- this.params.api.setFocusedCell(this.params.rowIndex, this.params.column);
85
- }
86
- }
87
- }
88
- _SkyAgGridCellEditorCurrencyComponent_triggerType = new WeakMap(), _SkyAgGridCellEditorCurrencyComponent_changeDetector = new WeakMap();
89
- SkyAgGridCellEditorCurrencyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridCellEditorCurrencyComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
90
- SkyAgGridCellEditorCurrencyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyAgGridCellEditorCurrencyComponent, selector: "sky-ag-grid-cell-editor-currency", viewQueries: [{ propertyName: "input", first: true, predicate: ["skyCellEditorCurrency"], descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-container [formGroup]=\"editorForm\">\n <input\n formControlName=\"currency\"\n type=\"text\"\n [attr.aria-label]=\"\n 'sky_ag_grid_cell_editor_currency_aria_label'\n | skyLibResources : columnHeader : rowNumber\n \"\n [style.width.px]=\"columnWidth\"\n [style.height.px]=\"rowHeightWithoutBorders\"\n [skyAutonumeric]=\"skyComponentProperties\"\n [skyAutonumericFormChangesUnformatted]=\"!!params?.charPress\"\n (keyup.escape)=\"onPressEscape()\"\n #skyCellEditorCurrency\n />\n</ng-container>\n", styles: ["input{border:none;padding-left:11px}\n"], dependencies: [{ kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.λ1, selector: "input[skyAutonumeric]", inputs: ["skyAutonumeric", "skyAutonumericFormChangesUnformatted"] }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridCellEditorCurrencyComponent, decorators: [{
92
- type: Component,
93
- args: [{ selector: 'sky-ag-grid-cell-editor-currency', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [formGroup]=\"editorForm\">\n <input\n formControlName=\"currency\"\n type=\"text\"\n [attr.aria-label]=\"\n 'sky_ag_grid_cell_editor_currency_aria_label'\n | skyLibResources : columnHeader : rowNumber\n \"\n [style.width.px]=\"columnWidth\"\n [style.height.px]=\"rowHeightWithoutBorders\"\n [skyAutonumeric]=\"skyComponentProperties\"\n [skyAutonumericFormChangesUnformatted]=\"!!params?.charPress\"\n (keyup.escape)=\"onPressEscape()\"\n #skyCellEditorCurrency\n />\n</ng-container>\n", styles: ["input{border:none;padding-left:11px}\n"] }]
94
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { input: [{
95
- type: ViewChild,
96
- args: ['skyCellEditorCurrency', { read: ElementRef }]
97
- }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1lZGl0b3ItY3VycmVuY3kuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FnLWdyaWQvc3JjL2xpYi9tb2R1bGVzL2FnLWdyaWQvY2VsbC1lZGl0b3JzL2NlbGwtZWRpdG9yLWN1cnJlbmN5L2NlbGwtZWRpdG9yLWN1cnJlbmN5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1jdXJyZW5jeS9jZWxsLWVkaXRvci1jdXJyZW5jeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFVBQVUsRUFDVixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLdEUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7O0FBR3pFOztHQUVHO0FBT0gsTUFBTSxPQUFPLG9DQUFvQztJQW1CL0MsWUFBWSxjQUFpQztRQWhCdEMsMkJBQXNCLEdBQWdDLEVBQUUsQ0FBQztRQUd6RCxlQUFVLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQztZQUN2QyxRQUFRLEVBQUUsSUFBSSxrQkFBa0IsRUFBRTtTQUNuQyxDQUFDLENBQUM7UUFRSCxvRUFBMkQ7UUFDM0QsdUVBQW1DO1FBR2pDLHVCQUFBLElBQUksd0RBQW1CLGNBQWMsTUFBQSxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsTUFB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SUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMxRTtJQUNILENBQUM7OztpSUFuR1Usb0NBQW9DO3FIQUFwQyxvQ0FBb0MsbUtBYUgsVUFBVSw2QkN0Q3hELGtpQkFnQkE7MkZEU2Esb0NBQW9DO2tCQU5oRCxTQUFTOytCQUNFLGtDQUFrQyxtQkFHM0IsdUJBQXVCLENBQUMsTUFBTTt3R0FnQnhDLEtBQUs7c0JBRFgsU0FBUzt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgSUNlbGxFZGl0b3JBbmd1bGFyQ29tcCB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5cbmltcG9ydCB7IFNreUNlbGxFZGl0b3JDdXJyZW5jeVBhcmFtcyB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLWN1cnJlbmN5LXBhcmFtcyc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLWluaXRpYWwtYWN0aW9uJztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscyB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLXV0aWxzJztcbmltcG9ydCB7IFNreUFnR3JpZEN1cnJlbmN5UHJvcGVydGllcyB9IGZyb20gJy4uLy4uL3R5cGVzL2N1cnJlbmN5LXByb3BlcnRpZXMnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktYWctZ3JpZC1jZWxsLWVkaXRvci1jdXJyZW5jeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jZWxsLWVkaXRvci1jdXJyZW5jeS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NlbGwtZWRpdG9yLWN1cnJlbmN5LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBZ0dyaWRDZWxsRWRpdG9yQ3VycmVuY3lDb21wb25lbnRcbiAgaW1wbGVtZW50cyBJQ2VsbEVkaXRvckFuZ3VsYXJDb21wXG57XG4gIHB1YmxpYyBza3lDb21wb25lbnRQcm9wZXJ0aWVzOiBTa3lBZ0dyaWRDdXJyZW5jeVByb3BlcnRpZXMgPSB7fTtcbiAgcHVibGljIGNvbHVtbkhlYWRlcjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwdWJsaWMgY29sdW1uV2lkdGg6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgcHVibGljIGVkaXRvckZvcm0gPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgY3VycmVuY3k6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKSxcbiAgfSk7XG4gIHB1YmxpYyBwYXJhbXM6IFNreUNlbGxFZGl0b3JDdXJyZW5jeVBhcmFtcyB8IHVuZGVmaW5lZDtcbiAgcHVibGljIHJvd0hlaWdodFdpdGhvdXRCb3JkZXJzOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyByb3dOdW1iZXI6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBAVmlld0NoaWxkKCdza3lDZWxsRWRpdG9yQ3VycmVuY3knLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgcHVibGljIGlucHV0OiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gICN0cmlnZ2VyVHlwZTogU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24gfCB1bmRlZmluZWQ7XG4gICNjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG5cbiAgY29uc3RydWN0b3IoY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IgPSBjaGFuZ2VEZXRlY3RvcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBhZ0luaXQgaXMgY2FsbGVkIGJ5IGFnR3JpZCBvbmNlIGFmdGVyIHRoZSBlZGl0b3IgaXMgY3JlYXRlZCBhbmQgcHJvdmlkZXMgdGhlIGVkaXRvciB3aXRoIHRoZSBpbmZvcm1hdGlvbiBpdCBuZWVkcy5cbiAgICogQHBhcmFtIHBhcmFtcyBUaGUgY2VsbCBlZGl0b3IgcGFyYW1zIHRoYXQgaW5jbHVkZSBkYXRhIGFib3V0IHRoZSBjZWxsLCBjb2x1bW4sIHJvdywgYW5kIGdyaWQuXG4gICAqL1xuICBwdWJsaWMgYWdJbml0KHBhcmFtczogU2t5Q2VsbEVkaXRvckN1cnJlbmN5UGFyYW1zKTogdm9pZCB7XG4gICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgdGhpcy5jb2x1bW5IZWFkZXIgPSB0aGlzLnBhcmFtcy5jb2xEZWYuaGVhZGVyTmFtZTtcbiAgICB0aGlzLnJvd051bWJlciA9IHRoaXMucGFyYW1zLnJvd0luZGV4ICsgMTtcbiAgICB0aGlzLmNvbHVtbldpZHRoID0gdGhpcy5wYXJhbXMuY29sdW1uLmdldEFjdHVhbFdpZHRoKCk7XG4gICAgdGhpcy5yb3dIZWlnaHRXaXRob3V0Qm9yZGVycyA9IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscy5zdWJ0cmFjdE9yWmVybyhcbiAgICAgIHRoaXMucGFyYW1zLm5vZGU/LnJvd0hlaWdodCxcbiAgICAgIDRcbiAgICApO1xuICAgIHRoaXMuc2t5Q29tcG9uZW50UHJvcGVydGllcyA9IHRoaXMucGFyYW1zLnNreUNvbXBvbmVudFByb3BlcnRpZXMgfHwge1xuICAgICAgZGVjaW1hbFBsYWNlczogMixcbiAgICAgIGN1cnJlbmN5U3ltYm9sOiAnJCcsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBhZnRlckd1aUF0dGFjaGVkIGlzIGNhbGxlZCBieSBhZ0dyaWQgYWZ0ZXIgdGhlIGVkaXRvciBpcyByZW5kZXJlZCBpbiB0aGUgRE9NLiBPbmNlIGl0IGlzIGF0dGFjaGVkIHRoZSBlZGl0b3IgaXMgcmVhZHkgdG8gYmUgZm9jdXNlZCBvbi5cbiAgICovXG4gIHB1YmxpYyBhZnRlckd1aUF0dGFjaGVkKCk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcblxuICAgIC8vIFRoaXMgc2V0dXAgaXMgaW4gYGFmdGVyR3VpQXR0YWNoZWRgIGR1ZSB0byB0aGUgbGlmZWN5Y2xlIG9mIGF1dG9udW1lcmljIHdoaWNoIHdpbGwgaGlnaGxpZ2h0IHRoZSBpbml0aWFsIHZhbHVlIGlmIGl0IGlzIGluIHBsYWNlIHdoZW4gaXQgcmVuZGVycy5cbiAgICAvLyBTaW5jZSB3ZSBkb24ndCB3YW50IHRoYXQsIHdlIHNldCB0aGUgaW5pdGlhbCB2YWx1ZSBhZnRlciBhdXRvbnVtZXJpYyBpbml0aWFsaXplcy5cbiAgICB0aGlzLiN0cmlnZ2VyVHlwZSA9IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscy5nZXRFZGl0b3JJbml0aWFsQWN0aW9uKFxuICAgICAgdGhpcy5wYXJhbXNcbiAgICApO1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmVkaXRvckZvcm0uZ2V0KCdjdXJyZW5jeScpO1xuXG4gICAgaWYgKGNvbnRyb2wpIHtcbiAgICAgIHN3aXRjaCAodGhpcy4jdHJpZ2dlclR5cGUpIHtcbiAgICAgICAgY2FzZSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5EZWxldGU6XG4gICAgICAgICAgY29udHJvbC5zZXRWYWx1ZSh1bmRlZmluZWQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLlJlcGxhY2U6XG4gICAgICAgICAgY29udHJvbC5zZXRWYWx1ZShcbiAgICAgICAgICAgIHBhcnNlRmxvYXQoU3RyaW5nKHRoaXMucGFyYW1zPy5jaGFyUHJlc3MpKSB8fCB1bmRlZmluZWRcbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLkhpZ2hsaWdodGVkOlxuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLlVudG91Y2hlZDpcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBjb250cm9sLnNldFZhbHVlKHBhcnNlRmxvYXQoU3RyaW5nKHRoaXMucGFyYW1zPy52YWx1ZSkpKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcblxuICAgIC8vIFdpdGhvdXQgdGhlIGBzZXRUaW1lb3V0YCB0aGVyZSBpcyBpbmNvbnNpc3RlbnQgYmVoYXZpb3Igd2l0aCB0aGUgaGlnaGxpZ2h0aW5nIHdoZW4gbm8gaW5pdGlhbCB2YWx1ZSBpcyBwcmVzZW50LlxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuI3RyaWdnZXJUeXBlID09PSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5IaWdobGlnaHRlZCkge1xuICAgICAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50LnNlbGVjdCgpO1xuICAgICAgfVxuICAgIH0sIDEwMCk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0VmFsdWUgaXMgY2FsbGVkIGJ5IGFnR3JpZCB3aGVuIGVkaXRpbmcgaXMgc3RvcHBlZCB0byBnZXQgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgY2VsbC5cbiAgICovXG4gIHB1YmxpYyBnZXRWYWx1ZSgpOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IHZhbCA9IHRoaXMuZWRpdG9yRm9ybS5nZXQoJ2N1cnJlbmN5Jyk/LnZhbHVlO1xuICAgIHJldHVybiB2YWwgIT09IHVuZGVmaW5lZCAmJiB2YWwgIT09IG51bGwgPyB2YWwgOiB1bmRlZmluZWQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGF1dG9OdW1lcmljIGxpYnJhcnkncyBldmVudCBoYW5kbGVyIHN1cHByZXNzZXMgdGhlIGVzY2FwZSBrZXkgZXZlbnQuIFRoaXMgYWRkaXRpb25hbCBoYW5kbGVyIHJlLWVuYWJsZXMgQUcgR3JpZCdzIGRlZmF1bHQgZnVuY3Rpb25hbGl0eS5cbiAgICovXG4gIHB1YmxpYyBvblByZXNzRXNjYXBlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnBhcmFtcykge1xuICAgICAgdGhpcy5wYXJhbXMuYXBpLnN0b3BFZGl0aW5nKHRydWUpO1xuICAgICAgdGhpcy5wYXJhbXMuYXBpLnNldEZvY3VzZWRDZWxsKHRoaXMucGFyYW1zLnJvd0luZGV4LCB0aGlzLnBhcmFtcy5jb2x1bW4pO1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImVkaXRvckZvcm1cIj5cbiAgPGlucHV0XG4gICAgZm9ybUNvbnRyb2xOYW1lPVwiY3VycmVuY3lcIlxuICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxuICAgICAgJ3NreV9hZ19ncmlkX2NlbGxfZWRpdG9yX2N1cnJlbmN5X2FyaWFfbGFiZWwnXG4gICAgICAgIHwgc2t5TGliUmVzb3VyY2VzIDogY29sdW1uSGVhZGVyIDogcm93TnVtYmVyXG4gICAgXCJcbiAgICBbc3R5bGUud2lkdGgucHhdPVwiY29sdW1uV2lkdGhcIlxuICAgIFtzdHlsZS5oZWlnaHQucHhdPVwicm93SGVpZ2h0V2l0aG91dEJvcmRlcnNcIlxuICAgIFtza3lBdXRvbnVtZXJpY109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzXCJcbiAgICBbc2t5QXV0b251bWVyaWNGb3JtQ2hhbmdlc1VuZm9ybWF0dGVkXT1cIiEhcGFyYW1zPy5jaGFyUHJlc3NcIlxuICAgIChrZXl1cC5lc2NhcGUpPVwib25QcmVzc0VzY2FwZSgpXCJcbiAgICAjc2t5Q2VsbEVkaXRvckN1cnJlbmN5XG4gIC8+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,122 +0,0 @@
1
- var _SkyAgGridCellEditorDatepickerComponent_params, _SkyAgGridCellEditorDatepickerComponent_triggerType, _SkyAgGridCellEditorDatepickerComponent_changeDetector, _SkyAgGridCellEditorDatepickerComponent_themeSvc;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import { ChangeDetectionStrategy, Component, ElementRef, Optional, ViewChild, ViewEncapsulation, } from '@angular/core';
4
- import { UntypedFormControl, UntypedFormGroup } from '@angular/forms';
5
- import { PopupComponent } from 'ag-grid-community';
6
- import { fromEvent } from 'rxjs';
7
- import { first } from 'rxjs/operators';
8
- import { SkyAgGridCellEditorInitialAction } from '../../types/cell-editor-initial-action';
9
- import { SkyAgGridCellEditorUtils } from '../../types/cell-editor-utils';
10
- import * as i0 from "@angular/core";
11
- import * as i1 from "@skyux/theme";
12
- import * as i2 from "@skyux/datetime";
13
- import * as i3 from "@angular/forms";
14
- /**
15
- * @internal
16
- */
17
- export class SkyAgGridCellEditorDatepickerComponent extends PopupComponent {
18
- constructor(changeDetector, themeSvc) {
19
- super();
20
- this.editorForm = new UntypedFormGroup({
21
- date: new UntypedFormControl(),
22
- });
23
- this.skyComponentProperties = {};
24
- _SkyAgGridCellEditorDatepickerComponent_params.set(this, void 0);
25
- _SkyAgGridCellEditorDatepickerComponent_triggerType.set(this, void 0);
26
- _SkyAgGridCellEditorDatepickerComponent_changeDetector.set(this, void 0);
27
- _SkyAgGridCellEditorDatepickerComponent_themeSvc.set(this, void 0);
28
- __classPrivateFieldSet(this, _SkyAgGridCellEditorDatepickerComponent_changeDetector, changeDetector, "f");
29
- __classPrivateFieldSet(this, _SkyAgGridCellEditorDatepickerComponent_themeSvc, themeSvc, "f");
30
- }
31
- /**
32
- * agInit is called by agGrid once after the editor is created and provides the editor with the information it needs.
33
- * @param params The cell editor params that include data about the cell, column, row, and grid.
34
- */
35
- agInit(params) {
36
- __classPrivateFieldSet(this, _SkyAgGridCellEditorDatepickerComponent_params, params, "f");
37
- __classPrivateFieldSet(this, _SkyAgGridCellEditorDatepickerComponent_triggerType, SkyAgGridCellEditorUtils.getEditorInitialAction(params), "f");
38
- const control = this.editorForm.get('date');
39
- if (control) {
40
- switch (__classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_triggerType, "f")) {
41
- case SkyAgGridCellEditorInitialAction.Delete:
42
- control.setValue(undefined);
43
- break;
44
- case SkyAgGridCellEditorInitialAction.Replace:
45
- control.setValue(params.charPress);
46
- break;
47
- case SkyAgGridCellEditorInitialAction.Highlighted:
48
- case SkyAgGridCellEditorInitialAction.Untouched:
49
- default:
50
- control.setValue(params.value);
51
- break;
52
- }
53
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_params, "f").skyComponentProperties?.disabled) {
54
- control.disable();
55
- }
56
- }
57
- __classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_changeDetector, "f").markForCheck();
58
- this.skyComponentProperties = __classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_params, "f").skyComponentProperties || {};
59
- this.columnWidth = __classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_params, "f").column.getActualWidth();
60
- this.columnWidthWithoutBorders = this.columnWidth - 2;
61
- this.rowHeightWithoutBorders = __classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_params, "f").node.rowHeight - 3;
62
- __classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_themeSvc, "f")?.settingsChange.subscribe((themeSettings) => {
63
- if (themeSettings.currentSettings.theme.name === 'modern') {
64
- this.columnWidthWithoutBorders = this.columnWidth;
65
- this.rowHeightWithoutBorders = __classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_params, "f")?.node?.rowHeight;
66
- }
67
- else {
68
- this.columnWidthWithoutBorders =
69
- this.columnWidth === undefined ? undefined : this.columnWidth - 2;
70
- this.rowHeightWithoutBorders = SkyAgGridCellEditorUtils.subtractOrZero(__classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_params, "f")?.node.rowHeight, 3);
71
- }
72
- });
73
- }
74
- /**
75
- * afterGuiAttached is called by agGrid after the editor is rendered in the DOM. Once it is attached the editor is ready to be focused on.
76
- */
77
- afterGuiAttached() {
78
- const datepickerInputEl = this.datepickerInput?.nativeElement;
79
- if (datepickerInputEl) {
80
- datepickerInputEl.focus();
81
- // programmatically set the value of in the input; however, do not do this via the form control so that the value is not formatted when editing starts.
82
- // Watch for the first blur and fire a 'change' event as programmatic changes won't queue a change event, but we need to do this so that formatting happens if the user tabs to the calendar button.
83
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Replace) {
84
- fromEvent(datepickerInputEl, 'blur')
85
- .pipe(first())
86
- .subscribe(() => {
87
- datepickerInputEl.dispatchEvent(new Event('change'));
88
- });
89
- datepickerInputEl.select();
90
- const charPress = __classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_params, "f")?.charPress;
91
- if (charPress) {
92
- datepickerInputEl.setRangeText(charPress);
93
- // Ensure the cursor is at the end of the text.
94
- datepickerInputEl.setSelectionRange(charPress.length, charPress.length);
95
- }
96
- }
97
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorDatepickerComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Highlighted) {
98
- datepickerInputEl.select();
99
- }
100
- }
101
- }
102
- /**
103
- * getValue is called by agGrid when editing is stopped to get the new value of the cell.
104
- */
105
- getValue() {
106
- this.datepickerInput?.nativeElement.blur();
107
- return this.editorForm.get('date')?.value;
108
- }
109
- }
110
- _SkyAgGridCellEditorDatepickerComponent_params = new WeakMap(), _SkyAgGridCellEditorDatepickerComponent_triggerType = new WeakMap(), _SkyAgGridCellEditorDatepickerComponent_changeDetector = new WeakMap(), _SkyAgGridCellEditorDatepickerComponent_themeSvc = new WeakMap();
111
- SkyAgGridCellEditorDatepickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridCellEditorDatepickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
112
- SkyAgGridCellEditorDatepickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyAgGridCellEditorDatepickerComponent, selector: "sky-ag-grid-cell-editor-datepicker", viewQueries: [{ propertyName: "datepickerInput", first: true, predicate: ["skyCellEditorDatepickerInput"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"sky-ag-grid-cell-editor-datepicker\"\n [formGroup]=\"editorForm\"\n [style.width.px]=\"columnWidthWithoutBorders\"\n>\n <sky-datepicker\n data-sky-id=\"cell-datepicker\"\n pickerClass=\"ag-custom-component-popup\"\n >\n <input\n formControlName=\"date\"\n skyDatepickerInput\n [minDate]=\"skyComponentProperties.minDate\"\n [maxDate]=\"skyComponentProperties.maxDate\"\n [dateFormat]=\"skyComponentProperties.dateFormat\"\n [startingDay]=\"skyComponentProperties.startingDay\"\n [skyDatepickerNoValidate]=\"skyComponentProperties.skyDatepickerNoValidate\"\n [style.height.px]=\"rowHeightWithoutBorders\"\n #skyCellEditorDatepickerInput\n />\n </sky-datepicker>\n</div>\n", styles: [".sky-ag-grid-cell-editor-datepicker{position:relative;top:1px;left:1px}.sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control{box-shadow:none;border-width:1px;border-style:solid;border-color:transparent #cdcfd2 transparent transparent}.sky-ag-grid-cell-editor-datepicker sky-datepicker .sky-input-group-datepicker-btn{border-radius:0}:host-context(.sky-theme-modern) .sky-ag-grid-cell-editor-datepicker{position:static;top:initial;left:initial}:host-context(.sky-theme-modern) .sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control{border-radius:0;border:1px solid #1870B8}:host-context(.sky-theme-modern) .sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control:focus{border-width:2px!important}.sky-theme-modern .sky-ag-grid-cell-editor-datepicker{position:static;top:initial;left:initial}.sky-theme-modern .sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control{border-radius:0;border:1px solid #1870B8}.sky-theme-modern .sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control:focus{border-width:2px!important}\n"], dependencies: [{ kind: "component", type: i2.λ2, selector: "sky-datepicker", inputs: ["pickerClass"], outputs: ["calendarDateRangeChange"] }, { kind: "directive", type: i2.λ3, selector: "[skyDatepickerInput]", inputs: ["dateFormat", "disabled", "maxDate", "minDate", "skyDatepickerInput", "skyDatepickerNoValidate", "startingDay", "strict"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridCellEditorDatepickerComponent, decorators: [{
114
- type: Component,
115
- args: [{ selector: 'sky-ag-grid-cell-editor-datepicker', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"sky-ag-grid-cell-editor-datepicker\"\n [formGroup]=\"editorForm\"\n [style.width.px]=\"columnWidthWithoutBorders\"\n>\n <sky-datepicker\n data-sky-id=\"cell-datepicker\"\n pickerClass=\"ag-custom-component-popup\"\n >\n <input\n formControlName=\"date\"\n skyDatepickerInput\n [minDate]=\"skyComponentProperties.minDate\"\n [maxDate]=\"skyComponentProperties.maxDate\"\n [dateFormat]=\"skyComponentProperties.dateFormat\"\n [startingDay]=\"skyComponentProperties.startingDay\"\n [skyDatepickerNoValidate]=\"skyComponentProperties.skyDatepickerNoValidate\"\n [style.height.px]=\"rowHeightWithoutBorders\"\n #skyCellEditorDatepickerInput\n />\n </sky-datepicker>\n</div>\n", styles: [".sky-ag-grid-cell-editor-datepicker{position:relative;top:1px;left:1px}.sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control{box-shadow:none;border-width:1px;border-style:solid;border-color:transparent #cdcfd2 transparent transparent}.sky-ag-grid-cell-editor-datepicker sky-datepicker .sky-input-group-datepicker-btn{border-radius:0}:host-context(.sky-theme-modern) .sky-ag-grid-cell-editor-datepicker{position:static;top:initial;left:initial}:host-context(.sky-theme-modern) .sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control{border-radius:0;border:1px solid #1870B8}:host-context(.sky-theme-modern) .sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control:focus{border-width:2px!important}.sky-theme-modern .sky-ag-grid-cell-editor-datepicker{position:static;top:initial;left:initial}.sky-theme-modern .sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control{border-radius:0;border:1px solid #1870B8}.sky-theme-modern .sky-ag-grid-cell-editor-datepicker sky-datepicker input.sky-form-control:focus{border-width:2px!important}\n"] }]
116
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyThemeService, decorators: [{
117
- type: Optional
118
- }] }]; }, propDecorators: { datepickerInput: [{
119
- type: ViewChild,
120
- args: ['skyCellEditorDatepickerInput', { read: ElementRef }]
121
- }] } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1lZGl0b3ItZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYWctZ3JpZC9zcmMvbGliL21vZHVsZXMvYWctZ3JpZC9jZWxsLWVkaXRvcnMvY2VsbC1lZGl0b3ItZGF0ZXBpY2tlci9jZWxsLWVkaXRvci1kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1kYXRlcGlja2VyL2NlbGwtZWRpdG9yLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsUUFBUSxFQUNSLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3ZDLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7OztBQUd6RTs7R0FFRztBQVFILE1BQU0sT0FBTyxzQ0FDWCxTQUFRLGNBQWM7SUFtQnRCLFlBQ0UsY0FBaUMsRUFDckIsUUFBMEI7UUFFdEMsS0FBSyxFQUFFLENBQUM7UUFsQkgsZUFBVSxHQUFH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QVlFLFVBQVUsb0RDNUMvRCw4dUJBc0JBOzJGRFVhLHNDQUFzQztrQkFQbEQsU0FBUzsrQkFDRSxvQ0FBb0MsbUJBRzdCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OzBCQXdCbEMsUUFBUTs0Q0FUSixlQUFlO3NCQURyQixTQUFTO3VCQUFDLDhCQUE4QixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBPcHRpb25hbCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTa3lUaGVtZVNlcnZpY2UgfSBmcm9tICdAc2t5dXgvdGhlbWUnO1xuXG5pbXBvcnQgeyBJQ2VsbEVkaXRvckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IFBvcHVwQ29tcG9uZW50IH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5Q2VsbEVkaXRvckRhdGVwaWNrZXJQYXJhbXMgfSBmcm9tICcuLi8uLi90eXBlcy9jZWxsLWVkaXRvci1kYXRlcGlja2VyLXBhcmFtcyc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLWluaXRpYWwtYWN0aW9uJztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscyB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLXV0aWxzJztcbmltcG9ydCB7IFNreUFnR3JpZERhdGVwaWNrZXJQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vLi4vdHlwZXMvZGF0ZXBpY2tlci1wcm9wZXJ0aWVzJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWFnLWdyaWQtY2VsbC1lZGl0b3ItZGF0ZXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jZWxsLWVkaXRvci1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2VsbC1lZGl0b3ItZGF0ZXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5QWdHcmlkQ2VsbEVkaXRvckRhdGVwaWNrZXJDb21wb25lbnRcbiAgZXh0ZW5kcyBQb3B1cENvbXBvbmVudFxuICBpbXBsZW1lbnRzIElDZWxsRWRpdG9yQW5ndWxhckNvbXBcbntcbiAgcHVibGljIGNvbHVtbldpZHRoOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBjb2x1bW5XaWR0aFdpdGhvdXRCb3JkZXJzOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBlZGl0b3JGb3JtID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgIGRhdGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKSxcbiAgfSk7XG4gIHB1YmxpYyByb3dIZWlnaHRXaXRob3V0Qm9yZGVyczogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgcHVibGljIHNreUNvbXBvbmVudFByb3BlcnRpZXM6IFNreUFnR3JpZERhdGVwaWNrZXJQcm9wZXJ0aWVzID0ge307XG5cbiAgQFZpZXdDaGlsZCgnc2t5Q2VsbEVkaXRvckRhdGVwaWNrZXJJbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBwdWJsaWMgZGF0ZXBpY2tlcklucHV0OiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gICNwYXJhbXM6IFNreUNlbGxFZGl0b3JEYXRlcGlja2VyUGFyYW1zIHwgdW5kZWZpbmVkO1xuICAjdHJpZ2dlclR5cGU6IFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uIHwgdW5kZWZpbmVkO1xuICAjY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmO1xuICAjdGhlbWVTdmM6IFNreVRoZW1lU2VydmljZSB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQE9wdGlvbmFsKCkgdGhlbWVTdmM/OiBTa3lUaGVtZVNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yID0gY2hhbmdlRGV0ZWN0b3I7XG4gICAgdGhpcy4jdGhlbWVTdmMgPSB0aGVtZVN2YztcbiAgfVxuXG4gIC8qKlxuICAgKiBhZ0luaXQgaXMgY2FsbGVkIGJ5IGFnR3JpZCBvbmNlIGFmdGVyIHRoZSBlZGl0b3IgaXMgY3JlYXRlZCBhbmQgcHJvdmlkZXMgdGhlIGVkaXRvciB3aXRoIHRoZSBpbmZvcm1hdGlvbiBpdCBuZWVkcy5cbiAgICogQHBhcmFtIHBhcmFtcyBUaGUgY2VsbCBlZGl0b3IgcGFyYW1zIHRoYXQgaW5jbHVkZSBkYXRhIGFib3V0IHRoZSBjZWxsLCBjb2x1bW4sIHJvdywgYW5kIGdyaWQuXG4gICAqL1xuICBwdWJsaWMgYWdJbml0KHBhcmFtczogU2t5Q2VsbEVkaXRvckRhdGVwaWNrZXJQYXJhbXMpOiB2b2lkIHtcbiAgICB0aGlzLiNwYXJhbXMgPSBwYXJhbXM7XG5cbiAgICB0aGlzLiN0cmlnZ2VyVHlwZSA9IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscy5nZXRFZGl0b3JJbml0aWFsQWN0aW9uKHBhcmFtcyk7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZWRpdG9yRm9ybS5nZXQoJ2RhdGUnKTtcblxuICAgIGlmIChjb250cm9sKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMuI3RyaWdnZXJUeXBlKSB7XG4gICAgICAgIGNhc2UgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uRGVsZXRlOlxuICAgICAgICAgIGNvbnRyb2wuc2V0VmFsdWUodW5kZWZpbmVkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5SZXBsYWNlOlxuICAgICAgICAgIGNvbnRyb2wuc2V0VmFsdWUocGFyYW1zLmNoYXJQcmVzcyk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uSGlnaGxpZ2h0ZWQ6XG4gICAgICAgIGNhc2UgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uVW50b3VjaGVkOlxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGNvbnRyb2wuc2V0VmFsdWUocGFyYW1zLnZhbHVlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLiNwYXJhbXMuc2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGlzYWJsZWQpIHtcbiAgICAgICAgY29udHJvbC5kaXNhYmxlKCk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgdGhpcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzID0gdGhpcy4jcGFyYW1zLnNreUNvbXBvbmVudFByb3BlcnRpZXMgfHwge307XG4gICAgdGhpcy5jb2x1bW5XaWR0aCA9IHRoaXMuI3BhcmFtcy5jb2x1bW4uZ2V0QWN0dWFsV2lkdGgoKTtcbiAgICB0aGlzLmNvbHVtbldpZHRoV2l0aG91dEJvcmRlcnMgPSB0aGlzLmNvbHVtbldpZHRoIC0gMjtcbiAgICB0aGlzLnJvd0hlaWdodFdpdGhvdXRCb3JkZXJzID0gKHRoaXMuI3BhcmFtcy5ub2RlLnJvd0hlaWdodCBhcyBudW1iZXIpIC0gMztcbiAgICB0aGlzLiN0aGVtZVN2Yz8uc2V0dGluZ3NDaGFuZ2Uuc3Vic2NyaWJlKCh0aGVtZVNldHRpbmdzKSA9PiB7XG4gICAgICBpZiAodGhlbWVTZXR0aW5ncy5jdXJyZW50U2V0dGluZ3MudGhlbWUubmFtZSA9PT0gJ21vZGVybicpIHtcbiAgICAgICAgdGhpcy5jb2x1bW5XaWR0aFdpdGhvdXRCb3JkZXJzID0gdGhpcy5jb2x1bW5XaWR0aDtcbiAgICAgICAgdGhpcy5yb3dIZWlnaHRXaXRob3V0Qm9yZGVycyA9IHRoaXMuI3BhcmFtcz8ubm9kZT8ucm93SGVpZ2h0O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jb2x1bW5XaWR0aFdpdGhvdXRCb3JkZXJzID1cbiAgICAgICAgICB0aGlzLmNvbHVtbldpZHRoID09PSB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiB0aGlzLmNvbHVtbldpZHRoIC0gMjtcbiAgICAgICAgdGhpcy5yb3dIZWlnaHRXaXRob3V0Qm9yZGVycyA9IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscy5zdWJ0cmFjdE9yWmVybyhcbiAgICAgICAgICB0aGlzLiNwYXJhbXM/Lm5vZGUucm93SGVpZ2h0LFxuICAgICAgICAgIDNcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBhZnRlckd1aUF0dGFjaGVkIGlzIGNhbGxlZCBieSBhZ0dyaWQgYWZ0ZXIgdGhlIGVkaXRvciBpcyByZW5kZXJlZCBpbiB0aGUgRE9NLiBPbmNlIGl0IGlzIGF0dGFjaGVkIHRoZSBlZGl0b3IgaXMgcmVhZHkgdG8gYmUgZm9jdXNlZCBvbi5cbiAgICovXG4gIHB1YmxpYyBhZnRlckd1aUF0dGFjaGVkKCk6IHZvaWQge1xuICAgIGNvbnN0IGRhdGVwaWNrZXJJbnB1dEVsID0gdGhpcy5kYXRlcGlja2VySW5wdXQ/Lm5hdGl2ZUVsZW1lbnQgYXNcbiAgICAgIHwgSFRNTElucHV0RWxlbWVudFxuICAgICAgfCB1bmRlZmluZWQ7XG5cbiAgICBpZiAoZGF0ZXBpY2tlcklucHV0RWwpIHtcbiAgICAgIGRhdGVwaWNrZXJJbnB1dEVsLmZvY3VzKCk7XG5cbiAgICAgIC8vIHByb2dyYW1tYXRpY2FsbHkgc2V0IHRoZSB2YWx1ZSBvZiBpbiB0aGUgaW5wdXQ7IGhvd2V2ZXIsIGRvIG5vdCBkbyB0aGlzIHZpYSB0aGUgZm9ybSBjb250cm9sIHNvIHRoYXQgdGhlIHZhbHVlIGlzIG5vdCBmb3JtYXR0ZWQgd2hlbiBlZGl0aW5nIHN0YXJ0cy5cbiAgICAgIC8vIFdhdGNoIGZvciB0aGUgZmlyc3QgYmx1ciBhbmQgZmlyZSBhICdjaGFuZ2UnIGV2ZW50IGFzIHByb2dyYW1tYXRpYyBjaGFuZ2VzIHdvbid0IHF1ZXVlIGEgY2hhbmdlIGV2ZW50LCBidXQgd2UgbmVlZCB0byBkbyB0aGlzIHNvIHRoYXQgZm9ybWF0dGluZyBoYXBwZW5zIGlmIHRoZSB1c2VyIHRhYnMgdG8gdGhlIGNhbGVuZGFyIGJ1dHRvbi5cbiAgICAgIGlmICh0aGlzLiN0cmlnZ2VyVHlwZSA9PT0gU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uUmVwbGFjZSkge1xuICAgICAgICBmcm9tRXZlbnQoZGF0ZXBpY2tlcklucHV0RWwsICdibHVyJylcbiAgICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgZGF0ZXBpY2tlcklucHV0RWwuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScpKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgZGF0ZXBpY2tlcklucHV0RWwuc2VsZWN0KCk7XG5cbiAgICAgICAgY29uc3QgY2hhclByZXNzID0gdGhpcy4jcGFyYW1zPy5jaGFyUHJlc3M7XG5cbiAgICAgICAgaWYgKGNoYXJQcmVzcykge1xuICAgICAgICAgIGRhdGVwaWNrZXJJbnB1dEVsLnNldFJhbmdlVGV4dChjaGFyUHJlc3MpO1xuICAgICAgICAgIC8vIEVuc3VyZSB0aGUgY3Vyc29yIGlzIGF0IHRoZSBlbmQgb2YgdGhlIHRleHQuXG4gICAgICAgICAgZGF0ZXBpY2tlcklucHV0RWwuc2V0U2VsZWN0aW9uUmFuZ2UoXG4gICAgICAgICAgICBjaGFyUHJlc3MubGVuZ3RoLFxuICAgICAgICAgICAgY2hhclByZXNzLmxlbmd0aFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuI3RyaWdnZXJUeXBlID09PSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5IaWdobGlnaHRlZCkge1xuICAgICAgICBkYXRlcGlja2VySW5wdXRFbC5zZWxlY3QoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogZ2V0VmFsdWUgaXMgY2FsbGVkIGJ5IGFnR3JpZCB3aGVuIGVkaXRpbmcgaXMgc3RvcHBlZCB0byBnZXQgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgY2VsbC5cbiAgICovXG4gIHB1YmxpYyBnZXRWYWx1ZSgpOiBEYXRlIHtcbiAgICB0aGlzLmRhdGVwaWNrZXJJbnB1dD8ubmF0aXZlRWxlbWVudC5ibHVyKCk7XG4gICAgcmV0dXJuIHRoaXMuZWRpdG9yRm9ybS5nZXQoJ2RhdGUnKT8udmFsdWU7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktYWctZ3JpZC1jZWxsLWVkaXRvci1kYXRlcGlja2VyXCJcbiAgW2Zvcm1Hcm91cF09XCJlZGl0b3JGb3JtXCJcbiAgW3N0eWxlLndpZHRoLnB4XT1cImNvbHVtbldpZHRoV2l0aG91dEJvcmRlcnNcIlxuPlxuICA8c2t5LWRhdGVwaWNrZXJcbiAgICBkYXRhLXNreS1pZD1cImNlbGwtZGF0ZXBpY2tlclwiXG4gICAgcGlja2VyQ2xhc3M9XCJhZy1jdXN0b20tY29tcG9uZW50LXBvcHVwXCJcbiAgPlxuICAgIDxpbnB1dFxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGF0ZVwiXG4gICAgICBza3lEYXRlcGlja2VySW5wdXRcbiAgICAgIFttaW5EYXRlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXMubWluRGF0ZVwiXG4gICAgICBbbWF4RGF0ZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzLm1heERhdGVcIlxuICAgICAgW2RhdGVGb3JtYXRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcy5kYXRlRm9ybWF0XCJcbiAgICAgIFtzdGFydGluZ0RheV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzLnN0YXJ0aW5nRGF5XCJcbiAgICAgIFtza3lEYXRlcGlja2VyTm9WYWxpZGF0ZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzLnNreURhdGVwaWNrZXJOb1ZhbGlkYXRlXCJcbiAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwicm93SGVpZ2h0V2l0aG91dEJvcmRlcnNcIlxuICAgICAgI3NreUNlbGxFZGl0b3JEYXRlcGlja2VySW5wdXRcbiAgICAvPlxuICA8L3NreS1kYXRlcGlja2VyPlxuPC9kaXY+XG4iXX0=
@@ -1,112 +0,0 @@
1
- var _SkyAgGridCellEditorLookupComponent_instances, _SkyAgGridCellEditorLookupComponent_params, _SkyAgGridCellEditorLookupComponent_triggerType, _SkyAgGridCellEditorLookupComponent_changeDetector, _SkyAgGridCellEditorLookupComponent_elementRef, _SkyAgGridCellEditorLookupComponent_updateComponentProperties;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import { ChangeDetectionStrategy, Component, HostBinding, } from '@angular/core';
4
- import { UntypedFormControl, UntypedFormGroup } from '@angular/forms';
5
- import { applySkyLookupPropertiesDefaults } from '../../apply-lookup-properties-defaults';
6
- import { SkyAgGridCellEditorInitialAction } from '../../types/cell-editor-initial-action';
7
- import { SkyAgGridCellEditorUtils } from '../../types/cell-editor-utils';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/common";
10
- import * as i2 from "@angular/forms";
11
- import * as i3 from "@skyux/forms";
12
- import * as i4 from "@skyux/lookup";
13
- /**
14
- * @internal
15
- */
16
- export class SkyAgGridCellEditorLookupComponent {
17
- constructor(changeDetector, elementRef) {
18
- _SkyAgGridCellEditorLookupComponent_instances.add(this);
19
- this.isAlive = false;
20
- this.editorForm = new UntypedFormGroup({
21
- selection: new UntypedFormControl({
22
- value: [],
23
- disabled: false,
24
- }),
25
- });
26
- this.useAsyncSearch = false;
27
- _SkyAgGridCellEditorLookupComponent_params.set(this, void 0);
28
- _SkyAgGridCellEditorLookupComponent_triggerType.set(this, void 0);
29
- _SkyAgGridCellEditorLookupComponent_changeDetector.set(this, void 0);
30
- _SkyAgGridCellEditorLookupComponent_elementRef.set(this, void 0);
31
- __classPrivateFieldSet(this, _SkyAgGridCellEditorLookupComponent_changeDetector, changeDetector, "f");
32
- __classPrivateFieldSet(this, _SkyAgGridCellEditorLookupComponent_elementRef, elementRef, "f");
33
- }
34
- agInit(params) {
35
- __classPrivateFieldSet(this, _SkyAgGridCellEditorLookupComponent_params, params, "f");
36
- if (!Array.isArray(__classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_params, "f").value)) {
37
- throw new Error(`Lookup value must be an array`);
38
- }
39
- __classPrivateFieldSet(this, _SkyAgGridCellEditorLookupComponent_triggerType, SkyAgGridCellEditorUtils.getEditorInitialAction(params), "f");
40
- const control = this.editorForm.get('selection');
41
- if (control) {
42
- switch (__classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_triggerType, "f")) {
43
- case SkyAgGridCellEditorInitialAction.Delete:
44
- control.setValue([]);
45
- break;
46
- case SkyAgGridCellEditorInitialAction.Replace:
47
- case SkyAgGridCellEditorInitialAction.Highlighted:
48
- case SkyAgGridCellEditorInitialAction.Untouched:
49
- default:
50
- control.setValue(params.value);
51
- break;
52
- }
53
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_params, "f").skyComponentProperties?.disabled) {
54
- control.disable();
55
- }
56
- }
57
- this.skyComponentProperties = __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_instances, "m", _SkyAgGridCellEditorLookupComponent_updateComponentProperties).call(this, __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_params, "f"));
58
- this.useAsyncSearch =
59
- typeof this.skyComponentProperties.searchAsync === 'function';
60
- this.isAlive = true;
61
- this.width = __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_params, "f").column.getActualWidth();
62
- __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_params, "f").column.addEventListener('uiColumnResized', (event) => {
63
- this.width = event.column?.getActualWidth();
64
- __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_changeDetector, "f").markForCheck();
65
- });
66
- __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_changeDetector, "f").markForCheck();
67
- }
68
- isCancelAfterEnd() {
69
- // Shut down components to commit values before final value syncs to grid.
70
- this.isAlive = false;
71
- __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_changeDetector, "f").detectChanges();
72
- return false;
73
- }
74
- getGui() {
75
- return __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_elementRef, "f").nativeElement;
76
- }
77
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
78
- getValue() {
79
- return this.editorForm.get('selection')?.value;
80
- }
81
- isPopup() {
82
- return true;
83
- }
84
- afterGuiAttached() {
85
- const lookupInput = __classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_elementRef, "f").nativeElement.querySelector('.sky-lookup-input');
86
- lookupInput.focus();
87
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Replace) {
88
- lookupInput.select();
89
- lookupInput.setRangeText(__classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_params, "f")?.charPress);
90
- // Ensure the cursor is at the end of the text.
91
- lookupInput.setSelectionRange(lookupInput.value.length, lookupInput.value.length);
92
- lookupInput.dispatchEvent(new Event('input'));
93
- }
94
- if (__classPrivateFieldGet(this, _SkyAgGridCellEditorLookupComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Highlighted) {
95
- lookupInput.select();
96
- }
97
- }
98
- }
99
- _SkyAgGridCellEditorLookupComponent_params = new WeakMap(), _SkyAgGridCellEditorLookupComponent_triggerType = new WeakMap(), _SkyAgGridCellEditorLookupComponent_changeDetector = new WeakMap(), _SkyAgGridCellEditorLookupComponent_elementRef = new WeakMap(), _SkyAgGridCellEditorLookupComponent_instances = new WeakSet(), _SkyAgGridCellEditorLookupComponent_updateComponentProperties = function _SkyAgGridCellEditorLookupComponent_updateComponentProperties(params) {
100
- const skyLookupProperties = params.skyComponentProperties;
101
- return applySkyLookupPropertiesDefaults(skyLookupProperties);
102
- };
103
- SkyAgGridCellEditorLookupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridCellEditorLookupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
104
- SkyAgGridCellEditorLookupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyAgGridCellEditorLookupComponent, selector: "sky-ag-grid-cell-editor-lookup", host: { properties: { "style.width.px": "this.width" } }, ngImport: i0, template: "<sky-input-box\n *ngIf=\"isAlive && useAsyncSearch\"\n [disabled]=\"skyComponentProperties?.disabled\"\n [formGroup]=\"editorForm\"\n>\n <sky-lookup\n [ariaLabel]=\"skyComponentProperties?.ariaLabel\"\n [ariaLabelledBy]=\"skyComponentProperties?.ariaLabelledBy\"\n [autocompleteAttribute]=\"skyComponentProperties?.autocompleteAttribute\"\n [data]=\"skyComponentProperties?.data\"\n [debounceTime]=\"skyComponentProperties?.debounceTime\"\n [descriptorProperty]=\"skyComponentProperties?.descriptorProperty\"\n [disabled]=\"skyComponentProperties?.disabled || false\"\n [enableShowMore]=\"skyComponentProperties?.enableShowMore\"\n formControlName=\"selection\"\n [idProperty]=\"skyComponentProperties?.idProperty\"\n [placeholderText]=\"skyComponentProperties?.placeholderText\"\n [propertiesToSearch]=\"skyComponentProperties?.propertiesToSearch\"\n [search]=\"skyComponentProperties?.search\"\n [searchFilters]=\"skyComponentProperties?.searchFilters\"\n [searchResultsLimit]=\"skyComponentProperties?.searchResultsLimit\"\n [searchResultTemplate]=\"skyComponentProperties?.searchResultTemplate\"\n [searchTextMinimumCharacters]=\"\n skyComponentProperties?.searchTextMinimumCharacters\n \"\n (searchAsync)=\"skyComponentProperties?.searchAsync($event)\"\n [selectMode]=\"skyComponentProperties?.selectMode\"\n [showAddButton]=\"skyComponentProperties?.showAddButton\"\n [showMoreConfig]=\"skyComponentProperties?.showMoreConfig\"\n [wrapperClass]=\"skyComponentProperties?.wrapperClass\"\n (addClick)=\"skyComponentProperties?.addClick($event)\"\n >\n </sky-lookup>\n</sky-input-box>\n<sky-input-box\n *ngIf=\"isAlive && !useAsyncSearch\"\n [disabled]=\"skyComponentProperties?.disabled\"\n [formGroup]=\"editorForm\"\n>\n <sky-lookup\n [ariaLabel]=\"skyComponentProperties?.ariaLabel\"\n [ariaLabelledBy]=\"skyComponentProperties?.ariaLabelledBy\"\n [autocompleteAttribute]=\"skyComponentProperties?.autocompleteAttribute\"\n [data]=\"skyComponentProperties?.data\"\n [debounceTime]=\"skyComponentProperties?.debounceTime\"\n [descriptorProperty]=\"skyComponentProperties?.descriptorProperty\"\n [disabled]=\"skyComponentProperties?.disabled || false\"\n [enableShowMore]=\"skyComponentProperties?.enableShowMore\"\n formControlName=\"selection\"\n [idProperty]=\"skyComponentProperties?.idProperty\"\n [placeholderText]=\"skyComponentProperties?.placeholderText\"\n [propertiesToSearch]=\"skyComponentProperties?.propertiesToSearch\"\n [search]=\"skyComponentProperties?.search\"\n [searchFilters]=\"skyComponentProperties?.searchFilters\"\n [searchResultsLimit]=\"skyComponentProperties?.searchResultsLimit\"\n [searchResultTemplate]=\"skyComponentProperties?.searchResultTemplate\"\n [searchTextMinimumCharacters]=\"\n skyComponentProperties?.searchTextMinimumCharacters\n \"\n [selectMode]=\"skyComponentProperties?.selectMode\"\n [showAddButton]=\"skyComponentProperties?.showAddButton\"\n [showMoreConfig]=\"skyComponentProperties?.showMoreConfig\"\n [wrapperClass]=\"skyComponentProperties?.wrapperClass\"\n (addClick)=\"skyComponentProperties?.addClick($event)\"\n >\n </sky-lookup>\n</sky-input-box>\n", styles: [":host{display:block}\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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.λ10, selector: "sky-input-box", inputs: ["hasErrors", "disabled", "labelText", "characterLimit", "stacked", "helpPopoverTitle", "helpPopoverContent"] }, { kind: "component", type: i4.λ4, selector: "sky-lookup", inputs: ["ariaLabel", "ariaLabelledBy", "autocompleteAttribute", "data", "disabled", "enableShowMore", "placeholderText", "idProperty", "showAddButton", "showMoreConfig", "selectMode", "wrapperClass"], outputs: ["addClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAgGridCellEditorLookupComponent, decorators: [{
106
- type: Component,
107
- args: [{ selector: 'sky-ag-grid-cell-editor-lookup', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-input-box\n *ngIf=\"isAlive && useAsyncSearch\"\n [disabled]=\"skyComponentProperties?.disabled\"\n [formGroup]=\"editorForm\"\n>\n <sky-lookup\n [ariaLabel]=\"skyComponentProperties?.ariaLabel\"\n [ariaLabelledBy]=\"skyComponentProperties?.ariaLabelledBy\"\n [autocompleteAttribute]=\"skyComponentProperties?.autocompleteAttribute\"\n [data]=\"skyComponentProperties?.data\"\n [debounceTime]=\"skyComponentProperties?.debounceTime\"\n [descriptorProperty]=\"skyComponentProperties?.descriptorProperty\"\n [disabled]=\"skyComponentProperties?.disabled || false\"\n [enableShowMore]=\"skyComponentProperties?.enableShowMore\"\n formControlName=\"selection\"\n [idProperty]=\"skyComponentProperties?.idProperty\"\n [placeholderText]=\"skyComponentProperties?.placeholderText\"\n [propertiesToSearch]=\"skyComponentProperties?.propertiesToSearch\"\n [search]=\"skyComponentProperties?.search\"\n [searchFilters]=\"skyComponentProperties?.searchFilters\"\n [searchResultsLimit]=\"skyComponentProperties?.searchResultsLimit\"\n [searchResultTemplate]=\"skyComponentProperties?.searchResultTemplate\"\n [searchTextMinimumCharacters]=\"\n skyComponentProperties?.searchTextMinimumCharacters\n \"\n (searchAsync)=\"skyComponentProperties?.searchAsync($event)\"\n [selectMode]=\"skyComponentProperties?.selectMode\"\n [showAddButton]=\"skyComponentProperties?.showAddButton\"\n [showMoreConfig]=\"skyComponentProperties?.showMoreConfig\"\n [wrapperClass]=\"skyComponentProperties?.wrapperClass\"\n (addClick)=\"skyComponentProperties?.addClick($event)\"\n >\n </sky-lookup>\n</sky-input-box>\n<sky-input-box\n *ngIf=\"isAlive && !useAsyncSearch\"\n [disabled]=\"skyComponentProperties?.disabled\"\n [formGroup]=\"editorForm\"\n>\n <sky-lookup\n [ariaLabel]=\"skyComponentProperties?.ariaLabel\"\n [ariaLabelledBy]=\"skyComponentProperties?.ariaLabelledBy\"\n [autocompleteAttribute]=\"skyComponentProperties?.autocompleteAttribute\"\n [data]=\"skyComponentProperties?.data\"\n [debounceTime]=\"skyComponentProperties?.debounceTime\"\n [descriptorProperty]=\"skyComponentProperties?.descriptorProperty\"\n [disabled]=\"skyComponentProperties?.disabled || false\"\n [enableShowMore]=\"skyComponentProperties?.enableShowMore\"\n formControlName=\"selection\"\n [idProperty]=\"skyComponentProperties?.idProperty\"\n [placeholderText]=\"skyComponentProperties?.placeholderText\"\n [propertiesToSearch]=\"skyComponentProperties?.propertiesToSearch\"\n [search]=\"skyComponentProperties?.search\"\n [searchFilters]=\"skyComponentProperties?.searchFilters\"\n [searchResultsLimit]=\"skyComponentProperties?.searchResultsLimit\"\n [searchResultTemplate]=\"skyComponentProperties?.searchResultTemplate\"\n [searchTextMinimumCharacters]=\"\n skyComponentProperties?.searchTextMinimumCharacters\n \"\n [selectMode]=\"skyComponentProperties?.selectMode\"\n [showAddButton]=\"skyComponentProperties?.showAddButton\"\n [showMoreConfig]=\"skyComponentProperties?.showMoreConfig\"\n [wrapperClass]=\"skyComponentProperties?.wrapperClass\"\n (addClick)=\"skyComponentProperties?.addClick($event)\"\n >\n </sky-lookup>\n</sky-input-box>\n", styles: [":host{display:block}\n"] }]
108
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { width: [{
109
- type: HostBinding,
110
- args: ['style.width.px']
111
- }] } });
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1sb29rdXAvY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1sb29rdXAvY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTXRFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRTFGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7QUFHekU7O0dBRUc7QUFPSCxNQUFNLE9BQU8sa0NBQWtDO0lBcUI3QyxZQUFZLGNBQWlDLEVBQUUsVUFBc0I7O1FBZDlELFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsZUFBVSxHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDdkMsU0FBUyxFQUFFLElBQUksa0JBQWtCLENBQUM7Z0JBQ2hDLEtBQUssRUFBRSxFQUFFO2dCQUNULFFBQVEsRUFBRSxLQUFLO2FBQ2hCLENBQUM7U0FDSCxDQUFDLENBQUM7UUFDSSxtQkFBYyxHQUFHLEtB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LGFBQWEsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNwRSxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDcEIsSUFBSSx1QkFBQSxJQUFJLHVEQUFhLEtBQUssZ0NBQWdDLENBQUMsT0FBTyxFQUFFO1lBQ2xFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNyQixXQUFXLENBQUMsWUFBWSxDQUFDLHVCQUFBLElBQUksa0RBQVEsRUFBRSxTQUFtQixDQUFDLENBQUM7WUFDNUQsK0NBQStDO1lBQy9DLFdBQVcsQ0FBQyxpQkFBaUIsQ0FDM0IsV0FBVyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQ3hCLFdBQVcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUN6QixDQUFDO1lBQ0YsV0FBVyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1NBQy9DO1FBQ0QsSUFBSSx1QkFBQSxJQUFJLHVEQUFhLEtBQUssZ0NBQWdDLENBQUMsV0FBVyxFQUFFO1lBQ3RFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUN0QjtJQUNILENBQUM7O3VjQUdDLE1BQWlDO0lBRWpDLE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDO0lBQzFELE9BQU8sZ0NBQWdDLENBQUMsbUJBQW1CLENBQUMsQ0FBQztBQUMvRCxDQUFDOytIQWhIVSxrQ0FBa0M7bUhBQWxDLGtDQUFrQyxnSUM1Qi9DLGd0R0FtRUE7MkZEdkNhLGtDQUFrQztrQkFOOUMsU0FBUzsrQkFDRSxnQ0FBZ0MsbUJBR3pCLHVCQUF1QixDQUFDLE1BQU07aUlBTXhDLEtBQUs7c0JBRFgsV0FBVzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBJQ2VsbEVkaXRvckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IENvbHVtblJlc2l6ZWRFdmVudCB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcbmltcG9ydCB7IElQb3B1cENvbXBvbmVudCB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5L2Rpc3QvbGliL2ludGVyZmFjZXMvaVBvcHVwQ29tcG9uZW50JztcblxuaW1wb3J0IHsgYXBwbHlTa3lMb29rdXBQcm9wZXJ0aWVzRGVmYXVsdHMgfSBmcm9tICcuLi8uLi9hcHBseS1sb29rdXAtcHJvcGVydGllcy1kZWZhdWx0cyc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLWluaXRpYWwtYWN0aW9uJztcbmltcG9ydCB7IFNreUNlbGxFZGl0b3JMb29rdXBQYXJhbXMgfSBmcm9tICcuLi8uLi90eXBlcy9jZWxsLWVkaXRvci1sb29rdXAtcGFyYW1zJztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscyB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLXV0aWxzJztcbmltcG9ydCB7IFNreUFnR3JpZExvb2t1cFByb3BlcnRpZXMgfSBmcm9tICcuLi8uLi90eXBlcy9sb29rdXAtcHJvcGVydGllcyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1hZy1ncmlkLWNlbGwtZWRpdG9yLWxvb2t1cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jZWxsLWVkaXRvci1sb29rdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jZWxsLWVkaXRvci1sb29rdXAuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreUFnR3JpZENlbGxFZGl0b3JMb29rdXBDb21wb25lbnRcbiAgaW1wbGVtZW50cyBJQ2VsbEVkaXRvckFuZ3VsYXJDb21wLCBJUG9wdXBDb21wb25lbnQ8dW5rbm93bj5cbntcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aC5weCcpXG4gIHB1YmxpYyB3aWR0aDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBza3lDb21wb25lbnRQcm9wZXJ0aWVzPzogU2t5QWdHcmlkTG9va3VwUHJvcGVydGllcztcbiAgcHVibGljIGlzQWxpdmUgPSBmYWxzZTtcbiAgcHVibGljIGVkaXRvckZvcm0gPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgc2VsZWN0aW9uOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHtcbiAgICAgIHZhbHVlOiBbXSxcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICB9KSxcbiAgfSk7XG4gIHB1YmxpYyB1c2VBc3luY1NlYXJjaCA9IGZhbHNlO1xuXG4gICNwYXJhbXM6IFNreUNlbGxFZGl0b3JMb29rdXBQYXJhbXMgfCB1bmRlZmluZWQ7XG4gICN0cmlnZ2VyVHlwZTogU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24gfCB1bmRlZmluZWQ7XG4gICNjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG4gICNlbGVtZW50UmVmOiBFbGVtZW50UmVmO1xuXG4gIGNvbnN0cnVjdG9yKGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZiwgZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yID0gY2hhbmdlRGV0ZWN0b3I7XG4gICAgdGhpcy4jZWxlbWVudFJlZiA9IGVsZW1lbnRSZWY7XG4gIH1cblxuICBwdWJsaWMgYWdJbml0KHBhcmFtczogU2t5Q2VsbEVkaXRvckxvb2t1cFBhcmFtcyk6IHZvaWQge1xuICAgIHRoaXMuI3BhcmFtcyA9IHBhcmFtcztcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodGhpcy4jcGFyYW1zLnZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBMb29rdXAgdmFsdWUgbXVzdCBiZSBhbiBhcnJheWApO1xuICAgIH1cblxuICAgIHRoaXMuI3RyaWdnZXJUeXBlID0gU2t5QWdHcmlkQ2VsbEVkaXRvclV0aWxzLmdldEVkaXRvckluaXRpYWxBY3Rpb24ocGFyYW1zKTtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5lZGl0b3JGb3JtLmdldCgnc2VsZWN0aW9uJyk7XG5cbiAgICBpZiAoY29udHJvbCkge1xuICAgICAgc3dpdGNoICh0aGlzLiN0cmlnZ2VyVHlwZSkge1xuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLkRlbGV0ZTpcbiAgICAgICAgICBjb250cm9sLnNldFZhbHVlKFtdKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5SZXBsYWNlOlxuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLkhpZ2hsaWdodGVkOlxuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLlVudG91Y2hlZDpcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBjb250cm9sLnNldFZhbHVlKHBhcmFtcy52YWx1ZSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLiNwYXJhbXMuc2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGlzYWJsZWQpIHtcbiAgICAgICAgY29udHJvbC5kaXNhYmxlKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzID0gdGhpcy4jdXBkYXRlQ29tcG9uZW50UHJvcGVydGllcyh0aGlzLiNwYXJhbXMpO1xuICAgIHRoaXMudXNlQXN5bmNTZWFyY2ggPVxuICAgICAgdHlwZW9mIHRoaXMuc2t5Q29tcG9uZW50UHJvcGVydGllcy5zZWFyY2hBc3luYyA9PT0gJ2Z1bmN0aW9uJztcbiAgICB0aGlzLmlzQWxpdmUgPSB0cnVlO1xuICAgIHRoaXMud2lkdGggPSB0aGlzLiNwYXJhbXMuY29sdW1uLmdldEFjdHVhbFdpZHRoKCk7XG4gICAgdGhpcy4jcGFyYW1zLmNvbHVtbi5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ3VpQ29sdW1uUmVzaXplZCcsXG4gICAgICAoZXZlbnQ6IENvbHVtblJlc2l6ZWRFdmVudCkgPT4ge1xuICAgICAgICB0aGlzLndpZHRoID0gZXZlbnQuY29sdW1uPy5nZXRBY3R1YWxXaWR0aCgpO1xuICAgICAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH1cbiAgICApO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGlzQ2FuY2VsQWZ0ZXJFbmQoKTogYm9vbGVhbiB7XG4gICAgLy8gU2h1dCBkb3duIGNvbXBvbmVudHMgdG8gY29tbWl0IHZhbHVlcyBiZWZvcmUgZmluYWwgdmFsdWUgc3luY3MgdG8gZ3JpZC5cbiAgICB0aGlzLmlzQWxpdmUgPSBmYWxzZTtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldEd1aSgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHB1YmxpYyBnZXRWYWx1ZSgpOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdG9yRm9ybS5nZXQoJ3NlbGVjdGlvbicpPy52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBpc1BvcHVwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHVibGljIGFmdGVyR3VpQXR0YWNoZWQoKTogdm9pZCB7XG4gICAgY29uc3QgbG9va3VwSW5wdXQ6IEhUTUxUZXh0QXJlYUVsZW1lbnQgPVxuICAgICAgdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5za3ktbG9va3VwLWlucHV0Jyk7XG4gICAgbG9va3VwSW5wdXQuZm9jdXMoKTtcbiAgICBpZiAodGhpcy4jdHJpZ2dlclR5cGUgPT09IFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLlJlcGxhY2UpIHtcbiAgICAgIGxvb2t1cElucHV0LnNlbGVjdCgpO1xuICAgICAgbG9va3VwSW5wdXQuc2V0UmFuZ2VUZXh0KHRoaXMuI3BhcmFtcz8uY2hhclByZXNzIGFzIHN0cmluZyk7XG4gICAgICAvLyBFbnN1cmUgdGhlIGN1cnNvciBpcyBhdCB0aGUgZW5kIG9mIHRoZSB0ZXh0LlxuICAgICAgbG9va3VwSW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2UoXG4gICAgICAgIGxvb2t1cElucHV0LnZhbHVlLmxlbmd0aCxcbiAgICAgICAgbG9va3VwSW5wdXQudmFsdWUubGVuZ3RoXG4gICAgICApO1xuICAgICAgbG9va3VwSW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JykpO1xuICAgIH1cbiAgICBpZiAodGhpcy4jdHJpZ2dlclR5cGUgPT09IFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLkhpZ2hsaWdodGVkKSB7XG4gICAgICBsb29rdXBJbnB1dC5zZWxlY3QoKTtcbiAgICB9XG4gIH1cblxuICAjdXBkYXRlQ29tcG9uZW50UHJvcGVydGllcyhcbiAgICBwYXJhbXM6IFNreUNlbGxFZGl0b3JMb29rdXBQYXJhbXNcbiAgKTogU2t5QWdHcmlkTG9va3VwUHJvcGVydGllcyB7XG4gICAgY29uc3Qgc2t5TG9va3VwUHJvcGVydGllcyA9IHBhcmFtcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzO1xuICAgIHJldHVybiBhcHBseVNreUxvb2t1cFByb3BlcnRpZXNEZWZhdWx0cyhza3lMb29rdXBQcm9wZXJ0aWVzKTtcbiAgfVxufVxuIiwiPHNreS1pbnB1dC1ib3hcbiAgKm5nSWY9XCJpc0FsaXZlICYmIHVzZUFzeW5jU2VhcmNoXCJcbiAgW2Rpc2FibGVkXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRpc2FibGVkXCJcbiAgW2Zvcm1Hcm91cF09XCJlZGl0b3JGb3JtXCJcbj5cbiAgPHNreS1sb29rdXBcbiAgICBbYXJpYUxhYmVsXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmFyaWFMYWJlbFwiXG4gICAgW2FyaWFMYWJlbGxlZEJ5XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmFyaWFMYWJlbGxlZEJ5XCJcbiAgICBbYXV0b2NvbXBsZXRlQXR0cmlidXRlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmF1dG9jb21wbGV0ZUF0dHJpYnV0ZVwiXG4gICAgW2RhdGFdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGF0YVwiXG4gICAgW2RlYm91bmNlVGltZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kZWJvdW5jZVRpbWVcIlxuICAgIFtkZXNjcmlwdG9yUHJvcGVydHldPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGVzY3JpcHRvclByb3BlcnR5XCJcbiAgICBbZGlzYWJsZWRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGlzYWJsZWQgfHwgZmFsc2VcIlxuICAgIFtlbmFibGVTaG93TW9yZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5lbmFibGVTaG93TW9yZVwiXG4gICAgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0aW9uXCJcbiAgICBbaWRQcm9wZXJ0eV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5pZFByb3BlcnR5XCJcbiAgICBbcGxhY2Vob2xkZXJUZXh0XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnBsYWNlaG9sZGVyVGV4dFwiXG4gICAgW3Byb3BlcnRpZXNUb1NlYXJjaF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5wcm9wZXJ0aWVzVG9TZWFyY2hcIlxuICAgIFtzZWFyY2hdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoXCJcbiAgICBbc2VhcmNoRmlsdGVyc109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hGaWx0ZXJzXCJcbiAgICBbc2VhcmNoUmVzdWx0c0xpbWl0XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaFJlc3VsdHNMaW1pdFwiXG4gICAgW3NlYXJjaFJlc3VsdFRlbXBsYXRlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaFJlc3VsdFRlbXBsYXRlXCJcbiAgICBbc2VhcmNoVGV4dE1pbmltdW1DaGFyYWN0ZXJzXT1cIlxuICAgICAgc2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoVGV4dE1pbmltdW1DaGFyYWN0ZXJzXG4gICAgXCJcbiAgICAoc2VhcmNoQXN5bmMpPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoQXN5bmMoJGV2ZW50KVwiXG4gICAgW3NlbGVjdE1vZGVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VsZWN0TW9kZVwiXG4gICAgW3Nob3dBZGRCdXR0b25dPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2hvd0FkZEJ1dHRvblwiXG4gICAgW3Nob3dNb3JlQ29uZmlnXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNob3dNb3JlQ29uZmlnXCJcbiAgICBbd3JhcHBlckNsYXNzXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LndyYXBwZXJDbGFzc1wiXG4gICAgKGFkZENsaWNrKT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmFkZENsaWNrKCRldmVudClcIlxuICA+XG4gIDwvc2t5LWxvb2t1cD5cbjwvc2t5LWlucHV0LWJveD5cbjxza3ktaW5wdXQtYm94XG4gICpuZ0lmPVwiaXNBbGl2ZSAmJiAhdXNlQXN5bmNTZWFyY2hcIlxuICBbZGlzYWJsZWRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGlzYWJsZWRcIlxuICBbZm9ybUdyb3VwXT1cImVkaXRvckZvcm1cIlxuPlxuICA8c2t5LWxvb2t1cFxuICAgIFthcmlhTGFiZWxdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uYXJpYUxhYmVsXCJcbiAgICBbYXJpYUxhYmVsbGVkQnldPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uYXJpYUxhYmVsbGVkQnlcIlxuICAgIFthdXRvY29tcGxldGVBdHRyaWJ1dGVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uYXV0b2NvbXBsZXRlQXR0cmlidXRlXCJcbiAgICBbZGF0YV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kYXRhXCJcbiAgICBbZGVib3VuY2VUaW1lXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRlYm91bmNlVGltZVwiXG4gICAgW2Rlc2NyaXB0b3JQcm9wZXJ0eV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kZXNjcmlwdG9yUHJvcGVydHlcIlxuICAgIFtkaXNhYmxlZF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kaXNhYmxlZCB8fCBmYWxzZVwiXG4gICAgW2VuYWJsZVNob3dNb3JlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmVuYWJsZVNob3dNb3JlXCJcbiAgICBmb3JtQ29udHJvbE5hbWU9XCJzZWxlY3Rpb25cIlxuICAgIFtpZFByb3BlcnR5XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmlkUHJvcGVydHlcIlxuICAgIFtwbGFjZWhvbGRlclRleHRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8ucGxhY2Vob2xkZXJUZXh0XCJcbiAgICBbcHJvcGVydGllc1RvU2VhcmNoXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnByb3BlcnRpZXNUb1NlYXJjaFwiXG4gICAgW3NlYXJjaF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hcIlxuICAgIFtzZWFyY2hGaWx0ZXJzXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaEZpbHRlcnNcIlxuICAgIFtzZWFyY2hSZXN1bHRzTGltaXRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoUmVzdWx0c0xpbWl0XCJcbiAgICBbc2VhcmNoUmVzdWx0VGVtcGxhdGVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoUmVzdWx0VGVtcGxhdGVcIlxuICAgIFtzZWFyY2hUZXh0TWluaW11bUNoYXJhY3RlcnNdPVwiXG4gICAgICBza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hUZXh0TWluaW11bUNoYXJhY3RlcnNcbiAgICBcIlxuICAgIFtzZWxlY3RNb2RlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlbGVjdE1vZGVcIlxuICAgIFtzaG93QWRkQnV0dG9uXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNob3dBZGRCdXR0b25cIlxuICAgIFtzaG93TW9yZUNvbmZpZ109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zaG93TW9yZUNvbmZpZ1wiXG4gICAgW3dyYXBwZXJDbGFzc109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy53cmFwcGVyQ2xhc3NcIlxuICAgIChhZGRDbGljayk9XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5hZGRDbGljaygkZXZlbnQpXCJcbiAgPlxuICA8L3NreS1sb29rdXA+XG48L3NreS1pbnB1dC1ib3g+XG4iXX0=