23 Commits

Author SHA1 Message Date
Tobias Speicher
137651645c refactor: replace deprecated String.prototype.substr()
.substr() is deprecated so we replace it with .slice() which works similarily but isn't deprecated

Signed-off-by: Tobias Speicher <rootcommander@gmail.com>
2022-03-21 12:27:52 -07:00
Alan Agius
21809e14cd feat(@schematics/angular): loosen project name validation
With this change we update the validation of the libraries and application projects names to fully allow characters that make a valid NPM package name. http://json.schemastore.org/package has been used as reference.

We also remove validators that are no longer needed.

Closes #11051
2021-11-16 10:51:10 +00:00
Alan Agius
5986befcdc feat(@schematics/angular): remove deprecated options
With this change we removed several deprecated `@schematics/angular` deprecated options.

BREAKING CHANGE:

We removed several deprecated `@schematics/angular` deprecated options.
- `lintFix` have been removed from all schematics. `ng lint --fix` should be used instead.
- `legacyBrowsers` have been removed from the `application` schematics since IE 11 is no longer supported.
- `configuration` has been removed from the `web-worker` as it was unused.
- `target` has been removed from the `service-worker` as it was unused.
2021-07-30 14:26:53 +01:00
Charles Lyding
c1512e4274 build: update files to be eslint compliant
All TypeScript files have been updated to pass the new eslint-based linting checks. eslint compatible disabling comments have also been added in place of the previous tslint comments.
2021-05-03 07:31:02 -04:00
Charles Lyding
37a06a7c37 build: format all files
All files are now formatted using the ng-dev tools via prettier.
2021-04-28 16:05:49 -07:00
Joey Perrott
003854257c build: migrate all file header to use Google LLC rather than Google Inc 2021-04-27 08:35:22 +02:00
Alan Agius
3bf831fac6 fix(@schematics/angular): only show legacy browsers deprecation warning when option is used
This ensures that the deprecate warning is only displayed when the option is used.
2021-03-15 17:07:36 +01:00
Kishan Gajera
a8c63a734e fix(@schematics/angular): validate project name before prompts
When an invalid project name is given, throw an error before going through prompts.

Closes #14994
2020-07-07 15:04:39 +02:00
Alan Agius
cbf0feb005 feat(@schematics/angular): enable stricter type checking and optimization effective coding rules
With this change we enable stricter type checking and optimization effective coding rules when using the `--strict` option.

Changes in schematics
- `ng-new`: A prompt for the `--strict` option was added. This option is a proxy and will be passed to the application and workspace schematics.
- `application`: A `package.json` was added in the `app` folder, to tell the bundlers whether the application is free from side-effect code. When `strict` is `true`. the `sideEffects` will be set `false`.
- `workspace` When `strict` is true, we add stricter TypeScript and Angular type-checking options.

Note: AIO is already using these strict TypeScript compiler settings. PR to enable `strictTemplates`  https://github.com/angular/angular/pull/36391

Reference: TOOL-1366
2020-05-05 11:44:19 -07:00
Alan Agius
a723af4271 feat(@schematics/angular): evergreen new applications
By default, we now generate new applications which support only evergreen browsers, as a result differential loading is now opt-in.

A new flag `--legacy-browsers`, was added to generate applications which support non evergreen browsers such as Internet Explorer 11.

**Note**: After an application is generated opting in and out of differential loading is still possible through the supported browsers configuration in the browserslist configuration file  defaulted to `.browserslistrc`.
2020-05-04 10:53:48 -07:00
Amadou Sall
0e3d8e4a64 feat(@schematics/angular): add packageManager option
closes #15875
2019-10-25 09:53:12 -07:00
Amadou Sall
cc4abddcdd refactor(@schematics/angular): remove hardcoded value of newProjectRoot (#15925)
the default value of `newProjectRoot` is already defined in the schema
2019-10-23 10:00:04 -07:00
Alan
f1b87da67d fix(@schematics/angular): add strict option to ng-new
Closes: #15654
2019-09-24 13:19:51 -07:00
Alan
ba8a6ea599 feat(@schematics/angular): remove enableIvy option
With this change we remove the enableIvy option as now we only support generating Ivy application. Users who want to create a VE applications should follow the opt-out guide
2019-08-16 09:31:02 -07:00
Amadou Sall
7dac687767 refactor(@schematics/angular): remove non-useful or operator 2019-06-06 14:21:24 -07:00
Filipe Silva
05966646e7 feat(@schematics/angular): rename experimentalIvy to enableIvy
Followup to https://github.com/angular/angular/pull/28569#discussion_r259558085
2019-02-26 10:49:58 -08:00
Noël Macé
1f3e2768c2 fix(@schematics/angular): --minimal should prevent generating e2e (#12742)
* fix(@schematics/angular): --minimal should prevent generating e2e

Don't run the e2e schematic when using application or ng-new schematics
with option.minimal set to true.

fix #12739

* style: inverse logic according to feedback

* test(@schematics/angular): app and ng-new --minimal shouldn't generate e2e
2018-11-01 10:59:13 -07:00
Alan Agius
90a5a7db96 feat(@schematics/angular): install packages when creating a new application
Fixes #12719
2018-10-31 20:57:09 -07:00
Alan Agius
c24afaf31c fix(@schematics/angular): experimentalIvy creates project using next packages
Close: #12667
2018-10-31 14:57:16 -07:00
Rohit Sarkar
907ce5c94c feat(@schematics/angular): Add --minimal flag to generate a barebones (#12498)
project
2018-10-10 12:08:24 -07:00
Mike Brocchi
b16cb27f5b feat(@schematics/angular): Add the option to allow preventing the creation of an application
Fixes #12216
2018-09-26 15:04:19 -07:00
Hans
3886aab55b feat(@schematics/angular): add a --experimental-ivy flag to ng-new
This will create a new Ivy-enabled application. Also available in "ng g application".
2018-08-09 19:37:53 -04:00
Hans Larsen
44086c60ff build: move devkit repo back to angular-cli 2018-06-05 18:50:06 -07:00