ember-cli 4.0.0-beta.4 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/.github/workflows/ci.yml +4 -4
  2. package/CHANGELOG.md +28 -17
  3. package/bin/ember +0 -0
  4. package/blueprints/addon/additional-dev-dependencies.json +1 -1
  5. package/blueprints/addon/files/.github/workflows/ci.yml +5 -1
  6. package/blueprints/addon/files/.travis.yml +1 -1
  7. package/blueprints/addon/files/README.md +2 -2
  8. package/blueprints/addon/files/addon-config/ember-try.js +4 -4
  9. package/blueprints/app/files/.github/workflows/ci.yml +4 -0
  10. package/blueprints/app/files/package.json +8 -8
  11. package/blueprints/in-repo-addon/files/__root__/__name__/index.js +0 -0
  12. package/blueprints/in-repo-addon/index.js +0 -0
  13. package/blueprints/lib/index.js +0 -0
  14. package/docs/build/data.json +413 -413
  15. package/lib/models/host-info-cache.js +3 -5
  16. package/lib/models/per-bundle-addon-cache/index.js +2 -3
  17. package/lib/tasks/npm-task.js +1 -1
  18. package/lib/utilities/get-lang-arg.js +45 -45
  19. package/package.json +25 -25
  20. package/.github/ISSUE_TEMPLATE.md +0 -12
  21. package/.github/dependabot.yml +0 -15
  22. package/.github/workflows/coverage.yml +0 -31
  23. package/docs/analytics.md +0 -44
  24. package/docs/architecture.md +0 -316
  25. package/docs/assets/architecture/Ember-CLI architecture.png +0 -0
  26. package/docs/assets/architecture/Ember-CLI architecture.xml +0 -1
  27. package/docs/assets/architecture/README.md +0 -5
  28. package/docs/brocfile-transition.md +0 -46
  29. package/docs/build/api.js +0 -44
  30. package/docs/build/assets/css/external-small.png +0 -0
  31. package/docs/build/assets/css/logo.png +0 -0
  32. package/docs/build/assets/css/main.css +0 -555
  33. package/docs/build/assets/favicon.ico +0 -0
  34. package/docs/build/assets/img/spinner.gif +0 -0
  35. package/docs/build/assets/index.html +0 -10
  36. package/docs/build/assets/js/api-filter.js +0 -56
  37. package/docs/build/assets/js/api-list.js +0 -255
  38. package/docs/build/assets/js/api-search.js +0 -98
  39. package/docs/build/assets/js/apidocs.js +0 -376
  40. package/docs/build/assets/js/yui-prettify.js +0 -17
  41. package/docs/build/assets/vendor/prettify/CHANGES.html +0 -130
  42. package/docs/build/assets/vendor/prettify/COPYING +0 -202
  43. package/docs/build/assets/vendor/prettify/README.html +0 -203
  44. package/docs/build/assets/vendor/prettify/prettify-min.css +0 -1
  45. package/docs/build/assets/vendor/prettify/prettify-min.js +0 -1
  46. package/docs/build/classes/Addon.html +0 -4318
  47. package/docs/build/classes/AmdTransformAddon.html +0 -202
  48. package/docs/build/classes/Blueprint.html +0 -4796
  49. package/docs/build/classes/Builder.html +0 -611
  50. package/docs/build/classes/CLI.html +0 -810
  51. package/docs/build/classes/Command.html +0 -1655
  52. package/docs/build/classes/DefaultPackager.html +0 -202
  53. package/docs/build/classes/EmberAddon.html +0 -2207
  54. package/docs/build/classes/EmberApp.html +0 -2225
  55. package/docs/build/classes/HardwareInfo.html +0 -620
  56. package/docs/build/classes/HistorySupportAddon.html +0 -203
  57. package/docs/build/classes/Instrumentation.html +0 -695
  58. package/docs/build/classes/NodeModulesList.html +0 -460
  59. package/docs/build/classes/NpmTask.html +0 -333
  60. package/docs/build/classes/PackageInfo.html +0 -1390
  61. package/docs/build/classes/PackageInfoCache.html +0 -963
  62. package/docs/build/classes/PerBundleAddonCache {.html +0 -1010
  63. package/docs/build/classes/Project.html +0 -2083
  64. package/docs/build/classes/ServeFilesAddon.html +0 -260
  65. package/docs/build/classes/TestsServerAddon.html +0 -203
  66. package/docs/build/classes/WatcherAddon.html +0 -204
  67. package/docs/build/classes/WindowsSymlinkChecker.html +0 -1505
  68. package/docs/build/files/lib_broccoli_default-packager.js.html +0 -1426
  69. package/docs/build/files/lib_broccoli_ember-addon.js.html +0 -159
  70. package/docs/build/files/lib_broccoli_ember-app.js.html +0 -1913
  71. package/docs/build/files/lib_cli_cli.js.html +0 -417
  72. package/docs/build/files/lib_models_addon-info.js.html +0 -112
  73. package/docs/build/files/lib_models_addon.js.html +0 -1866
  74. package/docs/build/files/lib_models_blueprint.js.html +0 -1678
  75. package/docs/build/files/lib_models_builder.js.html +0 -417
  76. package/docs/build/files/lib_models_command.js.html +0 -804
  77. package/docs/build/files/lib_models_hardware-info.js.html +0 -479
  78. package/docs/build/files/lib_models_host-info-cache.js.html +0 -428
  79. package/docs/build/files/lib_models_installation-checker.js.html +0 -181
  80. package/docs/build/files/lib_models_instantiate-addons.js.html +0 -191
  81. package/docs/build/files/lib_models_instrumentation.js.html +0 -433
  82. package/docs/build/files/lib_models_package-info-cache_index.js.html +0 -793
  83. package/docs/build/files/lib_models_package-info-cache_node-modules-list.js.html +0 -208
  84. package/docs/build/files/lib_models_package-info-cache_package-info.js.html +0 -661
  85. package/docs/build/files/lib_models_per-bundle-addon-cache_addon-proxy.js.html +0 -252
  86. package/docs/build/files/lib_models_per-bundle-addon-cache_index.js.html +0 -485
  87. package/docs/build/files/lib_models_per-bundle-addon-cache_target-instance.js.html +0 -108
  88. package/docs/build/files/lib_models_project.js.html +0 -913
  89. package/docs/build/files/lib_models_task.js.html +0 -117
  90. package/docs/build/files/lib_tasks_build-watch.js.html +0 -157
  91. package/docs/build/files/lib_tasks_npm-task.js.html +0 -463
  92. package/docs/build/files/lib_tasks_serve.js.html +0 -207
  93. package/docs/build/files/lib_tasks_server_middleware_broccoli-serve-files_index.js.html +0 -127
  94. package/docs/build/files/lib_tasks_server_middleware_broccoli-watcher_index.js.html +0 -158
  95. package/docs/build/files/lib_tasks_server_middleware_history-support_index.js.html +0 -181
  96. package/docs/build/files/lib_tasks_server_middleware_tests-server_index.js.html +0 -171
  97. package/docs/build/files/lib_tasks_test-server.js.html +0 -167
  98. package/docs/build/files/lib_tasks_transforms_amd_index.js.html +0 -143
  99. package/docs/build/files/lib_utilities_ember-app-utils.js.html +0 -292
  100. package/docs/build/files/lib_utilities_insert-into-file.js.html +0 -219
  101. package/docs/build/files/lib_utilities_is-lazy-engine.js.html +0 -125
  102. package/docs/build/files/lib_utilities_is-yarn-project.js.html +0 -120
  103. package/docs/build/files/lib_utilities_valid-project-name.js.html +0 -142
  104. package/docs/build/files/lib_utilities_will-interrupt-process.js.html +0 -290
  105. package/docs/build/files/lib_utilities_windows-admin.js.html +0 -230
  106. package/docs/build/index.html +0 -125
  107. package/docs/build/modules/ember-cli.html +0 -152
  108. package/docs/build/modules/is-lazy-engine.html +0 -106
  109. package/docs/build-concurrency.md +0 -15
  110. package/docs/build-pipeline-debugging.md +0 -33
  111. package/docs/code-coverage.md +0 -14
  112. package/docs/error-propagation.md +0 -136
  113. package/docs/experiments.md +0 -53
  114. package/docs/node-support.md +0 -43
  115. package/docs/perf-guide.md +0 -250
  116. package/docs/project_version_preprocessor.js +0 -8
  117. package/docs/sourcemaps.md +0 -60
  118. package/docs/yuidoc.json +0 -13
@@ -1,255 +0,0 @@
1
- YUI.add('api-list', function (Y) {
2
-
3
- var Lang = Y.Lang,
4
- YArray = Y.Array,
5
-
6
- APIList = Y.namespace('APIList'),
7
-
8
- classesNode = Y.one('#api-classes'),
9
- elementsNode = Y.one('#api-elements'),
10
- inputNode = Y.one('#api-filter'),
11
- modulesNode = Y.one('#api-modules'),
12
- tabviewNode = Y.one('#api-tabview'),
13
-
14
- tabs = APIList.tabs = {},
15
-
16
- filter = APIList.filter = new Y.APIFilter({
17
- inputNode : inputNode,
18
- maxResults: 1000,
19
-
20
- on: {
21
- results: onFilterResults
22
- }
23
- }),
24
-
25
- search = APIList.search = new Y.APISearch({
26
- inputNode : inputNode,
27
- maxResults: 100,
28
-
29
- on: {
30
- clear : onSearchClear,
31
- results: onSearchResults
32
- }
33
- }),
34
-
35
- tabview = APIList.tabview = new Y.TabView({
36
- srcNode : tabviewNode,
37
- panelNode: '#api-tabview-panel',
38
- render : true,
39
-
40
- on: {
41
- selectionChange: onTabSelectionChange
42
- }
43
- }),
44
-
45
- focusManager = APIList.focusManager = tabviewNode.plug(Y.Plugin.NodeFocusManager, {
46
- circular : true,
47
- descendants: '#api-filter, .yui3-tab-panel-selected .api-list-item a, .yui3-tab-panel-selected .result a',
48
- keys : {next: 'down:40', previous: 'down:38'}
49
- }).focusManager,
50
-
51
- LIST_ITEM_TEMPLATE =
52
- '<li class="api-list-item {typeSingular}">' +
53
- '<a href="{rootPath}{typePlural}/{name}.html">{displayName}</a>' +
54
- '</li>';
55
-
56
- // -- Init ---------------------------------------------------------------------
57
-
58
- // Duckpunch FocusManager's key event handling to prevent it from handling key
59
- // events when a modifier is pressed.
60
- Y.before(function (e, activeDescendant) {
61
- if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) {
62
- return new Y.Do.Prevent();
63
- }
64
- }, focusManager, '_focusPrevious', focusManager);
65
-
66
- Y.before(function (e, activeDescendant) {
67
- if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) {
68
- return new Y.Do.Prevent();
69
- }
70
- }, focusManager, '_focusNext', focusManager);
71
-
72
- // Create a mapping of tabs in the tabview so we can refer to them easily later.
73
- tabview.each(function (tab, index) {
74
- var name = tab.get('label').toLowerCase();
75
-
76
- tabs[name] = {
77
- index: index,
78
- name : name,
79
- tab : tab
80
- };
81
- });
82
-
83
- // Switch tabs on Ctrl/Cmd-Left/Right arrows.
84
- tabviewNode.on('key', onTabSwitchKey, 'down:37,39');
85
-
86
- // Focus the filter input when the `/` key is pressed.
87
- Y.one(Y.config.doc).on('key', onSearchKey, 'down:83');
88
-
89
- // Keep the Focus Manager up to date.
90
- inputNode.on('focus', function () {
91
- focusManager.set('activeDescendant', inputNode);
92
- });
93
-
94
- // Update all tabview links to resolved URLs.
95
- tabview.get('panelNode').all('a').each(function (link) {
96
- link.setAttribute('href', link.get('href'));
97
- });
98
-
99
- // -- Private Functions --------------------------------------------------------
100
- function getFilterResultNode() {
101
- var queryType = filter.get('queryType');
102
- return queryType === 'classes' ? classesNode
103
- : queryType === 'elements' ? elementsNode : modulesNode;
104
- }
105
-
106
- // -- Event Handlers -----------------------------------------------------------
107
- function onFilterResults(e) {
108
- var frag = Y.one(Y.config.doc.createDocumentFragment()),
109
- resultNode = getFilterResultNode(),
110
- typePlural = filter.get('queryType'),
111
- typeSingular = typePlural === 'classes' ? 'class' : typePlural === 'elements' ? 'element' : 'module';
112
-
113
- if (e.results.length) {
114
- YArray.each(e.results, function (result) {
115
- frag.append(Lang.sub(LIST_ITEM_TEMPLATE, {
116
- rootPath : APIList.rootPath,
117
- displayName : filter.getDisplayName(result.highlighted),
118
- name : result.text,
119
- typePlural : typePlural,
120
- typeSingular: typeSingular
121
- }));
122
- });
123
- } else {
124
- frag.append(
125
- '<li class="message">' +
126
- 'No ' + typePlural + ' found.' +
127
- '</li>'
128
- );
129
- }
130
-
131
- resultNode.empty(true);
132
- resultNode.append(frag);
133
-
134
- focusManager.refresh();
135
- }
136
-
137
- function onSearchClear(e) {
138
-
139
- focusManager.refresh();
140
- }
141
-
142
- function onSearchKey(e) {
143
- var target = e.target;
144
-
145
- if (target.test('input,select,textarea')
146
- || target.get('isContentEditable')) {
147
- return;
148
- }
149
-
150
- e.preventDefault();
151
-
152
- inputNode.focus();
153
- focusManager.refresh();
154
- }
155
-
156
- function onSearchResults(e) {
157
- var frag = Y.one(Y.config.doc.createDocumentFragment());
158
-
159
- if (e.results.length) {
160
- YArray.each(e.results, function (result) {
161
- frag.append(result.display);
162
- });
163
- } else {
164
- frag.append(
165
- '<li class="message">' +
166
- 'No results found. Maybe you\'ll have better luck with a ' +
167
- 'different query?' +
168
- '</li>'
169
- );
170
- }
171
-
172
-
173
- focusManager.refresh();
174
- }
175
-
176
- function onTabSelectionChange(e) {
177
- var tab = e.newVal,
178
- name = tab.get('label').toLowerCase();
179
-
180
- tabs.selected = {
181
- index: tab.get('index'),
182
- name : name,
183
- tab : tab
184
- };
185
-
186
- switch (name) {
187
- case 'elements':// fallthru
188
- case 'classes': // fallthru
189
- case 'modules':
190
- filter.setAttrs({
191
- minQueryLength: 0,
192
- queryType : name
193
- });
194
-
195
- search.set('minQueryLength', -1);
196
-
197
- // Only send a request if this isn't the initially-selected tab.
198
- if (e.prevVal) {
199
- filter.sendRequest(filter.get('value'));
200
- }
201
- break;
202
-
203
- case 'everything':
204
- filter.set('minQueryLength', -1);
205
- search.set('minQueryLength', 1);
206
-
207
- if (search.get('value')) {
208
- search.sendRequest(search.get('value'));
209
- } else {
210
- inputNode.focus();
211
- }
212
- break;
213
-
214
- default:
215
- // WTF? We shouldn't be here!
216
- filter.set('minQueryLength', -1);
217
- search.set('minQueryLength', -1);
218
- }
219
-
220
- if (focusManager) {
221
- setTimeout(function () {
222
- focusManager.refresh();
223
- }, 1);
224
- }
225
- }
226
-
227
- function onTabSwitchKey(e) {
228
- var currentTabIndex = tabs.selected.index;
229
-
230
- if (!(e.ctrlKey || e.metaKey)) {
231
- return;
232
- }
233
-
234
- e.preventDefault();
235
-
236
- switch (e.keyCode) {
237
- case 37: // left arrow
238
- if (currentTabIndex > 0) {
239
- tabview.selectChild(currentTabIndex - 1);
240
- inputNode.focus();
241
- }
242
- break;
243
-
244
- case 39: // right arrow
245
- if (currentTabIndex < (Y.Object.size(tabs) - 2)) {
246
- tabview.selectChild(currentTabIndex + 1);
247
- inputNode.focus();
248
- }
249
- break;
250
- }
251
- }
252
-
253
- }, '3.4.0', {requires: [
254
- 'api-filter', 'api-search', 'event-key', 'node-focusmanager', 'tabview'
255
- ]});
@@ -1,98 +0,0 @@
1
- YUI.add('api-search', function (Y) {
2
-
3
- var Lang = Y.Lang,
4
- Node = Y.Node,
5
- YArray = Y.Array;
6
-
7
- Y.APISearch = Y.Base.create('apiSearch', Y.Base, [Y.AutoCompleteBase], {
8
- // -- Public Properties ----------------------------------------------------
9
- RESULT_TEMPLATE:
10
- '<li class="result {resultType}">' +
11
- '<a href="{url}">' +
12
- '<h3 class="title">{name}</h3>' +
13
- '<span class="type">{resultType}</span>' +
14
- '<div class="description">{description}</div>' +
15
- '<span class="className">{class}</span>' +
16
- '</a>' +
17
- '</li>',
18
-
19
- // -- Initializer ----------------------------------------------------------
20
- initializer: function () {
21
- this._bindUIACBase();
22
- this._syncUIACBase();
23
- },
24
-
25
- // -- Protected Methods ----------------------------------------------------
26
- _apiResultFilter: function (query, results) {
27
- // Filter components out of the results.
28
- return YArray.filter(results, function (result) {
29
- return result.raw.resultType === 'component' ? false : result;
30
- });
31
- },
32
-
33
- _apiResultFormatter: function (query, results) {
34
- return YArray.map(results, function (result) {
35
- var raw = Y.merge(result.raw), // create a copy
36
- desc = raw.description || '';
37
-
38
- // Convert description to text and truncate it if necessary.
39
- desc = Node.create('<div>' + desc + '</div>').get('text');
40
-
41
- if (desc.length > 65) {
42
- desc = Y.Escape.html(desc.substr(0, 65)) + ' &hellip;';
43
- } else {
44
- desc = Y.Escape.html(desc);
45
- }
46
-
47
- raw['class'] || (raw['class'] = '');
48
- raw.description = desc;
49
-
50
- // Use the highlighted result name.
51
- raw.name = result.highlighted;
52
-
53
- return Lang.sub(this.RESULT_TEMPLATE, raw);
54
- }, this);
55
- },
56
-
57
- _apiTextLocator: function (result) {
58
- return result.displayName || result.name;
59
- }
60
- }, {
61
- // -- Attributes -----------------------------------------------------------
62
- ATTRS: {
63
- resultFormatter: {
64
- valueFn: function () {
65
- return this._apiResultFormatter;
66
- }
67
- },
68
-
69
- resultFilters: {
70
- valueFn: function () {
71
- return this._apiResultFilter;
72
- }
73
- },
74
-
75
- resultHighlighter: {
76
- value: 'phraseMatch'
77
- },
78
-
79
- resultListLocator: {
80
- value: 'data.results'
81
- },
82
-
83
- resultTextLocator: {
84
- valueFn: function () {
85
- return this._apiTextLocator;
86
- }
87
- },
88
-
89
- source: {
90
- value: '/api/v1/search?q={query}&count={maxResults}'
91
- }
92
- }
93
- });
94
-
95
- }, '3.4.0', {requires: [
96
- 'autocomplete-base', 'autocomplete-highlighters', 'autocomplete-sources',
97
- 'escape'
98
- ]});