@skyux/list-builder-common 8.6.0 → 9.0.0-alpha.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/package.json +7 -13
- package/fesm2015/skyux-list-builder-common.mjs.map +0 -1
- package/fesm2020/skyux-list-builder-common.mjs +0 -228
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/helpers.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/rxstate/async-item.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/rxstate/async-list.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/rxstate/helpers.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/rxstate/state-dispatcher.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/rxstate/state-node.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/rxstate/state-orchestrator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/state/items/item.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/state/sort/field-selector.model.mjs +0 -0
- /package/{esm2020 → esm2022}/skyux-list-builder-common.mjs +0 -0
- /package/{fesm2015 → fesm2022}/skyux-list-builder-common.mjs +0 -0
- /package/{fesm2020 → fesm2022}/skyux-list-builder-common.mjs.map +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skyux/list-builder-common",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "9.0.0-alpha.0",
|
|
4
4
|
"author": "Blackbaud, Inc.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"blackbaud",
|
|
@@ -21,28 +21,22 @@
|
|
|
21
21
|
},
|
|
22
22
|
".": {
|
|
23
23
|
"types": "./index.d.ts",
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"node": "./fesm2015/skyux-list-builder-common.mjs",
|
|
28
|
-
"default": "./fesm2020/skyux-list-builder-common.mjs"
|
|
24
|
+
"esm2022": "./esm2022/skyux-list-builder-common.mjs",
|
|
25
|
+
"esm": "./esm2022/skyux-list-builder-common.mjs",
|
|
26
|
+
"default": "./fesm2022/skyux-list-builder-common.mjs"
|
|
29
27
|
},
|
|
30
28
|
"./documentation.json": {
|
|
31
29
|
"default": "./documentation.json"
|
|
32
30
|
}
|
|
33
31
|
},
|
|
34
32
|
"peerDependencies": {
|
|
35
|
-
"@angular/common": "^
|
|
36
|
-
"@angular/core": "^
|
|
33
|
+
"@angular/common": "^16.1.7",
|
|
34
|
+
"@angular/core": "^16.1.7"
|
|
37
35
|
},
|
|
38
36
|
"dependencies": {
|
|
39
37
|
"tslib": "^2.5.0"
|
|
40
38
|
},
|
|
41
|
-
"module": "
|
|
42
|
-
"es2020": "fesm2020/skyux-list-builder-common.mjs",
|
|
43
|
-
"esm2020": "esm2020/skyux-list-builder-common.mjs",
|
|
44
|
-
"fesm2020": "fesm2020/skyux-list-builder-common.mjs",
|
|
45
|
-
"fesm2015": "fesm2015/skyux-list-builder-common.mjs",
|
|
39
|
+
"module": "fesm2022/skyux-list-builder-common.mjs",
|
|
46
40
|
"typings": "index.d.ts",
|
|
47
41
|
"sideEffects": false
|
|
48
42
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-list-builder-common.mjs","sources":["../../../../../libs/components/list-builder-common/src/lib/state/items/item.model.ts","../../../../../libs/components/list-builder-common/src/lib/state/sort/field-selector.model.ts","../../../../../libs/components/list-builder-common/src/lib/helpers.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/async-item.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/async-list.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/helpers.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-dispatcher.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-node.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-orchestrator.ts","../../../../../libs/components/list-builder-common/src/skyux-list-builder-common.ts"],"sourcesContent":["/**\n * @deprecated\n */\nexport class ListItemModel {\n /**\n * The data for the item in the list.\n */\n public data: any;\n\n /**\n * The ID for the item in the list.\n * @required\n */\n public id: string;\n\n /**\n * Whether the item in the list is selected.\n * @default false\n */\n public isSelected?: boolean;\n\n constructor(id: string, data?: any, isSelected?: boolean) {\n if (id === undefined) {\n throw new Error('All list item models require an ID');\n }\n\n this.id = id;\n\n if (data !== undefined) {\n this.data = data;\n }\n\n if (isSelected !== undefined) {\n this.isSelected = isSelected;\n }\n }\n}\n","/**\n * @deprecated\n */\nexport class ListSortFieldSelectorModel {\n /**\n * Whether to sort in descending order.\n */\n public descending = false;\n\n /**\n * The fields to sort.\n */\n public fieldSelector: string;\n\n constructor(data?: any) {\n if (data) {\n this.fieldSelector = data.fieldSelector;\n this.descending = data.descending;\n }\n }\n}\n","import { Observable } from 'rxjs';\n\n/**\n * @internal\n * @deprecated\n */\nexport function getData(item: any, selector: string): any {\n if (!selector) {\n return undefined;\n }\n\n const resultFieldParts = selector.split('.');\n if (resultFieldParts.length > 0 && resultFieldParts[0] === '') {\n resultFieldParts.shift();\n }\n\n let result = item;\n\n /* istanbul ignore else */\n if (resultFieldParts.length > 0) {\n for (let index = 0; index < resultFieldParts.length; index++) {\n const part = resultFieldParts[index];\n /* istanbul ignore else */\n if (result[part] === null || result[part] === undefined) {\n result = null;\n break;\n }\n\n result = result[part];\n }\n }\n\n return result;\n}\n\n/**\n * @internal\n * @deprecated\n */\nexport function compare(value1: any, value2: any) {\n if (value1 === null) {\n return 1;\n } else if (value2 === null) {\n return -1;\n }\n\n if (value1 && typeof value1 === 'string') {\n value1 = value1.toLowerCase();\n }\n\n if (value2 && typeof value2 === 'string') {\n value2 = value2.toLowerCase();\n }\n if (value1 === value2) {\n return 0;\n }\n\n return value1 > value2 ? 1 : -1;\n}\n\n/*\n Taken directly from rxjs's internal utility to determine whether an object is an Observable.\n See: https://github.com/ReactiveX/rxjs/blob/master/src/internal/util/isObservable.ts\n*/\n/**\n * @internal\n * @deprecated\n */\nexport function isObservable<T>(obj: any): obj is Observable<T> {\n /* istanbul ignore next */\n return (\n !!obj &&\n (obj instanceof Observable ||\n (typeof obj.lift === 'function' && typeof obj.subscribe === 'function'))\n );\n}\n","/**\n * @internal\n * @deprecated\n */\nexport class AsyncItem<T> {\n constructor(\n public item: T = {} as T,\n public lastUpdate: any = null,\n public loading = false\n ) {}\n}\n","/**\n * @internal\n * @deprecated\n */\nexport class AsyncList<T> {\n constructor(\n public items: T[] = [],\n public lastUpdate: any = null,\n public loading: boolean = false,\n public count: number = items.length\n ) {}\n}\n","import { Observable } from 'rxjs';\n\n/**\n * @internal\n * @deprecated\n */\nexport function getValue(property: any, callback: any): Observable<any> {\n if (property instanceof Observable) {\n property.subscribe((value) => callback(value));\n return property;\n } else {\n return callback(property);\n }\n}\n","import { Subject } from 'rxjs';\n\n/**\n * @internal\n * @deprecated\n */\nexport class StateDispatcher<TAction> extends Subject<TAction> {}\n","import { BehaviorSubject, zip } from 'rxjs';\nimport { map as observableMap } from 'rxjs/operators';\n\nimport { StateDispatcher } from './state-dispatcher';\n\n/**\n * @internal\n * @deprecated\n */\nexport class StateNode<T> extends BehaviorSubject<T> {\n private stateMap: { [stateKey: string]: any } = {};\n\n constructor(\n private initialState: T,\n private dispatcher: StateDispatcher<any>\n ) {\n super(initialState);\n }\n\n public register(stateKey: string, orchestrator: any) {\n this.stateMap[stateKey] = orchestrator;\n return this;\n }\n\n public reset() {\n this.next(this.initialState);\n }\n\n public begin() {\n const stateKeys: string[] = Object.keys(this.stateMap);\n const init: { [stateKey: string]: any } = this.initialState;\n\n const orchestrators = stateKeys.map((key) =>\n new this.stateMap[key]().scan(init[key], this.dispatcher)\n );\n\n zip\n .apply(this, orchestrators)\n .pipe(\n observableMap((s: any) => {\n const result: any = {};\n for (let i = 0; i < stateKeys.length; i++) {\n const key = stateKeys[i];\n result[key] = s[i];\n }\n\n return result;\n })\n )\n .subscribe((s: any) => this.next(s));\n }\n}\n","import { Observable } from 'rxjs';\nimport { scan } from 'rxjs/operators';\n\n/**\n * @internal\n * @deprecated\n */\nexport class StateOrchestrator<TStateNode, TAction> {\n private registeredActions: Array<any> = [];\n\n private registeredCallbacks: Array<\n (state: TStateNode, action: TAction, initialState?: any) => any\n > = [];\n\n public register(\n action: any,\n callback: (state: TStateNode, action: TAction, initialState?: any) => any\n ): StateOrchestrator<TStateNode, TAction> {\n if (this.registeredActions.indexOf(action) === -1) {\n this.registeredActions.push(action);\n this.registeredCallbacks.push(callback);\n }\n\n return this;\n }\n\n public scan(\n initialState: TStateNode,\n actions: Observable<TAction>\n ): Observable<any> {\n // eslint-disable-next-line eqeqeq\n if (initialState == null) {\n throw new Error(\n 'Initial state for an orchestrator should never be null. Check your StateNode definition and registrations.'\n );\n }\n\n return actions.pipe(\n scan((state: any, action: any) => {\n for (let i = 0; i < this.registeredActions.length; i++) {\n const a = this.registeredActions[i] as any;\n\n // length is seemingly arbitrary but it's a stopgap to prevent checking via constructor name when code is minified\n if (\n action instanceof a ||\n (a.name.length > 4 && action.constructor.name === a.name)\n ) {\n return this.registeredCallbacks[i].apply(this, [\n state,\n action,\n initialState,\n ]);\n }\n }\n\n return state;\n }, initialState)\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["observableMap"],"mappings":"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"}
|
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
import { Observable, Subject, BehaviorSubject, zip } from 'rxjs';
|
|
2
|
-
import { map, scan } from 'rxjs/operators';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @deprecated
|
|
6
|
-
*/
|
|
7
|
-
class ListItemModel {
|
|
8
|
-
constructor(id, data, isSelected) {
|
|
9
|
-
if (id === undefined) {
|
|
10
|
-
throw new Error('All list item models require an ID');
|
|
11
|
-
}
|
|
12
|
-
this.id = id;
|
|
13
|
-
if (data !== undefined) {
|
|
14
|
-
this.data = data;
|
|
15
|
-
}
|
|
16
|
-
if (isSelected !== undefined) {
|
|
17
|
-
this.isSelected = isSelected;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* @deprecated
|
|
24
|
-
*/
|
|
25
|
-
class ListSortFieldSelectorModel {
|
|
26
|
-
constructor(data) {
|
|
27
|
-
/**
|
|
28
|
-
* Whether to sort in descending order.
|
|
29
|
-
*/
|
|
30
|
-
this.descending = false;
|
|
31
|
-
if (data) {
|
|
32
|
-
this.fieldSelector = data.fieldSelector;
|
|
33
|
-
this.descending = data.descending;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* @internal
|
|
40
|
-
* @deprecated
|
|
41
|
-
*/
|
|
42
|
-
function getData(item, selector) {
|
|
43
|
-
if (!selector) {
|
|
44
|
-
return undefined;
|
|
45
|
-
}
|
|
46
|
-
const resultFieldParts = selector.split('.');
|
|
47
|
-
if (resultFieldParts.length > 0 && resultFieldParts[0] === '') {
|
|
48
|
-
resultFieldParts.shift();
|
|
49
|
-
}
|
|
50
|
-
let result = item;
|
|
51
|
-
/* istanbul ignore else */
|
|
52
|
-
if (resultFieldParts.length > 0) {
|
|
53
|
-
for (let index = 0; index < resultFieldParts.length; index++) {
|
|
54
|
-
const part = resultFieldParts[index];
|
|
55
|
-
/* istanbul ignore else */
|
|
56
|
-
if (result[part] === null || result[part] === undefined) {
|
|
57
|
-
result = null;
|
|
58
|
-
break;
|
|
59
|
-
}
|
|
60
|
-
result = result[part];
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
return result;
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* @internal
|
|
67
|
-
* @deprecated
|
|
68
|
-
*/
|
|
69
|
-
function compare(value1, value2) {
|
|
70
|
-
if (value1 === null) {
|
|
71
|
-
return 1;
|
|
72
|
-
}
|
|
73
|
-
else if (value2 === null) {
|
|
74
|
-
return -1;
|
|
75
|
-
}
|
|
76
|
-
if (value1 && typeof value1 === 'string') {
|
|
77
|
-
value1 = value1.toLowerCase();
|
|
78
|
-
}
|
|
79
|
-
if (value2 && typeof value2 === 'string') {
|
|
80
|
-
value2 = value2.toLowerCase();
|
|
81
|
-
}
|
|
82
|
-
if (value1 === value2) {
|
|
83
|
-
return 0;
|
|
84
|
-
}
|
|
85
|
-
return value1 > value2 ? 1 : -1;
|
|
86
|
-
}
|
|
87
|
-
/*
|
|
88
|
-
Taken directly from rxjs's internal utility to determine whether an object is an Observable.
|
|
89
|
-
See: https://github.com/ReactiveX/rxjs/blob/master/src/internal/util/isObservable.ts
|
|
90
|
-
*/
|
|
91
|
-
/**
|
|
92
|
-
* @internal
|
|
93
|
-
* @deprecated
|
|
94
|
-
*/
|
|
95
|
-
function isObservable(obj) {
|
|
96
|
-
/* istanbul ignore next */
|
|
97
|
-
return (!!obj &&
|
|
98
|
-
(obj instanceof Observable ||
|
|
99
|
-
(typeof obj.lift === 'function' && typeof obj.subscribe === 'function')));
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* @internal
|
|
104
|
-
* @deprecated
|
|
105
|
-
*/
|
|
106
|
-
class AsyncItem {
|
|
107
|
-
constructor(item = {}, lastUpdate = null, loading = false) {
|
|
108
|
-
this.item = item;
|
|
109
|
-
this.lastUpdate = lastUpdate;
|
|
110
|
-
this.loading = loading;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* @internal
|
|
116
|
-
* @deprecated
|
|
117
|
-
*/
|
|
118
|
-
class AsyncList {
|
|
119
|
-
constructor(items = [], lastUpdate = null, loading = false, count = items.length) {
|
|
120
|
-
this.items = items;
|
|
121
|
-
this.lastUpdate = lastUpdate;
|
|
122
|
-
this.loading = loading;
|
|
123
|
-
this.count = count;
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
/**
|
|
128
|
-
* @internal
|
|
129
|
-
* @deprecated
|
|
130
|
-
*/
|
|
131
|
-
function getValue(property, callback) {
|
|
132
|
-
if (property instanceof Observable) {
|
|
133
|
-
property.subscribe((value) => callback(value));
|
|
134
|
-
return property;
|
|
135
|
-
}
|
|
136
|
-
else {
|
|
137
|
-
return callback(property);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
/**
|
|
142
|
-
* @internal
|
|
143
|
-
* @deprecated
|
|
144
|
-
*/
|
|
145
|
-
class StateDispatcher extends Subject {
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
/**
|
|
149
|
-
* @internal
|
|
150
|
-
* @deprecated
|
|
151
|
-
*/
|
|
152
|
-
class StateNode extends BehaviorSubject {
|
|
153
|
-
constructor(initialState, dispatcher) {
|
|
154
|
-
super(initialState);
|
|
155
|
-
this.initialState = initialState;
|
|
156
|
-
this.dispatcher = dispatcher;
|
|
157
|
-
this.stateMap = {};
|
|
158
|
-
}
|
|
159
|
-
register(stateKey, orchestrator) {
|
|
160
|
-
this.stateMap[stateKey] = orchestrator;
|
|
161
|
-
return this;
|
|
162
|
-
}
|
|
163
|
-
reset() {
|
|
164
|
-
this.next(this.initialState);
|
|
165
|
-
}
|
|
166
|
-
begin() {
|
|
167
|
-
const stateKeys = Object.keys(this.stateMap);
|
|
168
|
-
const init = this.initialState;
|
|
169
|
-
const orchestrators = stateKeys.map((key) => new this.stateMap[key]().scan(init[key], this.dispatcher));
|
|
170
|
-
zip
|
|
171
|
-
.apply(this, orchestrators)
|
|
172
|
-
.pipe(map((s) => {
|
|
173
|
-
const result = {};
|
|
174
|
-
for (let i = 0; i < stateKeys.length; i++) {
|
|
175
|
-
const key = stateKeys[i];
|
|
176
|
-
result[key] = s[i];
|
|
177
|
-
}
|
|
178
|
-
return result;
|
|
179
|
-
}))
|
|
180
|
-
.subscribe((s) => this.next(s));
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
/**
|
|
185
|
-
* @internal
|
|
186
|
-
* @deprecated
|
|
187
|
-
*/
|
|
188
|
-
class StateOrchestrator {
|
|
189
|
-
constructor() {
|
|
190
|
-
this.registeredActions = [];
|
|
191
|
-
this.registeredCallbacks = [];
|
|
192
|
-
}
|
|
193
|
-
register(action, callback) {
|
|
194
|
-
if (this.registeredActions.indexOf(action) === -1) {
|
|
195
|
-
this.registeredActions.push(action);
|
|
196
|
-
this.registeredCallbacks.push(callback);
|
|
197
|
-
}
|
|
198
|
-
return this;
|
|
199
|
-
}
|
|
200
|
-
scan(initialState, actions) {
|
|
201
|
-
// eslint-disable-next-line eqeqeq
|
|
202
|
-
if (initialState == null) {
|
|
203
|
-
throw new Error('Initial state for an orchestrator should never be null. Check your StateNode definition and registrations.');
|
|
204
|
-
}
|
|
205
|
-
return actions.pipe(scan((state, action) => {
|
|
206
|
-
for (let i = 0; i < this.registeredActions.length; i++) {
|
|
207
|
-
const a = this.registeredActions[i];
|
|
208
|
-
// length is seemingly arbitrary but it's a stopgap to prevent checking via constructor name when code is minified
|
|
209
|
-
if (action instanceof a ||
|
|
210
|
-
(a.name.length > 4 && action.constructor.name === a.name)) {
|
|
211
|
-
return this.registeredCallbacks[i].apply(this, [
|
|
212
|
-
state,
|
|
213
|
-
action,
|
|
214
|
-
initialState,
|
|
215
|
-
]);
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
return state;
|
|
219
|
-
}, initialState));
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
/**
|
|
224
|
-
* Generated bundle index. Do not edit.
|
|
225
|
-
*/
|
|
226
|
-
|
|
227
|
-
export { AsyncItem, AsyncList, ListItemModel, ListSortFieldSelectorModel, StateDispatcher, StateNode, StateOrchestrator, compare, getData, getValue, isObservable };
|
|
228
|
-
//# sourceMappingURL=skyux-list-builder-common.mjs.map
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|