@skyux/data-manager 7.0.0-beta.12 → 7.0.0-beta.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/documentation.json +473 -584
- package/esm2020/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.mjs +51 -45
- package/esm2020/lib/modules/data-manager/data-manager-filter-context.mjs +2 -1
- package/esm2020/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.mjs +95 -76
- package/esm2020/lib/modules/data-manager/data-manager.component.mjs +39 -31
- package/esm2020/lib/modules/data-manager/data-manager.service.mjs +66 -61
- package/esm2020/lib/modules/data-manager/data-view.component.mjs +18 -21
- package/esm2020/lib/modules/data-manager/models/data-manager-config.mjs +1 -1
- package/esm2020/lib/modules/data-manager/models/data-manager-filter-data.mjs +1 -1
- package/esm2020/lib/modules/data-manager/models/data-manager-state-options.mjs +1 -1
- package/esm2020/lib/modules/data-manager/models/data-manager-state.mjs +1 -1
- package/esm2020/lib/modules/data-manager/models/data-view-state-options.mjs +1 -1
- package/esm2020/lib/modules/data-manager/models/data-view-state.mjs +1 -1
- package/fesm2015/skyux-data-manager.mjs +265 -228
- package/fesm2015/skyux-data-manager.mjs.map +1 -1
- package/fesm2020/skyux-data-manager.mjs +259 -227
- package/fesm2020/skyux-data-manager.mjs.map +1 -1
- package/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.d.ts +1 -3
- package/lib/modules/data-manager/data-manager-filter-context.d.ts +1 -1
- package/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.d.ts +8 -18
- package/lib/modules/data-manager/data-manager.component.d.ts +2 -9
- package/lib/modules/data-manager/data-manager.service.d.ts +3 -14
- package/lib/modules/data-manager/data-view.component.d.ts +6 -10
- package/lib/modules/data-manager/models/data-manager-state.d.ts +6 -6
- package/package.json +9 -9
@@ -20,6 +20,7 @@ import * as i3 from '@skyux/modals';
|
|
20
20
|
import { SkyModalModule } from '@skyux/modals';
|
21
21
|
import * as i11 from '@skyux/i18n';
|
22
22
|
import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
|
23
|
+
import { __classPrivateFieldSet, __classPrivateFieldGet } from 'tslib';
|
23
24
|
import { BehaviorSubject, ReplaySubject, Subject } from 'rxjs';
|
24
25
|
import { take, takeUntil, filter, map, distinctUntilChanged } from 'rxjs/operators';
|
25
26
|
|
@@ -191,6 +192,7 @@ class SkyDataManagerStateChange {
|
|
191
192
|
}
|
192
193
|
}
|
193
194
|
|
195
|
+
var _SkyDataManagerService_instances, _SkyDataManagerService_activeViewId, _SkyDataManagerService_dataManagerConfig, _SkyDataManagerService_views, _SkyDataManagerService_dataStateChange, _SkyDataManagerService_isInitialized, _SkyDataManagerService_ngUnsubscribe, _SkyDataManagerService_initSource, _SkyDataManagerService_uiConfigService, _SkyDataManagerService_filterDataStateProperties, _SkyDataManagerService_getDefaultStateComparator;
|
194
196
|
/**
|
195
197
|
* The data manager service provides ways for data views, toolbar items, and more to stay up to date
|
196
198
|
* with the active view ID, data manager config, registered views and their configs, and data state.
|
@@ -201,23 +203,25 @@ class SkyDataManagerStateChange {
|
|
201
203
|
*/
|
202
204
|
class SkyDataManagerService {
|
203
205
|
constructor(uiConfigService) {
|
204
|
-
this
|
206
|
+
_SkyDataManagerService_instances.add(this);
|
205
207
|
this.viewkeeperClasses = new BehaviorSubject({});
|
206
|
-
this
|
207
|
-
this
|
208
|
-
this
|
209
|
-
this
|
210
|
-
this
|
211
|
-
this
|
212
|
-
this
|
208
|
+
_SkyDataManagerService_activeViewId.set(this, new ReplaySubject(1));
|
209
|
+
_SkyDataManagerService_dataManagerConfig.set(this, new BehaviorSubject({}));
|
210
|
+
_SkyDataManagerService_views.set(this, new BehaviorSubject([]));
|
211
|
+
_SkyDataManagerService_dataStateChange.set(this, new ReplaySubject(1));
|
212
|
+
_SkyDataManagerService_isInitialized.set(this, void 0);
|
213
|
+
_SkyDataManagerService_ngUnsubscribe.set(this, new Subject());
|
214
|
+
_SkyDataManagerService_initSource.set(this, 'dataManagerServiceInit');
|
215
|
+
_SkyDataManagerService_uiConfigService.set(this, void 0);
|
216
|
+
__classPrivateFieldSet(this, _SkyDataManagerService_uiConfigService, uiConfigService, "f");
|
213
217
|
}
|
214
218
|
ngOnDestroy() {
|
215
|
-
this.
|
216
|
-
this.
|
217
|
-
this.
|
218
|
-
this.
|
219
|
-
this.
|
220
|
-
this.
|
219
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_activeViewId, "f").complete();
|
220
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_dataManagerConfig, "f").complete();
|
221
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_views, "f").complete();
|
222
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_dataStateChange, "f").complete();
|
223
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_ngUnsubscribe, "f").next();
|
224
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_ngUnsubscribe, "f").complete();
|
221
225
|
}
|
222
226
|
/**
|
223
227
|
* Initializes the data manager with the given settings and sets `isInitialized` to `true`.
|
@@ -227,32 +231,33 @@ class SkyDataManagerService {
|
|
227
231
|
* and saves any state changes to the service.
|
228
232
|
*/
|
229
233
|
initDataManager(args) {
|
230
|
-
if (this
|
234
|
+
if (__classPrivateFieldGet(this, _SkyDataManagerService_isInitialized, "f")) {
|
231
235
|
console.warn('This data manager instance has already been initialized.');
|
232
236
|
return;
|
233
237
|
}
|
238
|
+
__classPrivateFieldSet(this, _SkyDataManagerService_isInitialized, true, "f");
|
234
239
|
const defaultDataState = args.defaultDataState;
|
235
240
|
const settingsKey = args.settingsKey;
|
236
241
|
this.updateActiveViewId(args.activeViewId);
|
237
242
|
this.updateDataManagerConfig(args.dataManagerConfig);
|
238
243
|
if (settingsKey) {
|
239
|
-
this
|
244
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_uiConfigService, "f")
|
240
245
|
.getConfig(settingsKey, defaultDataState.getStateOptions())
|
241
246
|
.pipe(take(1))
|
242
247
|
.subscribe((config) => {
|
243
|
-
this.updateDataState(new SkyDataManagerState(config), this
|
248
|
+
this.updateDataState(new SkyDataManagerState(config), __classPrivateFieldGet(this, _SkyDataManagerService_initSource, "f"));
|
244
249
|
});
|
245
250
|
}
|
246
251
|
else {
|
247
|
-
this.updateDataState(defaultDataState, this
|
252
|
+
this.updateDataState(defaultDataState, __classPrivateFieldGet(this, _SkyDataManagerService_initSource, "f"));
|
248
253
|
}
|
249
254
|
if (settingsKey) {
|
250
|
-
this.getDataStateUpdates(this
|
251
|
-
.pipe(takeUntil(this
|
255
|
+
this.getDataStateUpdates(__classPrivateFieldGet(this, _SkyDataManagerService_initSource, "f"))
|
256
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerService_ngUnsubscribe, "f")))
|
252
257
|
.subscribe((state) => {
|
253
|
-
this
|
258
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_uiConfigService, "f")
|
254
259
|
.setConfig(settingsKey, state.getStateOptions())
|
255
|
-
.pipe(takeUntil(this
|
260
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerService_ngUnsubscribe, "f")))
|
256
261
|
.subscribe(
|
257
262
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
258
263
|
() => { }, (err) => {
|
@@ -267,19 +272,19 @@ class SkyDataManagerService {
|
|
267
272
|
* @param viewConfig The SkyDataViewConfig settings for the view being registered.
|
268
273
|
*/
|
269
274
|
initDataView(viewConfig) {
|
270
|
-
const currentViews = this.
|
275
|
+
const currentViews = __classPrivateFieldGet(this, _SkyDataManagerService_views, "f").value;
|
271
276
|
if (this.getViewById(viewConfig.id)) {
|
272
277
|
console.warn(`A data manager view with the id ${viewConfig.id} has already been initialized.`);
|
273
278
|
return;
|
274
279
|
}
|
275
280
|
currentViews.push(viewConfig);
|
276
|
-
this.
|
281
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_views, "f").next(currentViews);
|
277
282
|
// When the initial activeViewId is set there are no views registered. We have to re-emit
|
278
283
|
// the activeId so the newly registered view is notified that it is active.
|
279
|
-
this.
|
280
|
-
this.
|
284
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_activeViewId, "f").pipe(take(1)).subscribe((id) => {
|
285
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_activeViewId, "f").next(id);
|
281
286
|
});
|
282
|
-
this
|
287
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_dataStateChange, "f")
|
283
288
|
.pipe(take(1))
|
284
289
|
.subscribe((change) => {
|
285
290
|
const dataState = change.dataState;
|
@@ -303,20 +308,20 @@ class SkyDataManagerService {
|
|
303
308
|
newViewState.displayedColumnIds = displayedColumnIds;
|
304
309
|
}
|
305
310
|
const newDataState = dataState.addOrUpdateView(viewConfig.id, newViewState);
|
306
|
-
this.updateDataState(newDataState, this
|
311
|
+
this.updateDataState(newDataState, __classPrivateFieldGet(this, _SkyDataManagerService_initSource, "f"));
|
307
312
|
}
|
308
313
|
else {
|
309
314
|
const currentAvailableColumnIds = viewConfig.columnOptions?.map((columnOptions) => {
|
310
315
|
return columnOptions.id;
|
311
|
-
});
|
316
|
+
}) || [];
|
312
317
|
// Ensure that the view state's available columns match with the view config. Also,
|
313
318
|
// add new columns to the `displayedColumnIds` as long as they are not `initialHide`.
|
314
319
|
// We only add columns to `displayedColumnsIds` if we had previously tracked
|
315
320
|
// `columnIds` to avoid breaking changes.
|
316
321
|
if (currentViewState.columnIds.length > 0) {
|
317
|
-
let newColumnIds = currentAvailableColumnIds
|
318
|
-
newColumnIds = newColumnIds
|
319
|
-
return viewConfig.columnOptions
|
322
|
+
let newColumnIds = currentAvailableColumnIds?.filter((id) => currentViewState.columnIds.indexOf(id) < 0);
|
323
|
+
newColumnIds = newColumnIds?.filter((columnId) => {
|
324
|
+
return viewConfig.columnOptions?.find((columnOption) => columnOption.id === columnId && !columnOption.initialHide);
|
320
325
|
});
|
321
326
|
// Add the column IDs that now exist to the data manager state both as available
|
322
327
|
// and as shown.
|
@@ -327,7 +332,7 @@ class SkyDataManagerService {
|
|
327
332
|
// and as shown.
|
328
333
|
currentViewState.columnIds = currentAvailableColumnIds;
|
329
334
|
const newDataState = dataState.addOrUpdateView(viewConfig.id, currentViewState);
|
330
|
-
this.updateDataState(newDataState, this
|
335
|
+
this.updateDataState(newDataState, __classPrivateFieldGet(this, _SkyDataManagerService_initSource, "f"));
|
331
336
|
}
|
332
337
|
})
|
333
338
|
.unsubscribe();
|
@@ -342,12 +347,12 @@ class SkyDataManagerService {
|
|
342
347
|
getDataStateUpdates(sourceId, updateFilter) {
|
343
348
|
// filter out events from the provided source and emit just the dataState
|
344
349
|
if (updateFilter) {
|
345
|
-
return this.
|
350
|
+
return __classPrivateFieldGet(this, _SkyDataManagerService_dataStateChange, "f").pipe(filter((stateChange) => sourceId !== stateChange.source), map((stateChange) => stateChange.dataState), updateFilter.comparator
|
346
351
|
? distinctUntilChanged(updateFilter.comparator)
|
347
|
-
: distinctUntilChanged(this.
|
352
|
+
: distinctUntilChanged(__classPrivateFieldGet(this, _SkyDataManagerService_instances, "m", _SkyDataManagerService_getDefaultStateComparator).call(this, updateFilter.properties)));
|
348
353
|
}
|
349
354
|
else {
|
350
|
-
return this.
|
355
|
+
return __classPrivateFieldGet(this, _SkyDataManagerService_dataStateChange, "f").pipe(filter((stateChange) => sourceId !== stateChange.source), map((stateChange) => stateChange.dataState));
|
351
356
|
}
|
352
357
|
}
|
353
358
|
/**
|
@@ -360,52 +365,52 @@ class SkyDataManagerService {
|
|
360
365
|
updateDataState(state, sourceId) {
|
361
366
|
const newState = new SkyDataManagerState(state.getStateOptions());
|
362
367
|
const newStateChange = new SkyDataManagerStateChange(newState, sourceId);
|
363
|
-
this.
|
368
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_dataStateChange, "f").next(newStateChange);
|
364
369
|
}
|
365
370
|
/**
|
366
371
|
* Returns the current `SkyDataManagerConfig`.
|
367
372
|
*/
|
368
373
|
getCurrentDataManagerConfig() {
|
369
|
-
return this.
|
374
|
+
return __classPrivateFieldGet(this, _SkyDataManagerService_dataManagerConfig, "f").value;
|
370
375
|
}
|
371
376
|
/**
|
372
377
|
* Returns an observable of data manager config changes that views and other data manager entities can subscribe to.
|
373
378
|
*/
|
374
379
|
getDataManagerConfigUpdates() {
|
375
|
-
return this
|
380
|
+
return __classPrivateFieldGet(this, _SkyDataManagerService_dataManagerConfig, "f");
|
376
381
|
}
|
377
382
|
/**
|
378
383
|
* Updates the data manager config and emits a new value to entities subscribed to data config changes.
|
379
384
|
* @param value The new `SkyDataManagerConfig` value.
|
380
385
|
*/
|
381
386
|
updateDataManagerConfig(value) {
|
382
|
-
this.
|
387
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_dataManagerConfig, "f").next(value);
|
383
388
|
}
|
384
389
|
/**
|
385
390
|
* Returns an observable of data view config changes that views and other data manager entities can subscribe to.
|
386
391
|
*/
|
387
392
|
getDataViewsUpdates() {
|
388
|
-
return this
|
393
|
+
return __classPrivateFieldGet(this, _SkyDataManagerService_views, "f");
|
389
394
|
}
|
390
395
|
/**
|
391
396
|
* Returns an observable of the active view ID that views and other data manager entities can subscribe to.
|
392
397
|
*/
|
393
398
|
getActiveViewIdUpdates() {
|
394
|
-
return this
|
399
|
+
return __classPrivateFieldGet(this, _SkyDataManagerService_activeViewId, "f");
|
395
400
|
}
|
396
401
|
/**
|
397
402
|
* Updates the active view ID. The data manager changes the displayed view.
|
398
403
|
* @param id The new active view ID.
|
399
404
|
*/
|
400
405
|
updateActiveViewId(id) {
|
401
|
-
this.
|
406
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_activeViewId, "f").next(id);
|
402
407
|
}
|
403
408
|
/**
|
404
409
|
* Returns the `SkyDataViewConfig` for the given view ID.
|
405
410
|
* @param viewId The ID of the view config to get.
|
406
411
|
*/
|
407
412
|
getViewById(viewId) {
|
408
|
-
const currentViews = this.
|
413
|
+
const currentViews = __classPrivateFieldGet(this, _SkyDataManagerService_views, "f").value;
|
409
414
|
const viewConfig = currentViews.find((view) => view.id === viewId);
|
410
415
|
return viewConfig;
|
411
416
|
}
|
@@ -416,14 +421,14 @@ class SkyDataManagerService {
|
|
416
421
|
* @param view The new `SkyDataViewConfig` containing all properties.
|
417
422
|
*/
|
418
423
|
updateViewConfig(view) {
|
419
|
-
const currentViews = this.
|
424
|
+
const currentViews = __classPrivateFieldGet(this, _SkyDataManagerService_views, "f").value;
|
420
425
|
const existingViewIndex = currentViews.findIndex((currentView) => currentView.id === view.id);
|
421
426
|
if (existingViewIndex === -1) {
|
422
427
|
console.error('A view with the id {id} does not exist.', view.id);
|
423
428
|
}
|
424
429
|
else {
|
425
430
|
currentViews[existingViewIndex] = view;
|
426
|
-
this.
|
431
|
+
__classPrivateFieldGet(this, _SkyDataManagerService_views, "f").next(currentViews);
|
427
432
|
}
|
428
433
|
}
|
429
434
|
/**
|
@@ -434,25 +439,25 @@ class SkyDataManagerService {
|
|
434
439
|
viewkeeperClasses[viewId] = classes;
|
435
440
|
this.viewkeeperClasses.next(viewkeeperClasses);
|
436
441
|
}
|
437
|
-
|
438
|
-
|
439
|
-
|
442
|
+
}
|
443
|
+
_SkyDataManagerService_activeViewId = new WeakMap(), _SkyDataManagerService_dataManagerConfig = new WeakMap(), _SkyDataManagerService_views = new WeakMap(), _SkyDataManagerService_dataStateChange = new WeakMap(), _SkyDataManagerService_isInitialized = new WeakMap(), _SkyDataManagerService_ngUnsubscribe = new WeakMap(), _SkyDataManagerService_initSource = new WeakMap(), _SkyDataManagerService_uiConfigService = new WeakMap(), _SkyDataManagerService_instances = new WeakSet(), _SkyDataManagerService_filterDataStateProperties = function _SkyDataManagerService_filterDataStateProperties(state, properties) {
|
444
|
+
const stateProperties = state.getStateOptions();
|
445
|
+
const filteredStateProperties = {};
|
446
|
+
if (properties) {
|
440
447
|
for (const property of properties) {
|
441
|
-
|
442
|
-
if (Object.prototype.hasOwnProperty.call(stateProperties, property)) {
|
448
|
+
if (property in stateProperties) {
|
443
449
|
filteredStateProperties[property] = stateProperties[property];
|
444
450
|
}
|
445
451
|
}
|
446
|
-
return filteredStateProperties;
|
447
452
|
}
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
}
|
455
|
-
}
|
453
|
+
return filteredStateProperties;
|
454
|
+
}, _SkyDataManagerService_getDefaultStateComparator = function _SkyDataManagerService_getDefaultStateComparator(properties) {
|
455
|
+
return (state1, state2) => {
|
456
|
+
const filteredState1 = __classPrivateFieldGet(this, _SkyDataManagerService_instances, "m", _SkyDataManagerService_filterDataStateProperties).call(this, state1, properties);
|
457
|
+
const filteredState2 = __classPrivateFieldGet(this, _SkyDataManagerService_instances, "m", _SkyDataManagerService_filterDataStateProperties).call(this, state2, properties);
|
458
|
+
return JSON.stringify(filteredState1) === JSON.stringify(filteredState2);
|
459
|
+
};
|
460
|
+
};
|
456
461
|
SkyDataManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerService, deps: [{ token: i1.SkyUIConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
|
457
462
|
SkyDataManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerService });
|
458
463
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerService, decorators: [{
|
@@ -483,69 +488,76 @@ class SkyDataManagerColumnPickerContext {
|
|
483
488
|
}
|
484
489
|
}
|
485
490
|
|
491
|
+
var _SkyDataManagerComponent_activeViewId, _SkyDataManagerComponent_allViewkeeperClasses, _SkyDataManagerComponent_ngUnsubscribe, _SkyDataManagerComponent_sourceId, _SkyDataManagerComponent_changeDetection, _SkyDataManagerComponent_dataManagerService, _SkyDataManagerComponent__isInitialized, _SkyDataManagerComponent__currentViewkeeperClasses;
|
492
|
+
const VIEWKEEPER_CLASSES_DEFAULT = ['.sky-data-manager-toolbar'];
|
486
493
|
/**
|
487
494
|
* The top-level data manager component. Provide `SkyDataManagerService` at this level.
|
488
495
|
*/
|
489
496
|
class SkyDataManagerComponent {
|
490
497
|
constructor(changeDetection, dataManagerService) {
|
491
|
-
this.changeDetection = changeDetection;
|
492
|
-
this.dataManagerService = dataManagerService;
|
493
498
|
this.backToTopController = new Subject();
|
494
499
|
this.backToTopOptions = {
|
495
500
|
buttonHidden: true,
|
496
501
|
};
|
497
|
-
this
|
498
|
-
this
|
499
|
-
this
|
500
|
-
this
|
502
|
+
_SkyDataManagerComponent_activeViewId.set(this, void 0);
|
503
|
+
_SkyDataManagerComponent_allViewkeeperClasses.set(this, {});
|
504
|
+
_SkyDataManagerComponent_ngUnsubscribe.set(this, new Subject());
|
505
|
+
_SkyDataManagerComponent_sourceId.set(this, 'dataManagerComponent');
|
506
|
+
_SkyDataManagerComponent_changeDetection.set(this, void 0);
|
507
|
+
_SkyDataManagerComponent_dataManagerService.set(this, void 0);
|
508
|
+
_SkyDataManagerComponent__isInitialized.set(this, false);
|
509
|
+
_SkyDataManagerComponent__currentViewkeeperClasses.set(this, VIEWKEEPER_CLASSES_DEFAULT);
|
510
|
+
__classPrivateFieldSet(this, _SkyDataManagerComponent_changeDetection, changeDetection, "f");
|
511
|
+
__classPrivateFieldSet(this, _SkyDataManagerComponent_dataManagerService, dataManagerService, "f");
|
501
512
|
}
|
502
513
|
get currentViewkeeperClasses() {
|
503
|
-
|
504
|
-
let allClasses = dataManagerClasses;
|
505
|
-
if (this._currentViewkeeperClasses) {
|
506
|
-
allClasses = dataManagerClasses.concat(this._currentViewkeeperClasses);
|
507
|
-
}
|
508
|
-
return allClasses;
|
514
|
+
return __classPrivateFieldGet(this, _SkyDataManagerComponent__currentViewkeeperClasses, "f");
|
509
515
|
}
|
510
516
|
set currentViewkeeperClasses(value) {
|
511
|
-
this
|
512
|
-
|
517
|
+
__classPrivateFieldSet(this, _SkyDataManagerComponent__currentViewkeeperClasses, [
|
518
|
+
...VIEWKEEPER_CLASSES_DEFAULT,
|
519
|
+
...(value || []),
|
520
|
+
], "f");
|
521
|
+
__classPrivateFieldGet(this, _SkyDataManagerComponent_changeDetection, "f").markForCheck();
|
513
522
|
}
|
514
523
|
get isInitialized() {
|
515
|
-
return this
|
524
|
+
return __classPrivateFieldGet(this, _SkyDataManagerComponent__isInitialized, "f");
|
516
525
|
}
|
517
526
|
set isInitialized(value) {
|
518
|
-
this
|
519
|
-
this.
|
527
|
+
__classPrivateFieldSet(this, _SkyDataManagerComponent__isInitialized, value, "f");
|
528
|
+
__classPrivateFieldGet(this, _SkyDataManagerComponent_changeDetection, "f").markForCheck();
|
520
529
|
}
|
521
530
|
ngOnInit() {
|
522
|
-
this
|
523
|
-
.getDataStateUpdates(this
|
524
|
-
.pipe(takeUntil(this
|
531
|
+
__classPrivateFieldGet(this, _SkyDataManagerComponent_dataManagerService, "f")
|
532
|
+
.getDataStateUpdates(__classPrivateFieldGet(this, _SkyDataManagerComponent_sourceId, "f"))
|
533
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerComponent_ngUnsubscribe, "f")))
|
525
534
|
.subscribe(() => (this.isInitialized = true));
|
526
|
-
this.
|
527
|
-
.pipe(takeUntil(this
|
535
|
+
__classPrivateFieldGet(this, _SkyDataManagerComponent_dataManagerService, "f").viewkeeperClasses
|
536
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerComponent_ngUnsubscribe, "f")))
|
528
537
|
.subscribe((classes) => {
|
529
|
-
this
|
530
|
-
this.currentViewkeeperClasses =
|
538
|
+
__classPrivateFieldSet(this, _SkyDataManagerComponent_allViewkeeperClasses, classes, "f");
|
539
|
+
this.currentViewkeeperClasses = __classPrivateFieldGet(this, _SkyDataManagerComponent_activeViewId, "f")
|
540
|
+
? classes[__classPrivateFieldGet(this, _SkyDataManagerComponent_activeViewId, "f")]
|
541
|
+
: undefined;
|
531
542
|
});
|
532
|
-
this
|
543
|
+
__classPrivateFieldGet(this, _SkyDataManagerComponent_dataManagerService, "f")
|
533
544
|
.getActiveViewIdUpdates()
|
534
|
-
.pipe(takeUntil(this
|
545
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerComponent_ngUnsubscribe, "f")))
|
535
546
|
.subscribe((activeViewId) => {
|
536
|
-
this
|
547
|
+
__classPrivateFieldSet(this, _SkyDataManagerComponent_activeViewId, activeViewId, "f");
|
537
548
|
this.backToTopController.next({
|
538
549
|
type: SkyBackToTopMessageType.BackToTop,
|
539
550
|
});
|
540
551
|
this.currentViewkeeperClasses =
|
541
|
-
this
|
552
|
+
__classPrivateFieldGet(this, _SkyDataManagerComponent_allViewkeeperClasses, "f")[__classPrivateFieldGet(this, _SkyDataManagerComponent_activeViewId, "f")];
|
542
553
|
});
|
543
554
|
}
|
544
555
|
ngOnDestroy() {
|
545
|
-
this.
|
546
|
-
this.
|
556
|
+
__classPrivateFieldGet(this, _SkyDataManagerComponent_ngUnsubscribe, "f").next();
|
557
|
+
__classPrivateFieldGet(this, _SkyDataManagerComponent_ngUnsubscribe, "f").complete();
|
547
558
|
}
|
548
559
|
}
|
560
|
+
_SkyDataManagerComponent_activeViewId = new WeakMap(), _SkyDataManagerComponent_allViewkeeperClasses = new WeakMap(), _SkyDataManagerComponent_ngUnsubscribe = new WeakMap(), _SkyDataManagerComponent_sourceId = new WeakMap(), _SkyDataManagerComponent_changeDetection = new WeakMap(), _SkyDataManagerComponent_dataManagerService = new WeakMap(), _SkyDataManagerComponent__isInitialized = new WeakMap(), _SkyDataManagerComponent__currentViewkeeperClasses = new WeakMap();
|
549
561
|
SkyDataManagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: SkyDataManagerService }], target: i0.ɵɵFactoryTarget.Component });
|
550
562
|
SkyDataManagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyDataManagerComponent, selector: "sky-data-manager", ngImport: i0, template: "<div\n *ngIf=\"isInitialized\"\n class=\"sky-data-manager\"\n [skyBackToTop]=\"backToTopOptions\"\n [skyBackToTopMessageStream]=\"backToTopController\"\n [skyViewkeeper]=\"currentViewkeeperClasses\"\n #dataManager\n>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i10.λ7, selector: "[skyBackToTop]", inputs: ["skyBackToTop", "skyBackToTopMessageStream"] }, { kind: "directive", type: i1.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
551
563
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerComponent, decorators: [{
|
@@ -567,12 +579,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
567
579
|
type: Injectable
|
568
580
|
}] });
|
569
581
|
|
582
|
+
// TODO: In a future breaking change convert this to an interface
|
570
583
|
/**
|
571
584
|
* Sets the state of the filters.
|
572
585
|
*/
|
573
586
|
class SkyDataManagerFilterModalContext {
|
574
587
|
}
|
575
588
|
|
589
|
+
var _SkyDataManagerToolbarComponent_ngUnsubscribe, _SkyDataManagerToolbarComponent_changeDetector, _SkyDataManagerToolbarComponent_dataManagerService, _SkyDataManagerToolbarComponent_modalService, _SkyDataManagerToolbarComponent_columnPickerService, _SkyDataManagerToolbarComponent__source, _SkyDataManagerToolbarComponent__activeView, _SkyDataManagerToolbarComponent__dataManagerConfig, _SkyDataManagerToolbarComponent__dataState, _SkyDataManagerToolbarComponent__views;
|
576
590
|
/**
|
577
591
|
* Renders a `sky-toolbar` with the contents specified by the active view's `SkyDataViewConfig`
|
578
592
|
* and the `SkyDataManagerToolbarLeftItemsComponent`, `SkyDataManagerToolbarRightItemsComponent`,
|
@@ -580,102 +594,111 @@ class SkyDataManagerFilterModalContext {
|
|
580
594
|
*/
|
581
595
|
class SkyDataManagerToolbarComponent {
|
582
596
|
constructor(changeDetector, dataManagerService, modalService, columnPickerService) {
|
583
|
-
this
|
584
|
-
this
|
585
|
-
this
|
586
|
-
this
|
597
|
+
_SkyDataManagerToolbarComponent_ngUnsubscribe.set(this, new Subject());
|
598
|
+
_SkyDataManagerToolbarComponent_changeDetector.set(this, void 0);
|
599
|
+
_SkyDataManagerToolbarComponent_dataManagerService.set(this, void 0);
|
600
|
+
_SkyDataManagerToolbarComponent_modalService.set(this, void 0);
|
601
|
+
_SkyDataManagerToolbarComponent_columnPickerService.set(this, void 0);
|
587
602
|
// the source to provide for data state changes
|
588
|
-
this
|
589
|
-
this
|
590
|
-
this
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
603
|
+
_SkyDataManagerToolbarComponent__source.set(this, 'toolbar');
|
604
|
+
_SkyDataManagerToolbarComponent__activeView.set(this, void 0);
|
605
|
+
_SkyDataManagerToolbarComponent__dataManagerConfig.set(this, void 0);
|
606
|
+
_SkyDataManagerToolbarComponent__dataState.set(this, void 0);
|
607
|
+
_SkyDataManagerToolbarComponent__views.set(this, []);
|
608
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent_changeDetector, changeDetector, "f");
|
609
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent_dataManagerService, dataManagerService, "f");
|
610
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent_modalService, modalService, "f");
|
611
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent_columnPickerService, columnPickerService, "f");
|
595
612
|
}
|
596
613
|
get activeView() {
|
597
|
-
return this
|
614
|
+
return __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__activeView, "f");
|
598
615
|
}
|
599
616
|
set activeView(value) {
|
600
|
-
this
|
601
|
-
this.
|
617
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent__activeView, value, "f");
|
618
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_changeDetector, "f").markForCheck();
|
602
619
|
}
|
603
620
|
get dataManagerConfig() {
|
604
|
-
return this
|
621
|
+
return __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__dataManagerConfig, "f");
|
605
622
|
}
|
606
623
|
set dataManagerConfig(value) {
|
607
|
-
this
|
608
|
-
this.
|
624
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent__dataManagerConfig, value, "f");
|
625
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_changeDetector, "f").markForCheck();
|
609
626
|
}
|
610
627
|
get dataState() {
|
611
|
-
return this
|
628
|
+
return __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__dataState, "f");
|
612
629
|
}
|
613
630
|
set dataState(value) {
|
614
|
-
this
|
615
|
-
|
631
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent__dataState, value, "f");
|
632
|
+
if (value) {
|
633
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f").updateDataState(value, __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__source, "f"));
|
634
|
+
}
|
616
635
|
}
|
617
636
|
get views() {
|
618
|
-
return this
|
637
|
+
return __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__views, "f");
|
619
638
|
}
|
620
639
|
set views(value) {
|
621
|
-
this
|
622
|
-
this.
|
640
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent__views, value, "f");
|
641
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_changeDetector, "f").markForCheck();
|
623
642
|
}
|
624
643
|
ngOnInit() {
|
625
|
-
this
|
644
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f")
|
626
645
|
.getActiveViewIdUpdates()
|
627
|
-
.pipe(takeUntil(this
|
646
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_ngUnsubscribe, "f")))
|
628
647
|
.subscribe((activeViewId) => {
|
629
648
|
/* istanbul ignore else */
|
630
649
|
if (activeViewId) {
|
631
|
-
this.activeView = this.
|
632
|
-
this.
|
650
|
+
this.activeView = __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f").getViewById(activeViewId);
|
651
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_changeDetector, "f").markForCheck();
|
633
652
|
}
|
634
653
|
});
|
635
|
-
this
|
654
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f")
|
636
655
|
.getDataViewsUpdates()
|
637
|
-
.pipe(takeUntil(this
|
656
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_ngUnsubscribe, "f")))
|
638
657
|
.subscribe((views) => {
|
639
658
|
this.views = views;
|
640
659
|
if (this.activeView) {
|
641
|
-
this.activeView = this.
|
660
|
+
this.activeView = __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f").getViewById(this.activeView.id);
|
642
661
|
}
|
643
|
-
this.
|
662
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_changeDetector, "f").markForCheck();
|
644
663
|
});
|
645
|
-
this
|
646
|
-
.getDataStateUpdates(this
|
647
|
-
.pipe(takeUntil(this
|
664
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f")
|
665
|
+
.getDataStateUpdates(__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__source, "f"))
|
666
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_ngUnsubscribe, "f")))
|
648
667
|
.subscribe((dataState) => {
|
649
|
-
this
|
668
|
+
__classPrivateFieldSet(this, _SkyDataManagerToolbarComponent__dataState, dataState, "f");
|
650
669
|
this.onlyShowSelected = dataState.onlyShowSelected;
|
651
|
-
this.
|
670
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_changeDetector, "f").markForCheck();
|
652
671
|
});
|
653
|
-
this
|
672
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f")
|
654
673
|
.getDataManagerConfigUpdates()
|
655
|
-
.pipe(takeUntil(this
|
674
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_ngUnsubscribe, "f")))
|
656
675
|
.subscribe((config) => {
|
657
676
|
this.dataManagerConfig = config;
|
658
677
|
});
|
659
678
|
}
|
660
679
|
ngOnDestroy() {
|
661
|
-
this.
|
662
|
-
this.
|
680
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_ngUnsubscribe, "f").next();
|
681
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_ngUnsubscribe, "f").complete();
|
663
682
|
}
|
664
683
|
sortSelected(sortOption) {
|
665
|
-
this.dataState
|
666
|
-
|
684
|
+
if (this.dataState) {
|
685
|
+
this.dataState.activeSortOption = sortOption;
|
686
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f").updateDataState(this.dataState, __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__source, "f"));
|
687
|
+
}
|
667
688
|
}
|
668
689
|
onViewChange(viewId) {
|
669
|
-
this.
|
690
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f").updateActiveViewId(viewId);
|
670
691
|
}
|
671
692
|
searchApplied(text) {
|
672
|
-
this.dataState
|
673
|
-
|
693
|
+
if (this.dataState) {
|
694
|
+
this.dataState.searchText = text;
|
695
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f").updateDataState(this.dataState, __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__source, "f"));
|
696
|
+
}
|
674
697
|
}
|
675
698
|
filterButtonClicked() {
|
676
699
|
const context = new SkyDataManagerFilterModalContext();
|
677
700
|
const filterModal = this.dataManagerConfig && this.dataManagerConfig.filterModalComponent;
|
678
|
-
context.filterData = this.dataState
|
701
|
+
context.filterData = this.dataState?.filterData;
|
679
702
|
const options = {
|
680
703
|
providers: [
|
681
704
|
{ provide: SkyDataManagerFilterModalContext, useValue: context },
|
@@ -683,102 +706,107 @@ class SkyDataManagerToolbarComponent {
|
|
683
706
|
size: 'large',
|
684
707
|
};
|
685
708
|
if (filterModal) {
|
686
|
-
const modalInstance = this.
|
709
|
+
const modalInstance = __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_modalService, "f").open(filterModal, options);
|
687
710
|
modalInstance.closed.subscribe((result) => {
|
688
|
-
if (result.reason === 'save') {
|
711
|
+
if (this.dataState && result.reason === 'save') {
|
689
712
|
this.dataState.filterData = result.data;
|
690
|
-
this.
|
713
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f").updateDataState(this.dataState, __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__source, "f"));
|
691
714
|
}
|
692
715
|
});
|
693
716
|
}
|
694
717
|
}
|
695
718
|
openColumnPicker() {
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
|
702
|
-
|
703
|
-
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
|
711
|
-
|
712
|
-
|
713
|
-
|
719
|
+
if (this.dataState && this.activeView && this.activeView.columnOptions) {
|
720
|
+
const viewState = this.dataState.getViewStateById(this.activeView.id);
|
721
|
+
if (viewState) {
|
722
|
+
const context = new SkyDataManagerColumnPickerContext(this.activeView.columnOptions, viewState.displayedColumnIds);
|
723
|
+
if (this.activeView.columnPickerSortStrategy) {
|
724
|
+
context.columnPickerSortStrategy =
|
725
|
+
this.activeView.columnPickerSortStrategy;
|
726
|
+
}
|
727
|
+
const options = {
|
728
|
+
providers: [
|
729
|
+
{ provide: SkyDataManagerColumnPickerContext, useValue: context },
|
730
|
+
],
|
731
|
+
};
|
732
|
+
const modalInstance = __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_modalService, "f").open(__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_columnPickerService, "f").getComponentType(), options);
|
733
|
+
modalInstance.closed.subscribe((result) => {
|
734
|
+
if (result.reason === 'save') {
|
735
|
+
const displayedColumnIds = result.data.map((col) => col.id);
|
736
|
+
viewState.displayedColumnIds = displayedColumnIds;
|
737
|
+
if (this.dataState && this.activeView) {
|
738
|
+
this.dataState = this.dataState.addOrUpdateView(this.activeView.id, viewState);
|
739
|
+
}
|
740
|
+
}
|
741
|
+
});
|
714
742
|
}
|
715
|
-
}
|
743
|
+
}
|
716
744
|
}
|
717
745
|
selectAll() {
|
718
746
|
/* istanbul ignore else */
|
719
|
-
if (this.activeView
|
747
|
+
if (this.activeView?.onSelectAllClick) {
|
720
748
|
this.activeView.onSelectAllClick();
|
721
749
|
}
|
722
750
|
}
|
723
751
|
clearAll() {
|
724
752
|
/* istanbul ignore else */
|
725
|
-
if (this.activeView
|
753
|
+
if (this.activeView?.onClearAllClick) {
|
726
754
|
this.activeView.onClearAllClick();
|
727
755
|
}
|
728
756
|
}
|
729
757
|
onOnlyShowSelected(event) {
|
730
|
-
this.dataState
|
731
|
-
|
758
|
+
if (this.dataState) {
|
759
|
+
this.dataState.onlyShowSelected = !!event.checked;
|
760
|
+
__classPrivateFieldGet(this, _SkyDataManagerToolbarComponent_dataManagerService, "f").updateDataState(this.dataState, __classPrivateFieldGet(this, _SkyDataManagerToolbarComponent__source, "f"));
|
761
|
+
}
|
732
762
|
}
|
733
763
|
}
|
764
|
+
_SkyDataManagerToolbarComponent_ngUnsubscribe = new WeakMap(), _SkyDataManagerToolbarComponent_changeDetector = new WeakMap(), _SkyDataManagerToolbarComponent_dataManagerService = new WeakMap(), _SkyDataManagerToolbarComponent_modalService = new WeakMap(), _SkyDataManagerToolbarComponent_columnPickerService = new WeakMap(), _SkyDataManagerToolbarComponent__source = new WeakMap(), _SkyDataManagerToolbarComponent__activeView = new WeakMap(), _SkyDataManagerToolbarComponent__dataManagerConfig = new WeakMap(), _SkyDataManagerToolbarComponent__dataState = new WeakMap(), _SkyDataManagerToolbarComponent__views = new WeakMap();
|
734
765
|
SkyDataManagerToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerToolbarComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: SkyDataManagerService }, { token: i3.SkyModalService }, { token: SkyDataManagerColumnPickerService }], target: i0.ɵɵFactoryTarget.Component });
|
735
|
-
SkyDataManagerToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar", ngImport: i0, template: "<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"
|
766
|
+
SkyDataManagerToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar", ngImport: i0, template: "<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"!!(dataState?.activeSortOption?.id === item.id)\"\n (itemSelect)=\"sortSelected(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.columnPickerEnabled\">\n <button\n class=\"sky-btn sky-btn-default sky-col-picker-btn\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n [attr.title]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_data_manager_columns_button_title' | skyLibResources }}\n </span>\n </button>\n </sky-toolbar-item>\n\n <ng-content select=\"sky-data-manager-toolbar-left-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.searchEnabled\">\n <sky-search\n [expandMode]=\"activeView?.searchExpandMode\"\n [placeholderText]=\"activeView?.searchPlaceholderText\"\n [searchText]=\"dataState?.searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n\n <sky-toolbar-view-actions>\n <ng-content select=\"sky-data-manager-toolbar-right-item\"></ng-content>\n <sky-radio-group\n *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio\n *ngFor=\"let view of views\"\n [attr.name]=\"view.name\"\n [attr.aria-label]=\"view.name\"\n [icon]=\"view.icon\"\n [value]=\"view.id\"\n [label]=\"view.name\"\n [(ngModel)]=\"activeView.id\"\n (change)=\"onViewChange(view.id)\"\n >\n </sky-radio>\n </sky-radio-group>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-section\"></ng-content>\n </sky-toolbar>\n\n <sky-toolbar\n *ngIf=\"activeView?.multiselectToolbarEnabled\"\n class=\"sky-data-manager-multiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{ 'skyux_data_manager_select_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{ 'skyux_data_manager_clear_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [checked]=\"onlyShowSelected\"\n (change)=\"onOnlyShowSelected($event)\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_data_manager_show_selected_option_title' | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n</div>\n", styles: [":host .sky-col-picker-btn .sky-column-selector-action-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-sm) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-col-picker-btn .sky-column-selector-action-btn-text{display:none}@media (min-width: 768px){:host .sky-col-picker-btn .sky-column-selector-action-btn-text{display:inline}}:host-context(.sky-responsive-container-sm) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-col-picker-btn .sky-column-selector-action-btn-text{display:inline}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { kind: "component", type: i6.λ4, selector: "sky-checkbox-label" }, { kind: "component", type: i5$1.λ1, selector: "sky-filter-button", inputs: ["filterButtonId", "ariaControls", "ariaExpanded", "active", "disabled", "showButtonText"], outputs: ["filterButtonClick"] }, { kind: "component", type: i8.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "component", type: i6.λ13, selector: "sky-radio", inputs: ["checked", "disabled", "id", "label", "labelledBy", "name", "tabindex", "value", "icon", "radioType"], outputs: ["change", "checkedChange", "disabledChange"] }, { kind: "component", type: i6.λ11, selector: "sky-radio-group", inputs: ["ariaLabelledBy", "ariaLabel", "disabled", "name", "required", "value", "tabIndex"] }, { kind: "component", type: i9.SkySearchComponent, selector: "sky-search", inputs: ["searchText", "expandMode", "debounceTime", "disabled", "placeholderText"], outputs: ["searchApply", "searchChange", "searchClear"] }, { kind: "component", type: i5$1.λ14, selector: "sky-sort", inputs: ["showButtonText"] }, { kind: "component", type: i5$1.λ13, selector: "sky-sort-item", inputs: ["active"], outputs: ["itemSelect"] }, { kind: "component", type: i10.λ37, selector: "sky-toolbar" }, { kind: "component", type: i10.λ39, selector: "sky-toolbar-item" }, { kind: "component", type: i10.λ38, selector: "sky-toolbar-section" }, { kind: "component", type: i10.λ40, selector: "sky-toolbar-view-actions" }, { kind: "pipe", type: i11.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
736
767
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerToolbarComponent, decorators: [{
|
737
768
|
type: Component,
|
738
|
-
args: [{ selector: 'sky-data-manager-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"
|
769
|
+
args: [{ selector: 'sky-data-manager-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"!!(dataState?.activeSortOption?.id === item.id)\"\n (itemSelect)=\"sortSelected(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.columnPickerEnabled\">\n <button\n class=\"sky-btn sky-btn-default sky-col-picker-btn\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n [attr.title]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_data_manager_columns_button_title' | skyLibResources }}\n </span>\n </button>\n </sky-toolbar-item>\n\n <ng-content select=\"sky-data-manager-toolbar-left-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.searchEnabled\">\n <sky-search\n [expandMode]=\"activeView?.searchExpandMode\"\n [placeholderText]=\"activeView?.searchPlaceholderText\"\n [searchText]=\"dataState?.searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n\n <sky-toolbar-view-actions>\n <ng-content select=\"sky-data-manager-toolbar-right-item\"></ng-content>\n <sky-radio-group\n *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio\n *ngFor=\"let view of views\"\n [attr.name]=\"view.name\"\n [attr.aria-label]=\"view.name\"\n [icon]=\"view.icon\"\n [value]=\"view.id\"\n [label]=\"view.name\"\n [(ngModel)]=\"activeView.id\"\n (change)=\"onViewChange(view.id)\"\n >\n </sky-radio>\n </sky-radio-group>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-section\"></ng-content>\n </sky-toolbar>\n\n <sky-toolbar\n *ngIf=\"activeView?.multiselectToolbarEnabled\"\n class=\"sky-data-manager-multiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{ 'skyux_data_manager_select_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{ 'skyux_data_manager_clear_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [checked]=\"onlyShowSelected\"\n (change)=\"onOnlyShowSelected($event)\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_data_manager_show_selected_option_title' | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n</div>\n", styles: [":host .sky-col-picker-btn .sky-column-selector-action-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-sm) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-col-picker-btn .sky-column-selector-action-btn-text{display:none}@media (min-width: 768px){:host .sky-col-picker-btn .sky-column-selector-action-btn-text{display:inline}}:host-context(.sky-responsive-container-sm) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-col-picker-btn .sky-column-selector-action-btn-text{display:inline}\n"] }]
|
739
770
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: SkyDataManagerService }, { type: i3.SkyModalService }, { type: SkyDataManagerColumnPickerService }]; } });
|
740
771
|
|
772
|
+
var _SkyDataViewComponent_ngUnsubscribe, _SkyDataViewComponent_dataManagerService;
|
741
773
|
/**
|
742
774
|
* A data view is rendered within a data manager component.
|
743
775
|
* It can subscribe to data state changes from `SkyDataManagerService` and apply the filters,
|
744
776
|
* search text, and more to the data it displays.
|
745
777
|
*/
|
746
778
|
class SkyDataViewComponent {
|
747
|
-
constructor(
|
748
|
-
this
|
749
|
-
this
|
750
|
-
this
|
751
|
-
this._ngUnsubscribe = new Subject();
|
752
|
-
}
|
753
|
-
get isActive() {
|
754
|
-
return this._isActive;
|
755
|
-
}
|
756
|
-
set isActive(value) {
|
757
|
-
this._isActive = value;
|
758
|
-
this.changeDetector.markForCheck();
|
779
|
+
constructor(dataManagerService) {
|
780
|
+
_SkyDataViewComponent_ngUnsubscribe.set(this, new Subject());
|
781
|
+
_SkyDataViewComponent_dataManagerService.set(this, void 0);
|
782
|
+
__classPrivateFieldSet(this, _SkyDataViewComponent_dataManagerService, dataManagerService, "f");
|
759
783
|
}
|
760
784
|
ngOnInit() {
|
761
|
-
this
|
785
|
+
__classPrivateFieldGet(this, _SkyDataViewComponent_dataManagerService, "f")
|
762
786
|
.getActiveViewIdUpdates()
|
763
|
-
.pipe(takeUntil(this
|
787
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataViewComponent_ngUnsubscribe, "f")))
|
764
788
|
.subscribe((activeViewId) => {
|
765
789
|
this.isActive = this.viewId === activeViewId;
|
766
790
|
});
|
767
791
|
}
|
768
792
|
ngOnDestroy() {
|
769
|
-
this.
|
770
|
-
this.
|
793
|
+
__classPrivateFieldGet(this, _SkyDataViewComponent_ngUnsubscribe, "f").next();
|
794
|
+
__classPrivateFieldGet(this, _SkyDataViewComponent_ngUnsubscribe, "f").complete();
|
771
795
|
}
|
772
796
|
}
|
773
|
-
|
774
|
-
SkyDataViewComponent.ɵ
|
797
|
+
_SkyDataViewComponent_ngUnsubscribe = new WeakMap(), _SkyDataViewComponent_dataManagerService = new WeakMap();
|
798
|
+
SkyDataViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataViewComponent, deps: [{ token: SkyDataManagerService }], target: i0.ɵɵFactoryTarget.Component });
|
799
|
+
SkyDataViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyDataViewComponent, selector: "sky-data-view", inputs: { viewId: "viewId", isActive: "isActive" }, ngImport: i0, template: "<ng-container *ngIf=\"isActive\">\n <ng-content></ng-content>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
775
800
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataViewComponent, decorators: [{
|
776
801
|
type: Component,
|
777
802
|
args: [{ selector: 'sky-data-view', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"isActive\">\n <ng-content></ng-content>\n</ng-container>\n" }]
|
778
|
-
}], ctorParameters: function () { return [{ type:
|
803
|
+
}], ctorParameters: function () { return [{ type: SkyDataManagerService }]; }, propDecorators: { viewId: [{
|
804
|
+
type: Input
|
805
|
+
}], isActive: [{
|
779
806
|
type: Input
|
780
807
|
}] } });
|
781
808
|
|
809
|
+
var _SkyDataManagerColumnPickerComponent_instances, _SkyDataManagerColumnPickerComponent_ngUnsubscribe, _SkyDataManagerColumnPickerComponent__dataState, _SkyDataManagerColumnPickerComponent_formatColumnOptions;
|
782
810
|
/**
|
783
811
|
* @internal
|
784
812
|
*/
|
@@ -787,6 +815,9 @@ class SkyDataManagerColumnPickerComponent {
|
|
787
815
|
this.context = context;
|
788
816
|
this.dataManagerService = dataManagerService;
|
789
817
|
this.instance = instance;
|
818
|
+
_SkyDataManagerColumnPickerComponent_instances.add(this);
|
819
|
+
this.columnData = [];
|
820
|
+
this.displayedColumnData = [];
|
790
821
|
this.viewConfig = {
|
791
822
|
id: 'columnPicker',
|
792
823
|
name: 'Column Picker',
|
@@ -796,14 +827,15 @@ class SkyDataManagerColumnPickerComponent {
|
|
796
827
|
onSelectAllClick: this.selectAll.bind(this),
|
797
828
|
onClearAllClick: this.clearAll.bind(this),
|
798
829
|
};
|
799
|
-
this.
|
800
|
-
this
|
830
|
+
this.isAnyDisplayedColumnSelected = false;
|
831
|
+
_SkyDataManagerColumnPickerComponent_ngUnsubscribe.set(this, new Subject());
|
832
|
+
_SkyDataManagerColumnPickerComponent__dataState.set(this, new SkyDataManagerState({}));
|
801
833
|
}
|
802
834
|
get dataState() {
|
803
|
-
return this
|
835
|
+
return __classPrivateFieldGet(this, _SkyDataManagerColumnPickerComponent__dataState, "f");
|
804
836
|
}
|
805
837
|
set dataState(value) {
|
806
|
-
this
|
838
|
+
__classPrivateFieldSet(this, _SkyDataManagerColumnPickerComponent__dataState, value, "f");
|
807
839
|
this.updateData();
|
808
840
|
}
|
809
841
|
ngOnInit() {
|
@@ -813,17 +845,17 @@ class SkyDataManagerColumnPickerComponent {
|
|
813
845
|
defaultDataState: this.dataState,
|
814
846
|
});
|
815
847
|
this.dataManagerService.initDataView(this.viewConfig);
|
816
|
-
this.columnData = this.
|
848
|
+
this.columnData = __classPrivateFieldGet(this, _SkyDataManagerColumnPickerComponent_instances, "m", _SkyDataManagerColumnPickerComponent_formatColumnOptions).call(this);
|
817
849
|
this.dataManagerService
|
818
850
|
.getDataStateUpdates('columnPicker')
|
819
|
-
.pipe(takeUntil(this
|
851
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyDataManagerColumnPickerComponent_ngUnsubscribe, "f")))
|
820
852
|
.subscribe((state) => {
|
821
853
|
this.dataState = state;
|
822
854
|
});
|
823
855
|
}
|
824
856
|
ngOnDestroy() {
|
825
|
-
this.
|
826
|
-
this.
|
857
|
+
__classPrivateFieldGet(this, _SkyDataManagerColumnPickerComponent_ngUnsubscribe, "f").next();
|
858
|
+
__classPrivateFieldGet(this, _SkyDataManagerColumnPickerComponent_ngUnsubscribe, "f").complete();
|
827
859
|
}
|
828
860
|
updateData() {
|
829
861
|
this.displayedColumnData = this.searchColumns(this.columnData.filter((col) => !col.alwaysDisplayed));
|
@@ -840,7 +872,7 @@ class SkyDataManagerColumnPickerComponent {
|
|
840
872
|
for (const property in item) {
|
841
873
|
if (Object.prototype.hasOwnProperty.call(item, property) &&
|
842
874
|
(property === 'label' || property === 'description')) {
|
843
|
-
const propertyText = item[property]
|
875
|
+
const propertyText = item[property]?.toUpperCase();
|
844
876
|
if (propertyText && propertyText.indexOf(searchText) > -1) {
|
845
877
|
return true;
|
846
878
|
}
|
@@ -871,48 +903,48 @@ class SkyDataManagerColumnPickerComponent {
|
|
871
903
|
applyChanges() {
|
872
904
|
this.instance.save(this.columnData.filter((col) => col.isSelected || col.alwaysDisplayed));
|
873
905
|
}
|
874
|
-
|
875
|
-
|
876
|
-
|
877
|
-
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
|
882
|
-
|
883
|
-
|
884
|
-
|
885
|
-
|
886
|
-
|
887
|
-
|
888
|
-
|
889
|
-
|
890
|
-
|
891
|
-
|
892
|
-
|
893
|
-
|
894
|
-
|
895
|
-
|
896
|
-
else {
|
897
|
-
unselectedColumnOptions.push(formattedColumn);
|
898
|
-
}
|
906
|
+
}
|
907
|
+
_SkyDataManagerColumnPickerComponent_ngUnsubscribe = new WeakMap(), _SkyDataManagerColumnPickerComponent__dataState = new WeakMap(), _SkyDataManagerColumnPickerComponent_instances = new WeakSet(), _SkyDataManagerColumnPickerComponent_formatColumnOptions = function _SkyDataManagerColumnPickerComponent_formatColumnOptions() {
|
908
|
+
const allColumnOptions = this.context.columnOptions;
|
909
|
+
const visibleColumnIds = this.context.displayedColumnIds;
|
910
|
+
let formattedColumnOptions = [];
|
911
|
+
const unselectedColumnOptions = [];
|
912
|
+
for (const columnOption of allColumnOptions) {
|
913
|
+
// format the column with the properties the column picker needs
|
914
|
+
const colIndex = visibleColumnIds.indexOf(columnOption.id);
|
915
|
+
const formattedColumn = {
|
916
|
+
alwaysDisplayed: columnOption.alwaysDisplayed,
|
917
|
+
id: columnOption.id,
|
918
|
+
label: columnOption.label,
|
919
|
+
description: columnOption.description,
|
920
|
+
isSelected: colIndex !== -1,
|
921
|
+
};
|
922
|
+
// if column picker sorting is currently enabled sort columns by order displayed then alphabetical
|
923
|
+
// else display column in order they were specified in the columnOptions
|
924
|
+
if (this.context.columnPickerSortStrategy ===
|
925
|
+
SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical) {
|
926
|
+
if (formattedColumn.isSelected) {
|
927
|
+
formattedColumnOptions[colIndex] = formattedColumn;
|
899
928
|
}
|
900
929
|
else {
|
901
|
-
|
930
|
+
unselectedColumnOptions.push(formattedColumn);
|
902
931
|
}
|
903
932
|
}
|
904
|
-
|
905
|
-
|
906
|
-
if (this.context.columnPickerSortStrategy ===
|
907
|
-
SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical) {
|
908
|
-
unselectedColumnOptions.sort((col1, col2) => col1.label.localeCompare(col2.label));
|
909
|
-
formattedColumnOptions = formattedColumnOptions.concat(unselectedColumnOptions);
|
933
|
+
else {
|
934
|
+
formattedColumnOptions.push(formattedColumn);
|
910
935
|
}
|
911
|
-
return formattedColumnOptions;
|
912
936
|
}
|
913
|
-
|
937
|
+
// if column picker sorting is enabled, sort the columns that are not currently displayed
|
938
|
+
// and add them after the currently displayed options
|
939
|
+
if (this.context.columnPickerSortStrategy ===
|
940
|
+
SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical) {
|
941
|
+
unselectedColumnOptions.sort((col1, col2) => col1.label.localeCompare(col2.label));
|
942
|
+
formattedColumnOptions = formattedColumnOptions.concat(unselectedColumnOptions);
|
943
|
+
}
|
944
|
+
return formattedColumnOptions;
|
945
|
+
};
|
914
946
|
SkyDataManagerColumnPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerColumnPickerComponent, deps: [{ token: SkyDataManagerColumnPickerContext }, { token: SkyDataManagerService }, { token: i3.SkyModalInstance }], target: i0.ɵɵFactoryTarget.Component });
|
915
|
-
SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { kind: "component", type: i3.λ2, selector: "sky-modal-content" }, { kind: "component", type: i3.λ3, selector: "sky-modal-footer" }, { kind: "component", type: i3.λ4, selector: "sky-modal-header" }, { kind: "component", type: i5$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { kind: "component", type: i5$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { kind: "component", type: i5$1.λ8, selector: "sky-repeater-item-content" }, { kind: "component", type: i5$1.λ12, selector: "sky-repeater-item-title" }, { kind: "component", type: i8.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }, { kind: "component", type: SkyDataManagerComponent, selector: "sky-data-manager" }, { kind: "component", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { kind: "component", type: SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { kind: "pipe", type: i11.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
947
|
+
SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { kind: "component", type: i3.λ2, selector: "sky-modal-content" }, { kind: "component", type: i3.λ3, selector: "sky-modal-footer" }, { kind: "component", type: i3.λ4, selector: "sky-modal-header" }, { kind: "component", type: i5$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { kind: "component", type: i5$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { kind: "component", type: i5$1.λ8, selector: "sky-repeater-item-content" }, { kind: "component", type: i5$1.λ12, selector: "sky-repeater-item-title" }, { kind: "component", type: i8.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }, { kind: "component", type: SkyDataManagerComponent, selector: "sky-data-manager" }, { kind: "component", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { kind: "component", type: SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId", "isActive"] }, { kind: "pipe", type: i11.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
916
948
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyDataManagerColumnPickerComponent, decorators: [{
|
917
949
|
type: Component,
|
918
950
|
args: [{ selector: 'sky-data-manager-column-picker', providers: [SkyDataManagerService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"] }]
|