ember-source 5.11.0 → 5.11.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/build-metadata.json +3 -3
- package/dist/ember-template-compiler.js +48 -42
- package/dist/ember-testing.js +1 -1
- package/dist/ember.debug.js +23102 -23100
- package/dist/ember.prod.js +31562 -31563
- package/dist/packages/@ember/-internals/container/index.js +1 -1
- package/dist/packages/@ember/-internals/deprecations/index.js +2 -1
- package/dist/packages/@ember/-internals/glimmer/index.js +2 -1
- package/dist/packages/@ember/-internals/meta/lib/meta.js +4 -3
- package/dist/packages/@ember/-internals/metal/index.js +9 -8
- package/dist/packages/@ember/-internals/routing/index.js +6 -5
- package/dist/packages/@ember/-internals/runtime/lib/ext/rsvp.js +3 -2
- package/dist/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +6 -5
- package/dist/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +4 -3
- package/dist/packages/@ember/-internals/runtime/lib/mixins/container_proxy.js +1 -1
- package/dist/packages/@ember/-internals/runtime/lib/mixins/registry_proxy.js +2 -1
- package/dist/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +4 -3
- package/dist/packages/@ember/-internals/string/index.js +1 -1
- package/dist/packages/@ember/-internals/utils/index.js +4 -4
- package/dist/packages/@ember/-internals/views/index.js +1 -1
- package/dist/packages/@ember/-internals/views/lib/compat/fallback-view-registry.js +1 -1
- package/dist/packages/@ember/-internals/views/lib/component_lookup.js +1 -1
- package/dist/packages/@ember/-internals/views/lib/mixins/action_support.js +5 -3
- package/dist/packages/@ember/-internals/views/lib/mixins/child_views_support.js +3 -3
- package/dist/packages/@ember/-internals/views/lib/mixins/class_names_support.js +4 -3
- package/dist/packages/@ember/-internals/views/lib/mixins/view_support.js +4 -3
- package/dist/packages/@ember/-internals/views/lib/system/event_dispatcher.js +6 -12
- package/dist/packages/@ember/-internals/views/lib/system/utils.js +3 -2
- package/dist/packages/@ember/-internals/views/lib/views/core_view.js +76 -8
- package/dist/packages/@ember/-internals/views/lib/views/states.js +4 -3
- package/dist/packages/@ember/application/index.js +16 -7
- package/dist/packages/@ember/application/instance.js +13 -9
- package/dist/packages/@ember/application/namespace.js +7 -6
- package/dist/packages/@ember/array/index.js +617 -11
- package/dist/packages/@ember/array/make.js +1 -0
- package/dist/packages/@ember/array/mutable.js +1 -1
- package/dist/packages/@ember/array/proxy.js +8 -5
- package/dist/packages/@ember/component/helper.js +4 -4
- package/dist/packages/@ember/component/index.js +4 -4
- package/dist/packages/@ember/controller/index.js +6 -6
- package/dist/packages/@ember/debug/container-debug-adapter.js +5 -4
- package/dist/packages/@ember/debug/data-adapter.js +7 -4
- package/dist/packages/@ember/debug/index.js +213 -4
- package/dist/packages/@ember/debug/lib/assert.js +47 -0
- package/dist/packages/@ember/debug/lib/deprecate.js +194 -4
- package/dist/packages/@ember/debug/lib/inspect.js +120 -2
- package/dist/packages/@ember/debug/lib/warn.js +94 -3
- package/dist/packages/@ember/engine/index.js +440 -17
- package/dist/packages/@ember/engine/instance.js +175 -11
- package/dist/packages/@ember/engine/parent.js +1 -0
- package/dist/packages/@ember/helper/index.js +4 -4
- package/dist/packages/@ember/instrumentation/index.js +2 -1
- package/dist/packages/@ember/modifier/index.js +13 -5
- package/dist/packages/@ember/modifier/on.js +15 -0
- package/dist/packages/@ember/object/-internals.js +6 -5
- package/dist/packages/@ember/object/compat.js +4 -3
- package/dist/packages/@ember/object/computed.js +4 -4
- package/dist/packages/@ember/object/core.js +861 -14
- package/dist/packages/@ember/object/evented.js +4 -4
- package/dist/packages/@ember/object/events.js +3 -3
- package/dist/packages/@ember/object/index.js +260 -9
- package/dist/packages/@ember/object/internals.js +1 -1
- package/dist/packages/@ember/object/lib/computed/computed_macros.js +8 -6
- package/dist/packages/@ember/object/lib/computed/reduce_computed_macros.js +8 -4
- package/dist/packages/@ember/object/mixin.js +6 -5
- package/dist/packages/@ember/object/observable.js +103 -9
- package/dist/packages/@ember/object/observers.js +3 -3
- package/dist/packages/@ember/object/promise-proxy-mixin.js +5 -5
- package/dist/packages/@ember/renderer/index.js +4 -4
- package/dist/packages/@ember/routing/-internals.js +3 -1
- package/dist/packages/@ember/routing/hash-location.js +2 -2
- package/dist/packages/@ember/routing/history-location.js +3 -2
- package/dist/packages/@ember/routing/index.js +4 -4
- package/dist/packages/@ember/routing/lib/dsl.js +2 -1
- package/dist/packages/@ember/routing/lib/generate_controller.js +4 -3
- package/dist/packages/@ember/routing/lib/router_state.js +26 -1
- package/dist/packages/@ember/routing/lib/routing-service.js +107 -9
- package/dist/packages/@ember/routing/lib/utils.js +238 -7
- package/dist/packages/@ember/routing/none-location.js +3 -2
- package/dist/packages/@ember/routing/route.js +1618 -22
- package/dist/packages/@ember/routing/router-service.js +638 -12
- package/dist/packages/@ember/routing/router.js +1449 -14
- package/dist/packages/@ember/runloop/index.js +760 -6
- package/dist/packages/@ember/service/index.js +3 -3
- package/dist/packages/@ember/template/index.js +4 -4
- package/dist/packages/@ember/utils/index.js +2 -1
- package/dist/packages/@ember/utils/lib/compare.js +159 -4
- package/dist/packages/@ember/utils/lib/is_empty.js +4 -4
- package/dist/packages/@ember/utils/lib/type-of.js +110 -1
- package/dist/packages/@glimmer/tracking/index.js +3 -3
- package/dist/packages/@glimmer/tracking/primitives/cache.js +3 -3
- package/dist/packages/ember/barrel.js +28 -13
- package/dist/packages/ember/version.js +1 -1
- package/dist/packages/ember-testing/lib/adapters/adapter.js +1 -1
- package/dist/packages/ember-testing/lib/adapters/qunit.js +2 -1
- package/dist/packages/ember-testing/lib/ext/application.js +2 -1
- package/dist/packages/ember-testing/lib/ext/rsvp.js +1 -1
- package/dist/packages/ember-testing/lib/helpers/and_then.js +2 -1
- package/dist/packages/ember-testing/lib/helpers/current_path.js +8 -6
- package/dist/packages/ember-testing/lib/helpers/current_route_name.js +8 -6
- package/dist/packages/ember-testing/lib/helpers/current_url.js +6 -5
- package/dist/packages/ember-testing/lib/helpers/pause_test.js +2 -1
- package/dist/packages/ember-testing/lib/helpers/visit.js +4 -3
- package/dist/packages/ember-testing/lib/helpers/wait.js +4 -3
- package/dist/packages/ember-testing/lib/initializers.js +15 -8
- package/dist/packages/ember-testing/lib/setup_for_testing.js +1 -1
- package/dist/packages/ember-testing/lib/test/run.js +1 -1
- package/dist/packages/router_js/index.js +2 -1
- package/dist/packages/shared-chunks/{alias-By_2yu5c.js → alias-Dri0koi2.js} +5 -3
- package/dist/packages/shared-chunks/array-3xbmc_4J.js +119 -0
- package/dist/packages/shared-chunks/{cache-gDE3bkXq.js → cache-BESCGvbE.js} +667 -1529
- package/dist/packages/shared-chunks/{core_view-Cxne2_wu.js → chunk-3SQBS3Y5-Cj4eryg1.js} +1 -88
- package/dist/packages/shared-chunks/{index-BXPoca1S.js → index-Llq6dmgX.js} +40 -4660
- package/dist/packages/shared-chunks/{is_proxy-Dmis-70B.js → is_proxy-DjvCKvd5.js} +1 -1
- package/dist/packages/shared-chunks/{mandatory-setter-1UQhiJOb.js → mandatory-setter-BiXq-dpN.js} +2 -1
- package/dist/packages/shared-chunks/{name-z9D9Yibn.js → name-Dx2bGFVv.js} +1 -1
- package/dist/packages/shared-chunks/{namespace_search-CBgHTkDh.js → namespace_search-btMaPM-_.js} +2 -2
- package/dist/packages/shared-chunks/{property_set-CW4q-uo4.js → property_set-BapAkp3X.js} +5 -4
- package/dist/packages/shared-chunks/{registry-DzfcDwii.js → registry-B8WARvkP.js} +3 -2
- package/dist/packages/shared-chunks/{router-B-Q1aYBn.js → router-DrLZsJeE.js} +2 -482
- package/dist/packages/shared-chunks/{set_properties-DvalyQdu.js → set_properties-BScfxzvI.js} +2 -2
- package/dist/packages/shared-chunks/setup-registry-du4pSGZi.js +48 -0
- package/dist/packages/shared-chunks/{to-string-D8i3mjEU.js → to-string-B1BmwUkt.js} +1 -1
- package/dist/packages/shared-chunks/unrecognized-url-error-zpz-JEoG.js +484 -0
- package/docs/data.json +152 -142
- package/package.json +2 -2
- package/types/stable/@ember/-internals/metal/lib/array.d.ts +1 -2
- package/types/stable/@ember/-internals/metal/lib/object-at.d.ts +4 -0
- package/types/stable/@ember/-internals/metal/lib/observer.d.ts +2 -1
- package/types/stable/@ember/array/index.d.ts +1 -1
- package/types/stable/@ember/array/make.d.ts +3 -0
- package/types/stable/@ember/debug/index.d.ts +3 -7
- package/types/stable/@ember/debug/lib/assert.d.ts +8 -0
- package/types/stable/@ember/engine/index.d.ts +1 -1
- package/types/stable/@ember/engine/instance.d.ts +2 -2
- package/types/stable/@ember/engine/parent.d.ts +3 -0
- package/types/stable/@ember/modifier/index.d.ts +1 -3
- package/types/stable/@ember/modifier/on.d.ts +5 -0
- package/types/stable/@ember/routing/lib/routing-service.d.ts +1 -1
- package/types/stable/@ember/routing/route.d.ts +2 -3
- package/types/stable/@ember/routing/router-service.d.ts +1 -1
- package/types/stable/@ember/routing/router.d.ts +4 -4
- package/types/stable/ember/barrel.d.ts +1 -1
- package/types/stable/ember/index.d.ts +1 -1
- package/types/stable/index.d.ts +5 -0
- package/dist/packages/shared-chunks/index-DTxy4Zgx.js +0 -641
- package/dist/packages/shared-chunks/index-PYiGj1jp.js +0 -2071
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
1
|
+
import '../../../@ember/debug/index.js';
|
|
2
|
+
import EmberRouter from '../../../@ember/routing/router.js';
|
|
3
|
+
import { run } from '../../../@ember/runloop/index.js';
|
|
4
4
|
import { isDevelopingApp } from '@embroider/macros';
|
|
5
|
+
import { assert } from '../../../@ember/debug/lib/assert.js';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
Loads a route, sets up any controllers, and renders any templates associated
|
|
@@ -7,11 +7,12 @@ import '../../../@ember/-internals/runtime/lib/mixins/-proxy.js';
|
|
|
7
7
|
import '../../../@ember/enumerable/mutable.js';
|
|
8
8
|
import '../../../@ember/-internals/runtime/lib/mixins/target_action_support.js';
|
|
9
9
|
import '../../../@ember/-internals/runtime/lib/ext/rsvp.js';
|
|
10
|
-
import {
|
|
10
|
+
import { _hasScheduledTimers, _getCurrentRunLoop, run } from '../../../@ember/runloop/index.js';
|
|
11
11
|
import { pendingRequests } from '../test/pending_requests.js';
|
|
12
|
-
import
|
|
13
|
-
import
|
|
12
|
+
import '../../../@ember/debug/index.js';
|
|
13
|
+
import EmberRouter from '../../../@ember/routing/router.js';
|
|
14
14
|
import { isDevelopingApp } from '@embroider/macros';
|
|
15
|
+
import { assert } from '../../../@ember/debug/lib/assert.js';
|
|
15
16
|
import { R as RSVP } from '../../../shared-chunks/rsvp-DaQAFb0W.js';
|
|
16
17
|
|
|
17
18
|
/**
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import '../../shared-chunks/mandatory-setter-
|
|
1
|
+
import '../../shared-chunks/mandatory-setter-BiXq-dpN.js';
|
|
2
2
|
import '@embroider/macros';
|
|
3
3
|
import '../../shared-chunks/env-BJLX2Arx.js';
|
|
4
|
-
import '
|
|
5
|
-
import '
|
|
4
|
+
import '../../@ember/debug/index.js';
|
|
5
|
+
import '../../@ember/runloop/index.js';
|
|
6
6
|
import '../../@ember/-internals/meta/lib/meta.js';
|
|
7
7
|
import '../../@glimmer/destroyable/index.js';
|
|
8
8
|
import '../../@glimmer/validator/index.js';
|
|
9
9
|
import '../../@glimmer/manager/index.js';
|
|
10
|
+
import '../../shared-chunks/cache-BESCGvbE.js';
|
|
10
11
|
import { onLoad } from '../../@ember/application/lib/lazy_load.js';
|
|
11
12
|
import '../../@ember/-internals/runtime/lib/mixins/registry_proxy.js';
|
|
12
13
|
import '../../@ember/-internals/runtime/lib/mixins/container_proxy.js';
|
|
@@ -16,25 +17,31 @@ import '../../@ember/-internals/runtime/lib/mixins/-proxy.js';
|
|
|
16
17
|
import '../../@ember/enumerable/mutable.js';
|
|
17
18
|
import '../../@ember/-internals/runtime/lib/mixins/target_action_support.js';
|
|
18
19
|
import '../../@ember/-internals/runtime/lib/ext/rsvp.js';
|
|
19
|
-
import '
|
|
20
|
+
import '../../@ember/object/index.js';
|
|
20
21
|
import '../../@ember/-internals/views/lib/system/action_manager.js';
|
|
21
22
|
import '../../@ember/-internals/views/lib/component_lookup.js';
|
|
22
|
-
import '
|
|
23
|
+
import '../../@ember/-internals/views/lib/views/core_view.js';
|
|
23
24
|
import '../../@ember/-internals/views/lib/mixins/class_names_support.js';
|
|
24
25
|
import '../../@ember/-internals/views/lib/mixins/child_views_support.js';
|
|
25
26
|
import '../../@ember/-internals/views/lib/mixins/view_state_support.js';
|
|
26
27
|
import '../../@ember/-internals/views/lib/mixins/view_support.js';
|
|
27
28
|
import '../../@ember/-internals/views/lib/mixins/action_support.js';
|
|
28
|
-
import '
|
|
29
|
+
import '../../@ember/routing/route.js';
|
|
30
|
+
import '../../@ember/routing/router.js';
|
|
29
31
|
import '../../@ember/routing/none-location.js';
|
|
32
|
+
import '../../@ember/engine/instance.js';
|
|
30
33
|
import '../../route-recognizer/index.js';
|
|
31
34
|
import '../../shared-chunks/rsvp-DaQAFb0W.js';
|
|
32
|
-
import '../../shared-chunks/
|
|
35
|
+
import '../../shared-chunks/unrecognized-url-error-zpz-JEoG.js';
|
|
36
|
+
import '../../@ember/routing/lib/routing-service.js';
|
|
33
37
|
import '../../@ember/controller/index.js';
|
|
34
38
|
import '../../@glimmer/opcode-compiler/index.js';
|
|
35
|
-
import '../../shared-chunks/
|
|
39
|
+
import '../../shared-chunks/index-Llq6dmgX.js';
|
|
40
|
+
import '../../shared-chunks/registry-B8WARvkP.js';
|
|
36
41
|
import '../../@glimmer/runtime/index.js';
|
|
37
42
|
import '../../@glimmer/reference/index.js';
|
|
43
|
+
import '../../@ember/engine/index.js';
|
|
44
|
+
import '../../@ember/routing/router-service.js';
|
|
38
45
|
|
|
39
46
|
let name = 'deferReadiness in `testing` mode';
|
|
40
47
|
onLoad('Ember.Application', function (ApplicationClass) {
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export { I as InternalRouteInfo,
|
|
1
|
+
export { I as InternalRouteInfo, a as TransitionError, T as TransitionState, R as default } from '../shared-chunks/router-DrLZsJeE.js';
|
|
2
|
+
export { T as InternalTransition, P as PARAMS_SYMBOL, Q as QUERY_PARAMS_SYMBOL, S as STATE_SYMBOL, l as logAbort } from '../shared-chunks/unrecognized-url-error-zpz-JEoG.js';
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { meta } from '../@ember/-internals/meta/lib/meta.js';
|
|
2
|
-
import
|
|
2
|
+
import '../@ember/debug/index.js';
|
|
3
3
|
import { tagMetaFor, tagFor, untrack, validateTag, updateTag as UPDATE_TAG, valueForTag, consumeTag } from '../@glimmer/validator/index.js';
|
|
4
|
-
import { i as isElementDescriptor,
|
|
5
|
-
import { s as set } from './property_set-
|
|
4
|
+
import { i as isElementDescriptor, F as makeComputedDecorator, E as descriptorForDecorator, J as ComputedDescriptor, K as CHAIN_PASS_THROUGH, g as get, L as getChainTagsForKey, M as finishLazyChains, d as defineProperty } from './cache-BESCGvbE.js';
|
|
5
|
+
import { s as set } from './property_set-BapAkp3X.js';
|
|
6
6
|
import { isDevelopingApp } from '@embroider/macros';
|
|
7
|
+
import { assert } from '../@ember/debug/lib/assert.js';
|
|
8
|
+
import inspect from '../@ember/debug/lib/inspect.js';
|
|
7
9
|
|
|
8
10
|
function alias(altKey) {
|
|
9
11
|
(isDevelopingApp() && !(!isElementDescriptor(Array.prototype.slice.call(arguments))) && assert('You attempted to use @alias as a decorator directly, but it requires a `altKey` parameter', !isElementDescriptor(Array.prototype.slice.call(arguments)))); // SAFETY: We passed in the impl for this class
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import '../@ember/debug/index.js';
|
|
2
|
+
import { peekMeta } from '../@ember/-internals/meta/lib/meta.js';
|
|
3
|
+
import { k as sendEvent, n as notifyPropertyChange, G as addListener, H as removeListener } from './cache-BESCGvbE.js';
|
|
4
|
+
import { isDevelopingApp } from '@embroider/macros';
|
|
5
|
+
import { assert } from '../@ember/debug/lib/assert.js';
|
|
6
|
+
|
|
7
|
+
function arrayContentWillChange(array, startIdx, removeAmt, addAmt) {
|
|
8
|
+
// if no args are passed assume everything changes
|
|
9
|
+
if (startIdx === undefined) {
|
|
10
|
+
startIdx = 0;
|
|
11
|
+
removeAmt = addAmt = -1;
|
|
12
|
+
} else {
|
|
13
|
+
if (removeAmt === undefined) {
|
|
14
|
+
removeAmt = -1;
|
|
15
|
+
}
|
|
16
|
+
if (addAmt === undefined) {
|
|
17
|
+
addAmt = -1;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
sendEvent(array, '@array:before', [array, startIdx, removeAmt, addAmt]);
|
|
21
|
+
return array;
|
|
22
|
+
}
|
|
23
|
+
function arrayContentDidChange(array, startIdx, removeAmt, addAmt, notify = true) {
|
|
24
|
+
// if no args are passed assume everything changes
|
|
25
|
+
if (startIdx === undefined) {
|
|
26
|
+
startIdx = 0;
|
|
27
|
+
removeAmt = addAmt = -1;
|
|
28
|
+
} else {
|
|
29
|
+
if (removeAmt === undefined) {
|
|
30
|
+
removeAmt = -1;
|
|
31
|
+
}
|
|
32
|
+
if (addAmt === undefined) {
|
|
33
|
+
addAmt = -1;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
let meta = peekMeta(array);
|
|
37
|
+
if (notify) {
|
|
38
|
+
if (addAmt < 0 || removeAmt < 0 || addAmt - removeAmt !== 0) {
|
|
39
|
+
notifyPropertyChange(array, 'length', meta);
|
|
40
|
+
}
|
|
41
|
+
notifyPropertyChange(array, '[]', meta);
|
|
42
|
+
}
|
|
43
|
+
sendEvent(array, '@array:change', [array, startIdx, removeAmt, addAmt]);
|
|
44
|
+
if (meta !== null) {
|
|
45
|
+
let length = array.length;
|
|
46
|
+
let addedAmount = addAmt === -1 ? 0 : addAmt;
|
|
47
|
+
let removedAmount = removeAmt === -1 ? 0 : removeAmt;
|
|
48
|
+
let delta = addedAmount - removedAmount;
|
|
49
|
+
let previousLength = length - delta;
|
|
50
|
+
let normalStartIdx = startIdx < 0 ? previousLength + startIdx : startIdx;
|
|
51
|
+
if (meta.revisionFor('firstObject') !== undefined && normalStartIdx === 0) {
|
|
52
|
+
notifyPropertyChange(array, 'firstObject', meta);
|
|
53
|
+
}
|
|
54
|
+
if (meta.revisionFor('lastObject') !== undefined) {
|
|
55
|
+
let previousLastIndex = previousLength - 1;
|
|
56
|
+
let lastAffectedIndex = normalStartIdx + removedAmount;
|
|
57
|
+
if (previousLastIndex < lastAffectedIndex) {
|
|
58
|
+
notifyPropertyChange(array, 'lastObject', meta);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return array;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
const EMPTY_ARRAY = Object.freeze([]);
|
|
66
|
+
|
|
67
|
+
// Ideally, we'd use MutableArray.detect but for unknown reasons this causes
|
|
68
|
+
// the node tests to fail strangely.
|
|
69
|
+
function isMutableArray(obj) {
|
|
70
|
+
return obj != null && typeof obj.replace === 'function';
|
|
71
|
+
}
|
|
72
|
+
function replace(array, start, deleteCount, items = EMPTY_ARRAY) {
|
|
73
|
+
if (isMutableArray(array)) {
|
|
74
|
+
array.replace(start, deleteCount, items);
|
|
75
|
+
} else {
|
|
76
|
+
(isDevelopingApp() && !(Array.isArray(array)) && assert('Can only replace content of a native array or MutableArray', Array.isArray(array)));
|
|
77
|
+
replaceInNativeArray(array, start, deleteCount, items);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
const CHUNK_SIZE = 60000;
|
|
81
|
+
|
|
82
|
+
// To avoid overflowing the stack, we splice up to CHUNK_SIZE items at a time.
|
|
83
|
+
// See https://code.google.com/p/chromium/issues/detail?id=56588 for more details.
|
|
84
|
+
function replaceInNativeArray(array, start, deleteCount, items) {
|
|
85
|
+
arrayContentWillChange(array, start, deleteCount, items.length);
|
|
86
|
+
if (items.length <= CHUNK_SIZE) {
|
|
87
|
+
array.splice(start, deleteCount, ...items);
|
|
88
|
+
} else {
|
|
89
|
+
array.splice(start, deleteCount);
|
|
90
|
+
for (let i = 0; i < items.length; i += CHUNK_SIZE) {
|
|
91
|
+
let chunk = items.slice(i, i + CHUNK_SIZE);
|
|
92
|
+
array.splice(start + i, 0, ...chunk);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
arrayContentDidChange(array, start, deleteCount, items.length);
|
|
96
|
+
}
|
|
97
|
+
function arrayObserversHelper(obj, target, opts, operation) {
|
|
98
|
+
let {
|
|
99
|
+
willChange,
|
|
100
|
+
didChange
|
|
101
|
+
} = opts;
|
|
102
|
+
operation(obj, '@array:before', target, willChange);
|
|
103
|
+
operation(obj, '@array:change', target, didChange);
|
|
104
|
+
|
|
105
|
+
/*
|
|
106
|
+
* Array proxies have a `_revalidate` method which must be called to set
|
|
107
|
+
* up their internal array observation systems.
|
|
108
|
+
*/
|
|
109
|
+
obj._revalidate?.();
|
|
110
|
+
return obj;
|
|
111
|
+
}
|
|
112
|
+
function addArrayObserver(array, target, opts) {
|
|
113
|
+
return arrayObserversHelper(array, target, opts, addListener);
|
|
114
|
+
}
|
|
115
|
+
function removeArrayObserver(array, target, opts) {
|
|
116
|
+
return arrayObserversHelper(array, target, opts, removeListener);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export { replace as a, arrayContentWillChange as b, arrayContentDidChange as c, addArrayObserver as d, removeArrayObserver as e, replaceInNativeArray as r };
|