ember-source 5.6.0-beta.2 → 5.7.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-metadata.json +3 -3
- package/dist/ember-template-compiler.js +2 -2
- 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 +4 -4
- package/dist/ember.debug.map +1 -1
- package/dist/header/license.js +1 -1
- package/dist/packages/@ember/-internals/glimmer/index.js +2 -2
- package/dist/packages/@ember/component/index.js +122 -1
- package/dist/packages/ember/version.js +1 -1
- package/docs/data.json +114 -4
- package/package.json +12 -10
- package/types/stable/@ember/-internals/metal/lib/cached.d.ts +1 -1
- package/types/stable/@ember/component/index.d.ts +121 -0
package/dist/header/license.js
CHANGED
|
@@ -1291,7 +1291,7 @@ var __decorate = undefined && undefined.__decorate || function (decorators, targ
|
|
|
1291
1291
|
@public
|
|
1292
1292
|
*/
|
|
1293
1293
|
/**
|
|
1294
|
-
See Ember.Templates.components.Textarea.
|
|
1294
|
+
See [Ember.Templates.components.Textarea](/ember/release/classes/Ember.Templates.components/methods/Textarea?anchor=Textarea)
|
|
1295
1295
|
|
|
1296
1296
|
@method textarea
|
|
1297
1297
|
@for Ember.Templates.helpers
|
|
@@ -1302,7 +1302,7 @@ var __decorate = undefined && undefined.__decorate || function (decorators, targ
|
|
|
1302
1302
|
An opaque interface which can be imported and used in strict-mode
|
|
1303
1303
|
templates to call <Textarea>.
|
|
1304
1304
|
|
|
1305
|
-
See [Ember.Templates.components.Textarea](/ember/release/classes/Ember.Templates.components/methods/Textarea?anchor=
|
|
1305
|
+
See [Ember.Templates.components.Textarea](/ember/release/classes/Ember.Templates.components/methods/Textarea?anchor=Textarea).
|
|
1306
1306
|
|
|
1307
1307
|
@for @ember/component
|
|
1308
1308
|
@method Textarea
|
|
@@ -1,3 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
@module @ember/component
|
|
3
|
+
@public
|
|
4
|
+
*/
|
|
1
5
|
export { setComponentTemplate, getComponentTemplate } from '@glimmer/manager';
|
|
2
6
|
export { Component as default, Input, Textarea } from '@ember/-internals/glimmer';
|
|
3
|
-
export { componentCapabilities as capabilities, setComponentManager } from '@ember/-internals/glimmer';
|
|
7
|
+
export { componentCapabilities as capabilities, setComponentManager } from '@ember/-internals/glimmer';
|
|
8
|
+
/**
|
|
9
|
+
* Assigns a TemplateFactory to a component class.
|
|
10
|
+
*
|
|
11
|
+
* @method setComponentTemplate
|
|
12
|
+
* @static
|
|
13
|
+
* @for @ember/component
|
|
14
|
+
* @public
|
|
15
|
+
*
|
|
16
|
+
* ```js
|
|
17
|
+
* import Component from '@glimmer/component';
|
|
18
|
+
* import { hbs } from 'ember-cli-htmlbars';
|
|
19
|
+
* import { setComponentTemplate } from '@ember/component';
|
|
20
|
+
*
|
|
21
|
+
* export default class Demo extends Component {
|
|
22
|
+
* // ...
|
|
23
|
+
* }
|
|
24
|
+
*
|
|
25
|
+
* setComponentTemplate(hbs`
|
|
26
|
+
* <div>my template</div>
|
|
27
|
+
* `, Demo);
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @param {TemplateFactory} templateFactory
|
|
31
|
+
* @param {object} componentDefinition
|
|
32
|
+
*/
|
|
33
|
+
/**
|
|
34
|
+
* Returns the TemplateFactory associated with a component
|
|
35
|
+
*
|
|
36
|
+
* @method getComponentTemplate
|
|
37
|
+
* @static
|
|
38
|
+
* @for @ember/component
|
|
39
|
+
* @public
|
|
40
|
+
*
|
|
41
|
+
* ```js
|
|
42
|
+
* import Component from '@glimmer/component';
|
|
43
|
+
* import { hbs } from 'ember-cli-htmlbars';
|
|
44
|
+
* import { getComponentTemplate } from '@ember/component';
|
|
45
|
+
*
|
|
46
|
+
* export default class Demo extends Component {
|
|
47
|
+
* // ...
|
|
48
|
+
* }
|
|
49
|
+
*
|
|
50
|
+
* let theTemplateFactory = getTemplateFactory(Demo)
|
|
51
|
+
* ```
|
|
52
|
+
*
|
|
53
|
+
* @param {object} componentDefinition
|
|
54
|
+
* @returns {TemplateFactory}
|
|
55
|
+
*/
|
|
56
|
+
/**
|
|
57
|
+
* Tell the VM how manage a type of object / class when encountered
|
|
58
|
+
* via component-invocation.
|
|
59
|
+
*
|
|
60
|
+
* A Component Manager, must implement this interface:
|
|
61
|
+
* - static create()
|
|
62
|
+
* - createComponent()
|
|
63
|
+
* - updateComponent()
|
|
64
|
+
* - destroyComponent()
|
|
65
|
+
* - getContext()
|
|
66
|
+
*
|
|
67
|
+
* @method setComponentManager
|
|
68
|
+
* @static
|
|
69
|
+
* @for @ember/component
|
|
70
|
+
* @public
|
|
71
|
+
*
|
|
72
|
+
*
|
|
73
|
+
* After a component manager is registered via `setComponentManager`,
|
|
74
|
+
*
|
|
75
|
+
* ```js
|
|
76
|
+
* import { StateNode } from 'xstate';
|
|
77
|
+
* import ComponentManager from './-private/statechart-manager';
|
|
78
|
+
*
|
|
79
|
+
* setComponentManager((owner) => ComponentManager.create(owner), StateNode.prototype);
|
|
80
|
+
* ```
|
|
81
|
+
*
|
|
82
|
+
* Instances of the class can be used as component.
|
|
83
|
+
* No need to extend from `@glimmer/component`.
|
|
84
|
+
*
|
|
85
|
+
* ```js
|
|
86
|
+
* // app/components/my-component.js
|
|
87
|
+
* import { createMachine } from 'xstate';
|
|
88
|
+
*
|
|
89
|
+
* export default createMachine({ ... });
|
|
90
|
+
* ```
|
|
91
|
+
* ```hbs
|
|
92
|
+
* {{!-- app/templates/application.hbs}}
|
|
93
|
+
* <MyComponent />
|
|
94
|
+
* ```
|
|
95
|
+
*
|
|
96
|
+
* @param {(owner: Owner) => import('@glimmer/interfaces').ComponentManager} managerFactory
|
|
97
|
+
* @param {object} object that will be managed by the return value of `managerFactory`
|
|
98
|
+
*
|
|
99
|
+
*/
|
|
100
|
+
/**
|
|
101
|
+
* Tells Glimmer what capabilities a Component Manager will have
|
|
102
|
+
*
|
|
103
|
+
* ```js
|
|
104
|
+
* import { capabilities } from '@ember/component';
|
|
105
|
+
*
|
|
106
|
+
* export class MyComponentManager {
|
|
107
|
+
* capabilities = capabilities('3.13', {
|
|
108
|
+
* // capabilities listed here
|
|
109
|
+
* })
|
|
110
|
+
* }
|
|
111
|
+
* ```
|
|
112
|
+
*
|
|
113
|
+
*
|
|
114
|
+
* For a full list of capabilities, their defaults, and how they are used, see [@glimmer/manager](https://github.com/glimmerjs/glimmer-vm/blob/4f1bef0d9a8a3c3ebd934c5b6e09de4c5f6e4468/packages/%40glimmer/manager/lib/public/component.ts#L26)
|
|
115
|
+
*
|
|
116
|
+
*
|
|
117
|
+
* @method capabilities
|
|
118
|
+
* @static
|
|
119
|
+
* @for @ember/component
|
|
120
|
+
* @public
|
|
121
|
+
* @param {'3.13'} managerApiVersion
|
|
122
|
+
* @param {Parameters<import('@ember/-internals/glimmer').componentCapabilities>[1]} options
|
|
123
|
+
*
|
|
124
|
+
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export default "5.
|
|
1
|
+
export default "5.7.0-alpha.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": "5.
|
|
6
|
+
"version": "5.7.0-alpha.2"
|
|
7
7
|
},
|
|
8
8
|
"files": {
|
|
9
9
|
"node_modules/rsvp/lib/rsvp/promise/all.js": {
|
|
@@ -1050,6 +1050,15 @@
|
|
|
1050
1050
|
"fors": {},
|
|
1051
1051
|
"namespaces": {}
|
|
1052
1052
|
},
|
|
1053
|
+
"packages/@ember/component/index.ts": {
|
|
1054
|
+
"name": "packages/@ember/component/index.ts",
|
|
1055
|
+
"modules": {},
|
|
1056
|
+
"classes": {},
|
|
1057
|
+
"fors": {
|
|
1058
|
+
"@ember/component": 1
|
|
1059
|
+
},
|
|
1060
|
+
"namespaces": {}
|
|
1061
|
+
},
|
|
1053
1062
|
"packages/@ember/component/template-only.ts": {
|
|
1054
1063
|
"name": "packages/@ember/component/template-only.ts",
|
|
1055
1064
|
"modules": {
|
|
@@ -1793,7 +1802,9 @@
|
|
|
1793
1802
|
"file": "packages/@ember/-internals/glimmer/lib/helper.ts",
|
|
1794
1803
|
"line": 53,
|
|
1795
1804
|
"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).",
|
|
1796
|
-
"itemtype": "main"
|
|
1805
|
+
"itemtype": "main",
|
|
1806
|
+
"access": "public",
|
|
1807
|
+
"tagname": ""
|
|
1797
1808
|
},
|
|
1798
1809
|
"@ember/routing": {
|
|
1799
1810
|
"name": "@ember/routing",
|
|
@@ -5649,7 +5660,7 @@
|
|
|
5649
5660
|
{
|
|
5650
5661
|
"file": "packages/@ember/-internals/glimmer/lib/components/textarea.ts",
|
|
5651
5662
|
"line": 123,
|
|
5652
|
-
"description": "See Ember.Templates.components.Textarea.",
|
|
5663
|
+
"description": "See [Ember.Templates.components.Textarea](/ember/release/classes/Ember.Templates.components/methods/Textarea?anchor=Textarea)",
|
|
5653
5664
|
"itemtype": "method",
|
|
5654
5665
|
"name": "textarea",
|
|
5655
5666
|
"see": [
|
|
@@ -5663,7 +5674,7 @@
|
|
|
5663
5674
|
{
|
|
5664
5675
|
"file": "packages/@ember/-internals/glimmer/lib/components/textarea.ts",
|
|
5665
5676
|
"line": 132,
|
|
5666
|
-
"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=
|
|
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=Textarea).",
|
|
5667
5678
|
"itemtype": "method",
|
|
5668
5679
|
"name": "Textarea",
|
|
5669
5680
|
"see": [
|
|
@@ -11346,6 +11357,101 @@
|
|
|
11346
11357
|
"class": "FEATURES",
|
|
11347
11358
|
"module": "@ember/canary-features"
|
|
11348
11359
|
},
|
|
11360
|
+
{
|
|
11361
|
+
"file": "packages/@ember/component/index.ts",
|
|
11362
|
+
"line": 14,
|
|
11363
|
+
"description": "Assigns a TemplateFactory to a component class.",
|
|
11364
|
+
"itemtype": "method",
|
|
11365
|
+
"name": "setComponentTemplate",
|
|
11366
|
+
"static": 1,
|
|
11367
|
+
"access": "public",
|
|
11368
|
+
"tagname": "```js\nimport Component from '---AT-PLACEHOLDER---glimmer/component';\nimport { hbs } from 'ember-cli-htmlbars';\nimport { setComponentTemplate } from '---AT-PLACEHOLDER---ember/component';\n\nexport default class Demo extends Component {\n // ...\n}\n\nsetComponentTemplate(hbs`\n <div>my template</div>\n`, Demo);\n```",
|
|
11369
|
+
"params": [
|
|
11370
|
+
{
|
|
11371
|
+
"name": "templateFactory",
|
|
11372
|
+
"description": "",
|
|
11373
|
+
"type": "TemplateFactory"
|
|
11374
|
+
},
|
|
11375
|
+
{
|
|
11376
|
+
"name": "componentDefinition",
|
|
11377
|
+
"description": "",
|
|
11378
|
+
"type": "Object"
|
|
11379
|
+
}
|
|
11380
|
+
],
|
|
11381
|
+
"class": "@ember/component",
|
|
11382
|
+
"module": "@ember/component"
|
|
11383
|
+
},
|
|
11384
|
+
{
|
|
11385
|
+
"file": "packages/@ember/component/index.ts",
|
|
11386
|
+
"line": 40,
|
|
11387
|
+
"description": "Returns the TemplateFactory associated with a component",
|
|
11388
|
+
"itemtype": "method",
|
|
11389
|
+
"name": "getComponentTemplate",
|
|
11390
|
+
"static": 1,
|
|
11391
|
+
"access": "public",
|
|
11392
|
+
"tagname": "```js\nimport Component from '---AT-PLACEHOLDER---glimmer/component';\nimport { hbs } from 'ember-cli-htmlbars';\nimport { getComponentTemplate } from '---AT-PLACEHOLDER---ember/component';\n\nexport default class Demo extends Component {\n // ...\n}\n\nlet theTemplateFactory = getTemplateFactory(Demo)\n```",
|
|
11393
|
+
"params": [
|
|
11394
|
+
{
|
|
11395
|
+
"name": "componentDefinition",
|
|
11396
|
+
"description": "",
|
|
11397
|
+
"type": "Object"
|
|
11398
|
+
}
|
|
11399
|
+
],
|
|
11400
|
+
"return": {
|
|
11401
|
+
"description": "",
|
|
11402
|
+
"type": "TemplateFactory"
|
|
11403
|
+
},
|
|
11404
|
+
"class": "@ember/component",
|
|
11405
|
+
"module": "@ember/component"
|
|
11406
|
+
},
|
|
11407
|
+
{
|
|
11408
|
+
"file": "packages/@ember/component/index.ts",
|
|
11409
|
+
"line": 64,
|
|
11410
|
+
"description": "Tell the VM how manage a type of object / class when encountered\nvia component-invocation.\n\nA Component Manager, must implement this interface:\n- static create()\n- createComponent()\n- updateComponent()\n- destroyComponent()\n- getContext()",
|
|
11411
|
+
"itemtype": "method",
|
|
11412
|
+
"name": "setComponentManager",
|
|
11413
|
+
"static": 1,
|
|
11414
|
+
"access": "public",
|
|
11415
|
+
"tagname": "After a component manager is registered via `setComponentManager`,\n\n```js\nimport { StateNode } from 'xstate';\nimport ComponentManager from './-private/statechart-manager';\n\nsetComponentManager((owner) => ComponentManager.create(owner), StateNode.prototype);\n```\n\nInstances of the class can be used as component.\nNo need to extend from `@glimmer/component`.\n\n```js\n// app/components/my-component.js\nimport { createMachine } from 'xstate';\n\nexport default createMachine({ ... });\n```\n```hbs\n{{!-- app/templates/application.hbs}}\n<MyComponent />\n```",
|
|
11416
|
+
"params": [
|
|
11417
|
+
{
|
|
11418
|
+
"name": "managerFactory",
|
|
11419
|
+
"description": "",
|
|
11420
|
+
"type": "(owner: Owner) => import('@glimmer/interfaces').ComponentManager"
|
|
11421
|
+
},
|
|
11422
|
+
{
|
|
11423
|
+
"name": "object",
|
|
11424
|
+
"description": "that will be managed by the return value of `managerFactory`",
|
|
11425
|
+
"type": "Object"
|
|
11426
|
+
}
|
|
11427
|
+
],
|
|
11428
|
+
"class": "@ember/component",
|
|
11429
|
+
"module": "@ember/component"
|
|
11430
|
+
},
|
|
11431
|
+
{
|
|
11432
|
+
"file": "packages/@ember/component/index.ts",
|
|
11433
|
+
"line": 109,
|
|
11434
|
+
"description": "Tells Glimmer what capabilities a Component Manager will have\n\n```js\nimport { capabilities } from '@ember/component';\n\nexport class MyComponentManager {\n capabilities = capabilities('3.13', {\n // capabilities listed here\n })\n}\n```\n\n\nFor a full list of capabilities, their defaults, and how they are used, see [@glimmer/manager](https://github.com/glimmerjs/glimmer-vm/blob/4f1bef0d9a8a3c3ebd934c5b6e09de4c5f6e4468/packages/%40glimmer/manager/lib/public/component.ts#L26)",
|
|
11435
|
+
"itemtype": "method",
|
|
11436
|
+
"name": "capabilities",
|
|
11437
|
+
"static": 1,
|
|
11438
|
+
"access": "public",
|
|
11439
|
+
"tagname": "",
|
|
11440
|
+
"params": [
|
|
11441
|
+
{
|
|
11442
|
+
"name": "managerApiVersion",
|
|
11443
|
+
"description": "",
|
|
11444
|
+
"type": "'3.13'"
|
|
11445
|
+
},
|
|
11446
|
+
{
|
|
11447
|
+
"name": "options",
|
|
11448
|
+
"description": "",
|
|
11449
|
+
"type": "Parameters<import('@ember/-internals/glimmer').componentCapabilities>[1]"
|
|
11450
|
+
}
|
|
11451
|
+
],
|
|
11452
|
+
"class": "@ember/component",
|
|
11453
|
+
"module": "@ember/component"
|
|
11454
|
+
},
|
|
11349
11455
|
{
|
|
11350
11456
|
"file": "packages/@ember/component/template-only.ts",
|
|
11351
11457
|
"line": 6,
|
|
@@ -19070,6 +19176,10 @@
|
|
|
19070
19176
|
"message": "replacing incorrect tag: function with method",
|
|
19071
19177
|
"line": " packages/@ember/-internals/utils/lib/spec.ts:1"
|
|
19072
19178
|
},
|
|
19179
|
+
{
|
|
19180
|
+
"message": "replacing incorrect tag: returns with return",
|
|
19181
|
+
"line": " packages/@ember/component/index.ts:40"
|
|
19182
|
+
},
|
|
19073
19183
|
{
|
|
19074
19184
|
"message": "replacing incorrect tag: returns with return",
|
|
19075
19185
|
"line": " packages/@ember/destroyable/index.ts:31"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ember-source",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.7.0-alpha.2",
|
|
4
4
|
"description": "A JavaScript framework for creating ambitious web applications",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ember-addon"
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
"build": "npm-run-all build:*",
|
|
39
39
|
"docs": "ember ember-cli-yuidoc",
|
|
40
40
|
"start": "ember serve",
|
|
41
|
+
"link:glimmer-vm": "node bin/link-glimmer-vm-packages.mjs",
|
|
41
42
|
"lint": "npm-run-all --continue-on-error --aggregate-output --parallel \"lint:!(fix)\"",
|
|
42
43
|
"lint:docs": "qunit tests/docs/coverage-test.js",
|
|
43
44
|
"lint:eslint": "eslint --report-unused-disable-directives --cache .",
|
|
@@ -51,7 +52,8 @@
|
|
|
51
52
|
"test:browserstack": "node bin/run-browserstack-tests.js",
|
|
52
53
|
"type-check:internals": "tsc --noEmit",
|
|
53
54
|
"type-check:types": "pnpm build:types && tsc --noEmit --project type-tests",
|
|
54
|
-
"type-check": "npm-run-all type-check:*"
|
|
55
|
+
"type-check": "npm-run-all type-check:*",
|
|
56
|
+
"unlink:all": "node bin/unlink-all.mjs"
|
|
55
57
|
},
|
|
56
58
|
"dependencies": {
|
|
57
59
|
"@babel/helper-module-imports": "^7.16.7",
|
|
@@ -105,7 +107,7 @@
|
|
|
105
107
|
"devDependencies": {
|
|
106
108
|
"@aws-sdk/client-s3": "^3.321.1",
|
|
107
109
|
"@babel/core": "^7.22.9",
|
|
108
|
-
"@babel/plugin-proposal-decorators": "^7.
|
|
110
|
+
"@babel/plugin-proposal-decorators": "^7.23.6",
|
|
109
111
|
"@babel/plugin-transform-typescript": "^7.22.9",
|
|
110
112
|
"@babel/preset-env": "^7.16.11",
|
|
111
113
|
"@babel/types": "^7.22.5",
|
|
@@ -138,14 +140,14 @@
|
|
|
138
140
|
"ember-cli-dependency-checker": "^3.3.1",
|
|
139
141
|
"ember-cli-yuidoc": "^0.9.1",
|
|
140
142
|
"eslint": "^8.53.0",
|
|
141
|
-
"eslint-config-prettier": "^
|
|
143
|
+
"eslint-config-prettier": "^9.1.0",
|
|
142
144
|
"eslint-import-resolver-node": "^0.3.7",
|
|
143
145
|
"eslint-plugin-disable-features": "^0.1.3",
|
|
144
146
|
"eslint-plugin-ember-internal": "^3.0.0",
|
|
145
|
-
"eslint-plugin-import": "^2.
|
|
147
|
+
"eslint-plugin-import": "^2.29.0",
|
|
146
148
|
"eslint-plugin-n": "^16.0.1",
|
|
147
149
|
"eslint-plugin-prettier": "^4.2.1",
|
|
148
|
-
"eslint-plugin-qunit": "^
|
|
150
|
+
"eslint-plugin-qunit": "^8.0.1",
|
|
149
151
|
"execa": "^5.1.1",
|
|
150
152
|
"expect-type": "^0.15.0",
|
|
151
153
|
"express": "^4.18.2",
|
|
@@ -156,9 +158,9 @@
|
|
|
156
158
|
"glob": "^8.0.3",
|
|
157
159
|
"html-differ": "^1.4.0",
|
|
158
160
|
"lodash.uniq": "^4.5.0",
|
|
159
|
-
"mkdirp": "^
|
|
161
|
+
"mkdirp": "^3.0.1",
|
|
160
162
|
"mocha": "^10.2.0",
|
|
161
|
-
"npm-run-
|
|
163
|
+
"npm-run-all2": "^6.0.6",
|
|
162
164
|
"prettier": "^2.8.0",
|
|
163
165
|
"puppeteer": "^20.9.0",
|
|
164
166
|
"qunit": "^2.19.4",
|
|
@@ -202,9 +204,9 @@
|
|
|
202
204
|
"node": "16.20.0",
|
|
203
205
|
"pnpm": "8.10.0"
|
|
204
206
|
},
|
|
205
|
-
"_originalVersion": "5.
|
|
207
|
+
"_originalVersion": "5.7.0-alpha.2",
|
|
206
208
|
"_versionPreviouslyCalculated": true,
|
|
207
209
|
"publishConfig": {
|
|
208
|
-
"tag": "
|
|
210
|
+
"tag": "alpha"
|
|
209
211
|
}
|
|
210
212
|
}
|
|
@@ -1,8 +1,129 @@
|
|
|
1
1
|
declare module '@ember/component' {
|
|
2
|
+
/**
|
|
3
|
+
@module @ember/component
|
|
4
|
+
@public
|
|
5
|
+
*/
|
|
2
6
|
export { setComponentTemplate, getComponentTemplate } from '@glimmer/manager';
|
|
3
7
|
export { Component as default, Input, Textarea } from '@ember/-internals/glimmer';
|
|
4
8
|
export {
|
|
5
9
|
componentCapabilities as capabilities,
|
|
6
10
|
setComponentManager,
|
|
7
11
|
} from '@ember/-internals/glimmer';
|
|
12
|
+
/**
|
|
13
|
+
* Assigns a TemplateFactory to a component class.
|
|
14
|
+
*
|
|
15
|
+
* @method setComponentTemplate
|
|
16
|
+
* @static
|
|
17
|
+
* @for @ember/component
|
|
18
|
+
* @public
|
|
19
|
+
*
|
|
20
|
+
* ```js
|
|
21
|
+
* import Component from '@glimmer/component';
|
|
22
|
+
* import { hbs } from 'ember-cli-htmlbars';
|
|
23
|
+
* import { setComponentTemplate } from '@ember/component';
|
|
24
|
+
*
|
|
25
|
+
* export default class Demo extends Component {
|
|
26
|
+
* // ...
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
29
|
+
* setComponentTemplate(hbs`
|
|
30
|
+
* <div>my template</div>
|
|
31
|
+
* `, Demo);
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @param {TemplateFactory} templateFactory
|
|
35
|
+
* @param {object} componentDefinition
|
|
36
|
+
*/
|
|
37
|
+
/**
|
|
38
|
+
* Returns the TemplateFactory associated with a component
|
|
39
|
+
*
|
|
40
|
+
* @method getComponentTemplate
|
|
41
|
+
* @static
|
|
42
|
+
* @for @ember/component
|
|
43
|
+
* @public
|
|
44
|
+
*
|
|
45
|
+
* ```js
|
|
46
|
+
* import Component from '@glimmer/component';
|
|
47
|
+
* import { hbs } from 'ember-cli-htmlbars';
|
|
48
|
+
* import { getComponentTemplate } from '@ember/component';
|
|
49
|
+
*
|
|
50
|
+
* export default class Demo extends Component {
|
|
51
|
+
* // ...
|
|
52
|
+
* }
|
|
53
|
+
*
|
|
54
|
+
* let theTemplateFactory = getTemplateFactory(Demo)
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @param {object} componentDefinition
|
|
58
|
+
* @returns {TemplateFactory}
|
|
59
|
+
*/
|
|
60
|
+
/**
|
|
61
|
+
* Tell the VM how manage a type of object / class when encountered
|
|
62
|
+
* via component-invocation.
|
|
63
|
+
*
|
|
64
|
+
* A Component Manager, must implement this interface:
|
|
65
|
+
* - static create()
|
|
66
|
+
* - createComponent()
|
|
67
|
+
* - updateComponent()
|
|
68
|
+
* - destroyComponent()
|
|
69
|
+
* - getContext()
|
|
70
|
+
*
|
|
71
|
+
* @method setComponentManager
|
|
72
|
+
* @static
|
|
73
|
+
* @for @ember/component
|
|
74
|
+
* @public
|
|
75
|
+
*
|
|
76
|
+
*
|
|
77
|
+
* After a component manager is registered via `setComponentManager`,
|
|
78
|
+
*
|
|
79
|
+
* ```js
|
|
80
|
+
* import { StateNode } from 'xstate';
|
|
81
|
+
* import ComponentManager from './-private/statechart-manager';
|
|
82
|
+
*
|
|
83
|
+
* setComponentManager((owner) => ComponentManager.create(owner), StateNode.prototype);
|
|
84
|
+
* ```
|
|
85
|
+
*
|
|
86
|
+
* Instances of the class can be used as component.
|
|
87
|
+
* No need to extend from `@glimmer/component`.
|
|
88
|
+
*
|
|
89
|
+
* ```js
|
|
90
|
+
* // app/components/my-component.js
|
|
91
|
+
* import { createMachine } from 'xstate';
|
|
92
|
+
*
|
|
93
|
+
* export default createMachine({ ... });
|
|
94
|
+
* ```
|
|
95
|
+
* ```hbs
|
|
96
|
+
* {{!-- app/templates/application.hbs}}
|
|
97
|
+
* <MyComponent />
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
100
|
+
* @param {(owner: Owner) => import('@glimmer/interfaces').ComponentManager} managerFactory
|
|
101
|
+
* @param {object} object that will be managed by the return value of `managerFactory`
|
|
102
|
+
*
|
|
103
|
+
*/
|
|
104
|
+
/**
|
|
105
|
+
* Tells Glimmer what capabilities a Component Manager will have
|
|
106
|
+
*
|
|
107
|
+
* ```js
|
|
108
|
+
* import { capabilities } from '@ember/component';
|
|
109
|
+
*
|
|
110
|
+
* export class MyComponentManager {
|
|
111
|
+
* capabilities = capabilities('3.13', {
|
|
112
|
+
* // capabilities listed here
|
|
113
|
+
* })
|
|
114
|
+
* }
|
|
115
|
+
* ```
|
|
116
|
+
*
|
|
117
|
+
*
|
|
118
|
+
* For a full list of capabilities, their defaults, and how they are used, see [@glimmer/manager](https://github.com/glimmerjs/glimmer-vm/blob/4f1bef0d9a8a3c3ebd934c5b6e09de4c5f6e4468/packages/%40glimmer/manager/lib/public/component.ts#L26)
|
|
119
|
+
*
|
|
120
|
+
*
|
|
121
|
+
* @method capabilities
|
|
122
|
+
* @static
|
|
123
|
+
* @for @ember/component
|
|
124
|
+
* @public
|
|
125
|
+
* @param {'3.13'} managerApiVersion
|
|
126
|
+
* @param {Parameters<import('@ember/-internals/glimmer').componentCapabilities>[1]} options
|
|
127
|
+
*
|
|
128
|
+
*/
|
|
8
129
|
}
|