ember-source 4.0.0-beta.5 → 4.0.0-beta.9
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/CHANGELOG.md +42 -1
- package/blueprints/acceptance-test/qunit-files/tests/acceptance/__name__-test.js +1 -1
- package/blueprints/acceptance-test/qunit-rfc-232-files/tests/acceptance/__name__-test.js +1 -1
- package/blueprints/component-test/qunit-files/__root__/__testType__/__path__/__test__.js +3 -3
- package/blueprints/helper-test/index.js +4 -22
- package/blueprints/helper-test/mocha-0.12-files/__root__/__testType__/__collection__/__name__-test.js +1 -13
- package/blueprints/helper-test/mocha-files/__root__/__testType__/__collection__/__name__-test.js +0 -13
- package/blueprints/helper-test/mocha-rfc-232-files/__root__/__testType__/__collection__/__name__-test.js +2 -12
- package/blueprints/helper-test/qunit-files/__root__/__testType__/__collection__/__name__-test.js +2 -13
- package/blueprints/helper-test/qunit-rfc-232-files/__root__/__testType__/__collection__/__name__-test.js +2 -14
- package/build-metadata.json +3 -3
- package/dist/dependencies/@glimmer/manager.js +19 -98
- package/dist/dependencies/@glimmer/opcode-compiler.js +9 -146
- package/dist/dependencies/@glimmer/runtime.js +1 -55
- package/dist/dependencies/@glimmer/validator.js +19 -51
- package/dist/ember-template-compiler.js +377 -695
- package/dist/ember-template-compiler.map +1 -1
- package/dist/ember-testing.js +1 -1
- package/dist/ember-testing.map +1 -1
- package/dist/ember.debug.js +3090 -6029
- package/dist/ember.debug.map +1 -1
- package/dist/header/license.js +1 -1
- package/dist/packages/@ember/-internals/container/index.js +1 -1
- package/dist/packages/@ember/-internals/environment/index.js +0 -15
- package/dist/packages/@ember/-internals/glimmer/index.js +4816 -6761
- package/dist/packages/@ember/-internals/metal/index.js +4 -14
- package/dist/packages/@ember/-internals/routing/lib/services/routing.js +1 -1
- package/dist/packages/@ember/-internals/routing/lib/system/route.js +1 -41
- package/dist/packages/@ember/-internals/routing/lib/system/router.js +13 -47
- package/dist/packages/@ember/-internals/runtime/lib/mixins/target_action_support.js +3 -43
- package/dist/packages/@ember/-internals/utils/index.js +0 -3
- package/dist/packages/@ember/-internals/views/index.js +0 -1
- package/dist/packages/@ember/-internals/views/lib/mixins/view_support.js +4 -4
- package/dist/packages/@ember/application/lib/application.js +7 -8
- package/dist/packages/@ember/canary-features/index.js +0 -2
- package/dist/packages/@ember/component/index.js +1 -1
- package/dist/packages/@ember/deprecated-features/index.js +0 -1
- package/dist/packages/@ember/engine/index.js +1 -2
- package/dist/packages/@ember/routing/index.js +1 -1
- package/dist/packages/ember/index.js +9 -61
- package/dist/packages/ember/version.js +1 -1
- package/docs/data.json +317 -1111
- package/lib/index.js +11 -48
- package/package.json +16 -17
- package/dist/packages/@ember/-internals/views/lib/mixins/text_support.js +0 -345
- package/dist/packages/@ember/component/checkbox.js +0 -17
- package/dist/packages/@ember/component/text-area.js +0 -17
- package/dist/packages/@ember/component/text-field.js +0 -17
- package/dist/packages/@ember/routing/link-component.js +0 -17
- package/dist/packages/jquery/index.js +0 -2
package/docs/data.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"name": "The Ember API",
|
|
4
4
|
"description": "The Ember API: a framework for building ambitious web applications",
|
|
5
5
|
"url": "https://emberjs.com/",
|
|
6
|
-
"version": "4.0.0-beta.
|
|
6
|
+
"version": "4.0.0-beta.9"
|
|
7
7
|
},
|
|
8
8
|
"files": {
|
|
9
9
|
"node_modules/rsvp/lib/rsvp/promise/all.js": {
|
|
@@ -220,27 +220,6 @@
|
|
|
220
220
|
"fors": {},
|
|
221
221
|
"namespaces": {}
|
|
222
222
|
},
|
|
223
|
-
"packages/@ember/-internals/glimmer/lib/components/-link-to.ts": {
|
|
224
|
-
"name": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
225
|
-
"modules": {},
|
|
226
|
-
"classes": {
|
|
227
|
-
"LinkComponent": 1
|
|
228
|
-
},
|
|
229
|
-
"fors": {
|
|
230
|
-
"Ember.Templates.components": 1,
|
|
231
|
-
"Ember.Templates.helpers": 1
|
|
232
|
-
},
|
|
233
|
-
"namespaces": {}
|
|
234
|
-
},
|
|
235
|
-
"packages/@ember/-internals/glimmer/lib/components/-textarea.ts": {
|
|
236
|
-
"name": "packages/@ember/-internals/glimmer/lib/components/-textarea.ts",
|
|
237
|
-
"modules": {},
|
|
238
|
-
"classes": {
|
|
239
|
-
"TextArea": 1
|
|
240
|
-
},
|
|
241
|
-
"fors": {},
|
|
242
|
-
"namespaces": {}
|
|
243
|
-
},
|
|
244
223
|
"packages/@ember/-internals/glimmer/lib/components/abstract-input.ts": {
|
|
245
224
|
"name": "packages/@ember/-internals/glimmer/lib/components/abstract-input.ts",
|
|
246
225
|
"modules": {},
|
|
@@ -248,21 +227,13 @@
|
|
|
248
227
|
"fors": {},
|
|
249
228
|
"namespaces": {}
|
|
250
229
|
},
|
|
251
|
-
"packages/@ember/-internals/glimmer/lib/components/checkbox.ts": {
|
|
252
|
-
"name": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
253
|
-
"modules": {},
|
|
254
|
-
"classes": {
|
|
255
|
-
"Checkbox": 1
|
|
256
|
-
},
|
|
257
|
-
"fors": {},
|
|
258
|
-
"namespaces": {}
|
|
259
|
-
},
|
|
260
230
|
"packages/@ember/-internals/glimmer/lib/components/input.ts": {
|
|
261
231
|
"name": "packages/@ember/-internals/glimmer/lib/components/input.ts",
|
|
262
232
|
"modules": {},
|
|
263
233
|
"classes": {},
|
|
264
234
|
"fors": {
|
|
265
235
|
"Ember.Templates.helpers": 1,
|
|
236
|
+
"@ember/component": 1,
|
|
266
237
|
"Ember.Templates.components": 1
|
|
267
238
|
},
|
|
268
239
|
"namespaces": {}
|
|
@@ -274,13 +245,15 @@
|
|
|
274
245
|
"fors": {},
|
|
275
246
|
"namespaces": {}
|
|
276
247
|
},
|
|
277
|
-
"packages/@ember/-internals/glimmer/lib/components/
|
|
278
|
-
"name": "packages/@ember/-internals/glimmer/lib/components/
|
|
248
|
+
"packages/@ember/-internals/glimmer/lib/components/link-to.ts": {
|
|
249
|
+
"name": "packages/@ember/-internals/glimmer/lib/components/link-to.ts",
|
|
279
250
|
"modules": {},
|
|
280
|
-
"classes": {
|
|
281
|
-
|
|
251
|
+
"classes": {},
|
|
252
|
+
"fors": {
|
|
253
|
+
"Ember.Templates.components": 1,
|
|
254
|
+
"Ember.Templates.helpers": 1,
|
|
255
|
+
"@ember/routing": 1
|
|
282
256
|
},
|
|
283
|
-
"fors": {},
|
|
284
257
|
"namespaces": {}
|
|
285
258
|
},
|
|
286
259
|
"packages/@ember/-internals/glimmer/lib/components/textarea.ts": {
|
|
@@ -289,7 +262,8 @@
|
|
|
289
262
|
"classes": {},
|
|
290
263
|
"fors": {
|
|
291
264
|
"Ember.Templates.components": 1,
|
|
292
|
-
"Ember.Templates.helpers": 1
|
|
265
|
+
"Ember.Templates.helpers": 1,
|
|
266
|
+
"@ember/component": 1
|
|
293
267
|
},
|
|
294
268
|
"namespaces": {}
|
|
295
269
|
},
|
|
@@ -422,15 +396,6 @@
|
|
|
422
396
|
},
|
|
423
397
|
"namespaces": {}
|
|
424
398
|
},
|
|
425
|
-
"packages/@ember/-internals/glimmer/lib/helpers/query-param.ts": {
|
|
426
|
-
"name": "packages/@ember/-internals/glimmer/lib/helpers/query-param.ts",
|
|
427
|
-
"modules": {},
|
|
428
|
-
"classes": {},
|
|
429
|
-
"fors": {
|
|
430
|
-
"Ember.Templates.helpers": 1
|
|
431
|
-
},
|
|
432
|
-
"namespaces": {}
|
|
433
|
-
},
|
|
434
399
|
"packages/@ember/-internals/glimmer/lib/helpers/readonly.ts": {
|
|
435
400
|
"name": "packages/@ember/-internals/glimmer/lib/helpers/readonly.ts",
|
|
436
401
|
"modules": {},
|
|
@@ -1268,17 +1233,6 @@
|
|
|
1268
1233
|
"Ember": 1
|
|
1269
1234
|
}
|
|
1270
1235
|
},
|
|
1271
|
-
"packages/@ember/-internals/views/lib/mixins/text_support.js": {
|
|
1272
|
-
"name": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
1273
|
-
"modules": {},
|
|
1274
|
-
"classes": {
|
|
1275
|
-
"Ember.TextSupport": 1
|
|
1276
|
-
},
|
|
1277
|
-
"fors": {},
|
|
1278
|
-
"namespaces": {
|
|
1279
|
-
"Ember": 1
|
|
1280
|
-
}
|
|
1281
|
-
},
|
|
1282
1236
|
"packages/@ember/-internals/views/lib/mixins/view_state_support.js": {
|
|
1283
1237
|
"name": "packages/@ember/-internals/views/lib/mixins/view_state_support.js",
|
|
1284
1238
|
"modules": {},
|
|
@@ -1789,6 +1743,56 @@
|
|
|
1789
1743
|
"access": "public",
|
|
1790
1744
|
"tagname": ""
|
|
1791
1745
|
},
|
|
1746
|
+
"@ember/component": {
|
|
1747
|
+
"name": "@ember/component",
|
|
1748
|
+
"submodules": {},
|
|
1749
|
+
"elements": {},
|
|
1750
|
+
"classes": {
|
|
1751
|
+
"@ember/component": 1,
|
|
1752
|
+
"Component": 1,
|
|
1753
|
+
"Helper": 1,
|
|
1754
|
+
"@ember/component/helper": 1
|
|
1755
|
+
},
|
|
1756
|
+
"fors": {
|
|
1757
|
+
"Ember.Templates.helpers": 1,
|
|
1758
|
+
"@ember/component": 1,
|
|
1759
|
+
"Ember.Templates.components": 1,
|
|
1760
|
+
"@ember/component/helper": 1
|
|
1761
|
+
},
|
|
1762
|
+
"namespaces": {},
|
|
1763
|
+
"tag": "main",
|
|
1764
|
+
"file": "packages/@ember/-internals/glimmer/lib/helper.ts",
|
|
1765
|
+
"line": 34,
|
|
1766
|
+
"description": "[Glimmer](https://github.com/tildeio/glimmer) is a templating engine used by Ember.js that is compatible with a subset of the [Handlebars](http://handlebarsjs.com/) syntax.\n\n### Showing a property\n\nTemplates manage the flow of an application's UI, and display state (through\nthe DOM) to a user. For example, given a component with the property \"name\",\nthat component's template can use the name in several ways:\n\n```app/components/person-profile.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n name: 'Jill'\n});\n```\n\n```app/components/person-profile.hbs\n{{this.name}}\n<div>{{this.name}}</div>\n<span data-name={{this.name}}></span>\n```\n\nAny time the \"name\" property on the component changes, the DOM will be\nupdated.\n\nProperties can be chained as well:\n\n```handlebars\n{{@aUserModel.name}}\n<div>{{@listOfUsers.firstObject.name}}</div>\n```\n\n### Using Ember helpers\n\nWhen content is passed in mustaches `{{}}`, Ember will first try to find a helper\nor component with that name. For example, the `if` helper:\n\n```app/components/person-profile.hbs\n{{if this.name \"I have a name\" \"I have no name\"}}\n<span data-has-name={{if this.name true}}></span>\n```\n\nThe returned value is placed where the `{{}}` is called. The above style is\ncalled \"inline\". A second style of helper usage is called \"block\". For example:\n\n```handlebars\n{{#if this.name}}\n I have a name\n{{else}}\n I have no name\n{{/if}}\n```\n\nThe block form of helpers allows you to control how the UI is created based\non the values of properties.\nA third form of helper is called \"nested\". For example here the concat\nhelper will add \" Doe\" to a displayed name if the person has no last name:\n\n```handlebars\n<span data-name={{concat this.firstName (\n if this.lastName (concat \" \" this.lastName) \"Doe\"\n)}}></span>\n```\n\nEmber's built-in helpers are described under the [Ember.Templates.helpers](/ember/release/classes/Ember.Templates.helpers)\nnamespace. Documentation on creating custom helpers can be found under\n[helper](/ember/release/functions/@ember%2Fcomponent%2Fhelper/helper) (or\nunder [Helper](/ember/release/classes/Helper) if a helper requires access to\ndependency injection).\n\n### Invoking a Component\n\nEmber components represent state to the UI of an application. Further\nreading on components can be found under [Component](/ember/release/classes/Component).",
|
|
1767
|
+
"itemtype": "main"
|
|
1768
|
+
},
|
|
1769
|
+
"@ember/routing": {
|
|
1770
|
+
"name": "@ember/routing",
|
|
1771
|
+
"submodules": {},
|
|
1772
|
+
"elements": {},
|
|
1773
|
+
"classes": {
|
|
1774
|
+
"Ember.Templates.components": 1,
|
|
1775
|
+
"@ember/routing": 1,
|
|
1776
|
+
"Location": 1,
|
|
1777
|
+
"AutoLocation": 1,
|
|
1778
|
+
"HashLocation": 1,
|
|
1779
|
+
"HistoryLocation": 1,
|
|
1780
|
+
"NoneLocation": 1,
|
|
1781
|
+
"RouterService": 1,
|
|
1782
|
+
"Route": 1,
|
|
1783
|
+
"EmberRouter": 1,
|
|
1784
|
+
"Transition": 1
|
|
1785
|
+
},
|
|
1786
|
+
"fors": {
|
|
1787
|
+
"Ember.Templates.helpers": 1,
|
|
1788
|
+
"@ember/routing": 1,
|
|
1789
|
+
"Route": 1
|
|
1790
|
+
},
|
|
1791
|
+
"namespaces": {},
|
|
1792
|
+
"tag": "module",
|
|
1793
|
+
"file": "packages/@ember/-internals/routing/lib/system/transition.ts",
|
|
1794
|
+
"line": 1
|
|
1795
|
+
},
|
|
1792
1796
|
"ember": {
|
|
1793
1797
|
"name": "ember",
|
|
1794
1798
|
"submodules": {},
|
|
@@ -1815,7 +1819,6 @@
|
|
|
1815
1819
|
"Ember.Namespace": 1,
|
|
1816
1820
|
"Ember.ActionSupport": 1,
|
|
1817
1821
|
"Ember.ClassNamesSupport": 1,
|
|
1818
|
-
"Ember.TextSupport": 1,
|
|
1819
1822
|
"Ember.ViewMixin": 1,
|
|
1820
1823
|
"Ember.EventDispatcher": 1,
|
|
1821
1824
|
"Ember.CoreView": 1,
|
|
@@ -1823,7 +1826,6 @@
|
|
|
1823
1826
|
"Ember.Test": 1
|
|
1824
1827
|
},
|
|
1825
1828
|
"fors": {
|
|
1826
|
-
"Ember.Templates.components": 1,
|
|
1827
1829
|
"Ember.Templates.helpers": 1,
|
|
1828
1830
|
"Ember": 1,
|
|
1829
1831
|
"@ember/object": 1,
|
|
@@ -1840,56 +1842,6 @@
|
|
|
1840
1842
|
"access": "private",
|
|
1841
1843
|
"tagname": ""
|
|
1842
1844
|
},
|
|
1843
|
-
"@ember/routing": {
|
|
1844
|
-
"name": "@ember/routing",
|
|
1845
|
-
"submodules": {},
|
|
1846
|
-
"elements": {},
|
|
1847
|
-
"classes": {
|
|
1848
|
-
"Ember.Templates.components": 1,
|
|
1849
|
-
"LinkComponent": 1,
|
|
1850
|
-
"Location": 1,
|
|
1851
|
-
"AutoLocation": 1,
|
|
1852
|
-
"HashLocation": 1,
|
|
1853
|
-
"HistoryLocation": 1,
|
|
1854
|
-
"NoneLocation": 1,
|
|
1855
|
-
"RouterService": 1,
|
|
1856
|
-
"Route": 1,
|
|
1857
|
-
"EmberRouter": 1,
|
|
1858
|
-
"Transition": 1
|
|
1859
|
-
},
|
|
1860
|
-
"fors": {
|
|
1861
|
-
"Ember.Templates.helpers": 1,
|
|
1862
|
-
"Route": 1
|
|
1863
|
-
},
|
|
1864
|
-
"namespaces": {},
|
|
1865
|
-
"tag": "module",
|
|
1866
|
-
"file": "packages/@ember/-internals/routing/lib/system/transition.ts",
|
|
1867
|
-
"line": 1
|
|
1868
|
-
},
|
|
1869
|
-
"@ember/component": {
|
|
1870
|
-
"name": "@ember/component",
|
|
1871
|
-
"submodules": {},
|
|
1872
|
-
"elements": {},
|
|
1873
|
-
"classes": {
|
|
1874
|
-
"TextArea": 1,
|
|
1875
|
-
"Checkbox": 1,
|
|
1876
|
-
"TextField": 1,
|
|
1877
|
-
"Component": 1,
|
|
1878
|
-
"Helper": 1,
|
|
1879
|
-
"@ember/component/helper": 1
|
|
1880
|
-
},
|
|
1881
|
-
"fors": {
|
|
1882
|
-
"Ember.Templates.helpers": 1,
|
|
1883
|
-
"Ember.Templates.components": 1,
|
|
1884
|
-
"@ember/component/helper": 1
|
|
1885
|
-
},
|
|
1886
|
-
"namespaces": {},
|
|
1887
|
-
"tag": "main",
|
|
1888
|
-
"file": "packages/@ember/-internals/glimmer/lib/helper.ts",
|
|
1889
|
-
"line": 40,
|
|
1890
|
-
"description": "[Glimmer](https://github.com/tildeio/glimmer) is a templating engine used by Ember.js that is compatible with a subset of the [Handlebars](http://handlebarsjs.com/) syntax.\n\n### Showing a property\n\nTemplates manage the flow of an application's UI, and display state (through\nthe DOM) to a user. For example, given a component with the property \"name\",\nthat component's template can use the name in several ways:\n\n```app/components/person-profile.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n name: 'Jill'\n});\n```\n\n```app/components/person-profile.hbs\n{{this.name}}\n<div>{{this.name}}</div>\n<span data-name={{this.name}}></span>\n```\n\nAny time the \"name\" property on the component changes, the DOM will be\nupdated.\n\nProperties can be chained as well:\n\n```handlebars\n{{@aUserModel.name}}\n<div>{{@listOfUsers.firstObject.name}}</div>\n```\n\n### Using Ember helpers\n\nWhen content is passed in mustaches `{{}}`, Ember will first try to find a helper\nor component with that name. For example, the `if` helper:\n\n```app/components/person-profile.hbs\n{{if this.name \"I have a name\" \"I have no name\"}}\n<span data-has-name={{if this.name true}}></span>\n```\n\nThe returned value is placed where the `{{}}` is called. The above style is\ncalled \"inline\". A second style of helper usage is called \"block\". For example:\n\n```handlebars\n{{#if this.name}}\n I have a name\n{{else}}\n I have no name\n{{/if}}\n```\n\nThe block form of helpers allows you to control how the UI is created based\non the values of properties.\nA third form of helper is called \"nested\". For example here the concat\nhelper will add \" Doe\" to a displayed name if the person has no last name:\n\n```handlebars\n<span data-name={{concat this.firstName (\n if this.lastName (concat \" \" this.lastName) \"Doe\"\n)}}></span>\n```\n\nEmber's built-in helpers are described under the [Ember.Templates.helpers](/ember/release/classes/Ember.Templates.helpers)\nnamespace. Documentation on creating custom helpers can be found under\n[helper](/ember/release/functions/@ember%2Fcomponent%2Fhelper/helper) (or\nunder [Helper](/ember/release/classes/Helper) if a helper requires access to\ndependency injection).\n\n### Invoking a Component\n\nEmber components represent state to the UI of an application. Further\nreading on components can be found under [Component](/ember/release/classes/Component).",
|
|
1891
|
-
"itemtype": "main"
|
|
1892
|
-
},
|
|
1893
1845
|
"@ember/template": {
|
|
1894
1846
|
"name": "@ember/template",
|
|
1895
1847
|
"submodules": {},
|
|
@@ -2077,7 +2029,7 @@
|
|
|
2077
2029
|
"namespaces": {},
|
|
2078
2030
|
"tag": "module",
|
|
2079
2031
|
"file": "packages/@ember/canary-features/index.ts",
|
|
2080
|
-
"line":
|
|
2032
|
+
"line": 25,
|
|
2081
2033
|
"description": "Set `EmberENV.FEATURES` in your application's `config/environment.js` file\nto enable canary features in your application.\n\nSee the [feature flag guide](https://guides.emberjs.com/release/configuring-ember/feature-flags/)\nfor more details.",
|
|
2082
2034
|
"access": "public",
|
|
2083
2035
|
"tagname": ""
|
|
@@ -2420,17 +2372,6 @@
|
|
|
2420
2372
|
"access": "public",
|
|
2421
2373
|
"tagname": ""
|
|
2422
2374
|
},
|
|
2423
|
-
"Ember.Templates.components": {
|
|
2424
|
-
"name": "Ember.Templates.components",
|
|
2425
|
-
"shortname": "Ember.Templates.components",
|
|
2426
|
-
"classitems": [],
|
|
2427
|
-
"plugins": [],
|
|
2428
|
-
"extensions": [],
|
|
2429
|
-
"plugin_for": [],
|
|
2430
|
-
"extension_for": [],
|
|
2431
|
-
"module": "@ember/routing",
|
|
2432
|
-
"namespace": ""
|
|
2433
|
-
},
|
|
2434
2375
|
"Ember.Templates.helpers": {
|
|
2435
2376
|
"name": "Ember.Templates.helpers",
|
|
2436
2377
|
"shortname": "Ember.Templates.helpers",
|
|
@@ -2446,85 +2387,38 @@
|
|
|
2446
2387
|
"access": "public",
|
|
2447
2388
|
"tagname": ""
|
|
2448
2389
|
},
|
|
2449
|
-
"
|
|
2450
|
-
"name": "
|
|
2451
|
-
"shortname": "
|
|
2452
|
-
"classitems": [],
|
|
2453
|
-
"plugins": [],
|
|
2454
|
-
"extensions": [],
|
|
2455
|
-
"plugin_for": [],
|
|
2456
|
-
"extension_for": [],
|
|
2457
|
-
"module": "@ember/routing",
|
|
2458
|
-
"namespace": "",
|
|
2459
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
2460
|
-
"line": 263,
|
|
2461
|
-
"description": "`LinkComponent` is the internal component invoked with `<LinkTo>` or `{{link-to}}`.",
|
|
2462
|
-
"extends": "Component",
|
|
2463
|
-
"see": [
|
|
2464
|
-
"{Ember.Templates.components.LinkTo}"
|
|
2465
|
-
],
|
|
2466
|
-
"access": "public",
|
|
2467
|
-
"tagname": ""
|
|
2468
|
-
},
|
|
2469
|
-
"TextArea": {
|
|
2470
|
-
"name": "TextArea",
|
|
2471
|
-
"shortname": "TextArea",
|
|
2390
|
+
"@ember/component": {
|
|
2391
|
+
"name": "@ember/component",
|
|
2392
|
+
"shortname": "@ember/component",
|
|
2472
2393
|
"classitems": [],
|
|
2473
2394
|
"plugins": [],
|
|
2474
2395
|
"extensions": [],
|
|
2475
2396
|
"plugin_for": [],
|
|
2476
2397
|
"extension_for": [],
|
|
2477
2398
|
"module": "@ember/component",
|
|
2478
|
-
"namespace": ""
|
|
2479
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-textarea.ts",
|
|
2480
|
-
"line": 11,
|
|
2481
|
-
"description": "The internal representation used for `Textarea` invocations.",
|
|
2482
|
-
"extends": "Component",
|
|
2483
|
-
"see": [
|
|
2484
|
-
"{Ember.Templates.components.Textarea}"
|
|
2485
|
-
],
|
|
2486
|
-
"uses": [
|
|
2487
|
-
"Ember.TextSupport"
|
|
2488
|
-
],
|
|
2489
|
-
"access": "public",
|
|
2490
|
-
"tagname": ""
|
|
2399
|
+
"namespace": ""
|
|
2491
2400
|
},
|
|
2492
|
-
"
|
|
2493
|
-
"name": "
|
|
2494
|
-
"shortname": "
|
|
2401
|
+
"Ember.Templates.components": {
|
|
2402
|
+
"name": "Ember.Templates.components",
|
|
2403
|
+
"shortname": "Ember.Templates.components",
|
|
2495
2404
|
"classitems": [],
|
|
2496
2405
|
"plugins": [],
|
|
2497
2406
|
"extensions": [],
|
|
2498
2407
|
"plugin_for": [],
|
|
2499
2408
|
"extension_for": [],
|
|
2500
|
-
"module": "@ember/
|
|
2501
|
-
"namespace": ""
|
|
2502
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
2503
|
-
"line": 13,
|
|
2504
|
-
"description": "The internal class used to create text inputs when the `{{input}}`\nhelper is used with `type` of `checkbox`.\n\nSee [Ember.Templates.helpers.input](/ember/release/classes/Ember.Templates.helpers/methods/input?anchor=input) for usage details.\n\n## Direct manipulation of `checked`\n\nThe `checked` attribute of an `Checkbox` object should always be set\nthrough the Ember object or by interacting with its rendered element\nrepresentation via the mouse, keyboard, or touch. Updating the value of the\ncheckbox via jQuery will result in the checked value of the object and its\nelement losing synchronization.\n\n## Layout and LayoutName properties\n\nBecause HTML `input` elements are self closing `layout` and `layoutName`\nproperties will not be applied.",
|
|
2505
|
-
"extends": "Component",
|
|
2506
|
-
"access": "public",
|
|
2507
|
-
"tagname": ""
|
|
2409
|
+
"module": "@ember/routing",
|
|
2410
|
+
"namespace": ""
|
|
2508
2411
|
},
|
|
2509
|
-
"
|
|
2510
|
-
"name": "
|
|
2511
|
-
"shortname": "
|
|
2412
|
+
"@ember/routing": {
|
|
2413
|
+
"name": "@ember/routing",
|
|
2414
|
+
"shortname": "@ember/routing",
|
|
2512
2415
|
"classitems": [],
|
|
2513
2416
|
"plugins": [],
|
|
2514
2417
|
"extensions": [],
|
|
2515
2418
|
"plugin_for": [],
|
|
2516
2419
|
"extension_for": [],
|
|
2517
|
-
"module": "@ember/
|
|
2518
|
-
"namespace": ""
|
|
2519
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/text-field.ts",
|
|
2520
|
-
"line": 36,
|
|
2521
|
-
"description": "The internal class used to create text inputs when the `Input` component is used with `type` of `text`.\n\nSee [Ember.Templates.components.Input](/ember/release/classes/Ember.Templates.components/methods/Input?anchor=Input) for usage details.\n\n## Layout and LayoutName properties\n\nBecause HTML `input` elements are self closing `layout` and `layoutName`\nproperties will not be applied.",
|
|
2522
|
-
"extends": "Component",
|
|
2523
|
-
"uses": [
|
|
2524
|
-
"Ember.TextSupport"
|
|
2525
|
-
],
|
|
2526
|
-
"access": "public",
|
|
2527
|
-
"tagname": ""
|
|
2420
|
+
"module": "@ember/routing",
|
|
2421
|
+
"namespace": ""
|
|
2528
2422
|
},
|
|
2529
2423
|
"ComponentStateBucket": {
|
|
2530
2424
|
"name": "ComponentStateBucket",
|
|
@@ -2564,7 +2458,7 @@
|
|
|
2564
2458
|
"module": "@ember/component",
|
|
2565
2459
|
"namespace": "",
|
|
2566
2460
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
2567
|
-
"line":
|
|
2461
|
+
"line": 37,
|
|
2568
2462
|
"description": "A component is a reusable UI element that consists of a `.hbs` template and an\noptional JavaScript class that defines its behavior. For example, someone\nmight make a `button` in the template and handle the click behavior in the\nJavaScript file that shares the same name as the template.\n\nComponents are broken down into two categories:\n\n- Components _without_ JavaScript, that are based only on a template. These\n are called Template-only or TO components.\n- Components _with_ JavaScript, which consist of a template and a backing\n class.\n\nEmber ships with two types of JavaScript classes for components:\n\n1. Glimmer components, imported from `@glimmer/component`, which are the\n default component's for Ember Octane (3.15) and more recent editions.\n2. Classic components, imported from `@ember/component`, which were the\n default for older editions of Ember (pre 3.15).\n\nBelow is the documentation for Classic components. If you are looking for the\nAPI documentation for Template-only or Glimmer components, it is\n[available here](/ember/release/modules/@glimmer%2Fcomponent).\n\n## Defining a Classic Component\n\nIf you want to customize the component in order to handle events, transform\narguments or maintain internal state, you implement a subclass of `Component`.\n\nOne example is to add computed properties to your component:\n\n```app/components/person-profile.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n displayName: computed('person.title', 'person.firstName', 'person.lastName', function() {\n let { title, firstName, lastName } = this.person;\n\n if (title) {\n return `${title} ${lastName}`;\n } else {\n return `${firstName} ${lastName}`;\n }\n })\n});\n```\n\nAnd then use it in the component's template:\n\n```app/templates/components/person-profile.hbs\n<h1>{{this.displayName}}</h1>\n{{yield}}\n```\n\n## Customizing a Classic Component's HTML Element in JavaScript\n\n### HTML Tag\n\nThe default HTML tag name used for a component's HTML representation is `div`.\nThis can be customized by setting the `tagName` property.\n\nConsider the following component class:\n\n```app/components/emphasized-paragraph.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n tagName: 'em'\n});\n```\n\nWhen invoked, this component would produce output that looks something like\nthis:\n\n```html\n<em id=\"ember1\" class=\"ember-view\"></em>\n```\n\n### HTML `class` Attribute\n\nThe HTML `class` attribute of a component's tag can be set by providing a\n`classNames` property that is set to an array of strings:\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n classNames: ['my-class', 'my-other-class']\n});\n```\n\nInvoking this component will produce output that looks like this:\n\n```html\n<div id=\"ember1\" class=\"ember-view my-class my-other-class\"></div>\n```\n\n`class` attribute values can also be set by providing a `classNameBindings`\nproperty set to an array of properties names for the component. The return\nvalue of these properties will be added as part of the value for the\ncomponents's `class` attribute. These properties can be computed properties:\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\nimport { computed } from '@ember/object';\n\nexport default Component.extend({\n classNames: ['my-class', 'my-other-class'],\n classNameBindings: ['propertyA', 'propertyB'],\n\n propertyA: 'from-a',\n propertyB: computed(function() {\n if (someLogic) { return 'from-b'; }\n })\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<div id=\"ember1\" class=\"ember-view my-class my-other-class from-a from-b\"></div>\n```\n\nNote that `classNames` and `classNameBindings` is in addition to the `class`\nattribute passed with the angle bracket invocation syntax. Therefore, if this\ncomponent was invoked like so:\n\n```handlebars\n<MyWidget class=\"from-invocation\" />\n```\n\nThe resulting HTML will look similar to this:\n\n```html\n<div id=\"ember1\" class=\"from-invocation ember-view my-class my-other-class from-a from-b\"></div>\n```\n\nIf the value of a class name binding returns a boolean the property name\nitself will be used as the class name if the property is true. The class name\nwill not be added if the value is `false` or `undefined`.\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n classNameBindings: ['hovered'],\n\n hovered: true\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<div id=\"ember1\" class=\"ember-view hovered\"></div>\n```\n\n### Custom Class Names for Boolean Values\n\nWhen using boolean class name bindings you can supply a string value other\nthan the property name for use as the `class` HTML attribute by appending the\npreferred value after a \":\" character when defining the binding:\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n classNameBindings: ['awesome:so-very-cool'],\n\n awesome: true\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<div id=\"ember1\" class=\"ember-view so-very-cool\"></div>\n```\n\nBoolean value class name bindings whose property names are in a\ncamelCase-style format will be converted to a dasherized format:\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n classNameBindings: ['isUrgent'],\n\n isUrgent: true\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<div id=\"ember1\" class=\"ember-view is-urgent\"></div>\n```\n\nClass name bindings can also refer to object values that are found by\ntraversing a path relative to the component itself:\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\nimport EmberObject from '@ember/object';\n\nexport default Component.extend({\n classNameBindings: ['messages.empty'],\n\n messages: EmberObject.create({\n empty: true\n })\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<div id=\"ember1\" class=\"ember-view empty\"></div>\n```\n\nIf you want to add a class name for a property which evaluates to true and\nand a different class name if it evaluates to false, you can pass a binding\nlike this:\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n classNameBindings: ['isEnabled:enabled:disabled'],\n isEnabled: true\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<div id=\"ember1\" class=\"ember-view enabled\"></div>\n```\n\nWhen isEnabled is `false`, the resulting HTML representation looks like this:\n\n```html\n<div id=\"ember1\" class=\"ember-view disabled\"></div>\n```\n\nThis syntax offers the convenience to add a class if a property is `false`:\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\n\n// Applies no class when isEnabled is true and class 'disabled' when isEnabled is false\nexport default Component.extend({\n classNameBindings: ['isEnabled::disabled'],\n isEnabled: true\n});\n```\n\nInvoking this component when the `isEnabled` property is true will produce\nHTML that looks like:\n\n```html\n<div id=\"ember1\" class=\"ember-view\"></div>\n```\n\nInvoking it when the `isEnabled` property on the component is `false` will\nproduce HTML that looks like:\n\n```html\n<div id=\"ember1\" class=\"ember-view disabled\"></div>\n```\n\nUpdates to the value of a class name binding will result in automatic update\nof the HTML `class` attribute in the component's rendered HTML\nrepresentation. If the value becomes `false` or `undefined` the class name\nwill be removed.\n\nBoth `classNames` and `classNameBindings` are concatenated properties. See\n[EmberObject](/ember/release/classes/EmberObject) documentation for more\ninformation about concatenated properties.\n\n### Other HTML Attributes\n\nThe HTML attribute section of a component's tag can be set by providing an\n`attributeBindings` property set to an array of property names on the component.\nThe return value of these properties will be used as the value of the component's\nHTML associated attribute:\n\n```app/components/my-anchor.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n tagName: 'a',\n attributeBindings: ['href'],\n\n href: 'http://google.com'\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<a id=\"ember1\" class=\"ember-view\" href=\"http://google.com\"></a>\n```\n\nOne property can be mapped on to another by placing a \":\" between\nthe source property and the destination property:\n\n```app/components/my-anchor.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n tagName: 'a',\n attributeBindings: ['url:href'],\n\n url: 'http://google.com'\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<a id=\"ember1\" class=\"ember-view\" href=\"http://google.com\"></a>\n```\n\nHTML attributes passed with angle bracket invocations will take precedence\nover those specified in `attributeBindings`. Therefore, if this component was\ninvoked like so:\n\n```handlebars\n<MyAnchor href=\"http://bing.com\" @url=\"http://google.com\" />\n```\n\nThe resulting HTML will looks like this:\n\n```html\n<a id=\"ember1\" class=\"ember-view\" href=\"http://bing.com\"></a>\n```\n\nNote that the `href` attribute is ultimately set to `http://bing.com`,\ndespite it having attribute binidng to the `url` property, which was\nset to `http://google.com`.\n\nNamespaced attributes (e.g. `xlink:href`) are supported, but have to be\nmapped, since `:` is not a valid character for properties in Javascript:\n\n```app/components/my-use.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n tagName: 'use',\n attributeBindings: ['xlinkHref:xlink:href'],\n\n xlinkHref: '#triangle'\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<use xlink:href=\"#triangle\"></use>\n```\n\nIf the value of a property monitored by `attributeBindings` is a boolean, the\nattribute will be present or absent depending on the value:\n\n```app/components/my-text-input.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n tagName: 'input',\n attributeBindings: ['disabled'],\n\n disabled: false\n});\n```\n\nInvoking this component will produce HTML that looks like:\n\n```html\n<input id=\"ember1\" class=\"ember-view\" />\n```\n\n`attributeBindings` can refer to computed properties:\n\n```app/components/my-text-input.js\nimport Component from '@ember/component';\nimport { computed } from '@ember/object';\n\nexport default Component.extend({\n tagName: 'input',\n attributeBindings: ['disabled'],\n\n disabled: computed(function() {\n if (someLogic) {\n return true;\n } else {\n return false;\n }\n })\n});\n```\n\nTo prevent setting an attribute altogether, use `null` or `undefined` as the\nvalue of the property used in `attributeBindings`:\n\n```app/components/my-text-input.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n tagName: 'form',\n attributeBindings: ['novalidate'],\n novalidate: null\n});\n```\n\nUpdates to the property of an attribute binding will result in automatic\nupdate of the HTML attribute in the component's HTML output.\n\n`attributeBindings` is a concatenated property. See\n[EmberObject](/ember/release/classes/EmberObject) documentation for more\ninformation about concatenated properties.\n\n## Layouts\n\nThe `layout` property can be used to dynamically specify a template associated\nwith a component class, instead of relying on Ember to link together a\ncomponent class and a template based on file names.\n\nIn general, applications should not use this feature, but it's commonly used\nin addons for historical reasons.\n\nThe `layout` property should be set to the default export of a template\nmodule, which is the name of a template file without the `.hbs` extension.\n\n```app/templates/components/person-profile.hbs\n<h1>Person's Title</h1>\n<div class='details'>{{yield}}</div>\n```\n\n```app/components/person-profile.js\n import Component from '@ember/component';\n import layout from '../templates/components/person-profile';\n\n export default Component.extend({\n layout\n });\n```\n\nIf you invoke the component:\n\n```handlebars\n<PersonProfile>\n <h2>Chief Basket Weaver</h2>\n <h3>Fisherman Industries</h3>\n</PersonProfile>\n```\n\nor\n\n```handlebars\n{{#person-profile}}\n <h2>Chief Basket Weaver</h2>\n <h3>Fisherman Industries</h3>\n{{/person-profile}}\n```\n\nIt will result in the following HTML output:\n\n```html\n<h1>Person's Title</h1>\n <div class=\"details\">\n <h2>Chief Basket Weaver</h2>\n <h3>Fisherman Industries</h3>\n</div>\n```\n\n## Handling Browser Events\n\nComponents can respond to user-initiated events in one of three ways: passing\nactions with angle bracket invocation, adding event handler methods to the\ncomponent's class, or adding actions to the component's template.\n\n### Passing Actions With Angle Bracket Invocation\n\nFor one-off events specific to particular instance of a component, it is possible\nto pass actions to the component's element using angle bracket invocation syntax.\n\n```handlebars\n<MyWidget {{action 'firstWidgetClicked'}} />\n\n<MyWidget {{action 'secondWidgetClicked'}} />\n```\n\nIn this case, when the first component is clicked on, Ember will invoke the\n`firstWidgetClicked` action. When the second component is clicked on, Ember\nwill invoke the `secondWidgetClicked` action instead.\n\nBesides `{{action}}`, it is also possible to pass any arbitrary element modifiers\nusing the angle bracket invocation syntax.\n\n### Event Handler Methods\n\nComponents can also respond to user-initiated events by implementing a method\nthat matches the event name. This approach is appropriate when the same event\nshould be handled by all instances of the same component.\n\nAn event object will be passed as the argument to the event handler method.\n\n```app/components/my-widget.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n click(event) {\n // `event.target` is either the component's element or one of its children\n let tag = event.target.tagName.toLowerCase();\n console.log('clicked on a `<${tag}>` HTML element!');\n }\n});\n```\n\nIn this example, whenever the user clicked anywhere inside the component, it\nwill log a message to the console.\n\nIt is possible to handle event types other than `click` by implementing the\nfollowing event handler methods. In addition, custom events can be registered\nby using `Application.customEvents`.\n\nTouch events:\n\n* `touchStart`\n* `touchMove`\n* `touchEnd`\n* `touchCancel`\n\nKeyboard events:\n\n* `keyDown`\n* `keyUp`\n* `keyPress`\n\nMouse events:\n\n* `mouseDown`\n* `mouseUp`\n* `contextMenu`\n* `click`\n* `doubleClick`\n* `focusIn`\n* `focusOut`\n\nForm events:\n\n* `submit`\n* `change`\n* `focusIn`\n* `focusOut`\n* `input`\n\nDrag and drop events:\n\n* `dragStart`\n* `drag`\n* `dragEnter`\n* `dragLeave`\n* `dragOver`\n* `dragEnd`\n* `drop`\n\n### `{{action}}` Helper\n\nInstead of handling all events of a particular type anywhere inside the\ncomponent's element, you may instead want to limit it to a particular\nelement in the component's template. In this case, it would be more\nconvenient to implement an action instead.\n\nFor example, you could implement the action `hello` for the `person-profile`\ncomponent:\n\n```app/components/person-profile.js\nimport Component from '@ember/component';\n\nexport default Component.extend({\n actions: {\n hello(name) {\n console.log(\"Hello\", name);\n }\n }\n});\n```\n\nAnd then use it in the component's template:\n\n```app/templates/components/person-profile.hbs\n<h1>{{@person.name}}</h1>\n\n<button {{action 'hello' @person.name}}>\n Say Hello to {{@person.name}}\n</button>\n```\n\nWhen the user clicks the button, Ember will invoke the `hello` action,\npassing in the current value of `@person.name` as an argument.\n\nSee [Ember.Templates.helpers.action](/ember/release/classes/Ember.Templates.helpers/methods/action?anchor=action).",
|
|
2569
2463
|
"extends": "Ember.CoreView",
|
|
2570
2464
|
"uses": [
|
|
@@ -2599,7 +2493,7 @@
|
|
|
2599
2493
|
"module": "@ember/component",
|
|
2600
2494
|
"namespace": "",
|
|
2601
2495
|
"file": "packages/@ember/-internals/glimmer/lib/helper.ts",
|
|
2602
|
-
"line":
|
|
2496
|
+
"line": 34,
|
|
2603
2497
|
"description": "Ember Helpers are functions that can compute values, and are used in templates.\nFor example, this code calls a helper named `format-currency`:\n\n```app/templates/application.hbs\n<Cost @cents={{230}} />\n```\n\n```app/components/cost.hbs\n<div>{{format-currency @cents currency=\"$\"}}</div>\n```\n\nAdditionally a helper can be called as a nested helper.\nIn this example, we show the formatted currency value if the `showMoney`\nnamed argument is truthy.\n\n```handlebars\n{{if @showMoney (format-currency @cents currency=\"$\")}}\n```\n\nHelpers defined using a class must provide a `compute` function. For example:\n\n```app/helpers/format-currency.js\nimport Helper from '@ember/component/helper';\n\nexport default class extends Helper {\n compute([cents], { currency }) {\n return `${currency}${cents * 0.01}`;\n }\n}\n```\n\nEach time the input to a helper changes, the `compute` function will be\ncalled again.\n\nAs instances, these helpers also have access to the container and will accept\ninjected dependencies.\n\nAdditionally, class helpers can call `recompute` to force a new computation.",
|
|
2604
2498
|
"extends": "CoreObject",
|
|
2605
2499
|
"access": "public",
|
|
@@ -2794,7 +2688,7 @@
|
|
|
2794
2688
|
"module": "@ember/object",
|
|
2795
2689
|
"namespace": "",
|
|
2796
2690
|
"file": "packages/@ember/-internals/metal/lib/mixin.ts",
|
|
2797
|
-
"line":
|
|
2691
|
+
"line": 444,
|
|
2798
2692
|
"description": "The `Mixin` class allows you to create mixins, whose properties can be\nadded to other classes. For instance,\n\n```javascript\nimport Mixin from '@ember/object/mixin';\n\nconst EditableMixin = Mixin.create({\n edit() {\n console.log('starting to edit');\n this.set('isEditing', true);\n },\n isEditing: false\n});\n```\n\n```javascript\nimport EmberObject from '@ember/object';\nimport EditableMixin from '../mixins/editable';\n\n// Mix mixins into classes by passing them as the first arguments to\n// `.extend.`\nconst Comment = EmberObject.extend(EditableMixin, {\n post: null\n});\n\nlet comment = Comment.create({\n post: somePost\n});\n\ncomment.edit(); // outputs 'starting to edit'\n```\n\nNote that Mixins are created with `Mixin.create`, not\n`Mixin.extend`.\n\nNote that mixins extend a constructor's prototype so arrays and object literals\ndefined as properties will be shared amongst objects that implement the mixin.\nIf you want to define a property in a mixin that is not shared, you can define\nit either as a computed property or have it be created on initialization of the object.\n\n```javascript\n// filters array will be shared amongst any object implementing mixin\nimport Mixin from '@ember/object/mixin';\nimport { A } from '@ember/array';\n\nconst FilterableMixin = Mixin.create({\n filters: A()\n});\n```\n\n```javascript\nimport Mixin from '@ember/object/mixin';\nimport { A } from '@ember/array';\nimport { computed } from '@ember/object';\n\n// filters will be a separate array for every object implementing the mixin\nconst FilterableMixin = Mixin.create({\n filters: computed(function() {\n return A();\n })\n});\n```\n\n```javascript\nimport Mixin from '@ember/object/mixin';\nimport { A } from '@ember/array';\n\n// filters will be created as a separate array during the object's initialization\nconst Filterable = Mixin.create({\n filters: null,\n\n init() {\n this._super(...arguments);\n this.set(\"filters\", A());\n }\n});\n```",
|
|
2799
2693
|
"access": "public",
|
|
2800
2694
|
"tagname": ""
|
|
@@ -2965,7 +2859,7 @@
|
|
|
2965
2859
|
"namespace": "",
|
|
2966
2860
|
"file": "packages/@ember/-internals/routing/lib/services/routing.ts",
|
|
2967
2861
|
"line": 14,
|
|
2968
|
-
"description": "The Routing service is used by
|
|
2862
|
+
"description": "The Routing service is used by LinkTo, and provides facilities for\nthe component/view layer to interact with the router.\n\nThis is a private service for internal usage only. For public usage,\nrefer to the `Router` service.",
|
|
2969
2863
|
"access": "private",
|
|
2970
2864
|
"tagname": ""
|
|
2971
2865
|
},
|
|
@@ -3028,7 +2922,7 @@
|
|
|
3028
2922
|
"module": "@ember/routing",
|
|
3029
2923
|
"namespace": "",
|
|
3030
2924
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
3031
|
-
"line":
|
|
2925
|
+
"line": 85,
|
|
3032
2926
|
"description": "The `Route` class is used to define individual routes. Refer to\nthe [routing guide](https://guides.emberjs.com/release/routing/) for documentation.",
|
|
3033
2927
|
"extends": "EmberObject",
|
|
3034
2928
|
"uses": [
|
|
@@ -3050,7 +2944,7 @@
|
|
|
3050
2944
|
"module": "@ember/routing",
|
|
3051
2945
|
"namespace": "",
|
|
3052
2946
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
3053
|
-
"line":
|
|
2947
|
+
"line": 126,
|
|
3054
2948
|
"description": "The `EmberRouter` class manages the application state and URLs. Refer to\nthe [routing guide](https://guides.emberjs.com/release/routing/) for documentation.",
|
|
3055
2949
|
"extends": "EmberObject",
|
|
3056
2950
|
"uses": [
|
|
@@ -3343,13 +3237,12 @@
|
|
|
3343
3237
|
"extensions": [],
|
|
3344
3238
|
"plugin_for": [],
|
|
3345
3239
|
"extension_for": [
|
|
3346
|
-
"Component"
|
|
3347
|
-
"Ember.TextSupport"
|
|
3240
|
+
"Component"
|
|
3348
3241
|
],
|
|
3349
3242
|
"module": "ember",
|
|
3350
3243
|
"namespace": "Ember",
|
|
3351
3244
|
"file": "packages/@ember/-internals/runtime/lib/mixins/target_action_support.js",
|
|
3352
|
-
"line":
|
|
3245
|
+
"line": 10,
|
|
3353
3246
|
"description": "`Ember.TargetActionSupport` is a mixin that can be included in a class\nto add a `triggerAction` method with semantics similar to the Handlebars\n`{{action}}` helper. In normal Ember usage, the `{{action}}` helper is\nusually the best choice. This mixin is most often useful when you are\ndoing more complex event handling in Components.",
|
|
3354
3247
|
"extends": "Mixin",
|
|
3355
3248
|
"access": "private",
|
|
@@ -3493,29 +3386,6 @@
|
|
|
3493
3386
|
"access": "private",
|
|
3494
3387
|
"tagname": ""
|
|
3495
3388
|
},
|
|
3496
|
-
"Ember.TextSupport": {
|
|
3497
|
-
"name": "Ember.TextSupport",
|
|
3498
|
-
"shortname": "Ember.TextSupport",
|
|
3499
|
-
"classitems": [],
|
|
3500
|
-
"plugins": [],
|
|
3501
|
-
"extensions": [],
|
|
3502
|
-
"plugin_for": [],
|
|
3503
|
-
"extension_for": [
|
|
3504
|
-
"TextArea",
|
|
3505
|
-
"TextField"
|
|
3506
|
-
],
|
|
3507
|
-
"module": "ember",
|
|
3508
|
-
"namespace": "Ember",
|
|
3509
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
3510
|
-
"line": 20,
|
|
3511
|
-
"description": "`TextSupport` is a shared mixin used by both `TextField` and\n`TextArea`. `TextSupport` adds a number of methods that allow you to\nspecify a controller action to invoke when a certain event is fired on your\ntext field or textarea. The specified controller action would get the current\nvalue of the field passed in as the only argument unless the value of\nthe field is empty. In that case, the instance of the field itself is passed\nin as the only argument.\n\nLet's use the pressing of the escape key as an example. If you wanted to\ninvoke a controller action when a user presses the escape key while on your\nfield, you would use the `escape-press` attribute on your field like so:\n\n```handlebars\n {{! application.hbs}}\n\n {{input escape-press='alertUser'}}\n```\n\n```javascript\n import Application from '@ember/application';\n import Controller from '@ember/controller';\n App = Application.create();\n\n App.ApplicationController = Controller.extend({\n actions: {\n alertUser: function ( currentValue ) {\n alert( 'escape pressed, current value: ' + currentValue );\n }\n }\n });\n```\n\nThe following chart is a visual representation of what takes place when the\nescape key is pressed in this scenario:\n\n```\nThe Template\n+---------------------------+\n| |\n| escape-press='alertUser' |\n| | TextSupport Mixin\n+----+----------------------+ +-------------------------------+\n | | cancel method |\n | escape button pressed | |\n +-------------------------------> | checks for the `escape-press` |\n | attribute and pulls out the |\n +-------------------------------+ | `alertUser` value |\n | action name 'alertUser' +-------------------------------+\n | sent to controller\n v\nController\n+------------------------------------------ +\n| |\n| actions: { |\n| alertUser: function( currentValue ){ |\n| alert( 'the esc key was pressed!' ) |\n| } |\n| } |\n| |\n+-------------------------------------------+\n```\n\nHere are the events that we currently support along with the name of the\nattribute you would need to use on your field. To reiterate, you would use the\nattribute name like so:\n\n```handlebars\n {{input attribute-name='controllerAction'}}\n```\n\n```\n+--------------------+----------------+\n| | |\n| event | attribute name |\n+--------------------+----------------+\n| new line inserted | insert-newline |\n| | |\n| enter key pressed | enter |\n| | |\n| cancel key pressed | escape-press |\n| | |\n| focusin | focus-in |\n| | |\n| focusout | focus-out |\n| | |\n| keypress | key-press |\n| | |\n| keyup | key-up |\n| | |\n| keydown | key-down |\n+--------------------+----------------+\n```",
|
|
3512
|
-
"uses": [
|
|
3513
|
-
"Ember.TargetActionSupport"
|
|
3514
|
-
],
|
|
3515
|
-
"extends": "Mixin",
|
|
3516
|
-
"access": "private",
|
|
3517
|
-
"tagname": ""
|
|
3518
|
-
},
|
|
3519
3389
|
"Ember.ViewMixin": {
|
|
3520
3390
|
"name": "Ember.ViewMixin",
|
|
3521
3391
|
"shortname": "Ember.ViewMixin",
|
|
@@ -3585,7 +3455,7 @@
|
|
|
3585
3455
|
"namespace": "",
|
|
3586
3456
|
"file": "packages/@ember/application/lib/application.js",
|
|
3587
3457
|
"line": 30,
|
|
3588
|
-
"description": "An instance of `Application` is the starting point for every Ember\napplication. It instantiates, initializes and coordinates the\nobjects that make up your app.\n\nEach Ember app has one and only one `Application` object. Although\nEmber CLI creates this object implicitly, the `Application` class\nis defined in the `app/app.js`. You can define a `ready` method on the\n`Application` class, which will be run by Ember when the application is\ninitialized.\n\n```app/app.js\nconst App = Application.extend({\n ready() {\n // your code here\n }\n})\n```\n\nBecause `Application` ultimately inherits from `Ember.Namespace`, any classes\nyou create will have useful string representations when calling `toString()`.\nSee the `Ember.Namespace` documentation for more information.\n\nWhile you can think of your `Application` as a container that holds the\nother classes in your application, there are several other responsibilities\ngoing on under-the-hood that you may want to understand. It is also important\nto understand that an `Application` is different from an `ApplicationInstance`.\nRefer to the Guides to understand the difference between these.\n\n### Event Delegation\n\nEmber uses a technique called _event delegation_. This allows the framework\nto set up a global, shared event listener instead of requiring each view to\ndo it manually. For example, instead of each view registering its own\n`mousedown` listener on its associated element, Ember sets up a `mousedown`\nlistener on the `body`.\n\nIf a `mousedown` event occurs, Ember will look at the target of the event and\nstart walking up the DOM node tree, finding corresponding views and invoking\ntheir `mouseDown` method as it goes.\n\n`Application` has a number of default events that it listens for, as\nwell as a mapping from lowercase events to camel-cased view method names. For\nexample, the `keypress` event causes the `keyPress` method on the view to be\ncalled, the `dblclick` event causes `doubleClick` to be called, and so on.\n\nIf there is a bubbling browser event that Ember does not listen for by\ndefault, you can specify custom events and their corresponding view method\nnames by setting the application's `customEvents` property:\n\n```app/app.js\nimport Application from '@ember/application';\n\nlet App = Application.extend({\n customEvents: {\n // add support for the paste event\n paste: 'paste'\n }\n});\n```\n\nTo prevent Ember from setting up a listener for a default event,\nspecify the event name with a `null` value in the `customEvents`\nproperty:\n\n```app/app.js\nimport Application from '@ember/application';\n\nlet App = Application.extend({\n customEvents: {\n // prevent listeners for mouseenter/mouseleave events\n mouseenter: null,\n mouseleave: null\n }\n});\n```\n\nBy default, the application sets up these event listeners on the document\nbody. However, in cases where you are embedding an Ember application inside\nan existing page, you may want it to set up the listeners on an element\ninside the body.\n\nFor example, if only events inside a DOM element with the ID of `ember-app`\nshould be delegated, set your application's `rootElement` property:\n\n```app/app.js\nimport Application from '@ember/application';\n\nlet App = Application.extend({\n rootElement: '#ember-app'\n});\n```\n\nThe `rootElement` can be either a DOM element or a
|
|
3458
|
+
"description": "An instance of `Application` is the starting point for every Ember\napplication. It instantiates, initializes and coordinates the\nobjects that make up your app.\n\nEach Ember app has one and only one `Application` object. Although\nEmber CLI creates this object implicitly, the `Application` class\nis defined in the `app/app.js`. You can define a `ready` method on the\n`Application` class, which will be run by Ember when the application is\ninitialized.\n\n```app/app.js\nconst App = Application.extend({\n ready() {\n // your code here\n }\n})\n```\n\nBecause `Application` ultimately inherits from `Ember.Namespace`, any classes\nyou create will have useful string representations when calling `toString()`.\nSee the `Ember.Namespace` documentation for more information.\n\nWhile you can think of your `Application` as a container that holds the\nother classes in your application, there are several other responsibilities\ngoing on under-the-hood that you may want to understand. It is also important\nto understand that an `Application` is different from an `ApplicationInstance`.\nRefer to the Guides to understand the difference between these.\n\n### Event Delegation\n\nEmber uses a technique called _event delegation_. This allows the framework\nto set up a global, shared event listener instead of requiring each view to\ndo it manually. For example, instead of each view registering its own\n`mousedown` listener on its associated element, Ember sets up a `mousedown`\nlistener on the `body`.\n\nIf a `mousedown` event occurs, Ember will look at the target of the event and\nstart walking up the DOM node tree, finding corresponding views and invoking\ntheir `mouseDown` method as it goes.\n\n`Application` has a number of default events that it listens for, as\nwell as a mapping from lowercase events to camel-cased view method names. For\nexample, the `keypress` event causes the `keyPress` method on the view to be\ncalled, the `dblclick` event causes `doubleClick` to be called, and so on.\n\nIf there is a bubbling browser event that Ember does not listen for by\ndefault, you can specify custom events and their corresponding view method\nnames by setting the application's `customEvents` property:\n\n```app/app.js\nimport Application from '@ember/application';\n\nlet App = Application.extend({\n customEvents: {\n // add support for the paste event\n paste: 'paste'\n }\n});\n```\n\nTo prevent Ember from setting up a listener for a default event,\nspecify the event name with a `null` value in the `customEvents`\nproperty:\n\n```app/app.js\nimport Application from '@ember/application';\n\nlet App = Application.extend({\n customEvents: {\n // prevent listeners for mouseenter/mouseleave events\n mouseenter: null,\n mouseleave: null\n }\n});\n```\n\nBy default, the application sets up these event listeners on the document\nbody. However, in cases where you are embedding an Ember application inside\nan existing page, you may want it to set up the listeners on an element\ninside the body.\n\nFor example, if only events inside a DOM element with the ID of `ember-app`\nshould be delegated, set your application's `rootElement` property:\n\n```app/app.js\nimport Application from '@ember/application';\n\nlet App = Application.extend({\n rootElement: '#ember-app'\n});\n```\n\nThe `rootElement` can be either a DOM element or a CSS selector\nstring. Note that *views appended to the DOM outside the root element will\nnot receive events.* If you specify a custom root element, make sure you only\nappend views inside it!\n\nTo learn more about the events Ember components use, see\n\n[components/handling-events](https://guides.emberjs.com/release/components/handling-events/#toc_event-names).\n\n### Initializers\n\nTo add behavior to the Application's boot process, you can define initializers in\nthe `app/initializers` directory, or with `ember generate initializer` using Ember CLI.\nThese files should export a named `initialize` function which will receive the created `application`\nobject as its first argument.\n\n```javascript\nexport function initialize(application) {\n // application.inject('route', 'foo', 'service:foo');\n}\n```\n\nApplication initializers can be used for a variety of reasons including:\n\n- setting up external libraries\n- injecting dependencies\n- setting up event listeners in embedded apps\n- deferring the boot process using the `deferReadiness` and `advanceReadiness` APIs.\n\n### Routing\n\nIn addition to creating your application's router, `Application` is\nalso responsible for telling the router when to start routing. Transitions\nbetween routes can be logged with the `LOG_TRANSITIONS` flag, and more\ndetailed intra-transition logging can be logged with\nthe `LOG_TRANSITIONS_INTERNAL` flag:\n\n```javascript\nimport Application from '@ember/application';\n\nlet App = Application.create({\n LOG_TRANSITIONS: true, // basic logging of successful transitions\n LOG_TRANSITIONS_INTERNAL: true // detailed logging of all routing steps\n});\n```\n\nBy default, the router will begin trying to translate the current URL into\napplication state once the browser emits the `DOMContentReady` event. If you\nneed to defer routing, you can call the application's `deferReadiness()`\nmethod. Once routing can begin, call the `advanceReadiness()` method.\n\nIf there is any setup required before routing begins, you can implement a\n`ready()` method on your app that will be invoked immediately before routing\nbegins.",
|
|
3589
3459
|
"extends": "Engine",
|
|
3590
3460
|
"uses": [
|
|
3591
3461
|
"RegistryProxyMixin"
|
|
@@ -3637,7 +3507,7 @@
|
|
|
3637
3507
|
"module": "@ember/canary-features",
|
|
3638
3508
|
"namespace": "",
|
|
3639
3509
|
"file": "packages/@ember/canary-features/index.ts",
|
|
3640
|
-
"line":
|
|
3510
|
+
"line": 25,
|
|
3641
3511
|
"description": "The hash of enabled Canary features. Add to this, any canary features\nbefore creating your application.",
|
|
3642
3512
|
"static": 1,
|
|
3643
3513
|
"since": "1.1.0",
|
|
@@ -5193,19 +5063,6 @@
|
|
|
5193
5063
|
"class": "EmberENV",
|
|
5194
5064
|
"module": "rsvp"
|
|
5195
5065
|
},
|
|
5196
|
-
{
|
|
5197
|
-
"file": "packages/@ember/-internals/environment/lib/env.ts",
|
|
5198
|
-
"line": 158,
|
|
5199
|
-
"description": "Allows disabling the implicit this property fallback deprecation. This could be useful\nas a way to control the volume of deprecations that are issued by temporarily disabling\nthe implicit this fallback deprecations, which would allow the other deprecations to be more easily\nidentified in the console).\n\nNOTE: The fallback behavior **will be removed** in Ember 4.0.0, disabling **_IS NOT_**\na viable strategy for handling this deprecation.",
|
|
5200
|
-
"itemtype": "property",
|
|
5201
|
-
"name": "_DISABLE_PROPERTY_FALLBACK_DEPRECATION",
|
|
5202
|
-
"type": "boolean",
|
|
5203
|
-
"default": "false",
|
|
5204
|
-
"access": "private",
|
|
5205
|
-
"tagname": "",
|
|
5206
|
-
"class": "EmberENV",
|
|
5207
|
-
"module": "rsvp"
|
|
5208
|
-
},
|
|
5209
5066
|
{
|
|
5210
5067
|
"file": "packages/@ember/-internals/extension-support/lib/container_debug_adapter.js",
|
|
5211
5068
|
"line": 50,
|
|
@@ -5662,446 +5519,47 @@
|
|
|
5662
5519
|
"module": "@ember/debug"
|
|
5663
5520
|
},
|
|
5664
5521
|
{
|
|
5665
|
-
"file": "packages/@ember/-internals/glimmer/lib/components
|
|
5666
|
-
"line":
|
|
5667
|
-
"description": "The `
|
|
5522
|
+
"file": "packages/@ember/-internals/glimmer/lib/components/abstract-input.ts",
|
|
5523
|
+
"line": 125,
|
|
5524
|
+
"description": "The `change` and `input` actions need to be overridden in the `Input`\nsubclass. Unfortunately, some ember-source builds currently uses babel\nloose mode to transpile its classes. Having the `@action` decorator on the\nsuper class creates a getter on the prototype, and when the subclass\noverrides the method, the loose mode transpilation would emit something\nlike `Subclass.prototype['change'] = function change() { ... }`, which\nfails because `prototype['change']` is getter-only/readonly. The correct\nsolution is to use `Object.defineProperty(prototype, 'change', ...)` but\nthat requires disabling loose mode. For now, the workaround is to add the\ndecorator only on the subclass. This is more of a configuration issue on\nour own builds and doesn't really affect apps.",
|
|
5525
|
+
"class": "Ember.Templates.helpers",
|
|
5526
|
+
"module": "@ember/debug"
|
|
5527
|
+
},
|
|
5528
|
+
{
|
|
5529
|
+
"file": "packages/@ember/-internals/glimmer/lib/components/input.ts",
|
|
5530
|
+
"line": 45,
|
|
5531
|
+
"description": "See [Ember.Templates.components.Input](/ember/release/classes/Ember.Templates.components/methods/Input?anchor=Input).",
|
|
5668
5532
|
"itemtype": "method",
|
|
5669
|
-
"name": "
|
|
5670
|
-
"
|
|
5671
|
-
|
|
5672
|
-
|
|
5673
|
-
|
|
5674
|
-
|
|
5675
|
-
|
|
5676
|
-
"module": "ember"
|
|
5677
|
-
},
|
|
5678
|
-
{
|
|
5679
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5680
|
-
"line": 254,
|
|
5681
|
-
"description": "See [Ember.Templates.components.LinkTo](/ember/release/classes/Ember.Templates.components/methods/input?anchor=LinkTo).",
|
|
5682
|
-
"itemtype": "method",
|
|
5683
|
-
"name": "link-to",
|
|
5684
|
-
"see": [
|
|
5685
|
-
"{Ember.Templates.components.LinkTo}"
|
|
5533
|
+
"name": "input",
|
|
5534
|
+
"params": [
|
|
5535
|
+
{
|
|
5536
|
+
"name": "options",
|
|
5537
|
+
"description": "",
|
|
5538
|
+
"type": "Hash"
|
|
5539
|
+
}
|
|
5686
5540
|
],
|
|
5687
5541
|
"access": "public",
|
|
5688
5542
|
"tagname": "",
|
|
5689
5543
|
"class": "Ember.Templates.helpers",
|
|
5690
|
-
"module": "@ember/routing"
|
|
5691
|
-
},
|
|
5692
|
-
{
|
|
5693
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5694
|
-
"line": 285,
|
|
5695
|
-
"itemtype": "property",
|
|
5696
|
-
"name": "route",
|
|
5697
|
-
"access": "public",
|
|
5698
|
-
"tagname": "",
|
|
5699
|
-
"class": "LinkComponent",
|
|
5700
|
-
"module": "@ember/routing"
|
|
5701
|
-
},
|
|
5702
|
-
{
|
|
5703
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5704
|
-
"line": 291,
|
|
5705
|
-
"itemtype": "property",
|
|
5706
|
-
"name": "model",
|
|
5707
|
-
"access": "public",
|
|
5708
|
-
"tagname": "",
|
|
5709
|
-
"class": "LinkComponent",
|
|
5710
|
-
"module": "@ember/routing"
|
|
5711
|
-
},
|
|
5712
|
-
{
|
|
5713
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5714
|
-
"line": 297,
|
|
5715
|
-
"itemtype": "property",
|
|
5716
|
-
"name": "models",
|
|
5717
|
-
"access": "public",
|
|
5718
|
-
"tagname": "",
|
|
5719
|
-
"class": "LinkComponent",
|
|
5720
|
-
"module": "@ember/routing"
|
|
5721
|
-
},
|
|
5722
|
-
{
|
|
5723
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5724
|
-
"line": 303,
|
|
5725
|
-
"itemtype": "property",
|
|
5726
|
-
"name": "query",
|
|
5727
|
-
"access": "public",
|
|
5728
|
-
"tagname": "",
|
|
5729
|
-
"class": "LinkComponent",
|
|
5730
|
-
"module": "@ember/routing"
|
|
5731
|
-
},
|
|
5732
|
-
{
|
|
5733
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5734
|
-
"line": 309,
|
|
5735
|
-
"description": "Used to determine when this `LinkComponent` is active.",
|
|
5736
|
-
"itemtype": "property",
|
|
5737
|
-
"name": "current-when",
|
|
5738
|
-
"access": "public",
|
|
5739
|
-
"tagname": "",
|
|
5740
|
-
"class": "LinkComponent",
|
|
5741
|
-
"module": "@ember/routing"
|
|
5742
|
-
},
|
|
5743
|
-
{
|
|
5744
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5745
|
-
"line": 317,
|
|
5746
|
-
"description": "Sets the `title` attribute of the `LinkComponent`'s HTML element.",
|
|
5747
|
-
"itemtype": "property",
|
|
5748
|
-
"name": "title",
|
|
5749
|
-
"default": "null",
|
|
5750
|
-
"access": "public",
|
|
5751
|
-
"tagname": "",
|
|
5752
|
-
"class": "LinkComponent",
|
|
5753
|
-
"module": "@ember/routing"
|
|
5754
|
-
},
|
|
5755
|
-
{
|
|
5756
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5757
|
-
"line": 326,
|
|
5758
|
-
"description": "Sets the `rel` attribute of the `LinkComponent`'s HTML element.",
|
|
5759
|
-
"itemtype": "property",
|
|
5760
|
-
"name": "rel",
|
|
5761
|
-
"default": "null",
|
|
5762
|
-
"access": "public",
|
|
5763
|
-
"tagname": "",
|
|
5764
|
-
"class": "LinkComponent",
|
|
5765
|
-
"module": "@ember/routing"
|
|
5766
|
-
},
|
|
5767
|
-
{
|
|
5768
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5769
|
-
"line": 335,
|
|
5770
|
-
"description": "Sets the `tabindex` attribute of the `LinkComponent`'s HTML element.",
|
|
5771
|
-
"itemtype": "property",
|
|
5772
|
-
"name": "tabindex",
|
|
5773
|
-
"default": "null",
|
|
5774
|
-
"access": "public",
|
|
5775
|
-
"tagname": "",
|
|
5776
|
-
"class": "LinkComponent",
|
|
5777
|
-
"module": "@ember/routing"
|
|
5778
|
-
},
|
|
5779
|
-
{
|
|
5780
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5781
|
-
"line": 344,
|
|
5782
|
-
"description": "Sets the `target` attribute of the `LinkComponent`'s HTML element.",
|
|
5783
|
-
"since": "1.8.0",
|
|
5784
|
-
"itemtype": "property",
|
|
5785
|
-
"name": "target",
|
|
5786
|
-
"default": "null",
|
|
5787
|
-
"access": "public",
|
|
5788
|
-
"tagname": "",
|
|
5789
|
-
"class": "LinkComponent",
|
|
5790
|
-
"module": "@ember/routing"
|
|
5791
|
-
},
|
|
5792
|
-
{
|
|
5793
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5794
|
-
"line": 354,
|
|
5795
|
-
"description": "The CSS class to apply to `LinkComponent`'s element when its `active`\nproperty is `true`.",
|
|
5796
|
-
"itemtype": "property",
|
|
5797
|
-
"name": "activeClass",
|
|
5798
|
-
"type": "String",
|
|
5799
|
-
"default": "active",
|
|
5800
|
-
"access": "public",
|
|
5801
|
-
"tagname": "",
|
|
5802
|
-
"class": "LinkComponent",
|
|
5803
|
-
"module": "@ember/routing"
|
|
5804
|
-
},
|
|
5805
|
-
{
|
|
5806
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5807
|
-
"line": 365,
|
|
5808
|
-
"description": "The CSS class to apply to `LinkComponent`'s element when its `loading`\nproperty is `true`.",
|
|
5809
|
-
"itemtype": "property",
|
|
5810
|
-
"name": "loadingClass",
|
|
5811
|
-
"type": "String",
|
|
5812
|
-
"default": "loading",
|
|
5813
|
-
"access": "public",
|
|
5814
|
-
"tagname": "",
|
|
5815
|
-
"class": "LinkComponent",
|
|
5816
|
-
"module": "@ember/routing"
|
|
5817
|
-
},
|
|
5818
|
-
{
|
|
5819
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5820
|
-
"line": 376,
|
|
5821
|
-
"description": "The CSS class to apply to a `LinkComponent`'s element when its `disabled`\nproperty is `true`.",
|
|
5822
|
-
"itemtype": "property",
|
|
5823
|
-
"name": "disabledClass",
|
|
5824
|
-
"type": "String",
|
|
5825
|
-
"default": "disabled",
|
|
5826
|
-
"access": "public",
|
|
5827
|
-
"tagname": "",
|
|
5828
|
-
"class": "LinkComponent",
|
|
5829
|
-
"module": "@ember/routing"
|
|
5830
|
-
},
|
|
5831
|
-
{
|
|
5832
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5833
|
-
"line": 387,
|
|
5834
|
-
"description": "Determines whether the `LinkComponent` will trigger routing via\nthe `replaceWith` routing strategy.",
|
|
5835
|
-
"itemtype": "property",
|
|
5836
|
-
"name": "replace",
|
|
5837
|
-
"type": "Boolean",
|
|
5838
|
-
"default": "false",
|
|
5839
|
-
"access": "public",
|
|
5840
|
-
"tagname": "",
|
|
5841
|
-
"class": "LinkComponent",
|
|
5842
|
-
"module": "@ember/routing"
|
|
5843
|
-
},
|
|
5844
|
-
{
|
|
5845
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5846
|
-
"line": 398,
|
|
5847
|
-
"description": "Determines whether the `LinkComponent` will prevent the default\nbrowser action by calling preventDefault() to avoid reloading\nthe browser page.\n\nIf you need to trigger a full browser reload pass `@preventDefault={{false}}`:\n\n```handlebars\n<LinkTo @route='photoGallery' @model={{this.aPhotoId}} @preventDefault={{false}}>\n {{this.aPhotoId.title}}\n</LinkTo>\n```",
|
|
5848
|
-
"itemtype": "property",
|
|
5849
|
-
"name": "preventDefault",
|
|
5850
|
-
"type": "Boolean",
|
|
5851
|
-
"default": "true",
|
|
5852
|
-
"access": "private",
|
|
5853
|
-
"tagname": "",
|
|
5854
|
-
"class": "LinkComponent",
|
|
5855
|
-
"module": "@ember/routing"
|
|
5856
|
-
},
|
|
5857
|
-
{
|
|
5858
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5859
|
-
"line": 418,
|
|
5860
|
-
"description": "By default this component will forward `href`, `title`, `rel`, `tabindex`, and `target`\narguments to attributes on the component's element. When invoked with `{{link-to}}`, you can\nonly customize these attributes. When invoked with `<LinkTo>`, you can just use HTML\nattributes directly.",
|
|
5861
|
-
"itemtype": "property",
|
|
5862
|
-
"name": "attributeBindings",
|
|
5863
|
-
"type": "Array | String",
|
|
5864
|
-
"default": "['title', 'rel', 'tabindex', 'target']",
|
|
5865
|
-
"access": "public",
|
|
5866
|
-
"tagname": "",
|
|
5867
|
-
"class": "LinkComponent",
|
|
5868
|
-
"module": "@ember/routing"
|
|
5869
|
-
},
|
|
5870
|
-
{
|
|
5871
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5872
|
-
"line": 431,
|
|
5873
|
-
"description": "By default this component will set classes on its element when any of the following arguments\nare truthy:\n\n* active\n* loading\n* disabled\n\nWhen these arguments are truthy, a class with the same name will be set on the element. When\nfalsy, the associated class will not be on the element.",
|
|
5874
|
-
"itemtype": "property",
|
|
5875
|
-
"name": "classNameBindings",
|
|
5876
|
-
"type": "Array",
|
|
5877
|
-
"default": "['active', 'loading', 'disabled', 'ember-transitioning-in', 'ember-transitioning-out']",
|
|
5878
|
-
"access": "public",
|
|
5879
|
-
"tagname": "",
|
|
5880
|
-
"class": "LinkComponent",
|
|
5881
|
-
"module": "@ember/routing"
|
|
5882
|
-
},
|
|
5883
|
-
{
|
|
5884
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5885
|
-
"line": 449,
|
|
5886
|
-
"description": "By default this component responds to the `click` event. When the component element is an\n`<a>` element, activating the link in another way, such as using the keyboard, triggers the\nclick event.",
|
|
5887
|
-
"itemtype": "property",
|
|
5888
|
-
"name": "eventName",
|
|
5889
|
-
"type": "String",
|
|
5890
|
-
"default": "click",
|
|
5891
|
-
"access": "private",
|
|
5892
|
-
"tagname": "",
|
|
5893
|
-
"class": "LinkComponent",
|
|
5894
|
-
"module": "@ember/routing"
|
|
5895
|
-
},
|
|
5896
|
-
{
|
|
5897
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5898
|
-
"line": 464,
|
|
5899
|
-
"description": "Triggers the `LinkComponent`'s routing behavior. If\n`eventName` is changed to a value other than `click`\nthe routing behavior will trigger on that custom event\ninstead.",
|
|
5900
|
-
"itemtype": "event",
|
|
5901
|
-
"name": "click",
|
|
5902
|
-
"access": "private",
|
|
5903
|
-
"tagname": "",
|
|
5904
|
-
"class": "LinkComponent",
|
|
5905
|
-
"module": "@ember/routing"
|
|
5906
|
-
},
|
|
5907
|
-
{
|
|
5908
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5909
|
-
"line": 474,
|
|
5910
|
-
"description": "An overridable method called when `LinkComponent` objects are instantiated.\n\nExample:\n\n```app/components/my-link.js\nimport LinkComponent from '@ember/routing/link-component';\n\nexport default LinkComponent.extend({\n init() {\n this._super(...arguments);\n console.log('Event is ' + this.get('eventName'));\n }\n});\n```\n\nNOTE: If you do override `init` for a framework class like `Component`,\nbe sure to call `this._super(...arguments)` in your\n`init` declaration! If you don't, Ember may not have an opportunity to\ndo important setup work, and you'll see strange behavior in your\napplication.",
|
|
5911
|
-
"itemtype": "method",
|
|
5912
|
-
"name": "init",
|
|
5913
|
-
"access": "private",
|
|
5914
|
-
"tagname": "",
|
|
5915
|
-
"class": "LinkComponent",
|
|
5916
|
-
"module": "@ember/routing"
|
|
5917
|
-
},
|
|
5918
|
-
{
|
|
5919
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5920
|
-
"line": 556,
|
|
5921
|
-
"description": "Accessed as a classname binding to apply the component's `disabledClass`\nCSS `class` to the element when the link is disabled.\n\nWhen `true`, interactions with the element will not trigger route changes.",
|
|
5922
|
-
"itemtype": "property",
|
|
5923
|
-
"name": "disabled",
|
|
5924
|
-
"access": "private",
|
|
5925
|
-
"tagname": "",
|
|
5926
|
-
"class": "LinkComponent",
|
|
5927
|
-
"module": "@ember/routing"
|
|
5928
|
-
},
|
|
5929
|
-
{
|
|
5930
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5931
|
-
"line": 579,
|
|
5932
|
-
"description": "Accessed as a classname binding to apply the component's `activeClass`\nCSS `class` to the element when the link is active.\n\nThis component is considered active when its `currentWhen` property is `true`\nor the application's current route is the route this component would trigger\ntransitions into.\n\nThe `currentWhen` property can match against multiple routes by separating\nroute names using the ` ` (space) character.",
|
|
5933
|
-
"itemtype": "property",
|
|
5934
|
-
"name": "active",
|
|
5935
|
-
"access": "private",
|
|
5936
|
-
"tagname": "",
|
|
5937
|
-
"class": "LinkComponent",
|
|
5938
|
-
"module": "@ember/routing"
|
|
5939
|
-
},
|
|
5940
|
-
{
|
|
5941
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5942
|
-
"line": 634,
|
|
5943
|
-
"description": "Method to assert that LinkTo is not used inside of a routeless engine. This method is\noverridden in ember-engines link-to-external component to just be a noop, since the\nlink-to-external component extends the link-to component.",
|
|
5944
|
-
"itemtype": "method",
|
|
5945
|
-
"name": "assertLinkToOrigin",
|
|
5946
|
-
"access": "private",
|
|
5947
|
-
"tagname": "",
|
|
5948
|
-
"class": "LinkComponent",
|
|
5949
|
-
"module": "@ember/routing"
|
|
5950
|
-
},
|
|
5951
|
-
{
|
|
5952
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5953
|
-
"line": 711,
|
|
5954
|
-
"description": "Event handler that invokes the link, activating the associated route.",
|
|
5955
|
-
"itemtype": "method",
|
|
5956
|
-
"name": "_invoke",
|
|
5957
|
-
"params": [
|
|
5958
|
-
{
|
|
5959
|
-
"name": "event",
|
|
5960
|
-
"description": "",
|
|
5961
|
-
"type": "Event"
|
|
5962
|
-
}
|
|
5963
|
-
],
|
|
5964
|
-
"access": "private",
|
|
5965
|
-
"tagname": "",
|
|
5966
|
-
"class": "LinkComponent",
|
|
5967
|
-
"module": "@ember/routing"
|
|
5968
|
-
},
|
|
5969
|
-
{
|
|
5970
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5971
|
-
"line": 790,
|
|
5972
|
-
"description": "Sets the element's `href` attribute to the url for\nthe `LinkComponent`'s targeted route.\n\nIf the `LinkComponent`'s `tagName` is changed to a value other\nthan `a`, this property will be ignored.",
|
|
5973
|
-
"itemtype": "property",
|
|
5974
|
-
"name": "href",
|
|
5975
|
-
"access": "private",
|
|
5976
|
-
"tagname": "",
|
|
5977
|
-
"class": "LinkComponent",
|
|
5978
|
-
"module": "@ember/routing"
|
|
5979
|
-
},
|
|
5980
|
-
{
|
|
5981
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/-link-to.ts",
|
|
5982
|
-
"line": 870,
|
|
5983
|
-
"description": "The default href value to use while a link-to is loading.\nOnly applies when tagName is 'a'",
|
|
5984
|
-
"itemtype": "property",
|
|
5985
|
-
"name": "loadingHref",
|
|
5986
|
-
"type": "String",
|
|
5987
|
-
"default": "#",
|
|
5988
|
-
"access": "private",
|
|
5989
|
-
"tagname": "",
|
|
5990
|
-
"class": "LinkComponent",
|
|
5991
|
-
"module": "@ember/routing"
|
|
5992
|
-
},
|
|
5993
|
-
{
|
|
5994
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/abstract-input.ts",
|
|
5995
|
-
"line": 149,
|
|
5996
|
-
"description": "The `change` and `input` actions need to be overridden in the `Input`\nsubclass. Unfortunately, some ember-source builds currently uses babel\nloose mode to transpile its classes. Having the `@action` decorator on the\nsuper class creates a getter on the prototype, and when the subclass\noverrides the method, the loose mode transpilation would emit something\nlike `Subclass.prototype['change'] = function change() { ... }`, which\nfails because `prototype['change']` is getter-only/readonly. The correct\nsolution is to use `Object.defineProperty(prototype, 'change', ...)` but\nthat requires disabling loose mode. For now, the workaround is to add the\ndecorator only on the subclass. This is more of a configuration issue on\nour own builds and doesn't really affect apps.",
|
|
5997
|
-
"class": "Checkbox",
|
|
5998
|
-
"module": "@ember/component"
|
|
5999
|
-
},
|
|
6000
|
-
{
|
|
6001
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
6002
|
-
"line": 39,
|
|
6003
|
-
"description": "By default, this component will add the `ember-checkbox` class to the component's element.",
|
|
6004
|
-
"itemtype": "property",
|
|
6005
|
-
"name": "classNames",
|
|
6006
|
-
"type": "Array | String",
|
|
6007
|
-
"default": "['ember-checkbox']",
|
|
6008
|
-
"access": "public",
|
|
6009
|
-
"tagname": "",
|
|
6010
|
-
"class": "Checkbox",
|
|
6011
|
-
"module": "@ember/component"
|
|
6012
|
-
},
|
|
6013
|
-
{
|
|
6014
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
6015
|
-
"line": 51,
|
|
6016
|
-
"description": "By default this component will forward a number of arguments to attributes on the the\ncomponent's element:\n\n* indeterminate\n* disabled\n* tabindex\n* name\n* autofocus\n* required\n* form\n\nWhen invoked with curly braces, this is the exhaustive list of HTML attributes you can\ncustomize (i.e. `{{input type=\"checkbox\" disabled=true}}`).\n\nWhen invoked with angle bracket invocation, this list is irrelevant, because you can use HTML\nattribute syntax to customize the element (i.e.\n`<Input @type=\"checkbox\" disabled data-custom=\"custom value\" />`). However, `@type` and\n`@checked` must be passed as named arguments, not attributes.",
|
|
6017
|
-
"itemtype": "property",
|
|
6018
|
-
"name": "attributeBindings",
|
|
6019
|
-
"type": "Array | String",
|
|
6020
|
-
"default": "['type', 'checked', 'indeterminate', 'disabled', 'tabindex', 'name', 'autofocus', 'required', 'form']",
|
|
6021
|
-
"access": "public",
|
|
6022
|
-
"tagname": "",
|
|
6023
|
-
"class": "Checkbox",
|
|
6024
|
-
"module": "@ember/component"
|
|
6025
|
-
},
|
|
6026
|
-
{
|
|
6027
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
6028
|
-
"line": 88,
|
|
6029
|
-
"description": "Sets the `type` attribute of the `Checkbox`'s element",
|
|
6030
|
-
"itemtype": "property",
|
|
6031
|
-
"name": "disabled",
|
|
6032
|
-
"default": "false",
|
|
6033
|
-
"access": "private",
|
|
6034
|
-
"tagname": "",
|
|
6035
|
-
"class": "Checkbox",
|
|
6036
|
-
"module": "@ember/component"
|
|
6037
|
-
},
|
|
6038
|
-
{
|
|
6039
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
6040
|
-
"line": 97,
|
|
6041
|
-
"description": "Sets the `disabled` attribute of the `Checkbox`'s element",
|
|
6042
|
-
"itemtype": "property",
|
|
6043
|
-
"name": "disabled",
|
|
6044
|
-
"default": "false",
|
|
6045
|
-
"access": "public",
|
|
6046
|
-
"tagname": "",
|
|
6047
|
-
"class": "Checkbox",
|
|
6048
|
-
"module": "@ember/component"
|
|
6049
|
-
},
|
|
6050
|
-
{
|
|
6051
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
6052
|
-
"line": 106,
|
|
6053
|
-
"description": "Corresponds to the `indeterminate` property of the `Checkbox`'s element",
|
|
6054
|
-
"itemtype": "property",
|
|
6055
|
-
"name": "disabled",
|
|
6056
|
-
"default": "false",
|
|
6057
|
-
"access": "public",
|
|
6058
|
-
"tagname": "",
|
|
6059
|
-
"class": "Checkbox",
|
|
6060
|
-
"module": "@ember/component"
|
|
6061
|
-
},
|
|
6062
|
-
{
|
|
6063
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
6064
|
-
"line": 115,
|
|
6065
|
-
"description": "Whenever the checkbox is inserted into the DOM, perform initialization steps, which include\nsetting the indeterminate property if needed.\n\nIf this method is overridden, `super` must be called.",
|
|
6066
|
-
"itemtype": "method",
|
|
6067
|
-
"name": "",
|
|
6068
|
-
"access": "public",
|
|
6069
|
-
"tagname": "",
|
|
6070
|
-
"class": "Checkbox",
|
|
6071
|
-
"module": "@ember/component"
|
|
6072
|
-
},
|
|
6073
|
-
{
|
|
6074
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/checkbox.ts",
|
|
6075
|
-
"line": 129,
|
|
6076
|
-
"description": "Whenever the `change` event is fired on the checkbox, update its `checked` property to reflect\nwhether the checkbox is checked.\n\nIf this method is overridden, `super` must be called.",
|
|
6077
|
-
"itemtype": "method",
|
|
6078
|
-
"name": "",
|
|
6079
|
-
"access": "public",
|
|
6080
|
-
"tagname": "",
|
|
6081
|
-
"class": "Checkbox",
|
|
6082
5544
|
"module": "@ember/component"
|
|
6083
5545
|
},
|
|
6084
5546
|
{
|
|
6085
5547
|
"file": "packages/@ember/-internals/glimmer/lib/components/input.ts",
|
|
6086
|
-
"line":
|
|
6087
|
-
"description": "
|
|
5548
|
+
"line": 54,
|
|
5549
|
+
"description": "An opaque interface which can be imported and used in strict-mode\ntemplates to call <Input>.\n\nSee [Ember.Templates.components.Input](/ember/release/classes/Ember.Templates.components/methods/Input?anchor=Input).",
|
|
6088
5550
|
"itemtype": "method",
|
|
6089
|
-
"name": "
|
|
6090
|
-
"
|
|
6091
|
-
{
|
|
6092
|
-
"name": "options",
|
|
6093
|
-
"description": "",
|
|
6094
|
-
"type": "Hash"
|
|
6095
|
-
}
|
|
5551
|
+
"name": "Input",
|
|
5552
|
+
"see": [
|
|
5553
|
+
"{Ember.Templates.components.Input}"
|
|
6096
5554
|
],
|
|
6097
5555
|
"access": "public",
|
|
6098
5556
|
"tagname": "",
|
|
6099
|
-
"class": "
|
|
5557
|
+
"class": "@ember/component",
|
|
6100
5558
|
"module": "@ember/component"
|
|
6101
5559
|
},
|
|
6102
5560
|
{
|
|
6103
5561
|
"file": "packages/@ember/-internals/glimmer/lib/components/input.ts",
|
|
6104
|
-
"line":
|
|
5562
|
+
"line": 66,
|
|
6105
5563
|
"description": "The `Input` component lets you create an HTML `<input>` element.\n\n```handlebars\n<Input @value=\"987\" />\n```\n\ncreates an `<input>` element with `type=\"text\"` and value set to 987.\n\n### Text field\n\nIf no `type` argument is specified, a default of type 'text' is used.\n\n```handlebars\nSearch:\n<Input @value={{this.searchWord}} />\n```\n\nIn this example, the initial value in the `<input>` will be set to the value of\n`this.searchWord`. If the user changes the text, the value of `this.searchWord` will also be\nupdated.\n\n### Actions\n\nThe `Input` component takes a number of arguments with callbacks that are invoked in response to\nuser events.\n\n* `enter`\n* `insert-newline`\n* `escape-press`\n* `focus-in`\n* `focus-out`\n* `key-down`\n* `key-press`\n* `key-up`\n\nThese callbacks are passed to `Input` like this:\n\n```handlebars\n<Input @value={{this.searchWord}} @enter={{this.query}} />\n```\n\nStarting with Ember Octane, we recommend using the `{{on}}` modifier to call actions\non specific events, such as the input event.\n\n```handlebars\n<label for=\"input-name\">Name:</label>\n<Input\n @id=\"input-name\"\n @value={{this.name}}\n {{on \"input\" this.validateName}}\n/>\n```\n\nThe event name (e.g. `focusout`, `input`, `keydown`) always follows the casing\nthat the HTML standard uses.\n\n### `<input>` HTML Attributes to Avoid\n\nIn most cases, if you want to pass an attribute to the underlying HTML `<input>` element, you\ncan pass the attribute directly, just like any other Ember component.\n\n```handlebars\n<Input @type=\"text\" size=\"10\" />\n```\n\nIn this example, the `size` attribute will be applied to the underlying `<input>` element in the\noutputted HTML.\n\nHowever, there are a few attributes where you **must** use the `@` version.\n\n* `@type`: This argument is used to control which Ember component is used under the hood\n* `@value`: The `@value` argument installs a two-way binding onto the element. If you wanted a\n one-way binding, use `<input>` with the `value` property and the `input` event instead.\n* `@checked` (for checkboxes): like `@value`, the `@checked` argument installs a two-way binding\n onto the element. If you wanted a one-way binding, use `<input type=\"checkbox\">` with\n `checked` and the `input` event instead.\n\n### Extending `TextField`\n\nInternally, `<Input @type=\"text\" />` creates an instance of `TextField`, passing arguments from\nthe helper to `TextField`'s `create` method. Subclassing `TextField` is supported but not\nrecommended.\n\nSee [TextField](/ember/release/classes/TextField)\n\n### Checkbox\n\nTo create an `<input type=\"checkbox\">`:\n\n```handlebars\nEmberize Everything:\n<Input @type=\"checkbox\" @checked={{this.isEmberized}} name=\"isEmberized\" />\n```\n\nThis will bind the checked state of this checkbox to the value of `isEmberized` -- if either one\nchanges, it will be reflected in the other.\n\n### Extending `Checkbox`\n\nInternally, `<Input @type=\"checkbox\" />` creates an instance of `Checkbox`. Subclassing\n`TextField` is supported but not recommended.\n\nSee [Checkbox](/ember/release/classes/Checkbox)",
|
|
6106
5564
|
"itemtype": "method",
|
|
6107
5565
|
"name": "Input",
|
|
@@ -6123,164 +5581,108 @@
|
|
|
6123
5581
|
},
|
|
6124
5582
|
{
|
|
6125
5583
|
"file": "packages/@ember/-internals/glimmer/lib/components/input.ts",
|
|
6126
|
-
"line":
|
|
5584
|
+
"line": 183,
|
|
6127
5585
|
"description": "The HTML class attribute.",
|
|
6128
5586
|
"class": "Ember.Templates.components",
|
|
6129
5587
|
"module": "@ember/component"
|
|
6130
5588
|
},
|
|
6131
5589
|
{
|
|
6132
5590
|
"file": "packages/@ember/-internals/glimmer/lib/components/input.ts",
|
|
6133
|
-
"line":
|
|
5591
|
+
"line": 194,
|
|
6134
5592
|
"description": "The HTML type attribute.",
|
|
6135
5593
|
"class": "Ember.Templates.components",
|
|
6136
5594
|
"module": "@ember/component"
|
|
6137
5595
|
},
|
|
6138
5596
|
{
|
|
6139
5597
|
"file": "packages/@ember/-internals/glimmer/lib/components/internal.ts",
|
|
6140
|
-
"line":
|
|
5598
|
+
"line": 37,
|
|
6141
5599
|
"description": "The default HTML id attribute. We don't really _need_ one, this is just\nadded for compatibility as it's hard to tell if people rely on it being\npresent, and it doens't really hurt.\n\nHowever, don't rely on this internally, like passing it to `getElementId`.\nThis can be (and often is) overriden by passing an `id` attribute on the\ninvocation, which shadows this default id via `...attributes`.",
|
|
6142
|
-
"class": "
|
|
5600
|
+
"class": "Ember.Templates.components",
|
|
6143
5601
|
"module": "@ember/component"
|
|
6144
5602
|
},
|
|
6145
5603
|
{
|
|
6146
5604
|
"file": "packages/@ember/-internals/glimmer/lib/components/internal.ts",
|
|
6147
|
-
"line":
|
|
5605
|
+
"line": 50,
|
|
6148
5606
|
"description": "The default HTML class attribute. Similar to the above, we don't _need_\nthem, they are just added for compatibility as it's similarly hard to tell\nif people rely on it in their CSS etc, and it doens't really hurt.",
|
|
6149
|
-
"class": "
|
|
6150
|
-
"module": "@ember/component"
|
|
6151
|
-
},
|
|
6152
|
-
{
|
|
6153
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/text-field.ts",
|
|
6154
|
-
"line": 54,
|
|
6155
|
-
"description": "By default, this component will add the `ember-text-field` class to the component's element.",
|
|
6156
|
-
"itemtype": "property",
|
|
6157
|
-
"name": "classNames",
|
|
6158
|
-
"type": "Array | String",
|
|
6159
|
-
"default": "['ember-text-field']",
|
|
6160
|
-
"access": "public",
|
|
6161
|
-
"tagname": "",
|
|
6162
|
-
"class": "TextField",
|
|
6163
|
-
"module": "@ember/component"
|
|
6164
|
-
},
|
|
6165
|
-
{
|
|
6166
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/text-field.ts",
|
|
6167
|
-
"line": 65,
|
|
6168
|
-
"description": "By default this component will forward a number of arguments to attributes on the the\ncomponent's element:\n\n* accept\n* autocomplete\n* autosave\n* dir\n* formaction\n* formenctype\n* formmethod\n* formnovalidate\n* formtarget\n* height\n* inputmode\n* lang\n* list\n* type\n* max\n* min\n* multiple\n* name\n* pattern\n* size\n* step\n* value\n* width\n\nWhen invoked with `{{input type=\"text\"}}`, you can only customize these attributes. When invoked\nwith `<Input @type=\"text\" />`, you can just use HTML attributes directly.",
|
|
6169
|
-
"itemtype": "property",
|
|
6170
|
-
"name": "attributeBindings",
|
|
6171
|
-
"type": "Array | String",
|
|
6172
|
-
"default": "['accept', 'autocomplete', 'autosave', 'dir', 'formaction', 'formenctype', 'formmethod', 'formnovalidate', 'formtarget', 'height', 'inputmode', 'lang', 'list', 'type', 'max', 'min', 'multiple', 'name', 'pattern', 'size', 'step', 'value', 'width']",
|
|
6173
|
-
"access": "public",
|
|
6174
|
-
"tagname": "",
|
|
6175
|
-
"class": "TextField",
|
|
6176
|
-
"module": "@ember/component"
|
|
6177
|
-
},
|
|
6178
|
-
{
|
|
6179
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/text-field.ts",
|
|
6180
|
-
"line": 127,
|
|
6181
|
-
"description": "As the user inputs text, this property is updated to reflect the `value` property of the HTML\nelement.",
|
|
6182
|
-
"itemtype": "property",
|
|
6183
|
-
"name": "value",
|
|
6184
|
-
"type": "String",
|
|
6185
|
-
"default": "\"\"",
|
|
6186
|
-
"access": "public",
|
|
6187
|
-
"tagname": "",
|
|
6188
|
-
"class": "TextField",
|
|
6189
|
-
"module": "@ember/component"
|
|
6190
|
-
},
|
|
6191
|
-
{
|
|
6192
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/text-field.ts",
|
|
6193
|
-
"line": 138,
|
|
6194
|
-
"description": "The `type` attribute of the input element.",
|
|
6195
|
-
"itemtype": "property",
|
|
6196
|
-
"name": "type",
|
|
6197
|
-
"type": "String",
|
|
6198
|
-
"default": "\"text\"",
|
|
6199
|
-
"access": "public",
|
|
6200
|
-
"tagname": "",
|
|
6201
|
-
"class": "TextField",
|
|
5607
|
+
"class": "Ember.Templates.components",
|
|
6202
5608
|
"module": "@ember/component"
|
|
6203
5609
|
},
|
|
6204
5610
|
{
|
|
6205
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/
|
|
6206
|
-
"line":
|
|
6207
|
-
"description": "The `
|
|
6208
|
-
"itemtype": "
|
|
6209
|
-
"name": "
|
|
6210
|
-
"type": "String",
|
|
6211
|
-
"default": "null",
|
|
5611
|
+
"file": "packages/@ember/-internals/glimmer/lib/components/link-to.ts",
|
|
5612
|
+
"line": 40,
|
|
5613
|
+
"description": "The `LinkTo` component renders a link to the supplied `routeName` passing an optionally\nsupplied model to the route as its `model` context of the route. The block for `LinkTo`\nbecomes the contents of the rendered element:\n\n```handlebars\n<LinkTo @route='photoGallery'>\n Great Hamster Photos\n</LinkTo>\n```\n\nThis will result in:\n\n```html\n<a href=\"/hamster-photos\">\n Great Hamster Photos\n</a>\n```\n\n### Disabling the `LinkTo` component\n\nThe `LinkTo` component can be disabled by using the `disabled` argument. A disabled link\ndoesn't result in a transition when activated, and adds the `disabled` class to the `<a>`\nelement.\n\n(The class name to apply to the element can be overridden by using the `disabledClass`\nargument)\n\n```handlebars\n<LinkTo @route='photoGallery' @disabled={{true}}>\n Great Hamster Photos\n</LinkTo>\n```\n\n### Handling `href`\n\n`<LinkTo>` will use your application's Router to fill the element's `href` property with a URL\nthat matches the path to the supplied `routeName`.\n\n### Handling current route\n\nThe `LinkTo` component will apply a CSS class name of 'active' when the application's current\nroute matches the supplied routeName. For example, if the application's current route is\n'photoGallery.recent', then the following invocation of `LinkTo`:\n\n```handlebars\n<LinkTo @route='photoGallery.recent'>\n Great Hamster Photos\n</LinkTo>\n```\n\nwill result in\n\n```html\n<a href=\"/hamster-photos/this-week\" class=\"active\">\n Great Hamster Photos\n</a>\n```\n\nThe CSS class used for active classes can be customized by passing an `activeClass` argument:\n\n```handlebars\n<LinkTo @route='photoGallery.recent' @activeClass=\"current-url\">\n Great Hamster Photos\n</LinkTo>\n```\n\n```html\n<a href=\"/hamster-photos/this-week\" class=\"current-url\">\n Great Hamster Photos\n</a>\n```\n\n### Keeping a link active for other routes\n\nIf you need a link to be 'active' even when it doesn't match the current route, you can use the\n`current-when` argument.\n\n```handlebars\n<LinkTo @route='photoGallery' @current-when='photos'>\n Photo Gallery\n</LinkTo>\n```\n\nThis may be helpful for keeping links active for:\n\n* non-nested routes that are logically related\n* some secondary menu approaches\n* 'top navigation' with 'sub navigation' scenarios\n\nA link will be active if `current-when` is `true` or the current\nroute is the route this link would transition to.\n\nTo match multiple routes 'space-separate' the routes:\n\n```handlebars\n<LinkTo @route='gallery' @current-when='photos drawings paintings'>\n Art Gallery\n</LinkTo>\n```\n\n### Supplying a model\n\nAn optional `model` argument can be used for routes whose\npaths contain dynamic segments. This argument will become\nthe model context of the linked route:\n\n```javascript\nRouter.map(function() {\n this.route(\"photoGallery\", {path: \"hamster-photos/:photo_id\"});\n});\n```\n\n```handlebars\n<LinkTo @route='photoGallery' @model={{this.aPhoto}}>\n {{aPhoto.title}}\n</LinkTo>\n```\n\n```html\n<a href=\"/hamster-photos/42\">\n Tomster\n</a>\n```\n\n### Supplying multiple models\n\nFor deep-linking to route paths that contain multiple\ndynamic segments, the `models` argument can be used.\n\nAs the router transitions through the route path, each\nsupplied model argument will become the context for the\nroute with the dynamic segments:\n\n```javascript\nRouter.map(function() {\n this.route(\"photoGallery\", { path: \"hamster-photos/:photo_id\" }, function() {\n this.route(\"comment\", {path: \"comments/:comment_id\"});\n });\n});\n```\n\nThis argument will become the model context of the linked route:\n\n```handlebars\n<LinkTo @route='photoGallery.comment' @models={{array this.aPhoto this.comment}}>\n {{comment.body}}\n</LinkTo>\n```\n\n```html\n<a href=\"/hamster-photos/42/comments/718\">\n A+++ would snuggle again.\n</a>\n```\n\n### Supplying an explicit dynamic segment value\n\nIf you don't have a model object available to pass to `LinkTo`,\nan optional string or integer argument can be passed for routes whose\npaths contain dynamic segments. This argument will become the value\nof the dynamic segment:\n\n```javascript\nRouter.map(function() {\n this.route(\"photoGallery\", { path: \"hamster-photos/:photo_id\" });\n});\n```\n\n```handlebars\n<LinkTo @route='photoGallery' @model={{aPhotoId}}>\n {{this.aPhoto.title}}\n</LinkTo>\n```\n\n```html\n<a href=\"/hamster-photos/42\">\n Tomster\n</a>\n```\n\nWhen transitioning into the linked route, the `model` hook will\nbe triggered with parameters including this passed identifier.\n\n### Supplying query parameters\n\nIf you need to add optional key-value pairs that appear to the right of the ? in a URL,\nyou can use the `query` argument.\n\n```handlebars\n<LinkTo @route='photoGallery' @query={{hash page=1 per_page=20}}>\n Great Hamster Photos\n</LinkTo>\n```\n\nThis will result in:\n\n```html\n<a href=\"/hamster-photos?page=1&per_page=20\">\n Great Hamster Photos\n</a>\n```",
|
|
5614
|
+
"itemtype": "method",
|
|
5615
|
+
"name": "LinkTo",
|
|
6212
5616
|
"access": "public",
|
|
6213
5617
|
"tagname": "",
|
|
6214
|
-
"class": "
|
|
5618
|
+
"class": "Ember.Templates.components",
|
|
6215
5619
|
"module": "@ember/component"
|
|
6216
5620
|
},
|
|
6217
5621
|
{
|
|
6218
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/
|
|
6219
|
-
"line":
|
|
6220
|
-
"description": "
|
|
6221
|
-
"itemtype": "
|
|
6222
|
-
"name": "
|
|
6223
|
-
"
|
|
6224
|
-
|
|
5622
|
+
"file": "packages/@ember/-internals/glimmer/lib/components/link-to.ts",
|
|
5623
|
+
"line": 252,
|
|
5624
|
+
"description": "See [Ember.Templates.components.LinkTo](/ember/release/classes/Ember.Templates.components/methods/input?anchor=LinkTo).",
|
|
5625
|
+
"itemtype": "method",
|
|
5626
|
+
"name": "link-to",
|
|
5627
|
+
"see": [
|
|
5628
|
+
"{Ember.Templates.components.LinkTo}"
|
|
5629
|
+
],
|
|
6225
5630
|
"access": "public",
|
|
6226
5631
|
"tagname": "",
|
|
6227
|
-
"class": "
|
|
6228
|
-
"module": "@ember/
|
|
5632
|
+
"class": "Ember.Templates.helpers",
|
|
5633
|
+
"module": "@ember/routing"
|
|
6229
5634
|
},
|
|
6230
5635
|
{
|
|
6231
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/
|
|
6232
|
-
"line":
|
|
6233
|
-
"description": "
|
|
6234
|
-
"itemtype": "
|
|
6235
|
-
"name": "
|
|
6236
|
-
"
|
|
6237
|
-
|
|
6238
|
-
|
|
5636
|
+
"file": "packages/@ember/-internals/glimmer/lib/components/link-to.ts",
|
|
5637
|
+
"line": 261,
|
|
5638
|
+
"description": "An opaque interface which can be imported and used in strict-mode\ntemplates to call <LinkTo>.\n\nSee [Ember.Templates.components.LinkTo](/ember/release/classes/Ember.Templates.components/methods/input?anchor=LinkTo).",
|
|
5639
|
+
"itemtype": "method",
|
|
5640
|
+
"name": "LinkTo",
|
|
5641
|
+
"see": [
|
|
5642
|
+
"{Ember.Templates.components.LinkTo}"
|
|
5643
|
+
],
|
|
6239
5644
|
"access": "public",
|
|
6240
5645
|
"tagname": "",
|
|
6241
|
-
"class": "
|
|
6242
|
-
"module": "@ember/
|
|
5646
|
+
"class": "@ember/routing",
|
|
5647
|
+
"module": "@ember/routing"
|
|
6243
5648
|
},
|
|
6244
5649
|
{
|
|
6245
|
-
"file": "packages/@ember/-internals/glimmer/lib/components/
|
|
6246
|
-
"line":
|
|
6247
|
-
"description": "The `
|
|
6248
|
-
"itemtype": "
|
|
6249
|
-
"name": "
|
|
6250
|
-
"type": "String",
|
|
6251
|
-
"default": "null",
|
|
6252
|
-
"since": "1.4.0",
|
|
5650
|
+
"file": "packages/@ember/-internals/glimmer/lib/components/textarea.ts",
|
|
5651
|
+
"line": 9,
|
|
5652
|
+
"description": "The `Textarea` component inserts a new instance of `<textarea>` tag into the template.\n\nThe `@value` argument provides the content of the `<textarea>`.\n\nThis template:\n\n```handlebars\n<Textarea @value=\"A bunch of text\" />\n```\n\nWould result in the following HTML:\n\n```html\n<textarea class=\"ember-text-area\">\n A bunch of text\n</textarea>\n```\n\nThe `@value` argument is two-way bound. If the user types text into the textarea, the `@value`\nargument is updated. If the `@value` argument is updated, the text in the textarea is updated.\n\nIn the following example, the `writtenWords` property on the component will be updated as the user\ntypes 'Lots of text' into the text area of their browser's window.\n\n```app/components/word-editor.js\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n\nexport default class WordEditorComponent extends Component {\n @tracked writtenWords = \"Lots of text that IS bound\";\n}\n```\n\n```handlebars\n<Textarea @value={{writtenWords}} />\n```\n\nWould result in the following HTML:\n\n```html\n<textarea class=\"ember-text-area\">\n Lots of text that IS bound\n</textarea>\n```\n\nIf you wanted a one way binding, you could use the `<textarea>` element directly, and use the\n`value` DOM property and the `input` event.\n\n### Actions\n\nThe `Textarea` component takes a number of arguments with callbacks that are invoked in\nresponse to user events.\n\n* `enter`\n* `insert-newline`\n* `escape-press`\n* `focus-in`\n* `focus-out`\n* `key-press`\n\nThese callbacks are passed to `Textarea` like this:\n\n```handlebars\n<Textarea @value={{this.searchWord}} @enter={{this.query}} />\n```\n\n## Classic Invocation Syntax\n\nThe `Textarea` component can also be invoked using curly braces, just like any other Ember\ncomponent.\n\nFor example, this is an invocation using angle-bracket notation:\n\n```handlebars\n<Textarea @value={{this.searchWord}} @enter={{this.query}} />\n```\n\nYou could accomplish the same thing using classic invocation:\n\n```handlebars\n{{textarea value=this.searchWord enter=this.query}}\n```\n\nThe main difference is that angle-bracket invocation supports any HTML attribute using HTML\nattribute syntax, because attributes and arguments have different syntax when using angle-bracket\ninvocation. Curly brace invocation, on the other hand, only has a single syntax for arguments,\nand components must manually map attributes onto component arguments.\n\nWhen using classic invocation with `{{textarea}}`, only the following attributes are mapped onto\narguments:\n\n* rows\n* cols\n* name\n* selectionEnd\n* selectionStart\n* autocomplete\n* wrap\n* lang\n* dir\n* value\n\n## Classic `layout` and `layoutName` properties\n\nBecause HTML `textarea` elements do not contain inner HTML the `layout` and\n`layoutName` properties will not be applied.",
|
|
5653
|
+
"itemtype": "method",
|
|
5654
|
+
"name": "Textarea",
|
|
6253
5655
|
"access": "public",
|
|
6254
5656
|
"tagname": "",
|
|
6255
|
-
"class": "
|
|
5657
|
+
"class": "Ember.Templates.components",
|
|
6256
5658
|
"module": "@ember/component"
|
|
6257
5659
|
},
|
|
6258
5660
|
{
|
|
6259
5661
|
"file": "packages/@ember/-internals/glimmer/lib/components/textarea.ts",
|
|
6260
|
-
"line":
|
|
6261
|
-
"description": "
|
|
5662
|
+
"line": 122,
|
|
5663
|
+
"description": "See Ember.Templates.components.Textarea.",
|
|
6262
5664
|
"itemtype": "method",
|
|
6263
|
-
"name": "
|
|
5665
|
+
"name": "textarea",
|
|
6264
5666
|
"see": [
|
|
6265
|
-
"{
|
|
5667
|
+
"{Ember.Templates.components.Textarea}"
|
|
6266
5668
|
],
|
|
6267
5669
|
"access": "public",
|
|
6268
5670
|
"tagname": "",
|
|
6269
|
-
"class": "Ember.Templates.
|
|
5671
|
+
"class": "Ember.Templates.helpers",
|
|
6270
5672
|
"module": "@ember/component"
|
|
6271
5673
|
},
|
|
6272
5674
|
{
|
|
6273
5675
|
"file": "packages/@ember/-internals/glimmer/lib/components/textarea.ts",
|
|
6274
|
-
"line":
|
|
6275
|
-
"description": "
|
|
5676
|
+
"line": 131,
|
|
5677
|
+
"description": "An opaque interface which can be imported and used in strict-mode\ntemplates to call <Textarea>.\n\nSee [Ember.Templates.components.Textarea](/ember/release/classes/Ember.Templates.components/methods/Textarea?anchor=Input).",
|
|
6276
5678
|
"itemtype": "method",
|
|
6277
|
-
"name": "
|
|
5679
|
+
"name": "Textarea",
|
|
6278
5680
|
"see": [
|
|
6279
|
-
"{Ember.Templates.components.
|
|
5681
|
+
"{Ember.Templates.components.Textarea}"
|
|
6280
5682
|
],
|
|
6281
5683
|
"access": "public",
|
|
6282
5684
|
"tagname": "",
|
|
6283
|
-
"class": "
|
|
5685
|
+
"class": "@ember/component",
|
|
6284
5686
|
"module": "@ember/component"
|
|
6285
5687
|
},
|
|
6286
5688
|
{
|
|
@@ -6495,31 +5897,6 @@
|
|
|
6495
5897
|
"class": "Ember.Templates.helpers",
|
|
6496
5898
|
"module": "ember"
|
|
6497
5899
|
},
|
|
6498
|
-
{
|
|
6499
|
-
"file": "packages/@ember/-internals/glimmer/lib/helpers/query-param.ts",
|
|
6500
|
-
"line": 11,
|
|
6501
|
-
"description": "This is a helper to be used in conjunction with the link-to helper.\nIt will supply url query parameters to the target route.",
|
|
6502
|
-
"example": [
|
|
6503
|
-
" In this example we are setting the `direction` query param to the value `\"asc\"`\n\n```app/templates/application.hbs\n<LinkTo\n @route=\"posts\"\n {{query-params direction=\"asc\"}}\n>\n Sort\n</LinkTo>\n```"
|
|
6504
|
-
],
|
|
6505
|
-
"itemtype": "method",
|
|
6506
|
-
"name": "query-params",
|
|
6507
|
-
"params": [
|
|
6508
|
-
{
|
|
6509
|
-
"name": "hash",
|
|
6510
|
-
"description": "takes a hash of query parameters",
|
|
6511
|
-
"type": "Object"
|
|
6512
|
-
}
|
|
6513
|
-
],
|
|
6514
|
-
"return": {
|
|
6515
|
-
"description": "A `QueryParams` object for `{{link-to}}`",
|
|
6516
|
-
"type": "Object"
|
|
6517
|
-
},
|
|
6518
|
-
"access": "public",
|
|
6519
|
-
"tagname": "",
|
|
6520
|
-
"class": "Ember.Templates.helpers",
|
|
6521
|
-
"module": "ember"
|
|
6522
|
-
},
|
|
6523
5900
|
{
|
|
6524
5901
|
"file": "packages/@ember/-internals/glimmer/lib/helpers/readonly.ts",
|
|
6525
5902
|
"line": 8,
|
|
@@ -6736,7 +6113,7 @@
|
|
|
6736
6113
|
},
|
|
6737
6114
|
{
|
|
6738
6115
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6739
|
-
"line":
|
|
6116
|
+
"line": 752,
|
|
6740
6117
|
"description": "Normally, Ember's component model is \"write-only\". The component takes a\nbunch of attributes that it got passed in, and uses them to render its\ntemplate.\n\nOne nice thing about this model is that if you try to set a value to the\nsame thing as last time, Ember (through HTMLBars) will avoid doing any\nwork on the DOM.\n\nThis is not just a performance optimization. If an attribute has not\nchanged, it is important not to clobber the element's \"hidden state\".\nFor example, if you set an input's `value` to the same value as before,\nit will clobber selection state and cursor position. In other words,\nsetting an attribute is not **always** idempotent.\n\nThis method provides a way to read an element's attribute and also\nupdate the last value Ember knows about at the same time. This makes\nsetting an attribute idempotent.\n\nIn particular, what this means is that if you get an `<input>` element's\n`value` attribute and then re-render the template with the same value,\nit will avoid clobbering the cursor and selection position.\nSince most attribute sets are idempotent in the browser, you typically\ncan get away with reading attributes using jQuery, but the most reliable\nway to do so is through this method.",
|
|
6741
6118
|
"itemtype": "method",
|
|
6742
6119
|
"name": "readDOMAttr",
|
|
@@ -6757,7 +6134,7 @@
|
|
|
6757
6134
|
},
|
|
6758
6135
|
{
|
|
6759
6136
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6760
|
-
"line":
|
|
6137
|
+
"line": 803,
|
|
6761
6138
|
"description": "The WAI-ARIA role of the control represented by this view. For example, a\nbutton may have a role of type 'button', or a pane may have a role of\ntype 'alertdialog'. This property is used by assistive software to help\nvisually challenged users navigate rich web applications.\n\nThe full list of valid WAI-ARIA roles is available at:\n[https://www.w3.org/TR/wai-aria/#roles_categorization](https://www.w3.org/TR/wai-aria/#roles_categorization)",
|
|
6762
6139
|
"itemtype": "property",
|
|
6763
6140
|
"name": "ariaRole",
|
|
@@ -6770,7 +6147,7 @@
|
|
|
6770
6147
|
},
|
|
6771
6148
|
{
|
|
6772
6149
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6773
|
-
"line":
|
|
6150
|
+
"line": 818,
|
|
6774
6151
|
"description": "Enables components to take a list of parameters as arguments.\nFor example, a component that takes two parameters with the names\n`name` and `age`:\n\n```app/components/my-component.js\nimport Component from '@ember/component';\n\nlet MyComponent = Component.extend();\n\nMyComponent.reopenClass({\n positionalParams: ['name', 'age']\n});\n\nexport default MyComponent;\n```\n\nIt can then be invoked like this:\n\n```hbs\n{{my-component \"John\" 38}}\n```\n\nThe parameters can be referred to just like named parameters:\n\n```hbs\nName: {{name}}, Age: {{age}}.\n```\n\nUsing a string instead of an array allows for an arbitrary number of\nparameters:\n\n```app/components/my-component.js\nimport Component from '@ember/component';\n\nlet MyComponent = Component.extend();\n\nMyComponent.reopenClass({\n positionalParams: 'names'\n});\n\nexport default MyComponent;\n```\n\nIt can then be invoked like this:\n\n```hbs\n{{my-component \"John\" \"Michael\" \"Scott\"}}\n```\nThe parameters can then be referred to by enumerating over the list:\n\n```hbs\n{{#each names as |name|}}{{name}}{{/each}}\n```",
|
|
6775
6152
|
"static": 1,
|
|
6776
6153
|
"access": "public",
|
|
@@ -6783,7 +6160,7 @@
|
|
|
6783
6160
|
},
|
|
6784
6161
|
{
|
|
6785
6162
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6786
|
-
"line":
|
|
6163
|
+
"line": 879,
|
|
6787
6164
|
"description": "Called when the attributes passed into the component have been updated.\nCalled both during the initial render of a container and during a rerender.\nCan be used in place of an observer; code placed here will be executed\nevery time any attribute updates.",
|
|
6788
6165
|
"itemtype": "method",
|
|
6789
6166
|
"name": "didReceiveAttrs",
|
|
@@ -6795,7 +6172,7 @@
|
|
|
6795
6172
|
},
|
|
6796
6173
|
{
|
|
6797
6174
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6798
|
-
"line":
|
|
6175
|
+
"line": 890,
|
|
6799
6176
|
"description": "Called when the attributes passed into the component have been updated.\nCalled both during the initial render of a container and during a rerender.\nCan be used in place of an observer; code placed here will be executed\nevery time any attribute updates.",
|
|
6800
6177
|
"itemtype": "event",
|
|
6801
6178
|
"name": "didReceiveAttrs",
|
|
@@ -6807,7 +6184,7 @@
|
|
|
6807
6184
|
},
|
|
6808
6185
|
{
|
|
6809
6186
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6810
|
-
"line":
|
|
6187
|
+
"line": 900,
|
|
6811
6188
|
"description": "Called after a component has been rendered, both on initial render and\nin subsequent rerenders.",
|
|
6812
6189
|
"itemtype": "method",
|
|
6813
6190
|
"name": "didRender",
|
|
@@ -6819,7 +6196,7 @@
|
|
|
6819
6196
|
},
|
|
6820
6197
|
{
|
|
6821
6198
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6822
|
-
"line":
|
|
6199
|
+
"line": 909,
|
|
6823
6200
|
"description": "Called after a component has been rendered, both on initial render and\nin subsequent rerenders.",
|
|
6824
6201
|
"itemtype": "event",
|
|
6825
6202
|
"name": "didRender",
|
|
@@ -6831,7 +6208,7 @@
|
|
|
6831
6208
|
},
|
|
6832
6209
|
{
|
|
6833
6210
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6834
|
-
"line":
|
|
6211
|
+
"line": 917,
|
|
6835
6212
|
"description": "Called before a component has been rendered, both on initial render and\nin subsequent rerenders.",
|
|
6836
6213
|
"itemtype": "method",
|
|
6837
6214
|
"name": "willRender",
|
|
@@ -6843,7 +6220,7 @@
|
|
|
6843
6220
|
},
|
|
6844
6221
|
{
|
|
6845
6222
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6846
|
-
"line":
|
|
6223
|
+
"line": 926,
|
|
6847
6224
|
"description": "Called before a component has been rendered, both on initial render and\nin subsequent rerenders.",
|
|
6848
6225
|
"itemtype": "event",
|
|
6849
6226
|
"name": "willRender",
|
|
@@ -6855,7 +6232,7 @@
|
|
|
6855
6232
|
},
|
|
6856
6233
|
{
|
|
6857
6234
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6858
|
-
"line":
|
|
6235
|
+
"line": 934,
|
|
6859
6236
|
"description": "Called when the attributes passed into the component have been changed.\nCalled only during a rerender, not during an initial render.",
|
|
6860
6237
|
"itemtype": "method",
|
|
6861
6238
|
"name": "didUpdateAttrs",
|
|
@@ -6867,7 +6244,7 @@
|
|
|
6867
6244
|
},
|
|
6868
6245
|
{
|
|
6869
6246
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6870
|
-
"line":
|
|
6247
|
+
"line": 943,
|
|
6871
6248
|
"description": "Called when the attributes passed into the component have been changed.\nCalled only during a rerender, not during an initial render.",
|
|
6872
6249
|
"itemtype": "event",
|
|
6873
6250
|
"name": "didUpdateAttrs",
|
|
@@ -6879,7 +6256,7 @@
|
|
|
6879
6256
|
},
|
|
6880
6257
|
{
|
|
6881
6258
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6882
|
-
"line":
|
|
6259
|
+
"line": 951,
|
|
6883
6260
|
"description": "Called when the component is about to update and rerender itself.\nCalled only during a rerender, not during an initial render.",
|
|
6884
6261
|
"itemtype": "method",
|
|
6885
6262
|
"name": "willUpdate",
|
|
@@ -6891,7 +6268,7 @@
|
|
|
6891
6268
|
},
|
|
6892
6269
|
{
|
|
6893
6270
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6894
|
-
"line":
|
|
6271
|
+
"line": 960,
|
|
6895
6272
|
"description": "Called when the component is about to update and rerender itself.\nCalled only during a rerender, not during an initial render.",
|
|
6896
6273
|
"itemtype": "event",
|
|
6897
6274
|
"name": "willUpdate",
|
|
@@ -6903,7 +6280,7 @@
|
|
|
6903
6280
|
},
|
|
6904
6281
|
{
|
|
6905
6282
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6906
|
-
"line":
|
|
6283
|
+
"line": 968,
|
|
6907
6284
|
"description": "Called when the component has updated and rerendered itself.\nCalled only during a rerender, not during an initial render.",
|
|
6908
6285
|
"itemtype": "method",
|
|
6909
6286
|
"name": "didUpdate",
|
|
@@ -6915,7 +6292,7 @@
|
|
|
6915
6292
|
},
|
|
6916
6293
|
{
|
|
6917
6294
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6918
|
-
"line":
|
|
6295
|
+
"line": 977,
|
|
6919
6296
|
"description": "Called when the component has updated and rerendered itself.\nCalled only during a rerender, not during an initial render.",
|
|
6920
6297
|
"itemtype": "event",
|
|
6921
6298
|
"name": "didUpdate",
|
|
@@ -6927,7 +6304,7 @@
|
|
|
6927
6304
|
},
|
|
6928
6305
|
{
|
|
6929
6306
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6930
|
-
"line":
|
|
6307
|
+
"line": 985,
|
|
6931
6308
|
"description": "Layout can be used to wrap content in a component.",
|
|
6932
6309
|
"itemtype": "property",
|
|
6933
6310
|
"name": "layout",
|
|
@@ -6939,7 +6316,7 @@
|
|
|
6939
6316
|
},
|
|
6940
6317
|
{
|
|
6941
6318
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6942
|
-
"line":
|
|
6319
|
+
"line": 992,
|
|
6943
6320
|
"description": "The name of the layout to lookup if no layout is provided.\nBy default `Component` will lookup a template with this name in\n`Ember.TEMPLATES` (a shared global object).",
|
|
6944
6321
|
"itemtype": "property",
|
|
6945
6322
|
"name": "layoutName",
|
|
@@ -6952,30 +6329,7 @@
|
|
|
6952
6329
|
},
|
|
6953
6330
|
{
|
|
6954
6331
|
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6955
|
-
"line":
|
|
6956
|
-
"description": "Returns a jQuery object for this component's element. If you pass in a selector\nstring, this method will return a jQuery object, using the current element\nas its buffer.\n\nFor example, calling `component.$('li')` will return a jQuery object containing\nall of the `li` elements inside the DOM element of this component.\n\nPlease note that jQuery integration is off by default and this feature will\nnot work properly. To enable this feature, you can read the instructions in\nthe [jquery-integration optional feature guide](https://guides.emberjs.com/release/configuring-ember/optional-features/#toc_jquery-integration).",
|
|
6957
|
-
"itemtype": "method",
|
|
6958
|
-
"name": "$",
|
|
6959
|
-
"params": [
|
|
6960
|
-
{
|
|
6961
|
-
"name": "selector",
|
|
6962
|
-
"description": "a jQuery-compatible selector string",
|
|
6963
|
-
"type": "String",
|
|
6964
|
-
"optional": true
|
|
6965
|
-
}
|
|
6966
|
-
],
|
|
6967
|
-
"return": {
|
|
6968
|
-
"description": "the jQuery object for the DOM node",
|
|
6969
|
-
"type": "JQuery"
|
|
6970
|
-
},
|
|
6971
|
-
"access": "public",
|
|
6972
|
-
"tagname": "",
|
|
6973
|
-
"class": "Component",
|
|
6974
|
-
"module": "@ember/component"
|
|
6975
|
-
},
|
|
6976
|
-
{
|
|
6977
|
-
"file": "packages/@ember/-internals/glimmer/lib/component.ts",
|
|
6978
|
-
"line": 1020,
|
|
6332
|
+
"line": 1002,
|
|
6979
6333
|
"description": "The HTML `id` of the component's element in the DOM. You can provide this\nvalue yourself but it must be unique (just as in HTML):\n\n```handlebars\n{{my-component elementId=\"a-really-cool-id\"}}\n```\n\n```handlebars\n<MyComponent @elementId=\"a-really-cool-id\" />\n```\nIf not manually set a default value will be provided by the framework.\nOnce rendered an element's `elementId` is considered immutable and you\nshould never change it. If you need to compute a dynamic value for the\n`elementId`, you should do this when the component or element is being\ninstantiated:\n\n```javascript\nexport default Component.extend({\n init() {\n this._super(...arguments);\n\n var index = this.get('index');\n this.set('elementId', `component-id${index}`);\n }\n});\n```",
|
|
6980
6334
|
"itemtype": "property",
|
|
6981
6335
|
"name": "elementId",
|
|
@@ -6999,7 +6353,7 @@
|
|
|
6999
6353
|
},
|
|
7000
6354
|
{
|
|
7001
6355
|
"file": "packages/@ember/-internals/glimmer/lib/helper.ts",
|
|
7002
|
-
"line":
|
|
6356
|
+
"line": 85,
|
|
7003
6357
|
"description": "On a class-based helper, it may be useful to force a recomputation of that\nhelpers value. This is akin to `rerender` on a component.\n\nFor example, this component will rerender when the `currentUser` on a\nsession service changes:\n\n```app/helpers/current-user-email.js\nimport Helper from '@ember/component/helper'\nimport { inject as service } from '@ember/service'\nimport { observer } from '@ember/object'\n\nexport default Helper.extend({\n session: service(),\n\n onNewUser: observer('session.currentUser', function() {\n this.recompute();\n }),\n\n compute() {\n return this.get('session.currentUser.email');\n }\n});\n```",
|
|
7004
6358
|
"itemtype": "method",
|
|
7005
6359
|
"name": "recompute",
|
|
@@ -7011,7 +6365,7 @@
|
|
|
7011
6365
|
},
|
|
7012
6366
|
{
|
|
7013
6367
|
"file": "packages/@ember/-internals/glimmer/lib/helper.ts",
|
|
7014
|
-
"line":
|
|
6368
|
+
"line": 118,
|
|
7015
6369
|
"description": "Override this function when writing a class-based helper.",
|
|
7016
6370
|
"itemtype": "method",
|
|
7017
6371
|
"name": "compute",
|
|
@@ -7035,7 +6389,7 @@
|
|
|
7035
6389
|
},
|
|
7036
6390
|
{
|
|
7037
6391
|
"file": "packages/@ember/-internals/glimmer/lib/helper.ts",
|
|
7038
|
-
"line":
|
|
6392
|
+
"line": 231,
|
|
7039
6393
|
"description": "In many cases it is not necessary to use the full `Helper` class.\nThe `helper` method create pure-function helpers without instances.\nFor example:\n\n```app/helpers/format-currency.js\nimport { helper } from '@ember/component/helper';\n\nexport default helper(function([cents], {currency}) {\n return `${currency}${cents * 0.01}`;\n});\n```",
|
|
7040
6394
|
"static": 1,
|
|
7041
6395
|
"params": [
|
|
@@ -7680,7 +7034,7 @@
|
|
|
7680
7034
|
},
|
|
7681
7035
|
{
|
|
7682
7036
|
"file": "packages/@ember/-internals/metal/lib/mixin.ts",
|
|
7683
|
-
"line":
|
|
7037
|
+
"line": 430,
|
|
7684
7038
|
"itemtype": "method",
|
|
7685
7039
|
"name": "mixin",
|
|
7686
7040
|
"params": [
|
|
@@ -7704,7 +7058,7 @@
|
|
|
7704
7058
|
},
|
|
7705
7059
|
{
|
|
7706
7060
|
"file": "packages/@ember/-internals/metal/lib/mixin.ts",
|
|
7707
|
-
"line":
|
|
7061
|
+
"line": 559,
|
|
7708
7062
|
"itemtype": "method",
|
|
7709
7063
|
"name": "create",
|
|
7710
7064
|
"static": 1,
|
|
@@ -7722,7 +7076,7 @@
|
|
|
7722
7076
|
},
|
|
7723
7077
|
{
|
|
7724
7078
|
"file": "packages/@ember/-internals/metal/lib/mixin.ts",
|
|
7725
|
-
"line":
|
|
7079
|
+
"line": 591,
|
|
7726
7080
|
"itemtype": "method",
|
|
7727
7081
|
"name": "reopen",
|
|
7728
7082
|
"params": [
|
|
@@ -7739,7 +7093,7 @@
|
|
|
7739
7093
|
},
|
|
7740
7094
|
{
|
|
7741
7095
|
"file": "packages/@ember/-internals/metal/lib/mixin.ts",
|
|
7742
|
-
"line":
|
|
7096
|
+
"line": 613,
|
|
7743
7097
|
"itemtype": "method",
|
|
7744
7098
|
"name": "apply",
|
|
7745
7099
|
"params": [
|
|
@@ -7758,7 +7112,7 @@
|
|
|
7758
7112
|
},
|
|
7759
7113
|
{
|
|
7760
7114
|
"file": "packages/@ember/-internals/metal/lib/mixin.ts",
|
|
7761
|
-
"line":
|
|
7115
|
+
"line": 632,
|
|
7762
7116
|
"itemtype": "method",
|
|
7763
7117
|
"name": "detect",
|
|
7764
7118
|
"params": [
|
|
@@ -7778,7 +7132,7 @@
|
|
|
7778
7132
|
},
|
|
7779
7133
|
{
|
|
7780
7134
|
"file": "packages/@ember/-internals/metal/lib/mixin.ts",
|
|
7781
|
-
"line":
|
|
7135
|
+
"line": 749,
|
|
7782
7136
|
"description": "Specify a method that observes property changes.\n\n```javascript\nimport EmberObject from '@ember/object';\nimport { observer } from '@ember/object';\n\nexport default EmberObject.extend({\n valueObserver: observer('value', function() {\n // Executes whenever the \"value\" property changes\n })\n});\n```\n\nAlso available as `Function.prototype.observes` if prototype extensions are\nenabled.",
|
|
7783
7137
|
"itemtype": "method",
|
|
7784
7138
|
"name": "observer",
|
|
@@ -8002,7 +7356,7 @@
|
|
|
8002
7356
|
},
|
|
8003
7357
|
{
|
|
8004
7358
|
"file": "packages/@ember/-internals/metal/lib/property_get.ts",
|
|
8005
|
-
"line":
|
|
7359
|
+
"line": 41,
|
|
8006
7360
|
"description": "Gets the value of a property on an object. If the property is computed,\nthe function will be invoked. If the property is not defined but the\nobject implements the `unknownProperty` method then that will be invoked.\n\n```javascript\nimport { get } from '@ember/object';\nget(obj, \"name\");\n```\n\nIf you plan to run on IE8 and older browsers then you should use this\nmethod anytime you want to retrieve a property on an object that you don't\nknow for sure is private. (Properties beginning with an underscore '_'\nare considered private.)\n\nOn all newer browsers, you only need to use this method to retrieve\nproperties if the property might not be defined on the object and you want\nto respect the `unknownProperty` handler. Otherwise you can ignore this\nmethod.\n\nNote that if the object itself is `undefined`, this method will throw\nan error.",
|
|
8007
7361
|
"itemtype": "method",
|
|
8008
7362
|
"name": "get",
|
|
@@ -8123,8 +7477,8 @@
|
|
|
8123
7477
|
"access": "private",
|
|
8124
7478
|
"tagname": "Marks a property as tracked.\n\nBy default, a component's properties are expected to be static,\nmeaning you are not able to update them and have the template update accordingly.\nMarking a property as tracked means that when that property changes,\na rerender of the component is scheduled so the template is kept up to date.\n\nThere are two usages for the `@tracked` decorator, shown below.",
|
|
8125
7479
|
"example": [
|
|
8126
|
-
" No dependencies\n\nIf you don't pass an argument to `@tracked`, only changes to that property\nwill be tracked:\n\n```typescript\nimport Component
|
|
8127
|
-
" Dependents\n\nIn the case that you have a computed property that depends other\nproperties, you want to track both so that when one of the\ndependents change, a rerender is scheduled.\n\nIn the following example we have two properties,\n`eatenApples`, and `remainingApples`.\n\n```typescript\nimport Component
|
|
7480
|
+
" No dependencies\n\nIf you don't pass an argument to `@tracked`, only changes to that property\nwill be tracked:\n\n```typescript\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n\nexport default class MyComponent extends Component {\n @tracked\n remainingApples = 10\n}\n```\n\nWhen something changes the component's `remainingApples` property, the rerender\nwill be scheduled.",
|
|
7481
|
+
" Dependents\n\nIn the case that you have a computed property that depends other\nproperties, you want to track both so that when one of the\ndependents change, a rerender is scheduled.\n\nIn the following example we have two properties,\n`eatenApples`, and `remainingApples`.\n\n```typescript\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n\nconst totalApples = 100;\n\nexport default class MyComponent extends Component {\n @tracked\n eatenApples = 0\n\n @tracked('eatenApples')\n get remainingApples() {\n return totalApples - this.eatenApples;\n }\n\n increment() {\n this.eatenApples = this.eatenApples + 1;\n }\n}\n```"
|
|
8128
7482
|
],
|
|
8129
7483
|
"params": [
|
|
8130
7484
|
{
|
|
@@ -9409,7 +8763,7 @@
|
|
|
9409
8763
|
},
|
|
9410
8764
|
{
|
|
9411
8765
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9412
|
-
"line":
|
|
8766
|
+
"line": 147,
|
|
9413
8767
|
"description": "Configuration hash for this route's queryParams. The possible\nconfiguration options and their defaults are as follows\n(assuming a query param whose controller property is `page`):\n\n```javascript\nqueryParams: {\n page: {\n // By default, controller query param properties don't\n // cause a full transition when they are changed, but\n // rather only cause the URL to update. Setting\n // `refreshModel` to true will cause an \"in-place\"\n // transition to occur, whereby the model hooks for\n // this route (and any child routes) will re-fire, allowing\n // you to reload models (e.g., from the server) using the\n // updated query param values.\n refreshModel: false,\n\n // By default, changes to controller query param properties\n // cause the URL to update via `pushState`, which means an\n // item will be added to the browser's history, allowing\n // you to use the back button to restore the app to the\n // previous state before the query param property was changed.\n // Setting `replace` to true will use `replaceState` (or its\n // hash location equivalent), which causes no browser history\n // item to be added. This options name and default value are\n // the same as the `link-to` helper's `replace` option.\n replace: false,\n\n // By default, the query param URL key is the same name as\n // the controller property name. Use `as` to specify a\n // different URL key.\n as: 'page'\n }\n}\n```",
|
|
9414
8768
|
"itemtype": "property",
|
|
9415
8769
|
"name": "queryParams",
|
|
@@ -9422,7 +8776,7 @@
|
|
|
9422
8776
|
},
|
|
9423
8777
|
{
|
|
9424
8778
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9425
|
-
"line":
|
|
8779
|
+
"line": 193,
|
|
9426
8780
|
"description": "The name of the template to use by default when rendering this routes\ntemplate.\n\n```app/routes/posts/list.js\nimport Route from '@ember/routing/route';\n\nexport default class extends Route {\n templateName = 'posts/list'\n});\n```\n\n```app/routes/posts/index.js\nimport PostsList from '../posts/list';\n\nexport default class extends PostsList {};\n```\n\n```app/routes/posts/archived.js\nimport PostsList from '../posts/list';\n\nexport default class extends PostsList {};\n```",
|
|
9427
8781
|
"itemtype": "property",
|
|
9428
8782
|
"name": "templateName",
|
|
@@ -9436,7 +8790,7 @@
|
|
|
9436
8790
|
},
|
|
9437
8791
|
{
|
|
9438
8792
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9439
|
-
"line":
|
|
8793
|
+
"line": 226,
|
|
9440
8794
|
"description": "The name of the controller to associate with this route.\n\nBy default, Ember will lookup a route's controller that matches the name\nof the route (i.e. `posts.new`). However,\nif you would like to define a specific controller to use, you can do so\nusing this property.\n\nThis is useful in many ways, as the controller specified will be:\n\n* passed to the `setupController` method.\n* used as the controller for the template being rendered by the route.\n* returned from a call to `controllerFor` for the route.",
|
|
9441
8795
|
"itemtype": "property",
|
|
9442
8796
|
"name": "controllerName",
|
|
@@ -9450,7 +8804,7 @@
|
|
|
9450
8804
|
},
|
|
9451
8805
|
{
|
|
9452
8806
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9453
|
-
"line":
|
|
8807
|
+
"line": 249,
|
|
9454
8808
|
"description": "The controller associated with this route.\n\nExample\n\n```app/routes/form.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class FormRoute extends Route {\n @action\n willTransition(transition) {\n if (this.controller.get('userHasEnteredData') &&\n !confirm('Are you sure you want to abandon progress?')) {\n transition.abort();\n } else {\n // Bubble the `willTransition` action so that\n // parent routes can decide whether or not to abort.\n return true;\n }\n }\n}\n```",
|
|
9455
8809
|
"itemtype": "property",
|
|
9456
8810
|
"name": "controller",
|
|
@@ -9463,7 +8817,7 @@
|
|
|
9463
8817
|
},
|
|
9464
8818
|
{
|
|
9465
8819
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9466
|
-
"line":
|
|
8820
|
+
"line": 280,
|
|
9467
8821
|
"description": "The name of the route, dot-delimited.\n\nFor example, a route found at `app/routes/posts/post.js` will have\na `routeName` of `posts.post`.",
|
|
9468
8822
|
"itemtype": "property",
|
|
9469
8823
|
"name": "routeName",
|
|
@@ -9476,7 +8830,7 @@
|
|
|
9476
8830
|
},
|
|
9477
8831
|
{
|
|
9478
8832
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9479
|
-
"line":
|
|
8833
|
+
"line": 294,
|
|
9480
8834
|
"description": "The name of the route, dot-delimited, including the engine prefix\nif applicable.\n\nFor example, a route found at `addon/routes/posts/post.js` within an\nengine named `admin` will have a `fullRouteName` of `admin.posts.post`.",
|
|
9481
8835
|
"itemtype": "property",
|
|
9482
8836
|
"name": "fullRouteName",
|
|
@@ -9489,7 +8843,7 @@
|
|
|
9489
8843
|
},
|
|
9490
8844
|
{
|
|
9491
8845
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9492
|
-
"line":
|
|
8846
|
+
"line": 309,
|
|
9493
8847
|
"description": "Sets the name for this route, including a fully resolved name for routes\ninside engines.",
|
|
9494
8848
|
"access": "private",
|
|
9495
8849
|
"tagname": "",
|
|
@@ -9507,7 +8861,7 @@
|
|
|
9507
8861
|
},
|
|
9508
8862
|
{
|
|
9509
8863
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9510
|
-
"line":
|
|
8864
|
+
"line": 322,
|
|
9511
8865
|
"access": "private",
|
|
9512
8866
|
"tagname": "",
|
|
9513
8867
|
"itemtype": "method",
|
|
@@ -9517,7 +8871,7 @@
|
|
|
9517
8871
|
},
|
|
9518
8872
|
{
|
|
9519
8873
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9520
|
-
"line":
|
|
8874
|
+
"line": 353,
|
|
9521
8875
|
"access": "private",
|
|
9522
8876
|
"tagname": "",
|
|
9523
8877
|
"itemtype": "property",
|
|
@@ -9527,7 +8881,7 @@
|
|
|
9527
8881
|
},
|
|
9528
8882
|
{
|
|
9529
8883
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9530
|
-
"line":
|
|
8884
|
+
"line": 362,
|
|
9531
8885
|
"access": "private",
|
|
9532
8886
|
"tagname": "",
|
|
9533
8887
|
"itemtype": "method",
|
|
@@ -9537,7 +8891,7 @@
|
|
|
9537
8891
|
},
|
|
9538
8892
|
{
|
|
9539
8893
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9540
|
-
"line":
|
|
8894
|
+
"line": 370,
|
|
9541
8895
|
"description": "Returns a hash containing the parameters of an ancestor route.\n\nYou may notice that `this.paramsFor` sometimes works when referring to a\nchild route, but this behavior should not be relied upon as only ancestor\nroutes are certain to be loaded in time.\n\nExample\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('member', { path: ':name' }, function() {\n this.route('interest', { path: ':interest' });\n });\n});\n```\n\n```app/routes/member.js\nimport Route from '@ember/routing/route';\n\nexport default class MemberRoute extends Route {\n queryParams = {\n memberQp: { refreshModel: true }\n }\n}\n```\n\n```app/routes/member/interest.js\nimport Route from '@ember/routing/route';\n\nexport default class MemberInterestRoute extends Route {\n queryParams = {\n interestQp: { refreshModel: true }\n }\n\n model() {\n return this.paramsFor('member');\n }\n}\n```\n\nIf we visit `/turing/maths?memberQp=member&interestQp=interest` the model for\nthe `member.interest` route is a hash with:\n\n* `name`: `turing`\n* `memberQp`: `member`",
|
|
9542
8896
|
"itemtype": "method",
|
|
9543
8897
|
"name": "paramsFor",
|
|
@@ -9560,7 +8914,7 @@
|
|
|
9560
8914
|
},
|
|
9561
8915
|
{
|
|
9562
8916
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9563
|
-
"line":
|
|
8917
|
+
"line": 449,
|
|
9564
8918
|
"description": "Serializes the query parameter key",
|
|
9565
8919
|
"itemtype": "method",
|
|
9566
8920
|
"name": "serializeQueryParamKey",
|
|
@@ -9578,7 +8932,7 @@
|
|
|
9578
8932
|
},
|
|
9579
8933
|
{
|
|
9580
8934
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9581
|
-
"line":
|
|
8935
|
+
"line": 460,
|
|
9582
8936
|
"description": "Serializes value of the query parameter based on defaultValueType",
|
|
9583
8937
|
"itemtype": "method",
|
|
9584
8938
|
"name": "serializeQueryParam",
|
|
@@ -9606,7 +8960,7 @@
|
|
|
9606
8960
|
},
|
|
9607
8961
|
{
|
|
9608
8962
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9609
|
-
"line":
|
|
8963
|
+
"line": 476,
|
|
9610
8964
|
"description": "Deserializes value of the query parameter based on defaultValueType",
|
|
9611
8965
|
"itemtype": "method",
|
|
9612
8966
|
"name": "deserializeQueryParam",
|
|
@@ -9634,7 +8988,7 @@
|
|
|
9634
8988
|
},
|
|
9635
8989
|
{
|
|
9636
8990
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9637
|
-
"line":
|
|
8991
|
+
"line": 492,
|
|
9638
8992
|
"access": "private",
|
|
9639
8993
|
"tagname": "",
|
|
9640
8994
|
"itemtype": "property",
|
|
@@ -9644,7 +8998,7 @@
|
|
|
9644
8998
|
},
|
|
9645
8999
|
{
|
|
9646
9000
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9647
|
-
"line":
|
|
9001
|
+
"line": 501,
|
|
9648
9002
|
"description": "A hook you can use to reset controller values either when the model\nchanges or the route is exiting.\n\n```app/routes/articles.js\nimport Route from '@ember/routing/route';\n\nexport default class ArticlesRoute extends Route {\n resetController(controller, isExiting, transition) {\n if (isExiting && transition.targetName !== 'error') {\n controller.set('page', 1);\n }\n }\n}\n```",
|
|
9649
9003
|
"itemtype": "method",
|
|
9650
9004
|
"name": "resetController",
|
|
@@ -9673,7 +9027,7 @@
|
|
|
9673
9027
|
},
|
|
9674
9028
|
{
|
|
9675
9029
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9676
|
-
"line":
|
|
9030
|
+
"line": 528,
|
|
9677
9031
|
"access": "private",
|
|
9678
9032
|
"tagname": "",
|
|
9679
9033
|
"itemtype": "method",
|
|
@@ -9683,7 +9037,7 @@
|
|
|
9683
9037
|
},
|
|
9684
9038
|
{
|
|
9685
9039
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9686
|
-
"line":
|
|
9040
|
+
"line": 539,
|
|
9687
9041
|
"access": "private",
|
|
9688
9042
|
"tagname": "",
|
|
9689
9043
|
"itemtype": "method",
|
|
@@ -9694,7 +9048,7 @@
|
|
|
9694
9048
|
},
|
|
9695
9049
|
{
|
|
9696
9050
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9697
|
-
"line":
|
|
9051
|
+
"line": 552,
|
|
9698
9052
|
"access": "private",
|
|
9699
9053
|
"tagname": "",
|
|
9700
9054
|
"itemtype": "method",
|
|
@@ -9704,7 +9058,7 @@
|
|
|
9704
9058
|
},
|
|
9705
9059
|
{
|
|
9706
9060
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9707
|
-
"line":
|
|
9061
|
+
"line": 563,
|
|
9708
9062
|
"description": "The `willTransition` action is fired at the beginning of any\nattempted transition with a `Transition` object as the sole\nargument. This action can be used for aborting, redirecting,\nor decorating the transition from the currently active routes.\n\nA good example is preventing navigation when a form is\nhalf-filled out:\n\n```app/routes/contact-form.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class ContactFormRoute extends Route {\n @action\n willTransition(transition) {\n if (this.controller.get('userHasEnteredData')) {\n this.controller.displayNavigationConfirm();\n transition.abort();\n }\n }\n}\n```\n\nYou can also redirect elsewhere by calling\n`this.transitionTo('elsewhere')` from within `willTransition`.\nNote that `willTransition` will not be fired for the\nredirecting `transitionTo`, since `willTransition` doesn't\nfire when there is already a transition underway. If you want\nsubsequent `willTransition` actions to fire for the redirecting\ntransition, you must first explicitly call\n`transition.abort()`.\n\nTo allow the `willTransition` event to continue bubbling to the parent\nroute, use `return true;`. When the `willTransition` method has a\nreturn value of `true` then the parent route's `willTransition` method\nwill be fired, enabling \"bubbling\" behavior for the event.",
|
|
9709
9063
|
"itemtype": "event",
|
|
9710
9064
|
"name": "willTransition",
|
|
@@ -9723,7 +9077,7 @@
|
|
|
9723
9077
|
},
|
|
9724
9078
|
{
|
|
9725
9079
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9726
|
-
"line":
|
|
9080
|
+
"line": 607,
|
|
9727
9081
|
"description": "The `didTransition` action is fired after a transition has\nsuccessfully been completed. This occurs after the normal model\nhooks (`beforeModel`, `model`, `afterModel`, `setupController`)\nhave resolved. The `didTransition` action has no arguments,\nhowever, it can be useful for tracking page views or resetting\nstate on the controller.\n\n```app/routes/login.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class LoginRoute extends Route {\n @action\n didTransition() {\n this.controller.get('errors.base').clear();\n return true; // Bubble the didTransition event\n }\n}\n```",
|
|
9728
9082
|
"itemtype": "event",
|
|
9729
9083
|
"name": "didTransition",
|
|
@@ -9735,7 +9089,7 @@
|
|
|
9735
9089
|
},
|
|
9736
9090
|
{
|
|
9737
9091
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9738
|
-
"line":
|
|
9092
|
+
"line": 633,
|
|
9739
9093
|
"description": "The `loading` action is fired on the route when a route's `model`\nhook returns a promise that is not already resolved. The current\n`Transition` object is the first parameter and the route that\ntriggered the loading event is the second parameter.\n\n```app/routes/application.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class ApplicationRoute extends Route {\n @action\n loading(transition, route) {\n let controller = this.controllerFor('foo');\n\n // The controller may not be instantiated when initially loading\n if (controller) {\n controller.currentlyLoading = true;\n\n transition.finally(function() {\n controller.currentlyLoading = false;\n });\n }\n }\n}\n```",
|
|
9740
9094
|
"itemtype": "event",
|
|
9741
9095
|
"name": "loading",
|
|
@@ -9759,7 +9113,7 @@
|
|
|
9759
9113
|
},
|
|
9760
9114
|
{
|
|
9761
9115
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9762
|
-
"line":
|
|
9116
|
+
"line": 667,
|
|
9763
9117
|
"description": "When attempting to transition into a route, any of the hooks\nmay return a promise that rejects, at which point an `error`\naction will be fired on the partially-entered routes, allowing\nfor per-route error handling logic, or shared error handling\nlogic defined on a parent route.\n\nHere is an example of an error handler that will be invoked\nfor rejected promises from the various hooks on the route,\nas well as any unhandled errors from child routes:\n\n```app/routes/admin.js\nimport { reject } from 'rsvp';\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class AdminRoute extends Route {\n beforeModel() {\n return reject('bad things!');\n }\n\n @action\n error(error, transition) {\n // Assuming we got here due to the error in `beforeModel`,\n // we can expect that error === \"bad things!\",\n // but a promise model rejecting would also\n // call this hook, as would any errors encountered\n // in `afterModel`.\n\n // The `error` hook is also provided the failed\n // `transition`, which can be stored and later\n // `.retry()`d if desired.\n\n this.transitionTo('login');\n }\n}\n```\n\n`error` actions that bubble up all the way to `ApplicationRoute`\nwill fire a default error handler that logs the error. You can\nspecify your own global default error handler by overriding the\n`error` handler on `ApplicationRoute`:\n\n```app/routes/application.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class ApplicationRoute extends Route {\n @action\n error(error, transition) {\n this.controllerFor('banner').displayError(error.message);\n }\n}\n```",
|
|
9764
9118
|
"itemtype": "event",
|
|
9765
9119
|
"name": "error",
|
|
@@ -9783,7 +9137,7 @@
|
|
|
9783
9137
|
},
|
|
9784
9138
|
{
|
|
9785
9139
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9786
|
-
"line":
|
|
9140
|
+
"line": 728,
|
|
9787
9141
|
"description": "This event is triggered when the router enters the route. It is\nnot executed when the model for the route changes.\n\n```app/routes/application.js\nimport { on } from '@ember/object/evented';\nimport Route from '@ember/routing/route';\n\nexport default Route.extend({\n collectAnalytics: on('activate', function(){\n collectAnalytics();\n })\n});\n```",
|
|
9788
9142
|
"itemtype": "event",
|
|
9789
9143
|
"name": "activate",
|
|
@@ -9795,7 +9149,7 @@
|
|
|
9795
9149
|
},
|
|
9796
9150
|
{
|
|
9797
9151
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9798
|
-
"line":
|
|
9152
|
+
"line": 748,
|
|
9799
9153
|
"description": "This event is triggered when the router completely exits this\nroute. It is not executed when the model for the route changes.\n\n```app/routes/index.js\nimport { on } from '@ember/object/evented';\nimport Route from '@ember/routing/route';\n\nexport default Route.extend({\n trackPageLeaveAnalytics: on('deactivate', function(){\n trackPageLeaveAnalytics();\n })\n});\n```",
|
|
9800
9154
|
"itemtype": "event",
|
|
9801
9155
|
"name": "deactivate",
|
|
@@ -9807,7 +9161,7 @@
|
|
|
9807
9161
|
},
|
|
9808
9162
|
{
|
|
9809
9163
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9810
|
-
"line":
|
|
9164
|
+
"line": 768,
|
|
9811
9165
|
"description": "This hook is executed when the router completely exits this route. It is\nnot executed when the model for the route changes.",
|
|
9812
9166
|
"itemtype": "method",
|
|
9813
9167
|
"name": "deactivate",
|
|
@@ -9826,7 +9180,7 @@
|
|
|
9826
9180
|
},
|
|
9827
9181
|
{
|
|
9828
9182
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9829
|
-
"line":
|
|
9183
|
+
"line": 779,
|
|
9830
9184
|
"description": "This hook is executed when the router enters the route. It is not executed\nwhen the model for the route changes.",
|
|
9831
9185
|
"itemtype": "method",
|
|
9832
9186
|
"name": "activate",
|
|
@@ -9845,7 +9199,7 @@
|
|
|
9845
9199
|
},
|
|
9846
9200
|
{
|
|
9847
9201
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9848
|
-
"line":
|
|
9202
|
+
"line": 790,
|
|
9849
9203
|
"description": "Transition the application into another route. The route may\nbe either a single route or route path:\n\n```javascript\nthis.transitionTo('blogPosts');\nthis.transitionTo('blogPosts.recentEntries');\n```\n\nOptionally supply a model for the route in question. The model\nwill be serialized into the URL using the `serialize` hook of\nthe route:\n\n```javascript\nthis.transitionTo('blogPost', aPost);\n```\n\nIf a literal is passed (such as a number or a string), it will\nbe treated as an identifier instead. In this case, the `model`\nhook of the route will be triggered:\n\n```javascript\nthis.transitionTo('blogPost', 1);\n```\n\nMultiple models will be applied last to first recursively up the\nroute tree.\n\n```app/routes.js\n// ...\n\nRouter.map(function() {\n this.route('blogPost', { path:':blogPostId' }, function() {\n this.route('blogComment', { path: ':blogCommentId' });\n });\n});\n\nexport default Router;\n```\n\n```javascript\nthis.transitionTo('blogComment', aPost, aComment);\nthis.transitionTo('blogComment', 1, 13);\n```\n\nIt is also possible to pass a URL (a string that starts with a\n`/`).\n\n```javascript\nthis.transitionTo('/');\nthis.transitionTo('/blog/post/1/comment/13');\nthis.transitionTo('/blog/posts?sort=title');\n```\n\nAn options hash with a `queryParams` property may be provided as\nthe final argument to add query parameters to the destination URL.\n\n```javascript\nthis.transitionTo('blogPost', 1, {\n queryParams: { showComments: 'true' }\n});\n\n// if you just want to transition the query parameters without changing the route\nthis.transitionTo({ queryParams: { sort: 'date' } });\n```\n\nSee also [replaceWith](#method_replaceWith).\n\nSimple Transition Example\n\n```app/routes.js\n// ...\n\nRouter.map(function() {\n this.route('index');\n this.route('secret');\n this.route('fourOhFour', { path: '*:' });\n});\n\nexport default Router;\n```\n\n```app/routes/index.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class IndexRoute extends Route {\n @action\n moveToSecret(context) {\n if (authorized()) {\n this.transitionTo('secret', context);\n } else {\n this.transitionTo('fourOhFour');\n }\n }\n}\n```\n\nTransition to a nested route\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('articles', { path: '/articles' }, function() {\n this.route('new');\n });\n});\n\nexport default Router;\n```\n\n```app/routes/index.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class IndexRoute extends Route {\n @action\n transitionToNewArticle() {\n this.transitionTo('articles.new');\n }\n}\n```\n\nMultiple Models Example\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('index');\n\n this.route('breakfast', { path: ':breakfastId' }, function() {\n this.route('cereal', { path: ':cerealId' });\n });\n});\n\nexport default Router;\n```\n\n```app/routes/index.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class IndexRoute extends Route {\n @action\n moveToChocolateCereal() {\n let cereal = { cerealId: 'ChocolateYumminess' };\n let breakfast = { breakfastId: 'CerealAndMilk' };\n\n this.transitionTo('breakfast.cereal', breakfast, cereal);\n }\n}\n```\n\nNested Route with Query String Example\n\n```app/routes.js\n// ...\n\nRouter.map(function() {\n this.route('fruits', function() {\n this.route('apples');\n });\n});\n\nexport default Router;\n```\n\n```app/routes/index.js\nimport Route from '@ember/routing/route';\n\nexport default class IndexRoute extends Route {\n @action\n transitionToApples() {\n this.transitionTo('fruits.apples', { queryParams: { color: 'red' } });\n }\n}\n```",
|
|
9850
9204
|
"itemtype": "method",
|
|
9851
9205
|
"name": "transitionTo",
|
|
@@ -9883,7 +9237,7 @@
|
|
|
9883
9237
|
},
|
|
9884
9238
|
{
|
|
9885
9239
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9886
|
-
"line":
|
|
9240
|
+
"line": 988,
|
|
9887
9241
|
"description": "Perform a synchronous transition into another route without attempting\nto resolve promises, update the URL, or abort any currently active\nasynchronous transitions (i.e. regular transitions caused by\n`transitionTo` or URL changes).\n\nThis method is handy for performing intermediate transitions on the\nway to a final destination route, and is called internally by the\ndefault implementations of the `error` and `loading` handlers.",
|
|
9888
9242
|
"itemtype": "method",
|
|
9889
9243
|
"name": "intermediateTransitionTo",
|
|
@@ -9907,7 +9261,7 @@
|
|
|
9907
9261
|
},
|
|
9908
9262
|
{
|
|
9909
9263
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9910
|
-
"line":
|
|
9264
|
+
"line": 1010,
|
|
9911
9265
|
"description": "Refresh the model on this route and any child routes, firing the\n`beforeModel`, `model`, and `afterModel` hooks in a similar fashion\nto how routes are entered when transitioning in from other route.\nThe current route params (e.g. `article_id`) will be passed in\nto the respective model hooks, and if a different model is returned,\n`setupController` and associated route hooks will re-fire as well.\n\nAn example usage of this method is re-querying the server for the\nlatest information using the same parameters as when the route\nwas first entered.\n\nNote that this will cause `model` hooks to fire even on routes\nthat were provided a model object when the route was initially\nentered.",
|
|
9912
9266
|
"itemtype": "method",
|
|
9913
9267
|
"name": "refresh",
|
|
@@ -9923,7 +9277,7 @@
|
|
|
9923
9277
|
},
|
|
9924
9278
|
{
|
|
9925
9279
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9926
|
-
"line":
|
|
9280
|
+
"line": 1036,
|
|
9927
9281
|
"description": "Transition into another route while replacing the current URL, if possible.\nThis will replace the current history entry instead of adding a new one.\nBeside that, it is identical to `transitionTo` in all other respects. See\n'transitionTo' for additional information regarding multiple models.\n\nExample\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('index');\n this.route('secret');\n});\n\nexport default Router;\n```\n\n```app/routes/secret.js\nimport Route from '@ember/routing/route';\n\nexport default class SecretRoute Route {\n afterModel() {\n if (!authorized()){\n this.replaceWith('index');\n }\n }\n}\n```",
|
|
9928
9282
|
"itemtype": "method",
|
|
9929
9283
|
"name": "replaceWith",
|
|
@@ -9957,7 +9311,7 @@
|
|
|
9957
9311
|
},
|
|
9958
9312
|
{
|
|
9959
9313
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9960
|
-
"line":
|
|
9314
|
+
"line": 1083,
|
|
9961
9315
|
"description": "This hook is the entry point for router.js",
|
|
9962
9316
|
"access": "private",
|
|
9963
9317
|
"tagname": "",
|
|
@@ -9968,7 +9322,7 @@
|
|
|
9968
9322
|
},
|
|
9969
9323
|
{
|
|
9970
9324
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9971
|
-
"line":
|
|
9325
|
+
"line": 1163,
|
|
9972
9326
|
"description": "This hook is the first of the route entry validation hooks\ncalled when an attempt is made to transition into a route\nor one of its children. It is called before `model` and\n`afterModel`, and is appropriate for cases when:\n\n1) A decision can be made to redirect elsewhere without\n needing to resolve the model first.\n2) Any async operations need to occur first before the\n model is attempted to be resolved.\n\nThis hook is provided the current `transition` attempt\nas a parameter, which can be used to `.abort()` the transition,\nsave it for a later `.retry()`, or retrieve values set\non it from a previous hook. You can also just call\n`this.transitionTo` to another route to implicitly\nabort the `transition`.\n\nYou can return a promise from this hook to pause the\ntransition until the promise resolves (or rejects). This could\nbe useful, for instance, for retrieving async code from\nthe server that is required to enter a route.",
|
|
9973
9327
|
"itemtype": "method",
|
|
9974
9328
|
"name": "beforeModel",
|
|
@@ -9991,7 +9345,7 @@
|
|
|
9991
9345
|
},
|
|
9992
9346
|
{
|
|
9993
9347
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
9994
|
-
"line":
|
|
9348
|
+
"line": 1197,
|
|
9995
9349
|
"description": "This hook is called after this route's model has resolved.\nIt follows identical async/promise semantics to `beforeModel`\nbut is provided the route's resolved model in addition to\nthe `transition`, and is therefore suited to performing\nlogic that can only take place after the model has already\nresolved.\n\n```app/routes/posts.js\nimport Route from '@ember/routing/route';\n\nexport default class PostsRoute extends Route {\n afterModel(posts, transition) {\n if (posts.get('length') === 1) {\n this.transitionTo('post.show', posts.get('firstObject'));\n }\n }\n}\n```\n\nRefer to documentation for `beforeModel` for a description\nof transition-pausing semantics when a promise is returned\nfrom this hook.",
|
|
9996
9350
|
"itemtype": "method",
|
|
9997
9351
|
"name": "afterModel",
|
|
@@ -10019,7 +9373,7 @@
|
|
|
10019
9373
|
},
|
|
10020
9374
|
{
|
|
10021
9375
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10022
|
-
"line":
|
|
9376
|
+
"line": 1234,
|
|
10023
9377
|
"description": "A hook you can implement to optionally redirect to another route.\n\nCalling `this.transitionTo` from inside of the `redirect` hook will\nabort the current transition (into the route that has implemented `redirect`).\n\n`redirect` and `afterModel` behave very similarly and are\ncalled almost at the same time, but they have an important\ndistinction when calling `this.transitionTo` to a child route\nof the current route. From `afterModel`, this new transition\ninvalidates the current transition, causing `beforeModel`,\n`model`, and `afterModel` hooks to be called again. But the\nsame transition started from `redirect` does _not_ invalidate\nthe current transition. In other words, by the time the `redirect`\nhook has been called, both the resolved model and the attempted\nentry into this route are considered fully validated.",
|
|
10024
9378
|
"itemtype": "method",
|
|
10025
9379
|
"name": "redirect",
|
|
@@ -10043,7 +9397,7 @@
|
|
|
10043
9397
|
},
|
|
10044
9398
|
{
|
|
10045
9399
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10046
|
-
"line":
|
|
9400
|
+
"line": 1259,
|
|
10047
9401
|
"description": "Called when the context is changed by router.js.",
|
|
10048
9402
|
"access": "private",
|
|
10049
9403
|
"tagname": "",
|
|
@@ -10054,7 +9408,7 @@
|
|
|
10054
9408
|
},
|
|
10055
9409
|
{
|
|
10056
9410
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10057
|
-
"line":
|
|
9411
|
+
"line": 1269,
|
|
10058
9412
|
"description": "A hook you can implement to convert the URL into the model for\nthis route.\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('post', { path: '/posts/:post_id' });\n});\n\nexport default Router;\n```\n\nThe model for the `post` route is `store.findRecord('post', params.post_id)`.\n\nBy default, if your route has a dynamic segment ending in `_id`:\n\n* The model class is determined from the segment (`post_id`'s\n class is `App.Post`)\n* The find method is called on the model class with the value of\n the dynamic segment.\n\nNote that for routes with dynamic segments, this hook is not always\nexecuted. If the route is entered through a transition (e.g. when\nusing the `link-to` Handlebars helper or the `transitionTo` method\nof routes), and a model context is already provided this hook\nis not called.\n\nA model context does not include a primitive string or number,\nwhich does cause the model hook to be called.\n\nRoutes without dynamic segments will always execute the model hook.\n\n```javascript\n// no dynamic segment, model hook always called\nthis.transitionTo('posts');\n\n// model passed in, so model hook not called\nthePost = store.findRecord('post', 1);\nthis.transitionTo('post', thePost);\n\n// integer passed in, model hook is called\nthis.transitionTo('post', 1);\n\n// model id passed in, model hook is called\n// useful for forcing the hook to execute\nthePost = store.findRecord('post', 1);\nthis.transitionTo('post', thePost.id);\n```\n\nThis hook follows the asynchronous/promise semantics\ndescribed in the documentation for `beforeModel`. In particular,\nif a promise returned from `model` fails, the error will be\nhandled by the `error` hook on `Route`.\n\nExample\n\n```app/routes/post.js\nimport Route from '@ember/routing/route';\n\nexport default class PostRoute extends Route {\n model(params) {\n return this.store.findRecord('post', params.post_id);\n }\n}\n```",
|
|
10059
9413
|
"itemtype": "method",
|
|
10060
9414
|
"name": "model",
|
|
@@ -10082,7 +9436,7 @@
|
|
|
10082
9436
|
},
|
|
10083
9437
|
{
|
|
10084
9438
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10085
|
-
"line":
|
|
9439
|
+
"line": 1378,
|
|
10086
9440
|
"access": "private",
|
|
10087
9441
|
"tagname": "",
|
|
10088
9442
|
"itemtype": "method",
|
|
@@ -10108,7 +9462,7 @@
|
|
|
10108
9462
|
},
|
|
10109
9463
|
{
|
|
10110
9464
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10111
|
-
"line":
|
|
9465
|
+
"line": 1391,
|
|
10112
9466
|
"itemtype": "method",
|
|
10113
9467
|
"name": "findModel",
|
|
10114
9468
|
"params": [
|
|
@@ -10130,7 +9484,7 @@
|
|
|
10130
9484
|
},
|
|
10131
9485
|
{
|
|
10132
9486
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10133
|
-
"line":
|
|
9487
|
+
"line": 1402,
|
|
10134
9488
|
"description": "A hook you can use to setup the controller for the current route.\n\nThis method is called with the controller for the current route and the\nmodel supplied by the `model` hook.\n\nBy default, the `setupController` hook sets the `model` property of\nthe controller to the specified `model` when it is not `undefined`.\n\nIf you implement the `setupController` hook in your Route, it will\nprevent this default behavior. If you want to preserve that behavior\nwhen implementing your `setupController` function, make sure to call\n`super`:\n\n```app/routes/photos.js\nimport Route from '@ember/routing/route';\n\nexport default class PhotosRoute extends Route {\n model() {\n return this.store.findAll('photo');\n }\n\n setupController(controller, model) {\n super.setupController(controller, model);\n\n this.controllerFor('application').set('showingPhotos', true);\n }\n}\n```\n\nThe provided controller will be one resolved based on the name\nof this route.\n\nIf no explicit controller is defined, Ember will automatically create one.\n\nAs an example, consider the router:\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('post', { path: '/posts/:post_id' });\n});\n\nexport default Router;\n```\n\nIf you have defined a file for the post controller,\nthe framework will use it.\nIf it is not defined, a basic `Controller` instance would be used.",
|
|
10135
9489
|
"example": [
|
|
10136
9490
|
" Behavior of a basic Controller\n\n```app/routes/post.js\nimport Route from '@ember/routing/route';\n\nexport default class PostRoute extends Route {\n setupController(controller, model) {\n controller.set('model', model);\n }\n});\n```"
|
|
@@ -10163,7 +9517,7 @@
|
|
|
10163
9517
|
},
|
|
10164
9518
|
{
|
|
10165
9519
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10166
|
-
"line":
|
|
9520
|
+
"line": 1479,
|
|
10167
9521
|
"description": "Returns the controller of the current route, or a parent (or any ancestor)\nroute in a route hierarchy.\n\nThe controller instance must already have been created, either through entering the\nassociated route or using `generateController`.\n\n```app/routes/post.js\nimport Route from '@ember/routing/route';\n\nexport default class PostRoute extends Route {\n setupController(controller, post) {\n super.setupController(controller, post);\n\n this.controllerFor('posts').set('currentPost', post);\n }\n}\n```",
|
|
10168
9522
|
"itemtype": "method",
|
|
10169
9523
|
"name": "controllerFor",
|
|
@@ -10186,7 +9540,7 @@
|
|
|
10186
9540
|
},
|
|
10187
9541
|
{
|
|
10188
9542
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10189
|
-
"line":
|
|
9543
|
+
"line": 1525,
|
|
10190
9544
|
"description": "Generates a controller for a route.\n\nExample\n\n```app/routes/post.js\nimport Route from '@ember/routing/route';\n\nexport default class Post extends Route {\n setupController(controller, post) {\n super.setupController(controller, post);\n\n this.generateController('posts');\n }\n}\n```",
|
|
10191
9545
|
"itemtype": "method",
|
|
10192
9546
|
"name": "generateController",
|
|
@@ -10204,7 +9558,7 @@
|
|
|
10204
9558
|
},
|
|
10205
9559
|
{
|
|
10206
9560
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10207
|
-
"line":
|
|
9561
|
+
"line": 1552,
|
|
10208
9562
|
"description": "Returns the resolved model of a parent (or any ancestor) route\nin a route hierarchy. During a transition, all routes\nmust resolve a model object, and if a route\nneeds access to a parent route's model in order to\nresolve a model (or just reuse the model from a parent),\nit can call `this.modelFor(theNameOfParentRoute)` to\nretrieve it. If the ancestor route's model was a promise,\nits resolved result is returned.\n\nExample\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('post', { path: '/posts/:post_id' }, function() {\n this.route('comments');\n });\n});\n\nexport default Router;\n```\n\n```app/routes/post/comments.js\nimport Route from '@ember/routing/route';\n\nexport default class PostCommentsRoute extends Route {\n model() {\n let post = this.modelFor('post');\n\n return post.comments;\n }\n}\n```",
|
|
10209
9563
|
"itemtype": "method",
|
|
10210
9564
|
"name": "modelFor",
|
|
@@ -10227,7 +9581,7 @@
|
|
|
10227
9581
|
},
|
|
10228
9582
|
{
|
|
10229
9583
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10230
|
-
"line":
|
|
9584
|
+
"line": 1623,
|
|
10231
9585
|
"description": "`this[RENDER]` is used to render a template into a region of another template\n(indicated by an `{{outlet}}`).",
|
|
10232
9586
|
"itemtype": "method",
|
|
10233
9587
|
"name": "this[RENDER]",
|
|
@@ -10277,7 +9631,7 @@
|
|
|
10277
9631
|
},
|
|
10278
9632
|
{
|
|
10279
9633
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10280
|
-
"line":
|
|
9634
|
+
"line": 1650,
|
|
10281
9635
|
"access": "private",
|
|
10282
9636
|
"tagname": "",
|
|
10283
9637
|
"itemtype": "method",
|
|
@@ -10287,7 +9641,7 @@
|
|
|
10287
9641
|
},
|
|
10288
9642
|
{
|
|
10289
9643
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10290
|
-
"line":
|
|
9644
|
+
"line": 1663,
|
|
10291
9645
|
"description": "Allows you to produce custom metadata for the route.\nThe return value of this method will be attached to\nits corresponding RouteInfoWithAttributes object.\n\nExample\n\n```app/routes/posts/index.js\nimport Route from '@ember/routing/route';\n\nexport default class PostsIndexRoute extends Route {\n buildRouteInfoMetadata() {\n return { title: 'Posts Page' }\n }\n}\n```\n\n```app/routes/application.js\nimport Route from '@ember/routing/route';\nimport { inject as service } from '@ember/service';\n\nexport default class ApplicationRoute extends Route {\n @service router\n\n constructor() {\n super(...arguments);\n\n this.router.on('routeDidChange', transition => {\n document.title = transition.to.metadata.title;\n // would update document's title to \"Posts Page\"\n });\n }\n}\n```",
|
|
10292
9646
|
"itemtype": "method",
|
|
10293
9647
|
"name": "buildRouteInfoMetadata",
|
|
@@ -10302,7 +9656,7 @@
|
|
|
10302
9656
|
},
|
|
10303
9657
|
{
|
|
10304
9658
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10305
|
-
"line":
|
|
9659
|
+
"line": 1713,
|
|
10306
9660
|
"description": "Store property provides a hook for data persistence libraries to inject themselves.\n\nBy default, this store property provides the exact same functionality previously\nin the model hook.\n\nCurrently, the required interface is:\n\n`store.find(modelName, findArguments)`",
|
|
10307
9661
|
"itemtype": "property",
|
|
10308
9662
|
"name": "store",
|
|
@@ -10314,7 +9668,7 @@
|
|
|
10314
9668
|
},
|
|
10315
9669
|
{
|
|
10316
9670
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10317
|
-
"line":
|
|
9671
|
+
"line": 1761,
|
|
10318
9672
|
"access": "private",
|
|
10319
9673
|
"tagname": "",
|
|
10320
9674
|
"itemtype": "property",
|
|
@@ -10324,7 +9678,7 @@
|
|
|
10324
9678
|
},
|
|
10325
9679
|
{
|
|
10326
9680
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10327
|
-
"line":
|
|
9681
|
+
"line": 1891,
|
|
10328
9682
|
"description": "Sends an action to the router, which will delegate it to the currently\nactive route hierarchy per the bubbling rules explained under `actions`.\n\nExample\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('index');\n});\n\nexport default Router;\n```\n\n```app/routes/application.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class ApplicationRoute extends Route {\n @action\n track(arg) {\n console.log(arg, 'was clicked');\n }\n}\n```\n\n```app/routes/index.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class IndexRoute extends Route {\n @action\n trackIfDebug(arg) {\n if (debug) {\n this.send('track', arg);\n }\n }\n}\n```",
|
|
10329
9683
|
"itemtype": "method",
|
|
10330
9684
|
"name": "send",
|
|
@@ -10348,7 +9702,7 @@
|
|
|
10348
9702
|
},
|
|
10349
9703
|
{
|
|
10350
9704
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10351
|
-
"line":
|
|
9705
|
+
"line": 2218,
|
|
10352
9706
|
"description": "A hook you can implement to convert the route's model into parameters\nfor the URL.\n\n```app/router.js\n// ...\n\nRouter.map(function() {\n this.route('post', { path: '/posts/:post_id' });\n});\n\n```\n\n```app/routes/post.js\nimport Route from '@ember/routing/route';\n\nexport default class PostRoute extends Route {\n model({ post_id }) {\n // the server returns `{ id: 12 }`\n return fetch(`/posts/${post_id}`;\n }\n\n serialize(model) {\n // this will make the URL `/posts/12`\n return { post_id: model.id };\n }\n}\n```\n\nThe default `serialize` method will insert the model's `id` into the\nroute's dynamic segment (in this case, `:post_id`) if the segment contains '_id'.\nIf the route has multiple dynamic segments or does not contain '_id', `serialize`\nwill return `getProperties(model, params)`\n\nThis method is called when `transitionTo` is called with a context\nin order to populate the URL.",
|
|
10353
9707
|
"itemtype": "method",
|
|
10354
9708
|
"name": "serialize",
|
|
@@ -10376,7 +9730,7 @@
|
|
|
10376
9730
|
},
|
|
10377
9731
|
{
|
|
10378
9732
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10379
|
-
"line":
|
|
9733
|
+
"line": 2288,
|
|
10380
9734
|
"description": "The controller associated with this route.\n\nExample\n\n```app/routes/form.js\nimport Route from '@ember/routing/route';\nimport { action } from '@ember/object';\n\nexport default class FormRoute extends Route {\n @action\n willTransition(transition) {\n if (this.controller.get('userHasEnteredData') &&\n !confirm('Are you sure you want to abandon progress?')) {\n transition.abort();\n } else {\n // Bubble the `willTransition` action so that\n // parent routes can decide whether or not to abort.\n return true;\n }\n }\n}\n```",
|
|
10381
9735
|
"itemtype": "property",
|
|
10382
9736
|
"name": "controller",
|
|
@@ -10389,7 +9743,7 @@
|
|
|
10389
9743
|
},
|
|
10390
9744
|
{
|
|
10391
9745
|
"file": "packages/@ember/-internals/routing/lib/system/route.ts",
|
|
10392
|
-
"line":
|
|
9746
|
+
"line": 2319,
|
|
10393
9747
|
"description": "This action is called when one or more query params have changed. Bubbles.",
|
|
10394
9748
|
"itemtype": "method",
|
|
10395
9749
|
"name": "queryParamsDidChange",
|
|
@@ -10421,7 +9775,7 @@
|
|
|
10421
9775
|
},
|
|
10422
9776
|
{
|
|
10423
9777
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10424
|
-
"line":
|
|
9778
|
+
"line": 136,
|
|
10425
9779
|
"description": "Represents the URL of the root of the application, often '/'. This prefix is\n assumed on all routes defined on this router.",
|
|
10426
9780
|
"itemtype": "property",
|
|
10427
9781
|
"name": "rootURL",
|
|
@@ -10433,7 +9787,7 @@
|
|
|
10433
9787
|
},
|
|
10434
9788
|
{
|
|
10435
9789
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10436
|
-
"line":
|
|
9790
|
+
"line": 147,
|
|
10437
9791
|
"description": "The `location` property determines the type of URL's that your\n application will use.\n\n The following location types are currently available:\n\n * `history` - use the browser's history API to make the URLs look just like any standard URL\n * `hash` - use `#` to separate the server part of the URL from the Ember part: `/blog/#/posts/new`\n * `none` - do not store the Ember URL in the actual browser URL (mainly used for testing)\n * `auto` - use the best option based on browser capabilities: `history` if possible, then `hash` if possible, otherwise `none`\n\n This value is defaulted to `auto` by the `locationType` setting of `/config/environment.js`",
|
|
10438
9792
|
"itemtype": "property",
|
|
10439
9793
|
"name": "location",
|
|
@@ -10448,7 +9802,7 @@
|
|
|
10448
9802
|
},
|
|
10449
9803
|
{
|
|
10450
9804
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10451
|
-
"line":
|
|
9805
|
+
"line": 203,
|
|
10452
9806
|
"description": "The `Router.map` function allows you to define mappings from URLs to routes\nin your application. These mappings are defined within the\nsupplied callback function using `this.route`.\n\nThe first parameter is the name of the route which is used by default as the\npath name as well.\n\nThe second parameter is the optional options hash. Available options are:\n\n * `path`: allows you to provide your own path as well as mark dynamic\n segments.\n * `resetNamespace`: false by default; when nesting routes, ember will\n combine the route names to form the fully-qualified route name, which is\n used with `{{link-to}}` or manually transitioning to routes. Setting\n `resetNamespace: true` will cause the route not to inherit from its\n parent route's names. This is handy for preventing extremely long route names.\n Keep in mind that the actual URL path behavior is still retained.\n\nThe third parameter is a function, which can be used to nest routes.\nNested routes, by default, will have the parent route tree's route name and\npath prepended to it's own.\n\n```app/router.js\nRouter.map(function(){\n this.route('post', { path: '/post/:post_id' }, function() {\n this.route('edit');\n this.route('comments', { resetNamespace: true }, function() {\n this.route('new');\n });\n });\n});\n```",
|
|
10453
9807
|
"itemtype": "method",
|
|
10454
9808
|
"name": "map",
|
|
@@ -10465,7 +9819,7 @@
|
|
|
10465
9819
|
},
|
|
10466
9820
|
{
|
|
10467
9821
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10468
|
-
"line":
|
|
9822
|
+
"line": 525,
|
|
10469
9823
|
"description": "Initializes the current router instance and sets up the change handling\nevent listeners used by the instances `location` implementation.\n\nA property named `initialURL` will be used to determine the initial URL.\nIf no value is found `/` will be used.",
|
|
10470
9824
|
"itemtype": "method",
|
|
10471
9825
|
"name": "startRouting",
|
|
@@ -10476,7 +9830,7 @@
|
|
|
10476
9830
|
},
|
|
10477
9831
|
{
|
|
10478
9832
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10479
|
-
"line":
|
|
9833
|
+
"line": 647,
|
|
10480
9834
|
"description": "Transition the application into another route. The route may\nbe either a single route or route path:\n\nSee [transitionTo](/ember/release/classes/Route/methods/transitionTo?anchor=transitionTo) for more info.",
|
|
10481
9835
|
"itemtype": "method",
|
|
10482
9836
|
"name": "transitionTo",
|
|
@@ -10509,7 +9863,7 @@
|
|
|
10509
9863
|
},
|
|
10510
9864
|
{
|
|
10511
9865
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10512
|
-
"line":
|
|
9866
|
+
"line": 704,
|
|
10513
9867
|
"description": "Determines if the supplied route is currently active.",
|
|
10514
9868
|
"itemtype": "method",
|
|
10515
9869
|
"name": "isActive",
|
|
@@ -10530,7 +9884,7 @@
|
|
|
10530
9884
|
},
|
|
10531
9885
|
{
|
|
10532
9886
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10533
|
-
"line":
|
|
9887
|
+
"line": 716,
|
|
10534
9888
|
"description": "An alternative form of `isActive` that doesn't require\nmanual concatenation of the arguments into a single\narray.",
|
|
10535
9889
|
"itemtype": "method",
|
|
10536
9890
|
"name": "isActiveIntent",
|
|
@@ -10560,7 +9914,7 @@
|
|
|
10560
9914
|
},
|
|
10561
9915
|
{
|
|
10562
9916
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10563
|
-
"line":
|
|
9917
|
+
"line": 738,
|
|
10564
9918
|
"description": "Does this router instance have the given route.",
|
|
10565
9919
|
"itemtype": "method",
|
|
10566
9920
|
"name": "hasRoute",
|
|
@@ -10575,7 +9929,7 @@
|
|
|
10575
9929
|
},
|
|
10576
9930
|
{
|
|
10577
9931
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10578
|
-
"line":
|
|
9932
|
+
"line": 749,
|
|
10579
9933
|
"description": "Resets the state of the router by clearing the current route\nhandlers and deactivating them.",
|
|
10580
9934
|
"access": "private",
|
|
10581
9935
|
"tagname": "",
|
|
@@ -10586,7 +9940,7 @@
|
|
|
10586
9940
|
},
|
|
10587
9941
|
{
|
|
10588
9942
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10589
|
-
"line":
|
|
9943
|
+
"line": 857,
|
|
10590
9944
|
"description": "Serializes the given query params according to their QP meta information.",
|
|
10591
9945
|
"access": "private",
|
|
10592
9946
|
"tagname": "",
|
|
@@ -10613,7 +9967,7 @@
|
|
|
10613
9967
|
},
|
|
10614
9968
|
{
|
|
10615
9969
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10616
|
-
"line":
|
|
9970
|
+
"line": 884,
|
|
10617
9971
|
"description": "Serializes the value of a query parameter based on a type",
|
|
10618
9972
|
"access": "private",
|
|
10619
9973
|
"tagname": "",
|
|
@@ -10636,7 +9990,7 @@
|
|
|
10636
9990
|
},
|
|
10637
9991
|
{
|
|
10638
9992
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10639
|
-
"line":
|
|
9993
|
+
"line": 902,
|
|
10640
9994
|
"description": "Deserializes the given query params according to their QP meta information.",
|
|
10641
9995
|
"access": "private",
|
|
10642
9996
|
"tagname": "",
|
|
@@ -10663,7 +10017,7 @@
|
|
|
10663
10017
|
},
|
|
10664
10018
|
{
|
|
10665
10019
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10666
|
-
"line":
|
|
10020
|
+
"line": 927,
|
|
10667
10021
|
"description": "Deserializes the value of a query parameter based on a default type",
|
|
10668
10022
|
"access": "private",
|
|
10669
10023
|
"tagname": "",
|
|
@@ -10686,7 +10040,7 @@
|
|
|
10686
10040
|
},
|
|
10687
10041
|
{
|
|
10688
10042
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10689
|
-
"line":
|
|
10043
|
+
"line": 948,
|
|
10690
10044
|
"description": "Removes (prunes) any query params with default values from the given QP\nobject. Default values are determined from the QP meta information per key.",
|
|
10691
10045
|
"access": "private",
|
|
10692
10046
|
"tagname": "",
|
|
@@ -10713,7 +10067,7 @@
|
|
|
10713
10067
|
},
|
|
10714
10068
|
{
|
|
10715
10069
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10716
|
-
"line":
|
|
10070
|
+
"line": 1030,
|
|
10717
10071
|
"description": "Prepares the query params for a URL or Transition. Restores any undefined QP\nkeys/values, serializes all values, and then prunes any default values.",
|
|
10718
10072
|
"access": "private",
|
|
10719
10073
|
"tagname": "",
|
|
@@ -10750,7 +10104,7 @@
|
|
|
10750
10104
|
},
|
|
10751
10105
|
{
|
|
10752
10106
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10753
|
-
"line":
|
|
10107
|
+
"line": 1057,
|
|
10754
10108
|
"description": "Returns the meta information for the query params of a given route. This\nwill be overridden to allow support for lazy routes.",
|
|
10755
10109
|
"access": "private",
|
|
10756
10110
|
"tagname": "",
|
|
@@ -10772,7 +10126,7 @@
|
|
|
10772
10126
|
},
|
|
10773
10127
|
{
|
|
10774
10128
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10775
|
-
"line":
|
|
10129
|
+
"line": 1071,
|
|
10776
10130
|
"description": "Returns a merged query params meta object for a given set of routeInfos.\nUseful for knowing what query params are available for a given route hierarchy.",
|
|
10777
10131
|
"access": "private",
|
|
10778
10132
|
"tagname": "",
|
|
@@ -10794,7 +10148,7 @@
|
|
|
10794
10148
|
},
|
|
10795
10149
|
{
|
|
10796
10150
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10797
|
-
"line":
|
|
10151
|
+
"line": 1136,
|
|
10798
10152
|
"description": "Maps all query param keys to their fully scoped property name of the form\n`controllerName:propName`.",
|
|
10799
10153
|
"access": "private",
|
|
10800
10154
|
"tagname": "",
|
|
@@ -10826,7 +10180,7 @@
|
|
|
10826
10180
|
},
|
|
10827
10181
|
{
|
|
10828
10182
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10829
|
-
"line":
|
|
10183
|
+
"line": 1178,
|
|
10830
10184
|
"description": "Hydrates (adds/restores) any query params that have pre-existing values into\nthe given queryParams hash. This is what allows query params to be \"sticky\"\nand restore their last known values for their scope.",
|
|
10831
10185
|
"access": "private",
|
|
10832
10186
|
"tagname": "",
|
|
@@ -10853,11 +10207,11 @@
|
|
|
10853
10207
|
},
|
|
10854
10208
|
{
|
|
10855
10209
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10856
|
-
"line":
|
|
10210
|
+
"line": 1341,
|
|
10857
10211
|
"description": "Handles updating the paths and notifying any listeners of the URL\nchange.\n\nTriggers the router level `didTransition` hook.\n\nFor example, to notify google analytics when the route changes,\nyou could use this hook. (Note: requires also including GA scripts, etc.)\n\n```javascript\nimport config from './config/environment';\nimport EmberRouter from '@ember/routing/router';\nimport { inject as service } from '@ember/service';\n\nlet Router = EmberRouter.extend({\n location: config.locationType,\n\n router: service(),\n\n didTransition: function() {\n this._super(...arguments);\n\n ga('send', 'pageview', {\n page: this.router.currentURL,\n title: this.router.currentRouteName,\n });\n }\n});\n```",
|
|
10858
10212
|
"itemtype": "method",
|
|
10859
10213
|
"name": "didTransition",
|
|
10860
|
-
"access": "
|
|
10214
|
+
"access": "private",
|
|
10861
10215
|
"tagname": "",
|
|
10862
10216
|
"since": "1.2.0",
|
|
10863
10217
|
"class": "EmberRouter",
|
|
@@ -10865,11 +10219,11 @@
|
|
|
10865
10219
|
},
|
|
10866
10220
|
{
|
|
10867
10221
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10868
|
-
"line":
|
|
10222
|
+
"line": 1378,
|
|
10869
10223
|
"description": "Handles notifying any listeners of an impending URL\nchange.\n\nTriggers the router level `willTransition` hook.",
|
|
10870
10224
|
"itemtype": "method",
|
|
10871
10225
|
"name": "willTransition",
|
|
10872
|
-
"access": "
|
|
10226
|
+
"access": "private",
|
|
10873
10227
|
"tagname": "",
|
|
10874
10228
|
"since": "1.11.0",
|
|
10875
10229
|
"class": "EmberRouter",
|
|
@@ -10877,7 +10231,7 @@
|
|
|
10877
10231
|
},
|
|
10878
10232
|
{
|
|
10879
10233
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10880
|
-
"line":
|
|
10234
|
+
"line": 1391,
|
|
10881
10235
|
"description": "Represents the current URL.",
|
|
10882
10236
|
"itemtype": "property",
|
|
10883
10237
|
"name": "url",
|
|
@@ -10889,7 +10243,7 @@
|
|
|
10889
10243
|
},
|
|
10890
10244
|
{
|
|
10891
10245
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10892
|
-
"line":
|
|
10246
|
+
"line": 1547,
|
|
10893
10247
|
"description": "Finds the name of the substate route if it exists for the given route. A\nsubstate route is of the form `route_state`, such as `foo_loading`.",
|
|
10894
10248
|
"access": "private",
|
|
10895
10249
|
"tagname": "",
|
|
@@ -10914,7 +10268,7 @@
|
|
|
10914
10268
|
},
|
|
10915
10269
|
{
|
|
10916
10270
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10917
|
-
"line":
|
|
10271
|
+
"line": 1566,
|
|
10918
10272
|
"description": "Finds the name of the state route if it exists for the given route. A state\nroute is of the form `route.state`, such as `foo.loading`. Properly Handles\n`application` named routes.",
|
|
10919
10273
|
"access": "private",
|
|
10920
10274
|
"tagname": "",
|
|
@@ -10939,7 +10293,7 @@
|
|
|
10939
10293
|
},
|
|
10940
10294
|
{
|
|
10941
10295
|
"file": "packages/@ember/-internals/routing/lib/system/router.ts",
|
|
10942
|
-
"line":
|
|
10296
|
+
"line": 1586,
|
|
10943
10297
|
"description": "Determines whether or not a route has been defined by checking that the route\nis in the Router's map and the owner has a registration for that route.",
|
|
10944
10298
|
"access": "private",
|
|
10945
10299
|
"tagname": "",
|
|
@@ -13540,7 +12894,7 @@
|
|
|
13540
12894
|
},
|
|
13541
12895
|
{
|
|
13542
12896
|
"file": "packages/@ember/-internals/runtime/lib/mixins/target_action_support.js",
|
|
13543
|
-
"line":
|
|
12897
|
+
"line": 41,
|
|
13544
12898
|
"description": "Send an `action` with an `actionContext` to a `target`. The action, actionContext\nand target will be retrieved from properties of the object. For example:\n\n```javascript\nimport { alias } from '@ember/object/computed';\n\nApp.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {\n target: alias('controller'),\n action: 'save',\n actionContext: alias('context'),\n click() {\n this.triggerAction(); // Sends the `save` action, along with the current context\n // to the current controller\n }\n});\n```\n\nThe `target`, `action`, and `actionContext` can be provided as properties of\nan optional object argument to `triggerAction` as well.\n\n```javascript\nApp.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {\n click() {\n this.triggerAction({\n action: 'save',\n target: this.get('controller'),\n actionContext: this.get('context')\n }); // Sends the `save` action, along with the current context\n // to the current controller\n }\n});\n```\n\nThe `actionContext` defaults to the object you are mixing `TargetActionSupport` into.\nBut `target` and `action` must be specified either as properties or with the argument\nto `triggerAction`, or a combination:\n\n```javascript\nimport { alias } from '@ember/object/computed';\n\nApp.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {\n target: alias('controller'),\n click() {\n this.triggerAction({\n action: 'save'\n }); // Sends the `save` action, along with a reference to `this`,\n // to the current controller\n }\n});\n```",
|
|
13545
12899
|
"itemtype": "method",
|
|
13546
12900
|
"name": "triggerAction",
|
|
@@ -14213,7 +13567,6 @@
|
|
|
14213
13567
|
{
|
|
14214
13568
|
"file": "packages/@ember/-internals/utils/lib/guid.ts",
|
|
14215
13569
|
"line": 8,
|
|
14216
|
-
"description": "Previously we used `Ember.$.uuid`, however `$.uuid` has been removed from\njQuery master. We'll just bootstrap our own uuid now.",
|
|
14217
13570
|
"access": "private",
|
|
14218
13571
|
"tagname": "",
|
|
14219
13572
|
"return": {
|
|
@@ -14225,7 +13578,7 @@
|
|
|
14225
13578
|
},
|
|
14226
13579
|
{
|
|
14227
13580
|
"file": "packages/@ember/-internals/utils/lib/guid.ts",
|
|
14228
|
-
"line":
|
|
13581
|
+
"line": 14,
|
|
14229
13582
|
"description": "Generates a universally unique identifier. This method\nis used internally by Ember for assisting with\nthe generation of GUID's and other unique identifiers.",
|
|
14230
13583
|
"access": "public",
|
|
14231
13584
|
"tagname": "",
|
|
@@ -14238,7 +13591,7 @@
|
|
|
14238
13591
|
},
|
|
14239
13592
|
{
|
|
14240
13593
|
"file": "packages/@ember/-internals/utils/lib/guid.ts",
|
|
14241
|
-
"line":
|
|
13594
|
+
"line": 26,
|
|
14242
13595
|
"description": "Prefix used for guids through out Ember.",
|
|
14243
13596
|
"access": "private",
|
|
14244
13597
|
"tagname": "",
|
|
@@ -14251,7 +13604,7 @@
|
|
|
14251
13604
|
},
|
|
14252
13605
|
{
|
|
14253
13606
|
"file": "packages/@ember/-internals/utils/lib/guid.ts",
|
|
14254
|
-
"line":
|
|
13607
|
+
"line": 39,
|
|
14255
13608
|
"description": "A unique key used to assign guids and other private metadata to objects.\nIf you inspect an object in your browser debugger you will often see these.\nThey can be safely ignored.\n\nOn browsers that support it, these properties are added with enumeration\ndisabled so they won't show up when you iterate over your properties.",
|
|
14256
13609
|
"access": "private",
|
|
14257
13610
|
"tagname": "",
|
|
@@ -14264,7 +13617,7 @@
|
|
|
14264
13617
|
},
|
|
14265
13618
|
{
|
|
14266
13619
|
"file": "packages/@ember/-internals/utils/lib/guid.ts",
|
|
14267
|
-
"line":
|
|
13620
|
+
"line": 55,
|
|
14268
13621
|
"description": "Generates a new guid, optionally saving the guid to the object that you\npass in. You will rarely need to use this method. Instead you should\ncall `guidFor(obj)`, which return an existing guid if available.",
|
|
14269
13622
|
"access": "private",
|
|
14270
13623
|
"tagname": "",
|
|
@@ -14294,7 +13647,7 @@
|
|
|
14294
13647
|
},
|
|
14295
13648
|
{
|
|
14296
13649
|
"file": "packages/@ember/-internals/utils/lib/guid.ts",
|
|
14297
|
-
"line":
|
|
13650
|
+
"line": 83,
|
|
14298
13651
|
"description": "Returns a unique id for the object. If the object does not yet have a guid,\none will be assigned to it. You can call this on any object,\n`EmberObject`-based or not.\n\nYou can also use this method on DOM Element objects.",
|
|
14299
13652
|
"access": "public",
|
|
14300
13653
|
"tagname": "",
|
|
@@ -14481,153 +13834,6 @@
|
|
|
14481
13834
|
"module": "ember",
|
|
14482
13835
|
"namespace": "Ember"
|
|
14483
13836
|
},
|
|
14484
|
-
{
|
|
14485
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
14486
|
-
"line": 143,
|
|
14487
|
-
"description": "Whether the `keyUp` event that triggers an `action` to be sent continues\npropagating to other views.\n\nBy default, when the user presses the return key on their keyboard and\nthe text field has an `action` set, the action will be sent to the view's\ncontroller and the key event will stop propagating.\n\nIf you would like parent views to receive the `keyUp` event even after an\naction has been dispatched, set `bubbles` to true.",
|
|
14488
|
-
"itemtype": "property",
|
|
14489
|
-
"name": "bubbles",
|
|
14490
|
-
"type": "Boolean",
|
|
14491
|
-
"default": "false",
|
|
14492
|
-
"access": "private",
|
|
14493
|
-
"tagname": "",
|
|
14494
|
-
"class": "Ember.TextSupport",
|
|
14495
|
-
"module": "ember",
|
|
14496
|
-
"namespace": "Ember"
|
|
14497
|
-
},
|
|
14498
|
-
{
|
|
14499
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
14500
|
-
"line": 190,
|
|
14501
|
-
"description": "Allows you to specify a controller action to invoke when either the `enter`\nkey is pressed or, in the case of the field being a textarea, when a newline\nis inserted. To use this method, give your field an `insert-newline`\nattribute. The value of that attribute should be the name of the action\nin your controller that you wish to invoke.\n\nFor an example on how to use the `insert-newline` attribute, please\nreference the example near the top of this file.",
|
|
14502
|
-
"itemtype": "method",
|
|
14503
|
-
"name": "insertNewline",
|
|
14504
|
-
"params": [
|
|
14505
|
-
{
|
|
14506
|
-
"name": "event",
|
|
14507
|
-
"description": "",
|
|
14508
|
-
"type": "Event"
|
|
14509
|
-
}
|
|
14510
|
-
],
|
|
14511
|
-
"access": "private",
|
|
14512
|
-
"tagname": "",
|
|
14513
|
-
"class": "Ember.TextSupport",
|
|
14514
|
-
"module": "ember",
|
|
14515
|
-
"namespace": "Ember"
|
|
14516
|
-
},
|
|
14517
|
-
{
|
|
14518
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
14519
|
-
"line": 209,
|
|
14520
|
-
"description": "Allows you to specify a controller action to invoke when the escape button\nis pressed. To use this method, give your field an `escape-press`\nattribute. The value of that attribute should be the name of the action\nin your controller that you wish to invoke.\n\nFor an example on how to use the `escape-press` attribute, please reference\nthe example near the top of this file.",
|
|
14521
|
-
"itemtype": "method",
|
|
14522
|
-
"name": "cancel",
|
|
14523
|
-
"params": [
|
|
14524
|
-
{
|
|
14525
|
-
"name": "event",
|
|
14526
|
-
"description": "",
|
|
14527
|
-
"type": "Event"
|
|
14528
|
-
}
|
|
14529
|
-
],
|
|
14530
|
-
"access": "private",
|
|
14531
|
-
"tagname": "",
|
|
14532
|
-
"class": "Ember.TextSupport",
|
|
14533
|
-
"module": "ember",
|
|
14534
|
-
"namespace": "Ember"
|
|
14535
|
-
},
|
|
14536
|
-
{
|
|
14537
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
14538
|
-
"line": 226,
|
|
14539
|
-
"description": "Allows you to specify a controller action to invoke when a field receives\nfocus. To use this method, give your field a `focus-in` attribute. The value\nof that attribute should be the name of the action in your controller\nthat you wish to invoke.\n\nFor an example on how to use the `focus-in` attribute, please reference the\nexample near the top of this file.",
|
|
14540
|
-
"itemtype": "method",
|
|
14541
|
-
"name": "focusIn",
|
|
14542
|
-
"params": [
|
|
14543
|
-
{
|
|
14544
|
-
"name": "event",
|
|
14545
|
-
"description": "",
|
|
14546
|
-
"type": "Event"
|
|
14547
|
-
}
|
|
14548
|
-
],
|
|
14549
|
-
"access": "private",
|
|
14550
|
-
"tagname": "",
|
|
14551
|
-
"class": "Ember.TextSupport",
|
|
14552
|
-
"module": "ember",
|
|
14553
|
-
"namespace": "Ember"
|
|
14554
|
-
},
|
|
14555
|
-
{
|
|
14556
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
14557
|
-
"line": 243,
|
|
14558
|
-
"description": "Allows you to specify a controller action to invoke when a field loses\nfocus. To use this method, give your field a `focus-out` attribute. The value\nof that attribute should be the name of the action in your controller\nthat you wish to invoke.\n\nFor an example on how to use the `focus-out` attribute, please reference the\nexample near the top of this file.",
|
|
14559
|
-
"itemtype": "method",
|
|
14560
|
-
"name": "focusOut",
|
|
14561
|
-
"params": [
|
|
14562
|
-
{
|
|
14563
|
-
"name": "event",
|
|
14564
|
-
"description": "",
|
|
14565
|
-
"type": "Event"
|
|
14566
|
-
}
|
|
14567
|
-
],
|
|
14568
|
-
"access": "private",
|
|
14569
|
-
"tagname": "",
|
|
14570
|
-
"class": "Ember.TextSupport",
|
|
14571
|
-
"module": "ember",
|
|
14572
|
-
"namespace": "Ember"
|
|
14573
|
-
},
|
|
14574
|
-
{
|
|
14575
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
14576
|
-
"line": 261,
|
|
14577
|
-
"description": "Allows you to specify a controller action to invoke when a key is pressed.\nTo use this method, give your field a `key-press` attribute. The value of\nthat attribute should be the name of the action in your controller you\nthat wish to invoke.\n\nFor an example on how to use the `key-press` attribute, please reference the\nexample near the top of this file.",
|
|
14578
|
-
"itemtype": "method",
|
|
14579
|
-
"name": "keyPress",
|
|
14580
|
-
"params": [
|
|
14581
|
-
{
|
|
14582
|
-
"name": "event",
|
|
14583
|
-
"description": "",
|
|
14584
|
-
"type": "Event"
|
|
14585
|
-
}
|
|
14586
|
-
],
|
|
14587
|
-
"access": "private",
|
|
14588
|
-
"tagname": "",
|
|
14589
|
-
"class": "Ember.TextSupport",
|
|
14590
|
-
"module": "ember",
|
|
14591
|
-
"namespace": "Ember"
|
|
14592
|
-
},
|
|
14593
|
-
{
|
|
14594
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
14595
|
-
"line": 278,
|
|
14596
|
-
"description": "Allows you to specify a controller action to invoke when a key-up event is\nfired. To use this method, give your field a `key-up` attribute. The value\nof that attribute should be the name of the action in your controller\nthat you wish to invoke.\n\nFor an example on how to use the `key-up` attribute, please reference the\nexample near the top of this file.",
|
|
14597
|
-
"itemtype": "method",
|
|
14598
|
-
"name": "keyUp",
|
|
14599
|
-
"params": [
|
|
14600
|
-
{
|
|
14601
|
-
"name": "event",
|
|
14602
|
-
"description": "",
|
|
14603
|
-
"type": "Event"
|
|
14604
|
-
}
|
|
14605
|
-
],
|
|
14606
|
-
"access": "private",
|
|
14607
|
-
"tagname": "",
|
|
14608
|
-
"class": "Ember.TextSupport",
|
|
14609
|
-
"module": "ember",
|
|
14610
|
-
"namespace": "Ember"
|
|
14611
|
-
},
|
|
14612
|
-
{
|
|
14613
|
-
"file": "packages/@ember/-internals/views/lib/mixins/text_support.js",
|
|
14614
|
-
"line": 296,
|
|
14615
|
-
"description": "Allows you to specify a controller action to invoke when a key-down event is\nfired. To use this method, give your field a `key-down` attribute. The value\nof that attribute should be the name of the action in your controller that\nyou wish to invoke.\n\nFor an example on how to use the `key-down` attribute, please reference the\nexample near the top of this file.",
|
|
14616
|
-
"itemtype": "method",
|
|
14617
|
-
"name": "keyDown",
|
|
14618
|
-
"params": [
|
|
14619
|
-
{
|
|
14620
|
-
"name": "event",
|
|
14621
|
-
"description": "",
|
|
14622
|
-
"type": "Event"
|
|
14623
|
-
}
|
|
14624
|
-
],
|
|
14625
|
-
"access": "private",
|
|
14626
|
-
"tagname": "",
|
|
14627
|
-
"class": "Ember.TextSupport",
|
|
14628
|
-
"module": "ember",
|
|
14629
|
-
"namespace": "Ember"
|
|
14630
|
-
},
|
|
14631
13837
|
{
|
|
14632
13838
|
"file": "packages/@ember/-internals/views/lib/mixins/view_support.js",
|
|
14633
13839
|
"line": 12,
|
|
@@ -14719,8 +13925,8 @@
|
|
|
14719
13925
|
"params": [
|
|
14720
13926
|
{
|
|
14721
13927
|
"name": "A",
|
|
14722
|
-
"description": "selector, element, HTML string
|
|
14723
|
-
"type": "String|DOMElement
|
|
13928
|
+
"description": "selector, element, HTML string",
|
|
13929
|
+
"type": "String|DOMElement"
|
|
14724
13930
|
}
|
|
14725
13931
|
],
|
|
14726
13932
|
"return": {
|
|
@@ -14839,7 +14045,7 @@
|
|
|
14839
14045
|
{
|
|
14840
14046
|
"file": "packages/@ember/-internals/views/lib/mixins/view_support.js",
|
|
14841
14047
|
"line": 346,
|
|
14842
|
-
"description": "Tag name for the view's outer element. The tag name is only used when an\nelement is first created. If you change the `tagName` for an element, you\nmust destroy and recreate the view element.\n\nBy default, the render buffer will use a `<div>` tag for views.\n\nIf the tagName is `''`, the view will be tagless, with no outer element.\nComponent properties that depend on the presence of an outer element, such\nas `classNameBindings` and `attributeBindings`, do not work with tagless\ncomponents. Tagless components cannot implement methods to handle events,\nand
|
|
14048
|
+
"description": "Tag name for the view's outer element. The tag name is only used when an\nelement is first created. If you change the `tagName` for an element, you\nmust destroy and recreate the view element.\n\nBy default, the render buffer will use a `<div>` tag for views.\n\nIf the tagName is `''`, the view will be tagless, with no outer element.\nComponent properties that depend on the presence of an outer element, such\nas `classNameBindings` and `attributeBindings`, do not work with tagless\ncomponents. Tagless components cannot implement methods to handle events,\nand their `element` property has a `null` value.",
|
|
14843
14049
|
"itemtype": "property",
|
|
14844
14050
|
"name": "tagName",
|
|
14845
14051
|
"type": "String",
|
|
@@ -15203,7 +14409,7 @@
|
|
|
15203
14409
|
{
|
|
15204
14410
|
"file": "packages/@ember/application/lib/application.js",
|
|
15205
14411
|
"line": 185,
|
|
15206
|
-
"description": "The root DOM element of the Application. This can be specified as an\nelement or a
|
|
14412
|
+
"description": "The root DOM element of the Application. This can be specified as an\nelement or a [selector string](https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Selectors#reference_table_of_selectors).\n\nThis is the element that will be passed to the Application's,\n`eventDispatcher`, which sets up the listeners for event delegation. Every\nview in your application should be a child of the element you specify here.",
|
|
15207
14413
|
"itemtype": "property",
|
|
15208
14414
|
"name": "rootElement",
|
|
15209
14415
|
"type": "DOMElement",
|
|
@@ -15215,7 +14421,7 @@
|
|
|
15215
14421
|
},
|
|
15216
14422
|
{
|
|
15217
14423
|
"file": "packages/@ember/application/lib/application.js",
|
|
15218
|
-
"line":
|
|
14424
|
+
"line": 200,
|
|
15219
14425
|
"itemtype": "property",
|
|
15220
14426
|
"name": "_document",
|
|
15221
14427
|
"type": "Document | null",
|
|
@@ -15227,7 +14433,7 @@
|
|
|
15227
14433
|
},
|
|
15228
14434
|
{
|
|
15229
14435
|
"file": "packages/@ember/application/lib/application.js",
|
|
15230
|
-
"line":
|
|
14436
|
+
"line": 209,
|
|
15231
14437
|
"description": "The `Ember.EventDispatcher` responsible for delegating events to this\napplication's views.\n\nThe event dispatcher is created by the application at initialization time\nand sets up event listeners on the DOM element described by the\napplication's `rootElement` property.\n\nSee the documentation for `Ember.EventDispatcher` for more information.",
|
|
15232
14438
|
"itemtype": "property",
|
|
15233
14439
|
"name": "eventDispatcher",
|
|
@@ -15240,7 +14446,7 @@
|
|
|
15240
14446
|
},
|
|
15241
14447
|
{
|
|
15242
14448
|
"file": "packages/@ember/application/lib/application.js",
|
|
15243
|
-
"line":
|
|
14449
|
+
"line": 226,
|
|
15244
14450
|
"description": "The DOM events for which the event dispatcher should listen.\n\nBy default, the application's `Ember.EventDispatcher` listens\nfor a set of standard DOM events, such as `mousedown` and\n`keyup`, and delegates them to your application's `Ember.View`\ninstances.\n\nIf you would like additional bubbling events to be delegated to your\nviews, set your `Application`'s `customEvents` property\nto a hash containing the DOM event name as the key and the\ncorresponding view method name as the value. Setting an event to\na value of `null` will prevent a default event listener from being\nadded for that event.\n\nTo add new events to be listened to:\n\n```app/app.js\nimport Application from '@ember/application';\n\nlet App = Application.extend({\n customEvents: {\n // add support for the paste event\n paste: 'paste'\n }\n});\n```\n\nTo prevent default events from being listened to:\n\n```app/app.js\nimport Application from '@ember/application';\n\nlet App = Application.extend({\n customEvents: {\n // remove support for mouseenter / mouseleave events\n mouseenter: null,\n mouseleave: null\n }\n});\n```",
|
|
15245
14451
|
"itemtype": "property",
|
|
15246
14452
|
"name": "customEvents",
|
|
@@ -15253,7 +14459,7 @@
|
|
|
15253
14459
|
},
|
|
15254
14460
|
{
|
|
15255
14461
|
"file": "packages/@ember/application/lib/application.js",
|
|
15256
|
-
"line":
|
|
14462
|
+
"line": 274,
|
|
15257
14463
|
"description": "Whether the application should automatically start routing and render\ntemplates to the `rootElement` on DOM ready. While default by true,\nother environments such as FastBoot or a testing harness can set this\nproperty to `false` and control the precise timing and behavior of the boot\nprocess.",
|
|
15258
14464
|
"itemtype": "property",
|
|
15259
14465
|
"name": "autoboot",
|
|
@@ -15266,7 +14472,7 @@
|
|
|
15266
14472
|
},
|
|
15267
14473
|
{
|
|
15268
14474
|
"file": "packages/@ember/application/lib/application.js",
|
|
15269
|
-
"line":
|
|
14475
|
+
"line": 288,
|
|
15270
14476
|
"description": "Whether the application should be configured for the legacy \"globals mode\".\nUnder this mode, the Application object serves as a global namespace for all\nclasses.\n\n```javascript\nimport Application from '@ember/application';\nimport Component from '@ember/component';\n\nlet App = Application.create({\n ...\n});\n\nApp.Router.reopen({\n location: 'none'\n});\n\nApp.Router.map({\n ...\n});\n\nApp.MyComponent = Component.extend({\n ...\n});\n```\n\nThis flag also exposes other internal APIs that assumes the existence of\na special \"default instance\", like `App.__container__.lookup(...)`.\n\nThis option is currently not configurable, its value is derived from\nthe `autoboot` flag – disabling `autoboot` also implies opting-out of\nglobals mode support, although they are ultimately orthogonal concerns.\n\nSome of the global modes features are already deprecated in 1.x. The\nexistence of this flag is to untangle the globals mode code paths from\nthe autoboot code paths, so that these legacy features can be reviewed\nfor deprecation/removal separately.\n\nForcing the (autoboot=true, _globalsMode=false) here and running the tests\nwould reveal all the places where we are still relying on these legacy\nbehavior internally (mostly just tests).",
|
|
15271
14477
|
"itemtype": "property",
|
|
15272
14478
|
"name": "_globalsMode",
|
|
@@ -15279,7 +14485,7 @@
|
|
|
15279
14485
|
},
|
|
15280
14486
|
{
|
|
15281
14487
|
"file": "packages/@ember/application/lib/application.js",
|
|
15282
|
-
"line":
|
|
14488
|
+
"line": 337,
|
|
15283
14489
|
"description": "An array of application instances created by `buildInstance()`. Used\ninternally to ensure that all instances get destroyed.",
|
|
15284
14490
|
"itemtype": "property",
|
|
15285
14491
|
"name": "_applicationInstances",
|
|
@@ -15292,7 +14498,7 @@
|
|
|
15292
14498
|
},
|
|
15293
14499
|
{
|
|
15294
14500
|
"file": "packages/@ember/application/lib/application.js",
|
|
15295
|
-
"line":
|
|
14501
|
+
"line": 377,
|
|
15296
14502
|
"description": "Create an ApplicationInstance for this application.",
|
|
15297
14503
|
"access": "public",
|
|
15298
14504
|
"tagname": "",
|
|
@@ -15307,7 +14513,7 @@
|
|
|
15307
14513
|
},
|
|
15308
14514
|
{
|
|
15309
14515
|
"file": "packages/@ember/application/lib/application.js",
|
|
15310
|
-
"line":
|
|
14516
|
+
"line": 400,
|
|
15311
14517
|
"description": "Start tracking an ApplicationInstance for this application.\nUsed when the ApplicationInstance is created.",
|
|
15312
14518
|
"access": "private",
|
|
15313
14519
|
"tagname": "",
|
|
@@ -15318,7 +14524,7 @@
|
|
|
15318
14524
|
},
|
|
15319
14525
|
{
|
|
15320
14526
|
"file": "packages/@ember/application/lib/application.js",
|
|
15321
|
-
"line":
|
|
14527
|
+
"line": 411,
|
|
15322
14528
|
"description": "Stop tracking an ApplicationInstance for this application.\nUsed when the ApplicationInstance is about to be destroyed.",
|
|
15323
14529
|
"access": "private",
|
|
15324
14530
|
"tagname": "",
|
|
@@ -15329,7 +14535,7 @@
|
|
|
15329
14535
|
},
|
|
15330
14536
|
{
|
|
15331
14537
|
"file": "packages/@ember/application/lib/application.js",
|
|
15332
|
-
"line":
|
|
14538
|
+
"line": 422,
|
|
15333
14539
|
"description": "Enable the legacy globals mode by allowing this application to act\nas a global namespace. See the docs on the `_globalsMode` property\nfor details.\n\nMost of these features are already deprecated in 1.x, so we can\nstop using them internally and try to remove them.",
|
|
15334
14540
|
"access": "private",
|
|
15335
14541
|
"tagname": "",
|
|
@@ -15340,7 +14546,7 @@
|
|
|
15340
14546
|
},
|
|
15341
14547
|
{
|
|
15342
14548
|
"file": "packages/@ember/application/lib/application.js",
|
|
15343
|
-
"line":
|
|
14549
|
+
"line": 466,
|
|
15344
14550
|
"description": "Automatically kick-off the boot process for the application once the\nDOM has become ready.\n\nThe initialization itself is scheduled on the actions queue which\nensures that code-loading finishes before booting.\n\nIf you are asynchronously loading code, you should call `deferReadiness()`\nto defer booting, and then call `advanceReadiness()` once all of your code\nhas finished loading.",
|
|
15345
14551
|
"access": "private",
|
|
15346
14552
|
"tagname": "",
|
|
@@ -15351,7 +14557,7 @@
|
|
|
15351
14557
|
},
|
|
15352
14558
|
{
|
|
15353
14559
|
"file": "packages/@ember/application/lib/application.js",
|
|
15354
|
-
"line":
|
|
14560
|
+
"line": 493,
|
|
15355
14561
|
"description": "This is the autoboot flow:\n\n1. Boot the app by calling `this.boot()`\n2. Create an instance (or use the `__deprecatedInstance__` in globals mode)\n3. Boot the instance by calling `instance.boot()`\n4. Invoke the `App.ready()` callback\n5. Kick-off routing on the instance\n\nIdeally, this is all we would need to do:\n\n```javascript\n_autoBoot() {\n this.boot().then(() => {\n let instance = (this._globalsMode) ? this.__deprecatedInstance__ : this.buildInstance();\n return instance.boot();\n }).then((instance) => {\n App.ready();\n instance.startRouting();\n });\n}\n```\n\nUnfortunately, we cannot actually write this because we need to participate\nin the \"synchronous\" boot process. While the code above would work fine on\nthe initial boot (i.e. DOM ready), when `App.reset()` is called, we need to\nboot a new instance synchronously (see the documentation on `_bootSync()`\nfor details).\n\nBecause of this restriction, the actual logic of this method is located\ninside `didBecomeReady()`.",
|
|
15356
14562
|
"access": "private",
|
|
15357
14563
|
"tagname": "",
|
|
@@ -15362,8 +14568,8 @@
|
|
|
15362
14568
|
},
|
|
15363
14569
|
{
|
|
15364
14570
|
"file": "packages/@ember/application/lib/application.js",
|
|
15365
|
-
"line":
|
|
15366
|
-
"description": "Use this to defer readiness until some condition is true.\n\nExample:\n\n```javascript\nimport Application from '@ember/application';\n\nlet App = Application.create();\n\nApp.deferReadiness();\n\
|
|
14571
|
+
"line": 538,
|
|
14572
|
+
"description": "Use this to defer readiness until some condition is true.\n\nExample:\n\n```javascript\nimport Application from '@ember/application';\n\nlet App = Application.create();\n\nApp.deferReadiness();\n\nfetch('/auth-token')\n.then(response => response.json())\n.then(data => {\n App.token = data.token;\n App.advanceReadiness();\n});\n```\n\nThis allows you to perform asynchronous setup logic and defer\nbooting your application until the setup has finished.\n\nHowever, if the setup requires a loading UI, it might be better\nto use the router for this purpose.",
|
|
15367
14573
|
"itemtype": "method",
|
|
15368
14574
|
"name": "deferReadiness",
|
|
15369
14575
|
"access": "public",
|
|
@@ -15373,7 +14579,7 @@
|
|
|
15373
14579
|
},
|
|
15374
14580
|
{
|
|
15375
14581
|
"file": "packages/@ember/application/lib/application.js",
|
|
15376
|
-
"line":
|
|
14582
|
+
"line": 588,
|
|
15377
14583
|
"description": "Call `advanceReadiness` after any asynchronous setup logic has completed.\nEach call to `deferReadiness` must be matched by a call to `advanceReadiness`\nor the application will never become ready and routing will not begin.",
|
|
15378
14584
|
"itemtype": "method",
|
|
15379
14585
|
"name": "advanceReadiness",
|
|
@@ -15387,7 +14593,7 @@
|
|
|
15387
14593
|
},
|
|
15388
14594
|
{
|
|
15389
14595
|
"file": "packages/@ember/application/lib/application.js",
|
|
15390
|
-
"line":
|
|
14596
|
+
"line": 625,
|
|
15391
14597
|
"description": "Initialize the application and return a promise that resolves with the `Application`\nobject when the boot process is complete.\n\nRun any application initializers and run the application load hook. These hooks may\nchoose to defer readiness. For example, an authentication hook might want to defer\nreadiness until the auth token has been retrieved.\n\nBy default, this method is called automatically on \"DOM ready\"; however, if autoboot\nis disabled, this is automatically called when the first application instance is\ncreated via `visit`.",
|
|
15392
14598
|
"access": "public",
|
|
15393
14599
|
"tagname": "",
|
|
@@ -15402,7 +14608,7 @@
|
|
|
15402
14608
|
},
|
|
15403
14609
|
{
|
|
15404
14610
|
"file": "packages/@ember/application/lib/application.js",
|
|
15405
|
-
"line":
|
|
14611
|
+
"line": 663,
|
|
15406
14612
|
"description": "Unfortunately, a lot of existing code assumes the booting process is\n\"synchronous\". Specifically, a lot of tests assumes the last call to\n`app.advanceReadiness()` or `app.reset()` will result in the app being\nfully-booted when the current runloop completes.\n\nWe would like new code (like the `visit` API) to stop making this assumption,\nso we created the asynchronous version above that returns a promise. But until\nwe have migrated all the code, we would have to expose this method for use\n*internally* in places where we need to boot an app \"synchronously\".",
|
|
15407
14613
|
"access": "private",
|
|
15408
14614
|
"tagname": "",
|
|
@@ -15411,7 +14617,7 @@
|
|
|
15411
14617
|
},
|
|
15412
14618
|
{
|
|
15413
14619
|
"file": "packages/@ember/application/lib/application.js",
|
|
15414
|
-
"line":
|
|
14620
|
+
"line": 702,
|
|
15415
14621
|
"description": "Reset the application. This is typically used only in tests. It cleans up\nthe application in the following order:\n\n1. Deactivate existing routes\n2. Destroy all objects in the container\n3. Create a new application container\n4. Re-route to the existing url\n\nTypical Example:\n\n```javascript\nimport Application from '@ember/application';\nlet App;\n\nrun(function() {\n App = Application.create();\n});\n\nmodule('acceptance test', {\n setup: function() {\n App.reset();\n }\n});\n\ntest('first test', function() {\n // App is freshly reset\n});\n\ntest('second test', function() {\n // App is again freshly reset\n});\n```\n\nAdvanced Example:\n\nOccasionally you may want to prevent the app from initializing during\nsetup. This could enable extra configuration, or enable asserting prior\nto the app becoming ready.\n\n```javascript\nimport Application from '@ember/application';\nlet App;\n\nrun(function() {\n App = Application.create();\n});\n\nmodule('acceptance test', {\n setup: function() {\n run(function() {\n App.reset();\n App.deferReadiness();\n });\n }\n});\n\ntest('first test', function() {\n ok(true, 'something before app is initialized');\n\n run(function() {\n App.advanceReadiness();\n });\n\n ok(true, 'something after app is initialized');\n});\n```",
|
|
15416
14622
|
"itemtype": "method",
|
|
15417
14623
|
"name": "reset",
|
|
@@ -15422,7 +14628,7 @@
|
|
|
15422
14628
|
},
|
|
15423
14629
|
{
|
|
15424
14630
|
"file": "packages/@ember/application/lib/application.js",
|
|
15425
|
-
"line":
|
|
14631
|
+
"line": 805,
|
|
15426
14632
|
"access": "private",
|
|
15427
14633
|
"tagname": "",
|
|
15428
14634
|
"itemtype": "method",
|
|
@@ -15432,7 +14638,7 @@
|
|
|
15432
14638
|
},
|
|
15433
14639
|
{
|
|
15434
14640
|
"file": "packages/@ember/application/lib/application.js",
|
|
15435
|
-
"line":
|
|
14641
|
+
"line": 855,
|
|
15436
14642
|
"description": "Called when the Application has become ready, immediately before routing\nbegins. The call will be delayed until the DOM has become ready.",
|
|
15437
14643
|
"itemtype": "event",
|
|
15438
14644
|
"name": "ready",
|
|
@@ -15443,8 +14649,8 @@
|
|
|
15443
14649
|
},
|
|
15444
14650
|
{
|
|
15445
14651
|
"file": "packages/@ember/application/lib/application.js",
|
|
15446
|
-
"line":
|
|
15447
|
-
"description": "Boot a new instance of `ApplicationInstance` for the current\napplication and navigate it to the given `url`. Returns a `Promise` that\nresolves with the instance when the initial routing and rendering is\ncomplete, or rejects with any error that occurred during the boot process.\n\nWhen `autoboot` is disabled, calling `visit` would first cause the\napplication to boot, which runs the application initializers.\n\nThis method also takes a hash of boot-time configuration options for\ncustomizing the instance's behavior. See the documentation on\n`ApplicationInstance.BootOptions` for details.\n\n`ApplicationInstance.BootOptions` is an interface class that exists\npurely to document the available options; you do not need to construct it\nmanually. Simply pass a regular JavaScript object containing of the\ndesired options:\n\n```javascript\nMyApp.visit(\"/\", { location: \"none\", rootElement: \"#container\" });\n```\n\n### Supported Scenarios\n\nWhile the `BootOptions` class exposes a large number of knobs, not all\ncombinations of them are valid; certain incompatible combinations might\nresult in unexpected behavior.\n\nFor example, booting the instance in the full browser environment\nwhile specifying a foreign `document` object (e.g. `{ isBrowser: true,\ndocument: iframe.contentDocument }`) does not work correctly today,\nlargely due to Ember's jQuery dependency.\n\nCurrently, there are three officially supported scenarios/configurations.\nUsages outside of these scenarios are not guaranteed to work, but please\nfeel free to file bug reports documenting your experience and any issues\nyou encountered to help expand support.\n\n#### Browser Applications (Manual Boot)\n\nThe setup is largely similar to how Ember works out-of-the-box. Normally,\nEmber will boot a default instance for your Application on \"DOM ready\".\nHowever, you can customize this behavior by disabling `autoboot`.\n\nFor example, this allows you to render a miniture demo of your application\ninto a specific area on your marketing website:\n\n```javascript\nimport MyApp from 'my-app';\n\n$(function() {\n let App = MyApp.create({ autoboot: false });\n\n let options = {\n // Override the router's location adapter to prevent it from updating\n // the URL in the address bar\n location: 'none',\n\n // Override the default `rootElement` on the app to render into a\n // specific `div` on the page\n rootElement: '#demo'\n };\n\n // Start the app at the special demo URL\n App.visit('/demo', options);\n});\n```\n\nOr perhaps you might want to boot two instances of your app on the same\npage for a split-screen multiplayer experience:\n\n```javascript\nimport MyApp from 'my-app';\n\n$(function() {\n let App = MyApp.create({ autoboot: false });\n\n let sessionId = MyApp.generateSessionID();\n\n let player1 = App.visit(`/matches/join?name=Player+1&session=${sessionId}`, { rootElement: '#left', location: 'none' });\n let player2 = App.visit(`/matches/join?name=Player+2&session=${sessionId}`, { rootElement: '#right', location: 'none' });\n\n Promise.all([player1, player2]).then(() => {\n // Both apps have completed the initial render\n $('#loading').fadeOut();\n });\n});\n```\n\nDo note that each app instance maintains their own registry/container, so\nthey will run in complete isolation by default.\n\n#### Server-Side Rendering (also known as FastBoot)\n\nThis setup allows you to run your Ember app in a server environment using\nNode.js and render its content into static HTML for SEO purposes.\n\n```javascript\nconst HTMLSerializer = new SimpleDOM.HTMLSerializer(SimpleDOM.voidMap);\n\nfunction renderURL(url) {\n let dom = new SimpleDOM.Document();\n let rootElement = dom.body;\n let options = { isBrowser: false, document: dom, rootElement: rootElement };\n\n return MyApp.visit(options).then(instance => {\n try {\n return HTMLSerializer.serialize(rootElement.firstChild);\n } finally {\n instance.destroy();\n }\n });\n}\n```\n\nIn this scenario, because Ember does not have access to a global `document`\nobject in the Node.js environment, you must provide one explicitly. In practice,\nin the non-browser environment, the stand-in `document` object only needs to\nimplement a limited subset of the full DOM API. The `SimpleDOM` library is known\nto work.\n\nSince there is no access
|
|
14652
|
+
"line": 880,
|
|
14653
|
+
"description": "Boot a new instance of `ApplicationInstance` for the current\napplication and navigate it to the given `url`. Returns a `Promise` that\nresolves with the instance when the initial routing and rendering is\ncomplete, or rejects with any error that occurred during the boot process.\n\nWhen `autoboot` is disabled, calling `visit` would first cause the\napplication to boot, which runs the application initializers.\n\nThis method also takes a hash of boot-time configuration options for\ncustomizing the instance's behavior. See the documentation on\n`ApplicationInstance.BootOptions` for details.\n\n`ApplicationInstance.BootOptions` is an interface class that exists\npurely to document the available options; you do not need to construct it\nmanually. Simply pass a regular JavaScript object containing of the\ndesired options:\n\n```javascript\nMyApp.visit(\"/\", { location: \"none\", rootElement: \"#container\" });\n```\n\n### Supported Scenarios\n\nWhile the `BootOptions` class exposes a large number of knobs, not all\ncombinations of them are valid; certain incompatible combinations might\nresult in unexpected behavior.\n\nFor example, booting the instance in the full browser environment\nwhile specifying a foreign `document` object (e.g. `{ isBrowser: true,\ndocument: iframe.contentDocument }`) does not work correctly today,\nlargely due to Ember's jQuery dependency.\n\nCurrently, there are three officially supported scenarios/configurations.\nUsages outside of these scenarios are not guaranteed to work, but please\nfeel free to file bug reports documenting your experience and any issues\nyou encountered to help expand support.\n\n#### Browser Applications (Manual Boot)\n\nThe setup is largely similar to how Ember works out-of-the-box. Normally,\nEmber will boot a default instance for your Application on \"DOM ready\".\nHowever, you can customize this behavior by disabling `autoboot`.\n\nFor example, this allows you to render a miniture demo of your application\ninto a specific area on your marketing website:\n\n```javascript\nimport MyApp from 'my-app';\n\n$(function() {\n let App = MyApp.create({ autoboot: false });\n\n let options = {\n // Override the router's location adapter to prevent it from updating\n // the URL in the address bar\n location: 'none',\n\n // Override the default `rootElement` on the app to render into a\n // specific `div` on the page\n rootElement: '#demo'\n };\n\n // Start the app at the special demo URL\n App.visit('/demo', options);\n});\n```\n\nOr perhaps you might want to boot two instances of your app on the same\npage for a split-screen multiplayer experience:\n\n```javascript\nimport MyApp from 'my-app';\n\n$(function() {\n let App = MyApp.create({ autoboot: false });\n\n let sessionId = MyApp.generateSessionID();\n\n let player1 = App.visit(`/matches/join?name=Player+1&session=${sessionId}`, { rootElement: '#left', location: 'none' });\n let player2 = App.visit(`/matches/join?name=Player+2&session=${sessionId}`, { rootElement: '#right', location: 'none' });\n\n Promise.all([player1, player2]).then(() => {\n // Both apps have completed the initial render\n $('#loading').fadeOut();\n });\n});\n```\n\nDo note that each app instance maintains their own registry/container, so\nthey will run in complete isolation by default.\n\n#### Server-Side Rendering (also known as FastBoot)\n\nThis setup allows you to run your Ember app in a server environment using\nNode.js and render its content into static HTML for SEO purposes.\n\n```javascript\nconst HTMLSerializer = new SimpleDOM.HTMLSerializer(SimpleDOM.voidMap);\n\nfunction renderURL(url) {\n let dom = new SimpleDOM.Document();\n let rootElement = dom.body;\n let options = { isBrowser: false, document: dom, rootElement: rootElement };\n\n return MyApp.visit(options).then(instance => {\n try {\n return HTMLSerializer.serialize(rootElement.firstChild);\n } finally {\n instance.destroy();\n }\n });\n}\n```\n\nIn this scenario, because Ember does not have access to a global `document`\nobject in the Node.js environment, you must provide one explicitly. In practice,\nin the non-browser environment, the stand-in `document` object only needs to\nimplement a limited subset of the full DOM API. The `SimpleDOM` library is known\nto work.\n\nSince there is no DOM access in the non-browser environment, you must also\nspecify a DOM `Element` object in the same `document` for the `rootElement` option\n(as opposed to a selector string like `\"body\"`).\n\nSee the documentation on the `isBrowser`, `document` and `rootElement` properties\non `ApplicationInstance.BootOptions` for details.\n\n#### Server-Side Resource Discovery\n\nThis setup allows you to run the routing layer of your Ember app in a server\nenvironment using Node.js and completely disable rendering. This allows you\nto simulate and discover the resources (i.e. AJAX requests) needed to fulfill\na given request and eagerly \"push\" these resources to the client.\n\n```app/initializers/network-service.js\nimport BrowserNetworkService from 'app/services/network/browser';\nimport NodeNetworkService from 'app/services/network/node';\n\n// Inject a (hypothetical) service for abstracting all AJAX calls and use\n// the appropriate implementation on the client/server. This also allows the\n// server to log all the AJAX calls made during a particular request and use\n// that for resource-discovery purpose.\n\nexport function initialize(application) {\n if (window) { // browser\n application.register('service:network', BrowserNetworkService);\n } else { // node\n application.register('service:network', NodeNetworkService);\n }\n};\n\nexport default {\n name: 'network-service',\n initialize: initialize\n};\n```\n\n```app/routes/post.js\nimport Route from '@ember/routing/route';\nimport { inject as service } from '@ember/service';\n\n// An example of how the (hypothetical) service is used in routes.\n\nexport default class IndexRoute extends Route {\n @service network;\n\n model(params) {\n return this.network.fetch(`/api/posts/${params.post_id}.json`);\n }\n\n afterModel(post) {\n if (post.isExternalContent) {\n return this.network.fetch(`/api/external/?url=${post.externalURL}`);\n } else {\n return post;\n }\n }\n}\n```\n\n```javascript\n// Finally, put all the pieces together\n\nfunction discoverResourcesFor(url) {\n return MyApp.visit(url, { isBrowser: false, shouldRender: false }).then(instance => {\n let networkService = instance.lookup('service:network');\n return networkService.requests; // => { \"/api/posts/123.json\": \"...\" }\n });\n}\n```",
|
|
15448
14654
|
"access": "public",
|
|
15449
14655
|
"tagname": "",
|
|
15450
14656
|
"itemtype": "method",
|
|
@@ -15470,7 +14676,7 @@
|
|
|
15470
14676
|
},
|
|
15471
14677
|
{
|
|
15472
14678
|
"file": "packages/@ember/application/lib/application.js",
|
|
15473
|
-
"line":
|
|
14679
|
+
"line": 1101,
|
|
15474
14680
|
"description": "This creates a registry with the default Ember naming conventions.\n\nIt also configures the registry:\n\n* registered views are created every time they are looked up (they are\n not singletons)\n* registered templates are not factories; the registered value is\n returned directly.\n* the router receives the application as its `namespace` property\n* all controllers receive the router as their `target` and `controllers`\n properties\n* all controllers receive the application as their `namespace` property\n* the application view receives the application controller as its\n `controller` property\n* the application view receives the application template as its\n `defaultTemplate` property",
|
|
15475
14681
|
"itemtype": "method",
|
|
15476
14682
|
"name": "buildRegistry",
|
|
@@ -15797,7 +15003,7 @@
|
|
|
15797
15003
|
},
|
|
15798
15004
|
{
|
|
15799
15005
|
"file": "packages/@ember/canary-features/index.ts",
|
|
15800
|
-
"line":
|
|
15006
|
+
"line": 36,
|
|
15801
15007
|
"description": "Determine whether the specified `feature` is enabled. Used by Ember's\nbuild tools to exclude experimental features from beta/stable builds.\n\nYou can define the following configuration options:\n\n* `EmberENV.ENABLE_OPTIONAL_FEATURES` - enable any features that have not been explicitly\n enabled/disabled.",
|
|
15802
15008
|
"itemtype": "method",
|
|
15803
15009
|
"name": "isEnabled",
|
|
@@ -16474,7 +15680,7 @@
|
|
|
16474
15680
|
{
|
|
16475
15681
|
"file": "packages/@ember/engine/index.js",
|
|
16476
15682
|
"line": 305,
|
|
16477
|
-
"description": "Instance initializers run after all initializers have run. Because\ninstance initializers run after the app is fully set up. We have access\nto the store, container, and other items. However, these initializers run\nafter code has loaded and are not allowed to defer readiness.\n\nInstance initializer receives an object which has the following attributes:\n`name`, `before`, `after`, `initialize`. The only required attribute is\n`initialize`, all others are optional.\n\n* `name` allows you to specify under which name the instanceInitializer is\nregistered. This must be a unique name, as trying to register two\ninstanceInitializer with the same name will result in an error.\n\n```app/initializer/named-instance-initializer.js\nimport { debug } from '@ember/debug';\n\nexport function initialize() {\n debug('Running named-instance-initializer!');\n}\n\nexport default {\n name: 'named-instance-initializer',\n initialize\n};\n```\n\n* `before` and `after` are used to ensure that this initializer is ran prior\nor after the one identified by the value. This value can be a single string\nor an array of strings, referencing the `name` of other initializers.\n\n* See Application.initializer for discussion on the usage of before\nand after.\n\nExample instanceInitializer to preload data into the store.\n\n```app/initializer/preload-data.js\
|
|
15683
|
+
"description": "Instance initializers run after all initializers have run. Because\ninstance initializers run after the app is fully set up. We have access\nto the store, container, and other items. However, these initializers run\nafter code has loaded and are not allowed to defer readiness.\n\nInstance initializer receives an object which has the following attributes:\n`name`, `before`, `after`, `initialize`. The only required attribute is\n`initialize`, all others are optional.\n\n* `name` allows you to specify under which name the instanceInitializer is\nregistered. This must be a unique name, as trying to register two\ninstanceInitializer with the same name will result in an error.\n\n```app/initializer/named-instance-initializer.js\nimport { debug } from '@ember/debug';\n\nexport function initialize() {\n debug('Running named-instance-initializer!');\n}\n\nexport default {\n name: 'named-instance-initializer',\n initialize\n};\n```\n\n* `before` and `after` are used to ensure that this initializer is ran prior\nor after the one identified by the value. This value can be a single string\nor an array of strings, referencing the `name` of other initializers.\n\n* See Application.initializer for discussion on the usage of before\nand after.\n\nExample instanceInitializer to preload data into the store.\n\n```app/initializer/preload-data.js\n\nexport function initialize(application) {\n var userConfig, userConfigEncoded, store;\n // We have a HTML escaped JSON representation of the user's basic\n // configuration generated server side and stored in the DOM of the main\n // index.html file. This allows the app to have access to a set of data\n // without making any additional remote calls. Good for basic data that is\n // needed for immediate rendering of the page. Keep in mind, this data,\n // like all local models and data can be manipulated by the user, so it\n // should not be relied upon for security or authorization.\n\n // Grab the encoded data from the meta tag\n userConfigEncoded = document.querySelector('head meta[name=app-user-config]').attr('content');\n\n // Unescape the text, then parse the resulting JSON into a real object\n userConfig = JSON.parse(unescape(userConfigEncoded));\n\n // Lookup the store\n store = application.lookup('service:store');\n\n // Push the encoded JSON into the store\n store.pushPayload(userConfig);\n}\n\nexport default {\n name: 'named-instance-initializer',\n initialize\n};\n```",
|
|
16478
15684
|
"itemtype": "method",
|
|
16479
15685
|
"name": "instanceInitializer",
|
|
16480
15686
|
"params": [
|
|
@@ -16490,7 +15696,7 @@
|
|
|
16490
15696
|
},
|
|
16491
15697
|
{
|
|
16492
15698
|
"file": "packages/@ember/engine/index.js",
|
|
16493
|
-
"line":
|
|
15699
|
+
"line": 378,
|
|
16494
15700
|
"description": "This creates a registry with the default Ember naming conventions.\n\nIt also configures the registry:\n\n* registered views are created every time they are looked up (they are\n not singletons)\n* registered templates are not factories; the registered value is\n returned directly.\n* the router receives the application as its `namespace` property\n* all controllers receive the router as their `target` and `controllers`\n properties\n* all controllers receive the application as their `namespace` property\n* the application view receives the application controller as its\n `controller` property\n* the application view receives the application template as its\n `defaultTemplate` property",
|
|
16495
15701
|
"itemtype": "method",
|
|
16496
15702
|
"name": "buildRegistry",
|
|
@@ -16513,7 +15719,7 @@
|
|
|
16513
15719
|
},
|
|
16514
15720
|
{
|
|
16515
15721
|
"file": "packages/@ember/engine/index.js",
|
|
16516
|
-
"line":
|
|
15722
|
+
"line": 418,
|
|
16517
15723
|
"description": "Set this to provide an alternate class to `DefaultResolver`",
|
|
16518
15724
|
"itemtype": "property",
|
|
16519
15725
|
"name": "resolver",
|
|
@@ -16524,7 +15730,7 @@
|
|
|
16524
15730
|
},
|
|
16525
15731
|
{
|
|
16526
15732
|
"file": "packages/@ember/engine/index.js",
|
|
16527
|
-
"line":
|
|
15733
|
+
"line": 427,
|
|
16528
15734
|
"description": "This function defines the default lookup rules for container lookups:\n\n* templates are looked up on `Ember.TEMPLATES`\n* other names are looked up on the application after classifying the name.\n For example, `controller:post` looks up `App.PostController` by default.\n* if the default lookup fails, look for registered classes on the container\n\nThis allows the application to register default injections in the container\nthat could be overridden by the normal naming convention.",
|
|
16529
15735
|
"access": "private",
|
|
16530
15736
|
"tagname": "",
|
|
@@ -18908,7 +18114,7 @@
|
|
|
18908
18114
|
},
|
|
18909
18115
|
{
|
|
18910
18116
|
"message": "replacing incorrect tag: returns with return",
|
|
18911
|
-
"line": " packages/@ember/-internals/routing/lib/system/route.ts:
|
|
18117
|
+
"line": " packages/@ember/-internals/routing/lib/system/route.ts:2319"
|
|
18912
18118
|
},
|
|
18913
18119
|
{
|
|
18914
18120
|
"message": "replacing incorrect tag: function with method",
|
|
@@ -18936,23 +18142,23 @@
|
|
|
18936
18142
|
},
|
|
18937
18143
|
{
|
|
18938
18144
|
"message": "Missing item type\nThe `change` and `input` actions need to be overridden in the `Input`\nsubclass. Unfortunately, some ember-source builds currently uses babel\nloose mode to transpile its classes. Having the `@action` decorator on the\nsuper class creates a getter on the prototype, and when the subclass\noverrides the method, the loose mode transpilation would emit something\nlike `Subclass.prototype['change'] = function change() { ... }`, which\nfails because `prototype['change']` is getter-only/readonly. The correct\nsolution is to use `Object.defineProperty(prototype, 'change', ...)` but\nthat requires disabling loose mode. For now, the workaround is to add the\ndecorator only on the subclass. This is more of a configuration issue on\nour own builds and doesn't really affect apps.",
|
|
18939
|
-
"line": " packages/@ember/-internals/glimmer/lib/components/abstract-input.ts:
|
|
18145
|
+
"line": " packages/@ember/-internals/glimmer/lib/components/abstract-input.ts:125"
|
|
18940
18146
|
},
|
|
18941
18147
|
{
|
|
18942
18148
|
"message": "Missing item type\nThe HTML class attribute.",
|
|
18943
|
-
"line": " packages/@ember/-internals/glimmer/lib/components/input.ts:
|
|
18149
|
+
"line": " packages/@ember/-internals/glimmer/lib/components/input.ts:183"
|
|
18944
18150
|
},
|
|
18945
18151
|
{
|
|
18946
18152
|
"message": "Missing item type\nThe HTML type attribute.",
|
|
18947
|
-
"line": " packages/@ember/-internals/glimmer/lib/components/input.ts:
|
|
18153
|
+
"line": " packages/@ember/-internals/glimmer/lib/components/input.ts:194"
|
|
18948
18154
|
},
|
|
18949
18155
|
{
|
|
18950
18156
|
"message": "Missing item type\nThe default HTML id attribute. We don't really _need_ one, this is just\nadded for compatibility as it's hard to tell if people rely on it being\npresent, and it doens't really hurt.\n\nHowever, don't rely on this internally, like passing it to `getElementId`.\nThis can be (and often is) overriden by passing an `id` attribute on the\ninvocation, which shadows this default id via `...attributes`.",
|
|
18951
|
-
"line": " packages/@ember/-internals/glimmer/lib/components/internal.ts:
|
|
18157
|
+
"line": " packages/@ember/-internals/glimmer/lib/components/internal.ts:37"
|
|
18952
18158
|
},
|
|
18953
18159
|
{
|
|
18954
18160
|
"message": "Missing item type\nThe default HTML class attribute. Similar to the above, we don't _need_\nthem, they are just added for compatibility as it's similarly hard to tell\nif people rely on it in their CSS etc, and it doens't really hurt.",
|
|
18955
|
-
"line": " packages/@ember/-internals/glimmer/lib/components/internal.ts:
|
|
18161
|
+
"line": " packages/@ember/-internals/glimmer/lib/components/internal.ts:50"
|
|
18956
18162
|
},
|
|
18957
18163
|
{
|
|
18958
18164
|
"message": "Missing item type\nThis reference is used to get the `[]` tag of iterables, so we can trigger\nupdates to `{{each}}` when it changes. It is put into place by a template\ntransform at build time, similar to the (-each-in) helper",
|
|
@@ -19044,15 +18250,15 @@
|
|
|
19044
18250
|
},
|
|
19045
18251
|
{
|
|
19046
18252
|
"message": "Missing item type\nFinds the name of the substate route if it exists for the given route. A\nsubstate route is of the form `route_state`, such as `foo_loading`.",
|
|
19047
|
-
"line": " packages/@ember/-internals/routing/lib/system/router.ts:
|
|
18253
|
+
"line": " packages/@ember/-internals/routing/lib/system/router.ts:1547"
|
|
19048
18254
|
},
|
|
19049
18255
|
{
|
|
19050
18256
|
"message": "Missing item type\nFinds the name of the state route if it exists for the given route. A state\nroute is of the form `route.state`, such as `foo.loading`. Properly Handles\n`application` named routes.",
|
|
19051
|
-
"line": " packages/@ember/-internals/routing/lib/system/router.ts:
|
|
18257
|
+
"line": " packages/@ember/-internals/routing/lib/system/router.ts:1566"
|
|
19052
18258
|
},
|
|
19053
18259
|
{
|
|
19054
18260
|
"message": "Missing item type\nDetermines whether or not a route has been defined by checking that the route\nis in the Router's map and the owner has a registration for that route.",
|
|
19055
|
-
"line": " packages/@ember/-internals/routing/lib/system/router.ts:
|
|
18261
|
+
"line": " packages/@ember/-internals/routing/lib/system/router.ts:1586"
|
|
19056
18262
|
},
|
|
19057
18263
|
{
|
|
19058
18264
|
"message": "Missing item type",
|
|
@@ -19191,12 +18397,12 @@
|
|
|
19191
18397
|
"line": " packages/@ember/-internals/runtime/types/observable.d.ts:67"
|
|
19192
18398
|
},
|
|
19193
18399
|
{
|
|
19194
|
-
"message": "Missing item type
|
|
18400
|
+
"message": "Missing item type",
|
|
19195
18401
|
"line": " packages/@ember/-internals/utils/lib/guid.ts:8"
|
|
19196
18402
|
},
|
|
19197
18403
|
{
|
|
19198
18404
|
"message": "Missing item type\nGenerates a universally unique identifier. This method\nis used internally by Ember for assisting with\nthe generation of GUID's and other unique identifiers.",
|
|
19199
|
-
"line": " packages/@ember/-internals/utils/lib/guid.ts:
|
|
18405
|
+
"line": " packages/@ember/-internals/utils/lib/guid.ts:14"
|
|
19200
18406
|
},
|
|
19201
18407
|
{
|
|
19202
18408
|
"message": "Missing item type\nStrongly hint runtimes to intern the provided string.\n\nWhen do I need to use this function?\n\nFor the most part, never. Pre-mature optimization is bad, and often the\nruntime does exactly what you need it to, and more often the trade-off isn't\nworth it.\n\nWhy?\n\nRuntimes store strings in at least 2 different representations:\nRopes and Symbols (interned strings). The Rope provides a memory efficient\ndata-structure for strings created from concatenation or some other string\nmanipulation like splitting.\n\nUnfortunately checking equality of different ropes can be quite costly as\nruntimes must resort to clever string comparison algorithms. These\nalgorithms typically cost in proportion to the length of the string.\nLuckily, this is where the Symbols (interned strings) shine. As Symbols are\nunique by their string content, equality checks can be done by pointer\ncomparison.\n\nHow do I know if my string is a rope or symbol?\n\nTypically (warning general sweeping statement, but truthy in runtimes at\npresent) static strings created as part of the JS source are interned.\nStrings often used for comparisons can be interned at runtime if some\ncriteria are met. One of these criteria can be the size of the entire rope.\nFor example, in chrome 38 a rope longer then 12 characters will not\nintern, nor will segments of that rope.\n\nSome numbers: http://jsperf.com/eval-vs-keys/8\n\nKnown Trick™",
|
|
@@ -19204,7 +18410,7 @@
|
|
|
19204
18410
|
},
|
|
19205
18411
|
{
|
|
19206
18412
|
"message": "Missing item type\nUnfortunately, a lot of existing code assumes the booting process is\n\"synchronous\". Specifically, a lot of tests assumes the last call to\n`app.advanceReadiness()` or `app.reset()` will result in the app being\nfully-booted when the current runloop completes.\n\nWe would like new code (like the `visit` API) to stop making this assumption,\nso we created the asynchronous version above that returns a promise. But until\nwe have migrated all the code, we would have to expose this method for use\n*internally* in places where we need to boot an app \"synchronously\".",
|
|
19207
|
-
"line": " packages/@ember/application/lib/application.js:
|
|
18413
|
+
"line": " packages/@ember/application/lib/application.js:663"
|
|
19208
18414
|
},
|
|
19209
18415
|
{
|
|
19210
18416
|
"message": "Missing item type\nOverrides the base `EngineInstance._bootSync` method with concerns relevant\nto booting application (instead of engine) instances.\n\nThis method should only contain synchronous boot concerns. Asynchronous\nboot concerns should eventually be moved to the `boot` method, which\nreturns a promise.\n\nUntil all boot code has been made asynchronous, we need to continue to\nexpose this method for use *internally* in places where we need to boot an\ninstance synchronously.",
|