@skyux/list-builder-view-grids 5.0.1 → 5.5.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.
- package/README.md +6 -4
- package/bundles/skyux-list-builder-view-grids.umd.js +37 -37
- package/documentation.json +359 -123
- package/esm2015/index.js +21 -0
- package/esm2015/index.js.map +1 -0
- package/esm2015/lib/modules/column-selector/column-selector-context.js +9 -0
- package/esm2015/lib/modules/column-selector/column-selector-context.js.map +1 -0
- package/esm2015/lib/modules/column-selector/column-selector-modal.component.js +41 -0
- package/esm2015/lib/modules/column-selector/column-selector-modal.component.js.map +1 -0
- package/esm2015/lib/modules/column-selector/column-selector-modal.module.js +41 -0
- package/esm2015/lib/modules/column-selector/column-selector-modal.module.js.map +1 -0
- package/esm2015/lib/modules/list-column-selector-action/list-column-selector-action.component.js +136 -0
- package/esm2015/lib/modules/list-column-selector-action/list-column-selector-action.component.js.map +1 -0
- package/esm2015/lib/modules/list-column-selector-action/list-column-selector-action.module.js +47 -0
- package/esm2015/lib/modules/list-column-selector-action/list-column-selector-action.module.js.map +1 -0
- package/esm2015/{modules → lib/modules}/list-column-selector-action/list-column-selector-button.component.js +4 -4
- package/esm2015/lib/modules/list-column-selector-action/list-column-selector-button.component.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/list-view-grid.component.js +466 -0
- package/esm2015/lib/modules/list-view-grid/list-view-grid.component.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/list-view-grid.module.js +42 -0
- package/esm2015/lib/modules/list-view-grid/list-view-grid.module.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/state/columns/columns.orchestrator.js +22 -0
- package/esm2015/lib/modules/list-view-grid/state/columns/columns.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/state/columns/load.action.js +10 -0
- package/esm2015/lib/modules/list-view-grid/state/columns/load.action.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/state/displayed-columns/displayed-columns.orchestrator.js +22 -0
- package/esm2015/lib/modules/list-view-grid/state/displayed-columns/displayed-columns.orchestrator.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/state/displayed-columns/load.action.js +10 -0
- package/esm2015/lib/modules/list-view-grid/state/displayed-columns/load.action.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/state/grid-state-action.type.js +2 -0
- package/esm2015/lib/modules/list-view-grid/state/grid-state-action.type.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/state/grid-state.model.js +11 -0
- package/esm2015/lib/modules/list-view-grid/state/grid-state.model.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/state/grid-state.rxstate.js +19 -0
- package/esm2015/lib/modules/list-view-grid/state/grid-state.rxstate.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/state/grid-state.state-node.js +27 -0
- package/esm2015/lib/modules/list-view-grid/state/grid-state.state-node.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/types/list-view-grid-message-type.js +15 -0
- package/esm2015/lib/modules/list-view-grid/types/list-view-grid-message-type.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/types/list-view-grid-message.js +2 -0
- package/esm2015/lib/modules/list-view-grid/types/list-view-grid-message.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/types/list-view-grid-row-delete-cancel-args.js +2 -0
- package/esm2015/lib/modules/list-view-grid/types/list-view-grid-row-delete-cancel-args.js.map +1 -0
- package/esm2015/lib/modules/list-view-grid/types/list-view-grid-row-delete-confirm-args.js +2 -0
- package/esm2015/lib/modules/list-view-grid/types/list-view-grid-row-delete-confirm-args.js.map +1 -0
- package/esm2015/lib/modules/shared/sky-list-builder-view-grids-resources.module.js +56 -0
- package/esm2015/lib/modules/shared/sky-list-builder-view-grids-resources.module.js.map +1 -0
- package/esm2015/skyux-list-builder-view-grids.js +2 -2
- package/esm2015/skyux-list-builder-view-grids.js.map +1 -0
- package/esm2015/testing/list-view-grid-fixture-cell.js +1 -1
- package/esm2015/testing/list-view-grid-fixture-cell.js.map +1 -0
- package/esm2015/testing/list-view-grid-fixture-header.js +1 -1
- package/esm2015/testing/list-view-grid-fixture-header.js.map +1 -0
- package/esm2015/testing/list-view-grid-fixture-row.js +1 -1
- package/esm2015/testing/list-view-grid-fixture-row.js.map +1 -0
- package/esm2015/testing/list-view-grid-fixture.js +1 -1
- package/esm2015/testing/list-view-grid-fixture.js.map +1 -0
- package/esm2015/testing/public-api.js +1 -1
- package/esm2015/testing/public-api.js.map +1 -0
- package/esm2015/testing/skyux-list-builder-view-grids-testing.js +1 -1
- package/esm2015/testing/skyux-list-builder-view-grids-testing.js.map +1 -0
- package/fesm2015/skyux-list-builder-view-grids-testing.js.map +1 -1
- package/fesm2015/skyux-list-builder-view-grids.js +222 -222
- package/fesm2015/skyux-list-builder-view-grids.js.map +1 -1
- package/index.d.ts +18 -0
- package/{modules → lib/modules}/column-selector/column-selector-context.d.ts +0 -0
- package/{modules → lib/modules}/column-selector/column-selector-modal.component.d.ts +0 -0
- package/{modules → lib/modules}/column-selector/column-selector-modal.module.d.ts +0 -0
- package/{modules → lib/modules}/list-column-selector-action/list-column-selector-action.component.d.ts +0 -0
- package/{modules → lib/modules}/list-column-selector-action/list-column-selector-action.module.d.ts +0 -0
- package/{modules → lib/modules}/list-column-selector-action/list-column-selector-button.component.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/list-view-grid.component.d.ts +3 -3
- package/{modules → lib/modules}/list-view-grid/list-view-grid.module.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/state/columns/columns.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/state/columns/load.action.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/state/displayed-columns/displayed-columns.orchestrator.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/state/displayed-columns/load.action.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/state/grid-state-action.type.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/state/grid-state.model.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/state/grid-state.rxstate.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/state/grid-state.state-node.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/types/list-view-grid-message-type.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/types/list-view-grid-message.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/types/list-view-grid-row-delete-cancel-args.d.ts +0 -0
- package/{modules → lib/modules}/list-view-grid/types/list-view-grid-row-delete-confirm-args.d.ts +0 -0
- package/{modules → lib/modules}/shared/sky-list-builder-view-grids-resources.module.d.ts +0 -0
- package/package.json +24 -10
- package/skyux-list-builder-view-grids.d.ts +1 -1
- package/LICENSE +0 -21
- package/bundles/skyux-list-builder-view-grids-testing.umd.js.map +0 -1
- package/bundles/skyux-list-builder-view-grids.umd.js.map +0 -1
- package/esm2015/modules/column-selector/column-selector-context.js +0 -9
- package/esm2015/modules/column-selector/column-selector-modal.component.js +0 -39
- package/esm2015/modules/column-selector/column-selector-modal.module.js +0 -41
- package/esm2015/modules/list-column-selector-action/list-column-selector-action.component.js +0 -134
- package/esm2015/modules/list-column-selector-action/list-column-selector-action.module.js +0 -47
- package/esm2015/modules/list-view-grid/list-view-grid.component.js +0 -466
- package/esm2015/modules/list-view-grid/list-view-grid.module.js +0 -42
- package/esm2015/modules/list-view-grid/state/columns/columns.orchestrator.js +0 -22
- package/esm2015/modules/list-view-grid/state/columns/load.action.js +0 -10
- package/esm2015/modules/list-view-grid/state/displayed-columns/displayed-columns.orchestrator.js +0 -22
- package/esm2015/modules/list-view-grid/state/displayed-columns/load.action.js +0 -10
- package/esm2015/modules/list-view-grid/state/grid-state-action.type.js +0 -2
- package/esm2015/modules/list-view-grid/state/grid-state.model.js +0 -11
- package/esm2015/modules/list-view-grid/state/grid-state.rxstate.js +0 -19
- package/esm2015/modules/list-view-grid/state/grid-state.state-node.js +0 -25
- package/esm2015/modules/list-view-grid/types/list-view-grid-message-type.js +0 -15
- package/esm2015/modules/list-view-grid/types/list-view-grid-message.js +0 -2
- package/esm2015/modules/list-view-grid/types/list-view-grid-row-delete-cancel-args.js +0 -2
- package/esm2015/modules/list-view-grid/types/list-view-grid-row-delete-confirm-args.js +0 -2
- package/esm2015/modules/shared/sky-list-builder-view-grids-resources.module.js +0 -56
- package/esm2015/public-api.js +0 -21
- package/public-api.d.ts +0 -18
package/esm2015/index.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export * from './lib/modules/column-selector/column-selector-context';
|
|
2
|
+
export * from './lib/modules/column-selector/column-selector-modal.module';
|
|
3
|
+
export * from './lib/modules/list-column-selector-action/list-column-selector-action.module';
|
|
4
|
+
export * from './lib/modules/list-view-grid/list-view-grid.component';
|
|
5
|
+
export * from './lib/modules/list-view-grid/list-view-grid.module';
|
|
6
|
+
export * from './lib/modules/list-view-grid/state/grid-state-action.type';
|
|
7
|
+
export * from './lib/modules/list-view-grid/state/grid-state.model';
|
|
8
|
+
export * from './lib/modules/list-view-grid/state/grid-state.rxstate';
|
|
9
|
+
export * from './lib/modules/list-view-grid/state/grid-state.state-node';
|
|
10
|
+
export * from './lib/modules/list-view-grid/state/columns/columns.orchestrator';
|
|
11
|
+
export * from './lib/modules/list-view-grid/state/columns/load.action';
|
|
12
|
+
export * from './lib/modules/list-view-grid/state/displayed-columns/displayed-columns.orchestrator';
|
|
13
|
+
export * from './lib/modules/list-view-grid/state/displayed-columns/load.action';
|
|
14
|
+
export * from './lib/modules/list-view-grid/types/list-view-grid-message';
|
|
15
|
+
export * from './lib/modules/list-view-grid/types/list-view-grid-message-type';
|
|
16
|
+
export * from './lib/modules/list-view-grid/types/list-view-grid-row-delete-cancel-args';
|
|
17
|
+
export * from './lib/modules/list-view-grid/types/list-view-grid-row-delete-confirm-args';
|
|
18
|
+
// Components and directives must be exported to support Angular’s “partial” Ivy compiler.
|
|
19
|
+
// Obscure names are used to indicate types are not part of the public API.
|
|
20
|
+
export { SkyListColumnSelectorActionComponent as λ1 } from './lib/modules/list-column-selector-action/list-column-selector-action.component';
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/components/list-builder-view-grids/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uDAAuD,CAAC;AACtE,cAAc,4DAA4D,CAAC;AAE3E,cAAc,8EAA8E,CAAC;AAE7F,cAAc,uDAAuD,CAAC;AACtE,cAAc,oDAAoD,CAAC;AAEnE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,0DAA0D,CAAC;AACzE,cAAc,iEAAiE,CAAC;AAChF,cAAc,wDAAwD,CAAC;AACvE,cAAc,qFAAqF,CAAC;AACpG,cAAc,kEAAkE,CAAC;AAEjF,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,0EAA0E,CAAC;AACzF,cAAc,2EAA2E,CAAC;AAE1F,0FAA0F;AAC1F,2EAA2E;AAC3E,OAAO,EAAE,oCAAoC,IAAI,EAAE,EAAE,MAAM,iFAAiF,CAAC","sourcesContent":["export * from './lib/modules/column-selector/column-selector-context';\nexport * from './lib/modules/column-selector/column-selector-modal.module';\n\nexport * from './lib/modules/list-column-selector-action/list-column-selector-action.module';\n\nexport * from './lib/modules/list-view-grid/list-view-grid.component';\nexport * from './lib/modules/list-view-grid/list-view-grid.module';\n\nexport * from './lib/modules/list-view-grid/state/grid-state-action.type';\nexport * from './lib/modules/list-view-grid/state/grid-state.model';\nexport * from './lib/modules/list-view-grid/state/grid-state.rxstate';\nexport * from './lib/modules/list-view-grid/state/grid-state.state-node';\nexport * from './lib/modules/list-view-grid/state/columns/columns.orchestrator';\nexport * from './lib/modules/list-view-grid/state/columns/load.action';\nexport * from './lib/modules/list-view-grid/state/displayed-columns/displayed-columns.orchestrator';\nexport * from './lib/modules/list-view-grid/state/displayed-columns/load.action';\n\nexport * from './lib/modules/list-view-grid/types/list-view-grid-message';\nexport * from './lib/modules/list-view-grid/types/list-view-grid-message-type';\nexport * from './lib/modules/list-view-grid/types/list-view-grid-row-delete-cancel-args';\nexport * from './lib/modules/list-view-grid/types/list-view-grid-row-delete-confirm-args';\n\n// Components and directives must be exported to support Angular’s “partial” Ivy compiler.\n// Obscure names are used to indicate types are not part of the public API.\nexport { SkyListColumnSelectorActionComponent as λ1 } from './lib/modules/list-column-selector-action/list-column-selector-action.component';\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/* istanbul ignore next */
|
|
2
|
+
/* Code coverage having problems with no statements in classes */
|
|
3
|
+
export class SkyColumnSelectorContext {
|
|
4
|
+
}
|
|
5
|
+
/* istanbul ignore next */
|
|
6
|
+
/* Code coverage having problems with no statements in classes */
|
|
7
|
+
export class SkyColumnSelectorModel {
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=column-selector-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"column-selector-context.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/column-selector/column-selector-context.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,iEAAiE;AACjE,MAAM,OAAO,wBAAwB;CAGpC;AAED,0BAA0B;AAC1B,iEAAiE;AACjE,MAAM,OAAO,sBAAsB;CAIlC","sourcesContent":["/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyColumnSelectorContext {\n public columns: Array<SkyColumnSelectorModel>;\n public selectedColumnIds: Array<string>;\n}\n\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyColumnSelectorModel {\n public id: string;\n public heading: string;\n public description: string;\n}\n"]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { SkyModalInstance } from '@skyux/modals';
|
|
3
|
+
import { SkyColumnSelectorContext } from './column-selector-context';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "./column-selector-context";
|
|
6
|
+
import * as i2 from "@skyux/modals";
|
|
7
|
+
import * as i3 from "@skyux/list-builder";
|
|
8
|
+
import * as i4 from "@skyux/list-builder-view-checklist";
|
|
9
|
+
import * as i5 from "@skyux/i18n";
|
|
10
|
+
export class SkyColumnSelectorComponent {
|
|
11
|
+
constructor(context, instance) {
|
|
12
|
+
this.context = context;
|
|
13
|
+
this.instance = instance;
|
|
14
|
+
this.newSelectedColumnIds = [];
|
|
15
|
+
this.newSelectedColumnIds = context.selectedColumnIds;
|
|
16
|
+
}
|
|
17
|
+
selectedColumnsChange(selectedMap) {
|
|
18
|
+
this.newSelectedColumnIds = [];
|
|
19
|
+
selectedMap.forEach((value, key) => {
|
|
20
|
+
if (value) {
|
|
21
|
+
this.newSelectedColumnIds.push(key);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
cancelChanges() {
|
|
26
|
+
this.instance.cancel();
|
|
27
|
+
}
|
|
28
|
+
applyChanges() {
|
|
29
|
+
this.instance.save(this.newSelectedColumnIds);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
SkyColumnSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyColumnSelectorComponent, deps: [{ token: i1.SkyColumnSelectorContext }, { token: i2.SkyModalInstance }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
+
SkyColumnSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyColumnSelectorComponent, selector: "sky-column-selector", ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_grid_column_picker_header' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content>\n <sky-list\n #list\n [data]=\"context.columns\"\n [selectedIds]=\"context.selectedColumnIds\"\n (selectedIdsChange)=\"selectedColumnsChange($event)\"\n >\n <sky-list-toolbar\n [placeholder]=\"\n 'skyux_grid_column_picker_search_placeholder' | skyLibResources\n \"\n >\n </sky-list-toolbar>\n\n <sky-list-view-checklist label=\"heading\" description=\"description\">\n </sky-list-view-checklist>\n </sky-list>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_grid_column_picker_submit' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_grid_column_picker_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", components: [{ type: i2.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i2.λ4, selector: "sky-modal-header" }, { type: i2.λ2, selector: "sky-modal-content" }, { type: i3.SkyListComponent, selector: "sky-list", inputs: ["data", "dataProvider", "defaultView", "initialTotal", "selectedIds", "sortFields", "appliedFilters", "search"], outputs: ["selectedIdsChange", "appliedFiltersChange"] }, { type: i3.SkyListToolbarComponent, selector: "sky-list-toolbar", inputs: ["inMemorySearchEnabled", "placeholder", "searchEnabled", "sortSelectorEnabled", "toolbarType", "searchText"] }, { type: i4.SkyListViewChecklistComponent, selector: "sky-list-view-checklist", inputs: ["name", "search", "label", "description", "selectMode", "showOnlySelected"] }, { type: i2.λ3, selector: "sky-modal-footer" }], pipes: { "skyLibResources": i5.SkyLibResourcesPipe } });
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyColumnSelectorComponent, decorators: [{
|
|
35
|
+
type: Component,
|
|
36
|
+
args: [{
|
|
37
|
+
selector: 'sky-column-selector',
|
|
38
|
+
templateUrl: './column-selector-modal.component.html',
|
|
39
|
+
}]
|
|
40
|
+
}], ctorParameters: function () { return [{ type: i1.SkyColumnSelectorContext }, { type: i2.SkyModalInstance }]; } });
|
|
41
|
+
//# sourceMappingURL=column-selector-modal.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"column-selector-modal.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/column-selector/column-selector-modal.component.ts","../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/column-selector/column-selector-modal.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;;;;;;;AAMrE,MAAM,OAAO,0BAA0B;IAGrC,YACS,OAAiC,EACjC,QAA0B;QAD1B,YAAO,GAAP,OAAO,CAA0B;QACjC,aAAQ,GAAR,QAAQ,CAAkB;QAJ5B,yBAAoB,GAAkB,EAAE,CAAC;QAM9C,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IACxD,CAAC;IAEM,qBAAqB,CAAC,WAAiC;QAC5D,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACjC,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACrC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,aAAa;QAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC;IAEM,YAAY;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAChD,CAAC;;wHAzBU,0BAA0B;4GAA1B,0BAA0B,2DCVvC,ymCAuCA;4FD7Ba,0BAA0B;kBAJtC,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,WAAW,EAAE,wCAAwC;iBACtD","sourcesContent":["import { Component } from '@angular/core';\n\nimport { SkyModalInstance } from '@skyux/modals';\n\nimport { SkyColumnSelectorContext } from './column-selector-context';\n\n@Component({\n selector: 'sky-column-selector',\n templateUrl: './column-selector-modal.component.html',\n})\nexport class SkyColumnSelectorComponent {\n public newSelectedColumnIds: Array<string> = [];\n\n constructor(\n public context: SkyColumnSelectorContext,\n public instance: SkyModalInstance\n ) {\n this.newSelectedColumnIds = context.selectedColumnIds;\n }\n\n public selectedColumnsChange(selectedMap: Map<string, boolean>) {\n this.newSelectedColumnIds = [];\n selectedMap.forEach((value, key) => {\n if (value) {\n this.newSelectedColumnIds.push(key);\n }\n });\n }\n\n public cancelChanges() {\n this.instance.cancel();\n }\n\n public applyChanges() {\n this.instance.save(this.newSelectedColumnIds);\n }\n}\n","<sky-modal>\n <sky-modal-header>\n {{ 'skyux_grid_column_picker_header' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content>\n <sky-list\n #list\n [data]=\"context.columns\"\n [selectedIds]=\"context.selectedColumnIds\"\n (selectedIdsChange)=\"selectedColumnsChange($event)\"\n >\n <sky-list-toolbar\n [placeholder]=\"\n 'skyux_grid_column_picker_search_placeholder' | skyLibResources\n \"\n >\n </sky-list-toolbar>\n\n <sky-list-view-checklist label=\"heading\" description=\"description\">\n </sky-list-view-checklist>\n </sky-list>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_grid_column_picker_submit' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_grid_column_picker_cancel' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n"]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { SkyColumnSelectorComponent } from './column-selector-modal.component';
|
|
4
|
+
import { SkyI18nModule } from '@skyux/i18n';
|
|
5
|
+
import { SkyModalModule } from '@skyux/modals';
|
|
6
|
+
import { SkyListModule, SkyListToolbarModule } from '@skyux/list-builder';
|
|
7
|
+
import { SkyListViewChecklistModule } from '@skyux/list-builder-view-checklist';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export class SkyColumnSelectorModule {
|
|
10
|
+
}
|
|
11
|
+
SkyColumnSelectorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyColumnSelectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
12
|
+
SkyColumnSelectorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyColumnSelectorModule, declarations: [SkyColumnSelectorComponent], imports: [CommonModule,
|
|
13
|
+
SkyI18nModule,
|
|
14
|
+
SkyModalModule,
|
|
15
|
+
SkyListModule,
|
|
16
|
+
SkyListToolbarModule,
|
|
17
|
+
SkyListViewChecklistModule] });
|
|
18
|
+
SkyColumnSelectorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyColumnSelectorModule, imports: [[
|
|
19
|
+
CommonModule,
|
|
20
|
+
SkyI18nModule,
|
|
21
|
+
SkyModalModule,
|
|
22
|
+
SkyListModule,
|
|
23
|
+
SkyListToolbarModule,
|
|
24
|
+
SkyListViewChecklistModule,
|
|
25
|
+
]] });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyColumnSelectorModule, decorators: [{
|
|
27
|
+
type: NgModule,
|
|
28
|
+
args: [{
|
|
29
|
+
declarations: [SkyColumnSelectorComponent],
|
|
30
|
+
imports: [
|
|
31
|
+
CommonModule,
|
|
32
|
+
SkyI18nModule,
|
|
33
|
+
SkyModalModule,
|
|
34
|
+
SkyListModule,
|
|
35
|
+
SkyListToolbarModule,
|
|
36
|
+
SkyListViewChecklistModule,
|
|
37
|
+
],
|
|
38
|
+
entryComponents: [SkyColumnSelectorComponent],
|
|
39
|
+
}]
|
|
40
|
+
}] });
|
|
41
|
+
//# sourceMappingURL=column-selector-modal.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"column-selector-modal.module.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/column-selector/column-selector-modal.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAE/E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;;AAchF,MAAM,OAAO,uBAAuB;;qHAAvB,uBAAuB;sHAAvB,uBAAuB,iBAXnB,0BAA0B,aAEvC,YAAY;QACZ,aAAa;QACb,cAAc;QACd,aAAa;QACb,oBAAoB;QACpB,0BAA0B;sHAIjB,uBAAuB,YAVzB;YACP,YAAY;YACZ,aAAa;YACb,cAAc;YACd,aAAa;YACb,oBAAoB;YACpB,0BAA0B;SAC3B;4FAGU,uBAAuB;kBAZnC,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,0BAA0B,CAAC;oBAC1C,OAAO,EAAE;wBACP,YAAY;wBACZ,aAAa;wBACb,cAAc;wBACd,aAAa;wBACb,oBAAoB;wBACpB,0BAA0B;qBAC3B;oBACD,eAAe,EAAE,CAAC,0BAA0B,CAAC;iBAC9C","sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SkyColumnSelectorComponent } from './column-selector-modal.component';\n\nimport { SkyI18nModule } from '@skyux/i18n';\n\nimport { SkyModalModule } from '@skyux/modals';\nimport { SkyListModule, SkyListToolbarModule } from '@skyux/list-builder';\n\nimport { SkyListViewChecklistModule } from '@skyux/list-builder-view-checklist';\n\n@NgModule({\n declarations: [SkyColumnSelectorComponent],\n imports: [\n CommonModule,\n SkyI18nModule,\n SkyModalModule,\n SkyListModule,\n SkyListToolbarModule,\n SkyListViewChecklistModule,\n ],\n entryComponents: [SkyColumnSelectorComponent],\n})\nexport class SkyColumnSelectorModule {}\n"]}
|
package/esm2015/lib/modules/list-column-selector-action/list-column-selector-action.component.js
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Optional, Output, TemplateRef, ViewChild, } from '@angular/core';
|
|
2
|
+
import { distinctUntilChanged, map as observableMap, take, } from 'rxjs/operators';
|
|
3
|
+
import { ListState, ListStateDispatcher, ListToolbarItemModel, SkyListSecondaryActionsComponent, } from '@skyux/list-builder';
|
|
4
|
+
import { SkyModalService } from '@skyux/modals';
|
|
5
|
+
import { SkyListViewGridComponent } from '../list-view-grid/list-view-grid.component';
|
|
6
|
+
import { ListViewDisplayedGridColumnsLoadAction } from '../list-view-grid/state/displayed-columns/load.action';
|
|
7
|
+
import { SkyColumnSelectorContext, } from '../column-selector/column-selector-context';
|
|
8
|
+
import { SkyColumnSelectorComponent } from '../column-selector/column-selector-modal.component';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@skyux/list-builder";
|
|
11
|
+
import * as i2 from "@skyux/modals";
|
|
12
|
+
import * as i3 from "./list-column-selector-button.component";
|
|
13
|
+
import * as i4 from "@angular/common";
|
|
14
|
+
import * as i5 from "@skyux/i18n";
|
|
15
|
+
/**
|
|
16
|
+
* Provides a column selector modal for a list grid view when placed in a
|
|
17
|
+
* [list toolbar](https://developer.blackbaud.com/skyux/components/list/toolbar).
|
|
18
|
+
*/
|
|
19
|
+
export class SkyListColumnSelectorActionComponent {
|
|
20
|
+
constructor(listState, modalService, dispatcher, secondaryActions) {
|
|
21
|
+
this.listState = listState;
|
|
22
|
+
this.modalService = modalService;
|
|
23
|
+
this.dispatcher = dispatcher;
|
|
24
|
+
this.secondaryActions = secondaryActions;
|
|
25
|
+
/**
|
|
26
|
+
* Fires when users click the help button and broadcasts the `helpKey`.
|
|
27
|
+
*/
|
|
28
|
+
this.helpOpened = new EventEmitter();
|
|
29
|
+
this.columnSelectorActionItemToolbarIndex = 7000;
|
|
30
|
+
}
|
|
31
|
+
ngAfterContentInit() {
|
|
32
|
+
if (!this.secondaryActions) {
|
|
33
|
+
let columnChooserItem = new ListToolbarItemModel({
|
|
34
|
+
id: 'column-chooser',
|
|
35
|
+
template: this.columnChooserTemplate,
|
|
36
|
+
location: 'left',
|
|
37
|
+
});
|
|
38
|
+
this.dispatcher.toolbarAddItems([columnChooserItem], this.columnSelectorActionItemToolbarIndex);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
get isInGridView() {
|
|
42
|
+
return this.listState.pipe(observableMap((s) => s.views.active), observableMap((activeView) => {
|
|
43
|
+
return this.gridView && activeView === this.gridView.id;
|
|
44
|
+
}), distinctUntilChanged());
|
|
45
|
+
}
|
|
46
|
+
get isInGridViewAndSecondary() {
|
|
47
|
+
return this.listState.pipe(observableMap((s) => s.views.active), observableMap((activeView) => {
|
|
48
|
+
return (this.secondaryActions &&
|
|
49
|
+
this.gridView &&
|
|
50
|
+
activeView === this.gridView.id);
|
|
51
|
+
}), distinctUntilChanged());
|
|
52
|
+
}
|
|
53
|
+
openColumnSelector() {
|
|
54
|
+
/* istanbul ignore else */
|
|
55
|
+
/* sanity check */
|
|
56
|
+
if (this.gridView) {
|
|
57
|
+
let columns = [];
|
|
58
|
+
let selectedColumnIds = [];
|
|
59
|
+
this.gridView.gridState
|
|
60
|
+
.pipe(take(1))
|
|
61
|
+
.subscribe((state) => {
|
|
62
|
+
columns = state.columns.items
|
|
63
|
+
.filter((item) => {
|
|
64
|
+
return !item.locked;
|
|
65
|
+
})
|
|
66
|
+
.map((item) => {
|
|
67
|
+
return {
|
|
68
|
+
id: item.id,
|
|
69
|
+
heading: item.heading,
|
|
70
|
+
description: item.description,
|
|
71
|
+
};
|
|
72
|
+
});
|
|
73
|
+
selectedColumnIds = state.displayedColumns.items
|
|
74
|
+
.filter((item) => {
|
|
75
|
+
return !item.locked;
|
|
76
|
+
})
|
|
77
|
+
.map((item) => {
|
|
78
|
+
return item.id;
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
const modalInstance = this.modalService.open(SkyColumnSelectorComponent, {
|
|
82
|
+
providers: [
|
|
83
|
+
{
|
|
84
|
+
provide: SkyColumnSelectorContext,
|
|
85
|
+
useValue: {
|
|
86
|
+
columns,
|
|
87
|
+
selectedColumnIds,
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
],
|
|
91
|
+
helpKey: this.helpKey,
|
|
92
|
+
});
|
|
93
|
+
modalInstance.helpOpened.subscribe((helpKey) => {
|
|
94
|
+
this.helpOpened.emit(helpKey);
|
|
95
|
+
this.helpOpened.complete();
|
|
96
|
+
});
|
|
97
|
+
modalInstance.closed.subscribe((result) => {
|
|
98
|
+
if (result.reason === 'save' && result.data) {
|
|
99
|
+
let newSelectedIds = result.data;
|
|
100
|
+
let newDisplayedColumns = [];
|
|
101
|
+
this.gridView.gridState
|
|
102
|
+
.pipe(take(1))
|
|
103
|
+
.subscribe((state) => {
|
|
104
|
+
newDisplayedColumns = state.columns.items.filter((item) => {
|
|
105
|
+
return newSelectedIds.indexOf(item.id) > -1 || item.locked;
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
this.gridView.gridDispatcher.next(new ListViewDisplayedGridColumnsLoadAction(newDisplayedColumns, true));
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
SkyListColumnSelectorActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListColumnSelectorActionComponent, deps: [{ token: i1.ListState }, { token: i2.SkyModalService }, { token: i1.ListStateDispatcher }, { token: i1.SkyListSecondaryActionsComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
115
|
+
SkyListColumnSelectorActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyListColumnSelectorActionComponent, selector: "sky-list-column-selector-action", inputs: { gridView: "gridView", helpKey: "helpKey" }, outputs: { helpOpened: "helpOpened" }, viewQueries: [{ propertyName: "columnChooserTemplate", first: true, predicate: ["columnChooser"], descendants: true, static: true }], ngImport: i0, template: "<ng-container *ngIf=\"isInGridViewAndSecondary | async\">\n <sky-list-secondary-action>\n <button type=\"button\" (click)=\"openColumnSelector()\">\n {{ 'skyux_grid_columns_button' | skyLibResources }}\n </button>\n </sky-list-secondary-action>\n</ng-container>\n\n<ng-template #columnChooser>\n <sky-list-column-selector-button\n *ngIf=\"isInGridView | async\"\n (click)=\"openColumnSelector()\"\n >\n </sky-list-column-selector-button>\n</ng-template>\n", components: [{ type: i1.λ6, selector: "sky-list-secondary-action" }, { type: i3.SkyListColumnSelectorButtonComponent, selector: "sky-list-column-selector-button" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4.AsyncPipe, "skyLibResources": i5.SkyLibResourcesPipe } });
|
|
116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListColumnSelectorActionComponent, decorators: [{
|
|
117
|
+
type: Component,
|
|
118
|
+
args: [{
|
|
119
|
+
selector: 'sky-list-column-selector-action',
|
|
120
|
+
templateUrl: './list-column-selector-action.component.html',
|
|
121
|
+
}]
|
|
122
|
+
}], ctorParameters: function () { return [{ type: i1.ListState }, { type: i2.SkyModalService }, { type: i1.ListStateDispatcher }, { type: i1.SkyListSecondaryActionsComponent, decorators: [{
|
|
123
|
+
type: Optional
|
|
124
|
+
}] }]; }, propDecorators: { gridView: [{
|
|
125
|
+
type: Input
|
|
126
|
+
}], helpKey: [{
|
|
127
|
+
type: Input
|
|
128
|
+
}], helpOpened: [{
|
|
129
|
+
type: Output
|
|
130
|
+
}], columnChooserTemplate: [{
|
|
131
|
+
type: ViewChild,
|
|
132
|
+
args: ['columnChooser', {
|
|
133
|
+
static: true,
|
|
134
|
+
}]
|
|
135
|
+
}] } });
|
|
136
|
+
//# sourceMappingURL=list-column-selector-action.component.js.map
|
package/esm2015/lib/modules/list-column-selector-action/list-column-selector-action.component.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-column-selector-action.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-action.component.ts","../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-action.component.html"],"names":[],"mappings":"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","sourcesContent":["import {\n AfterContentInit,\n Component,\n EventEmitter,\n Input,\n Optional,\n Output,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\n\nimport { Observable } from 'rxjs';\n\nimport {\n distinctUntilChanged,\n map as observableMap,\n take,\n} from 'rxjs/operators';\n\nimport {\n ListState,\n ListStateDispatcher,\n ListToolbarItemModel,\n SkyListSecondaryActionsComponent,\n} from '@skyux/list-builder';\n\nimport { SkyGridColumnModel } from '@skyux/grids';\n\nimport { SkyModalCloseArgs, SkyModalService } from '@skyux/modals';\n\nimport { SkyListViewGridComponent } from '../list-view-grid/list-view-grid.component';\n\nimport { GridStateModel } from '../list-view-grid/state/grid-state.model';\n\nimport { ListViewDisplayedGridColumnsLoadAction } from '../list-view-grid/state/displayed-columns/load.action';\n\nimport {\n SkyColumnSelectorContext,\n SkyColumnSelectorModel,\n} from '../column-selector/column-selector-context';\n\nimport { SkyColumnSelectorComponent } from '../column-selector/column-selector-modal.component';\n\n/**\n * Provides a column selector modal for a list grid view when placed in a\n * [list toolbar](https://developer.blackbaud.com/skyux/components/list/toolbar).\n */\n@Component({\n selector: 'sky-list-column-selector-action',\n templateUrl: './list-column-selector-action.component.html',\n})\nexport class SkyListColumnSelectorActionComponent implements AfterContentInit {\n /**\n * Enables the column selector in the list toolbar. Set this attribute to the instance of\n * the `sky-grid-view` component using the component's template reference variable.\n */\n @Input()\n public gridView: SkyListViewGridComponent;\n\n /**\n * Specifies a `helpKey` string and dispays a help button in the grid header. When users select\n * the button, the `helpOpened` event broadcasts the `helpKey` parameter.\n */\n @Input()\n public helpKey: string;\n\n /**\n * Fires when users click the help button and broadcasts the `helpKey`.\n */\n @Output()\n public helpOpened = new EventEmitter<string>();\n\n @ViewChild('columnChooser', {\n static: true,\n })\n private columnChooserTemplate: TemplateRef<any>;\n\n private columnSelectorActionItemToolbarIndex: number = 7000;\n\n constructor(\n public listState: ListState,\n private modalService: SkyModalService,\n private dispatcher: ListStateDispatcher,\n @Optional() public secondaryActions: SkyListSecondaryActionsComponent\n ) {}\n\n public ngAfterContentInit() {\n if (!this.secondaryActions) {\n let columnChooserItem = new ListToolbarItemModel({\n id: 'column-chooser',\n template: this.columnChooserTemplate,\n location: 'left',\n });\n\n this.dispatcher.toolbarAddItems(\n [columnChooserItem],\n this.columnSelectorActionItemToolbarIndex\n );\n }\n }\n\n get isInGridView(): Observable<boolean> {\n return this.listState.pipe(\n observableMap((s) => s.views.active),\n observableMap((activeView) => {\n return this.gridView && activeView === this.gridView.id;\n }),\n distinctUntilChanged()\n );\n }\n\n get isInGridViewAndSecondary(): Observable<boolean> {\n return this.listState.pipe(\n observableMap((s) => s.views.active),\n observableMap((activeView) => {\n return (\n this.secondaryActions &&\n this.gridView &&\n activeView === this.gridView.id\n );\n }),\n distinctUntilChanged()\n );\n }\n\n public openColumnSelector() {\n /* istanbul ignore else */\n /* sanity check */\n if (this.gridView) {\n let columns: Array<SkyColumnSelectorModel> = [];\n let selectedColumnIds: Array<string> = [];\n this.gridView.gridState\n .pipe(take(1))\n .subscribe((state: GridStateModel) => {\n columns = state.columns.items\n .filter((item: SkyGridColumnModel) => {\n return !item.locked;\n })\n .map((item: SkyGridColumnModel) => {\n return {\n id: item.id,\n heading: item.heading,\n description: item.description,\n };\n });\n selectedColumnIds = state.displayedColumns.items\n .filter((item: SkyGridColumnModel) => {\n return !item.locked;\n })\n .map((item: SkyGridColumnModel) => {\n return item.id;\n });\n });\n\n const modalInstance = this.modalService.open(SkyColumnSelectorComponent, {\n providers: [\n {\n provide: SkyColumnSelectorContext,\n useValue: {\n columns,\n selectedColumnIds,\n },\n },\n ],\n helpKey: this.helpKey,\n });\n\n modalInstance.helpOpened.subscribe((helpKey: string) => {\n this.helpOpened.emit(helpKey);\n this.helpOpened.complete();\n });\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'save' && result.data) {\n let newSelectedIds = result.data;\n let newDisplayedColumns: Array<SkyGridColumnModel> = [];\n this.gridView.gridState\n .pipe(take(1))\n .subscribe((state: GridStateModel) => {\n newDisplayedColumns = state.columns.items.filter((item) => {\n return newSelectedIds.indexOf(item.id) > -1 || item.locked;\n });\n });\n this.gridView.gridDispatcher.next(\n new ListViewDisplayedGridColumnsLoadAction(\n newDisplayedColumns,\n true\n )\n );\n }\n });\n }\n }\n}\n","<ng-container *ngIf=\"isInGridViewAndSecondary | async\">\n <sky-list-secondary-action>\n <button type=\"button\" (click)=\"openColumnSelector()\">\n {{ 'skyux_grid_columns_button' | skyLibResources }}\n </button>\n </sky-list-secondary-action>\n</ng-container>\n\n<ng-template #columnChooser>\n <sky-list-column-selector-button\n *ngIf=\"isInGridView | async\"\n (click)=\"openColumnSelector()\"\n >\n </sky-list-column-selector-button>\n</ng-template>\n"]}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { SkyI18nModule } from '@skyux/i18n';
|
|
4
|
+
import { SkyIconModule } from '@skyux/indicators';
|
|
5
|
+
import { SkyListToolbarModule, SkyListSecondaryActionsModule, } from '@skyux/list-builder';
|
|
6
|
+
import { SkyModalModule } from '@skyux/modals';
|
|
7
|
+
import { SkyColumnSelectorModule } from '../column-selector/column-selector-modal.module';
|
|
8
|
+
import { SkyListColumnSelectorActionComponent } from './list-column-selector-action.component';
|
|
9
|
+
import { SkyListColumnSelectorButtonComponent } from './list-column-selector-button.component';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class SkyListColumnSelectorActionModule {
|
|
12
|
+
}
|
|
13
|
+
SkyListColumnSelectorActionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListColumnSelectorActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
SkyListColumnSelectorActionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListColumnSelectorActionModule, declarations: [SkyListColumnSelectorActionComponent,
|
|
15
|
+
SkyListColumnSelectorButtonComponent], imports: [CommonModule,
|
|
16
|
+
SkyI18nModule,
|
|
17
|
+
SkyModalModule,
|
|
18
|
+
SkyListSecondaryActionsModule,
|
|
19
|
+
SkyListToolbarModule,
|
|
20
|
+
SkyIconModule], exports: [SkyListColumnSelectorActionComponent, SkyColumnSelectorModule] });
|
|
21
|
+
SkyListColumnSelectorActionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListColumnSelectorActionModule, imports: [[
|
|
22
|
+
CommonModule,
|
|
23
|
+
SkyI18nModule,
|
|
24
|
+
SkyModalModule,
|
|
25
|
+
SkyListSecondaryActionsModule,
|
|
26
|
+
SkyListToolbarModule,
|
|
27
|
+
SkyIconModule,
|
|
28
|
+
], SkyColumnSelectorModule] });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListColumnSelectorActionModule, decorators: [{
|
|
30
|
+
type: NgModule,
|
|
31
|
+
args: [{
|
|
32
|
+
declarations: [
|
|
33
|
+
SkyListColumnSelectorActionComponent,
|
|
34
|
+
SkyListColumnSelectorButtonComponent,
|
|
35
|
+
],
|
|
36
|
+
imports: [
|
|
37
|
+
CommonModule,
|
|
38
|
+
SkyI18nModule,
|
|
39
|
+
SkyModalModule,
|
|
40
|
+
SkyListSecondaryActionsModule,
|
|
41
|
+
SkyListToolbarModule,
|
|
42
|
+
SkyIconModule,
|
|
43
|
+
],
|
|
44
|
+
exports: [SkyListColumnSelectorActionComponent, SkyColumnSelectorModule],
|
|
45
|
+
}]
|
|
46
|
+
}] });
|
|
47
|
+
//# sourceMappingURL=list-column-selector-action.module.js.map
|
package/esm2015/lib/modules/list-column-selector-action/list-column-selector-action.module.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-column-selector-action.module.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-action.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EACL,oBAAoB,EACpB,6BAA6B,GAC9B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAE1F,OAAO,EAAE,oCAAoC,EAAE,MAAM,yCAAyC,CAAC;AAE/F,OAAO,EAAE,oCAAoC,EAAE,MAAM,yCAAyC,CAAC;;AAiB/F,MAAM,OAAO,iCAAiC;;+HAAjC,iCAAiC;gIAAjC,iCAAiC,iBAb1C,oCAAoC;QACpC,oCAAoC,aAGpC,YAAY;QACZ,aAAa;QACb,cAAc;QACd,6BAA6B;QAC7B,oBAAoB;QACpB,aAAa,aAEL,oCAAoC,EAAE,uBAAuB;gIAE5D,iCAAiC,YAVnC;YACP,YAAY;YACZ,aAAa;YACb,cAAc;YACd,6BAA6B;YAC7B,oBAAoB;YACpB,aAAa;SACd,EAC+C,uBAAuB;4FAE5D,iCAAiC;kBAf7C,QAAQ;mBAAC;oBACR,YAAY,EAAE;wBACZ,oCAAoC;wBACpC,oCAAoC;qBACrC;oBACD,OAAO,EAAE;wBACP,YAAY;wBACZ,aAAa;wBACb,cAAc;wBACd,6BAA6B;wBAC7B,oBAAoB;wBACpB,aAAa;qBACd;oBACD,OAAO,EAAE,CAAC,oCAAoC,EAAE,uBAAuB,CAAC;iBACzE","sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SkyI18nModule } from '@skyux/i18n';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport {\n SkyListToolbarModule,\n SkyListSecondaryActionsModule,\n} from '@skyux/list-builder';\n\nimport { SkyModalModule } from '@skyux/modals';\n\nimport { SkyColumnSelectorModule } from '../column-selector/column-selector-modal.module';\n\nimport { SkyListColumnSelectorActionComponent } from './list-column-selector-action.component';\n\nimport { SkyListColumnSelectorButtonComponent } from './list-column-selector-button.component';\n\n@NgModule({\n declarations: [\n SkyListColumnSelectorActionComponent,\n SkyListColumnSelectorButtonComponent,\n ],\n imports: [\n CommonModule,\n SkyI18nModule,\n SkyModalModule,\n SkyListSecondaryActionsModule,\n SkyListToolbarModule,\n SkyIconModule,\n ],\n exports: [SkyListColumnSelectorActionComponent, SkyColumnSelectorModule],\n})\nexport class SkyListColumnSelectorActionModule {}\n"]}
|
|
@@ -5,9 +5,9 @@ import * as i2 from "@skyux/i18n";
|
|
|
5
5
|
export class SkyListColumnSelectorButtonComponent {
|
|
6
6
|
constructor() { }
|
|
7
7
|
}
|
|
8
|
-
SkyListColumnSelectorButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9
|
-
SkyListColumnSelectorButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
8
|
+
SkyListColumnSelectorButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListColumnSelectorButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
+
SkyListColumnSelectorButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyListColumnSelectorButtonComponent, selector: "sky-list-column-selector-button", ngImport: i0, template: "<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_grid_columns_button' | skyLibResources\"\n [title]=\"'skyux_grid_columns_button' | skyLibResources\"\n>\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_grid_columns_toolbar_button' | skyLibResources }}\n </span>\n</button>\n", styles: [":host .sky-column-selector-action-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-sm) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-column-selector-action-btn-text{display:none}@media (min-width: 768px){:host .sky-column-selector-action-btn-text{display:inline}}:host-context(.sky-responsive-container-sm) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-column-selector-action-btn-text{display:inline}\n"], components: [{ type: i1.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], pipes: { "skyLibResources": i2.SkyLibResourcesPipe } });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyListColumnSelectorButtonComponent, decorators: [{
|
|
11
11
|
type: Component,
|
|
12
12
|
args: [{
|
|
13
13
|
selector: 'sky-list-column-selector-button',
|
|
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImpo
|
|
|
15
15
|
styleUrls: ['./list-column-selector-button.component.scss'],
|
|
16
16
|
}]
|
|
17
17
|
}], ctorParameters: function () { return []; } });
|
|
18
|
-
//# sourceMappingURL=
|
|
18
|
+
//# sourceMappingURL=list-column-selector-button.component.js.map
|
package/esm2015/lib/modules/list-column-selector-action/list-column-selector-button.component.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-column-selector-button.component.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-button.component.ts","../../../../../../../../libs/components/list-builder-view-grids/src/lib/modules/list-column-selector-action/list-column-selector-button.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;;;;AAO1C,MAAM,OAAO,oCAAoC;IAC/C,gBAAe,CAAC;;kIADL,oCAAoC;sHAApC,oCAAoC,uECPjD,mYAWA;4FDJa,oCAAoC;kBALhD,SAAS;mBAAC;oBACT,QAAQ,EAAE,iCAAiC;oBAC3C,WAAW,EAAE,8CAA8C;oBAC3D,SAAS,EAAE,CAAC,8CAA8C,CAAC;iBAC5D","sourcesContent":["import { Component } from '@angular/core';\n\n@Component({\n selector: 'sky-list-column-selector-button',\n templateUrl: './list-column-selector-button.component.html',\n styleUrls: ['./list-column-selector-button.component.scss'],\n})\nexport class SkyListColumnSelectorButtonComponent {\n constructor() {}\n}\n","<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_grid_columns_button' | skyLibResources\"\n [title]=\"'skyux_grid_columns_button' | skyLibResources\"\n>\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_grid_columns_toolbar_button' | skyLibResources }}\n </span>\n</button>\n"]}
|