ember-cli 4.4.0-beta.1 → 4.5.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 (39) hide show
  1. package/CHANGELOG.md +39 -4
  2. package/blueprints/addon/additional-dev-dependencies.json +1 -1
  3. package/blueprints/addon/files/.github/workflows/ci.yml +3 -0
  4. package/blueprints/addon/files/.travis.yml +1 -1
  5. package/blueprints/addon/files/CONTRIBUTING.md +1 -1
  6. package/blueprints/addon/index.js +3 -4
  7. package/blueprints/app/files/.github/workflows/ci.yml +2 -0
  8. package/blueprints/app/files/.travis.yml +1 -1
  9. package/blueprints/app/files/README.md +1 -1
  10. package/blueprints/app/files/config/environment.js +0 -4
  11. package/blueprints/app/files/package.json +16 -17
  12. package/blueprints/app/index.js +2 -0
  13. package/docs/build/data.json +95 -68
  14. package/lib/broccoli/default-packager.js +2 -2
  15. package/lib/broccoli/ember-addon.js +1 -1
  16. package/lib/broccoli/ember-app.js +30 -4
  17. package/lib/broccoli/vendor-prefix.js +7 -0
  18. package/lib/cli/cli.js +1 -1
  19. package/lib/cli/index.js +1 -1
  20. package/lib/commands/destroy.js +1 -1
  21. package/lib/commands/generate.js +3 -3
  22. package/lib/commands/init.js +1 -2
  23. package/lib/models/addon.js +1 -1
  24. package/lib/models/blueprint.js +23 -15
  25. package/lib/models/command.js +10 -15
  26. package/lib/models/project.js +10 -10
  27. package/lib/tasks/addon-install.js +1 -1
  28. package/lib/tasks/create-and-step-into-directory.js +2 -26
  29. package/lib/tasks/generate-from-blueprint.js +1 -1
  30. package/lib/tasks/install-blueprint.js +1 -1
  31. package/lib/tasks/server/express-server.js +1 -1
  32. package/lib/tasks/server/livereload-server.js +1 -1
  33. package/lib/utilities/directory-for-package-name.js +31 -0
  34. package/lib/utilities/markdown-color.js +1 -1
  35. package/package.json +7 -7
  36. package/tests/helpers/default-packager.js +0 -1
  37. package/tests/helpers/fixturify-project.js +1 -1
  38. package/tests/helpers/run-command.js +1 -1
  39. package/blueprints/addon/files/gitignore +0 -2
@@ -3,7 +3,7 @@
3
3
  "logo": "https://ember-cli.com/assets/images/ember-cli-logo-small-dark.png",
4
4
  "name": "ember-cli",
5
5
  "description": "Command line tool for developing ambitious ember.js apps",
6
- "version": "4.4.0-beta.1-beta-1fbf62fbaf"
6
+ "version": "4.5.0-release-d5a4e0b0c2"
7
7
  },
8
8
  "files": {
9
9
  "lib/broccoli/default-packager.js": {
@@ -283,6 +283,13 @@
283
283
  "fors": {},
284
284
  "namespaces": {}
285
285
  },
286
+ "lib/utilities/directory-for-package-name.js": {
287
+ "name": "lib/utilities/directory-for-package-name.js",
288
+ "modules": {},
289
+ "classes": {},
290
+ "fors": {},
291
+ "namespaces": {}
292
+ },
286
293
  "lib/utilities/ember-app-utils.js": {
287
294
  "name": "lib/utilities/ember-app-utils.js",
288
295
  "modules": {},
@@ -462,7 +469,7 @@
462
469
  "module": "ember-cli",
463
470
  "namespace": "",
464
471
  "file": "lib/broccoli/ember-app.js",
465
- "line": 72,
472
+ "line": 70,
466
473
  "description": "EmberApp is the main class Ember CLI uses to manage the Broccoli trees\nfor your application. It is very tightly integrated with Broccoli and has\na `toTree()` method you can use to get the entire tree for your application.\n\nAvailable init options:\n- storeConfigInMeta, defaults to `true`\n- autoRun, defaults to `true`\n- outputPaths, defaults to `{}`\n- minifyCSS, defaults to `{enabled: !!isProduction,options: { relativeTo: 'assets' }}\n- minifyJS, defaults to `{enabled: !!isProduction}\n- sourcemaps, defaults to `{}`\n- trees, defaults to `{}`\n- jshintrc, defaults to `{}`\n- vendorFiles, defaults to `{}`\n- addons, defaults to `{ exclude: [], include: [] }`",
467
474
  "is_constructor": 1,
468
475
  "params": [
@@ -832,7 +839,7 @@
832
839
  "classitems": [
833
840
  {
834
841
  "file": "lib/broccoli/ember-app.js",
835
- "line": 201,
842
+ "line": 199,
836
843
  "description": "Initializes the `tests` and `hinting` properties.\n\nDefaults to `false` unless `ember test` was used or this is *not* a production build.",
837
844
  "access": "private",
838
845
  "tagname": "",
@@ -850,7 +857,7 @@
850
857
  },
851
858
  {
852
859
  "file": "lib/broccoli/ember-app.js",
853
- "line": 217,
860
+ "line": 215,
854
861
  "description": "Initializes the `project` property from `options.project` or the\nclosest Ember CLI project from the current working directory.",
855
862
  "access": "private",
856
863
  "tagname": "",
@@ -868,7 +875,7 @@
868
875
  },
869
876
  {
870
877
  "file": "lib/broccoli/ember-app.js",
871
- "line": 238,
878
+ "line": 236,
872
879
  "description": "Initializes the `options` property from the `options` parameter and\na set of default values from Ember CLI.",
873
880
  "access": "private",
874
881
  "tagname": "",
@@ -886,7 +893,7 @@
886
893
  },
887
894
  {
888
895
  "file": "lib/broccoli/ember-app.js",
889
- "line": 426,
896
+ "line": 452,
890
897
  "description": "Resolves a path relative to the project's root",
891
898
  "access": "private",
892
899
  "tagname": "",
@@ -897,7 +904,7 @@
897
904
  },
898
905
  {
899
906
  "file": "lib/broccoli/ember-app.js",
900
- "line": 436,
907
+ "line": 462,
901
908
  "access": "private",
902
909
  "tagname": "",
903
910
  "itemtype": "method",
@@ -907,7 +914,7 @@
907
914
  },
908
915
  {
909
916
  "file": "lib/broccoli/ember-app.js",
910
- "line": 555,
917
+ "line": 581,
911
918
  "description": "Returns the environment name",
912
919
  "access": "public",
913
920
  "tagname": "",
@@ -923,7 +930,7 @@
923
930
  },
924
931
  {
925
932
  "file": "lib/broccoli/ember-app.js",
926
- "line": 567,
933
+ "line": 593,
927
934
  "description": "Delegates to `broccoli-concat` with the `sourceMapConfig` option set to `options.sourcemaps`.",
928
935
  "access": "private",
929
936
  "tagname": "",
@@ -947,7 +954,7 @@
947
954
  },
948
955
  {
949
956
  "file": "lib/broccoli/ember-app.js",
950
- "line": 582,
957
+ "line": 608,
951
958
  "description": "Checks the result of `addon.isEnabled()` if it exists, defaults to `true` otherwise.",
952
959
  "access": "private",
953
960
  "tagname": "",
@@ -969,7 +976,7 @@
969
976
  },
970
977
  {
971
978
  "file": "lib/broccoli/ember-app.js",
972
- "line": 594,
979
+ "line": 620,
973
980
  "access": "private",
974
981
  "tagname": "",
975
982
  "itemtype": "method",
@@ -990,7 +997,7 @@
990
997
  },
991
998
  {
992
999
  "file": "lib/broccoli/ember-app.js",
993
- "line": 605,
1000
+ "line": 631,
994
1001
  "access": "private",
995
1002
  "tagname": "",
996
1003
  "itemtype": "method",
@@ -1011,7 +1018,7 @@
1011
1018
  },
1012
1019
  {
1013
1020
  "file": "lib/broccoli/ember-app.js",
1014
- "line": 616,
1021
+ "line": 642,
1015
1022
  "access": "private",
1016
1023
  "tagname": "",
1017
1024
  "itemtype": "method",
@@ -1032,7 +1039,7 @@
1032
1039
  },
1033
1040
  {
1034
1041
  "file": "lib/broccoli/ember-app.js",
1035
- "line": 644,
1042
+ "line": 670,
1036
1043
  "description": "Returns whether an addon should be added to the project",
1037
1044
  "access": "private",
1038
1045
  "tagname": "",
@@ -1054,7 +1061,7 @@
1054
1061
  },
1055
1062
  {
1056
1063
  "file": "lib/broccoli/ember-app.js",
1057
- "line": 660,
1064
+ "line": 686,
1058
1065
  "description": "Calls the included hook on addons.",
1059
1066
  "access": "private",
1060
1067
  "tagname": "",
@@ -1065,7 +1072,7 @@
1065
1072
  },
1066
1073
  {
1067
1074
  "file": "lib/broccoli/ember-app.js",
1068
- "line": 700,
1075
+ "line": 726,
1069
1076
  "description": "Calls the importTransforms hook on addons.",
1070
1077
  "access": "private",
1071
1078
  "tagname": "",
@@ -1076,7 +1083,7 @@
1076
1083
  },
1077
1084
  {
1078
1085
  "file": "lib/broccoli/ember-app.js",
1079
- "line": 749,
1086
+ "line": 775,
1080
1087
  "description": "Loads and initializes addons for this project.\nCalls initializeAddons on the Project.",
1081
1088
  "access": "private",
1082
1089
  "tagname": "",
@@ -1087,7 +1094,7 @@
1087
1094
  },
1088
1095
  {
1089
1096
  "file": "lib/broccoli/ember-app.js",
1090
- "line": 776,
1097
+ "line": 802,
1091
1098
  "description": "Returns a list of trees for a given type, returned by all addons.",
1092
1099
  "access": "private",
1093
1100
  "tagname": "",
@@ -1109,7 +1116,7 @@
1109
1116
  },
1110
1117
  {
1111
1118
  "file": "lib/broccoli/ember-app.js",
1112
- "line": 875,
1119
+ "line": 901,
1113
1120
  "description": "Runs addon post-processing on a given tree and returns the processed tree.\n\nThis enables addons to do process immediately **after** the preprocessor for a\ngiven type is run, but before concatenation occurs. If an addon wishes to\napply a transform before the preprocessors run, they can instead implement the\npreprocessTree hook.\n\nTo utilize this addons implement `postprocessTree` hook.\n\nAn example, would be to apply some broccoli transform on all JS files, but\nonly after the existing pre-processors have run.\n\n```js\nmodule.exports = {\n name: 'my-cool-addon',\n postprocessTree(type, tree) {\n if (type === 'js') {\n return someBroccoliTransform(tree);\n }\n\n return tree;\n }\n}\n\n```",
1114
1121
  "access": "private",
1115
1122
  "tagname": "",
@@ -1136,7 +1143,7 @@
1136
1143
  },
1137
1144
  {
1138
1145
  "file": "lib/broccoli/ember-app.js",
1139
- "line": 912,
1146
+ "line": 938,
1140
1147
  "description": "Runs addon pre-processing on a given tree and returns the processed tree.\n\nThis enables addons to do process immediately **before** the preprocessor for a\ngiven type is run. If an addon wishes to apply a transform after the\npreprocessors run, they can instead implement the postprocessTree hook.\n\nTo utilize this addons implement `preprocessTree` hook.\n\nAn example, would be to remove some set of files before the preprocessors run.\n\n```js\nvar stew = require('broccoli-stew');\n\nmodule.exports = {\n name: 'my-cool-addon',\n preprocessTree(type, tree) {\n if (type === 'js' && type === 'template') {\n return stew.rm(tree, someGlobPattern);\n }\n\n return tree;\n }\n}\n```",
1141
1148
  "access": "private",
1142
1149
  "tagname": "",
@@ -1163,7 +1170,7 @@
1163
1170
  },
1164
1171
  {
1165
1172
  "file": "lib/broccoli/ember-app.js",
1166
- "line": 948,
1173
+ "line": 974,
1167
1174
  "description": "Runs addon lintTree hooks and returns a single tree containing all\ntheir output.",
1168
1175
  "access": "private",
1169
1176
  "tagname": "",
@@ -1190,7 +1197,7 @@
1190
1197
  },
1191
1198
  {
1192
1199
  "file": "lib/broccoli/ember-app.js",
1193
- "line": 967,
1200
+ "line": 993,
1194
1201
  "description": "Imports legacy imports in this.vendorFiles",
1195
1202
  "access": "private",
1196
1203
  "tagname": "",
@@ -1201,7 +1208,7 @@
1201
1208
  },
1202
1209
  {
1203
1210
  "file": "lib/broccoli/ember-app.js",
1204
- "line": 1148,
1211
+ "line": 1174,
1205
1212
  "access": "private",
1206
1213
  "tagname": "",
1207
1214
  "itemtype": "method",
@@ -1215,7 +1222,7 @@
1215
1222
  },
1216
1223
  {
1217
1224
  "file": "lib/broccoli/ember-app.js",
1218
- "line": 1363,
1225
+ "line": 1389,
1219
1226
  "description": "Runs the `app`, `tests` and `templates` trees through the chain of addons that produces lint trees.\n\nThose lint trees are afterwards funneled into the `tests` folder, babel-ified and returned as an array.",
1220
1227
  "access": "private",
1221
1228
  "tagname": "",
@@ -1230,7 +1237,7 @@
1230
1237
  },
1231
1238
  {
1232
1239
  "file": "lib/broccoli/ember-app.js",
1233
- "line": 1403,
1240
+ "line": 1429,
1234
1241
  "access": "private",
1235
1242
  "tagname": "",
1236
1243
  "itemtype": "method",
@@ -1251,7 +1258,7 @@
1251
1258
  },
1252
1259
  {
1253
1260
  "file": "lib/broccoli/ember-app.js",
1254
- "line": 1413,
1261
+ "line": 1439,
1255
1262
  "access": "public",
1256
1263
  "tagname": "",
1257
1264
  "itemtype": "method",
@@ -1265,7 +1272,7 @@
1265
1272
  },
1266
1273
  {
1267
1274
  "file": "lib/broccoli/ember-app.js",
1268
- "line": 1422,
1275
+ "line": 1448,
1269
1276
  "description": "Imports an asset into the application.",
1270
1277
  "access": "public",
1271
1278
  "tagname": "",
@@ -1323,7 +1330,7 @@
1323
1330
  },
1324
1331
  {
1325
1332
  "file": "lib/broccoli/ember-app.js",
1326
- "line": 1468,
1333
+ "line": 1494,
1327
1334
  "access": "private",
1328
1335
  "tagname": "",
1329
1336
  "itemtype": "method",
@@ -1360,7 +1367,7 @@
1360
1367
  },
1361
1368
  {
1362
1369
  "file": "lib/broccoli/ember-app.js",
1363
- "line": 1553,
1370
+ "line": 1579,
1364
1371
  "access": "private",
1365
1372
  "tagname": "",
1366
1373
  "itemtype": "method",
@@ -1381,7 +1388,7 @@
1381
1388
  },
1382
1389
  {
1383
1390
  "file": "lib/broccoli/ember-app.js",
1384
- "line": 1594,
1391
+ "line": 1620,
1385
1392
  "description": "Returns an array of trees for this application",
1386
1393
  "access": "private",
1387
1394
  "tagname": "",
@@ -1396,7 +1403,7 @@
1396
1403
  },
1397
1404
  {
1398
1405
  "file": "lib/broccoli/ember-app.js",
1399
- "line": 1698,
1406
+ "line": 1724,
1400
1407
  "description": "Returns the merged tree for this application",
1401
1408
  "access": "public",
1402
1409
  "tagname": "",
@@ -4481,7 +4488,7 @@
4481
4488
  {
4482
4489
  "file": "lib/models/blueprint.js",
4483
4490
  "line": 1132,
4484
- "description": "Used to add a package to the projects `bower.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.\n\n`localPackageName` and `target` may be thought of as equivalent\nto the key-value pairs in the `dependency` or `devDepencency`\nobjects contained within a bower.json file.",
4491
+ "description": "Used to add a Bower package to the projects `bower.json`.\n\nBower is a package manager that is no longer recommended \nfor new projects, but you may find this hook used in older\naddons.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.\n\n`localPackageName` and `target` may be thought of as equivalent\nto the key-value pairs in the `dependency` or `devDepencency`\nobjects contained within a bower.json file.",
4485
4492
  "itemtype": "method",
4486
4493
  "name": "addBowerPackageToProject",
4487
4494
  "params": [
@@ -4513,8 +4520,8 @@
4513
4520
  },
4514
4521
  {
4515
4522
  "file": "lib/models/blueprint.js",
4516
- "line": 1181,
4517
- "description": "Used to add an array of packages to the projects `bower.json`.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.\n\nExpects each array item to be an object with a `name`. Each object\nmay optionally have a `target` to specify a specific version, or a\n`source` to specify a non-local name to be resolved.",
4523
+ "line": 1185,
4524
+ "description": "Used to add an array of packages to the projects `bower.json`.\n\nBower is a package manager that is no longer recommended \nfor new projects, but you may find this hook used in older\naddons.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.\n\nExpects each array item to be an object with a `name`. Each object\nmay optionally have a `target` to specify a specific version, or a\n`source` to specify a non-local name to be resolved.",
4518
4525
  "itemtype": "method",
4519
4526
  "name": "addBowerPackagesToProject",
4520
4527
  "params": [
@@ -4538,7 +4545,7 @@
4538
4545
  },
4539
4546
  {
4540
4547
  "file": "lib/models/blueprint.js",
4541
- "line": 1237,
4548
+ "line": 1245,
4542
4549
  "description": "Used to add an addon to the project's `package.json` and run it's\n`defaultBlueprint` if it provides one.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.",
4543
4550
  "itemtype": "method",
4544
4551
  "name": "addAddonToProject",
@@ -4558,7 +4565,7 @@
4558
4565
  },
4559
4566
  {
4560
4567
  "file": "lib/models/blueprint.js",
4561
- "line": 1257,
4568
+ "line": 1265,
4562
4569
  "description": "Used to add multiple addons to the project's `package.json` and run their\n`defaultBlueprint` if they provide one.\n\nGenerally, this would be done from the `afterInstall` hook, to\nensure that a package that is required by a given blueprint is\navailable.",
4563
4570
  "itemtype": "method",
4564
4571
  "name": "addAddonsToProject",
@@ -4578,7 +4585,7 @@
4578
4585
  },
4579
4586
  {
4580
4587
  "file": "lib/models/blueprint.js",
4581
- "line": 1303,
4588
+ "line": 1311,
4582
4589
  "description": "Used to retrieve a task with the given name. Passes the new task\nthe standard information available (like `ui`, `analytics`, `project`, etc).",
4583
4590
  "itemtype": "method",
4584
4591
  "name": "taskFor",
@@ -4595,7 +4602,7 @@
4595
4602
  },
4596
4603
  {
4597
4604
  "file": "lib/models/blueprint.js",
4598
- "line": 1321,
4605
+ "line": 1329,
4599
4606
  "description": "Inserts the given content into a file. If the `contentsToInsert` string is already\npresent in the current contents, the file will not be changed unless `force` option\nis passed.\n\nIf `options.before` is specified, `contentsToInsert` will be inserted before\nthe first instance of that string. If `options.after` is specified, the\ncontents will be inserted after the first instance of that string.\nIf the string specified by options.before or options.after is not in the file,\nno change will be made.\n\nIf neither `options.before` nor `options.after` are present, `contentsToInsert`\nwill be inserted at the end of the file.\n\nExample:\n```\n// app/router.js\nRouter.map(function () {\n});\n```\n\n```\ninsertIntoFile('app/router.js', ' this.route(\"admin\");', {\n after: 'Router.map(function () {' + EOL\n}).then(function() {\n // file has been inserted into!\n});\n\n\n```\n\n```\n// app/router.js\nRouter.map(function () {\n this.route(\"admin\");\n});\n```",
4600
4607
  "itemtype": "method",
4601
4608
  "name": "insertIntoFile",
@@ -4625,7 +4632,7 @@
4625
4632
  },
4626
4633
  {
4627
4634
  "file": "lib/models/blueprint.js",
4628
- "line": 1425,
4635
+ "line": 1433,
4629
4636
  "description": "Used to retrieve a blueprint with the given name.",
4630
4637
  "itemtype": "method",
4631
4638
  "name": "lookupBlueprint",
@@ -4647,7 +4654,7 @@
4647
4654
  },
4648
4655
  {
4649
4656
  "file": "lib/models/blueprint.js",
4650
- "line": 1442,
4657
+ "line": 1450,
4651
4658
  "static": 1,
4652
4659
  "itemtype": "method",
4653
4660
  "name": "lookup",
@@ -4688,7 +4695,7 @@
4688
4695
  },
4689
4696
  {
4690
4697
  "file": "lib/models/blueprint.js",
4691
- "line": 1489,
4698
+ "line": 1497,
4692
4699
  "description": "Loads a blueprint from given path.",
4693
4700
  "static": 1,
4694
4701
  "itemtype": "method",
@@ -4710,7 +4717,7 @@
4710
4717
  },
4711
4718
  {
4712
4719
  "file": "lib/models/blueprint.js",
4713
- "line": 1516,
4720
+ "line": 1524,
4714
4721
  "static": 1,
4715
4722
  "itemtype": "method",
4716
4723
  "name": "list",
@@ -4740,7 +4747,7 @@
4740
4747
  },
4741
4748
  {
4742
4749
  "file": "lib/models/blueprint.js",
4743
- "line": 1565,
4750
+ "line": 1573,
4744
4751
  "description": "Files that are renamed when installed into the target directory.\nThis allows including files in the blueprint that would have an effect\non another process, such as a file named `.gitignore`.\n\nThe keys are the filenames used in the files folder.\nThe values are the filenames used in the target directory.",
4745
4752
  "static": 1,
4746
4753
  "itemtype": "property",
@@ -4751,7 +4758,7 @@
4751
4758
  },
4752
4759
  {
4753
4760
  "file": "lib/models/blueprint.js",
4754
- "line": 1580,
4761
+ "line": 1588,
4755
4762
  "static": 1,
4756
4763
  "itemtype": "property",
4757
4764
  "name": "ignoredFiles",
@@ -4761,7 +4768,7 @@
4761
4768
  },
4762
4769
  {
4763
4770
  "file": "lib/models/blueprint.js",
4764
- "line": 1586,
4771
+ "line": 1594,
4765
4772
  "static": 1,
4766
4773
  "itemtype": "property",
4767
4774
  "name": "ignoredUpdateFiles",
@@ -4771,7 +4778,7 @@
4771
4778
  },
4772
4779
  {
4773
4780
  "file": "lib/models/blueprint.js",
4774
- "line": 1592,
4781
+ "line": 1600,
4775
4782
  "static": 1,
4776
4783
  "itemtype": "property",
4777
4784
  "name": "defaultLookupPaths",
@@ -4781,7 +4788,7 @@
4781
4788
  },
4782
4789
  {
4783
4790
  "file": "lib/models/blueprint.js",
4784
- "line": 1600,
4791
+ "line": 1608,
4785
4792
  "access": "private",
4786
4793
  "tagname": "",
4787
4794
  "itemtype": "method",
@@ -4803,7 +4810,7 @@
4803
4810
  },
4804
4811
  {
4805
4812
  "file": "lib/models/blueprint.js",
4806
- "line": 1613,
4813
+ "line": 1621,
4807
4814
  "access": "private",
4808
4815
  "tagname": "",
4809
4816
  "itemtype": "method",
@@ -4821,7 +4828,7 @@
4821
4828
  },
4822
4829
  {
4823
4830
  "file": "lib/models/blueprint.js",
4824
- "line": 1624,
4831
+ "line": 1632,
4825
4832
  "access": "private",
4826
4833
  "tagname": "",
4827
4834
  "itemtype": "method",
@@ -4839,7 +4846,7 @@
4839
4846
  },
4840
4847
  {
4841
4848
  "file": "lib/models/blueprint.js",
4842
- "line": 1633,
4849
+ "line": 1641,
4843
4850
  "access": "private",
4844
4851
  "tagname": "",
4845
4852
  "itemtype": "method",
@@ -4866,7 +4873,7 @@
4866
4873
  },
4867
4874
  {
4868
4875
  "file": "lib/models/blueprint.js",
4869
- "line": 1647,
4876
+ "line": 1655,
4870
4877
  "access": "private",
4871
4878
  "tagname": "",
4872
4879
  "itemtype": "method",
@@ -4888,7 +4895,7 @@
4888
4895
  },
4889
4896
  {
4890
4897
  "file": "lib/models/blueprint.js",
4891
- "line": 1659,
4898
+ "line": 1667,
4892
4899
  "description": "Combines provided lookup paths with defaults and removes\nduplicates.",
4893
4900
  "access": "private",
4894
4901
  "tagname": "",
@@ -4911,7 +4918,7 @@
4911
4918
  },
4912
4919
  {
4913
4920
  "file": "lib/models/blueprint.js",
4914
- "line": 1674,
4921
+ "line": 1682,
4915
4922
  "description": "Looks for a __path__ token in the files folder. Must be present for\nthe blueprint to support pod tokens.",
4916
4923
  "access": "private",
4917
4924
  "tagname": "",
@@ -4934,7 +4941,7 @@
4934
4941
  },
4935
4942
  {
4936
4943
  "file": "lib/models/blueprint.js",
4937
- "line": 1713,
4944
+ "line": 1721,
4938
4945
  "access": "private",
4939
4946
  "tagname": "",
4940
4947
  "itemtype": "method",
@@ -4956,7 +4963,7 @@
4956
4963
  },
4957
4964
  {
4958
4965
  "file": "lib/models/blueprint.js",
4959
- "line": 1727,
4966
+ "line": 1735,
4960
4967
  "access": "private",
4961
4968
  "tagname": "",
4962
4969
  "itemtype": "method",
@@ -4978,7 +4985,7 @@
4978
4985
  },
4979
4986
  {
4980
4987
  "file": "lib/models/blueprint.js",
4981
- "line": 1737,
4988
+ "line": 1745,
4982
4989
  "access": "private",
4983
4990
  "tagname": "",
4984
4991
  "itemtype": "method",
@@ -4993,7 +5000,7 @@
4993
5000
  },
4994
5001
  {
4995
5002
  "file": "lib/models/blueprint.js",
4996
- "line": 1750,
5003
+ "line": 1758,
4997
5004
  "access": "private",
4998
5005
  "tagname": "",
4999
5006
  "itemtype": "method",
@@ -5358,7 +5365,7 @@
5358
5365
  },
5359
5366
  {
5360
5367
  "file": "lib/models/command.js",
5361
- "line": 378,
5368
+ "line": 373,
5362
5369
  "description": "Normalizes option, filling in implicit values",
5363
5370
  "itemtype": "method",
5364
5371
  "name": "normalizeOption",
@@ -5378,7 +5385,7 @@
5378
5385
  },
5379
5386
  {
5380
5387
  "file": "lib/models/command.js",
5381
- "line": 390,
5388
+ "line": 385,
5382
5389
  "description": "Assigns option",
5383
5390
  "itemtype": "method",
5384
5391
  "name": "assignOption",
@@ -5408,7 +5415,7 @@
5408
5415
  },
5409
5416
  {
5410
5417
  "file": "lib/models/command.js",
5411
- "line": 423,
5418
+ "line": 418,
5412
5419
  "description": "Validates option",
5413
5420
  "itemtype": "method",
5414
5421
  "name": "validateOption",
@@ -5428,7 +5435,7 @@
5428
5435
  },
5429
5436
  {
5430
5437
  "file": "lib/models/command.js",
5431
- "line": 449,
5438
+ "line": 444,
5432
5439
  "description": "Parses alias for an option and adds it to optionsAliases",
5433
5440
  "itemtype": "method",
5434
5441
  "name": "parseAlias",
@@ -5453,7 +5460,7 @@
5453
5460
  },
5454
5461
  {
5455
5462
  "file": "lib/models/command.js",
5456
- "line": 494,
5463
+ "line": 489,
5457
5464
  "itemtype": "method",
5458
5465
  "name": "assignAlias",
5459
5466
  "params": [
@@ -5475,7 +5482,7 @@
5475
5482
  },
5476
5483
  {
5477
5484
  "file": "lib/models/command.js",
5478
- "line": 509,
5485
+ "line": 504,
5479
5486
  "description": "Validates alias value",
5480
5487
  "itemtype": "method",
5481
5488
  "name": "validateAlias",
@@ -5495,7 +5502,7 @@
5495
5502
  },
5496
5503
  {
5497
5504
  "file": "lib/models/command.js",
5498
- "line": 541,
5505
+ "line": 536,
5499
5506
  "description": "Parses command arguments and processes",
5500
5507
  "itemtype": "method",
5501
5508
  "name": "parseArgs",
@@ -5515,7 +5522,7 @@
5515
5522
  },
5516
5523
  {
5517
5524
  "file": "lib/models/command.js",
5518
- "line": 597,
5525
+ "line": 592,
5519
5526
  "itemtype": "method",
5520
5527
  "name": "run",
5521
5528
  "params": [
@@ -5529,7 +5536,7 @@
5529
5536
  },
5530
5537
  {
5531
5538
  "file": "lib/models/command.js",
5532
- "line": 607,
5539
+ "line": 602,
5533
5540
  "description": "Prints basic help for the command.\n\nBasic help looks like this:\n\n ember generate <blueprint> <options...>\n Generates new code from blueprints\n aliases: g\n --dry-run (Default: false)\n --verbose (Default: false)\n\nThe default implementation is designed to cover all bases\nbut may be overridden if necessary.",
5534
5541
  "itemtype": "method",
5535
5542
  "name": "printBasicHelp",
@@ -5538,7 +5545,7 @@
5538
5545
  },
5539
5546
  {
5540
5547
  "file": "lib/models/command.js",
5541
- "line": 638,
5548
+ "line": 633,
5542
5549
  "description": "Prints detailed help for the command.\n\nThe default implementation is no-op and should be overridden\nfor each command where further help text is required.",
5543
5550
  "itemtype": "method",
5544
5551
  "name": "printDetailedHelp",
@@ -5547,7 +5554,7 @@
5547
5554
  },
5548
5555
  {
5549
5556
  "file": "lib/models/command.js",
5550
- "line": 648,
5557
+ "line": 643,
5551
5558
  "itemtype": "method",
5552
5559
  "name": "getJson",
5553
5560
  "params": [
@@ -6423,6 +6430,26 @@
6423
6430
  "class": "WindowsSymlinkChecker",
6424
6431
  "module": "ember-cli"
6425
6432
  },
6433
+ {
6434
+ "file": "lib/utilities/directory-for-package-name.js",
6435
+ "line": 5,
6436
+ "description": "Derive a directory name from a package name.\nTakes scoped packages into account.",
6437
+ "itemtype": "method",
6438
+ "name": "directoryForPackageName",
6439
+ "params": [
6440
+ {
6441
+ "name": "packageName",
6442
+ "description": "",
6443
+ "type": "String"
6444
+ }
6445
+ ],
6446
+ "return": {
6447
+ "description": "Derived directory name.",
6448
+ "type": "String"
6449
+ },
6450
+ "class": "WindowsSymlinkChecker",
6451
+ "module": "ember-cli"
6452
+ },
6426
6453
  {
6427
6454
  "file": "lib/utilities/ember-app-utils.js",
6428
6455
  "line": 7,
@@ -635,8 +635,8 @@ module.exports = class DefaultPackager {
635
635
  for: 'ember-cli',
636
636
  id: 'ember-cli.building-bower-packages',
637
637
  since: {
638
- available: '4.2.0',
639
- enabled: '4.2.0',
638
+ available: '4.3.0',
639
+ enabled: '4.3.0',
640
640
  },
641
641
  until: '5.0.0',
642
642
  });
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  @module ember-cli
5
5
  */
6
- const defaultsDeep = require('ember-cli-lodash-subset').defaultsDeep;
6
+ const { defaultsDeep } = require('ember-cli-lodash-subset');
7
7
  const Funnel = require('broccoli-funnel');
8
8
  const fs = require('fs');
9
9