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,2 +1,120 @@
1
- export { b as default } from '../../../shared-chunks/index-DTxy4Zgx.js';
2
- import '@embroider/macros';
1
+ import { assert } from './assert.js';
2
+
3
+ const {
4
+ toString: objectToString
5
+ } = Object.prototype;
6
+ const {
7
+ toString: functionToString
8
+ } = Function.prototype;
9
+ const {
10
+ isArray
11
+ } = Array;
12
+ const {
13
+ keys: objectKeys
14
+ } = Object;
15
+ const {
16
+ stringify
17
+ } = JSON;
18
+ const LIST_LIMIT = 100;
19
+ const DEPTH_LIMIT = 4;
20
+ const SAFE_KEY = /^[\w$]+$/;
21
+
22
+ /**
23
+ @module @ember/debug
24
+ */
25
+ /**
26
+ Convenience method to inspect an object. This method will attempt to
27
+ convert the object into a useful string description.
28
+
29
+ It is a pretty simple implementation. If you want something more robust,
30
+ use something like JSDump: https://github.com/NV/jsDump
31
+
32
+ @method inspect
33
+ @static
34
+ @param {Object} obj The object you want to inspect.
35
+ @return {String} A description of the object
36
+ @since 1.4.0
37
+ @private
38
+ */
39
+ function inspect(obj) {
40
+ // detect Node util.inspect call inspect(depth: number, opts: object)
41
+ if (typeof obj === 'number' && arguments.length === 2) {
42
+ return this;
43
+ }
44
+ return inspectValue(obj, 0);
45
+ }
46
+ function inspectValue(value, depth, seen) {
47
+ let valueIsArray = false;
48
+ switch (typeof value) {
49
+ case 'undefined':
50
+ return 'undefined';
51
+ case 'object':
52
+ if (value === null) return 'null';
53
+ if (isArray(value)) {
54
+ valueIsArray = true;
55
+ break;
56
+ }
57
+ // is toString Object.prototype.toString or undefined then traverse
58
+ if (value.toString === objectToString || value.toString === undefined) {
59
+ break;
60
+ }
61
+ // custom toString
62
+ return value.toString();
63
+ case 'function':
64
+ return value.toString === functionToString ? value.name ? `[Function:${value.name}]` : `[Function]` : value.toString();
65
+ case 'string':
66
+ return stringify(value);
67
+ case 'symbol':
68
+ case 'boolean':
69
+ case 'number':
70
+ default:
71
+ return value.toString();
72
+ }
73
+ if (seen === undefined) {
74
+ seen = new WeakSet();
75
+ } else {
76
+ if (seen.has(value)) return `[Circular]`;
77
+ }
78
+ seen.add(value);
79
+ return valueIsArray ? inspectArray(value, depth + 1, seen) : inspectObject(value, depth + 1, seen);
80
+ }
81
+ function inspectKey(key) {
82
+ return SAFE_KEY.test(key) ? key : stringify(key);
83
+ }
84
+ function inspectObject(obj, depth, seen) {
85
+ if (depth > DEPTH_LIMIT) {
86
+ return '[Object]';
87
+ }
88
+ let s = '{';
89
+ let keys = objectKeys(obj);
90
+ for (let i = 0; i < keys.length; i++) {
91
+ s += i === 0 ? ' ' : ', ';
92
+ if (i >= LIST_LIMIT) {
93
+ s += `... ${keys.length - LIST_LIMIT} more keys`;
94
+ break;
95
+ }
96
+ let key = keys[i];
97
+ assert('has key', key); // Looping over array
98
+ s += `${inspectKey(String(key))}: ${inspectValue(obj[key], depth, seen)}`;
99
+ }
100
+ s += ' }';
101
+ return s;
102
+ }
103
+ function inspectArray(arr, depth, seen) {
104
+ if (depth > DEPTH_LIMIT) {
105
+ return '[Array]';
106
+ }
107
+ let s = '[';
108
+ for (let i = 0; i < arr.length; i++) {
109
+ s += i === 0 ? ' ' : ', ';
110
+ if (i >= LIST_LIMIT) {
111
+ s += `... ${arr.length - LIST_LIMIT} more items`;
112
+ break;
113
+ }
114
+ s += inspectValue(arr[i], depth, seen);
115
+ }
116
+ s += ' ]';
117
+ return s;
118
+ }
119
+
120
+ export { inspect as default };
@@ -1,3 +1,94 @@
1
- export { l as default, o as missingOptionsDeprecation, n as missingOptionsIdDeprecation, g as registerHandler } from '../../../shared-chunks/index-DTxy4Zgx.js';
2
- import './handlers.js';
3
- import '@embroider/macros';
1
+ import { assert } from './assert.js';
2
+ import { registerHandler as registerHandler$1, invoke } from './handlers.js';
3
+ import { isDevelopingApp } from '@embroider/macros';
4
+
5
+ let registerHandler = () => {};
6
+ let warn = () => {};
7
+ let missingOptionsDeprecation;
8
+ let missingOptionsIdDeprecation;
9
+
10
+ /**
11
+ @module @ember/debug
12
+ */
13
+
14
+ if (isDevelopingApp()) {
15
+ /**
16
+ Allows for runtime registration of handler functions that override the default warning behavior.
17
+ Warnings are invoked by calls made to [@ember/debug/warn](/ember/release/classes/@ember%2Fdebug/methods/warn?anchor=warn).
18
+ The following example demonstrates its usage by registering a handler that does nothing overriding Ember's
19
+ default warning behavior.
20
+ ```javascript
21
+ import { registerWarnHandler } from '@ember/debug';
22
+ // next is not called, so no warnings get the default behavior
23
+ registerWarnHandler(() => {});
24
+ ```
25
+ The handler function takes the following arguments:
26
+ <ul>
27
+ <li> <code>message</code> - The message received from the warn call. </li>
28
+ <li> <code>options</code> - An object passed in with the warn call containing additional information including:</li>
29
+ <ul>
30
+ <li> <code>id</code> - An id of the warning in the form of <code>package-name.specific-warning</code>.</li>
31
+ </ul>
32
+ <li> <code>next</code> - A function that calls into the previously registered handler.</li>
33
+ </ul>
34
+ @public
35
+ @static
36
+ @method registerWarnHandler
37
+ @for @ember/debug
38
+ @param handler {Function} A function to handle warnings.
39
+ @since 2.1.0
40
+ */
41
+ registerHandler = function registerHandler(handler) {
42
+ registerHandler$1('warn', handler);
43
+ };
44
+ registerHandler(function logWarning(message) {
45
+ /* eslint-disable no-console */
46
+ console.warn(`WARNING: ${message}`);
47
+ /* eslint-enable no-console */
48
+ });
49
+ missingOptionsDeprecation = 'When calling `warn` you ' + 'must provide an `options` hash as the third parameter. ' + '`options` should include an `id` property.';
50
+ missingOptionsIdDeprecation = 'When calling `warn` you must provide `id` in options.';
51
+
52
+ /**
53
+ Display a warning with the provided message.
54
+ * In a production build, this method is defined as an empty function (NOP).
55
+ Uses of this method in Ember itself are stripped from the ember.prod.js build.
56
+ ```javascript
57
+ import { warn } from '@ember/debug';
58
+ import tomsterCount from './tomster-counter'; // a module in my project
59
+ // Log a warning if we have more than 3 tomsters
60
+ warn('Too many tomsters!', tomsterCount <= 3, {
61
+ id: 'ember-debug.too-many-tomsters'
62
+ });
63
+ ```
64
+ @method warn
65
+ @for @ember/debug
66
+ @static
67
+ @param {String} message A warning to display.
68
+ @param {Boolean|Object} test An optional boolean. If falsy, the warning
69
+ will be displayed. If `test` is an object, the `test` parameter can
70
+ be used as the `options` parameter and the warning is displayed.
71
+ @param {Object} options
72
+ @param {String} options.id The `id` can be used by Ember debugging tools
73
+ to change the behavior (raise, log, or silence) for that specific warning.
74
+ The `id` should be namespaced by dots, e.g. "ember-debug.feature-flag-with-features-stripped"
75
+ @public
76
+ @since 1.0.0
77
+ */
78
+ warn = function warn(message, test, options) {
79
+ if (arguments.length === 2 && typeof test === 'object') {
80
+ options = test;
81
+ test = false;
82
+ }
83
+ assert(missingOptionsDeprecation, Boolean(options));
84
+ assert(missingOptionsIdDeprecation, Boolean(options && options.id));
85
+
86
+ // SAFETY: we have explicitly assigned `false` if the user invoked the
87
+ // arity-2 version of the overload, so we know `test` is always either
88
+ // `undefined` or a `boolean` for type-safe callers.
89
+ invoke('warn', message, test, options);
90
+ };
91
+ }
92
+ const _warn = warn;
93
+
94
+ export { _warn as default, missingOptionsDeprecation, missingOptionsIdDeprecation, registerHandler };