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.
Files changed (147) hide show
  1. package/build-metadata.json +3 -3
  2. package/dist/ember-template-compiler.js +48 -42
  3. package/dist/ember-testing.js +1 -1
  4. package/dist/ember.debug.js +23102 -23100
  5. package/dist/ember.prod.js +31562 -31563
  6. package/dist/packages/@ember/-internals/container/index.js +1 -1
  7. package/dist/packages/@ember/-internals/deprecations/index.js +2 -1
  8. package/dist/packages/@ember/-internals/glimmer/index.js +2 -1
  9. package/dist/packages/@ember/-internals/meta/lib/meta.js +4 -3
  10. package/dist/packages/@ember/-internals/metal/index.js +9 -8
  11. package/dist/packages/@ember/-internals/routing/index.js +6 -5
  12. package/dist/packages/@ember/-internals/runtime/lib/ext/rsvp.js +3 -2
  13. package/dist/packages/@ember/-internals/runtime/lib/mixins/-proxy.js +6 -5
  14. package/dist/packages/@ember/-internals/runtime/lib/mixins/action_handler.js +4 -3
  15. package/dist/packages/@ember/-internals/runtime/lib/mixins/container_proxy.js +1 -1
  16. package/dist/packages/@ember/-internals/runtime/lib/mixins/registry_proxy.js +2 -1
  17. package/dist/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +4 -3
  18. package/dist/packages/@ember/-internals/string/index.js +1 -1
  19. package/dist/packages/@ember/-internals/utils/index.js +4 -4
  20. package/dist/packages/@ember/-internals/views/index.js +1 -1
  21. package/dist/packages/@ember/-internals/views/lib/compat/fallback-view-registry.js +1 -1
  22. package/dist/packages/@ember/-internals/views/lib/component_lookup.js +1 -1
  23. package/dist/packages/@ember/-internals/views/lib/mixins/action_support.js +5 -3
  24. package/dist/packages/@ember/-internals/views/lib/mixins/child_views_support.js +3 -3
  25. package/dist/packages/@ember/-internals/views/lib/mixins/class_names_support.js +4 -3
  26. package/dist/packages/@ember/-internals/views/lib/mixins/view_support.js +4 -3
  27. package/dist/packages/@ember/-internals/views/lib/system/event_dispatcher.js +6 -12
  28. package/dist/packages/@ember/-internals/views/lib/system/utils.js +3 -2
  29. package/dist/packages/@ember/-internals/views/lib/views/core_view.js +76 -8
  30. package/dist/packages/@ember/-internals/views/lib/views/states.js +4 -3
  31. package/dist/packages/@ember/application/index.js +16 -7
  32. package/dist/packages/@ember/application/instance.js +13 -9
  33. package/dist/packages/@ember/application/namespace.js +7 -6
  34. package/dist/packages/@ember/array/index.js +617 -11
  35. package/dist/packages/@ember/array/make.js +1 -0
  36. package/dist/packages/@ember/array/mutable.js +1 -1
  37. package/dist/packages/@ember/array/proxy.js +8 -5
  38. package/dist/packages/@ember/component/helper.js +4 -4
  39. package/dist/packages/@ember/component/index.js +4 -4
  40. package/dist/packages/@ember/controller/index.js +6 -6
  41. package/dist/packages/@ember/debug/container-debug-adapter.js +5 -4
  42. package/dist/packages/@ember/debug/data-adapter.js +7 -4
  43. package/dist/packages/@ember/debug/index.js +213 -4
  44. package/dist/packages/@ember/debug/lib/assert.js +47 -0
  45. package/dist/packages/@ember/debug/lib/deprecate.js +194 -4
  46. package/dist/packages/@ember/debug/lib/inspect.js +120 -2
  47. package/dist/packages/@ember/debug/lib/warn.js +94 -3
  48. package/dist/packages/@ember/engine/index.js +440 -17
  49. package/dist/packages/@ember/engine/instance.js +175 -11
  50. package/dist/packages/@ember/engine/parent.js +1 -0
  51. package/dist/packages/@ember/helper/index.js +4 -4
  52. package/dist/packages/@ember/instrumentation/index.js +2 -1
  53. package/dist/packages/@ember/modifier/index.js +13 -5
  54. package/dist/packages/@ember/modifier/on.js +15 -0
  55. package/dist/packages/@ember/object/-internals.js +6 -5
  56. package/dist/packages/@ember/object/compat.js +4 -3
  57. package/dist/packages/@ember/object/computed.js +4 -4
  58. package/dist/packages/@ember/object/core.js +861 -14
  59. package/dist/packages/@ember/object/evented.js +4 -4
  60. package/dist/packages/@ember/object/events.js +3 -3
  61. package/dist/packages/@ember/object/index.js +260 -9
  62. package/dist/packages/@ember/object/internals.js +1 -1
  63. package/dist/packages/@ember/object/lib/computed/computed_macros.js +8 -6
  64. package/dist/packages/@ember/object/lib/computed/reduce_computed_macros.js +8 -4
  65. package/dist/packages/@ember/object/mixin.js +6 -5
  66. package/dist/packages/@ember/object/observable.js +103 -9
  67. package/dist/packages/@ember/object/observers.js +3 -3
  68. package/dist/packages/@ember/object/promise-proxy-mixin.js +5 -5
  69. package/dist/packages/@ember/renderer/index.js +4 -4
  70. package/dist/packages/@ember/routing/-internals.js +3 -1
  71. package/dist/packages/@ember/routing/hash-location.js +2 -2
  72. package/dist/packages/@ember/routing/history-location.js +3 -2
  73. package/dist/packages/@ember/routing/index.js +4 -4
  74. package/dist/packages/@ember/routing/lib/dsl.js +2 -1
  75. package/dist/packages/@ember/routing/lib/generate_controller.js +4 -3
  76. package/dist/packages/@ember/routing/lib/router_state.js +26 -1
  77. package/dist/packages/@ember/routing/lib/routing-service.js +107 -9
  78. package/dist/packages/@ember/routing/lib/utils.js +238 -7
  79. package/dist/packages/@ember/routing/none-location.js +3 -2
  80. package/dist/packages/@ember/routing/route.js +1618 -22
  81. package/dist/packages/@ember/routing/router-service.js +638 -12
  82. package/dist/packages/@ember/routing/router.js +1449 -14
  83. package/dist/packages/@ember/runloop/index.js +760 -6
  84. package/dist/packages/@ember/service/index.js +3 -3
  85. package/dist/packages/@ember/template/index.js +4 -4
  86. package/dist/packages/@ember/utils/index.js +2 -1
  87. package/dist/packages/@ember/utils/lib/compare.js +159 -4
  88. package/dist/packages/@ember/utils/lib/is_empty.js +4 -4
  89. package/dist/packages/@ember/utils/lib/type-of.js +110 -1
  90. package/dist/packages/@glimmer/tracking/index.js +3 -3
  91. package/dist/packages/@glimmer/tracking/primitives/cache.js +3 -3
  92. package/dist/packages/ember/barrel.js +28 -13
  93. package/dist/packages/ember/version.js +1 -1
  94. package/dist/packages/ember-testing/lib/adapters/adapter.js +1 -1
  95. package/dist/packages/ember-testing/lib/adapters/qunit.js +2 -1
  96. package/dist/packages/ember-testing/lib/ext/application.js +2 -1
  97. package/dist/packages/ember-testing/lib/ext/rsvp.js +1 -1
  98. package/dist/packages/ember-testing/lib/helpers/and_then.js +2 -1
  99. package/dist/packages/ember-testing/lib/helpers/current_path.js +8 -6
  100. package/dist/packages/ember-testing/lib/helpers/current_route_name.js +8 -6
  101. package/dist/packages/ember-testing/lib/helpers/current_url.js +6 -5
  102. package/dist/packages/ember-testing/lib/helpers/pause_test.js +2 -1
  103. package/dist/packages/ember-testing/lib/helpers/visit.js +4 -3
  104. package/dist/packages/ember-testing/lib/helpers/wait.js +4 -3
  105. package/dist/packages/ember-testing/lib/initializers.js +15 -8
  106. package/dist/packages/ember-testing/lib/setup_for_testing.js +1 -1
  107. package/dist/packages/ember-testing/lib/test/run.js +1 -1
  108. package/dist/packages/router_js/index.js +2 -1
  109. package/dist/packages/shared-chunks/{alias-By_2yu5c.js → alias-Dri0koi2.js} +5 -3
  110. package/dist/packages/shared-chunks/array-3xbmc_4J.js +119 -0
  111. package/dist/packages/shared-chunks/{cache-gDE3bkXq.js → cache-BESCGvbE.js} +667 -1529
  112. package/dist/packages/shared-chunks/{core_view-Cxne2_wu.js → chunk-3SQBS3Y5-Cj4eryg1.js} +1 -88
  113. package/dist/packages/shared-chunks/{index-BXPoca1S.js → index-Llq6dmgX.js} +40 -4660
  114. package/dist/packages/shared-chunks/{is_proxy-Dmis-70B.js → is_proxy-DjvCKvd5.js} +1 -1
  115. package/dist/packages/shared-chunks/{mandatory-setter-1UQhiJOb.js → mandatory-setter-BiXq-dpN.js} +2 -1
  116. package/dist/packages/shared-chunks/{name-z9D9Yibn.js → name-Dx2bGFVv.js} +1 -1
  117. package/dist/packages/shared-chunks/{namespace_search-CBgHTkDh.js → namespace_search-btMaPM-_.js} +2 -2
  118. package/dist/packages/shared-chunks/{property_set-CW4q-uo4.js → property_set-BapAkp3X.js} +5 -4
  119. package/dist/packages/shared-chunks/{registry-DzfcDwii.js → registry-B8WARvkP.js} +3 -2
  120. package/dist/packages/shared-chunks/{router-B-Q1aYBn.js → router-DrLZsJeE.js} +2 -482
  121. package/dist/packages/shared-chunks/{set_properties-DvalyQdu.js → set_properties-BScfxzvI.js} +2 -2
  122. package/dist/packages/shared-chunks/setup-registry-du4pSGZi.js +48 -0
  123. package/dist/packages/shared-chunks/{to-string-D8i3mjEU.js → to-string-B1BmwUkt.js} +1 -1
  124. package/dist/packages/shared-chunks/unrecognized-url-error-zpz-JEoG.js +484 -0
  125. package/docs/data.json +152 -142
  126. package/package.json +2 -2
  127. package/types/stable/@ember/-internals/metal/lib/array.d.ts +1 -2
  128. package/types/stable/@ember/-internals/metal/lib/object-at.d.ts +4 -0
  129. package/types/stable/@ember/-internals/metal/lib/observer.d.ts +2 -1
  130. package/types/stable/@ember/array/index.d.ts +1 -1
  131. package/types/stable/@ember/array/make.d.ts +3 -0
  132. package/types/stable/@ember/debug/index.d.ts +3 -7
  133. package/types/stable/@ember/debug/lib/assert.d.ts +8 -0
  134. package/types/stable/@ember/engine/index.d.ts +1 -1
  135. package/types/stable/@ember/engine/instance.d.ts +2 -2
  136. package/types/stable/@ember/engine/parent.d.ts +3 -0
  137. package/types/stable/@ember/modifier/index.d.ts +1 -3
  138. package/types/stable/@ember/modifier/on.d.ts +5 -0
  139. package/types/stable/@ember/routing/lib/routing-service.d.ts +1 -1
  140. package/types/stable/@ember/routing/route.d.ts +2 -3
  141. package/types/stable/@ember/routing/router-service.d.ts +1 -1
  142. package/types/stable/@ember/routing/router.d.ts +4 -4
  143. package/types/stable/ember/barrel.d.ts +1 -1
  144. package/types/stable/ember/index.d.ts +1 -1
  145. package/types/stable/index.d.ts +5 -0
  146. package/dist/packages/shared-chunks/index-DTxy4Zgx.js +0 -641
  147. package/dist/packages/shared-chunks/index-PYiGj1jp.js +0 -2071
@@ -1,7 +1,8 @@
1
- import { a as assert } from '../../../shared-chunks/index-DTxy4Zgx.js';
2
- import { j as EmberRouter } from '../../../shared-chunks/index-BXPoca1S.js';
3
- import { O as run } from '../../../shared-chunks/cache-gDE3bkXq.js';
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 { $ as _hasScheduledTimers, Z as _getCurrentRunLoop, O as run } from '../../../shared-chunks/cache-gDE3bkXq.js';
10
+ import { _hasScheduledTimers, _getCurrentRunLoop, run } from '../../../@ember/runloop/index.js';
11
11
  import { pendingRequests } from '../test/pending_requests.js';
12
- import { a as assert } from '../../../shared-chunks/index-DTxy4Zgx.js';
13
- import { j as EmberRouter } from '../../../shared-chunks/index-BXPoca1S.js';
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-1UQhiJOb.js';
1
+ import '../../shared-chunks/mandatory-setter-BiXq-dpN.js';
2
2
  import '@embroider/macros';
3
3
  import '../../shared-chunks/env-BJLX2Arx.js';
4
- import '../../shared-chunks/index-DTxy4Zgx.js';
5
- import '../../shared-chunks/cache-gDE3bkXq.js';
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 '../../shared-chunks/index-PYiGj1jp.js';
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 '../../shared-chunks/core_view-Cxne2_wu.js';
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 '../../shared-chunks/index-BXPoca1S.js';
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/router-B-Q1aYBn.js';
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/registry-DzfcDwii.js';
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,4 +1,4 @@
1
- import '../../shared-chunks/index-DTxy4Zgx.js';
1
+ import '../../@ember/debug/index.js';
2
2
  import { setAdapter, getAdapter } from './test/adapter.js';
3
3
  import Adapter from './adapters/adapter.js';
4
4
  import QUnitAdapter from './adapters/qunit.js';
@@ -1,4 +1,4 @@
1
- import { O as run$1, Z as _getCurrentRunLoop } from '../../../shared-chunks/cache-gDE3bkXq.js';
1
+ import { run as run$1, _getCurrentRunLoop } from '../../../@ember/runloop/index.js';
2
2
 
3
3
  function run(fn) {
4
4
  if (!_getCurrentRunLoop()) {
@@ -1 +1,2 @@
1
- export { I as InternalRouteInfo, T as InternalTransition, P as PARAMS_SYMBOL, Q as QUERY_PARAMS_SYMBOL, S as STATE_SYMBOL, b as TransitionError, a as TransitionState, R as default, l as logAbort } from '../shared-chunks/router-B-Q1aYBn.js';
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 { a as assert, b as inspect } from './index-DTxy4Zgx.js';
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, w as makeComputedDecorator, v as descriptorForDecorator, D as ComputedDescriptor, E as CHAIN_PASS_THROUGH, g as get, F as getChainTagsForKey, G as finishLazyChains, d as defineProperty } from './cache-gDE3bkXq.js';
5
- import { s as set } from './property_set-CW4q-uo4.js';
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 };