@skyux/ag-grid 5.10.0 → 5.11.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 (49) hide show
  1. package/bundles/skyux-ag-grid.umd.js +314 -76
  2. package/documentation.json +526 -335
  3. package/esm2015/index.js +2 -0
  4. package/esm2015/index.js.map +1 -1
  5. package/esm2015/lib/modules/ag-grid/ag-grid.service.js +1 -1
  6. package/esm2015/lib/modules/ag-grid/ag-grid.service.js.map +1 -1
  7. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.js +36 -3
  8. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.js.map +1 -1
  9. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.js +14 -4
  10. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.js.map +1 -1
  11. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.js +42 -7
  12. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.js.map +1 -1
  13. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.js +14 -4
  14. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.js.map +1 -1
  15. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.js +60 -13
  16. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.js.map +1 -1
  17. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.module.js +4 -4
  18. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.module.js.map +1 -1
  19. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.js +35 -9
  20. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.js.map +1 -1
  21. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.js +33 -3
  22. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.js.map +1 -1
  23. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.module.js +4 -4
  24. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.module.js.map +1 -1
  25. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.js +32 -3
  26. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.js.map +1 -1
  27. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.module.js +4 -4
  28. package/esm2015/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.module.js.map +1 -1
  29. package/esm2015/lib/modules/ag-grid/types/cell-editor-initial-action.js +13 -0
  30. package/esm2015/lib/modules/ag-grid/types/cell-editor-initial-action.js.map +1 -0
  31. package/esm2015/lib/modules/ag-grid/types/cell-editor-utils.js +31 -0
  32. package/esm2015/lib/modules/ag-grid/types/cell-editor-utils.js.map +1 -0
  33. package/fesm2015/skyux-ag-grid.js +296 -58
  34. package/fesm2015/skyux-ag-grid.js.map +1 -1
  35. package/index.d.ts +2 -0
  36. package/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.d.ts +4 -2
  37. package/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.d.ts +1 -1
  38. package/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.d.ts +8 -3
  39. package/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.d.ts +1 -1
  40. package/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component.d.ts +7 -4
  41. package/lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.module.d.ts +1 -1
  42. package/lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component.d.ts +2 -1
  43. package/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component.d.ts +4 -2
  44. package/lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.module.d.ts +1 -1
  45. package/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component.d.ts +4 -2
  46. package/lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.module.d.ts +1 -1
  47. package/lib/modules/ag-grid/types/cell-editor-initial-action.d.ts +11 -0
  48. package/lib/modules/ag-grid/types/cell-editor-utils.d.ts +9 -0
  49. package/package.json +12 -12
package/esm2015/index.js CHANGED
@@ -5,6 +5,8 @@ export * from './lib/modules/ag-grid/types/ag-grid-row-delete-cancel-args';
5
5
  export * from './lib/modules/ag-grid/types/ag-grid-row-delete-confirm-args';
6
6
  export * from './lib/modules/ag-grid/types/autocomplete-properties';
7
7
  export * from './lib/modules/ag-grid/types/cell-class';
8
+ export * from './lib/modules/ag-grid/types/cell-editor-initial-action';
9
+ export * from './lib/modules/ag-grid/types/cell-editor-utils';
8
10
  export * from './lib/modules/ag-grid/types/cell-type';
9
11
  export * from './lib/modules/ag-grid/types/currency-properties';
10
12
  export * from './lib/modules/ag-grid/types/datepicker-properties';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/components/ag-grid/src/index.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,4DAA4D,CAAC;AAC3E,cAAc,6DAA6D,CAAC;AAC5E,cAAc,qDAAqD,CAAC;AACpE,cAAc,wCAAwC,CAAC;AACvD,cAAc,uCAAuC,CAAC;AACtD,cAAc,iDAAiD,CAAC;AAChE,cAAc,mDAAmD,CAAC;AAClE,cAAc,0CAA0C,CAAC;AACzD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kDAAkD,CAAC;AAEjE,0FAA0F;AAC1F,2EAA2E;AAC3E,OAAO,EAAE,wCAAwC,IAAI,EAAE,EAAE,MAAM,gGAAgG,CAAC;AAChK,OAAO,EAAE,gCAAgC,IAAI,EAAE,EAAE,MAAM,gFAAgF,CAAC;AACxI,OAAO,EAAE,oCAAoC,IAAI,EAAE,EAAE,MAAM,wFAAwF,CAAC;AACpJ,OAAO,EAAE,kCAAkC,IAAI,EAAE,EAAE,MAAM,oFAAoF,CAAC;AAC9I,OAAO,EAAE,sCAAsC,IAAI,EAAE,EAAE,MAAM,4FAA4F,CAAC;AAC1J,OAAO,EAAE,2BAA2B,IAAI,EAAE,EAAE,MAAM,oDAAoD,CAAC;AACvG,OAAO,EAAE,yCAAyC,IAAI,EAAE,EAAE,MAAM,sGAAsG,CAAC;AACvK,OAAO,EAAE,+CAA+C,IAAI,EAAE,EAAE,MAAM,wGAAwG,CAAC;AAC/K,OAAO,EAAE,sCAAsC,IAAI,EAAE,EAAE,MAAM,8FAA8F,CAAC;AAC5J,OAAO,EAAE,8CAA8C,IAAI,GAAG,EAAE,MAAM,gHAAgH,CAAC;AACvL,OAAO,EAAE,sCAAsC,IAAI,GAAG,EAAE,MAAM,+EAA+E,CAAC;AAC9I,OAAO,EAAE,yBAAyB,IAAI,GAAG,EAAE,MAAM,iDAAiD,CAAC;AACnG,OAAO,EAAE,2BAA2B,IAAI,GAAG,EAAE,MAAM,oDAAoD,CAAC;AACxG,OAAO,EAAE,oCAAoC,IAAI,GAAG,EAAE,MAAM,8DAA8D,CAAC;AAC3H,OAAO,EAAE,kCAAkC,IAAI,GAAG,EAAE,MAAM,oFAAoF,CAAC;AAC/I,OAAO,EAAE,oCAAoC,IAAI,GAAG,EAAE,MAAM,0FAA0F,CAAC","sourcesContent":["// Export any types that should be included in the root.\nexport * from './lib/modules/ag-grid/ag-grid.module';\nexport * from './lib/modules/ag-grid/ag-grid.service';\nexport * from './lib/modules/ag-grid/types/ag-grid-row-delete-cancel-args';\nexport * from './lib/modules/ag-grid/types/ag-grid-row-delete-confirm-args';\nexport * from './lib/modules/ag-grid/types/autocomplete-properties';\nexport * from './lib/modules/ag-grid/types/cell-class';\nexport * from './lib/modules/ag-grid/types/cell-type';\nexport * from './lib/modules/ag-grid/types/currency-properties';\nexport * from './lib/modules/ag-grid/types/datepicker-properties';\nexport * from './lib/modules/ag-grid/types/header-class';\nexport * from './lib/modules/ag-grid/types/lookup-properties';\nexport * from './lib/modules/ag-grid/types/number-properties';\nexport * from './lib/modules/ag-grid/types/sky-grid-options';\nexport * from './lib/modules/ag-grid/types/text-properties';\nexport * from './lib/modules/ag-grid/types/validator-properties';\n\n// Components and directives must be exported to support Angular's \"partial\" Ivy compiler.\n// Obscure names are used to indicate types are not part of the public API.\nexport { SkyAgGridCellEditorAutocompleteComponent as λ1 } from './lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component';\nexport { SkyAgGridCellEditorTextComponent as λ2 } from './lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component';\nexport { SkyAgGridCellEditorCurrencyComponent as λ3 } from './lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component';\nexport { SkyAgGridCellEditorNumberComponent as λ4 } from './lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component';\nexport { SkyAgGridCellEditorDatepickerComponent as λ5 } from './lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component';\nexport { SkyAgGridRowDeleteComponent as λ6 } from './lib/modules/ag-grid/ag-grid-row-delete.component';\nexport { SkyAgGridCellRendererRowSelectorComponent as λ7 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component';\nexport { SkyAgGridCellRendererCurrencyValidatorComponent as λ8 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component';\nexport { SkyAgGridCellRendererCurrencyComponent as λ9 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component';\nexport { SkyAgGridCellRendererValidatorTooltipComponent as λ10 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component';\nexport { SkyAgGridCellValidatorTooltipComponent as λ11 } from './lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component';\nexport { SkyAgGridWrapperComponent as λ12 } from './lib/modules/ag-grid/ag-grid-wrapper.component';\nexport { SkyAgGridRowDeleteDirective as λ13 } from './lib/modules/ag-grid/ag-grid-row-delete.directive';\nexport { SkyAgGridDataManagerAdapterDirective as λ14 } from './lib/modules/ag-grid/ag-grid-data-manager-adapter.directive';\nexport { SkyAgGridCellEditorLookupComponent as λ15 } from './lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component';\nexport { SkyAgGridCellRendererLookupComponent as λ16 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/components/ag-grid/src/index.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,4DAA4D,CAAC;AAC3E,cAAc,6DAA6D,CAAC;AAC5E,cAAc,qDAAqD,CAAC;AACpE,cAAc,wCAAwC,CAAC;AACvD,cAAc,wDAAwD,CAAC;AACvE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,uCAAuC,CAAC;AACtD,cAAc,iDAAiD,CAAC;AAChE,cAAc,mDAAmD,CAAC;AAClE,cAAc,0CAA0C,CAAC;AACzD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kDAAkD,CAAC;AAEjE,0FAA0F;AAC1F,2EAA2E;AAC3E,OAAO,EAAE,wCAAwC,IAAI,EAAE,EAAE,MAAM,gGAAgG,CAAC;AAChK,OAAO,EAAE,gCAAgC,IAAI,EAAE,EAAE,MAAM,gFAAgF,CAAC;AACxI,OAAO,EAAE,oCAAoC,IAAI,EAAE,EAAE,MAAM,wFAAwF,CAAC;AACpJ,OAAO,EAAE,kCAAkC,IAAI,EAAE,EAAE,MAAM,oFAAoF,CAAC;AAC9I,OAAO,EAAE,sCAAsC,IAAI,EAAE,EAAE,MAAM,4FAA4F,CAAC;AAC1J,OAAO,EAAE,2BAA2B,IAAI,EAAE,EAAE,MAAM,oDAAoD,CAAC;AACvG,OAAO,EAAE,yCAAyC,IAAI,EAAE,EAAE,MAAM,sGAAsG,CAAC;AACvK,OAAO,EAAE,+CAA+C,IAAI,EAAE,EAAE,MAAM,wGAAwG,CAAC;AAC/K,OAAO,EAAE,sCAAsC,IAAI,EAAE,EAAE,MAAM,8FAA8F,CAAC;AAC5J,OAAO,EAAE,8CAA8C,IAAI,GAAG,EAAE,MAAM,gHAAgH,CAAC;AACvL,OAAO,EAAE,sCAAsC,IAAI,GAAG,EAAE,MAAM,+EAA+E,CAAC;AAC9I,OAAO,EAAE,yBAAyB,IAAI,GAAG,EAAE,MAAM,iDAAiD,CAAC;AACnG,OAAO,EAAE,2BAA2B,IAAI,GAAG,EAAE,MAAM,oDAAoD,CAAC;AACxG,OAAO,EAAE,oCAAoC,IAAI,GAAG,EAAE,MAAM,8DAA8D,CAAC;AAC3H,OAAO,EAAE,kCAAkC,IAAI,GAAG,EAAE,MAAM,oFAAoF,CAAC;AAC/I,OAAO,EAAE,oCAAoC,IAAI,GAAG,EAAE,MAAM,0FAA0F,CAAC","sourcesContent":["// Export any types that should be included in the root.\nexport * from './lib/modules/ag-grid/ag-grid.module';\nexport * from './lib/modules/ag-grid/ag-grid.service';\nexport * from './lib/modules/ag-grid/types/ag-grid-row-delete-cancel-args';\nexport * from './lib/modules/ag-grid/types/ag-grid-row-delete-confirm-args';\nexport * from './lib/modules/ag-grid/types/autocomplete-properties';\nexport * from './lib/modules/ag-grid/types/cell-class';\nexport * from './lib/modules/ag-grid/types/cell-editor-initial-action';\nexport * from './lib/modules/ag-grid/types/cell-editor-utils';\nexport * from './lib/modules/ag-grid/types/cell-type';\nexport * from './lib/modules/ag-grid/types/currency-properties';\nexport * from './lib/modules/ag-grid/types/datepicker-properties';\nexport * from './lib/modules/ag-grid/types/header-class';\nexport * from './lib/modules/ag-grid/types/lookup-properties';\nexport * from './lib/modules/ag-grid/types/number-properties';\nexport * from './lib/modules/ag-grid/types/sky-grid-options';\nexport * from './lib/modules/ag-grid/types/text-properties';\nexport * from './lib/modules/ag-grid/types/validator-properties';\n\n// Components and directives must be exported to support Angular's \"partial\" Ivy compiler.\n// Obscure names are used to indicate types are not part of the public API.\nexport { SkyAgGridCellEditorAutocompleteComponent as λ1 } from './lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component';\nexport { SkyAgGridCellEditorTextComponent as λ2 } from './lib/modules/ag-grid/cell-editors/cell-editor-text/cell-editor-text.component';\nexport { SkyAgGridCellEditorCurrencyComponent as λ3 } from './lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component';\nexport { SkyAgGridCellEditorNumberComponent as λ4 } from './lib/modules/ag-grid/cell-editors/cell-editor-number/cell-editor-number.component';\nexport { SkyAgGridCellEditorDatepickerComponent as λ5 } from './lib/modules/ag-grid/cell-editors/cell-editor-datepicker/cell-editor-datepicker.component';\nexport { SkyAgGridRowDeleteComponent as λ6 } from './lib/modules/ag-grid/ag-grid-row-delete.component';\nexport { SkyAgGridCellRendererRowSelectorComponent as λ7 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component';\nexport { SkyAgGridCellRendererCurrencyValidatorComponent as λ8 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component';\nexport { SkyAgGridCellRendererCurrencyComponent as λ9 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-currency/cell-renderer-currency.component';\nexport { SkyAgGridCellRendererValidatorTooltipComponent as λ10 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component';\nexport { SkyAgGridCellValidatorTooltipComponent as λ11 } from './lib/modules/ag-grid/cell-validator/ag-grid-cell-validator-tooltip.component';\nexport { SkyAgGridWrapperComponent as λ12 } from './lib/modules/ag-grid/ag-grid-wrapper.component';\nexport { SkyAgGridRowDeleteDirective as λ13 } from './lib/modules/ag-grid/ag-grid-row-delete.directive';\nexport { SkyAgGridDataManagerAdapterDirective as λ14 } from './lib/modules/ag-grid/ag-grid-data-manager-adapter.directive';\nexport { SkyAgGridCellEditorLookupComponent as λ15 } from './lib/modules/ag-grid/cell-editors/cell-editor-lookup/cell-editor-lookup.component';\nexport { SkyAgGridCellRendererLookupComponent as λ16 } from './lib/modules/ag-grid/cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component';\n"]}
@@ -123,7 +123,7 @@ export class SkyAgGridService {
123
123
  getDefaultGridOptions(args) {
124
124
  var _a, _b, _c, _d, _e, _f;
125
125
  // cellClassRules can be functions or string expressions
126
- const cellClassRuleTrueExpression = 'true';
126
+ const cellClassRuleTrueExpression = () => true;
127
127
  function getEditableFn(isUneditable) {
128
128
  return function (params) {
129
129
  let isEditable = params.colDef.editable;
@@ -1 +1 @@
1
- {"version":3,"file":"ag-grid.service.js","sourceRoot":"","sources":["../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/ag-grid.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, OnDestroy, Optional } from '@angular/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\nimport { SkyThemeService, SkyThemeSettings } from '@skyux/theme';\n\nimport {\n CellClassParams,\n GridOptions,\n ICellRendererParams,\n RowClassParams,\n SuppressKeyboardEventParams,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { EditableCallbackParams } from 'ag-grid-community/dist/lib/entities/colDef';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyAgGridAdapterService } from './ag-grid-adapter.service';\nimport { applySkyLookupPropertiesDefaults } from './apply-lookup-properties-defaults';\nimport { SkyAgGridCellEditorAutocompleteComponent } from './cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component';\nimport { SkyAgGridCellEditorCurrencyComponent } from './cell-editors/cell-editor-currency/cell-editor-currency.component';\nimport { SkyAgGridCellEditorDatepickerComponent } from './cell-editors/cell-editor-datepicker/cell-editor-datepicker.component';\nimport { SkyAgGridCellEditorLookupComponent } from './cell-editors/cell-editor-lookup/cell-editor-lookup.component';\nimport { SkyAgGridCellEditorNumberComponent } from './cell-editors/cell-editor-number/cell-editor-number.component';\nimport { SkyAgGridCellEditorTextComponent } from './cell-editors/cell-editor-text/cell-editor-text.component';\nimport { SkyAgGridCellRendererCurrencyValidatorComponent } from './cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component';\nimport { SkyAgGridCellRendererCurrencyComponent } from './cell-renderers/cell-renderer-currency/cell-renderer-currency.component';\nimport { SkyAgGridCellRendererLookupComponent } from './cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component';\nimport { SkyAgGridCellRendererRowSelectorComponent } from './cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component';\nimport { SkyAgGridCellRendererValidatorTooltipComponent } from './cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component';\nimport { SkyCellClass } from './types/cell-class';\nimport { SkyCellType } from './types/cell-type';\nimport { SkyHeaderClass } from './types/header-class';\nimport { SkyGetGridOptionsArgs } from './types/sky-grid-options';\n\nfunction autocompleteComparator(\n value1: { name: string },\n value2: { name: string }\n): number {\n if (value1 && value2) {\n if (value1.name > value2.name) {\n return 1;\n }\n\n if (value1.name < value2.name) {\n return -1;\n }\n\n return 0;\n }\n\n return value1 ? 1 : -1;\n}\n\nfunction autocompleteFormatter(\n params: ValueFormatterParams\n): string | undefined {\n return params.value && params.value.name;\n}\n\nfunction dateComparator(date1: any, date2: any): number {\n let date1value = date1;\n let date2value = date2;\n\n if (typeof date1value === 'string') {\n date1value = new Date(date1);\n }\n\n if (typeof date2value === 'string') {\n date2value = new Date(date2);\n }\n\n if (date1value && date2value) {\n if (date1value > date2value) {\n return 1;\n }\n\n if (date1value < date2value) {\n return -1;\n }\n\n return 0;\n }\n\n return date1value ? 1 : -1;\n}\n\nfunction getValidatorCellRendererSelector(component: string, fallback?: any) {\n return (params: ICellRendererParams) => {\n if (\n params.colDef &&\n typeof params.colDef.cellRendererParams?.skyComponentProperties\n ?.validator === 'function'\n ) {\n if (\n !params.colDef.cellRendererParams.skyComponentProperties.validator(\n params.value,\n params.data,\n params.rowIndex\n )\n ) {\n return {\n component,\n params: {\n ...params.colDef.cellRendererParams,\n },\n };\n }\n }\n return fallback;\n };\n}\n\nlet rowNodeId = -1;\n\n/**\n * `SkyAgGridService` provides methods to get AG Grid `gridOptions` to ensure grids match SKY UX functionality. The `gridOptions` can be overridden, and include registered SKY UX column types.\n */\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyAgGridService implements OnDestroy {\n /**\n * @internal\n */\n public currentTheme: SkyThemeSettings;\n private ngUnsubscribe = new Subject();\n\n constructor(\n private agGridAdapterService: SkyAgGridAdapterService,\n @Optional() private themeSvc?: SkyThemeService,\n @Optional() private resources?: SkyLibResourcesService\n ) {\n /*istanbul ignore else*/\n if (this.themeSvc) {\n this.themeSvc.settingsChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(\n (settingsChange) =>\n (this.currentTheme = settingsChange.currentSettings)\n );\n }\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n /**\n * Returns [AG Grid `gridOptions`](https://www.ag-grid.com/javascript-grid-properties/) with default SKY UX options, styling, and cell renderers registered for read-only grids.\n * @param args\n * @returns\n */\n public getGridOptions(args: SkyGetGridOptionsArgs): GridOptions {\n const defaultGridOptions = this.getDefaultGridOptions(args);\n const mergedGridOptions = this.mergeGridOptions(\n defaultGridOptions,\n args.gridOptions\n );\n\n return mergedGridOptions;\n }\n\n /**\n * Returns [AG Grid `gridOptions`](https://www.ag-grid.com/javascript-grid-properties/) with default SKY UX options, styling, and cell editors registered for editable grids.\n * @param args\n * @returns\n */\n public getEditableGridOptions(args: SkyGetGridOptionsArgs): GridOptions {\n const defaultGridOptions = this.getDefaultEditableGridOptions(args);\n const mergedGridOptions = this.mergeGridOptions(\n defaultGridOptions,\n args.gridOptions\n );\n\n return mergedGridOptions;\n }\n\n private mergeGridOptions(\n defaultGridOptions: GridOptions,\n providedGridOptions: GridOptions\n ): GridOptions {\n const mergedGridOptions = {\n ...defaultGridOptions,\n ...providedGridOptions,\n columnTypes: {\n ...providedGridOptions.columnTypes,\n // apply default second to prevent consumers from overwriting our default column types\n ...defaultGridOptions.columnTypes,\n },\n defaultColDef: {\n ...defaultGridOptions.defaultColDef,\n ...providedGridOptions.defaultColDef,\n // allow consumers to override all defaultColDef properties except cellClassRules, which we reserve for styling\n cellClassRules: defaultGridOptions.defaultColDef.cellClassRules,\n },\n icons: {\n ...defaultGridOptions.icons,\n ...providedGridOptions.icons,\n },\n };\n\n return mergedGridOptions;\n }\n\n private getDefaultGridOptions(args: SkyGetGridOptionsArgs): GridOptions {\n // cellClassRules can be functions or string expressions\n const cellClassRuleTrueExpression = 'true';\n\n function getEditableFn(\n isUneditable?: boolean\n ): (params: CellClassParams) => boolean {\n return function (params: CellClassParams): boolean {\n let isEditable = params.colDef.editable;\n\n if (typeof isEditable === 'function') {\n const column = params.columnApi.getColumn(params.colDef.field);\n isEditable = isEditable({\n ...params,\n column,\n } as EditableCallbackParams);\n }\n\n return isUneditable ? !isEditable : isEditable;\n };\n }\n\n const editableCellClassRules = {\n [SkyCellClass.Editable]: getEditableFn(),\n [SkyCellClass.Uneditable]: getEditableFn(true),\n };\n\n function getValidatorFn(): (params: CellClassParams) => boolean {\n return function (param: CellClassParams) {\n if (\n param.colDef &&\n typeof param.colDef.cellRendererParams?.skyComponentProperties\n ?.validator === 'function'\n ) {\n return !param.colDef.cellRendererParams.skyComponentProperties.validator(\n param.value,\n param.data,\n param.rowIndex\n );\n }\n return false;\n };\n }\n\n const validatorCellClassRules = {\n [SkyCellClass.Invalid]: getValidatorFn(),\n };\n\n const defaultSkyGridOptions: GridOptions = {\n columnTypes: {\n [SkyCellType.Autocomplete]: {\n cellClassRules: {\n [SkyCellClass.Autocomplete]: cellClassRuleTrueExpression,\n ...editableCellClassRules,\n },\n cellEditorFramework: SkyAgGridCellEditorAutocompleteComponent,\n valueFormatter: autocompleteFormatter,\n comparator: autocompleteComparator,\n minWidth: 185,\n },\n [SkyCellType.Currency]: {\n cellClassRules: {\n [SkyCellClass.Currency]: cellClassRuleTrueExpression,\n ...validatorCellClassRules,\n ...editableCellClassRules,\n },\n cellRendererSelector: getValidatorCellRendererSelector(\n 'sky-ag-grid-cell-renderer-currency-validator',\n { component: 'sky-ag-grid-cell-renderer-currency' }\n ),\n cellEditorFramework: SkyAgGridCellEditorCurrencyComponent,\n headerClass: SkyHeaderClass.RightAligned,\n minWidth: 185,\n },\n [SkyCellType.Date]: {\n cellClassRules: {\n [SkyCellClass.Date]: cellClassRuleTrueExpression,\n ...editableCellClassRules,\n },\n cellEditorFramework: SkyAgGridCellEditorDatepickerComponent,\n comparator: dateComparator,\n minWidth: this.currentTheme?.theme?.name === 'modern' ? 180 : 160,\n valueFormatter: (params: ValueFormatterParams) =>\n this.dateFormatter(params, args.locale),\n },\n [SkyCellType.Lookup]: {\n cellClassRules: {\n [SkyCellClass.Lookup]: cellClassRuleTrueExpression,\n ...editableCellClassRules,\n },\n cellEditorFramework: SkyAgGridCellEditorLookupComponent,\n cellRendererFramework: SkyAgGridCellRendererLookupComponent,\n valueFormatter: (params) => {\n const lookupProperties = applySkyLookupPropertiesDefaults(params);\n return (params.value || [])\n .map((value) => {\n return value[lookupProperties.descriptorProperty];\n })\n .filter((value) => value !== '' && value !== undefined)\n .join('; ');\n },\n minWidth: 185,\n },\n [SkyCellType.Number]: {\n cellClassRules: {\n [SkyCellClass.Number]: cellClassRuleTrueExpression,\n ...validatorCellClassRules,\n ...editableCellClassRules,\n },\n cellRendererSelector: getValidatorCellRendererSelector(\n 'sky-ag-grid-cell-renderer-validator-tooltip'\n ),\n cellEditorFramework: SkyAgGridCellEditorNumberComponent,\n headerClass: SkyHeaderClass.RightAligned,\n },\n [SkyCellType.RowSelector]: {\n cellClassRules: {\n [SkyCellClass.RowSelector]: cellClassRuleTrueExpression,\n [SkyCellClass.Uneditable]: cellClassRuleTrueExpression,\n },\n cellRendererFramework: SkyAgGridCellRendererRowSelectorComponent,\n headerName: '',\n minWidth: 55,\n maxWidth: 55,\n sortable: false,\n width: 55,\n },\n [SkyCellType.Text]: {\n cellClassRules: {\n [SkyCellClass.Text]: cellClassRuleTrueExpression,\n ...validatorCellClassRules,\n ...editableCellClassRules,\n },\n cellEditorFramework: SkyAgGridCellEditorTextComponent,\n cellRendererSelector: getValidatorCellRendererSelector(\n 'sky-ag-grid-cell-renderer-validator-tooltip'\n ),\n },\n [SkyCellType.Validator]: {\n cellClassRules: {\n ...validatorCellClassRules,\n ...editableCellClassRules,\n },\n cellRendererSelector: getValidatorCellRendererSelector(\n 'sky-ag-grid-cell-renderer-validator-tooltip'\n ),\n },\n },\n defaultColDef: {\n cellClassRules: editableCellClassRules,\n minWidth: 100,\n resizable: true,\n sortable: true,\n suppressKeyboardEvent: (keypress: SuppressKeyboardEventParams) =>\n this.suppressTab(keypress),\n },\n domLayout: 'autoHeight',\n enterMovesDownAfterEdit: true,\n frameworkComponents: {\n 'sky-ag-grid-cell-renderer-currency':\n SkyAgGridCellRendererCurrencyComponent,\n 'sky-ag-grid-cell-renderer-currency-validator':\n SkyAgGridCellRendererCurrencyValidatorComponent,\n 'sky-ag-grid-cell-renderer-validator-tooltip':\n SkyAgGridCellRendererValidatorTooltipComponent,\n },\n getRowNodeId(data: any): string {\n if ('id' in data && data.id !== undefined) {\n return `${data.id}`;\n }\n return `${rowNodeId--}`;\n },\n getRowClass: (params: RowClassParams) => {\n if (params.node.id) {\n return `sky-ag-grid-row-${params.node.id}`;\n } else {\n return undefined;\n }\n },\n headerHeight: this.currentTheme?.theme?.name === 'modern' ? 60 : 37,\n icons: {\n sortDescending: this.getIconTemplate('caret-down'),\n sortAscending: this.getIconTemplate('caret-up'),\n columnMoveMove: this.getIconTemplate('arrows'),\n columnMoveHide: this.getIconTemplate('arrows'),\n columnMoveLeft: this.getIconTemplate('arrows'),\n columnMoveRight: this.getIconTemplate('arrows'),\n columnMovePin: this.getIconTemplate('arrows'),\n },\n onCellFocused: () => this.onCellFocused(),\n rowHeight: this.currentTheme?.theme?.name === 'modern' ? 60 : 38,\n rowMultiSelectWithClick: true,\n rowSelection: 'multiple',\n singleClickEdit: true,\n // tslint:disable-next-line: no-null-keyword\n sortingOrder: ['desc', 'asc', null],\n stopEditingWhenGridLosesFocus: false,\n suppressRowClickSelection: true,\n suppressDragLeaveHidesColumns: true,\n };\n\n defaultSkyGridOptions.columnTypes[SkyCellType.CurrencyValidator] = {\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Currency],\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: any, data: any, rowIndex: number) => {\n return !!`${value || ''}`.match(/^[^0-9]*(\\d+[,.]?)+\\d*[^0-9]*$/);\n },\n validatorMessage: 'Please enter a valid currency',\n },\n },\n };\n /*istanbul ignore else*/\n if (this.resources) {\n this.resources\n .getString('sky_ag_grid_cell_renderer_currency_validator_message')\n .subscribe((value) => {\n defaultSkyGridOptions.columnTypes[\n SkyCellType.CurrencyValidator\n ].cellRendererParams.skyComponentProperties.validatorMessage = value;\n });\n }\n\n defaultSkyGridOptions.columnTypes[SkyCellType.NumberValidator] = {\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Validator],\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Number],\n cellClassRules: {\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Validator]\n .cellClassRules,\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Number].cellClassRules,\n },\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: any, data: any, rowIndex: number) => {\n return !!value && !isNaN(parseFloat(value));\n },\n validatorMessage: 'Please enter a valid number',\n },\n },\n };\n /*istanbul ignore else*/\n if (this.resources) {\n this.resources\n .getString('sky_ag_grid_cell_renderer_number_validator_message')\n .subscribe((value) => {\n defaultSkyGridOptions.columnTypes[\n SkyCellType.NumberValidator\n ].cellRendererParams.skyComponentProperties.validatorMessage = value;\n });\n }\n\n return defaultSkyGridOptions;\n }\n\n private onCellFocused(): void {\n const currentElement = this.agGridAdapterService.getFocusedElement();\n\n this.agGridAdapterService.focusOnFocusableChildren(currentElement);\n }\n\n private getDefaultEditableGridOptions(\n args: SkyGetGridOptionsArgs\n ): GridOptions {\n const defaultGridOptions = this.getDefaultGridOptions(args);\n\n defaultGridOptions.rowSelection = 'none';\n\n return defaultGridOptions;\n }\n\n private dateFormatter(\n params: ValueFormatterParams,\n locale: string = 'en-us'\n ): string | undefined {\n const dateConfig = { year: 'numeric', month: '2-digit', day: '2-digit' };\n let date: Date = params.value;\n\n if (date && typeof date === 'string') {\n date = new Date(params.value);\n }\n\n const formattedDate =\n date &&\n date.toLocaleDateString &&\n date.toLocaleDateString(locale, dateConfig as Intl.DateTimeFormatOptions);\n\n if (date && date.getTime && !isNaN(date.getTime())) {\n return formattedDate;\n }\n }\n\n private getIconTemplate(iconName: string): string {\n return `<i class=\"fa fa-${iconName}\"></i>`;\n }\n\n private suppressTab(params: SuppressKeyboardEventParams): boolean {\n if (params.event.code === 'Tab') {\n if (params.editing) {\n const currentlyFocusedEl =\n this.agGridAdapterService.getFocusedElement();\n // inline cell editors have the 'ag-cell' class, while popup editors have the 'ag-popup-editor' class\n const cellEl = this.agGridAdapterService.getElementOrParentWithClass(\n currentlyFocusedEl,\n 'ag-cell'\n );\n const popupEl = this.agGridAdapterService.getElementOrParentWithClass(\n currentlyFocusedEl,\n 'ag-popup-editor'\n );\n const parentEl = cellEl || popupEl;\n\n const nextFocusableElementInCell =\n this.agGridAdapterService.getNextFocusableElement(\n currentlyFocusedEl,\n parentEl,\n params.event.shiftKey\n );\n return !!nextFocusableElementInCell;\n }\n return true;\n }\n return false;\n }\n}\n"]}
1
+ {"version":3,"file":"ag-grid.service.js","sourceRoot":"","sources":["../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/ag-grid.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, OnDestroy, Optional } from '@angular/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\nimport { SkyThemeService, SkyThemeSettings } from '@skyux/theme';\n\nimport {\n CellClassParams,\n GridOptions,\n ICellRendererParams,\n RowClassParams,\n SuppressKeyboardEventParams,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { EditableCallbackParams } from 'ag-grid-community/dist/lib/entities/colDef';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyAgGridAdapterService } from './ag-grid-adapter.service';\nimport { applySkyLookupPropertiesDefaults } from './apply-lookup-properties-defaults';\nimport { SkyAgGridCellEditorAutocompleteComponent } from './cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component';\nimport { SkyAgGridCellEditorCurrencyComponent } from './cell-editors/cell-editor-currency/cell-editor-currency.component';\nimport { SkyAgGridCellEditorDatepickerComponent } from './cell-editors/cell-editor-datepicker/cell-editor-datepicker.component';\nimport { SkyAgGridCellEditorLookupComponent } from './cell-editors/cell-editor-lookup/cell-editor-lookup.component';\nimport { SkyAgGridCellEditorNumberComponent } from './cell-editors/cell-editor-number/cell-editor-number.component';\nimport { SkyAgGridCellEditorTextComponent } from './cell-editors/cell-editor-text/cell-editor-text.component';\nimport { SkyAgGridCellRendererCurrencyValidatorComponent } from './cell-renderers/cell-renderer-currency/cell-renderer-currency-validator.component';\nimport { SkyAgGridCellRendererCurrencyComponent } from './cell-renderers/cell-renderer-currency/cell-renderer-currency.component';\nimport { SkyAgGridCellRendererLookupComponent } from './cell-renderers/cell-renderer-lookup/cell-renderer-lookup.component';\nimport { SkyAgGridCellRendererRowSelectorComponent } from './cell-renderers/cell-renderer-row-selector/cell-renderer-row-selector.component';\nimport { SkyAgGridCellRendererValidatorTooltipComponent } from './cell-renderers/cell-renderer-validator-tooltip/cell-renderer-validator-tooltip.component';\nimport { SkyCellClass } from './types/cell-class';\nimport { SkyAgGridCellEditorInitialAction } from './types/cell-editor-initial-action';\nimport { SkyCellType } from './types/cell-type';\nimport { SkyHeaderClass } from './types/header-class';\nimport { SkyGetGridOptionsArgs } from './types/sky-grid-options';\n\nfunction autocompleteComparator(\n value1: { name: string },\n value2: { name: string }\n): number {\n if (value1 && value2) {\n if (value1.name > value2.name) {\n return 1;\n }\n\n if (value1.name < value2.name) {\n return -1;\n }\n\n return 0;\n }\n\n return value1 ? 1 : -1;\n}\n\nfunction autocompleteFormatter(\n params: ValueFormatterParams\n): string | undefined {\n return params.value && params.value.name;\n}\n\nfunction dateComparator(date1: any, date2: any): number {\n let date1value = date1;\n let date2value = date2;\n\n if (typeof date1value === 'string') {\n date1value = new Date(date1);\n }\n\n if (typeof date2value === 'string') {\n date2value = new Date(date2);\n }\n\n if (date1value && date2value) {\n if (date1value > date2value) {\n return 1;\n }\n\n if (date1value < date2value) {\n return -1;\n }\n\n return 0;\n }\n\n return date1value ? 1 : -1;\n}\n\nfunction getValidatorCellRendererSelector(component: string, fallback?: any) {\n return (params: ICellRendererParams) => {\n if (\n params.colDef &&\n typeof params.colDef.cellRendererParams?.skyComponentProperties\n ?.validator === 'function'\n ) {\n if (\n !params.colDef.cellRendererParams.skyComponentProperties.validator(\n params.value,\n params.data,\n params.rowIndex\n )\n ) {\n return {\n component,\n params: {\n ...params.colDef.cellRendererParams,\n },\n };\n }\n }\n return fallback;\n };\n}\n\nlet rowNodeId = -1;\n\n/**\n * `SkyAgGridService` provides methods to get AG Grid `gridOptions` to ensure grids match SKY UX functionality. The `gridOptions` can be overridden, and include registered SKY UX column types.\n */\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyAgGridService implements OnDestroy {\n /**\n * @internal\n */\n public currentTheme: SkyThemeSettings;\n private ngUnsubscribe = new Subject();\n\n constructor(\n private agGridAdapterService: SkyAgGridAdapterService,\n @Optional() private themeSvc?: SkyThemeService,\n @Optional() private resources?: SkyLibResourcesService\n ) {\n /*istanbul ignore else*/\n if (this.themeSvc) {\n this.themeSvc.settingsChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(\n (settingsChange) =>\n (this.currentTheme = settingsChange.currentSettings)\n );\n }\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n /**\n * Returns [AG Grid `gridOptions`](https://www.ag-grid.com/javascript-grid-properties/) with default SKY UX options, styling, and cell renderers registered for read-only grids.\n * @param args\n * @returns\n */\n public getGridOptions(args: SkyGetGridOptionsArgs): GridOptions {\n const defaultGridOptions = this.getDefaultGridOptions(args);\n const mergedGridOptions = this.mergeGridOptions(\n defaultGridOptions,\n args.gridOptions\n );\n\n return mergedGridOptions;\n }\n\n /**\n * Returns [AG Grid `gridOptions`](https://www.ag-grid.com/javascript-grid-properties/) with default SKY UX options, styling, and cell editors registered for editable grids.\n * @param args\n * @returns\n */\n public getEditableGridOptions(args: SkyGetGridOptionsArgs): GridOptions {\n const defaultGridOptions = this.getDefaultEditableGridOptions(args);\n const mergedGridOptions = this.mergeGridOptions(\n defaultGridOptions,\n args.gridOptions\n );\n\n return mergedGridOptions;\n }\n\n private mergeGridOptions(\n defaultGridOptions: GridOptions,\n providedGridOptions: GridOptions\n ): GridOptions {\n const mergedGridOptions = {\n ...defaultGridOptions,\n ...providedGridOptions,\n columnTypes: {\n ...providedGridOptions.columnTypes,\n // apply default second to prevent consumers from overwriting our default column types\n ...defaultGridOptions.columnTypes,\n },\n defaultColDef: {\n ...defaultGridOptions.defaultColDef,\n ...providedGridOptions.defaultColDef,\n // allow consumers to override all defaultColDef properties except cellClassRules, which we reserve for styling\n cellClassRules: defaultGridOptions.defaultColDef.cellClassRules,\n },\n icons: {\n ...defaultGridOptions.icons,\n ...providedGridOptions.icons,\n },\n };\n\n return mergedGridOptions;\n }\n\n private getDefaultGridOptions(args: SkyGetGridOptionsArgs): GridOptions {\n // cellClassRules can be functions or string expressions\n const cellClassRuleTrueExpression = () => true;\n\n function getEditableFn(\n isUneditable?: boolean\n ): (params: CellClassParams) => boolean {\n return function (params: CellClassParams): boolean {\n let isEditable = params.colDef.editable;\n\n if (typeof isEditable === 'function') {\n const column = params.columnApi.getColumn(params.colDef.field);\n isEditable = isEditable({\n ...params,\n column,\n } as EditableCallbackParams);\n }\n\n return isUneditable ? !isEditable : isEditable;\n };\n }\n\n const editableCellClassRules = {\n [SkyCellClass.Editable]: getEditableFn(),\n [SkyCellClass.Uneditable]: getEditableFn(true),\n };\n\n function getValidatorFn(): (params: CellClassParams) => boolean {\n return function (param: CellClassParams) {\n if (\n param.colDef &&\n typeof param.colDef.cellRendererParams?.skyComponentProperties\n ?.validator === 'function'\n ) {\n return !param.colDef.cellRendererParams.skyComponentProperties.validator(\n param.value,\n param.data,\n param.rowIndex\n );\n }\n return false;\n };\n }\n\n const validatorCellClassRules = {\n [SkyCellClass.Invalid]: getValidatorFn(),\n };\n\n const defaultSkyGridOptions: GridOptions = {\n columnTypes: {\n [SkyCellType.Autocomplete]: {\n cellClassRules: {\n [SkyCellClass.Autocomplete]: cellClassRuleTrueExpression,\n ...editableCellClassRules,\n },\n cellEditorFramework: SkyAgGridCellEditorAutocompleteComponent,\n valueFormatter: autocompleteFormatter,\n comparator: autocompleteComparator,\n minWidth: 185,\n },\n [SkyCellType.Currency]: {\n cellClassRules: {\n [SkyCellClass.Currency]: cellClassRuleTrueExpression,\n ...validatorCellClassRules,\n ...editableCellClassRules,\n },\n cellRendererSelector: getValidatorCellRendererSelector(\n 'sky-ag-grid-cell-renderer-currency-validator',\n { component: 'sky-ag-grid-cell-renderer-currency' }\n ),\n cellEditorFramework: SkyAgGridCellEditorCurrencyComponent,\n headerClass: SkyHeaderClass.RightAligned,\n minWidth: 185,\n },\n [SkyCellType.Date]: {\n cellClassRules: {\n [SkyCellClass.Date]: cellClassRuleTrueExpression,\n ...editableCellClassRules,\n },\n cellEditorFramework: SkyAgGridCellEditorDatepickerComponent,\n comparator: dateComparator,\n minWidth: this.currentTheme?.theme?.name === 'modern' ? 180 : 160,\n valueFormatter: (params: ValueFormatterParams) =>\n this.dateFormatter(params, args.locale),\n },\n [SkyCellType.Lookup]: {\n cellClassRules: {\n [SkyCellClass.Lookup]: cellClassRuleTrueExpression,\n ...editableCellClassRules,\n },\n cellEditorFramework: SkyAgGridCellEditorLookupComponent,\n cellRendererFramework: SkyAgGridCellRendererLookupComponent,\n valueFormatter: (params) => {\n const lookupProperties = applySkyLookupPropertiesDefaults(params);\n return (params.value || [])\n .map((value) => {\n return value[lookupProperties.descriptorProperty];\n })\n .filter((value) => value !== '' && value !== undefined)\n .join('; ');\n },\n minWidth: 185,\n },\n [SkyCellType.Number]: {\n cellClassRules: {\n [SkyCellClass.Number]: cellClassRuleTrueExpression,\n ...validatorCellClassRules,\n ...editableCellClassRules,\n },\n cellRendererSelector: getValidatorCellRendererSelector(\n 'sky-ag-grid-cell-renderer-validator-tooltip'\n ),\n cellEditorFramework: SkyAgGridCellEditorNumberComponent,\n headerClass: SkyHeaderClass.RightAligned,\n },\n [SkyCellType.RowSelector]: {\n cellClassRules: {\n [SkyCellClass.RowSelector]: cellClassRuleTrueExpression,\n [SkyCellClass.Uneditable]: cellClassRuleTrueExpression,\n },\n cellRendererFramework: SkyAgGridCellRendererRowSelectorComponent,\n headerName: '',\n minWidth: 55,\n maxWidth: 55,\n sortable: false,\n width: 55,\n },\n [SkyCellType.Text]: {\n cellClassRules: {\n [SkyCellClass.Text]: cellClassRuleTrueExpression,\n ...validatorCellClassRules,\n ...editableCellClassRules,\n },\n cellEditorFramework: SkyAgGridCellEditorTextComponent,\n cellRendererSelector: getValidatorCellRendererSelector(\n 'sky-ag-grid-cell-renderer-validator-tooltip'\n ),\n },\n [SkyCellType.Validator]: {\n cellClassRules: {\n ...validatorCellClassRules,\n ...editableCellClassRules,\n },\n cellRendererSelector: getValidatorCellRendererSelector(\n 'sky-ag-grid-cell-renderer-validator-tooltip'\n ),\n },\n },\n defaultColDef: {\n cellClassRules: editableCellClassRules,\n minWidth: 100,\n resizable: true,\n sortable: true,\n suppressKeyboardEvent: (keypress: SuppressKeyboardEventParams) =>\n this.suppressTab(keypress),\n },\n domLayout: 'autoHeight',\n enterMovesDownAfterEdit: true,\n frameworkComponents: {\n 'sky-ag-grid-cell-renderer-currency':\n SkyAgGridCellRendererCurrencyComponent,\n 'sky-ag-grid-cell-renderer-currency-validator':\n SkyAgGridCellRendererCurrencyValidatorComponent,\n 'sky-ag-grid-cell-renderer-validator-tooltip':\n SkyAgGridCellRendererValidatorTooltipComponent,\n },\n getRowNodeId(data: any): string {\n if ('id' in data && data.id !== undefined) {\n return `${data.id}`;\n }\n return `${rowNodeId--}`;\n },\n getRowClass: (params: RowClassParams) => {\n if (params.node.id) {\n return `sky-ag-grid-row-${params.node.id}`;\n } else {\n return undefined;\n }\n },\n headerHeight: this.currentTheme?.theme?.name === 'modern' ? 60 : 37,\n icons: {\n sortDescending: this.getIconTemplate('caret-down'),\n sortAscending: this.getIconTemplate('caret-up'),\n columnMoveMove: this.getIconTemplate('arrows'),\n columnMoveHide: this.getIconTemplate('arrows'),\n columnMoveLeft: this.getIconTemplate('arrows'),\n columnMoveRight: this.getIconTemplate('arrows'),\n columnMovePin: this.getIconTemplate('arrows'),\n },\n onCellFocused: () => this.onCellFocused(),\n rowHeight: this.currentTheme?.theme?.name === 'modern' ? 60 : 38,\n rowMultiSelectWithClick: true,\n rowSelection: 'multiple',\n singleClickEdit: true,\n // tslint:disable-next-line: no-null-keyword\n sortingOrder: ['desc', 'asc', null],\n stopEditingWhenGridLosesFocus: false,\n suppressRowClickSelection: true,\n suppressDragLeaveHidesColumns: true,\n };\n\n defaultSkyGridOptions.columnTypes[SkyCellType.CurrencyValidator] = {\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Currency],\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: any, data: any, rowIndex: number) => {\n return !!`${value || ''}`.match(/^[^0-9]*(\\d+[,.]?)+\\d*[^0-9]*$/);\n },\n validatorMessage: 'Please enter a valid currency',\n },\n },\n };\n /*istanbul ignore else*/\n if (this.resources) {\n this.resources\n .getString('sky_ag_grid_cell_renderer_currency_validator_message')\n .subscribe((value) => {\n defaultSkyGridOptions.columnTypes[\n SkyCellType.CurrencyValidator\n ].cellRendererParams.skyComponentProperties.validatorMessage = value;\n });\n }\n\n defaultSkyGridOptions.columnTypes[SkyCellType.NumberValidator] = {\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Validator],\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Number],\n cellClassRules: {\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Validator]\n .cellClassRules,\n ...defaultSkyGridOptions.columnTypes[SkyCellType.Number].cellClassRules,\n },\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: any, data: any, rowIndex: number) => {\n return !!value && !isNaN(parseFloat(value));\n },\n validatorMessage: 'Please enter a valid number',\n },\n },\n };\n /*istanbul ignore else*/\n if (this.resources) {\n this.resources\n .getString('sky_ag_grid_cell_renderer_number_validator_message')\n .subscribe((value) => {\n defaultSkyGridOptions.columnTypes[\n SkyCellType.NumberValidator\n ].cellRendererParams.skyComponentProperties.validatorMessage = value;\n });\n }\n\n return defaultSkyGridOptions;\n }\n\n private onCellFocused(): void {\n const currentElement = this.agGridAdapterService.getFocusedElement();\n\n this.agGridAdapterService.focusOnFocusableChildren(currentElement);\n }\n\n private getDefaultEditableGridOptions(\n args: SkyGetGridOptionsArgs\n ): GridOptions {\n const defaultGridOptions = this.getDefaultGridOptions(args);\n\n defaultGridOptions.rowSelection = 'none';\n\n return defaultGridOptions;\n }\n\n private dateFormatter(\n params: ValueFormatterParams,\n locale: string = 'en-us'\n ): string | undefined {\n const dateConfig = { year: 'numeric', month: '2-digit', day: '2-digit' };\n let date: Date = params.value;\n\n if (date && typeof date === 'string') {\n date = new Date(params.value);\n }\n\n const formattedDate =\n date &&\n date.toLocaleDateString &&\n date.toLocaleDateString(locale, dateConfig as Intl.DateTimeFormatOptions);\n\n if (date && date.getTime && !isNaN(date.getTime())) {\n return formattedDate;\n }\n }\n\n private getIconTemplate(iconName: string): string {\n return `<i class=\"fa fa-${iconName}\"></i>`;\n }\n\n private suppressTab(params: SuppressKeyboardEventParams): boolean {\n if (params.event.code === 'Tab') {\n if (params.editing) {\n const currentlyFocusedEl =\n this.agGridAdapterService.getFocusedElement();\n // inline cell editors have the 'ag-cell' class, while popup editors have the 'ag-popup-editor' class\n const cellEl = this.agGridAdapterService.getElementOrParentWithClass(\n currentlyFocusedEl,\n 'ag-cell'\n );\n const popupEl = this.agGridAdapterService.getElementOrParentWithClass(\n currentlyFocusedEl,\n 'ag-popup-editor'\n );\n const parentEl = cellEl || popupEl;\n\n const nextFocusableElementInCell =\n this.agGridAdapterService.getNextFocusableElement(\n currentlyFocusedEl,\n parentEl,\n params.event.shiftKey\n );\n return !!nextFocusableElementInCell;\n }\n return true;\n }\n return false;\n }\n}\n"]}
@@ -1,4 +1,9 @@
1
+ var _SkyAgGridCellEditorAutocompleteComponent_triggerType;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { ChangeDetectionStrategy, Component, ElementRef, ViewChild, } from '@angular/core';
4
+ import { FormControl, FormGroup } from '@angular/forms';
5
+ import { SkyAgGridCellEditorInitialAction } from '../../types/cell-editor-initial-action';
6
+ import { SkyAgGridCellEditorUtils } from '../../types/cell-editor-utils';
2
7
  import * as i0 from "@angular/core";
3
8
  import * as i1 from "@skyux/lookup";
4
9
  import * as i2 from "@angular/forms";
@@ -8,24 +13,52 @@ import * as i3 from "@skyux/i18n";
8
13
  */
9
14
  export class SkyAgGridCellEditorAutocompleteComponent {
10
15
  constructor() {
16
+ this.editorForm = new FormGroup({
17
+ selection: new FormControl(),
18
+ });
11
19
  this.skyComponentProperties = {};
20
+ _SkyAgGridCellEditorAutocompleteComponent_triggerType.set(this, void 0);
12
21
  }
13
22
  agInit(params) {
14
23
  this.params = params;
15
- this.currentSelection = this.params.value;
24
+ __classPrivateFieldSet(this, _SkyAgGridCellEditorAutocompleteComponent_triggerType, SkyAgGridCellEditorUtils.getEditorInitialAction(params), "f");
25
+ const control = this.editorForm.get('selection');
26
+ switch (__classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_triggerType, "f")) {
27
+ case SkyAgGridCellEditorInitialAction.Delete:
28
+ control.setValue(undefined);
29
+ break;
30
+ case SkyAgGridCellEditorInitialAction.Replace:
31
+ case SkyAgGridCellEditorInitialAction.Highlighted:
32
+ case SkyAgGridCellEditorInitialAction.Untouched:
33
+ default:
34
+ control.setValue(params.value);
35
+ break;
36
+ }
16
37
  this.columnHeader = this.params.colDef && this.params.colDef.headerName;
17
38
  this.rowNumber = this.params.rowIndex + 1;
18
39
  this.skyComponentProperties = this.params.skyComponentProperties || {};
19
40
  }
20
41
  afterGuiAttached() {
21
42
  this.input.nativeElement.focus();
43
+ if (__classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Replace) {
44
+ this.input.nativeElement.select();
45
+ this.input.nativeElement.setRangeText(this.params.charPress);
46
+ // Ensure the cursor is at the end of the text.
47
+ this.input.nativeElement.setSelectionRange(this.params.charPress.length, this.params.charPress.length);
48
+ this.input.nativeElement.dispatchEvent(new Event('input'));
49
+ }
50
+ if (__classPrivateFieldGet(this, _SkyAgGridCellEditorAutocompleteComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Highlighted) {
51
+ this.input.nativeElement.select();
52
+ }
22
53
  }
23
54
  getValue() {
24
- return this.currentSelection;
55
+ const val = this.editorForm.get('selection').value;
56
+ return val !== undefined && val !== null ? val : undefined;
25
57
  }
26
58
  }
59
+ _SkyAgGridCellEditorAutocompleteComponent_triggerType = new WeakMap();
27
60
  SkyAgGridCellEditorAutocompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorAutocompleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
- SkyAgGridCellEditorAutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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\">\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 skyAutocomplete\n #skyCellEditorAutocomplete\n type=\"text\"\n [(ngModel)]=\"currentSelection\"\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"], components: [{ type: i1.λ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"] }], directives: [{ type: i1.λ1, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: ["autocompleteAttribute", "disabled"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "skyLibResources": i3.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
61
+ SkyAgGridCellEditorAutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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"], components: [{ type: i1.λ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"] }], directives: [{ type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1.λ1, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: ["autocompleteAttribute", "disabled"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "skyLibResources": i3.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorAutocompleteComponent, decorators: [{
30
63
  type: Component,
31
64
  args: [{
@@ -1 +1 @@
1
- {"version":3,"file":"cell-editor-autocomplete.component.js","sourceRoot":"","sources":["../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.ts","../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.html"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,UAAU,EACV,SAAS,GACV,MAAM,eAAe,CAAC;;;;;AAOvB;;GAEG;AAOH,MAAM,OAAO,wCAAwC;IANrD;QAYS,2BAAsB,GAAoC,EAAE,CAAC;KAqBrE;IAfQ,MAAM,CAAC,MAAuC;QACnD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;QACxE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC;IACzE,CAAC;IAEM,gBAAgB;QACrB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;;sIA1BU,wCAAwC;0HAAxC,wCAAwC,2KASH,UAAU,6BC9B5D,8nCA8BA;4FDTa,wCAAwC;kBANpD,SAAS;mBAAC;oBACT,QAAQ,EAAE,sCAAsC;oBAChD,WAAW,EAAE,2CAA2C;oBACxD,SAAS,EAAE,CAAC,2CAA2C,CAAC;oBACxD,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;8BAWQ,KAAK;sBADX,SAAS;uBAAC,2BAA2B,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE","sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewChild,\n} from '@angular/core';\n\nimport { ICellEditorAngularComp } from 'ag-grid-angular';\n\nimport { SkyAgGridAutocompleteProperties } from '../../types/autocomplete-properties';\nimport { SkyCellEditorAutocompleteParams } from '../../types/cell-editor-autocomplete-params';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-ag-grid-cell-editor-autocomplete',\n templateUrl: './cell-editor-autocomplete.component.html',\n styleUrls: ['./cell-editor-autocomplete.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyAgGridCellEditorAutocompleteComponent\n implements ICellEditorAngularComp\n{\n public currentSelection: any;\n public columnHeader: string;\n public rowNumber: number;\n public skyComponentProperties: SkyAgGridAutocompleteProperties = {};\n private params: SkyCellEditorAutocompleteParams;\n\n @ViewChild('skyCellEditorAutocomplete', { read: ElementRef })\n public input: ElementRef;\n\n public agInit(params: SkyCellEditorAutocompleteParams) {\n this.params = params;\n this.currentSelection = this.params.value;\n this.columnHeader = this.params.colDef && this.params.colDef.headerName;\n this.rowNumber = this.params.rowIndex + 1;\n this.skyComponentProperties = this.params.skyComponentProperties || {};\n }\n\n public afterGuiAttached(): void {\n this.input.nativeElement.focus();\n }\n\n public getValue(): any {\n return this.currentSelection;\n }\n}\n","<div class=\"sky-ag-grid-cell-editor-autocomplete\">\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 skyAutocomplete\n #skyCellEditorAutocomplete\n type=\"text\"\n [(ngModel)]=\"currentSelection\"\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"]}
1
+ {"version":3,"file":"cell-editor-autocomplete.component.js","sourceRoot":"","sources":["../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.ts","../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.component.html"],"names":[],"mappings":"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","sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewChild,\n} from '@angular/core';\nimport { FormControl, FormGroup } from '@angular/forms';\n\nimport { ICellEditorAngularComp } from 'ag-grid-angular';\n\nimport { SkyAgGridAutocompleteProperties } from '../../types/autocomplete-properties';\nimport { SkyCellEditorAutocompleteParams } from '../../types/cell-editor-autocomplete-params';\nimport { SkyAgGridCellEditorInitialAction } from '../../types/cell-editor-initial-action';\nimport { SkyAgGridCellEditorUtils } from '../../types/cell-editor-utils';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-ag-grid-cell-editor-autocomplete',\n templateUrl: './cell-editor-autocomplete.component.html',\n styleUrls: ['./cell-editor-autocomplete.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyAgGridCellEditorAutocompleteComponent\n implements ICellEditorAngularComp\n{\n public columnHeader: string;\n public editorForm = new FormGroup({\n selection: new FormControl(),\n });\n public rowNumber: number;\n public skyComponentProperties: SkyAgGridAutocompleteProperties = {};\n private params: SkyCellEditorAutocompleteParams;\n\n #triggerType: SkyAgGridCellEditorInitialAction;\n\n @ViewChild('skyCellEditorAutocomplete', { read: ElementRef })\n public input: ElementRef;\n\n public agInit(params: SkyCellEditorAutocompleteParams) {\n this.params = params;\n this.#triggerType = SkyAgGridCellEditorUtils.getEditorInitialAction(params);\n const control = this.editorForm.get('selection');\n switch (this.#triggerType) {\n case SkyAgGridCellEditorInitialAction.Delete:\n control.setValue(undefined);\n break;\n case SkyAgGridCellEditorInitialAction.Replace:\n case SkyAgGridCellEditorInitialAction.Highlighted:\n case SkyAgGridCellEditorInitialAction.Untouched:\n default:\n control.setValue(params.value);\n break;\n }\n this.columnHeader = this.params.colDef && this.params.colDef.headerName;\n this.rowNumber = this.params.rowIndex + 1;\n this.skyComponentProperties = this.params.skyComponentProperties || {};\n }\n\n public afterGuiAttached(): void {\n this.input.nativeElement.focus();\n if (this.#triggerType === SkyAgGridCellEditorInitialAction.Replace) {\n this.input.nativeElement.select();\n this.input.nativeElement.setRangeText(this.params.charPress);\n // Ensure the cursor is at the end of the text.\n this.input.nativeElement.setSelectionRange(\n this.params.charPress.length,\n this.params.charPress.length\n );\n this.input.nativeElement.dispatchEvent(new Event('input'));\n }\n if (this.#triggerType === SkyAgGridCellEditorInitialAction.Highlighted) {\n this.input.nativeElement.select();\n }\n }\n\n public getValue(): any | undefined {\n const val = this.editorForm.get('selection').value;\n return val !== undefined && val !== null ? val : undefined;\n }\n}\n","<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"]}
@@ -1,5 +1,5 @@
1
1
  import { NgModule } from '@angular/core';
2
- import { FormsModule } from '@angular/forms';
2
+ import { ReactiveFormsModule } from '@angular/forms';
3
3
  import { SkyAutocompleteModule } from '@skyux/lookup';
4
4
  import { SkyAgGridResourcesModule } from '../../../shared/sky-ag-grid-resources.module';
5
5
  import { SkyAgGridCellEditorAutocompleteComponent } from '../cell-editor-autocomplete/cell-editor-autocomplete.component';
@@ -7,12 +7,22 @@ import * as i0 from "@angular/core";
7
7
  export class SkyAgGridCellEditorAutocompleteModule {
8
8
  }
9
9
  SkyAgGridCellEditorAutocompleteModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorAutocompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- SkyAgGridCellEditorAutocompleteModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorAutocompleteModule, declarations: [SkyAgGridCellEditorAutocompleteComponent], imports: [FormsModule, SkyAgGridResourcesModule, SkyAutocompleteModule], exports: [SkyAgGridCellEditorAutocompleteComponent] });
11
- SkyAgGridCellEditorAutocompleteModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorAutocompleteModule, imports: [[FormsModule, SkyAgGridResourcesModule, SkyAutocompleteModule]] });
10
+ SkyAgGridCellEditorAutocompleteModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorAutocompleteModule, declarations: [SkyAgGridCellEditorAutocompleteComponent], imports: [ReactiveFormsModule,
11
+ SkyAgGridResourcesModule,
12
+ SkyAutocompleteModule], exports: [SkyAgGridCellEditorAutocompleteComponent] });
13
+ SkyAgGridCellEditorAutocompleteModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorAutocompleteModule, imports: [[
14
+ ReactiveFormsModule,
15
+ SkyAgGridResourcesModule,
16
+ SkyAutocompleteModule,
17
+ ]] });
12
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorAutocompleteModule, decorators: [{
13
19
  type: NgModule,
14
20
  args: [{
15
- imports: [FormsModule, SkyAgGridResourcesModule, SkyAutocompleteModule],
21
+ imports: [
22
+ ReactiveFormsModule,
23
+ SkyAgGridResourcesModule,
24
+ SkyAutocompleteModule,
25
+ ],
16
26
  declarations: [SkyAgGridCellEditorAutocompleteComponent],
17
27
  exports: [SkyAgGridCellEditorAutocompleteComponent],
18
28
  }]
@@ -1 +1 @@
1
- {"version":3,"file":"cell-editor-autocomplete.module.js","sourceRoot":"","sources":["../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,wCAAwC,EAAE,MAAM,gEAAgE,CAAC;;AAO1H,MAAM,OAAO,qCAAqC;;mIAArC,qCAAqC;oIAArC,qCAAqC,iBAHjC,wCAAwC,aAD7C,WAAW,EAAE,wBAAwB,EAAE,qBAAqB,aAE5D,wCAAwC;oIAEvC,qCAAqC,YAJvC,CAAC,WAAW,EAAE,wBAAwB,EAAE,qBAAqB,CAAC;4FAI5D,qCAAqC;kBALjD,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAC,WAAW,EAAE,wBAAwB,EAAE,qBAAqB,CAAC;oBACvE,YAAY,EAAE,CAAC,wCAAwC,CAAC;oBACxD,OAAO,EAAE,CAAC,wCAAwC,CAAC;iBACpD","sourcesContent":["import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyAutocompleteModule } from '@skyux/lookup';\n\nimport { SkyAgGridResourcesModule } from '../../../shared/sky-ag-grid-resources.module';\nimport { SkyAgGridCellEditorAutocompleteComponent } from '../cell-editor-autocomplete/cell-editor-autocomplete.component';\n\n@NgModule({\n imports: [FormsModule, SkyAgGridResourcesModule, SkyAutocompleteModule],\n declarations: [SkyAgGridCellEditorAutocompleteComponent],\n exports: [SkyAgGridCellEditorAutocompleteComponent],\n})\nexport class SkyAgGridCellEditorAutocompleteModule {}\n"]}
1
+ {"version":3,"file":"cell-editor-autocomplete.module.js","sourceRoot":"","sources":["../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-autocomplete/cell-editor-autocomplete.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,wCAAwC,EAAE,MAAM,gEAAgE,CAAC;;AAW1H,MAAM,OAAO,qCAAqC;;mIAArC,qCAAqC;oIAArC,qCAAqC,iBAHjC,wCAAwC,aAJrD,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB,aAGb,wCAAwC;oIAEvC,qCAAqC,YARvC;YACP,mBAAmB;YACnB,wBAAwB;YACxB,qBAAqB;SACtB;4FAIU,qCAAqC;kBATjD,QAAQ;mBAAC;oBACR,OAAO,EAAE;wBACP,mBAAmB;wBACnB,wBAAwB;wBACxB,qBAAqB;qBACtB;oBACD,YAAY,EAAE,CAAC,wCAAwC,CAAC;oBACxD,OAAO,EAAE,CAAC,wCAAwC,CAAC;iBACpD","sourcesContent":["import { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { SkyAutocompleteModule } from '@skyux/lookup';\n\nimport { SkyAgGridResourcesModule } from '../../../shared/sky-ag-grid-resources.module';\nimport { SkyAgGridCellEditorAutocompleteComponent } from '../cell-editor-autocomplete/cell-editor-autocomplete.component';\n\n@NgModule({\n imports: [\n ReactiveFormsModule,\n SkyAgGridResourcesModule,\n SkyAutocompleteModule,\n ],\n declarations: [SkyAgGridCellEditorAutocompleteComponent],\n exports: [SkyAgGridCellEditorAutocompleteComponent],\n})\nexport class SkyAgGridCellEditorAutocompleteModule {}\n"]}
@@ -1,4 +1,9 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, ViewChild, } from '@angular/core';
1
+ var _SkyAgGridCellEditorCurrencyComponent_triggerType;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, ViewChild, } from '@angular/core';
4
+ import { FormControl, FormGroup } from '@angular/forms';
5
+ import { SkyAgGridCellEditorInitialAction } from '../../types/cell-editor-initial-action';
6
+ import { SkyAgGridCellEditorUtils } from '../../types/cell-editor-utils';
2
7
  import * as i0 from "@angular/core";
3
8
  import * as i1 from "@angular/forms";
4
9
  import * as i2 from "@skyux/autonumeric";
@@ -7,8 +12,13 @@ import * as i3 from "@skyux/i18n";
7
12
  * @internal
8
13
  */
9
14
  export class SkyAgGridCellEditorCurrencyComponent {
10
- constructor() {
15
+ constructor(changeDetector) {
16
+ this.changeDetector = changeDetector;
11
17
  this.skyComponentProperties = {};
18
+ this.editorForm = new FormGroup({
19
+ currency: new FormControl(),
20
+ });
21
+ _SkyAgGridCellEditorCurrencyComponent_triggerType.set(this, void 0);
12
22
  }
13
23
  /**
14
24
  * agInit is called by agGrid once after the editor is created and provides the editor with the information it needs.
@@ -16,7 +26,6 @@ export class SkyAgGridCellEditorCurrencyComponent {
16
26
  */
17
27
  agInit(params) {
18
28
  this.params = params;
19
- this.value = this.params.value;
20
29
  this.columnHeader = this.params.colDef.headerName;
21
30
  this.rowNumber = this.params.rowIndex + 1;
22
31
  this.columnWidth = this.params.column.getActualWidth();
@@ -32,12 +41,37 @@ export class SkyAgGridCellEditorCurrencyComponent {
32
41
  */
33
42
  afterGuiAttached() {
34
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
+ switch (__classPrivateFieldGet(this, _SkyAgGridCellEditorCurrencyComponent_triggerType, "f")) {
49
+ case SkyAgGridCellEditorInitialAction.Delete:
50
+ control.setValue(undefined);
51
+ break;
52
+ case SkyAgGridCellEditorInitialAction.Replace:
53
+ control.setValue(parseFloat(this.params.charPress) || undefined);
54
+ break;
55
+ case SkyAgGridCellEditorInitialAction.Highlighted:
56
+ case SkyAgGridCellEditorInitialAction.Untouched:
57
+ default:
58
+ control.setValue(parseFloat(this.params.value));
59
+ break;
60
+ }
61
+ this.changeDetector.markForCheck();
62
+ // Without the `setTimeout` there is inconsistent behavior with the highlighting when no initial value is present.
63
+ setTimeout(() => {
64
+ if (__classPrivateFieldGet(this, _SkyAgGridCellEditorCurrencyComponent_triggerType, "f") === SkyAgGridCellEditorInitialAction.Highlighted) {
65
+ this.input.nativeElement.select();
66
+ }
67
+ }, 100);
35
68
  }
36
69
  /**
37
70
  * getValue is called by agGrid when editing is stopped to get the new value of the cell.
38
71
  */
39
72
  getValue() {
40
- return this.value;
73
+ const val = this.editorForm.get('currency').value;
74
+ return val !== undefined && val !== null ? val : undefined;
41
75
  }
42
76
  /**
43
77
  * The autoNumeric library's event handler suppresses the escape key event. This additional handler re-enables AG Grid's default functionality.
@@ -47,8 +81,9 @@ export class SkyAgGridCellEditorCurrencyComponent {
47
81
  this.params.api.setFocusedCell(this.params.rowIndex, this.params.column);
48
82
  }
49
83
  }
50
- SkyAgGridCellEditorCurrencyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
- SkyAgGridCellEditorCurrencyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyAgGridCellEditorCurrencyComponent, selector: "sky-ag-grid-cell-editor-currency", viewQueries: [{ propertyName: "input", first: true, predicate: ["skyCellEditorCurrency"], descendants: true, read: ElementRef }], ngImport: i0, template: "<input\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 [(ngModel)]=\"value\"\n [skyAutonumeric]=\"skyComponentProperties\"\n (keyup.escape)=\"onPressEscape()\"\n #skyCellEditorCurrency\n/>\n", styles: ["input{border:none;padding-left:11px}\n"], directives: [{ 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]" }, { type: i2.λ1, selector: "input[skyAutonumeric]", inputs: ["skyAutonumeric"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "skyLibResources": i3.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
84
+ _SkyAgGridCellEditorCurrencyComponent_triggerType = new WeakMap();
85
+ SkyAgGridCellEditorCurrencyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
86
+ SkyAgGridCellEditorCurrencyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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"], directives: [{ type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { 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]" }, { type: i2.λ1, selector: "input[skyAutonumeric]", inputs: ["skyAutonumeric", "skyAutonumericFormChangesUnformatted"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "skyLibResources": i3.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
52
87
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyComponent, decorators: [{
53
88
  type: Component,
54
89
  args: [{
@@ -57,7 +92,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
57
92
  styleUrls: ['./cell-editor-currency.component.scss'],
58
93
  changeDetection: ChangeDetectionStrategy.OnPush,
59
94
  }]
60
- }], propDecorators: { input: [{
95
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { input: [{
61
96
  type: ViewChild,
62
97
  args: ['skyCellEditorCurrency', { read: ElementRef }]
63
98
  }] } });
@@ -1 +1 @@
1
- {"version":3,"file":"cell-editor-currency.component.js","sourceRoot":"","sources":["../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.ts","../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.html"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,UAAU,EACV,SAAS,GACV,MAAM,eAAe,CAAC;;;;;AAOvB;;GAEG;AAOH,MAAM,OAAO,oCAAoC;IANjD;QAUS,2BAAsB,GAAgC,EAAE,CAAC;KAkDjE;IAvCC;;;OAGG;IACI,MAAM,CAAC,MAAmC;QAC/C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;QAClD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QACvD,IAAI,CAAC,uBAAuB;YAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACrD,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,IAAI;YAClE,aAAa,EAAE,CAAC;YAChB,cAAc,EAAE,GAAG;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,gBAAgB;QACrB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACI,QAAQ;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACI,aAAa;QAClB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3E,CAAC;;kIArDU,oCAAoC;sHAApC,oCAAoC,mKAYH,UAAU,6BCjCxD,8XAaA;4FDQa,oCAAoC;kBANhD,SAAS;mBAAC;oBACT,QAAQ,EAAE,kCAAkC;oBAC5C,WAAW,EAAE,uCAAuC;oBACpD,SAAS,EAAE,CAAC,uCAAuC,CAAC;oBACpD,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;8BAcS,KAAK;sBADZ,SAAS;uBAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE","sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewChild,\n} from '@angular/core';\n\nimport { ICellEditorAngularComp } from 'ag-grid-angular';\n\nimport { SkyCellEditorCurrencyParams } from '../../types/cell-editor-currency-params';\nimport { SkyAgGridCurrencyProperties } from '../../types/currency-properties';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-ag-grid-cell-editor-currency',\n templateUrl: './cell-editor-currency.component.html',\n styleUrls: ['./cell-editor-currency.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyAgGridCellEditorCurrencyComponent\n implements ICellEditorAngularComp\n{\n public value: number;\n public skyComponentProperties: SkyAgGridCurrencyProperties = {};\n public columnHeader: string;\n public columnWidth: number;\n public rowHeightWithoutBorders: number;\n public rowNumber: number;\n\n private params: SkyCellEditorCurrencyParams;\n\n @ViewChild('skyCellEditorCurrency', { read: ElementRef })\n private input: ElementRef;\n\n /**\n * agInit is called by agGrid once after the editor is created and provides the editor with the information it needs.\n * @param params The cell editor params that include data about the cell, column, row, and grid.\n */\n public agInit(params: SkyCellEditorCurrencyParams): void {\n this.params = params;\n this.value = this.params.value;\n this.columnHeader = this.params.colDef.headerName;\n this.rowNumber = this.params.rowIndex + 1;\n this.columnWidth = this.params.column.getActualWidth();\n this.rowHeightWithoutBorders =\n this.params.node && this.params.node.rowHeight - 4;\n this.skyComponentProperties = this.params.skyComponentProperties || {\n decimalPlaces: 2,\n currencySymbol: '$',\n };\n }\n\n /**\n * 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.\n */\n public afterGuiAttached(): void {\n this.input.nativeElement.focus();\n }\n\n /**\n * getValue is called by agGrid when editing is stopped to get the new value of the cell.\n */\n public getValue(): number {\n return this.value;\n }\n\n /**\n * The autoNumeric library's event handler suppresses the escape key event. This additional handler re-enables AG Grid's default functionality.\n */\n public onPressEscape() {\n this.params.api.stopEditing(true);\n this.params.api.setFocusedCell(this.params.rowIndex, this.params.column);\n }\n}\n","<input\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 [(ngModel)]=\"value\"\n [skyAutonumeric]=\"skyComponentProperties\"\n (keyup.escape)=\"onPressEscape()\"\n #skyCellEditorCurrency\n/>\n"]}
1
+ {"version":3,"file":"cell-editor-currency.component.js","sourceRoot":"","sources":["../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.ts","../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.component.html"],"names":[],"mappings":"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","sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewChild,\n} from '@angular/core';\nimport { FormControl, FormGroup } from '@angular/forms';\n\nimport { ICellEditorAngularComp } from 'ag-grid-angular';\n\nimport { SkyCellEditorCurrencyParams } from '../../types/cell-editor-currency-params';\nimport { SkyAgGridCellEditorInitialAction } from '../../types/cell-editor-initial-action';\nimport { SkyAgGridCellEditorUtils } from '../../types/cell-editor-utils';\nimport { SkyAgGridCurrencyProperties } from '../../types/currency-properties';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-ag-grid-cell-editor-currency',\n templateUrl: './cell-editor-currency.component.html',\n styleUrls: ['./cell-editor-currency.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyAgGridCellEditorCurrencyComponent\n implements ICellEditorAngularComp\n{\n public skyComponentProperties: SkyAgGridCurrencyProperties = {};\n public columnHeader: string;\n public columnWidth: number;\n public editorForm = new FormGroup({\n currency: new FormControl(),\n });\n public params: SkyCellEditorCurrencyParams;\n public rowHeightWithoutBorders: number;\n public rowNumber: number;\n\n @ViewChild('skyCellEditorCurrency', { read: ElementRef })\n private input: ElementRef;\n\n #triggerType: SkyAgGridCellEditorInitialAction;\n\n constructor(private changeDetector: ChangeDetectorRef) {}\n\n /**\n * agInit is called by agGrid once after the editor is created and provides the editor with the information it needs.\n * @param params The cell editor params that include data about the cell, column, row, and grid.\n */\n public agInit(params: SkyCellEditorCurrencyParams): void {\n this.params = params;\n this.columnHeader = this.params.colDef.headerName;\n this.rowNumber = this.params.rowIndex + 1;\n this.columnWidth = this.params.column.getActualWidth();\n this.rowHeightWithoutBorders =\n this.params.node && this.params.node.rowHeight - 4;\n this.skyComponentProperties = this.params.skyComponentProperties || {\n decimalPlaces: 2,\n currencySymbol: '$',\n };\n }\n\n /**\n * 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.\n */\n public afterGuiAttached(): void {\n this.input.nativeElement.focus();\n\n // 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.\n // Since we don't want that, we set the initial value after autonumeric initializes.\n this.#triggerType = SkyAgGridCellEditorUtils.getEditorInitialAction(\n this.params\n );\n const control = this.editorForm.get('currency');\n switch (this.#triggerType) {\n case SkyAgGridCellEditorInitialAction.Delete:\n control.setValue(undefined);\n break;\n case SkyAgGridCellEditorInitialAction.Replace:\n control.setValue(parseFloat(this.params.charPress) || undefined);\n break;\n case SkyAgGridCellEditorInitialAction.Highlighted:\n case SkyAgGridCellEditorInitialAction.Untouched:\n default:\n control.setValue(parseFloat(this.params.value));\n break;\n }\n this.changeDetector.markForCheck();\n\n // Without the `setTimeout` there is inconsistent behavior with the highlighting when no initial value is present.\n setTimeout(() => {\n if (this.#triggerType === SkyAgGridCellEditorInitialAction.Highlighted) {\n this.input.nativeElement.select();\n }\n }, 100);\n }\n\n /**\n * getValue is called by agGrid when editing is stopped to get the new value of the cell.\n */\n public getValue(): number | undefined {\n const val = this.editorForm.get('currency').value;\n return val !== undefined && val !== null ? val : undefined;\n }\n\n /**\n * The autoNumeric library's event handler suppresses the escape key event. This additional handler re-enables AG Grid's default functionality.\n */\n public onPressEscape() {\n this.params.api.stopEditing(true);\n this.params.api.setFocusedCell(this.params.rowIndex, this.params.column);\n }\n}\n","<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"]}
@@ -1,5 +1,5 @@
1
1
  import { NgModule } from '@angular/core';
2
- import { FormsModule } from '@angular/forms';
2
+ import { ReactiveFormsModule } from '@angular/forms';
3
3
  import { SkyAutonumericModule } from '@skyux/autonumeric';
4
4
  import { SkyAgGridResourcesModule } from '../../../shared/sky-ag-grid-resources.module';
5
5
  import { SkyAgGridCellEditorCurrencyComponent } from './cell-editor-currency.component';
@@ -7,12 +7,22 @@ import * as i0 from "@angular/core";
7
7
  export class SkyAgGridCellEditorCurrencyModule {
8
8
  }
9
9
  SkyAgGridCellEditorCurrencyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- SkyAgGridCellEditorCurrencyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyModule, declarations: [SkyAgGridCellEditorCurrencyComponent], imports: [SkyAgGridResourcesModule, FormsModule, SkyAutonumericModule], exports: [SkyAgGridCellEditorCurrencyComponent] });
11
- SkyAgGridCellEditorCurrencyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyModule, imports: [[SkyAgGridResourcesModule, FormsModule, SkyAutonumericModule]] });
10
+ SkyAgGridCellEditorCurrencyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyModule, declarations: [SkyAgGridCellEditorCurrencyComponent], imports: [SkyAgGridResourcesModule,
11
+ ReactiveFormsModule,
12
+ SkyAutonumericModule], exports: [SkyAgGridCellEditorCurrencyComponent] });
13
+ SkyAgGridCellEditorCurrencyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyModule, imports: [[
14
+ SkyAgGridResourcesModule,
15
+ ReactiveFormsModule,
16
+ SkyAutonumericModule,
17
+ ]] });
12
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyAgGridCellEditorCurrencyModule, decorators: [{
13
19
  type: NgModule,
14
20
  args: [{
15
- imports: [SkyAgGridResourcesModule, FormsModule, SkyAutonumericModule],
21
+ imports: [
22
+ SkyAgGridResourcesModule,
23
+ ReactiveFormsModule,
24
+ SkyAutonumericModule,
25
+ ],
16
26
  declarations: [SkyAgGridCellEditorCurrencyComponent],
17
27
  exports: [SkyAgGridCellEditorCurrencyComponent],
18
28
  }]
@@ -1 +1 @@
1
- {"version":3,"file":"cell-editor-currency.module.js","sourceRoot":"","sources":["../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAExF,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;;AAOxF,MAAM,OAAO,iCAAiC;;+HAAjC,iCAAiC;gIAAjC,iCAAiC,iBAH7B,oCAAoC,aADzC,wBAAwB,EAAE,WAAW,EAAE,oBAAoB,aAE3D,oCAAoC;gIAEnC,iCAAiC,YAJnC,CAAC,wBAAwB,EAAE,WAAW,EAAE,oBAAoB,CAAC;4FAI3D,iCAAiC;kBAL7C,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAC,wBAAwB,EAAE,WAAW,EAAE,oBAAoB,CAAC;oBACtE,YAAY,EAAE,CAAC,oCAAoC,CAAC;oBACpD,OAAO,EAAE,CAAC,oCAAoC,CAAC;iBAChD","sourcesContent":["import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyAutonumericModule } from '@skyux/autonumeric';\n\nimport { SkyAgGridResourcesModule } from '../../../shared/sky-ag-grid-resources.module';\n\nimport { SkyAgGridCellEditorCurrencyComponent } from './cell-editor-currency.component';\n\n@NgModule({\n imports: [SkyAgGridResourcesModule, FormsModule, SkyAutonumericModule],\n declarations: [SkyAgGridCellEditorCurrencyComponent],\n exports: [SkyAgGridCellEditorCurrencyComponent],\n})\nexport class SkyAgGridCellEditorCurrencyModule {}\n"]}
1
+ {"version":3,"file":"cell-editor-currency.module.js","sourceRoot":"","sources":["../../../../../../../../../../libs/components/ag-grid/src/lib/modules/ag-grid/cell-editors/cell-editor-currency/cell-editor-currency.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAExF,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;;AAWxF,MAAM,OAAO,iCAAiC;;+HAAjC,iCAAiC;gIAAjC,iCAAiC,iBAH7B,oCAAoC,aAJjD,wBAAwB;QACxB,mBAAmB;QACnB,oBAAoB,aAGZ,oCAAoC;gIAEnC,iCAAiC,YARnC;YACP,wBAAwB;YACxB,mBAAmB;YACnB,oBAAoB;SACrB;4FAIU,iCAAiC;kBAT7C,QAAQ;mBAAC;oBACR,OAAO,EAAE;wBACP,wBAAwB;wBACxB,mBAAmB;wBACnB,oBAAoB;qBACrB;oBACD,YAAY,EAAE,CAAC,oCAAoC,CAAC;oBACpD,OAAO,EAAE,CAAC,oCAAoC,CAAC;iBAChD","sourcesContent":["import { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { SkyAutonumericModule } from '@skyux/autonumeric';\n\nimport { SkyAgGridResourcesModule } from '../../../shared/sky-ag-grid-resources.module';\n\nimport { SkyAgGridCellEditorCurrencyComponent } from './cell-editor-currency.component';\n\n@NgModule({\n imports: [\n SkyAgGridResourcesModule,\n ReactiveFormsModule,\n SkyAutonumericModule,\n ],\n declarations: [SkyAgGridCellEditorCurrencyComponent],\n exports: [SkyAgGridCellEditorCurrencyComponent],\n})\nexport class SkyAgGridCellEditorCurrencyModule {}\n"]}