@runopencode/rx-stencil 0.4.2 → 0.4.4
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/dist/cjs/app-globals-V2Kpy_OQ.js +5 -0
- package/dist/cjs/index-CbERigo8.js +1211 -0
- package/dist/cjs/index.cjs.js +162 -543
- package/dist/cjs/loader.cjs.js +4 -6
- package/dist/cjs/rx-async.cjs.entry.js +29 -63
- package/dist/cjs/rx-stencil.cjs.js +14 -14
- package/dist/cjs/set-property-BZHuI0P5.js +9525 -0
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/async/async.css +3 -0
- package/dist/collection/components/async/async.js +62 -61
- package/dist/collection/components/index.js +1 -0
- package/dist/collection/index.js +0 -1
- package/dist/collection/rx/decorator/index.js +0 -1
- package/dist/collection/rx/decorator/query-selector-all.js +26 -27
- package/dist/collection/rx/decorator/query-selector.js +32 -33
- package/dist/collection/rx/index.js +0 -1
- package/dist/collection/rx/observable/index.js +0 -1
- package/dist/collection/rx/observable/mutation-observable.js +8 -9
- package/dist/collection/rx/observable/properties-observable.js +6 -7
- package/dist/collection/rx/observable/property-observable.js +20 -21
- package/dist/collection/rx/observable/render-observable.js +15 -16
- package/dist/collection/rx/operator/index.js +0 -1
- package/dist/collection/rx/operator/schedule-render.js +9 -10
- package/dist/collection/rx/operator/to-property.js +8 -9
- package/dist/collection/rx/operator/until-disconnected.js +56 -57
- package/dist/collection/rx/subscriber/index.js +0 -1
- package/dist/collection/rx/subscriber/set-property.js +12 -13
- package/dist/collection/utils/get-property-descriptor.js +10 -11
- package/dist/collection/utils/index.js +0 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +1 -661
- package/dist/components/rx-async.d.ts +2 -2
- package/dist/components/rx-async.js +1 -86
- package/dist/components/set-property.js +1 -1153
- package/dist/esm/app-globals-DQuL1Twl.js +3 -0
- package/dist/esm/index-BIBww8qU.js +1202 -0
- package/dist/esm/index.js +164 -543
- package/dist/esm/loader.js +5 -5
- package/dist/esm/rx-async.entry.js +29 -61
- package/dist/esm/rx-stencil.js +14 -13
- package/dist/esm/set-property-CpZKE-Xu.js +9520 -0
- package/dist/rx-stencil/index.esm.js +1 -2
- package/dist/rx-stencil/p-77100dee.entry.js +1 -0
- package/dist/rx-stencil/p-BIBww8qU.js +2 -0
- package/dist/rx-stencil/p-DQuL1Twl.js +1 -0
- package/dist/rx-stencil/p-IbpJ_cRo.js +1 -0
- package/dist/rx-stencil/rx-stencil.esm.js +1 -2
- package/dist/types/components/async/async.d.ts +5 -5
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/components.d.ts +7 -1
- package/dist/types/rx/decorator/query-selector-all.d.ts +9 -9
- package/dist/types/rx/decorator/query-selector.d.ts +9 -9
- package/dist/types/rx/subscriber/set-property.d.ts +12 -12
- package/dist/types/stencil-public-runtime.d.ts +225 -17
- package/loader/cdn.js +1 -3
- package/loader/index.cjs.js +1 -3
- package/loader/index.d.ts +3 -0
- package/loader/index.es2017.js +1 -3
- package/loader/index.js +1 -3
- package/package.json +8 -9
- package/dist/cjs/index-5f6f12ab.js +0 -1265
- package/dist/cjs/index-5f6f12ab.js.map +0 -1
- package/dist/cjs/index.cjs.js.map +0 -1
- package/dist/cjs/loader.cjs.js.map +0 -1
- package/dist/cjs/rx-async.cjs.entry.js.map +0 -1
- package/dist/cjs/rx-stencil.cjs.js.map +0 -1
- package/dist/cjs/set-property-c1def9c5.js +0 -1171
- package/dist/cjs/set-property-c1def9c5.js.map +0 -1
- package/dist/collection/components/async/async.js.map +0 -1
- package/dist/collection/components/async/async.scss +0 -3
- package/dist/collection/index.js.map +0 -1
- package/dist/collection/rx/decorator/index.js.map +0 -1
- package/dist/collection/rx/decorator/query-selector-all.js.map +0 -1
- package/dist/collection/rx/decorator/query-selector.js.map +0 -1
- package/dist/collection/rx/index.js.map +0 -1
- package/dist/collection/rx/observable/index.js.map +0 -1
- package/dist/collection/rx/observable/mutation-observable.js.map +0 -1
- package/dist/collection/rx/observable/properties-observable.js.map +0 -1
- package/dist/collection/rx/observable/property-observable.js.map +0 -1
- package/dist/collection/rx/observable/render-observable.js.map +0 -1
- package/dist/collection/rx/operator/index.js.map +0 -1
- package/dist/collection/rx/operator/schedule-render.js.map +0 -1
- package/dist/collection/rx/operator/to-property.js.map +0 -1
- package/dist/collection/rx/operator/until-disconnected.js.map +0 -1
- package/dist/collection/rx/subscriber/index.js.map +0 -1
- package/dist/collection/rx/subscriber/set-property.js.map +0 -1
- package/dist/collection/utils/get-property-descriptor.js.map +0 -1
- package/dist/collection/utils/index.js.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/rx-async.js.map +0 -1
- package/dist/components/set-property.js.map +0 -1
- package/dist/esm/index-9102de09.js +0 -1236
- package/dist/esm/index-9102de09.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/loader.js.map +0 -1
- package/dist/esm/polyfills/core-js.js +0 -11
- package/dist/esm/polyfills/dom.js +0 -79
- package/dist/esm/polyfills/es5-html-element.js +0 -1
- package/dist/esm/polyfills/index.js +0 -34
- package/dist/esm/polyfills/system.js +0 -6
- package/dist/esm/rx-async.entry.js.map +0 -1
- package/dist/esm/rx-stencil.js.map +0 -1
- package/dist/esm/set-property-9befeb72.js +0 -1153
- package/dist/esm/set-property-9befeb72.js.map +0 -1
- package/dist/rx-stencil/index.esm.js.map +0 -1
- package/dist/rx-stencil/p-2fc78e52.js +0 -2
- package/dist/rx-stencil/p-2fc78e52.js.map +0 -1
- package/dist/rx-stencil/p-8411601b.js +0 -3
- package/dist/rx-stencil/p-8411601b.js.map +0 -1
- package/dist/rx-stencil/p-c823932c.entry.js +0 -2
- package/dist/rx-stencil/p-c823932c.entry.js.map +0 -1
- package/dist/rx-stencil/rx-stencil.esm.js.map +0 -1
- package/loader/package.json +0 -11
package/dist/esm/index.js
CHANGED
|
@@ -1,406 +1,29 @@
|
|
|
1
|
-
import { g as getElement, f as forceUpdate } from './index-
|
|
2
|
-
import {
|
|
3
|
-
export {
|
|
4
|
-
|
|
5
|
-
const dateTimestampProvider = {
|
|
6
|
-
now() {
|
|
7
|
-
return (dateTimestampProvider.delegate || Date).now();
|
|
8
|
-
},
|
|
9
|
-
delegate: undefined,
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
class ReplaySubject extends Subject {
|
|
13
|
-
constructor(_bufferSize = Infinity, _windowTime = Infinity, _timestampProvider = dateTimestampProvider) {
|
|
14
|
-
super();
|
|
15
|
-
this._bufferSize = _bufferSize;
|
|
16
|
-
this._windowTime = _windowTime;
|
|
17
|
-
this._timestampProvider = _timestampProvider;
|
|
18
|
-
this._buffer = [];
|
|
19
|
-
this._infiniteTimeWindow = true;
|
|
20
|
-
this._infiniteTimeWindow = _windowTime === Infinity;
|
|
21
|
-
this._bufferSize = Math.max(1, _bufferSize);
|
|
22
|
-
this._windowTime = Math.max(1, _windowTime);
|
|
23
|
-
}
|
|
24
|
-
next(value) {
|
|
25
|
-
const { isStopped, _buffer, _infiniteTimeWindow, _timestampProvider, _windowTime } = this;
|
|
26
|
-
if (!isStopped) {
|
|
27
|
-
_buffer.push(value);
|
|
28
|
-
!_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);
|
|
29
|
-
}
|
|
30
|
-
this._trimBuffer();
|
|
31
|
-
super.next(value);
|
|
32
|
-
}
|
|
33
|
-
_subscribe(subscriber) {
|
|
34
|
-
this._throwIfClosed();
|
|
35
|
-
this._trimBuffer();
|
|
36
|
-
const subscription = this._innerSubscribe(subscriber);
|
|
37
|
-
const { _infiniteTimeWindow, _buffer } = this;
|
|
38
|
-
const copy = _buffer.slice();
|
|
39
|
-
for (let i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) {
|
|
40
|
-
subscriber.next(copy[i]);
|
|
41
|
-
}
|
|
42
|
-
this._checkFinalizedStatuses(subscriber);
|
|
43
|
-
return subscription;
|
|
44
|
-
}
|
|
45
|
-
_trimBuffer() {
|
|
46
|
-
const { _bufferSize, _timestampProvider, _buffer, _infiniteTimeWindow } = this;
|
|
47
|
-
const adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;
|
|
48
|
-
_bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);
|
|
49
|
-
if (!_infiniteTimeWindow) {
|
|
50
|
-
const now = _timestampProvider.now();
|
|
51
|
-
let last = 0;
|
|
52
|
-
for (let i = 1; i < _buffer.length && _buffer[i] <= now; i += 2) {
|
|
53
|
-
last = i;
|
|
54
|
-
}
|
|
55
|
-
last && _buffer.splice(0, last + 1);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
function map(project, thisArg) {
|
|
61
|
-
return operate((source, subscriber) => {
|
|
62
|
-
let index = 0;
|
|
63
|
-
source.subscribe(createOperatorSubscriber(subscriber, (value) => {
|
|
64
|
-
subscriber.next(project.call(thisArg, value, index++));
|
|
65
|
-
}));
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
const { isArray: isArray$1 } = Array;
|
|
70
|
-
function callOrApply(fn, args) {
|
|
71
|
-
return isArray$1(args) ? fn(...args) : fn(args);
|
|
72
|
-
}
|
|
73
|
-
function mapOneOrManyArgs(fn) {
|
|
74
|
-
return map(args => callOrApply(fn, args));
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
const { isArray } = Array;
|
|
78
|
-
const { getPrototypeOf, prototype: objectProto, keys: getKeys } = Object;
|
|
79
|
-
function argsArgArrayOrObject(args) {
|
|
80
|
-
if (args.length === 1) {
|
|
81
|
-
const first = args[0];
|
|
82
|
-
if (isArray(first)) {
|
|
83
|
-
return { args: first, keys: null };
|
|
84
|
-
}
|
|
85
|
-
if (isPOJO(first)) {
|
|
86
|
-
const keys = getKeys(first);
|
|
87
|
-
return {
|
|
88
|
-
args: keys.map((key) => first[key]),
|
|
89
|
-
keys,
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
return { args: args, keys: null };
|
|
94
|
-
}
|
|
95
|
-
function isPOJO(obj) {
|
|
96
|
-
return obj && typeof obj === 'object' && getPrototypeOf(obj) === objectProto;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
function createObject(keys, values) {
|
|
100
|
-
return keys.reduce((result, key, i) => ((result[key] = values[i]), result), {});
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
function combineLatest(...args) {
|
|
104
|
-
const scheduler = popScheduler(args);
|
|
105
|
-
const resultSelector = popResultSelector(args);
|
|
106
|
-
const { args: observables, keys } = argsArgArrayOrObject(args);
|
|
107
|
-
if (observables.length === 0) {
|
|
108
|
-
return from([], scheduler);
|
|
109
|
-
}
|
|
110
|
-
const result = new Observable(combineLatestInit(observables, scheduler, keys
|
|
111
|
-
?
|
|
112
|
-
(values) => createObject(keys, values)
|
|
113
|
-
:
|
|
114
|
-
identity));
|
|
115
|
-
return resultSelector ? result.pipe(mapOneOrManyArgs(resultSelector)) : result;
|
|
116
|
-
}
|
|
117
|
-
function combineLatestInit(observables, scheduler, valueTransform = identity) {
|
|
118
|
-
return (subscriber) => {
|
|
119
|
-
maybeSchedule(scheduler, () => {
|
|
120
|
-
const { length } = observables;
|
|
121
|
-
const values = new Array(length);
|
|
122
|
-
let active = length;
|
|
123
|
-
let remainingFirstValues = length;
|
|
124
|
-
for (let i = 0; i < length; i++) {
|
|
125
|
-
maybeSchedule(scheduler, () => {
|
|
126
|
-
const source = from(observables[i], scheduler);
|
|
127
|
-
let hasFirstValue = false;
|
|
128
|
-
source.subscribe(createOperatorSubscriber(subscriber, (value) => {
|
|
129
|
-
values[i] = value;
|
|
130
|
-
if (!hasFirstValue) {
|
|
131
|
-
hasFirstValue = true;
|
|
132
|
-
remainingFirstValues--;
|
|
133
|
-
}
|
|
134
|
-
if (!remainingFirstValues) {
|
|
135
|
-
subscriber.next(valueTransform(values.slice()));
|
|
136
|
-
}
|
|
137
|
-
}, () => {
|
|
138
|
-
if (!--active) {
|
|
139
|
-
subscriber.complete();
|
|
140
|
-
}
|
|
141
|
-
}));
|
|
142
|
-
}, subscriber);
|
|
143
|
-
}
|
|
144
|
-
}, subscriber);
|
|
145
|
-
};
|
|
146
|
-
}
|
|
147
|
-
function maybeSchedule(scheduler, execute, subscription) {
|
|
148
|
-
if (scheduler) {
|
|
149
|
-
executeSchedule(subscription, scheduler, execute);
|
|
150
|
-
}
|
|
151
|
-
else {
|
|
152
|
-
execute();
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalFinalizer) {
|
|
157
|
-
const buffer = [];
|
|
158
|
-
let active = 0;
|
|
159
|
-
let index = 0;
|
|
160
|
-
let isComplete = false;
|
|
161
|
-
const checkComplete = () => {
|
|
162
|
-
if (isComplete && !buffer.length && !active) {
|
|
163
|
-
subscriber.complete();
|
|
164
|
-
}
|
|
165
|
-
};
|
|
166
|
-
const outerNext = (value) => (active < concurrent ? doInnerSub(value) : buffer.push(value));
|
|
167
|
-
const doInnerSub = (value) => {
|
|
168
|
-
expand && subscriber.next(value);
|
|
169
|
-
active++;
|
|
170
|
-
let innerComplete = false;
|
|
171
|
-
innerFrom(project(value, index++)).subscribe(createOperatorSubscriber(subscriber, (innerValue) => {
|
|
172
|
-
onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue);
|
|
173
|
-
if (expand) {
|
|
174
|
-
outerNext(innerValue);
|
|
175
|
-
}
|
|
176
|
-
else {
|
|
177
|
-
subscriber.next(innerValue);
|
|
178
|
-
}
|
|
179
|
-
}, () => {
|
|
180
|
-
innerComplete = true;
|
|
181
|
-
}, undefined, () => {
|
|
182
|
-
if (innerComplete) {
|
|
183
|
-
try {
|
|
184
|
-
active--;
|
|
185
|
-
while (buffer.length && active < concurrent) {
|
|
186
|
-
const bufferedValue = buffer.shift();
|
|
187
|
-
if (innerSubScheduler) {
|
|
188
|
-
executeSchedule(subscriber, innerSubScheduler, () => doInnerSub(bufferedValue));
|
|
189
|
-
}
|
|
190
|
-
else {
|
|
191
|
-
doInnerSub(bufferedValue);
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
checkComplete();
|
|
195
|
-
}
|
|
196
|
-
catch (err) {
|
|
197
|
-
subscriber.error(err);
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
}));
|
|
201
|
-
};
|
|
202
|
-
source.subscribe(createOperatorSubscriber(subscriber, outerNext, () => {
|
|
203
|
-
isComplete = true;
|
|
204
|
-
checkComplete();
|
|
205
|
-
}));
|
|
206
|
-
return () => {
|
|
207
|
-
additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer();
|
|
208
|
-
};
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
function mergeMap(project, resultSelector, concurrent = Infinity) {
|
|
212
|
-
if (isFunction(resultSelector)) {
|
|
213
|
-
return mergeMap((a, i) => map((b, ii) => resultSelector(a, b, i, ii))(innerFrom(project(a, i))), concurrent);
|
|
214
|
-
}
|
|
215
|
-
else if (typeof resultSelector === 'number') {
|
|
216
|
-
concurrent = resultSelector;
|
|
217
|
-
}
|
|
218
|
-
return operate((source, subscriber) => mergeInternals(source, subscriber, project, concurrent));
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
function mergeAll(concurrent = Infinity) {
|
|
222
|
-
return mergeMap(identity, concurrent);
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
function concatAll() {
|
|
226
|
-
return mergeAll(1);
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
function concat(...args) {
|
|
230
|
-
return concatAll()(from(args, popScheduler(args)));
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
function filter(predicate, thisArg) {
|
|
234
|
-
return operate((source, subscriber) => {
|
|
235
|
-
let index = 0;
|
|
236
|
-
source.subscribe(createOperatorSubscriber(subscriber, (value) => predicate.call(thisArg, value, index++) && subscriber.next(value)));
|
|
237
|
-
});
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
function share(options = {}) {
|
|
241
|
-
const { connector = () => new Subject(), resetOnError = true, resetOnComplete = true, resetOnRefCountZero = true } = options;
|
|
242
|
-
return (wrapperSource) => {
|
|
243
|
-
let connection;
|
|
244
|
-
let resetConnection;
|
|
245
|
-
let subject;
|
|
246
|
-
let refCount = 0;
|
|
247
|
-
let hasCompleted = false;
|
|
248
|
-
let hasErrored = false;
|
|
249
|
-
const cancelReset = () => {
|
|
250
|
-
resetConnection === null || resetConnection === void 0 ? void 0 : resetConnection.unsubscribe();
|
|
251
|
-
resetConnection = undefined;
|
|
252
|
-
};
|
|
253
|
-
const reset = () => {
|
|
254
|
-
cancelReset();
|
|
255
|
-
connection = subject = undefined;
|
|
256
|
-
hasCompleted = hasErrored = false;
|
|
257
|
-
};
|
|
258
|
-
const resetAndUnsubscribe = () => {
|
|
259
|
-
const conn = connection;
|
|
260
|
-
reset();
|
|
261
|
-
conn === null || conn === void 0 ? void 0 : conn.unsubscribe();
|
|
262
|
-
};
|
|
263
|
-
return operate((source, subscriber) => {
|
|
264
|
-
refCount++;
|
|
265
|
-
if (!hasErrored && !hasCompleted) {
|
|
266
|
-
cancelReset();
|
|
267
|
-
}
|
|
268
|
-
const dest = (subject = subject !== null && subject !== void 0 ? subject : connector());
|
|
269
|
-
subscriber.add(() => {
|
|
270
|
-
refCount--;
|
|
271
|
-
if (refCount === 0 && !hasErrored && !hasCompleted) {
|
|
272
|
-
resetConnection = handleReset(resetAndUnsubscribe, resetOnRefCountZero);
|
|
273
|
-
}
|
|
274
|
-
});
|
|
275
|
-
dest.subscribe(subscriber);
|
|
276
|
-
if (!connection &&
|
|
277
|
-
refCount > 0) {
|
|
278
|
-
connection = new SafeSubscriber({
|
|
279
|
-
next: (value) => dest.next(value),
|
|
280
|
-
error: (err) => {
|
|
281
|
-
hasErrored = true;
|
|
282
|
-
cancelReset();
|
|
283
|
-
resetConnection = handleReset(reset, resetOnError, err);
|
|
284
|
-
dest.error(err);
|
|
285
|
-
},
|
|
286
|
-
complete: () => {
|
|
287
|
-
hasCompleted = true;
|
|
288
|
-
cancelReset();
|
|
289
|
-
resetConnection = handleReset(reset, resetOnComplete);
|
|
290
|
-
dest.complete();
|
|
291
|
-
},
|
|
292
|
-
});
|
|
293
|
-
innerFrom(source).subscribe(connection);
|
|
294
|
-
}
|
|
295
|
-
})(wrapperSource);
|
|
296
|
-
};
|
|
297
|
-
}
|
|
298
|
-
function handleReset(reset, on, ...args) {
|
|
299
|
-
if (on === true) {
|
|
300
|
-
reset();
|
|
301
|
-
return;
|
|
302
|
-
}
|
|
303
|
-
if (on === false) {
|
|
304
|
-
return;
|
|
305
|
-
}
|
|
306
|
-
const onSubscriber = new SafeSubscriber({
|
|
307
|
-
next: () => {
|
|
308
|
-
onSubscriber.unsubscribe();
|
|
309
|
-
reset();
|
|
310
|
-
},
|
|
311
|
-
});
|
|
312
|
-
return innerFrom(on(...args)).subscribe(onSubscriber);
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
function shareReplay(configOrBufferSize, windowTime, scheduler) {
|
|
316
|
-
let bufferSize;
|
|
317
|
-
let refCount = false;
|
|
318
|
-
if (configOrBufferSize && typeof configOrBufferSize === 'object') {
|
|
319
|
-
({ bufferSize = Infinity, windowTime = Infinity, refCount = false, scheduler } = configOrBufferSize);
|
|
320
|
-
}
|
|
321
|
-
else {
|
|
322
|
-
bufferSize = (configOrBufferSize !== null && configOrBufferSize !== void 0 ? configOrBufferSize : Infinity);
|
|
323
|
-
}
|
|
324
|
-
return share({
|
|
325
|
-
connector: () => new ReplaySubject(bufferSize, windowTime, scheduler),
|
|
326
|
-
resetOnError: true,
|
|
327
|
-
resetOnComplete: false,
|
|
328
|
-
resetOnRefCountZero: refCount,
|
|
329
|
-
});
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
function startWith(...values) {
|
|
333
|
-
const scheduler = popScheduler(values);
|
|
334
|
-
return operate((source, subscriber) => {
|
|
335
|
-
(scheduler ? concat(values, source, scheduler) : concat(values, source)).subscribe(subscriber);
|
|
336
|
-
});
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
function takeUntil(notifier) {
|
|
340
|
-
return operate((source, subscriber) => {
|
|
341
|
-
innerFrom(notifier).subscribe(createOperatorSubscriber(subscriber, () => subscriber.complete(), noop));
|
|
342
|
-
!subscriber.closed && source.subscribe(subscriber);
|
|
343
|
-
});
|
|
344
|
-
}
|
|
345
|
-
|
|
346
|
-
function tap(observerOrNext, error, complete) {
|
|
347
|
-
const tapObserver = isFunction(observerOrNext) || error || complete
|
|
348
|
-
?
|
|
349
|
-
{ next: observerOrNext, error, complete }
|
|
350
|
-
: observerOrNext;
|
|
351
|
-
return tapObserver
|
|
352
|
-
? operate((source, subscriber) => {
|
|
353
|
-
var _a;
|
|
354
|
-
(_a = tapObserver.subscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver);
|
|
355
|
-
let isUnsub = true;
|
|
356
|
-
source.subscribe(createOperatorSubscriber(subscriber, (value) => {
|
|
357
|
-
var _a;
|
|
358
|
-
(_a = tapObserver.next) === null || _a === void 0 ? void 0 : _a.call(tapObserver, value);
|
|
359
|
-
subscriber.next(value);
|
|
360
|
-
}, () => {
|
|
361
|
-
var _a;
|
|
362
|
-
isUnsub = false;
|
|
363
|
-
(_a = tapObserver.complete) === null || _a === void 0 ? void 0 : _a.call(tapObserver);
|
|
364
|
-
subscriber.complete();
|
|
365
|
-
}, (err) => {
|
|
366
|
-
var _a;
|
|
367
|
-
isUnsub = false;
|
|
368
|
-
(_a = tapObserver.error) === null || _a === void 0 ? void 0 : _a.call(tapObserver, err);
|
|
369
|
-
subscriber.error(err);
|
|
370
|
-
}, () => {
|
|
371
|
-
var _a, _b;
|
|
372
|
-
if (isUnsub) {
|
|
373
|
-
(_a = tapObserver.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver);
|
|
374
|
-
}
|
|
375
|
-
(_b = tapObserver.finalize) === null || _b === void 0 ? void 0 : _b.call(tapObserver);
|
|
376
|
-
}));
|
|
377
|
-
})
|
|
378
|
-
:
|
|
379
|
-
identity;
|
|
380
|
-
}
|
|
1
|
+
import { g as getElement, f as forceUpdate } from './index-BIBww8qU.js';
|
|
2
|
+
import { c as cjsExports, p as propertyObservable, g as getPropertyDescriptor } from './set-property-CpZKE-Xu.js';
|
|
3
|
+
export { s as setProperty } from './set-property-CpZKE-Xu.js';
|
|
381
4
|
|
|
382
5
|
function mutationObservable(target, options) {
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
6
|
+
return new cjsExports.Observable((observer) => {
|
|
7
|
+
let mutation = new MutationObserver((mutations) => {
|
|
8
|
+
observer.next(mutations);
|
|
9
|
+
});
|
|
10
|
+
mutation.observe(target, options);
|
|
11
|
+
return () => {
|
|
12
|
+
mutation.disconnect();
|
|
13
|
+
};
|
|
386
14
|
});
|
|
387
|
-
mutation.observe(target, options);
|
|
388
|
-
return () => {
|
|
389
|
-
mutation.disconnect();
|
|
390
|
-
};
|
|
391
|
-
});
|
|
392
15
|
}
|
|
393
16
|
|
|
394
17
|
/**
|
|
395
18
|
* Returns an observable that emits an array of values from the given properties.
|
|
396
19
|
*/
|
|
397
20
|
function propertiesObservable(cmp, ...properties) {
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
21
|
+
if (0 === properties.length) {
|
|
22
|
+
throw new Error('At least one property must be specified.');
|
|
23
|
+
}
|
|
24
|
+
return cjsExports.combineLatest(properties.map((property) => {
|
|
25
|
+
return propertyObservable(cmp, property);
|
|
26
|
+
}));
|
|
404
27
|
}
|
|
405
28
|
|
|
406
29
|
/**
|
|
@@ -409,21 +32,21 @@ function propertiesObservable(cmp, ...properties) {
|
|
|
409
32
|
* microtask (next tick).
|
|
410
33
|
*/
|
|
411
34
|
function renderObservable(cmp) {
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
35
|
+
if ('function' !== typeof cmp.render) {
|
|
36
|
+
throw new Error('Component does not have a render function.');
|
|
37
|
+
}
|
|
38
|
+
return new cjsExports.Observable((subscriber) => {
|
|
39
|
+
let previousRender = cmp.render;
|
|
40
|
+
cmp.render = function () {
|
|
41
|
+
Promise.resolve().then(() => {
|
|
42
|
+
subscriber.next();
|
|
43
|
+
});
|
|
44
|
+
return previousRender.call(this);
|
|
45
|
+
};
|
|
46
|
+
return () => {
|
|
47
|
+
cmp.render = previousRender;
|
|
48
|
+
};
|
|
49
|
+
});
|
|
427
50
|
}
|
|
428
51
|
|
|
429
52
|
/**
|
|
@@ -433,22 +56,22 @@ function renderObservable(cmp) {
|
|
|
433
56
|
* {@internal}
|
|
434
57
|
*/
|
|
435
58
|
function observeSubNodes(target) {
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
59
|
+
return mutationObservable(target, {
|
|
60
|
+
subtree: true,
|
|
61
|
+
childList: true,
|
|
62
|
+
}).pipe(cjsExports.filter((records) => {
|
|
63
|
+
for (let i = 0; i < records.length; i++) {
|
|
64
|
+
if ('childList' !== records[i].type) {
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
if (records[i].addedNodes.length || records[i].removedNodes.length) {
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return false;
|
|
72
|
+
}), cjsExports.map(() => {
|
|
73
|
+
/* noop */
|
|
74
|
+
}));
|
|
452
75
|
}
|
|
453
76
|
/**
|
|
454
77
|
* Property decorator inspired by Angular's @ViewChild/@ContentChild.
|
|
@@ -458,23 +81,23 @@ function observeSubNodes(target) {
|
|
|
458
81
|
* set to null.
|
|
459
82
|
*/
|
|
460
83
|
function QuerySelector(selector, options) {
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
84
|
+
return (target, property) => {
|
|
85
|
+
let descriptor = {
|
|
86
|
+
set: function () {
|
|
87
|
+
throw new Error(`Property "${property}" is read-only.`);
|
|
88
|
+
},
|
|
89
|
+
get: function () {
|
|
90
|
+
let observableProperty = `__rx__query_selector__observable__shadow_root__${(options === null || options === void 0 ? void 0 : options.shadowRoot) ? 'yes' : 'no'}__mutation_observer__${(options === null || options === void 0 ? void 0 : options.mutationObserver) ? 'yes' : 'no'}__selector__${selector}__`;
|
|
91
|
+
if (!this[observableProperty]) {
|
|
92
|
+
let root = (options === null || options === void 0 ? void 0 : options.shadowRoot) ? getElement(this).shadowRoot : getElement(this);
|
|
93
|
+
let observable = (options === null || options === void 0 ? void 0 : options.mutationObserver) ? observeSubNodes(root) : renderObservable(this);
|
|
94
|
+
this[observableProperty] = observable.pipe(cjsExports.startWith(), cjsExports.map(() => root.querySelector(selector)), cjsExports.distinctUntilChanged(), cjsExports.shareReplay(1));
|
|
95
|
+
}
|
|
96
|
+
return this[observableProperty];
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
Object.defineProperty(target, property, descriptor);
|
|
475
100
|
};
|
|
476
|
-
Object.defineProperty(target, property, descriptor);
|
|
477
|
-
};
|
|
478
101
|
}
|
|
479
102
|
|
|
480
103
|
/**
|
|
@@ -485,33 +108,33 @@ function QuerySelector(selector, options) {
|
|
|
485
108
|
* set to null.
|
|
486
109
|
*/
|
|
487
110
|
function QuerySelectorAll(selector, options) {
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
111
|
+
return (target, property) => {
|
|
112
|
+
let descriptor = {
|
|
113
|
+
set: function () {
|
|
114
|
+
throw new Error(`Property "${property}" is read-only.`);
|
|
115
|
+
},
|
|
116
|
+
get: function () {
|
|
117
|
+
let observableProperty = `__rx__query_selector_all__observable__shadow_root__${(options === null || options === void 0 ? void 0 : options.shadowRoot) ? 'yes' : 'no'}__mutation_observer__${(options === null || options === void 0 ? void 0 : options.mutationObserver) ? 'yes' : 'no'}__selector__${selector}__`;
|
|
118
|
+
if (!this[observableProperty]) {
|
|
119
|
+
let root = (options === null || options === void 0 ? void 0 : options.shadowRoot) ? getElement(this).shadowRoot : getElement(this);
|
|
120
|
+
let observable = (options === null || options === void 0 ? void 0 : options.mutationObserver) ? observeSubNodes(root) : renderObservable(this);
|
|
121
|
+
this[observableProperty] = observable.pipe(cjsExports.startWith(), cjsExports.map(() => Array.from(root.querySelectorAll(selector))), cjsExports.distinctUntilChanged((previous, current) => {
|
|
122
|
+
if (previous.length !== current.length) {
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
for (let i = 0; i < previous.length; i++) {
|
|
126
|
+
if (previous[i] !== current[i]) {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return true;
|
|
131
|
+
}), cjsExports.shareReplay(1));
|
|
132
|
+
}
|
|
133
|
+
return this[observableProperty];
|
|
134
|
+
},
|
|
135
|
+
};
|
|
136
|
+
Object.defineProperty(target, property, descriptor);
|
|
512
137
|
};
|
|
513
|
-
Object.defineProperty(target, property, descriptor);
|
|
514
|
-
};
|
|
515
138
|
}
|
|
516
139
|
|
|
517
140
|
/**
|
|
@@ -524,15 +147,15 @@ function QuerySelectorAll(selector, options) {
|
|
|
524
147
|
* can disable this behavior by passing `false` as second argument.
|
|
525
148
|
*/
|
|
526
149
|
function scheduleRender(cmp, nextTick = true) {
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
150
|
+
return (source) => {
|
|
151
|
+
return source.pipe(cjsExports.tap(() => {
|
|
152
|
+
if (!nextTick) {
|
|
153
|
+
forceUpdate(cmp);
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
Promise.resolve().then(() => forceUpdate(cmp));
|
|
157
|
+
}));
|
|
158
|
+
};
|
|
536
159
|
}
|
|
537
160
|
|
|
538
161
|
/**
|
|
@@ -542,14 +165,14 @@ function scheduleRender(cmp, nextTick = true) {
|
|
|
542
165
|
* observable).
|
|
543
166
|
*/
|
|
544
167
|
function toProperty(cmp, property) {
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
168
|
+
// ensure that the property is defined on the component.
|
|
169
|
+
getPropertyDescriptor(cmp, property);
|
|
170
|
+
// @ts-ignore
|
|
171
|
+
return (source) => {
|
|
172
|
+
return source.pipe(cjsExports.tap((value) => {
|
|
173
|
+
cmp[property] = value;
|
|
174
|
+
}));
|
|
175
|
+
};
|
|
553
176
|
}
|
|
554
177
|
|
|
555
178
|
/**
|
|
@@ -569,18 +192,18 @@ let disconnectObservables = new WeakMap();
|
|
|
569
192
|
* {@internal}
|
|
570
193
|
*/
|
|
571
194
|
let createUsingDisconnectedCallback = function (cmp) {
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
}
|
|
576
|
-
let disconnectedSubject$ = new Subject();
|
|
577
|
-
cmp.disconnectedCallback = function () {
|
|
578
|
-
if (previousDisconnected) {
|
|
579
|
-
previousDisconnected.call(cmp);
|
|
195
|
+
let previousDisconnected = cmp.disconnectedCallback;
|
|
196
|
+
if (!previousDisconnected) {
|
|
197
|
+
throw new Error(`Component "${cmp.constructor.name}" does not have a "disconnectedCallback()" method defined.`);
|
|
580
198
|
}
|
|
581
|
-
disconnectedSubject
|
|
582
|
-
|
|
583
|
-
|
|
199
|
+
let disconnectedSubject$ = new cjsExports.Subject();
|
|
200
|
+
cmp.disconnectedCallback = function () {
|
|
201
|
+
if (previousDisconnected) {
|
|
202
|
+
previousDisconnected.call(cmp);
|
|
203
|
+
}
|
|
204
|
+
disconnectedSubject$.next();
|
|
205
|
+
};
|
|
206
|
+
return disconnectedSubject$.asObservable();
|
|
584
207
|
};
|
|
585
208
|
/**
|
|
586
209
|
* Mutation observer is our next heuristic. We will monitor parent
|
|
@@ -592,32 +215,32 @@ let createUsingDisconnectedCallback = function (cmp) {
|
|
|
592
215
|
* {@internal}
|
|
593
216
|
*/
|
|
594
217
|
let createUsingMutationObserver = function (cmp) {
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
218
|
+
let element = getElement(cmp);
|
|
219
|
+
if (null === element.parentNode) {
|
|
220
|
+
throw new Error(`Component "${cmp.constructor.name}" is not within DOM.`);
|
|
221
|
+
}
|
|
222
|
+
return new cjsExports.Observable((observer) => {
|
|
223
|
+
let mutationObserver = new MutationObserver((mutations) => {
|
|
224
|
+
mutations.forEach((record) => {
|
|
225
|
+
for (let node of Array.from(record.removedNodes)) {
|
|
226
|
+
if (node !== element) {
|
|
227
|
+
continue;
|
|
228
|
+
}
|
|
229
|
+
observer.next();
|
|
230
|
+
observer.complete();
|
|
231
|
+
}
|
|
232
|
+
});
|
|
233
|
+
});
|
|
234
|
+
mutationObserver.observe(element.parentNode, {
|
|
235
|
+
childList: true,
|
|
236
|
+
subtree: true,
|
|
237
|
+
});
|
|
238
|
+
return () => {
|
|
239
|
+
mutationObserver.disconnect();
|
|
240
|
+
// we can not re-use this observable, so we have to delete it
|
|
241
|
+
disconnectObservables.delete(cmp);
|
|
242
|
+
};
|
|
614
243
|
});
|
|
615
|
-
return () => {
|
|
616
|
-
mutationObserver.disconnect();
|
|
617
|
-
// we can not re-use this observable, so we have to delete it
|
|
618
|
-
disconnectObservables.delete(cmp);
|
|
619
|
-
};
|
|
620
|
-
});
|
|
621
244
|
};
|
|
622
245
|
/**
|
|
623
246
|
* Creates an observable that emits a value when the component
|
|
@@ -626,35 +249,33 @@ let createUsingMutationObserver = function (cmp) {
|
|
|
626
249
|
* {@internal}
|
|
627
250
|
*/
|
|
628
251
|
function createDisconnectObservable(cmp) {
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
252
|
+
let functions = [
|
|
253
|
+
createUsingDisconnectedCallback,
|
|
254
|
+
createUsingMutationObserver,
|
|
255
|
+
];
|
|
256
|
+
for (let fn of functions) {
|
|
257
|
+
try {
|
|
258
|
+
disconnectObservables.set(cmp, fn(cmp));
|
|
259
|
+
return;
|
|
260
|
+
}
|
|
261
|
+
catch (e) {
|
|
262
|
+
// noop
|
|
263
|
+
}
|
|
640
264
|
}
|
|
641
|
-
|
|
642
|
-
throw new Error(`Could not create disconnect observable for component "${cmp.constructor.name}".`);
|
|
265
|
+
throw new Error(`Could not create disconnect observable for component "${cmp.constructor.name}".`);
|
|
643
266
|
}
|
|
644
267
|
/**
|
|
645
268
|
* Operator that unsubscribes from the source observable when
|
|
646
269
|
* the component is disconnected from DOM.
|
|
647
270
|
*/
|
|
648
271
|
function untilDisconnected(cmp) {
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
272
|
+
return (source) => {
|
|
273
|
+
if (!disconnectObservables.has(cmp)) {
|
|
274
|
+
createDisconnectObservable(cmp);
|
|
275
|
+
}
|
|
276
|
+
let disconnectObservable$ = disconnectObservables.get(cmp);
|
|
277
|
+
return source.pipe(cjsExports.takeUntil(disconnectObservable$));
|
|
278
|
+
};
|
|
656
279
|
}
|
|
657
280
|
|
|
658
|
-
export { QuerySelector, QuerySelectorAll, mutationObservable, propertiesObservable, renderObservable, scheduleRender, toProperty, untilDisconnected };
|
|
659
|
-
|
|
660
|
-
//# sourceMappingURL=index.js.map
|
|
281
|
+
export { QuerySelector, QuerySelectorAll, mutationObservable, propertiesObservable, propertyObservable, renderObservable, scheduleRender, toProperty, untilDisconnected };
|