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,2 +1,120 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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
|
-
|
|
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 };
|