@skyux/list-builder-view-checklist 4.0.1 → 5.0.1
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/LICENSE +21 -0
- package/bundles/skyux-list-builder-view-checklist-testing.umd.js +8 -4
- package/bundles/skyux-list-builder-view-checklist-testing.umd.js.map +1 -1
- package/bundles/skyux-list-builder-view-checklist.umd.js +491 -335
- package/bundles/skyux-list-builder-view-checklist.umd.js.map +1 -1
- package/documentation.json +2124 -0
- package/esm2015/modules/list-view-checklist/list-view-checklist-item.component.js +17 -16
- package/esm2015/modules/list-view-checklist/list-view-checklist.component.js +111 -79
- package/esm2015/modules/list-view-checklist/list-view-checklist.module.js +19 -22
- package/esm2015/modules/list-view-checklist/state/checklist-state-action.type.js +2 -1
- package/esm2015/modules/list-view-checklist/state/checklist-state.model.js +1 -1
- package/esm2015/modules/list-view-checklist/state/checklist-state.rxstate.js +9 -8
- package/esm2015/modules/list-view-checklist/state/checklist-state.state-node.js +12 -16
- package/esm2015/modules/list-view-checklist/state/items/item.model.js +1 -1
- package/esm2015/modules/list-view-checklist/state/items/items.orchestrator.js +2 -2
- package/esm2015/modules/list-view-checklist/state/items/load.action.js +1 -1
- package/esm2015/public-api.js +15 -0
- package/esm2015/skyux-list-builder-view-checklist.js +2 -3
- package/esm2015/testing/list-view-checklist-fixture.js +2 -2
- package/esm2015/testing/list-view-checklist-item.js +2 -1
- package/esm2015/testing/public-api.js +3 -0
- package/esm2015/testing/skyux-list-builder-view-checklist-testing.js +2 -2
- package/fesm2015/skyux-list-builder-view-checklist-testing.js +1 -1
- package/fesm2015/skyux-list-builder-view-checklist-testing.js.map +1 -1
- package/fesm2015/skyux-list-builder-view-checklist.js +161 -132
- package/fesm2015/skyux-list-builder-view-checklist.js.map +1 -1
- package/modules/list-view-checklist/list-view-checklist-item.component.d.ts +3 -0
- package/modules/list-view-checklist/list-view-checklist.component.d.ts +31 -0
- package/modules/list-view-checklist/list-view-checklist.module.d.ts +9 -0
- package/modules/list-view-checklist/state/checklist-state.rxstate.d.ts +3 -0
- package/modules/list-view-checklist/state/checklist-state.state-node.d.ts +3 -0
- package/package.json +11 -26
- package/{public_api.d.ts → public-api.d.ts} +1 -0
- package/skyux-list-builder-view-checklist.d.ts +2 -2
- package/testing/package.json +2 -5
- package/testing/{public_api.d.ts → public-api.d.ts} +0 -0
- package/testing/skyux-list-builder-view-checklist-testing.d.ts +2 -1
- package/CHANGELOG.md +0 -97
- package/bundles/skyux-list-builder-view-checklist-testing.umd.min.js +0 -2
- package/bundles/skyux-list-builder-view-checklist-testing.umd.min.js.map +0 -1
- package/bundles/skyux-list-builder-view-checklist.umd.min.js +0 -16
- package/bundles/skyux-list-builder-view-checklist.umd.min.js.map +0 -1
- package/esm2015/public_api.js +0 -11
- package/esm2015/testing/public_api.js +0 -2
- package/esm5/modules/list-view-checklist/list-view-checklist-item.component.js +0 -20
- package/esm5/modules/list-view-checklist/list-view-checklist.component.js +0 -288
- package/esm5/modules/list-view-checklist/list-view-checklist.module.js +0 -31
- package/esm5/modules/list-view-checklist/state/checklist-state-action.type.js +0 -1
- package/esm5/modules/list-view-checklist/state/checklist-state.model.js +0 -9
- package/esm5/modules/list-view-checklist/state/checklist-state.rxstate.js +0 -23
- package/esm5/modules/list-view-checklist/state/checklist-state.state-node.js +0 -25
- package/esm5/modules/list-view-checklist/state/items/item.model.js +0 -12
- package/esm5/modules/list-view-checklist/state/items/items.orchestrator.js +0 -24
- package/esm5/modules/list-view-checklist/state/items/load.action.js +0 -15
- package/esm5/public_api.js +0 -11
- package/esm5/skyux-list-builder-view-checklist.js +0 -6
- package/esm5/testing/list-view-checklist-fixture.js +0 -85
- package/esm5/testing/list-view-checklist-item.js +0 -1
- package/esm5/testing/public_api.js +0 -2
- package/esm5/testing/skyux-list-builder-view-checklist-testing.js +0 -5
- package/fesm5/skyux-list-builder-view-checklist-testing.js +0 -91
- package/fesm5/skyux-list-builder-view-checklist-testing.js.map +0 -1
- package/fesm5/skyux-list-builder-view-checklist.js +0 -418
- package/fesm5/skyux-list-builder-view-checklist.js.map +0 -1
- package/skyux-list-builder-view-checklist.metadata.json +0 -1
- package/src/assets/locales/resources_en_US.json +0 -1
- package/testing/skyux-list-builder-view-checklist-testing.metadata.json +0 -1
|
@@ -1,24 +1,23 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Injectable,
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Injectable, Component, ChangeDetectionStrategy, Input, forwardRef, NgModule } from '@angular/core';
|
|
3
|
+
import * as i6 from '@angular/common';
|
|
3
4
|
import { CommonModule } from '@angular/common';
|
|
4
5
|
import { FormsModule } from '@angular/forms';
|
|
6
|
+
import * as i5 from '@skyux/forms';
|
|
5
7
|
import { SkyCheckboxModule } from '@skyux/forms';
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
+
import * as i1 from '@skyux/list-builder';
|
|
9
|
+
import { ListViewComponent, ListSelectedSetItemsSelectedAction, ListToolbarSetTypeAction, ListSelectedSetItemSelectedAction, ListFilterModel } from '@skyux/list-builder';
|
|
10
|
+
import { StateDispatcher, StateOrchestrator, AsyncList, StateNode, getData } from '@skyux/list-builder-common';
|
|
8
11
|
import { Subject } from 'rxjs';
|
|
9
12
|
import { map, distinctUntilChanged, takeUntil, take } from 'rxjs/operators';
|
|
10
13
|
|
|
11
|
-
class
|
|
12
|
-
constructor() {
|
|
13
|
-
this.items = new AsyncList();
|
|
14
|
-
}
|
|
14
|
+
class ChecklistStateDispatcher extends StateDispatcher {
|
|
15
15
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
], ChecklistStateDispatcher);
|
|
16
|
+
ChecklistStateDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ChecklistStateDispatcher, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
17
|
+
ChecklistStateDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ChecklistStateDispatcher });
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ChecklistStateDispatcher, decorators: [{
|
|
19
|
+
type: Injectable
|
|
20
|
+
}] });
|
|
22
21
|
class ChecklistStateOrchestrator extends StateOrchestrator {
|
|
23
22
|
}
|
|
24
23
|
|
|
@@ -48,7 +47,7 @@ class ListViewChecklistItemsOrchestrator extends ChecklistStateOrchestrator {
|
|
|
48
47
|
this.register(ListViewChecklistItemsLoadAction, this.load);
|
|
49
48
|
}
|
|
50
49
|
load(state, action) {
|
|
51
|
-
const newListItems = action.items.map(item => new ListViewChecklistItemModel(item.id, item));
|
|
50
|
+
const newListItems = action.items.map((item) => new ListViewChecklistItemModel(item.id, item));
|
|
52
51
|
if (action.refresh) {
|
|
53
52
|
return new AsyncList([...newListItems], action.dataChanged ? Date.now() : state.lastUpdate, false, state.count);
|
|
54
53
|
}
|
|
@@ -56,32 +55,63 @@ class ListViewChecklistItemsOrchestrator extends ChecklistStateOrchestrator {
|
|
|
56
55
|
}
|
|
57
56
|
}
|
|
58
57
|
|
|
59
|
-
|
|
58
|
+
class ChecklistStateModel {
|
|
59
|
+
constructor() {
|
|
60
|
+
this.items = new AsyncList();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
class ChecklistState extends StateNode {
|
|
60
65
|
constructor(initialState, dispatcher) {
|
|
61
66
|
super(initialState, dispatcher);
|
|
62
|
-
this.register('items', ListViewChecklistItemsOrchestrator)
|
|
63
|
-
.begin();
|
|
67
|
+
this.register('items', ListViewChecklistItemsOrchestrator).begin();
|
|
64
68
|
}
|
|
65
|
-
}
|
|
66
|
-
ChecklistState
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
Injectable()
|
|
72
|
-
], ChecklistState);
|
|
69
|
+
}
|
|
70
|
+
ChecklistState.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ChecklistState, deps: [{ token: ChecklistStateModel }, { token: ChecklistStateDispatcher }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
71
|
+
ChecklistState.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ChecklistState });
|
|
72
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ChecklistState, decorators: [{
|
|
73
|
+
type: Injectable
|
|
74
|
+
}], ctorParameters: function () { return [{ type: ChecklistStateModel }, { type: ChecklistStateDispatcher }]; } });
|
|
73
75
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
+
class SkyListViewChecklistItemComponent {
|
|
77
|
+
}
|
|
78
|
+
SkyListViewChecklistItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyListViewChecklistItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
79
|
+
SkyListViewChecklistItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyListViewChecklistItemComponent, selector: "sky-list-view-checklist-item", inputs: { item: "item" }, ngImport: i0, template: "<div class=\"sky-list-view-checklist-item\">\n <ng-content></ng-content>\n</div>\n", styles: [".sky-list-view-checklist-item{display:block;width:100%;cursor:pointer;word-wrap:break-word}.sky-list-view-checklist-item:last-child{border-bottom-width:0}.sky-list-view-checklist-item ::ng-deep sky-checkbox{display:block;position:relative;width:100%;padding:10px;cursor:pointer;border-bottom:1px dotted #cdcfd2}.sky-list-view-checklist-item ::ng-deep sky-checkbox-label div{overflow:hidden;text-overflow:ellipsis}.sky-list-view-checklist-item ::ng-deep .sky-list-view-checklist-single-button{background-color:transparent;border:none;border-bottom:1px dotted #cdcfd2;display:block;text-align:left;margin-bottom:0;padding:10px;width:100%;cursor:pointer}.sky-list-view-checklist-item ::ng-deep .sky-list-view-checklist-single-button.sky-list-view-checklist-row-selected{background-color:#f1eef6}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyListViewChecklistItemComponent, decorators: [{
|
|
81
|
+
type: Component,
|
|
82
|
+
args: [{
|
|
83
|
+
selector: 'sky-list-view-checklist-item',
|
|
84
|
+
templateUrl: './list-view-checklist-item.component.html',
|
|
85
|
+
styleUrls: ['./list-view-checklist-item.component.scss'],
|
|
86
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
87
|
+
}]
|
|
88
|
+
}], propDecorators: { item: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}] } });
|
|
91
|
+
|
|
92
|
+
class SkyListViewChecklistComponent extends ListViewComponent {
|
|
76
93
|
constructor(state, dispatcher, checklistState, checklistDispatcher) {
|
|
77
94
|
super(state, 'Checklist View');
|
|
78
95
|
this.dispatcher = dispatcher;
|
|
79
96
|
this.checklistState = checklistState;
|
|
80
97
|
this.checklistDispatcher = checklistDispatcher;
|
|
98
|
+
/**
|
|
99
|
+
* Specifies a search function to apply on the view data.
|
|
100
|
+
* The default function searches view data on label, description,
|
|
101
|
+
* and category if field selectors are defined for the given field.
|
|
102
|
+
* @default default search function
|
|
103
|
+
*/
|
|
81
104
|
this.search = this.searchFunction();
|
|
82
|
-
|
|
105
|
+
/**
|
|
106
|
+
* Specifies the name of the label field selector.
|
|
107
|
+
* @default 'label'
|
|
108
|
+
*/
|
|
109
|
+
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
83
110
|
this.labelFieldSelector = 'label';
|
|
84
|
-
|
|
111
|
+
/**
|
|
112
|
+
* Specifies the name of the description field selector.
|
|
113
|
+
* @default 'description'
|
|
114
|
+
*/
|
|
85
115
|
this.description = 'description';
|
|
86
116
|
this.ngUnsubscribe = new Subject();
|
|
87
117
|
this._selectMode = 'multiple';
|
|
@@ -89,13 +119,17 @@ let SkyListViewChecklistComponent = SkyListViewChecklistComponent_1 = class SkyL
|
|
|
89
119
|
this._showOnlySelected = false;
|
|
90
120
|
let lastUpdate;
|
|
91
121
|
this.state
|
|
92
|
-
.pipe(map(s => s.items), distinctUntilChanged(), map((items) => {
|
|
122
|
+
.pipe(map((s) => s.items), distinctUntilChanged(), map((items) => {
|
|
93
123
|
let dataChanged = lastUpdate === undefined || items.lastUpdate !== lastUpdate;
|
|
94
124
|
lastUpdate = items.lastUpdate;
|
|
95
|
-
let newItems = items.items.map(item => {
|
|
125
|
+
let newItems = items.items.map((item) => {
|
|
96
126
|
return new ListViewChecklistItemModel(item.id, {
|
|
97
|
-
label: this.labelFieldSelector
|
|
98
|
-
|
|
127
|
+
label: this.labelFieldSelector
|
|
128
|
+
? getData(item.data, this.labelFieldSelector)
|
|
129
|
+
: undefined,
|
|
130
|
+
description: this.description
|
|
131
|
+
? getData(item.data, this.description)
|
|
132
|
+
: undefined,
|
|
99
133
|
});
|
|
100
134
|
});
|
|
101
135
|
this.checklistDispatcher.next(new ListViewChecklistItemsLoadAction(newItems, true, dataChanged, items.count));
|
|
@@ -103,14 +137,24 @@ let SkyListViewChecklistComponent = SkyListViewChecklistComponent_1 = class SkyL
|
|
|
103
137
|
.pipe(takeUntil(this.ngUnsubscribe))
|
|
104
138
|
.subscribe();
|
|
105
139
|
this.state
|
|
106
|
-
.pipe(map(t => t.selected), takeUntil(this.ngUnsubscribe))
|
|
140
|
+
.pipe(map((t) => t.selected), takeUntil(this.ngUnsubscribe))
|
|
107
141
|
.subscribe((selectedItems) => {
|
|
108
142
|
this._selectedIdMap = selectedItems.item.selectedIdMap;
|
|
109
143
|
});
|
|
110
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* Specifies the name of the view.
|
|
147
|
+
* @required
|
|
148
|
+
*/
|
|
111
149
|
set name(value) {
|
|
112
150
|
this.viewName = value;
|
|
113
151
|
}
|
|
152
|
+
/**
|
|
153
|
+
* Specifies how many items users can select.
|
|
154
|
+
* `single` allows users to select one item in the checklist, while `multiple`
|
|
155
|
+
* allows users to select multiple items in the checklist.
|
|
156
|
+
* @default 'multiple'
|
|
157
|
+
*/
|
|
114
158
|
set selectMode(value) {
|
|
115
159
|
this._selectMode = value;
|
|
116
160
|
if (this.selectMode === 'multiple') {
|
|
@@ -125,6 +169,10 @@ let SkyListViewChecklistComponent = SkyListViewChecklistComponent_1 = class SkyL
|
|
|
125
169
|
get selectMode() {
|
|
126
170
|
return this._selectMode || 'multiple';
|
|
127
171
|
}
|
|
172
|
+
/**
|
|
173
|
+
* Indicates whether to display selected items only.
|
|
174
|
+
* @default false
|
|
175
|
+
*/
|
|
128
176
|
set showOnlySelected(value) {
|
|
129
177
|
this._showOnlySelected = value;
|
|
130
178
|
}
|
|
@@ -138,17 +186,18 @@ let SkyListViewChecklistComponent = SkyListViewChecklistComponent_1 = class SkyL
|
|
|
138
186
|
// If 'show-selected' filter is changed from multiselect toolbar (list-builder)
|
|
139
187
|
// make sure the private variable _showOnlySelected stays in sync.
|
|
140
188
|
this.state
|
|
141
|
-
.pipe(map(t => t.filters), takeUntil(this.ngUnsubscribe), distinctUntilChanged(this.showSelectedValuesEqual))
|
|
189
|
+
.pipe(map((t) => t.filters), takeUntil(this.ngUnsubscribe), distinctUntilChanged(this.showSelectedValuesEqual))
|
|
142
190
|
.subscribe((filters) => {
|
|
143
191
|
const showSelectedFilter = filters.find((filter) => filter.name === 'show-selected');
|
|
144
192
|
if (showSelectedFilter) {
|
|
145
|
-
this._showOnlySelected =
|
|
193
|
+
this._showOnlySelected = showSelectedFilter.value === 'true';
|
|
146
194
|
}
|
|
147
195
|
});
|
|
148
196
|
}
|
|
149
197
|
ngOnChanges(changes) {
|
|
150
198
|
if (changes['showOnlySelected'] &&
|
|
151
|
-
changes['showOnlySelected'].currentValue !==
|
|
199
|
+
changes['showOnlySelected'].currentValue !==
|
|
200
|
+
changes['showOnlySelected'].previousValue) {
|
|
152
201
|
this.reapplyFilter(changes['showOnlySelected'].currentValue);
|
|
153
202
|
}
|
|
154
203
|
}
|
|
@@ -167,10 +216,9 @@ let SkyListViewChecklistComponent = SkyListViewChecklistComponent_1 = class SkyL
|
|
|
167
216
|
*/
|
|
168
217
|
clearSelections() {
|
|
169
218
|
this.state
|
|
170
|
-
.pipe(map(state => state.items.items), take(1))
|
|
171
|
-
.subscribe(items => {
|
|
172
|
-
this.dispatcher
|
|
173
|
-
.next(new ListSelectedSetItemsSelectedAction(items.map(item => item.id), false, false));
|
|
219
|
+
.pipe(map((state) => state.items.items), take(1))
|
|
220
|
+
.subscribe((items) => {
|
|
221
|
+
this.dispatcher.next(new ListSelectedSetItemsSelectedAction(items.map((item) => item.id), false, false));
|
|
174
222
|
/* istanbul ignore else */
|
|
175
223
|
if (this.showOnlySelected) {
|
|
176
224
|
this.reapplyFilter(this.showOnlySelected);
|
|
@@ -184,10 +232,9 @@ let SkyListViewChecklistComponent = SkyListViewChecklistComponent_1 = class SkyL
|
|
|
184
232
|
*/
|
|
185
233
|
selectAll() {
|
|
186
234
|
this.state
|
|
187
|
-
.pipe(map(state => state.items.items), take(1))
|
|
188
|
-
.subscribe(items => {
|
|
189
|
-
this.dispatcher
|
|
190
|
-
.next(new ListSelectedSetItemsSelectedAction(items.map(item => item.id), true, false));
|
|
235
|
+
.pipe(map((state) => state.items.items), take(1))
|
|
236
|
+
.subscribe((items) => {
|
|
237
|
+
this.dispatcher.next(new ListSelectedSetItemsSelectedAction(items.map((item) => item.id), true, false));
|
|
191
238
|
/* istanbul ignore else */
|
|
192
239
|
if (this.showOnlySelected) {
|
|
193
240
|
this.reapplyFilter(this.showOnlySelected);
|
|
@@ -213,35 +260,31 @@ let SkyListViewChecklistComponent = SkyListViewChecklistComponent_1 = class SkyL
|
|
|
213
260
|
this.ngUnsubscribe.complete();
|
|
214
261
|
}
|
|
215
262
|
get items() {
|
|
216
|
-
return this.checklistState.pipe(map(state => state.items.items));
|
|
263
|
+
return this.checklistState.pipe(map((state) => state.items.items));
|
|
217
264
|
}
|
|
218
265
|
searchFunction() {
|
|
219
266
|
return (data, searchText) => {
|
|
220
267
|
if (this.labelFieldSelector !== undefined) {
|
|
221
268
|
let label = getData(data, this.labelFieldSelector);
|
|
222
|
-
/* tslint:disable:no-null-keyword */
|
|
223
269
|
if (label !== undefined &&
|
|
224
270
|
label !== null &&
|
|
225
271
|
label.toString().toLowerCase().indexOf(searchText) !== -1) {
|
|
226
272
|
return true;
|
|
227
273
|
}
|
|
228
|
-
/* tslint:enable:no-null-keyword */
|
|
229
274
|
}
|
|
230
275
|
if (this.description !== undefined) {
|
|
231
276
|
let description = getData(data, this.description);
|
|
232
|
-
/* tslint:disable:no-null-keyword */
|
|
233
277
|
if (description !== undefined &&
|
|
234
278
|
description !== null &&
|
|
235
279
|
description.toString().toLowerCase().indexOf(searchText) !== -1) {
|
|
236
280
|
return true;
|
|
237
281
|
}
|
|
238
|
-
/* tslint:enable:no-null-keyword */
|
|
239
282
|
}
|
|
240
283
|
return false;
|
|
241
284
|
};
|
|
242
285
|
}
|
|
243
286
|
itemSelected(id) {
|
|
244
|
-
return this.state.pipe(map(state => state.selected.item.selectedIdMap.get(id)));
|
|
287
|
+
return this.state.pipe(map((state) => state.selected.item.selectedIdMap.get(id)));
|
|
245
288
|
}
|
|
246
289
|
setItemSelection(item, event) {
|
|
247
290
|
this.dispatcher.next(new ListSelectedSetItemSelectedAction(item.id, event.checked));
|
|
@@ -254,110 +297,96 @@ let SkyListViewChecklistComponent = SkyListViewChecklistComponent_1 = class SkyL
|
|
|
254
297
|
name: 'show-selected',
|
|
255
298
|
value: isSelected.toString(),
|
|
256
299
|
filterFunction: (model, showOnlySelected) => {
|
|
300
|
+
/* istanbul ignore else */
|
|
257
301
|
if (showOnlySelected.toString() !== false.toString()) {
|
|
258
302
|
return this._selectedIdMap.get(model.id);
|
|
259
303
|
}
|
|
260
304
|
},
|
|
261
|
-
defaultValue: false.toString()
|
|
305
|
+
defaultValue: false.toString(),
|
|
262
306
|
});
|
|
263
307
|
}
|
|
264
308
|
reapplyFilter(isSelected) {
|
|
265
309
|
let self = this;
|
|
266
310
|
this.state
|
|
267
|
-
.pipe(map(state => state.filters), take(1))
|
|
311
|
+
.pipe(map((state) => state.filters), take(1))
|
|
268
312
|
.subscribe((filters) => {
|
|
269
|
-
filters = filters.filter(filter => filter.name !== 'show-selected');
|
|
313
|
+
filters = filters.filter((filter) => filter.name !== 'show-selected');
|
|
270
314
|
filters.push(self.getShowSelectedFilter(isSelected));
|
|
271
315
|
this.dispatcher.filtersUpdate(filters);
|
|
272
316
|
});
|
|
273
317
|
}
|
|
274
318
|
showSelectedValuesEqual(prev, next) {
|
|
275
|
-
const prevShowSelectedFilter = prev.find(filter => filter.name === 'show-selected');
|
|
276
|
-
const nextShowSelectedFilter = next.find(filter => filter.name === 'show-selected');
|
|
319
|
+
const prevShowSelectedFilter = prev.find((filter) => filter.name === 'show-selected');
|
|
320
|
+
const nextShowSelectedFilter = next.find((filter) => filter.name === 'show-selected');
|
|
277
321
|
if (prevShowSelectedFilter && nextShowSelectedFilter) {
|
|
278
322
|
return prevShowSelectedFilter.value === nextShowSelectedFilter.value;
|
|
279
323
|
}
|
|
280
324
|
return true;
|
|
281
325
|
}
|
|
282
|
-
}
|
|
283
|
-
SkyListViewChecklistComponent
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
let SkyListViewChecklistItemComponent = class SkyListViewChecklistItemComponent {
|
|
325
|
-
};
|
|
326
|
-
__decorate([
|
|
327
|
-
Input()
|
|
328
|
-
], SkyListViewChecklistItemComponent.prototype, "item", void 0);
|
|
329
|
-
SkyListViewChecklistItemComponent = __decorate([
|
|
330
|
-
Component({
|
|
331
|
-
selector: 'sky-list-view-checklist-item',
|
|
332
|
-
template: "<div class=\"sky-list-view-checklist-item\">\n <ng-content></ng-content>\n</div>\n",
|
|
333
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
334
|
-
styles: [".sky-list-view-checklist-item{display:block;width:100%;cursor:pointer;word-wrap:break-word}.sky-list-view-checklist-item:last-child{border-bottom-width:0}.sky-list-view-checklist-item ::ng-deep sky-checkbox{display:block;position:relative;width:100%;padding:10px;cursor:pointer;border-bottom:1px dotted #cdcfd2}.sky-list-view-checklist-item ::ng-deep sky-checkbox-label div{overflow:hidden;text-overflow:ellipsis}.sky-list-view-checklist-item ::ng-deep .sky-list-view-checklist-single-button{background-color:transparent;border:none;border-bottom:1px dotted #cdcfd2;display:block;text-align:left;margin-bottom:0;padding:10px;width:100%;cursor:pointer}.sky-list-view-checklist-item ::ng-deep .sky-list-view-checklist-single-button.sky-list-view-checklist-row-selected{background-color:#f1eef6}"]
|
|
335
|
-
})
|
|
336
|
-
], SkyListViewChecklistItemComponent);
|
|
326
|
+
}
|
|
327
|
+
SkyListViewChecklistComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyListViewChecklistComponent, deps: [{ token: i1.ListState }, { token: i1.ListStateDispatcher }, { token: ChecklistState }, { token: ChecklistStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
|
|
328
|
+
SkyListViewChecklistComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: SkyListViewChecklistComponent, selector: "sky-list-view-checklist", inputs: { name: "name", search: "search", labelFieldSelector: ["label", "labelFieldSelector"], description: "description", selectMode: "selectMode", showOnlySelected: "showOnlySelected" }, providers: [
|
|
329
|
+
{
|
|
330
|
+
provide: ListViewComponent,
|
|
331
|
+
useExisting: forwardRef(() => SkyListViewChecklistComponent),
|
|
332
|
+
},
|
|
333
|
+
ChecklistState,
|
|
334
|
+
ChecklistStateDispatcher,
|
|
335
|
+
ChecklistStateModel,
|
|
336
|
+
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"sky-list-view-checklist\" *ngIf=\"active | async\">\n <div [ngSwitch]=\"selectMode\">\n <ng-template ngSwitchCase=\"single\">\n <div role=\"radiogroup\">\n <sky-list-view-checklist-item\n *ngFor=\"let item of items | async\"\n [attr.sky-cmp-id]=\"item.id\"\n [item]=\"item\"\n >\n <button\n role=\"radio\"\n type=\"button\"\n class=\"sky-list-view-checklist-single-button\"\n [attr.aria-checked]=\"(itemSelected(item.id) | async) || false\"\n [ngClass]=\"{\n 'sky-list-view-checklist-row-selected':\n (itemSelected(item.id) | async)\n }\"\n (click)=\"singleSelectRowClick(item)\"\n >\n <div *ngIf=\"item.label\" class=\"sky-emphasized\">\n {{ item.label }}\n </div>\n <div *ngIf=\"item.description\">{{ item.description }}</div>\n </button>\n </sky-list-view-checklist-item>\n </div>\n </ng-template>\n\n <ng-template ngSwitchDefault>\n <sky-list-view-checklist-item\n *ngFor=\"let item of items | async\"\n [attr.sky-cmp-id]=\"item.id\"\n [item]=\"item\"\n >\n <sky-checkbox\n [checked]=\"itemSelected(item.id) | async\"\n (change)=\"setItemSelection(item, $event)\"\n >\n <sky-checkbox-label>\n <div\n *ngIf=\"item.label\"\n class=\"sky-emphasized\"\n [attr.title]=\"item.label\"\n >\n {{ item.label }}\n </div>\n <div *ngIf=\"item.description\" [attr.title]=\"item.description\">\n {{ item.description }}\n </div>\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-list-view-checklist-item>\n </ng-template>\n </div>\n</div>\n", styles: [".sky-list-view-checklist ::ng-deep .sky-checkbox-wrapper{display:flex;align-items:flex-start}.sky-list-view-checklist ::ng-deep .sky-checkbox-wrapper>.sky-checkbox,.sky-list-view-checklist ::ng-deep .sky-checkbox-wrapper>input{flex:1;max-width:22px}.sky-list-view-checklist ::ng-deep .sky-switch{white-space:nowrap}.sky-list-view-checklist ::ng-deep .sky-switch-label{margin:0}.sky-list-view-checklist ::ng-deep sky-checkbox-label{min-width:0}.sky-list-view-checklist ::ng-deep .sky-switch-control{margin:0 5px 0 0}\n"], components: [{ type: SkyListViewChecklistItemComponent, selector: "sky-list-view-checklist-item", inputs: ["item"] }, { type: i5.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i5.λ4, selector: "sky-checkbox-label" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "async": i6.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
337
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyListViewChecklistComponent, decorators: [{
|
|
338
|
+
type: Component,
|
|
339
|
+
args: [{
|
|
340
|
+
selector: 'sky-list-view-checklist',
|
|
341
|
+
templateUrl: './list-view-checklist.component.html',
|
|
342
|
+
styleUrls: ['./list-view-checklist.component.scss'],
|
|
343
|
+
providers: [
|
|
344
|
+
{
|
|
345
|
+
provide: ListViewComponent,
|
|
346
|
+
useExisting: forwardRef(() => SkyListViewChecklistComponent),
|
|
347
|
+
},
|
|
348
|
+
ChecklistState,
|
|
349
|
+
ChecklistStateDispatcher,
|
|
350
|
+
ChecklistStateModel,
|
|
351
|
+
],
|
|
352
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
353
|
+
}]
|
|
354
|
+
}], ctorParameters: function () { return [{ type: i1.ListState }, { type: i1.ListStateDispatcher }, { type: ChecklistState }, { type: ChecklistStateDispatcher }]; }, propDecorators: { name: [{
|
|
355
|
+
type: Input
|
|
356
|
+
}], search: [{
|
|
357
|
+
type: Input
|
|
358
|
+
}], labelFieldSelector: [{
|
|
359
|
+
type: Input,
|
|
360
|
+
args: ['label']
|
|
361
|
+
}], description: [{
|
|
362
|
+
type: Input
|
|
363
|
+
}], selectMode: [{
|
|
364
|
+
type: Input
|
|
365
|
+
}], showOnlySelected: [{
|
|
366
|
+
type: Input
|
|
367
|
+
}] } });
|
|
337
368
|
|
|
338
|
-
|
|
339
|
-
}
|
|
340
|
-
SkyListViewChecklistModule =
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
]
|
|
355
|
-
})
|
|
356
|
-
], SkyListViewChecklistModule);
|
|
369
|
+
class SkyListViewChecklistModule {
|
|
370
|
+
}
|
|
371
|
+
SkyListViewChecklistModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyListViewChecklistModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
372
|
+
SkyListViewChecklistModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyListViewChecklistModule, declarations: [SkyListViewChecklistComponent,
|
|
373
|
+
SkyListViewChecklistItemComponent], imports: [CommonModule, FormsModule, SkyCheckboxModule], exports: [SkyListViewChecklistComponent, SkyListViewChecklistItemComponent] });
|
|
374
|
+
SkyListViewChecklistModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyListViewChecklistModule, imports: [[CommonModule, FormsModule, SkyCheckboxModule]] });
|
|
375
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: SkyListViewChecklistModule, decorators: [{
|
|
376
|
+
type: NgModule,
|
|
377
|
+
args: [{
|
|
378
|
+
declarations: [
|
|
379
|
+
SkyListViewChecklistComponent,
|
|
380
|
+
SkyListViewChecklistItemComponent,
|
|
381
|
+
],
|
|
382
|
+
imports: [CommonModule, FormsModule, SkyCheckboxModule],
|
|
383
|
+
exports: [SkyListViewChecklistComponent, SkyListViewChecklistItemComponent],
|
|
384
|
+
}]
|
|
385
|
+
}] });
|
|
357
386
|
|
|
358
387
|
/**
|
|
359
388
|
* Generated bundle index. Do not edit.
|
|
360
389
|
*/
|
|
361
390
|
|
|
362
|
-
export { ChecklistState, ChecklistStateDispatcher, ChecklistStateModel, ChecklistStateOrchestrator, ListViewChecklistItemModel, ListViewChecklistItemsLoadAction, ListViewChecklistItemsOrchestrator, SkyListViewChecklistComponent, SkyListViewChecklistModule, SkyListViewChecklistItemComponent as
|
|
391
|
+
export { ChecklistState, ChecklistStateDispatcher, ChecklistStateModel, ChecklistStateOrchestrator, ListViewChecklistItemModel, ListViewChecklistItemsLoadAction, ListViewChecklistItemsOrchestrator, SkyListViewChecklistComponent, SkyListViewChecklistModule, SkyListViewChecklistItemComponent as λ1 };
|
|
363
392
|
//# sourceMappingURL=skyux-list-builder-view-checklist.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-list-builder-view-checklist.js","sources":["ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/state/checklist-state.model.ts","ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/state/checklist-state.rxstate.ts","ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/state/items/item.model.ts","ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/state/items/load.action.ts","ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/state/items/items.orchestrator.ts","ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/state/checklist-state.state-node.ts","ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/list-view-checklist.component.ts","ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/list-view-checklist-item.component.ts","ng://@skyux/list-builder-view-checklist/modules/list-view-checklist/list-view-checklist.module.ts","ng://@skyux/list-builder-view-checklist/skyux-list-builder-view-checklist.ts"],"sourcesContent":["import {\n AsyncList\n} from '@skyux/list-builder-common';\n\nimport {\n ListViewChecklistItemModel\n} from './items/item.model';\n\nexport class ChecklistStateModel {\n public items: AsyncList<ListViewChecklistItemModel> = new AsyncList<ListViewChecklistItemModel>();\n}\n","import {\n Injectable\n} from '@angular/core';\n\nimport {\n StateDispatcher,\n StateOrchestrator\n} from '@skyux/list-builder-common';\n\nimport {\n ChecklistStateAction\n} from './checklist-state-action.type';\n\n@Injectable()\nexport class ChecklistStateDispatcher extends StateDispatcher<ChecklistStateAction> {\n\n}\n\nexport class ChecklistStateOrchestrator<T> extends StateOrchestrator<T, ChecklistStateAction> {\n\n}\n","export class ListViewChecklistItemModel {\n public id: string;\n public label: string;\n public description: string;\n\n constructor(id: string, data?: any) {\n this.id = id;\n\n if (data) {\n this.label = data.label;\n this.description = data.description;\n }\n }\n}\n","import { ListViewChecklistItemModel } from './item.model';\n\nexport class ListViewChecklistItemsLoadAction {\n constructor(\n public items: Array<ListViewChecklistItemModel> = [],\n public refresh: boolean = false,\n public dataChanged: boolean = true,\n public itemCount: number = items.length\n ) {\n\n }\n}\n","import {\n ChecklistStateOrchestrator\n} from '../checklist-state.rxstate';\n\nimport {\n AsyncList\n} from '@skyux/list-builder-common';\n\nimport {\n ListViewChecklistItemModel\n} from './item.model';\n\nimport {\n ListViewChecklistItemsLoadAction\n} from './load.action';\n\nexport class ListViewChecklistItemsOrchestrator\n extends ChecklistStateOrchestrator<AsyncList<ListViewChecklistItemModel>> {\n /* istanbul ignore next */\n constructor() {\n super();\n this.register(ListViewChecklistItemsLoadAction, this.load);\n }\n\n private load(\n state: AsyncList<ListViewChecklistItemModel>,\n action: ListViewChecklistItemsLoadAction): AsyncList<ListViewChecklistItemModel> {\n\n const newListItems = action.items.map(item => new ListViewChecklistItemModel(item.id, item));\n\n if (action.refresh) {\n return new AsyncList<ListViewChecklistItemModel>(\n [...newListItems],\n action.dataChanged ? Date.now() : state.lastUpdate,\n false,\n state.count\n );\n }\n\n return new AsyncList<ListViewChecklistItemModel>(\n [...state.items, ...newListItems],\n action.dataChanged ? Date.now() : state.lastUpdate,\n false,\n action.itemCount\n );\n }\n}\n","import {\n Injectable\n} from '@angular/core';\n\nimport {\n StateNode\n} from '@skyux/list-builder-common';\n\nimport {\n ChecklistStateModel\n} from './checklist-state.model';\n\nimport {\n ChecklistStateDispatcher\n} from './checklist-state.rxstate';\n\nimport {\n ListViewChecklistItemsOrchestrator\n} from './items/items.orchestrator';\n\n@Injectable()\nexport class ChecklistState extends StateNode<ChecklistStateModel> {\n constructor(initialState: ChecklistStateModel, dispatcher: ChecklistStateDispatcher) {\n super(initialState, dispatcher);\n\n this.register('items', ListViewChecklistItemsOrchestrator)\n .begin();\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n Input,\n OnDestroy,\n SimpleChanges,\n OnChanges,\n OnInit\n} from '@angular/core';\n\nimport {\n SkyCheckboxChange\n} from '@skyux/forms';\n\nimport {\n ListState,\n ListStateDispatcher,\n ListSelectedModel,\n ListFilterModel,\n ListSelectedSetItemSelectedAction,\n ListSelectedSetItemsSelectedAction,\n ListToolbarSetTypeAction,\n ListViewComponent\n} from '@skyux/list-builder';\n\nimport {\n AsyncItem,\n AsyncList,\n getData,\n ListItemModel\n} from '@skyux/list-builder-common';\n\nimport {\n Observable,\n Subject\n} from 'rxjs';\n\nimport {\n distinctUntilChanged,\n map as observableMap,\n take,\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n ChecklistState\n} from './state/checklist-state.state-node';\n\nimport {\n ChecklistStateDispatcher\n} from './state/checklist-state.rxstate';\n\nimport {\n ChecklistStateModel\n} from './state/checklist-state.model';\n\nimport {\n ListViewChecklistItemsLoadAction\n} from './state/items/load.action';\n\nimport {\n ListViewChecklistItemModel\n} from './state/items/item.model';\n\n@Component({\n selector: 'sky-list-view-checklist',\n templateUrl: './list-view-checklist.component.html',\n styleUrls: ['./list-view-checklist.component.scss'],\n providers: [\n /* tslint:disable */\n { provide: ListViewComponent, useExisting: forwardRef(() => SkyListViewChecklistComponent) },\n /* tslint:enable */\n ChecklistState,\n ChecklistStateDispatcher,\n ChecklistStateModel\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyListViewChecklistComponent extends ListViewComponent implements OnInit, OnDestroy, OnChanges {\n @Input()\n set name(value: string) {\n this.viewName = value;\n }\n\n @Input()\n public search: (data: any, searchText: string) => boolean = this.searchFunction();\n\n /* tslint:disable */\n @Input('label')\n public labelFieldSelector: string = 'label';\n /* tslint:enable */\n\n @Input()\n public description: string = 'description';\n\n @Input()\n public set selectMode(value: string) {\n this._selectMode = value;\n\n if (this.selectMode === 'multiple') {\n this.dispatcher.toolbarShowMultiselectToolbar(true);\n } else {\n this.showOnlySelected = false;\n this.dispatcher.toolbarShowMultiselectToolbar(false);\n }\n\n this.reapplyFilter(this.showOnlySelected);\n }\n\n public get selectMode(): string {\n return this._selectMode || 'multiple';\n }\n\n @Input()\n public set showOnlySelected(value: boolean) {\n this._showOnlySelected = value;\n }\n\n public get showOnlySelected(): boolean {\n return this._showOnlySelected;\n }\n\n private ngUnsubscribe = new Subject();\n\n private _selectMode = 'multiple';\n\n private _selectedIdMap: Map<string, boolean> = new Map<string, boolean>();\n\n private _showOnlySelected: boolean = false;\n\n constructor(\n state: ListState,\n private dispatcher: ListStateDispatcher,\n private checklistState: ChecklistState,\n private checklistDispatcher: ChecklistStateDispatcher\n ) {\n super(state, 'Checklist View');\n\n let lastUpdate: any;\n this.state\n .pipe(\n observableMap(s => s.items),\n distinctUntilChanged(),\n observableMap((items: AsyncList<ListItemModel>) => {\n let dataChanged = lastUpdate === undefined || items.lastUpdate !== lastUpdate;\n lastUpdate = items.lastUpdate;\n let newItems = items.items.map(item => {\n return new ListViewChecklistItemModel(item.id, {\n label:\n this.labelFieldSelector ? getData(item.data, this.labelFieldSelector) : undefined,\n description:\n this.description ? getData(item.data, this.description) : undefined\n });\n });\n\n this.checklistDispatcher.next(\n new ListViewChecklistItemsLoadAction(newItems, true, dataChanged, items.count)\n );\n })\n )\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe();\n\n this.state\n .pipe(\n observableMap(t => t.selected),\n takeUntil(this.ngUnsubscribe)\n )\n .subscribe((selectedItems: AsyncItem<ListSelectedModel>) => {\n this._selectedIdMap = selectedItems.item.selectedIdMap;\n });\n }\n\n public ngOnInit() {\n if (this.selectMode === 'multiple') {\n this.dispatcher.toolbarShowMultiselectToolbar(true);\n }\n\n // If 'show-selected' filter is changed from multiselect toolbar (list-builder)\n // make sure the private variable _showOnlySelected stays in sync.\n this.state\n .pipe(\n observableMap(t => t.filters),\n takeUntil(this.ngUnsubscribe),\n distinctUntilChanged(this.showSelectedValuesEqual)\n )\n .subscribe((filters: ListFilterModel[]) => {\n const showSelectedFilter = filters.find((filter: ListFilterModel) => filter.name === 'show-selected');\n if (showSelectedFilter) {\n this._showOnlySelected = (showSelectedFilter.value === 'true');\n }\n });\n }\n\n public ngOnChanges(changes: SimpleChanges) {\n if (changes['showOnlySelected'] &&\n changes['showOnlySelected'].currentValue !== changes['showOnlySelected'].previousValue) {\n this.reapplyFilter(changes['showOnlySelected'].currentValue);\n }\n }\n\n /**\n * @deprecated since version 3.2.0\n * Multiselect toolbar will automatically show if select mode is set to 'multiple'.\n * These methods are no longer needed, as that functionality is part of list-builder.\n */\n public changeVisibleItems(change: SkyCheckboxChange) {\n this.showOnlySelected = change.checked;\n }\n\n /**\n * @deprecated since version 3.2.0\n * Multiselect toolbar will automatically show if select mode is set to 'multiple'.\n * These methods are no longer needed, as that functionality is part of list-builder.\n */\n public clearSelections() {\n this.state\n .pipe(\n observableMap(state => state.items.items),\n take(1)\n )\n .subscribe(items => {\n this.dispatcher\n .next(new ListSelectedSetItemsSelectedAction(items.map(item => item.id), false, false));\n\n /* istanbul ignore else */\n if (this.showOnlySelected) {\n this.reapplyFilter(this.showOnlySelected);\n }\n });\n }\n\n /**\n * @deprecated since version 3.2.0\n * Multiselect toolbar will automatically show if select mode is set to 'multiple'.\n * These methods are no longer needed, as that functionality is part of list-builder.\n */\n public selectAll() {\n this.state\n .pipe(\n observableMap(state => state.items.items),\n take(1)\n )\n .subscribe(items => {\n this.dispatcher\n .next(new ListSelectedSetItemsSelectedAction(items.map(item => item.id), true, false));\n\n /* istanbul ignore else */\n if (this.showOnlySelected) {\n this.reapplyFilter(this.showOnlySelected);\n }\n });\n }\n\n public onViewActive() {\n if (this.search !== undefined) {\n this.dispatcher.searchSetFunctions([this.search]);\n }\n\n let fieldSelectors: Array<string> = [];\n if (this.labelFieldSelector) {\n fieldSelectors.push(this.labelFieldSelector);\n }\n\n if (this.description) {\n fieldSelectors.push(this.description);\n }\n\n this.dispatcher.searchSetFieldSelectors(fieldSelectors);\n\n this.dispatcher.next(new ListToolbarSetTypeAction('search'));\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n get items(): Observable<ListViewChecklistItemModel[]> {\n return this.checklistState.pipe(observableMap(state => state.items.items));\n }\n\n public searchFunction() {\n return (data: any, searchText: string) => {\n if (this.labelFieldSelector !== undefined) {\n let label = getData(data, this.labelFieldSelector);\n /* tslint:disable:no-null-keyword */\n if (\n label !== undefined &&\n label !== null &&\n label.toString().toLowerCase().indexOf(searchText) !== -1\n ) {\n return true;\n }\n /* tslint:enable:no-null-keyword */\n }\n\n if (this.description !== undefined) {\n let description = getData(data, this.description);\n /* tslint:disable:no-null-keyword */\n if (\n description !== undefined &&\n description !== null &&\n description.toString().toLowerCase().indexOf(searchText) !== -1\n ) {\n return true;\n }\n /* tslint:enable:no-null-keyword */\n }\n\n return false;\n };\n }\n\n public itemSelected(id: string): Observable<boolean> {\n return this.state.pipe(observableMap(state => state.selected.item.selectedIdMap.get(id)));\n }\n\n public setItemSelection(item: ListItemModel, event: any) {\n this.dispatcher.next(new ListSelectedSetItemSelectedAction(item.id, event.checked));\n }\n\n public singleSelectRowClick(item: ListItemModel) {\n this.dispatcher.next(new ListSelectedSetItemsSelectedAction([item.id], true, true));\n }\n\n private getShowSelectedFilter(isSelected: boolean) {\n return new ListFilterModel({\n name: 'show-selected',\n value: isSelected.toString(),\n filterFunction: (model: ListItemModel, showOnlySelected: boolean) => {\n if (showOnlySelected.toString() !== false.toString()) {\n return this._selectedIdMap.get(model.id);\n }\n },\n defaultValue: false.toString()\n });\n }\n\n private reapplyFilter(isSelected: boolean) {\n let self = this;\n\n this.state\n .pipe(\n observableMap(state => state.filters),\n take(1)\n )\n .subscribe((filters: ListFilterModel[]) => {\n filters = filters.filter(filter => filter.name !== 'show-selected');\n filters.push(self.getShowSelectedFilter(isSelected));\n this.dispatcher.filtersUpdate(filters);\n });\n }\n\n private showSelectedValuesEqual(prev: ListFilterModel[], next: ListFilterModel[]) {\n const prevShowSelectedFilter = prev.find(filter => filter.name === 'show-selected');\n const nextShowSelectedFilter = next.find(filter => filter.name === 'show-selected');\n\n if (prevShowSelectedFilter && nextShowSelectedFilter) {\n return prevShowSelectedFilter.value === nextShowSelectedFilter.value;\n }\n\n return true;\n }\n}\n","import {\n Component,\n Input,\n ChangeDetectionStrategy\n} from '@angular/core';\n\nimport {\n ListViewChecklistItemModel\n} from './state/items/item.model';\n\n@Component({\n selector: 'sky-list-view-checklist-item',\n templateUrl: './list-view-checklist-item.component.html',\n styleUrls: ['./list-view-checklist-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyListViewChecklistItemComponent {\n @Input()\n public item: ListViewChecklistItemModel;\n}\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n FormsModule\n} from '@angular/forms';\n\nimport {\n SkyCheckboxModule\n} from '@skyux/forms';\n\nimport {\n SkyListViewChecklistComponent\n} from './list-view-checklist.component';\n\nimport {\n SkyListViewChecklistItemComponent\n} from './list-view-checklist-item.component';\n\n@NgModule({\n declarations: [\n SkyListViewChecklistComponent,\n SkyListViewChecklistItemComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n SkyCheckboxModule\n ],\n exports: [\n SkyListViewChecklistComponent,\n SkyListViewChecklistItemComponent\n ]\n})\nexport class SkyListViewChecklistModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {SkyListViewChecklistItemComponent as ɵa} from './modules/list-view-checklist/list-view-checklist-item.component';"],"names":["observableMap"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-list-builder-view-checklist.js","sources":["../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/state/checklist-state.rxstate.ts","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/state/items/item.model.ts","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/state/items/load.action.ts","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/state/items/items.orchestrator.ts","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/state/checklist-state.model.ts","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/state/checklist-state.state-node.ts","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/list-view-checklist-item.component.ts","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/list-view-checklist-item.component.html","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/list-view-checklist.component.ts","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/list-view-checklist.component.html","../../../projects/list-builder-view-checklist/src/modules/list-view-checklist/list-view-checklist.module.ts","../../../projects/list-builder-view-checklist/src/skyux-list-builder-view-checklist.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { StateDispatcher, StateOrchestrator } from '@skyux/list-builder-common';\n\nimport { ChecklistStateAction } from './checklist-state-action.type';\n\n@Injectable()\nexport class ChecklistStateDispatcher extends StateDispatcher<ChecklistStateAction> {}\n\nexport class ChecklistStateOrchestrator<T> extends StateOrchestrator<\n T,\n ChecklistStateAction\n> {}\n","export class ListViewChecklistItemModel {\n public id: string;\n public label: string;\n public description: string;\n\n constructor(id: string, data?: any) {\n this.id = id;\n\n if (data) {\n this.label = data.label;\n this.description = data.description;\n }\n }\n}\n","import { ListViewChecklistItemModel } from './item.model';\n\nexport class ListViewChecklistItemsLoadAction {\n constructor(\n public items: Array<ListViewChecklistItemModel> = [],\n public refresh: boolean = false,\n public dataChanged: boolean = true,\n public itemCount: number = items.length\n ) {}\n}\n","import { ChecklistStateOrchestrator } from '../checklist-state.rxstate';\n\nimport { AsyncList } from '@skyux/list-builder-common';\n\nimport { ListViewChecklistItemModel } from './item.model';\n\nimport { ListViewChecklistItemsLoadAction } from './load.action';\n\nexport class ListViewChecklistItemsOrchestrator extends ChecklistStateOrchestrator<\n AsyncList<ListViewChecklistItemModel>\n> {\n /* istanbul ignore next */\n constructor() {\n super();\n this.register(ListViewChecklistItemsLoadAction, this.load);\n }\n\n private load(\n state: AsyncList<ListViewChecklistItemModel>,\n action: ListViewChecklistItemsLoadAction\n ): AsyncList<ListViewChecklistItemModel> {\n const newListItems = action.items.map(\n (item) => new ListViewChecklistItemModel(item.id, item)\n );\n\n if (action.refresh) {\n return new AsyncList<ListViewChecklistItemModel>(\n [...newListItems],\n action.dataChanged ? Date.now() : state.lastUpdate,\n false,\n state.count\n );\n }\n\n return new AsyncList<ListViewChecklistItemModel>(\n [...state.items, ...newListItems],\n action.dataChanged ? Date.now() : state.lastUpdate,\n false,\n action.itemCount\n );\n }\n}\n","import { AsyncList } from '@skyux/list-builder-common';\n\nimport { ListViewChecklistItemModel } from './items/item.model';\n\nexport class ChecklistStateModel {\n public items: AsyncList<ListViewChecklistItemModel> =\n new AsyncList<ListViewChecklistItemModel>();\n}\n","import { Injectable } from '@angular/core';\n\nimport { StateNode } from '@skyux/list-builder-common';\n\nimport { ChecklistStateModel } from './checklist-state.model';\n\nimport { ChecklistStateDispatcher } from './checklist-state.rxstate';\n\nimport { ListViewChecklistItemsOrchestrator } from './items/items.orchestrator';\n\n@Injectable()\nexport class ChecklistState extends StateNode<ChecklistStateModel> {\n constructor(\n initialState: ChecklistStateModel,\n dispatcher: ChecklistStateDispatcher\n ) {\n super(initialState, dispatcher);\n\n this.register('items', ListViewChecklistItemsOrchestrator).begin();\n }\n}\n","import { Component, Input, ChangeDetectionStrategy } from '@angular/core';\n\nimport { ListViewChecklistItemModel } from './state/items/item.model';\n\n@Component({\n selector: 'sky-list-view-checklist-item',\n templateUrl: './list-view-checklist-item.component.html',\n styleUrls: ['./list-view-checklist-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyListViewChecklistItemComponent {\n @Input()\n public item: ListViewChecklistItemModel;\n}\n","<div class=\"sky-list-view-checklist-item\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n Input,\n OnDestroy,\n SimpleChanges,\n OnChanges,\n OnInit,\n} from '@angular/core';\n\nimport { SkyCheckboxChange } from '@skyux/forms';\n\nimport {\n ListState,\n ListStateDispatcher,\n ListSelectedModel,\n ListFilterModel,\n ListSelectedSetItemSelectedAction,\n ListSelectedSetItemsSelectedAction,\n ListToolbarSetTypeAction,\n ListViewComponent,\n} from '@skyux/list-builder';\n\nimport {\n AsyncItem,\n AsyncList,\n getData,\n ListItemModel,\n} from '@skyux/list-builder-common';\n\nimport { Observable, Subject } from 'rxjs';\n\nimport {\n distinctUntilChanged,\n map as observableMap,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nimport { ChecklistState } from './state/checklist-state.state-node';\n\nimport { ChecklistStateDispatcher } from './state/checklist-state.rxstate';\n\nimport { ChecklistStateModel } from './state/checklist-state.model';\n\nimport { ListViewChecklistItemsLoadAction } from './state/items/load.action';\n\nimport { ListViewChecklistItemModel } from './state/items/item.model';\n\n@Component({\n selector: 'sky-list-view-checklist',\n templateUrl: './list-view-checklist.component.html',\n styleUrls: ['./list-view-checklist.component.scss'],\n providers: [\n {\n provide: ListViewComponent,\n useExisting: forwardRef(() => SkyListViewChecklistComponent),\n },\n ChecklistState,\n ChecklistStateDispatcher,\n ChecklistStateModel,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyListViewChecklistComponent\n extends ListViewComponent\n implements OnInit, OnDestroy, OnChanges\n{\n /**\n * Specifies the name of the view.\n * @required\n */\n @Input()\n set name(value: string) {\n this.viewName = value;\n }\n\n /**\n * Specifies a search function to apply on the view data.\n * The default function searches view data on label, description,\n * and category if field selectors are defined for the given field.\n * @default default search function\n */\n @Input()\n public search: (data: any, searchText: string) => boolean =\n this.searchFunction();\n\n /**\n * Specifies the name of the label field selector.\n * @default 'label'\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('label')\n public labelFieldSelector: string = 'label';\n\n /**\n * Specifies the name of the description field selector.\n * @default 'description'\n */\n @Input()\n public description: string = 'description';\n\n /**\n * Specifies how many items users can select.\n * `single` allows users to select one item in the checklist, while `multiple`\n * allows users to select multiple items in the checklist.\n * @default 'multiple'\n */\n @Input()\n public set selectMode(value: string) {\n this._selectMode = value;\n\n if (this.selectMode === 'multiple') {\n this.dispatcher.toolbarShowMultiselectToolbar(true);\n } else {\n this.showOnlySelected = false;\n this.dispatcher.toolbarShowMultiselectToolbar(false);\n }\n\n this.reapplyFilter(this.showOnlySelected);\n }\n\n public get selectMode(): string {\n return this._selectMode || 'multiple';\n }\n\n /**\n * Indicates whether to display selected items only.\n * @default false\n */\n @Input()\n public set showOnlySelected(value: boolean) {\n this._showOnlySelected = value;\n }\n\n public get showOnlySelected(): boolean {\n return this._showOnlySelected;\n }\n\n private ngUnsubscribe = new Subject();\n\n private _selectMode = 'multiple';\n\n private _selectedIdMap: Map<string, boolean> = new Map<string, boolean>();\n\n private _showOnlySelected: boolean = false;\n\n constructor(\n state: ListState,\n private dispatcher: ListStateDispatcher,\n private checklistState: ChecklistState,\n private checklistDispatcher: ChecklistStateDispatcher\n ) {\n super(state, 'Checklist View');\n\n let lastUpdate: any;\n this.state\n .pipe(\n observableMap((s) => s.items),\n distinctUntilChanged(),\n observableMap((items: AsyncList<ListItemModel>) => {\n let dataChanged =\n lastUpdate === undefined || items.lastUpdate !== lastUpdate;\n lastUpdate = items.lastUpdate;\n let newItems = items.items.map((item) => {\n return new ListViewChecklistItemModel(item.id, {\n label: this.labelFieldSelector\n ? getData(item.data, this.labelFieldSelector)\n : undefined,\n description: this.description\n ? getData(item.data, this.description)\n : undefined,\n });\n });\n\n this.checklistDispatcher.next(\n new ListViewChecklistItemsLoadAction(\n newItems,\n true,\n dataChanged,\n items.count\n )\n );\n })\n )\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe();\n\n this.state\n .pipe(\n observableMap((t) => t.selected),\n takeUntil(this.ngUnsubscribe)\n )\n .subscribe((selectedItems: AsyncItem<ListSelectedModel>) => {\n this._selectedIdMap = selectedItems.item.selectedIdMap;\n });\n }\n\n public ngOnInit() {\n if (this.selectMode === 'multiple') {\n this.dispatcher.toolbarShowMultiselectToolbar(true);\n }\n\n // If 'show-selected' filter is changed from multiselect toolbar (list-builder)\n // make sure the private variable _showOnlySelected stays in sync.\n this.state\n .pipe(\n observableMap((t) => t.filters),\n takeUntil(this.ngUnsubscribe),\n distinctUntilChanged(this.showSelectedValuesEqual)\n )\n .subscribe((filters: ListFilterModel[]) => {\n const showSelectedFilter = filters.find(\n (filter: ListFilterModel) => filter.name === 'show-selected'\n );\n if (showSelectedFilter) {\n this._showOnlySelected = showSelectedFilter.value === 'true';\n }\n });\n }\n\n public ngOnChanges(changes: SimpleChanges) {\n if (\n changes['showOnlySelected'] &&\n changes['showOnlySelected'].currentValue !==\n changes['showOnlySelected'].previousValue\n ) {\n this.reapplyFilter(changes['showOnlySelected'].currentValue);\n }\n }\n\n /**\n * @deprecated since version 3.2.0\n * Multiselect toolbar will automatically show if select mode is set to 'multiple'.\n * These methods are no longer needed, as that functionality is part of list-builder.\n */\n public changeVisibleItems(change: SkyCheckboxChange) {\n this.showOnlySelected = change.checked;\n }\n\n /**\n * @deprecated since version 3.2.0\n * Multiselect toolbar will automatically show if select mode is set to 'multiple'.\n * These methods are no longer needed, as that functionality is part of list-builder.\n */\n public clearSelections() {\n this.state\n .pipe(\n observableMap((state) => state.items.items),\n take(1)\n )\n .subscribe((items) => {\n this.dispatcher.next(\n new ListSelectedSetItemsSelectedAction(\n items.map((item) => item.id),\n false,\n false\n )\n );\n\n /* istanbul ignore else */\n if (this.showOnlySelected) {\n this.reapplyFilter(this.showOnlySelected);\n }\n });\n }\n\n /**\n * @deprecated since version 3.2.0\n * Multiselect toolbar will automatically show if select mode is set to 'multiple'.\n * These methods are no longer needed, as that functionality is part of list-builder.\n */\n public selectAll() {\n this.state\n .pipe(\n observableMap((state) => state.items.items),\n take(1)\n )\n .subscribe((items) => {\n this.dispatcher.next(\n new ListSelectedSetItemsSelectedAction(\n items.map((item) => item.id),\n true,\n false\n )\n );\n\n /* istanbul ignore else */\n if (this.showOnlySelected) {\n this.reapplyFilter(this.showOnlySelected);\n }\n });\n }\n\n public onViewActive() {\n if (this.search !== undefined) {\n this.dispatcher.searchSetFunctions([this.search]);\n }\n\n let fieldSelectors: Array<string> = [];\n if (this.labelFieldSelector) {\n fieldSelectors.push(this.labelFieldSelector);\n }\n\n if (this.description) {\n fieldSelectors.push(this.description);\n }\n\n this.dispatcher.searchSetFieldSelectors(fieldSelectors);\n\n this.dispatcher.next(new ListToolbarSetTypeAction('search'));\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n get items(): Observable<ListViewChecklistItemModel[]> {\n return this.checklistState.pipe(\n observableMap((state) => state.items.items)\n );\n }\n\n public searchFunction() {\n return (data: any, searchText: string) => {\n if (this.labelFieldSelector !== undefined) {\n let label = getData(data, this.labelFieldSelector);\n if (\n label !== undefined &&\n label !== null &&\n label.toString().toLowerCase().indexOf(searchText) !== -1\n ) {\n return true;\n }\n }\n\n if (this.description !== undefined) {\n let description = getData(data, this.description);\n if (\n description !== undefined &&\n description !== null &&\n description.toString().toLowerCase().indexOf(searchText) !== -1\n ) {\n return true;\n }\n }\n\n return false;\n };\n }\n\n public itemSelected(id: string): Observable<boolean> {\n return this.state.pipe(\n observableMap((state) => state.selected.item.selectedIdMap.get(id))\n );\n }\n\n public setItemSelection(item: ListItemModel, event: any) {\n this.dispatcher.next(\n new ListSelectedSetItemSelectedAction(item.id, event.checked)\n );\n }\n\n public singleSelectRowClick(item: ListItemModel) {\n this.dispatcher.next(\n new ListSelectedSetItemsSelectedAction([item.id], true, true)\n );\n }\n\n private getShowSelectedFilter(isSelected: boolean) {\n return new ListFilterModel({\n name: 'show-selected',\n value: isSelected.toString(),\n filterFunction: (model: ListItemModel, showOnlySelected: boolean) => {\n /* istanbul ignore else */\n if (showOnlySelected.toString() !== false.toString()) {\n return this._selectedIdMap.get(model.id);\n }\n },\n defaultValue: false.toString(),\n });\n }\n\n private reapplyFilter(isSelected: boolean) {\n let self = this;\n\n this.state\n .pipe(\n observableMap((state) => state.filters),\n take(1)\n )\n .subscribe((filters: ListFilterModel[]) => {\n filters = filters.filter((filter) => filter.name !== 'show-selected');\n filters.push(self.getShowSelectedFilter(isSelected));\n this.dispatcher.filtersUpdate(filters);\n });\n }\n\n private showSelectedValuesEqual(\n prev: ListFilterModel[],\n next: ListFilterModel[]\n ) {\n const prevShowSelectedFilter = prev.find(\n (filter) => filter.name === 'show-selected'\n );\n const nextShowSelectedFilter = next.find(\n (filter) => filter.name === 'show-selected'\n );\n\n if (prevShowSelectedFilter && nextShowSelectedFilter) {\n return prevShowSelectedFilter.value === nextShowSelectedFilter.value;\n }\n\n return true;\n }\n}\n","<div class=\"sky-list-view-checklist\" *ngIf=\"active | async\">\n <div [ngSwitch]=\"selectMode\">\n <ng-template ngSwitchCase=\"single\">\n <div role=\"radiogroup\">\n <sky-list-view-checklist-item\n *ngFor=\"let item of items | async\"\n [attr.sky-cmp-id]=\"item.id\"\n [item]=\"item\"\n >\n <button\n role=\"radio\"\n type=\"button\"\n class=\"sky-list-view-checklist-single-button\"\n [attr.aria-checked]=\"(itemSelected(item.id) | async) || false\"\n [ngClass]=\"{\n 'sky-list-view-checklist-row-selected':\n (itemSelected(item.id) | async)\n }\"\n (click)=\"singleSelectRowClick(item)\"\n >\n <div *ngIf=\"item.label\" class=\"sky-emphasized\">\n {{ item.label }}\n </div>\n <div *ngIf=\"item.description\">{{ item.description }}</div>\n </button>\n </sky-list-view-checklist-item>\n </div>\n </ng-template>\n\n <ng-template ngSwitchDefault>\n <sky-list-view-checklist-item\n *ngFor=\"let item of items | async\"\n [attr.sky-cmp-id]=\"item.id\"\n [item]=\"item\"\n >\n <sky-checkbox\n [checked]=\"itemSelected(item.id) | async\"\n (change)=\"setItemSelection(item, $event)\"\n >\n <sky-checkbox-label>\n <div\n *ngIf=\"item.label\"\n class=\"sky-emphasized\"\n [attr.title]=\"item.label\"\n >\n {{ item.label }}\n </div>\n <div *ngIf=\"item.description\" [attr.title]=\"item.description\">\n {{ item.description }}\n </div>\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-list-view-checklist-item>\n </ng-template>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { CommonModule } from '@angular/common';\n\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyCheckboxModule } from '@skyux/forms';\n\nimport { SkyListViewChecklistComponent } from './list-view-checklist.component';\n\nimport { SkyListViewChecklistItemComponent } from './list-view-checklist-item.component';\n\n@NgModule({\n declarations: [\n SkyListViewChecklistComponent,\n SkyListViewChecklistItemComponent,\n ],\n imports: [CommonModule, FormsModule, SkyCheckboxModule],\n exports: [SkyListViewChecklistComponent, SkyListViewChecklistItemComponent],\n})\nexport class SkyListViewChecklistModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["observableMap"],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { ListViewChecklistItemModel } from './state/items/item.model';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
2
3
|
export declare class SkyListViewChecklistItemComponent {
|
|
3
4
|
item: ListViewChecklistItemModel;
|
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SkyListViewChecklistItemComponent, never>;
|
|
6
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SkyListViewChecklistItemComponent, "sky-list-view-checklist-item", never, { "item": "item"; }, {}, never, ["*"]>;
|
|
4
7
|
}
|