angular-slickgrid 3.2.0 → 4.0.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 (55) hide show
  1. package/README.md +26 -28
  2. package/angular-slickgrid.d.ts +1 -3
  3. package/app/modules/angular-slickgrid/components/angular-slickgrid.component.d.ts +8 -4
  4. package/app/modules/angular-slickgrid/extensions/index.d.ts +1 -1
  5. package/app/modules/angular-slickgrid/extensions/{rowDetailViewExtension.d.ts → slickRowDetailView.d.ts} +40 -27
  6. package/app/modules/angular-slickgrid/index.d.ts +1 -1
  7. package/app/modules/angular-slickgrid/models/angularGridInstance.interface.d.ts +1 -1
  8. package/app/modules/angular-slickgrid/modules/angular-slickgrid.module.d.ts +7 -0
  9. package/app/modules/angular-slickgrid/services/angularUtil.service.d.ts +3 -0
  10. package/app/modules/angular-slickgrid/services/bsDropdown.service.d.ts +3 -0
  11. package/app/modules/angular-slickgrid/services/container.service.d.ts +3 -0
  12. package/app/modules/angular-slickgrid/services/translater.service.d.ts +3 -0
  13. package/docs/assets/lib/multiple-select/README.md +17 -0
  14. package/esm2020/angular-slickgrid.mjs +5 -0
  15. package/esm2020/app/modules/angular-slickgrid/components/angular-slickgrid.component.mjs +1168 -0
  16. package/{esm2015/app/modules/angular-slickgrid/constants.js → esm2020/app/modules/angular-slickgrid/constants.mjs} +0 -0
  17. package/{esm2015/app/modules/angular-slickgrid/extensions/index.js → esm2020/app/modules/angular-slickgrid/extensions/index.mjs} +2 -2
  18. package/esm2020/app/modules/angular-slickgrid/extensions/slickRowDetailView.mjs +301 -0
  19. package/esm2020/app/modules/angular-slickgrid/global-grid-options.mjs +243 -0
  20. package/{esm2015/app/modules/angular-slickgrid/index.js → esm2020/app/modules/angular-slickgrid/index.mjs} +2 -2
  21. package/{esm2015/app/modules/angular-slickgrid/models/angularComponentOutput.interface.js → esm2020/app/modules/angular-slickgrid/models/angularComponentOutput.interface.mjs} +0 -0
  22. package/esm2020/app/modules/angular-slickgrid/models/angularGridInstance.interface.mjs +2 -0
  23. package/{esm2015/app/modules/angular-slickgrid/models/externalTestingDependencies.interface.js → esm2020/app/modules/angular-slickgrid/models/externalTestingDependencies.interface.mjs} +0 -0
  24. package/{esm2015/app/modules/angular-slickgrid/models/gridOption.interface.js → esm2020/app/modules/angular-slickgrid/models/gridOption.interface.mjs} +0 -0
  25. package/{esm2015/app/modules/angular-slickgrid/models/index.js → esm2020/app/modules/angular-slickgrid/models/index.mjs} +0 -0
  26. package/{esm2015/app/modules/angular-slickgrid/models/rowDetailView.interface.js → esm2020/app/modules/angular-slickgrid/models/rowDetailView.interface.mjs} +0 -0
  27. package/{esm2015/app/modules/angular-slickgrid/models/slickGrid.interface.js → esm2020/app/modules/angular-slickgrid/models/slickGrid.interface.mjs} +0 -0
  28. package/esm2020/app/modules/angular-slickgrid/modules/angular-slickgrid.module.mjs +46 -0
  29. package/esm2020/app/modules/angular-slickgrid/services/angularUtil.service.mjs +46 -0
  30. package/esm2020/app/modules/angular-slickgrid/services/bsDropdown.service.mjs +103 -0
  31. package/esm2020/app/modules/angular-slickgrid/services/container.service.mjs +26 -0
  32. package/{esm2015/app/modules/angular-slickgrid/services/index.js → esm2020/app/modules/angular-slickgrid/services/index.mjs} +0 -0
  33. package/esm2020/app/modules/angular-slickgrid/services/translater.service.mjs +43 -0
  34. package/{esm2015/app/modules/angular-slickgrid/services/utilities.js → esm2020/app/modules/angular-slickgrid/services/utilities.mjs} +0 -0
  35. package/{esm2015/app/modules/angular-slickgrid/slickgrid-config.js → esm2020/app/modules/angular-slickgrid/slickgrid-config.mjs} +0 -0
  36. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  37. package/fesm2015/{angular-slickgrid.js → angular-slickgrid.mjs} +247 -279
  38. package/fesm2015/angular-slickgrid.mjs.map +1 -0
  39. package/fesm2020/angular-slickgrid.mjs +2065 -0
  40. package/fesm2020/angular-slickgrid.mjs.map +1 -0
  41. package/package.json +41 -23
  42. package/angular-slickgrid.metadata.json +0 -1
  43. package/bundles/angular-slickgrid.umd.js +0 -2642
  44. package/bundles/angular-slickgrid.umd.js.map +0 -1
  45. package/esm2015/angular-slickgrid.js +0 -7
  46. package/esm2015/app/modules/angular-slickgrid/components/angular-slickgrid.component.js +0 -1202
  47. package/esm2015/app/modules/angular-slickgrid/extensions/rowDetailViewExtension.js +0 -342
  48. package/esm2015/app/modules/angular-slickgrid/global-grid-options.js +0 -243
  49. package/esm2015/app/modules/angular-slickgrid/models/angularGridInstance.interface.js +0 -2
  50. package/esm2015/app/modules/angular-slickgrid/modules/angular-slickgrid.module.js +0 -37
  51. package/esm2015/app/modules/angular-slickgrid/services/angularUtil.service.js +0 -48
  52. package/esm2015/app/modules/angular-slickgrid/services/bsDropdown.service.js +0 -103
  53. package/esm2015/app/modules/angular-slickgrid/services/container.service.js +0 -24
  54. package/esm2015/app/modules/angular-slickgrid/services/translater.service.js +0 -47
  55. package/fesm2015/angular-slickgrid.js.map +0 -1
@@ -0,0 +1,243 @@
1
+ import { DelimiterType, EventNamingStyle, FileType, Filters, OperatorType } from '@slickgrid-universal/common';
2
+ /** Global Grid Options Defaults */
3
+ export const GlobalGridOptions = {
4
+ alwaysShowVerticalScroll: true,
5
+ autoEdit: false,
6
+ asyncEditorLoading: false,
7
+ autoFitColumnsOnFirstLoad: true,
8
+ autoResize: {
9
+ applyResizeToContainer: true,
10
+ calculateAvailableSizeBy: 'window',
11
+ bottomPadding: 20,
12
+ minHeight: 180,
13
+ minWidth: 300,
14
+ rightPadding: 0
15
+ },
16
+ cellHighlightCssClass: 'slick-cell-modified',
17
+ checkboxSelector: {
18
+ cssClass: 'slick-cell-checkboxsel'
19
+ },
20
+ columnPicker: {
21
+ fadeSpeed: 0,
22
+ hideForceFitButton: false,
23
+ hideSyncResizeButton: true,
24
+ headerColumnValueExtractor: pickerHeaderColumnValueExtractor
25
+ },
26
+ cellMenu: {
27
+ autoAdjustDrop: true,
28
+ autoAlignSide: true,
29
+ hideCloseButton: true,
30
+ hideCommandSection: false,
31
+ hideOptionSection: false,
32
+ },
33
+ contextMenu: {
34
+ autoAdjustDrop: true,
35
+ autoAlignSide: true,
36
+ hideCloseButton: true,
37
+ hideClearAllGrouping: false,
38
+ hideCollapseAllGroups: false,
39
+ hideCommandSection: false,
40
+ hideCopyCellValueCommand: false,
41
+ hideExpandAllGroups: false,
42
+ hideExportCsvCommand: false,
43
+ hideExportExcelCommand: false,
44
+ hideExportTextDelimitedCommand: true,
45
+ hideMenuOnScroll: true,
46
+ hideOptionSection: false,
47
+ iconCopyCellValueCommand: 'fa fa-clone',
48
+ iconExportCsvCommand: 'fa fa-download',
49
+ iconExportExcelCommand: 'fa fa-file-excel-o text-success',
50
+ iconExportTextDelimitedCommand: 'fa fa-download',
51
+ },
52
+ customFooterOptions: {
53
+ dateFormat: 'YYYY-MM-DD, hh:mm a',
54
+ hideRowSelectionCount: false,
55
+ hideTotalItemCount: false,
56
+ hideLastUpdateTimestamp: true,
57
+ footerHeight: 25,
58
+ leftContainerClass: 'col-xs-12 col-sm-5',
59
+ rightContainerClass: 'col-xs-6 col-sm-7',
60
+ metricSeparator: '|',
61
+ metricTexts: {
62
+ items: 'items',
63
+ itemsKey: 'ITEMS',
64
+ itemsSelected: 'items selected',
65
+ itemsSelectedKey: 'ITEMS_SELECTED',
66
+ of: 'of',
67
+ ofKey: 'OF',
68
+ }
69
+ },
70
+ dataView: {
71
+ syncGridSelection: true,
72
+ syncGridSelectionWithBackendService: false, // but disable it when using backend services
73
+ },
74
+ datasetIdPropertyName: 'id',
75
+ defaultFilter: Filters.input,
76
+ defaultBackendServiceFilterTypingDebounce: 500,
77
+ defaultColumnSortFieldId: 'id',
78
+ defaultFilterPlaceholder: '🔎︎',
79
+ defaultFilterRangeOperator: OperatorType.rangeInclusive,
80
+ editable: false,
81
+ enableAutoResize: true,
82
+ enableAutoSizeColumns: true,
83
+ enableCellNavigation: false,
84
+ enableColumnPicker: true,
85
+ enableColumnReorder: true,
86
+ enableColumnResizeOnDoubleClick: true,
87
+ enableContextMenu: true,
88
+ enableExcelExport: true,
89
+ enableExport: false,
90
+ enableFilterTrimWhiteSpace: false,
91
+ enableGridMenu: true,
92
+ enableHeaderMenu: true,
93
+ enableEmptyDataWarningMessage: true,
94
+ emptyDataWarning: {
95
+ className: 'slick-empty-data-warning',
96
+ message: 'No data to display.',
97
+ messageKey: 'EMPTY_DATA_WARNING_MESSAGE',
98
+ hideFrozenLeftWarning: false,
99
+ hideFrozenRightWarning: false,
100
+ leftViewportMarginLeft: '40%',
101
+ rightViewportMarginLeft: '40%',
102
+ frozenLeftViewportMarginLeft: '0px',
103
+ frozenRightViewportMarginLeft: '40%',
104
+ },
105
+ enableMouseHoverHighlightRow: true,
106
+ enableSorting: true,
107
+ enableTextSelectionOnCells: true,
108
+ eventNamingStyle: EventNamingStyle.camelCase,
109
+ explicitInitialization: true,
110
+ excelExportOptions: {
111
+ addGroupIndentation: true,
112
+ exportWithFormatter: false,
113
+ filename: 'export',
114
+ format: FileType.xlsx,
115
+ groupingColumnHeaderTitle: 'Group By',
116
+ groupCollapsedSymbol: '⮞',
117
+ groupExpandedSymbol: '⮟',
118
+ groupingAggregatorRowText: '',
119
+ sanitizeDataExport: false,
120
+ },
121
+ exportOptions: {
122
+ delimiter: DelimiterType.comma,
123
+ exportWithFormatter: false,
124
+ filename: 'export',
125
+ format: FileType.csv,
126
+ groupingColumnHeaderTitle: 'Group By',
127
+ groupingAggregatorRowText: '',
128
+ sanitizeDataExport: false,
129
+ useUtf8WithBom: true
130
+ },
131
+ filterTypingDebounce: 0,
132
+ forceFitColumns: false,
133
+ frozenHeaderWidthCalcDifferential: 0,
134
+ gridMenu: {
135
+ dropSide: 'left',
136
+ commandLabels: {
137
+ clearAllFiltersCommandKey: 'CLEAR_ALL_FILTERS',
138
+ clearAllSortingCommandKey: 'CLEAR_ALL_SORTING',
139
+ clearFrozenColumnsCommandKey: 'CLEAR_PINNING',
140
+ exportCsvCommandKey: 'EXPORT_TO_CSV',
141
+ exportExcelCommandKey: 'EXPORT_TO_EXCEL',
142
+ exportTextDelimitedCommandKey: 'EXPORT_TO_TAB_DELIMITED',
143
+ refreshDatasetCommandKey: 'REFRESH_DATASET',
144
+ toggleFilterCommandKey: 'TOGGLE_FILTER_ROW',
145
+ togglePreHeaderCommandKey: 'TOGGLE_PRE_HEADER_ROW',
146
+ },
147
+ hideClearAllFiltersCommand: false,
148
+ hideClearAllSortingCommand: false,
149
+ hideClearFrozenColumnsCommand: true,
150
+ hideExportCsvCommand: false,
151
+ hideExportExcelCommand: false,
152
+ hideExportTextDelimitedCommand: true,
153
+ hideForceFitButton: false,
154
+ hideRefreshDatasetCommand: false,
155
+ hideSyncResizeButton: true,
156
+ hideToggleFilterCommand: false,
157
+ hideTogglePreHeaderCommand: false,
158
+ iconCssClass: 'fa fa-bars',
159
+ iconClearAllFiltersCommand: 'fa fa-filter text-danger',
160
+ iconClearAllSortingCommand: 'fa fa-unsorted text-danger',
161
+ iconClearFrozenColumnsCommand: 'fa fa-times',
162
+ iconExportCsvCommand: 'fa fa-download',
163
+ iconExportExcelCommand: 'fa fa-file-excel-o text-success',
164
+ iconExportTextDelimitedCommand: 'fa fa-download',
165
+ iconRefreshDatasetCommand: 'fa fa-refresh',
166
+ iconToggleFilterCommand: 'fa fa-random',
167
+ iconTogglePreHeaderCommand: 'fa fa-random',
168
+ menuWidth: 16,
169
+ resizeOnShowHeaderRow: true,
170
+ headerColumnValueExtractor: pickerHeaderColumnValueExtractor
171
+ },
172
+ headerMenu: {
173
+ autoAlign: true,
174
+ autoAlignOffset: 12,
175
+ minWidth: 140,
176
+ iconClearFilterCommand: 'fa fa-filter text-danger',
177
+ iconClearSortCommand: 'fa fa-unsorted',
178
+ iconFreezeColumns: 'fa fa-thumb-tack',
179
+ iconSortAscCommand: 'fa fa-sort-amount-asc',
180
+ iconSortDescCommand: 'fa fa-sort-amount-desc',
181
+ iconColumnHideCommand: 'fa fa-times',
182
+ iconColumnResizeByContentCommand: 'fa fa-arrows-h',
183
+ hideColumnResizeByContentCommand: false,
184
+ hideColumnHideCommand: false,
185
+ hideClearFilterCommand: false,
186
+ hideClearSortCommand: false,
187
+ hideFreezeColumnsCommand: true,
188
+ hideSortCommands: false
189
+ },
190
+ headerRowHeight: 35,
191
+ multiColumnSort: true,
192
+ numberedMultiColumnSort: true,
193
+ tristateMultiColumnSort: false,
194
+ sortColNumberInSeparateSpan: true,
195
+ suppressActiveCellChangeOnEdit: true,
196
+ pagination: {
197
+ pageSizes: [10, 15, 20, 25, 30, 40, 50, 75, 100],
198
+ pageSize: 25,
199
+ totalItems: 0
200
+ },
201
+ // technically speaking the Row Detail requires the process & viewComponent but we'll ignore it just to set certain options
202
+ rowDetailView: {
203
+ collapseAllOnSort: true,
204
+ cssClass: 'detail-view-toggle',
205
+ panelRows: 1,
206
+ keyPrefix: '__',
207
+ useRowClick: false,
208
+ useSimpleViewportCalc: true,
209
+ saveDetailViewOnScroll: false,
210
+ },
211
+ rowHeight: 35,
212
+ topPanelHeight: 35,
213
+ translationNamespaceSeparator: ':',
214
+ resetFilterSearchValueAfterOnBeforeCancellation: true,
215
+ resizeByContentOnlyOnFirstLoad: true,
216
+ resizeByContentOptions: {
217
+ alwaysRecalculateColumnWidth: false,
218
+ cellCharWidthInPx: 7.8,
219
+ cellPaddingWidthInPx: 14,
220
+ defaultRatioForStringType: 0.88,
221
+ formatterPaddingWidthInPx: 0,
222
+ maxItemToInspectCellContentWidth: 1000,
223
+ maxItemToInspectSingleColumnWidthByContent: 5000,
224
+ widthToRemoveFromExceededWidthReadjustment: 50,
225
+ },
226
+ treeDataOptions: {
227
+ exportIndentMarginLeft: 5,
228
+ exportIndentationLeadingChar: '͏͏͏͏͏͏͏͏͏·',
229
+ }
230
+ };
231
+ /**
232
+ * Value Extractor for both ColumnPicker & GridMenu Picker
233
+ * when using Column Header Grouping, we'll prefix the column group title
234
+ * else we'll simply return the column name title
235
+ */
236
+ function pickerHeaderColumnValueExtractor(column) {
237
+ const headerGroup = column && column.columnGroup || '';
238
+ if (headerGroup) {
239
+ return headerGroup + ' - ' + column.name;
240
+ }
241
+ return column && column.name || '';
242
+ }
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWdyaWQtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9hbmd1bGFyLXNsaWNrZ3JpZC9nbG9iYWwtZ3JpZC1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBd0IsWUFBWSxFQUFrQixNQUFNLDZCQUE2QixDQUFDO0FBRzdKLG1DQUFtQztBQUNuQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBd0I7SUFDcEQsd0JBQXdCLEVBQUUsSUFBSTtJQUM5QixRQUFRLEVBQUUsS0FBSztJQUNmLGtCQUFrQixFQUFFLEtBQUs7SUFDekIseUJBQXlCLEVBQUUsSUFBSTtJQUMvQixVQUFVLEVBQUU7UUFDVixzQkFBc0IsRUFBRSxJQUFJO1FBQzVCLHdCQUF3QixFQUFFLFFBQVE7UUFDbEMsYUFBYSxFQUFFLEVBQUU7UUFDakIsU0FBUyxFQUFFLEdBQUc7UUFDZCxRQUFRLEVBQUUsR0FBRztRQUNiLFlBQVksRUFBRSxDQUFDO0tBQ2hCO0lBQ0QscUJBQXFCLEVBQUUscUJBQXFCO0lBQzVDLGdCQUFnQixFQUFFO1FBQ2hCLFFBQVEsRUFBRSx3QkFBd0I7S0FDbkM7SUFDRCxZQUFZLEVBQUU7UUFDWixTQUFTLEVBQUUsQ0FBQztRQUNaLGtCQUFrQixFQUFFLEtBQUs7UUFDekIsb0JBQW9CLEVBQUUsSUFBSTtRQUMxQiwwQkFBMEIsRUFBRSxnQ0FBZ0M7S0FDN0Q7SUFDRCxRQUFRLEVBQUU7UUFDUixjQUFjLEVBQUUsSUFBSTtRQUNwQixhQUFhLEVBQUUsSUFBSTtRQUNuQixlQUFlLEVBQUUsSUFBSTtRQUNyQixrQkFBa0IsRUFBRSxLQUFLO1FBQ3pCLGlCQUFpQixFQUFFLEtBQUs7S0FDekI7SUFDRCxXQUFXLEVBQUU7UUFDWCxjQUFjLEVBQUUsSUFBSTtRQUNwQixhQUFhLEVB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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sdW1uLCBEZWxpbWl0ZXJUeXBlLCBFdmVudE5hbWluZ1N0eWxlLCBGaWxlVHlwZSwgRmlsdGVycywgR3JpZEF1dG9zaXplQ29sc01vZGUsIE9wZXJhdG9yVHlwZSwgVHJlZURhdGFPcHRpb24gfSBmcm9tICdAc2xpY2tncmlkLXVuaXZlcnNhbC9jb21tb24nO1xyXG5pbXBvcnQgeyBHcmlkT3B0aW9uLCBSb3dEZXRhaWxWaWV3IH0gZnJvbSAnLi9tb2RlbHMvaW5kZXgnO1xyXG5cclxuLyoqIEdsb2JhbCBHcmlkIE9wdGlvbnMgRGVmYXVsdHMgKi9cclxuZXhwb3J0IGNvbnN0IEdsb2JhbEdyaWRPcHRpb25zOiBQYXJ0aWFsPEdyaWRPcHRpb24+ID0ge1xyXG4gIGFsd2F5c1Nob3dWZXJ0aWNhbFNjcm9sbDogdHJ1ZSxcclxuICBhdXRvRWRpdDogZmFsc2UsXHJcbiAgYXN5bmNFZGl0b3JMb2FkaW5nOiBmYWxzZSxcclxuICBhdXRvRml0Q29sdW1uc09uRmlyc3RMb2FkOiB0cnVlLFxyXG4gIGF1dG9SZXNpemU6IHtcclxuICAgIGFwcGx5UmVzaXplVG9Db250YWluZXI6IHRydWUsXHJcbiAgICBjYWxjdWxhdGVBdmFpbGFibGVTaXplQnk6ICd3aW5kb3cnLFxyXG4gICAgYm90dG9tUGFkZGluZzogMjAsXHJcbiAgICBtaW5IZWlnaHQ6IDE4MCxcclxuICAgIG1pbldpZHRoOiAzMDAsXHJcbiAgICByaWdodFBhZGRpbmc6IDBcclxuICB9LFxyXG4gIGNlbGxIaWdobGlnaHRDc3NDbGFzczogJ3NsaWNrLWNlbGwtbW9kaWZpZWQnLFxyXG4gIGNoZWNrYm94U2VsZWN0b3I6IHtcclxuICAgIGNzc0NsYXNzOiAnc2xpY2stY2VsbC1jaGVja2JveHNlbCdcclxuICB9LFxyXG4gIGNvbHVtblBpY2tlcjoge1xyXG4gICAgZmFkZVNwZWVkOiAwLFxyXG4gICAgaGlkZUZvcmNlRml0QnV0dG9uOiBmYWxzZSxcclxuICAgIGhpZGVTeW5jUmVzaXplQnV0dG9uOiB0cnVlLFxyXG4gICAgaGVhZGVyQ29sdW1uVmFsdWVFeHRyYWN0b3I6IHBpY2tlckhlYWRlckNvbHVtblZhbHVlRXh0cmFjdG9yXHJcbiAgfSxcclxuICBjZWxsTWVudToge1xyXG4gICAgYXV0b0FkanVzdERyb3A6IHRydWUsXHJcbiAgICBhdXRvQWxpZ25TaWRlOiB0cnVlLFxyXG4gICAgaGlkZUNsb3NlQnV0dG9uOiB0cnVlLFxyXG4gICAgaGlkZUNvbW1hbmRTZWN0aW9uOiBmYWxzZSxcclxuICAgIGhpZGVPcHRpb25TZWN0aW9uOiBmYWxzZSxcclxuICB9LFxyXG4gIGNvbnRleHRNZW51OiB7XHJcbiAgICBhdXRvQWRqdXN0RHJvcDogdHJ1ZSxcclxuICAgIGF1dG9BbGlnblNpZGU6IHRydWUsXHJcbiAgICBoaWRlQ2xvc2VCdXR0b246IHRydWUsXHJcbiAgICBoaWRlQ2xlYXJBbGxHcm91cGluZzogZmFsc2UsXHJcbiAgICBoaWRlQ29sbGFwc2VBbGxHcm91cHM6IGZhbHNlLFxyXG4gICAgaGlkZUNvbW1hbmRTZWN0aW9uOiBmYWxzZSxcclxuICAgIGhpZGVDb3B5Q2VsbFZhbHVlQ29tbWFuZDogZmFsc2UsXHJcbiAgICBoaWRlRXhwYW5kQWxsR3JvdXBzOiBmYWxzZSxcclxuICAgIGhpZGVFeHBvcnRDc3ZDb21tYW5kOiBmYWxzZSxcclxuICAgIGhpZGVFeHBvcnRFeGNlbENvbW1hbmQ6IGZhbHNlLFxyXG4gICAgaGlkZUV4cG9ydFRleHREZWxpbWl0ZWRDb21tYW5kOiB0cnVlLFxyXG4gICAgaGlkZU1lbnVPblNjcm9sbDogdHJ1ZSxcclxuICAgIGhpZGVPcHRpb25TZWN0aW9uOiBmYWxzZSxcclxuICAgIGljb25Db3B5Q2VsbFZhbHVlQ29tbWFuZDogJ2ZhIGZhLWNsb25lJyxcclxuICAgIGljb25FeHBvcnRDc3ZDb21tYW5kOiAnZmEgZmEtZG93bmxvYWQnLFxyXG4gICAgaWNvbkV4cG9ydEV4Y2VsQ29tbWFuZDogJ2ZhIGZhLWZpbGUtZXhjZWwtbyB0ZXh0LXN1Y2Nlc3MnLFxyXG4gICAgaWNvbkV4cG9ydFRleHREZWxpbWl0ZWRDb21tYW5kOiAnZmEgZmEtZG93bmxvYWQnLFxyXG4gIH0sXHJcbiAgY3VzdG9tRm9vdGVyT3B0aW9uczoge1xyXG4gICAgZGF0ZUZvcm1hdDogJ1lZWVktTU0tREQsIGhoOm1tIGEnLFxyXG4gICAgaGlkZVJvd1NlbGVjdGlvbkNvdW50OiBmYWxzZSxcclxuICAgIGhpZGVUb3RhbEl0ZW1Db3VudDogZmFsc2UsXHJcbiAgICBoaWRlTGFzdFVwZGF0ZVRpbWVzdGFtcDogdHJ1ZSxcclxuICAgIGZvb3RlckhlaWdodDogMjUsXHJcbiAgICBsZWZ0Q29udGFpbmVyQ2xhc3M6ICdjb2wteHMtMTIgY29sLXNtLTUnLFxyXG4gICAgcmlnaHRDb250YWluZXJDbGFzczogJ2NvbC14cy02IGNvbC1zbS03JyxcclxuICAgIG1ldHJpY1NlcGFyYXRvcjogJ3wnLFxyXG4gICAgbWV0cmljVGV4dHM6IHtcclxuICAgICAgaXRlbXM6ICdpdGVtcycsXHJcbiAgICAgIGl0ZW1zS2V5OiAnSVRFTVMnLFxyXG4gICAgICBpdGVtc1NlbGVjdGVkOiAnaXRlbXMgc2VsZWN0ZWQnLFxyXG4gICAgICBpdGVtc1NlbGVjdGVkS2V5OiAnSVRFTVNfU0VMRUNURUQnLFxyXG4gICAgICBvZjogJ29mJyxcclxuICAgICAgb2ZLZXk6ICdPRicsXHJcbiAgICB9XHJcbiAgfSxcclxuICBkYXRhVmlldzoge1xyXG4gICAgc3luY0dyaWRTZWxlY3Rpb246IHRydWUsIC8vIHdoZW4gZW5hYmxlZCwgdGhpcyB3aWxsIHByZXNlcnZlIHRoZSByb3cgc2VsZWN0aW9uIGV2ZW4gYWZ0ZXIgZmlsdGVyaW5nL3NvcnRpbmcvZ3JvdXBpbmdcclxuICAgIHN5bmNHcmlkU2VsZWN0aW9uV2l0aEJhY2tlbmRTZXJ2aWNlOiBmYWxzZSwgLy8gYnV0IGRpc2FibGUgaXQgd2hlbiB1c2luZyBiYWNrZW5kIHNlcnZpY2VzXHJcbiAgfSxcclxuICBkYXRhc2V0SWRQcm9wZXJ0eU5hbWU6ICdpZCcsXHJcbiAgZGVmYXVsdEZpbHRlcjogRmlsdGVycy5pbnB1dCxcclxuICBkZWZhdWx0QmFja2VuZFNlcnZpY2VGaWx0ZXJUeXBpbmdEZWJvdW5jZTogNTAwLFxyXG4gIGRlZmF1bHRDb2x1bW5Tb3J0RmllbGRJZDogJ2lkJyxcclxuICBkZWZhdWx0RmlsdGVyUGxhY2Vob2xkZXI6ICfwn5SO77iOJyxcclxuICBkZWZhdWx0RmlsdGVyUmFuZ2VPcGVyYXRvcjogT3BlcmF0b3JUeXBlLnJhbmdlSW5jbHVzaXZlLFxyXG4gIGVkaXRhYmxlOiBmYWxzZSxcclxuICBlbmFibGVBdXRvUmVzaXplOiB0cnVlLFxyXG4gIGVuYWJsZUF1dG9TaXplQ29sdW1uczogdHJ1ZSxcclxuICBlbmFibGVDZWxsTmF2aWdhdGlvbjogZmFsc2UsXHJcbiAgZW5hYmxlQ29sdW1uUGlja2VyOiB0cnVlLFxyXG4gIGVuYWJsZUNvbHVtblJlb3JkZXI6IHRydWUsXHJcbiAgZW5hYmxlQ29sdW1uUmVzaXplT25Eb3VibGVDbGljazogdHJ1ZSxcclxuICBlbmFibGVDb250ZXh0TWVudTogdHJ1ZSxcclxuICBlbmFibGVFeGNlbEV4cG9ydDogdHJ1ZSwgLy8gRXhjZWwgRXhwb3J0IGlzIHRoZSBuZXcgZGVmYXVsdCxcclxuICBlbmFibGVFeHBvcnQ6IGZhbHNlLCAvLyBDU1YvVGV4dCB3aXRoIFRhYiBEZWxpbWl0ZWRcclxuICBlbmFibGVGaWx0ZXJUcmltV2hpdGVTcGFjZTogZmFsc2UsIC8vIGRvIHdlIHdhbnQgdG8gdHJpbSB3aGl0ZSBzcGFjZXMgb24gYWxsIEZpbHRlcnM/XHJcbiAgZW5hYmxlR3JpZE1lbnU6IHRydWUsXHJcbiAgZW5hYmxlSGVhZGVyTWVudTogdHJ1ZSxcclxuICBlbmFibGVFbXB0eURhdGFXYXJuaW5nTWVzc2FnZTogdHJ1ZSxcclxuICBlbXB0eURhdGFXYXJuaW5nOiB7XHJcbiAgICBjbGFzc05hbWU6ICdzbGljay1lbXB0eS1kYXRhLXdhcm5pbmcnLFxyXG4gICAgbWVzc2FnZTogJ05vIGRhdGEgdG8gZGlzcGxheS4nLFxyXG4gICAgbWVzc2FnZUtleTogJ0VNUFRZX0RBVEFfV0FSTklOR19NRVNTQUdFJyxcclxuICAgIGhpZGVGcm96ZW5MZWZ0V2FybmluZzogZmFsc2UsXHJcbiAgICBoaWRlRnJvemVuUmlnaHRXYXJuaW5nOiBmYWxzZSxcclxuICAgIGxlZnRWaWV3cG9ydE1hcmdpbkxlZnQ6ICc0MCUnLFxyXG4gICAgcmlnaHRWaWV3cG9ydE1hcmdpbkxlZnQ6ICc0MCUnLFxyXG4gICAgZnJvemVuTGVmdFZpZXdwb3J0TWFyZ2luTGVmdDogJzBweCcsXHJcbiAgICBmcm96ZW5SaWdodFZpZXdwb3J0TWFyZ2luTGVmdDogJzQwJScsXHJcbiAgfSxcclxuICBlbmFibGVNb3VzZUhvdmVySGlnaGxpZ2h0Um93OiB0cnVlLFxyXG4gIGVuYWJsZVNvcnRpbmc6IHRydWUsXHJcbiAgZW5hYmxlVGV4dFNlbGVjdGlvbk9uQ2VsbHM6IHRydWUsXHJcbiAgZXZlbnROYW1pbmdTdHlsZTogRXZlbnROYW1pbmdTdHlsZS5jYW1lbENhc2UsXHJcbiAgZXhwbGljaXRJbml0aWFsaXphdGlvbjogdHJ1ZSxcclxuICBleGNlbEV4cG9ydE9wdGlvbnM6IHtcclxuICAgIGFkZEdyb3VwSW5kZW50YXRpb246IHRydWUsXHJcbiAgICBleHBvcnRXaXRoRm9ybWF0dGVyOiBmYWxzZSxcclxuICAgIGZpbGVuYW1lOiAnZXhwb3J0JyxcclxuICAgIGZvcm1hdDogRmlsZVR5cGUueGxzeCxcclxuICAgIGdyb3VwaW5nQ29sdW1uSGVhZGVyVGl0bGU6ICdHcm91cCBCeScsXHJcbiAgICBncm91cENvbGxhcHNlZFN5bWJvbDogJ+KunicsXHJcbiAgICBncm91cEV4cGFuZGVkU3ltYm9sOiAn4q6fJyxcclxuICAgIGdyb3VwaW5nQWdncmVnYXRvclJvd1RleHQ6ICcnLFxyXG4gICAgc2FuaXRpemVEYXRhRXhwb3J0OiBmYWxzZSxcclxuICB9LFxyXG4gIGV4cG9ydE9wdGlvbnM6IHtcclxuICAgIGRlbGltaXRlcjogRGVsaW1pdGVyVHlwZS5jb21tYSxcclxuICAgIGV4cG9ydFdpdGhGb3JtYXR0ZXI6IGZhbHNlLFxyXG4gICAgZmlsZW5hbWU6ICdleHBvcnQnLFxyXG4gICAgZm9ybWF0OiBGaWxlVHlwZS5jc3YsXHJcbiAgICBncm91cGluZ0NvbHVtbkhlYWRlclRpdGxlOiAnR3JvdXAgQnknLFxyXG4gICAgZ3JvdXBpbmdBZ2dyZWdhdG9yUm93VGV4dDogJycsXHJcbiAgICBzYW5pdGl6ZURhdGFFeHBvcnQ6IGZhbHNlLFxyXG4gICAgdXNlVXRmOFdpdGhCb206IHRydWVcclxuICB9LFxyXG4gIGZpbHRlclR5cGluZ0RlYm91bmNlOiAwLFxyXG4gIGZvcmNlRml0Q29sdW1uczogZmFsc2UsXHJcbiAgZnJvemVuSGVhZGVyV2lkdGhDYWxjRGlmZmVyZW50aWFsOiAwLFxyXG4gIGdyaWRNZW51OiB7XHJcbiAgICBkcm9wU2lkZTogJ2xlZnQnLFxyXG4gICAgY29tbWFuZExhYmVsczoge1xyXG4gICAgICBjbGVhckFsbEZpbHRlcnNDb21tYW5kS2V5OiAnQ0xFQVJfQUxMX0ZJTFRFUlMnLFxyXG4gICAgICBjbGVhckFsbFNvcnRpbmdDb21tYW5kS2V5OiAnQ0xFQVJfQUxMX1NPUlRJTkcnLFxyXG4gICAgICBjbGVhckZyb3plbkNvbHVtbnNDb21tYW5kS2V5OiAnQ0xFQVJfUElOTklORycsXHJcbiAgICAgIGV4cG9ydENzdkNvbW1hbmRLZXk6ICdFWFBPUlRfVE9fQ1NWJyxcclxuICAgICAgZXhwb3J0RXhjZWxDb21tYW5kS2V5OiAnRVhQT1JUX1RPX0VYQ0VMJyxcclxuICAgICAgZXhwb3J0VGV4dERlbGltaXRlZENvbW1hbmRLZXk6ICdFWFBPUlRfVE9fVEFCX0RFTElNSVRFRCcsXHJcbiAgICAgIHJlZnJlc2hEYXRhc2V0Q29tbWFuZEtleTogJ1JFRlJFU0hfREFUQVNFVCcsXHJcbiAgICAgIHRvZ2dsZUZpbHRlckNvbW1hbmRLZXk6ICdUT0dHTEVfRklMVEVSX1JPVycsXHJcbiAgICAgIHRvZ2dsZVByZUhlYWRlckNvbW1hbmRLZXk6ICdUT0dHTEVfUFJFX0hFQURFUl9ST1cnLFxyXG4gICAgfSxcclxuICAgIGhpZGVDbGVhckFsbEZpbHRlcnNDb21tYW5kOiBmYWxzZSxcclxuICAgIGhpZGVDbGVhckFsbFNvcnRpbmdDb21tYW5kOiBmYWxzZSxcclxuICAgIGhpZGVDbGVhckZyb3plbkNvbHVtbnNDb21tYW5kOiB0cnVlLCAvLyBvcHQtaW4gY29tbWFuZFxyXG4gICAgaGlkZUV4cG9ydENzdkNvbW1hbmQ6IGZhbHNlLFxyXG4gICAgaGlkZUV4cG9ydEV4Y2VsQ29tbWFuZDogZmFsc2UsXHJcbiAgICBoaWRlRXhwb3J0VGV4dERlbGltaXRlZENvbW1hbmQ6IHRydWUsXHJcbiAgICBoaWRlRm9yY2VGaXRCdXR0b246IGZhbHNlLFxyXG4gICAgaGlkZVJlZnJlc2hEYXRhc2V0Q29tbWFuZDogZmFsc2UsXHJcbiAgICBoaWRlU3luY1Jlc2l6ZUJ1dHRvbjogdHJ1ZSxcclxuICAgIGhpZGVUb2dnbGVGaWx0ZXJDb21tYW5kOiBmYWxzZSxcclxuICAgIGhpZGVUb2dnbGVQcmVIZWFkZXJDb21tYW5kOiBmYWxzZSxcclxuICAgIGljb25Dc3NDbGFzczogJ2ZhIGZhLWJhcnMnLFxyXG4gICAgaWNvbkNsZWFyQWxsRmlsdGVyc0NvbW1hbmQ6ICdmYSBmYS1maWx0ZXIgdGV4dC1kYW5nZXInLFxyXG4gICAgaWNvbkNsZWFyQWxsU29ydGluZ0NvbW1hbmQ6ICdmYSBmYS11bnNvcnRlZCB0ZXh0LWRhbmdlcicsXHJcbiAgICBpY29uQ2xlYXJGcm96ZW5Db2x1bW5zQ29tbWFuZDogJ2ZhIGZhLXRpbWVzJyxcclxuICAgIGljb25FeHBvcnRDc3ZDb21tYW5kOiAnZmEgZmEtZG93bmxvYWQnLFxyXG4gICAgaWNvbkV4cG9ydEV4Y2VsQ29tbWFuZDogJ2ZhIGZhLWZpbGUtZXhjZWwtbyB0ZXh0LXN1Y2Nlc3MnLFxyXG4gICAgaWNvbkV4cG9ydFRleHREZWxpbWl0ZWRDb21tYW5kOiAnZmEgZmEtZG93bmxvYWQnLFxyXG4gICAgaWNvblJlZnJlc2hEYXRhc2V0Q29tbWFuZDogJ2ZhIGZhLXJlZnJlc2gnLFxyXG4gICAgaWNvblRvZ2dsZUZpbHRlckNvbW1hbmQ6ICdmYSBmYS1yYW5kb20nLFxyXG4gICAgaWNvblRvZ2dsZVByZUhlYWRlckNvbW1hbmQ6ICdmYSBmYS1yYW5kb20nLFxyXG4gICAgbWVudVdpZHRoOiAxNixcclxuICAgIHJlc2l6ZU9uU2hvd0hlYWRlclJvdzogdHJ1ZSxcclxuICAgIGhlYWRlckNvbHVtblZhbHVlRXh0cmFjdG9yOiBwaWNrZXJIZWFkZXJDb2x1bW5WYWx1ZUV4dHJhY3RvclxyXG4gIH0sXHJcbiAgaGVhZGVyTWVudToge1xyXG4gICAgYXV0b0FsaWduOiB0cnVlLFxyXG4gICAgYXV0b0FsaWduT2Zmc2V0OiAxMixcclxuICAgIG1pbldpZHRoOiAxNDAsXHJcbiAgICBpY29uQ2xlYXJGaWx0ZXJDb21tYW5kOiAnZmEgZmEtZmlsdGVyIHRleHQtZGFuZ2VyJyxcclxuICAgIGljb25DbGVhclNvcnRDb21tYW5kOiAnZmEgZmEtdW5zb3J0ZWQnLFxyXG4gICAgaWNvbkZyZWV6ZUNvbHVtbnM6ICdmYSBmYS10aHVtYi10YWNrJyxcclxuICAgIGljb25Tb3J0QXNjQ29tbWFuZDogJ2ZhIGZhLXNvcnQtYW1vdW50LWFzYycsXHJcbiAgICBpY29uU29ydERlc2NDb21tYW5kOiAnZmEgZmEtc29ydC1hbW91bnQtZGVzYycsXHJcbiAgICBpY29uQ29sdW1uSGlkZUNvbW1hbmQ6ICdmYSBmYS10aW1lcycsXHJcbiAgICBpY29uQ29sdW1uUmVzaXplQnlDb250ZW50Q29tbWFuZDogJ2ZhIGZhLWFycm93cy1oJyxcclxuICAgIGhpZGVDb2x1bW5SZXNpemVCeUNvbnRlbnRDb21tYW5kOiBmYWxzZSxcclxuICAgIGhpZGVDb2x1bW5IaWRlQ29tbWFuZDogZmFsc2UsXHJcbiAgICBoaWRlQ2xlYXJGaWx0ZXJDb21tYW5kOiBmYWxzZSxcclxuICAgIGhpZGVDbGVhclNvcnRDb21tYW5kOiBmYWxzZSxcclxuICAgIGhpZGVGcmVlemVDb2x1bW5zQ29tbWFuZDogdHJ1ZSwgLy8gb3B0LWluIGNvbW1hbmRcclxuICAgIGhpZGVTb3J0Q29tbWFuZHM6IGZhbHNlXHJcbiAgfSxcclxuICBoZWFkZXJSb3dIZWlnaHQ6IDM1LFxyXG4gIG11bHRpQ29sdW1uU29ydDogdHJ1ZSxcclxuICBudW1iZXJlZE11bHRpQ29sdW1uU29ydDogdHJ1ZSxcclxuICB0cmlzdGF0ZU11bHRpQ29sdW1uU29ydDogZmFsc2UsXHJcbiAgc29ydENvbE51bWJlckluU2VwYXJhdGVTcGFuOiB0cnVlLFxyXG4gIHN1cHByZXNzQWN0aXZlQ2VsbENoYW5nZU9uRWRpdDogdHJ1ZSxcclxuICBwYWdpbmF0aW9uOiB7XHJcbiAgICBwYWdlU2l6ZXM6IFsxMCwgMTUsIDIwLCAyNSwgMzAsIDQwLCA1MCwgNzUsIDEwMF0sXHJcbiAgICBwYWdlU2l6ZTogMjUsXHJcbiAgICB0b3RhbEl0ZW1zOiAwXHJcbiAgfSxcclxuICAvLyB0ZWNobmljYWxseSBzcGVha2luZyB0aGUgUm93IERldGFpbCByZXF1aXJlcyB0aGUgcHJvY2VzcyAmIHZpZXdDb21wb25lbnQgYnV0IHdlJ2xsIGlnbm9yZSBpdCBqdXN0IHRvIHNldCBjZXJ0YWluIG9wdGlvbnNcclxuICByb3dEZXRhaWxWaWV3OiB7XHJcbiAgICBjb2xsYXBzZUFsbE9uU29ydDogdHJ1ZSxcclxuICAgIGNzc0NsYXNzOiAnZGV0YWlsLXZpZXctdG9nZ2xlJyxcclxuICAgIHBhbmVsUm93czogMSxcclxuICAgIGtleVByZWZpeDogJ19fJyxcclxuICAgIHVzZVJvd0NsaWNrOiBmYWxzZSxcclxuICAgIHVzZVNpbXBsZVZpZXdwb3J0Q2FsYzogdHJ1ZSxcclxuICAgIHNhdmVEZXRhaWxWaWV3T25TY3JvbGw6IGZhbHNlLFxyXG4gIH0gYXMgUm93RGV0YWlsVmlldyxcclxuICByb3dIZWlnaHQ6IDM1LFxyXG4gIHRvcFBhbmVsSGVpZ2h0OiAzNSxcclxuICB0cmFuc2xhdGlvbk5hbWVzcGFjZVNlcGFyYXRvcjogJzonLFxyXG4gIHJlc2V0RmlsdGVyU2VhcmNoVmFsdWVBZnRlck9uQmVmb3JlQ2FuY2VsbGF0aW9uOiB0cnVlLFxyXG4gIHJlc2l6ZUJ5Q29udGVudE9ubHlPbkZpcnN0TG9hZDogdHJ1ZSxcclxuICByZXNpemVCeUNvbnRlbnRPcHRpb25zOiB7XHJcbiAgICBhbHdheXNSZWNhbGN1bGF0ZUNvbHVtbldpZHRoOiBmYWxzZSxcclxuICAgIGNlbGxDaGFyV2lkdGhJblB4OiA3LjgsXHJcbiAgICBjZWxsUGFkZGluZ1dpZHRoSW5QeDogMTQsXHJcbiAgICBkZWZhdWx0UmF0aW9Gb3JTdHJpbmdUeXBlOiAwLjg4LFxyXG4gICAgZm9ybWF0dGVyUGFkZGluZ1dpZHRoSW5QeDogMCxcclxuICAgIG1heEl0ZW1Ub0luc3BlY3RDZWxsQ29udGVudFdpZHRoOiAxMDAwLFxyXG4gICAgbWF4SXRlbVRvSW5zcGVjdFNpbmdsZUNvbHVtbldpZHRoQnlDb250ZW50OiA1MDAwLFxyXG4gICAgd2lkdGhUb1JlbW92ZUZyb21FeGNlZWRlZFdpZHRoUmVhZGp1c3RtZW50OiA1MCxcclxuICB9LFxyXG4gIHRyZWVEYXRhT3B0aW9uczoge1xyXG4gICAgZXhwb3J0SW5kZW50TWFyZ2luTGVmdDogNSxcclxuICAgIGV4cG9ydEluZGVudGF0aW9uTGVhZGluZ0NoYXI6ICfNj82PzY/Nj82PzY/Nj82PzY/CtycsXHJcbiAgfSBhcyB1bmtub3duIGFzIFRyZWVEYXRhT3B0aW9uXHJcbn07XHJcblxyXG4vKipcclxuICogVmFsdWUgRXh0cmFjdG9yIGZvciBib3RoIENvbHVtblBpY2tlciAmIEdyaWRNZW51IFBpY2tlclxyXG4gKiB3aGVuIHVzaW5nIENvbHVtbiBIZWFkZXIgR3JvdXBpbmcsIHdlJ2xsIHByZWZpeCB0aGUgY29sdW1uIGdyb3VwIHRpdGxlXHJcbiAqIGVsc2Ugd2UnbGwgc2ltcGx5IHJldHVybiB0aGUgY29sdW1uIG5hbWUgdGl0bGVcclxuICovXHJcbmZ1bmN0aW9uIHBpY2tlckhlYWRlckNvbHVtblZhbHVlRXh0cmFjdG9yKGNvbHVtbjogQ29sdW1uKSB7XHJcbiAgY29uc3QgaGVhZGVyR3JvdXAgPSBjb2x1bW4gJiYgY29sdW1uLmNvbHVtbkdyb3VwIHx8ICcnO1xyXG4gIGlmIChoZWFkZXJHcm91cCkge1xyXG4gICAgcmV0dXJuIGhlYWRlckdyb3VwICsgJyAtICcgKyBjb2x1bW4ubmFtZTtcclxuICB9XHJcbiAgcmV0dXJuIGNvbHVtbiAmJiBjb2x1bW4ubmFtZSB8fCAnJztcclxufVxyXG4iXX0=
@@ -1,8 +1,8 @@
1
1
  export * from '@slickgrid-universal/common';
2
2
  export { AngularUtilService, BsDropDownService, unsubscribeAllObservables } from './services/index';
3
- export { RowDetailViewExtension } from './extensions/index';
3
+ export { SlickRowDetailView } from './extensions/index';
4
4
  // components & module
5
5
  export { SlickgridConfig } from './slickgrid-config';
6
6
  export { AngularSlickgridComponent } from './components/angular-slickgrid.component';
7
7
  export { AngularSlickgridModule } from './modules/angular-slickgrid.module';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYW5ndWxhci1zbGlja2dyaWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUk1QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU1RCxzQkFBc0I7QUFDdEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnQHNsaWNrZ3JpZC11bml2ZXJzYWwvY29tbW9uJztcclxuXHJcbi8vIFB1YmxpYyBjbGFzc2VzLlxyXG5leHBvcnQgeyBBbmd1bGFyQ29tcG9uZW50T3V0cHV0LCBBbmd1bGFyR3JpZEluc3RhbmNlLCBHcmlkT3B0aW9uLCBTbGlja0dyaWQsIFJvd0RldGFpbFZpZXcgfSBmcm9tICcuL21vZGVscy9pbmRleCc7XHJcbmV4cG9ydCB7IEFuZ3VsYXJVdGlsU2VydmljZSwgQnNEcm9wRG93blNlcnZpY2UsIHVuc3Vic2NyaWJlQWxsT2JzZXJ2YWJsZXMgfSBmcm9tICcuL3NlcnZpY2VzL2luZGV4JztcclxuZXhwb3J0IHsgUm93RGV0YWlsVmlld0V4dGVuc2lvbiB9IGZyb20gJy4vZXh0ZW5zaW9ucy9pbmRleCc7XHJcblxyXG4vLyBjb21wb25lbnRzICYgbW9kdWxlXHJcbmV4cG9ydCB7IFNsaWNrZ3JpZENvbmZpZyB9IGZyb20gJy4vc2xpY2tncmlkLWNvbmZpZyc7XHJcbmV4cG9ydCB7IEFuZ3VsYXJTbGlja2dyaWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYW5ndWxhci1zbGlja2dyaWQuY29tcG9uZW50JztcclxuZXhwb3J0IHsgQW5ndWxhclNsaWNrZ3JpZE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9hbmd1bGFyLXNsaWNrZ3JpZC5tb2R1bGUnO1xyXG4iXX0=
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYW5ndWxhci1zbGlja2dyaWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUk1QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV4RCxzQkFBc0I7QUFDdEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnQHNsaWNrZ3JpZC11bml2ZXJzYWwvY29tbW9uJztcclxuXHJcbi8vIFB1YmxpYyBjbGFzc2VzLlxyXG5leHBvcnQgeyBBbmd1bGFyQ29tcG9uZW50T3V0cHV0LCBBbmd1bGFyR3JpZEluc3RhbmNlLCBHcmlkT3B0aW9uLCBTbGlja0dyaWQsIFJvd0RldGFpbFZpZXcgfSBmcm9tICcuL21vZGVscy9pbmRleCc7XHJcbmV4cG9ydCB7IEFuZ3VsYXJVdGlsU2VydmljZSwgQnNEcm9wRG93blNlcnZpY2UsIHVuc3Vic2NyaWJlQWxsT2JzZXJ2YWJsZXMgfSBmcm9tICcuL3NlcnZpY2VzL2luZGV4JztcclxuZXhwb3J0IHsgU2xpY2tSb3dEZXRhaWxWaWV3IH0gZnJvbSAnLi9leHRlbnNpb25zL2luZGV4JztcclxuXHJcbi8vIGNvbXBvbmVudHMgJiBtb2R1bGVcclxuZXhwb3J0IHsgU2xpY2tncmlkQ29uZmlnIH0gZnJvbSAnLi9zbGlja2dyaWQtY29uZmlnJztcclxuZXhwb3J0IHsgQW5ndWxhclNsaWNrZ3JpZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hbmd1bGFyLXNsaWNrZ3JpZC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBBbmd1bGFyU2xpY2tncmlkTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2FuZ3VsYXItc2xpY2tncmlkLm1vZHVsZSc7XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhckdyaWRJbnN0YW5jZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYW5ndWxhci1zbGlja2dyaWQvbW9kZWxzL2FuZ3VsYXJHcmlkSW5zdGFuY2UuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEJhY2tlbmRTZXJ2aWNlLFxyXG4gIEV4dGVuc2lvbkxpc3QsXHJcbiAgRXh0ZW5zaW9uU2VydmljZSxcclxuICBGaWx0ZXJTZXJ2aWNlLFxyXG4gIEdyaWRFdmVudFNlcnZpY2UsXHJcbiAgR3JpZFNlcnZpY2UsXHJcbiAgR3JpZFN0YXRlU2VydmljZSxcclxuICBHcm91cGluZ0FuZENvbHNwYW5TZXJ2aWNlLFxyXG4gIFBhZ2luYXRpb25TZXJ2aWNlLFxyXG4gIFJlc2l6ZXJTZXJ2aWNlLFxyXG4gIFNsaWNrRGF0YVZpZXcsXHJcbiAgU2xpY2tHcmlkLFxyXG4gIFNvcnRTZXJ2aWNlLFxyXG4gIFRyZWVEYXRhU2VydmljZVxyXG59IGZyb20gJ0BzbGlja2dyaWQtdW5pdmVyc2FsL2NvbW1vbic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFuZ3VsYXJHcmlkSW5zdGFuY2Uge1xyXG4gIC8qKiBTbGljayBEYXRhVmlldyBvYmplY3QgKi9cclxuICBkYXRhVmlldzogU2xpY2tEYXRhVmlldztcclxuXHJcbiAgLyoqIFNsaWNrIEdyaWQgb2JqZWN0ICovXHJcbiAgc2xpY2tHcmlkOiBTbGlja0dyaWQ7XHJcblxyXG4gIC8qKiBTbGlja0dyaWQgZXh0ZW5zaW9ucyAoZXh0ZXJuYWwgY29udHJvbHMvcGx1Z2lucykgKi9cclxuICBleHRlbnNpb25zOiBFeHRlbnNpb25MaXN0PGFueT47XHJcblxyXG4gIC8vIC0tXHJcbiAgLy8gTWV0aG9kc1xyXG4gIC8qKiBEaXNwb3NlIG9mIHRoZSBncmlkIGFuZCBvcHRpb25hbGx5IGVtcHR5IHRoZSBET00gZWxlbWVudCBncmlkIGNvbnRhaW5lciBhcyB3ZWxsICovXHJcbiAgZGVzdHJveTogKGVtcHR5RG9tRWxlbWVudENvbnRhaW5lcj86IGJvb2xlYW4pID0+IHZvaWQ7XHJcblxyXG4gIC8vIC0tXHJcbiAgLy8gU2VydmljZXNcclxuXHJcbiAgLyoqIEJhY2tlbmQgU2VydmljZSwgd2hlbiBhdmFpbGFibGUgKi9cclxuICBiYWNrZW5kU2VydmljZT86IEJhY2tlbmRTZXJ2aWNlO1xyXG5cclxuICAvKiogRXh0ZW5zaW9uIChQbHVnaW5zICYgQ29udHJvbHMpIFNlcnZpY2UgKi9cclxuICBleHRlbnNpb25TZXJ2aWNlOiBFeHRlbnNpb25TZXJ2aWNlO1xyXG5cclxuICAvKiogRmlsdGVyIFNlcnZpY2UgKi9cclxuICBmaWx0ZXJTZXJ2aWNlOiBGaWx0ZXJTZXJ2aWNlO1xyXG5cclxuICAvKiogR3JpZCBTZXJ2aWNlIChncmlkIGV4dHJhIGZ1bmN0aW9uYWxpdGllcykgKi9cclxuICBncmlkU2VydmljZTogR3JpZFNlcnZpY2U7XHJcblxyXG4gIC8qKiBHcmlkIEV2ZW50cyBTZXJ2aWNlICovXHJcbiAgZ3JpZEV2ZW50U2VydmljZTogR3JpZEV2ZW50U2VydmljZTtcclxuXHJcbiAgLyoqIEdyaWQgU3RhdGUgU2VydmljZSAqL1xyXG4gIGdyaWRTdGF0ZVNlcnZpY2U6IEdyaWRTdGF0ZVNlcnZpY2U7XHJcblxyXG4gIC8qKiBHcm91cGluZyAoYW5kIGNvbHNwYW4pIFNlcnZpY2UgKi9cclxuICBncm91cGluZ1NlcnZpY2U6IEdyb3VwaW5nQW5kQ29sc3BhblNlcnZpY2U7XHJcblxyXG4gIC8qKiBQYWdpbmF0aW9uIFNlcnZpY2UgKGFsbG93cyB5b3UgdG8gcHJvZ3JhbW1hdGljYWxseSBnbyB0byBmaXJzdC9sYXN0IHBhZ2UsIGV0Yy4uLikgKi9cclxuICBwYWdpbmF0aW9uU2VydmljZT86IFBhZ2luYXRpb25TZXJ2aWNlO1xyXG5cclxuICAvKiogUmVzaXplciBTZXJ2aWNlIChpbmNsdWRpbmcgYXV0by1yZXNpemUpICovXHJcbiAgcmVzaXplclNlcnZpY2U6IFJlc2l6ZXJTZXJ2aWNlO1xyXG5cclxuICAvKiogU29ydCBTZXJ2aWNlICovXHJcbiAgc29ydFNlcnZpY2U6IFNvcnRTZXJ2aWNlO1xyXG5cclxuICAvKiogVHJlZSBEYXRhIFZpZXcgU2VydmljZSAqL1xyXG4gIHRyZWVEYXRhU2VydmljZTogVHJlZURhdGFTZXJ2aWNlO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,46 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { TranslateModule } from '@ngx-translate/core';
4
+ import { AngularSlickgridComponent } from './../components/angular-slickgrid.component';
5
+ import { AngularUtilService } from '../services/angularUtil.service';
6
+ import { BsDropDownService } from '../services/bsDropdown.service';
7
+ import { ContainerService } from '../services/container.service';
8
+ import * as i0 from "@angular/core";
9
+ export class AngularSlickgridModule {
10
+ static forRoot(config = {}) {
11
+ return {
12
+ ngModule: AngularSlickgridModule,
13
+ providers: [
14
+ { provide: 'config', useValue: config },
15
+ { provide: 'externalService', useValue: null },
16
+ AngularUtilService,
17
+ BsDropDownService,
18
+ ContainerService,
19
+ ]
20
+ };
21
+ }
22
+ }
23
+ AngularSlickgridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AngularSlickgridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
24
+ AngularSlickgridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AngularSlickgridModule, declarations: [AngularSlickgridComponent], imports: [CommonModule,
25
+ TranslateModule], exports: [AngularSlickgridComponent] });
26
+ AngularSlickgridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AngularSlickgridModule, imports: [[
27
+ CommonModule,
28
+ TranslateModule
29
+ ]] });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AngularSlickgridModule, decorators: [{
31
+ type: NgModule,
32
+ args: [{
33
+ imports: [
34
+ CommonModule,
35
+ TranslateModule
36
+ ],
37
+ declarations: [
38
+ AngularSlickgridComponent,
39
+ ],
40
+ exports: [
41
+ AngularSlickgridComponent,
42
+ ],
43
+ entryComponents: [AngularSlickgridComponent]
44
+ }]
45
+ }] });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1zbGlja2dyaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2FuZ3VsYXItc2xpY2tncmlkL21vZHVsZXMvYW5ndWxhci1zbGlja2dyaWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBZWpFLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFxQixFQUFFO1FBQ3BDLE9BQU87WUFDTCxRQUFRLEVBQUUsc0JBQXNCO1lBQ2hDLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRTtnQkFDdkMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDOUMsa0JBQWtCO2dCQUNsQixpQkFBaUI7Z0JBQ2pCLGdCQUFnQjthQUNqQjtTQUNGLENBQUM7SUFDSixDQUFDOzttSEFaVSxzQkFBc0I7b0hBQXRCLHNCQUFzQixpQkFQL0IseUJBQXlCLGFBSnpCLFlBQVk7UUFDWixlQUFlLGFBTWYseUJBQXlCO29IQUloQixzQkFBc0IsWUFaeEI7WUFDUCxZQUFZO1lBQ1osZUFBZTtTQUNoQjsyRkFTVSxzQkFBc0I7a0JBYmxDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTtxQkFDaEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHlCQUF5QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHlCQUF5QjtxQkFDMUI7b0JBQ0QsZUFBZSxFQUFFLENBQUMseUJBQXlCLENBQUM7aUJBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBBbmd1bGFyU2xpY2tncmlkQ29tcG9uZW50IH0gZnJvbSAnLi8uLi9jb21wb25lbnRzL2FuZ3VsYXItc2xpY2tncmlkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEdyaWRPcHRpb24gfSBmcm9tICcuLy4uL21vZGVscy9ncmlkT3B0aW9uLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEFuZ3VsYXJVdGlsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FuZ3VsYXJVdGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCc0Ryb3BEb3duU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2JzRHJvcGRvd24uc2VydmljZSc7XHJcbmltcG9ydCB7IENvbnRhaW5lclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jb250YWluZXIuc2VydmljZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBBbmd1bGFyU2xpY2tncmlkQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQW5ndWxhclNsaWNrZ3JpZENvbXBvbmVudCxcclxuICBdLFxyXG4gIGVudHJ5Q29tcG9uZW50czogW0FuZ3VsYXJTbGlja2dyaWRDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbmd1bGFyU2xpY2tncmlkTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IEdyaWRPcHRpb24gPSB7fSk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QW5ndWxhclNsaWNrZ3JpZE1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IEFuZ3VsYXJTbGlja2dyaWRNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHsgcHJvdmlkZTogJ2NvbmZpZycsIHVzZVZhbHVlOiBjb25maWcgfSxcclxuICAgICAgICB7IHByb3ZpZGU6ICdleHRlcm5hbFNlcnZpY2UnLCB1c2VWYWx1ZTogbnVsbCB9LFxyXG4gICAgICAgIEFuZ3VsYXJVdGlsU2VydmljZSxcclxuICAgICAgICBCc0Ryb3BEb3duU2VydmljZSxcclxuICAgICAgICBDb250YWluZXJTZXJ2aWNlLFxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,46 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AngularUtilService {
4
+ constructor(compFactoryResolver, appRef, injector) {
5
+ this.compFactoryResolver = compFactoryResolver;
6
+ this.appRef = appRef;
7
+ this.injector = injector;
8
+ }
9
+ // ref https://hackernoon.com/angular-pro-tip-how-to-dynamically-create-components-in-body-ba200cc289e6
10
+ createAngularComponent(component) {
11
+ // Create a component reference from the component
12
+ const componentRef = this.compFactoryResolver
13
+ .resolveComponentFactory(component)
14
+ .create(this.injector);
15
+ // Attach component to the appRef so that it's inside the ng component tree
16
+ this.appRef.attachView(componentRef.hostView);
17
+ // Get DOM element from component
18
+ let domElem;
19
+ const viewRef = componentRef.hostView;
20
+ if (viewRef && Array.isArray(viewRef.rootNodes) && viewRef.rootNodes[0]) {
21
+ domElem = viewRef.rootNodes[0];
22
+ }
23
+ return { componentRef, domElement: domElem };
24
+ }
25
+ // ref https://hackernoon.com/angular-pro-tip-how-to-dynamically-create-components-in-body-ba200cc289e6
26
+ createAngularComponentAppendToDom(component, targetElement, clearTargetContent = false) {
27
+ const componentOutput = this.createAngularComponent(component);
28
+ // Append DOM element to the HTML element specified
29
+ if (targetElement && targetElement.appendChild) {
30
+ if (clearTargetContent && targetElement.innerHTML) {
31
+ targetElement.innerHTML = '';
32
+ }
33
+ targetElement.appendChild(componentOutput.domElement);
34
+ }
35
+ else {
36
+ document.body.appendChild(componentOutput.domElement); // when no target provided, we'll simply add it to the HTML Body
37
+ }
38
+ return componentOutput;
39
+ }
40
+ }
41
+ AngularUtilService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AngularUtilService, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
42
+ AngularUtilService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AngularUtilService });
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AngularUtilService, decorators: [{
44
+ type: Injectable
45
+ }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ApplicationRef }, { type: i0.Injector }]; } });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhclV0aWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9hbmd1bGFyLXNsaWNrZ3JpZC9zZXJ2aWNlcy9hbmd1bGFyVXRpbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBNkQsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDOztBQUdoSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQ1UsbUJBQTZDLEVBQzdDLE1BQXNCLEVBQ3RCLFFBQWtCO1FBRmxCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBMEI7UUFDN0MsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUN4QixDQUFDO0lBRUwsdUdBQXVHO0lBQ3ZHLHNCQUFzQixDQUFDLFNBQWM7UUFDbkMsa0RBQWtEO1FBQ2xELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUI7YUFDMUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDO2FBQ2xDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekIsMkVBQTJFO1FBQzNFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5QyxpQ0FBaUM7UUFDakMsSUFBSSxPQUFPLENBQUM7UUFDWixNQUFNLE9BQU8sR0FBSSxZQUFZLENBQUMsUUFBaUMsQ0FBQztRQUNoRSxJQUFJLE9BQU8sSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3ZFLE9BQU8sR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBZ0IsQ0FBQztTQUMvQztRQUVELE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE9BQXNCLEVBQUUsQ0FBQztJQUM5RCxDQUFDO0lBRUQsdUdBQXVHO0lBQ3ZHLGlDQUFpQyxDQUFDLFNBQWMsRUFBRSxhQUFxQyxFQUFFLGtCQUFrQixHQUFHLEtBQUs7UUFDakgsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRS9ELG1EQUFtRDtRQUNuRCxJQUFJLGFBQWEsSUFBSSxhQUFhLENBQUMsV0FBVyxFQUFFO1lBQzlDLElBQUksa0JBQWtCLElBQUksYUFBYSxDQUFDLFNBQVMsRUFBRTtnQkFDakQsYUFBYSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7YUFDOUI7WUFDRCxhQUFhLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDthQUFNO1lBQ0wsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsZ0VBQWdFO1NBQ3hIO1FBRUQsT0FBTyxlQUFlLENBQUM7SUFDekIsQ0FBQzs7K0dBMUNVLGtCQUFrQjttSEFBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50T3V0cHV0IH0gZnJvbSAnLi4vbW9kZWxzL2FuZ3VsYXJDb21wb25lbnRPdXRwdXQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQXBwbGljYXRpb25SZWYsIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgRW1iZWRkZWRWaWV3UmVmLCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQW5ndWxhclV0aWxTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY29tcEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgcHJpdmF0ZSBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmLFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgKSB7IH1cclxuXHJcbiAgLy8gcmVmIGh0dHBzOi8vaGFja2Vybm9vbi5jb20vYW5ndWxhci1wcm8tdGlwLWhvdy10by1keW5hbWljYWxseS1jcmVhdGUtY29tcG9uZW50cy1pbi1ib2R5LWJhMjAwY2MyODllNlxyXG4gIGNyZWF0ZUFuZ3VsYXJDb21wb25lbnQoY29tcG9uZW50OiBhbnkpOiBBbmd1bGFyQ29tcG9uZW50T3V0cHV0IHtcclxuICAgIC8vIENyZWF0ZSBhIGNvbXBvbmVudCByZWZlcmVuY2UgZnJvbSB0aGUgY29tcG9uZW50XHJcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNvbXBGYWN0b3J5UmVzb2x2ZXJcclxuICAgICAgLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudClcclxuICAgICAgLmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcclxuXHJcbiAgICAvLyBBdHRhY2ggY29tcG9uZW50IHRvIHRoZSBhcHBSZWYgc28gdGhhdCBpdCdzIGluc2lkZSB0aGUgbmcgY29tcG9uZW50IHRyZWVcclxuICAgIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcclxuXHJcbiAgICAvLyBHZXQgRE9NIGVsZW1lbnQgZnJvbSBjb21wb25lbnRcclxuICAgIGxldCBkb21FbGVtO1xyXG4gICAgY29uc3Qgdmlld1JlZiA9IChjb21wb25lbnRSZWYuaG9zdFZpZXcgYXMgRW1iZWRkZWRWaWV3UmVmPGFueT4pO1xyXG4gICAgaWYgKHZpZXdSZWYgJiYgQXJyYXkuaXNBcnJheSh2aWV3UmVmLnJvb3ROb2RlcykgJiYgdmlld1JlZi5yb290Tm9kZXNbMF0pIHtcclxuICAgICAgZG9tRWxlbSA9IHZpZXdSZWYucm9vdE5vZGVzWzBdIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB7IGNvbXBvbmVudFJlZiwgZG9tRWxlbWVudDogZG9tRWxlbSBhcyBIVE1MRWxlbWVudCB9O1xyXG4gIH1cclxuXHJcbiAgLy8gcmVmIGh0dHBzOi8vaGFja2Vybm9vbi5jb20vYW5ndWxhci1wcm8tdGlwLWhvdy10by1keW5hbWljYWxseS1jcmVhdGUtY29tcG9uZW50cy1pbi1ib2R5LWJhMjAwY2MyODllNlxyXG4gIGNyZWF0ZUFuZ3VsYXJDb21wb25lbnRBcHBlbmRUb0RvbShjb21wb25lbnQ6IGFueSwgdGFyZ2V0RWxlbWVudD86IEhUTUxFbGVtZW50IHwgRWxlbWVudCwgY2xlYXJUYXJnZXRDb250ZW50ID0gZmFsc2UpOiBBbmd1bGFyQ29tcG9uZW50T3V0cHV0IHtcclxuICAgIGNvbnN0IGNvbXBvbmVudE91dHB1dCA9IHRoaXMuY3JlYXRlQW5ndWxhckNvbXBvbmVudChjb21wb25lbnQpO1xyXG5cclxuICAgIC8vIEFwcGVuZCBET00gZWxlbWVudCB0byB0aGUgSFRNTCBlbGVtZW50IHNwZWNpZmllZFxyXG4gICAgaWYgKHRhcmdldEVsZW1lbnQgJiYgdGFyZ2V0RWxlbWVudC5hcHBlbmRDaGlsZCkge1xyXG4gICAgICBpZiAoY2xlYXJUYXJnZXRDb250ZW50ICYmIHRhcmdldEVsZW1lbnQuaW5uZXJIVE1MKSB7XHJcbiAgICAgICAgdGFyZ2V0RWxlbWVudC5pbm5lckhUTUwgPSAnJztcclxuICAgICAgfVxyXG4gICAgICB0YXJnZXRFbGVtZW50LmFwcGVuZENoaWxkKGNvbXBvbmVudE91dHB1dC5kb21FbGVtZW50KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoY29tcG9uZW50T3V0cHV0LmRvbUVsZW1lbnQpOyAvLyB3aGVuIG5vIHRhcmdldCBwcm92aWRlZCwgd2UnbGwgc2ltcGx5IGFkZCBpdCB0byB0aGUgSFRNTCBCb2R5XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGNvbXBvbmVudE91dHB1dDtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,103 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./angularUtil.service";
4
+ // Boostrap dropdown service
5
+ export class BsDropDownService {
6
+ constructor(angularUtilService) {
7
+ this.angularUtilService = angularUtilService;
8
+ }
9
+ get domElement() {
10
+ return this._domElement;
11
+ }
12
+ get domContainerElement() {
13
+ return this._domContainerElement;
14
+ }
15
+ get gridViewport() {
16
+ return $('.slick-viewport');
17
+ }
18
+ dispose() {
19
+ if (this._domElement && this._domElement.remove) {
20
+ this._domElement.remove();
21
+ }
22
+ }
23
+ dropContainerShow() {
24
+ if (this._domContainerElement && this._domContainerElement.show) {
25
+ this._domContainerElement.show();
26
+ }
27
+ }
28
+ render(dropdownParams) {
29
+ return new Promise((resolve) => {
30
+ const { component, args, parent, offsetTop, offsetLeft, offsetDropupBottom } = dropdownParams;
31
+ const cell = args.cell;
32
+ const row = args.row;
33
+ this._domContainerElement = $(`#myDrop-r${row}-c${cell}`);
34
+ if (this._domContainerElement) {
35
+ // hide the dropdown we created as a formatter Component, we'll redisplay it later
36
+ const cellPos = this._domContainerElement.offset();
37
+ const componentOutput = this.angularUtilService.createAngularComponent(component);
38
+ const componentInstance = componentOutput && componentOutput.componentRef && componentOutput.componentRef.instance;
39
+ if (componentInstance) {
40
+ const myDropId = componentInstance.dropdownId || 'myDrop';
41
+ const dropDownToggleId = componentInstance.dropDownToggleId || 'dropdownMenu1';
42
+ this._domElement = $(`#${myDropId}`);
43
+ if (this._domElement) {
44
+ // make sure to remove any previous Action dropdown elements, to avoid having multiple element of the same on top of each other
45
+ this.dispose();
46
+ // assign the row data to the dropdown component instance
47
+ Object.assign(componentInstance, { parent, row: args.row, dataContext: args.grid.getDataItem(args.row) });
48
+ // use a delay to make sure Angular ran at least a full cycle and make sure it finished rendering the Component before using it
49
+ setTimeout(() => {
50
+ // create a new dropdown element
51
+ this._domElement = $(componentOutput.domElement);
52
+ const topPos = (cellPos && cellPos.top || 0) + 30 + (offsetTop || 0);
53
+ const leftPos = (cellPos && cellPos.left || 0) + (offsetLeft || 0);
54
+ this._domElement.appendTo('body');
55
+ this._domElement.css('position', 'absolute');
56
+ this._domElement.css('top', topPos);
57
+ this._domElement.css('left', leftPos);
58
+ $(`#${myDropId}`).addClass('open');
59
+ $(`#${dropDownToggleId}`).hide();
60
+ // check if it should drop Up or Down
61
+ const offset = 35;
62
+ const iElement = $('.dropdown-menu');
63
+ const iElementWrapper = iElement.parent();
64
+ const iElementWrapperOffset = iElementWrapper.offset() || {};
65
+ const iElementWrapperOffsetTop = iElementWrapperOffset.top || iElementWrapper && iElementWrapper.length > 0 && iElementWrapper[0].offsetTop;
66
+ const iElementHeight = iElement.height();
67
+ const windowHeight = window.innerHeight;
68
+ const shouldDropUp = (windowHeight - iElementHeight - offset) < iElementWrapperOffsetTop;
69
+ let menuMarginTop = '0px';
70
+ if (shouldDropUp) {
71
+ const offsetBottom = offsetDropupBottom || 0;
72
+ menuMarginTop = '-'.concat(`${iElementHeight + offset + offsetBottom + 5}`, 'px');
73
+ }
74
+ this._domElement.css({ 'margin-top': menuMarginTop });
75
+ // set dropdown margin left according to the document width
76
+ const parentOffset = iElementWrapperOffset.left;
77
+ const leftMargin = parentOffset - $(document).width();
78
+ this._domElement.css({ 'margin-left': (this._domElement.width() + leftMargin + 60) + 'px' });
79
+ try {
80
+ this._domElement.dropdown('show'); // required for Bootstrap 4 only
81
+ }
82
+ catch (e) {
83
+ // Bootstrap 3 wil throw an error since that method doesn't exist, we can safely disregard it
84
+ }
85
+ this._domElement.on('hidden.bs.dropdown', () => this.dropContainerShow());
86
+ // hide dropdown menu on grid scroll
87
+ this.gridViewport.on('scroll', () => this.dispose());
88
+ // hide on dropdown click
89
+ this._domElement.on('click', () => this.dispose());
90
+ resolve(true);
91
+ });
92
+ }
93
+ }
94
+ }
95
+ });
96
+ }
97
+ }
98
+ BsDropDownService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: BsDropDownService, deps: [{ token: i1.AngularUtilService }], target: i0.ɵɵFactoryTarget.Injectable });
99
+ BsDropDownService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: BsDropDownService });
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: BsDropDownService, decorators: [{
101
+ type: Injectable
102
+ }], ctorParameters: function () { return [{ type: i1.AngularUtilService }]; } });
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnNEcm9wZG93bi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2FuZ3VsYXItc2xpY2tncmlkL3NlcnZpY2VzL2JzRHJvcGRvd24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUEwQjNDLDRCQUE0QjtBQUU1QixNQUFNLE9BQU8saUJBQWlCO0lBSTVCLFlBQW9CLGtCQUFzQztRQUF0Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO0lBQUksQ0FBQztJQUUvRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFO1lBQy9DLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxJQUFJLENBQUMsb0JBQW9CLElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRTtZQUMvRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbEM7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQXFDO1FBQzFDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUM3QixNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxrQkFB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QUFPLENBQUMsRUFBRTtnQ0FDViw2RkFBNkY7NkJBQzlGOzRCQUVELElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7NEJBRTFFLG9DQUFvQzs0QkFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDOzRCQUVyRCx5QkFBeUI7NEJBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQzs0QkFDbkQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUNoQixDQUFDLENBQUMsQ0FBQztxQkFDSjtpQkFDRjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs4R0EvR1UsaUJBQWlCO2tIQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFuZ3VsYXJVdGlsU2VydmljZSB9IGZyb20gJy4vYW5ndWxhclV0aWwuc2VydmljZSc7XHJcblxyXG5pbnRlcmZhY2UgRHJvcERvd25TZXJ2aWNlUGFyYW1zIHtcclxuICAvKiogdGhlIGN1c3RvbSBhY3Rpb24gZm9ybWF0dGVyIGNvbXBvbmVudCB0aGF0IGNvbnRhaW5zIHRoZSBkcm9wZG93biAqL1xyXG4gIGNvbXBvbmVudDogYW55O1xyXG5cclxuICAvKiogaGVscCB0byBnZXQgdGhlIGRhdGEgY29udGV4dCAqL1xyXG4gIGFyZ3M6IGFueTtcclxuXHJcbiAgLyoqIHBhcmVudCBjb250YWluZXIgKi9cclxuICBwYXJlbnQ6IGFueTtcclxuXHJcbiAgLyoqIE9mZnNldCBib3R0b20gd2hlbiB1c2luZyBhIERyb3AgVXAsIGlmIHdlIG5lZWQgdG8gcmVwb3NpdGlvbiB0aGUgZHJvcGRvd24gY29tcG9uZW50ICovXHJcbiAgb2Zmc2V0RHJvcHVwQm90dG9tPzogbnVtYmVyO1xyXG5cclxuICAvKiogT2Zmc2V0IGxlZnQgaWYgd2UgbmVlZCB0byByZXBvc2l0aW9uIHRoZSBkcm9wZG93biBjb21wb25lbnQgKi9cclxuICBvZmZzZXRMZWZ0PzogbnVtYmVyO1xyXG5cclxuICAvKiogT2Zmc2V0IHRvcCBpZiB3ZSBuZWVkIHRvIHJlcG9zaXRpb24gdGhlIGRyb3Bkb3duIGNvbXBvbmVudCAqL1xyXG4gIG9mZnNldFRvcD86IG51bWJlcjtcclxufVxyXG5cclxuLy8gdXNpbmcgZXh0ZXJuYWwgbm9uLXR5cGVkIGpzIGxpYnJhcmllc1xyXG5kZWNsYXJlIGNvbnN0ICQ6IGFueTtcclxuXHJcbi8vIEJvb3N0cmFwIGRyb3Bkb3duIHNlcnZpY2VcclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQnNEcm9wRG93blNlcnZpY2Uge1xyXG4gIHByaXZhdGUgX2RvbUNvbnRhaW5lckVsZW1lbnQ6IGFueTtcclxuICBwcml2YXRlIF9kb21FbGVtZW50OiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYW5ndWxhclV0aWxTZXJ2aWNlOiBBbmd1bGFyVXRpbFNlcnZpY2UpIHsgfVxyXG5cclxuICBnZXQgZG9tRWxlbWVudCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9kb21FbGVtZW50O1xyXG4gIH1cclxuXHJcbiAgZ2V0IGRvbUNvbnRhaW5lckVsZW1lbnQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZG9tQ29udGFpbmVyRWxlbWVudDtcclxuICB9XHJcblxyXG4gIGdldCBncmlkVmlld3BvcnQoKSB7XHJcbiAgICByZXR1cm4gJCgnLnNsaWNrLXZpZXdwb3J0Jyk7XHJcbiAgfVxyXG5cclxuICBkaXNwb3NlKCkge1xyXG4gICAgaWYgKHRoaXMuX2RvbUVsZW1lbnQgJiYgdGhpcy5fZG9tRWxlbWVudC5yZW1vdmUpIHtcclxuICAgICAgdGhpcy5fZG9tRWxlbWVudC5yZW1vdmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRyb3BDb250YWluZXJTaG93KCkge1xyXG4gICAgaWYgKHRoaXMuX2RvbUNvbnRhaW5lckVsZW1lbnQgJiYgdGhpcy5fZG9tQ29udGFpbmVyRWxlbWVudC5zaG93KSB7XHJcbiAgICAgIHRoaXMuX2RvbUNvbnRhaW5lckVsZW1lbnQuc2hvdygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKGRyb3Bkb3duUGFyYW1zOiBEcm9wRG93blNlcnZpY2VQYXJhbXMpIHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gICAgICBjb25zdCB7IGNvbXBvbmVudCwgYXJncywgcGFyZW50LCBvZmZzZXRUb3AsIG9mZnNldExlZnQsIG9mZnNldERyb3B1cEJvdHRvbSB9ID0gZHJvcGRvd25QYXJhbXM7XHJcblxyXG4gICAgICBjb25zdCBjZWxsID0gYXJncy5jZWxsO1xyXG4gICAgICBjb25zdCByb3cgPSBhcmdzLnJvdztcclxuXHJcbiAgICAgIHRoaXMuX2RvbUNvbnRhaW5lckVsZW1lbnQgPSAkKGAjbXlEcm9wLXIke3Jvd30tYyR7Y2VsbH1gKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLl9kb21Db250YWluZXJFbGVtZW50KSB7XHJcbiAgICAgICAgLy8gaGlkZSB0aGUgZHJvcGRvd24gd2UgY3JlYXRlZCBhcyBhIGZvcm1hdHRlciBDb21wb25lbnQsIHdlJ2xsIHJlZGlzcGxheSBpdCBsYXRlclxyXG4gICAgICAgIGNvbnN0IGNlbGxQb3MgPSB0aGlzLl9kb21Db250YWluZXJFbGVtZW50Lm9mZnNldCgpO1xyXG5cclxuICAgICAgICBjb25zdCBjb21wb25lbnRPdXRwdXQgPSB0aGlzLmFuZ3VsYXJVdGlsU2VydmljZS5jcmVhdGVBbmd1bGFyQ29tcG9uZW50KGNvbXBvbmVudCk7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50SW5zdGFuY2UgPSBjb21wb25lbnRPdXRwdXQgJiYgY29tcG9uZW50T3V0cHV0LmNvbXBvbmVudFJlZiAmJiBjb21wb25lbnRPdXRwdXQuY29tcG9uZW50UmVmLmluc3RhbmNlO1xyXG5cclxuICAgICAgICBpZiAoY29tcG9uZW50SW5zdGFuY2UpIHtcclxuICAgICAgICAgIGNvbnN0IG15RHJvcElkID0gY29tcG9uZW50SW5zdGFuY2UuZHJvcGRvd25JZCB8fCAnbXlEcm9wJztcclxuICAgICAgICAgIGNvbnN0IGRyb3BEb3duVG9nZ2xlSWQgPSBjb21wb25lbnRJbnN0YW5jZS5kcm9wRG93blRvZ2dsZUlkIHx8ICdkcm9wZG93bk1lbnUxJztcclxuICAgICAgICAgIHRoaXMuX2RvbUVsZW1lbnQgPSAkKGAjJHtteURyb3BJZH1gKTtcclxuXHJcbiAgICAgICAgICBpZiAodGhpcy5fZG9tRWxlbWVudCkge1xyXG4gICAgICAgICAgICAvLyBtYWtlIHN1cmUgdG8gcmVtb3ZlIGFueSBwcmV2aW91cyBBY3Rpb24gZHJvcGRvd24gZWxlbWVudHMsIHRvIGF2b2lkIGhhdmluZyBtdWx0aXBsZSBlbGVtZW50IG9mIHRoZSBzYW1lIG9uIHRvcCBvZiBlYWNoIG90aGVyXHJcbiAgICAgICAgICAgIHRoaXMuZGlzcG9zZSgpO1xyXG5cclxuICAgICAgICAgICAgLy8gYXNzaWduIHRoZSByb3cgZGF0YSB0byB0aGUgZHJvcGRvd24gY29tcG9uZW50IGluc3RhbmNlXHJcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oY29tcG9uZW50SW5zdGFuY2UsIHsgcGFyZW50LCByb3c6IGFyZ3Mucm93LCBkYXRhQ29udGV4dDogYXJncy5ncmlkLmdldERhdGFJdGVtKGFyZ3Mucm93KSB9KTtcclxuXHJcbiAgICAgICAgICAgIC8vIHVzZSBhIGRlbGF5IHRvIG1ha2Ugc3VyZSBBbmd1bGFyIHJhbiBhdCBsZWFzdCBhIGZ1bGwgY3ljbGUgYW5kIG1ha2Ugc3VyZSBpdCBmaW5pc2hlZCByZW5kZXJpbmcgdGhlIENvbXBvbmVudCBiZWZvcmUgdXNpbmcgaXRcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgLy8gY3JlYXRlIGEgbmV3IGRyb3Bkb3duIGVsZW1lbnRcclxuICAgICAgICAgICAgICB0aGlzLl9kb21FbGVtZW50ID0gJChjb21wb25lbnRPdXRwdXQuZG9tRWxlbWVudCk7XHJcbiAgICAgICAgICAgICAgY29uc3QgdG9wUG9zID0gKGNlbGxQb3MgJiYgY2VsbFBvcy50b3AgfHwgMCkgKyAzMCArIChvZmZzZXRUb3AgfHwgMCk7XHJcbiAgICAgICAgICAgICAgY29uc3QgbGVmdFBvcyA9IChjZWxsUG9zICYmIGNlbGxQb3MubGVmdCB8fCAwKSArIChvZmZzZXRMZWZ0IHx8IDApO1xyXG4gICAgICAgICAgICAgIHRoaXMuX2RvbUVsZW1lbnQuYXBwZW5kVG8oJ2JvZHknKTtcclxuICAgICAgICAgICAgICB0aGlzLl9kb21FbGVtZW50LmNzcygncG9zaXRpb24nLCAnYWJzb2x1dGUnKTtcclxuICAgICAgICAgICAgICB0aGlzLl9kb21FbGVtZW50LmNzcygndG9wJywgdG9wUG9zKTtcclxuICAgICAgICAgICAgICB0aGlzLl9kb21FbGVtZW50LmNzcygnbGVmdCcsIGxlZnRQb3MpO1xyXG4gICAgICAgICAgICAgICQoYCMke215RHJvcElkfWApLmFkZENsYXNzKCdvcGVuJyk7XHJcbiAgICAgICAgICAgICAgJChgIyR7ZHJvcERvd25Ub2dnbGVJZH1gKS5oaWRlKCk7XHJcblxyXG4gICAgICAgICAgICAgIC8vIGNoZWNrIGlmIGl0IHNob3VsZCBkcm9wIFVwIG9yIERvd25cclxuICAgICAgICAgICAgICBjb25zdCBvZmZzZXQgPSAzNTtcclxuICAgICAgICAgICAgICBjb25zdCBpRWxlbWVudCA9ICQoJy5kcm9wZG93bi1tZW51Jyk7XHJcbiAgICAgICAgICAgICAgY29uc3QgaUVsZW1lbnRXcmFwcGVyID0gaUVsZW1lbnQucGFyZW50KCk7XHJcbiAgICAgICAgICAgICAgY29uc3QgaUVsZW1lbnRXcmFwcGVyT2Zmc2V0ID0gaUVsZW1lbnRXcmFwcGVyLm9mZnNldCgpIHx8IHt9O1xyXG4gICAgICAgICAgICAgIGNvbnN0IGlFbGVtZW50V3JhcHBlck9mZnNldFRvcCA9IGlFbGVtZW50V3JhcHBlck9mZnNldC50b3AgfHwgaUVsZW1lbnRXcmFwcGVyICYmIGlFbGVtZW50V3JhcHBlci5sZW5ndGggPiAwICYmIGlFbGVtZW50V3JhcHBlclswXS5vZmZzZXRUb3A7XHJcbiAgICAgICAgICAgICAgY29uc3QgaUVsZW1lbnRIZWlnaHQgPSBpRWxlbWVudC5oZWlnaHQoKTtcclxuICAgICAgICAgICAgICBjb25zdCB3aW5kb3dIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XHJcbiAgICAgICAgICAgICAgY29uc3Qgc2hvdWxkRHJvcFVwID0gKHdpbmRvd0hlaWdodCAtIGlFbGVtZW50SGVpZ2h0IC0gb2Zmc2V0KSA8IGlFbGVtZW50V3JhcHBlck9mZnNldFRvcDtcclxuICAgICAgICAgICAgICBsZXQgbWVudU1hcmdpblRvcCA9ICcwcHgnO1xyXG4gICAgICAgICAgICAgIGlmIChzaG91bGREcm9wVXApIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG9mZnNldEJvdHRvbSA9IG9mZnNldERyb3B1cEJvdHRvbSB8fCAwO1xyXG4gICAgICAgICAgICAgICAgbWVudU1hcmdpblRvcCA9ICctJy5jb25jYXQoYCR7aUVsZW1lbnRIZWlnaHQgKyBvZmZzZXQgKyBvZmZzZXRCb3R0b20gKyA1fWAsICdweCcpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB0aGlzLl9kb21FbGVtZW50LmNzcyh7ICdtYXJnaW4tdG9wJzogbWVudU1hcmdpblRvcCB9KTtcclxuXHJcbiAgICAgICAgICAgICAgLy8gc2V0IGRyb3Bkb3duIG1hcmdpbiBsZWZ0IGFjY29yZGluZyB0byB0aGUgZG9jdW1lbnQgd2lkdGhcclxuICAgICAgICAgICAgICBjb25zdCBwYXJlbnRPZmZzZXQgPSBpRWxlbWVudFdyYXBwZXJPZmZzZXQubGVmdDtcclxuICAgICAgICAgICAgICBjb25zdCBsZWZ0TWFyZ2luID0gcGFyZW50T2Zmc2V0IC0gJChkb2N1bWVudCkud2lkdGgoKTtcclxuICAgICAgICAgICAgICB0aGlzLl9kb21FbGVtZW50LmNzcyh7ICdtYXJnaW4tbGVmdCc6ICh0aGlzLl9kb21FbGVtZW50LndpZHRoKCkgKyBsZWZ0TWFyZ2luICsgNjApICsgJ3B4JyB9KTtcclxuXHJcbiAgICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2RvbUVsZW1lbnQuZHJvcGRvd24oJ3Nob3cnKTsgLy8gcmVxdWlyZWQgZm9yIEJvb3RzdHJhcCA0IG9ubHlcclxuICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBCb290c3RyYXAgMyB3aWwgdGhyb3cgYW4gZXJyb3Igc2luY2UgdGhhdCBtZXRob2QgZG9lc24ndCBleGlzdCwgd2UgY2FuIHNhZmVseSBkaXNyZWdhcmQgaXRcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIHRoaXMuX2RvbUVsZW1lbnQub24oJ2hpZGRlbi5icy5kcm9wZG93bicsICgpID0+IHRoaXMuZHJvcENvbnRhaW5lclNob3coKSk7XHJcblxyXG4gICAgICAgICAgICAgIC8vIGhpZGUgZHJvcGRvd24gbWVudSBvbiBncmlkIHNjcm9sbFxyXG4gICAgICAgICAgICAgIHRoaXMuZ3JpZFZpZXdwb3J0Lm9uKCdzY3JvbGwnLCAoKSA9PiB0aGlzLmRpc3Bvc2UoKSk7XHJcblxyXG4gICAgICAgICAgICAgIC8vIGhpZGUgb24gZHJvcGRvd24gY2xpY2tcclxuICAgICAgICAgICAgICB0aGlzLl9kb21FbGVtZW50Lm9uKCdjbGljaycsICgpID0+IHRoaXMuZGlzcG9zZSgpKTtcclxuICAgICAgICAgICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ContainerService {
4
+ constructor() {
5
+ this.dependencies = [];
6
+ }
7
+ get(key) {
8
+ const dependency = this.dependencies.find(dep => dep.key === key);
9
+ if (dependency?.instance) {
10
+ return dependency.instance;
11
+ }
12
+ return null;
13
+ }
14
+ registerInstance(key, instance) {
15
+ const dependency = this.dependencies.some(dep => dep.key === key);
16
+ if (!dependency) {
17
+ this.dependencies.push({ key, instance });
18
+ }
19
+ }
20
+ }
21
+ ContainerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: ContainerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
22
+ ContainerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: ContainerService });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: ContainerService, decorators: [{
24
+ type: Injectable
25
+ }], ctorParameters: function () { return []; } });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYW5ndWxhci1zbGlja2dyaWQvc2VydmljZXMvY29udGFpbmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFJM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUczQjtRQUZBLGlCQUFZLEdBQXdCLEVBQUUsQ0FBQztJQUV2QixDQUFDO0lBRWpCLEdBQUcsQ0FBVSxHQUFXO1FBQ3RCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNsRSxJQUFJLFVBQVUsRUFBRSxRQUFRLEVBQUU7WUFDeEIsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDO1NBQzVCO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsR0FBVyxFQUFFLFFBQWE7UUFDekMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDZixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQzNDO0lBQ0gsQ0FBQzs7NkdBbEJVLGdCQUFnQjtpSEFBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRhaW5lckluc3RhbmNlLCBDb250YWluZXJTZXJ2aWNlIGFzIFVuaXZlcnNhbENvbnRhaW5lclNlcnZpY2UgfSBmcm9tICdAc2xpY2tncmlkLXVuaXZlcnNhbC9jb21tb24nO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ29udGFpbmVyU2VydmljZSBpbXBsZW1lbnRzIFVuaXZlcnNhbENvbnRhaW5lclNlcnZpY2Uge1xyXG4gIGRlcGVuZGVuY2llczogQ29udGFpbmVySW5zdGFuY2VbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBnZXQ8VCA9IGFueT4oa2V5OiBzdHJpbmcpOiBUIHwgbnVsbCB7XHJcbiAgICBjb25zdCBkZXBlbmRlbmN5ID0gdGhpcy5kZXBlbmRlbmNpZXMuZmluZChkZXAgPT4gZGVwLmtleSA9PT0ga2V5KTtcclxuICAgIGlmIChkZXBlbmRlbmN5Py5pbnN0YW5jZSkge1xyXG4gICAgICByZXR1cm4gZGVwZW5kZW5jeS5pbnN0YW5jZTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJJbnN0YW5jZShrZXk6IHN0cmluZywgaW5zdGFuY2U6IGFueSkge1xyXG4gICAgY29uc3QgZGVwZW5kZW5jeSA9IHRoaXMuZGVwZW5kZW5jaWVzLnNvbWUoZGVwID0+IGRlcC5rZXkgPT09IGtleSk7XHJcbiAgICBpZiAoIWRlcGVuZGVuY3kpIHtcclxuICAgICAgdGhpcy5kZXBlbmRlbmNpZXMucHVzaCh7IGtleSwgaW5zdGFuY2UgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==