ngx-promise-buttons 1.0.1 → 1.0.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.
Files changed (53) hide show
  1. package/fesm2022/ngx-promise-buttons.mjs +243 -0
  2. package/fesm2022/ngx-promise-buttons.mjs.map +1 -0
  3. package/package.json +38 -87
  4. package/types/ngx-promise-buttons.d.ts +76 -0
  5. package/.editorconfig +0 -13
  6. package/.github/FUNDING.yml +0 -12
  7. package/.travis.yml +0 -21
  8. package/CHANGELOG.md +0 -0
  9. package/CONTRIBUTING.md +0 -36
  10. package/angular.json +0 -180
  11. package/e2e/protractor.conf.js +0 -32
  12. package/e2e/src/app.e2e-spec.ts +0 -23
  13. package/e2e/src/app.po.ts +0 -11
  14. package/e2e/tsconfig.json +0 -13
  15. package/logo.png +0 -0
  16. package/projects/ngx-promise-buttons/karma.conf.js +0 -32
  17. package/projects/ngx-promise-buttons/ng-package.json +0 -10
  18. package/projects/ngx-promise-buttons/package.json +0 -26
  19. package/projects/ngx-promise-buttons/src/default-promise-btn-config.ts +0 -10
  20. package/projects/ngx-promise-buttons/src/index.ts +0 -2
  21. package/projects/ngx-promise-buttons/src/promise-btn-config.ts +0 -7
  22. package/projects/ngx-promise-buttons/src/promise-btn.directive.spec.ts +0 -597
  23. package/projects/ngx-promise-buttons/src/promise-btn.directive.ts +0 -247
  24. package/projects/ngx-promise-buttons/src/provider.ts +0 -14
  25. package/projects/ngx-promise-buttons/src/test.ts +0 -16
  26. package/projects/ngx-promise-buttons/src/user-cfg.ts +0 -3
  27. package/projects/ngx-promise-buttons/tsconfig.lib.json +0 -27
  28. package/projects/ngx-promise-buttons/tsconfig.lib.prod.json +0 -10
  29. package/projects/ngx-promise-buttons/tsconfig.spec.json +0 -17
  30. package/projects/ngx-promise-buttons/tslint.json +0 -25
  31. package/projects/ngx-promise-buttons/yarn.lock +0 -9
  32. package/projects/ngx-promise-buttons-demo/e2e/protractor.conf.js +0 -30
  33. package/projects/ngx-promise-buttons-demo/e2e/tsconfig.json +0 -14
  34. package/projects/ngx-promise-buttons-demo/karma.conf.js +0 -56
  35. package/projects/ngx-promise-buttons-demo/src/app/app.component.css +0 -6
  36. package/projects/ngx-promise-buttons-demo/src/app/app.component.html +0 -109
  37. package/projects/ngx-promise-buttons-demo/src/app/app.component.spec.ts +0 -29
  38. package/projects/ngx-promise-buttons-demo/src/app/app.component.ts +0 -208
  39. package/projects/ngx-promise-buttons-demo/src/assets/.gitkeep +0 -0
  40. package/projects/ngx-promise-buttons-demo/src/environments/environment.prod.ts +0 -3
  41. package/projects/ngx-promise-buttons-demo/src/environments/environment.ts +0 -8
  42. package/projects/ngx-promise-buttons-demo/src/favicon.ico +0 -0
  43. package/projects/ngx-promise-buttons-demo/src/index.html +0 -72
  44. package/projects/ngx-promise-buttons-demo/src/main.ts +0 -11
  45. package/projects/ngx-promise-buttons-demo/src/polyfills.ts +0 -63
  46. package/projects/ngx-promise-buttons-demo/src/styles.scss +0 -135
  47. package/projects/ngx-promise-buttons-demo/tsconfig.app.json +0 -14
  48. package/projects/ngx-promise-buttons-demo/tsconfig.spec.json +0 -18
  49. package/projects/ngx-promise-buttons-demo/tslint.json +0 -156
  50. package/scripts/copy-readme-to-demo.js +0 -15
  51. package/tsconfig.build-lib.json +0 -32
  52. package/tsconfig.json +0 -41
  53. package/wallaby.js +0 -90
@@ -1,208 +0,0 @@
1
- import {Component} from '@angular/core';
2
- import {Observable, Subscription} from 'rxjs';
3
- import {PromiseBtnDirective} from "../../../ngx-promise-buttons/src";
4
- const STANDARD_DELAY = 1000;
5
- const FAKE_FACT = {
6
- success() {
7
- return new Promise((fulfill) => {
8
- setTimeout(() => {
9
- fulfill({
10
- msg: 'SUCCESS'
11
- });
12
- }, STANDARD_DELAY);
13
- });
14
- },
15
- error: () => {
16
- return new Promise((fulfill, reject) => {
17
- setTimeout(() => {
18
- reject({
19
- msg: 'ERROR'
20
- });
21
- }, STANDARD_DELAY);
22
- });
23
- },
24
- endless: () => {
25
- return new Promise((fulfill) => {
26
- setTimeout(fulfill, 99999999);
27
- });
28
- },
29
- endlessObservable: (): Observable<any> => {
30
- return new Observable(() => {
31
- });
32
- },
33
- initSuccessObservable: (): Observable<any> => {
34
- return new Observable(observer => {
35
- setTimeout(() => {
36
- observer.complete();
37
- }, STANDARD_DELAY);
38
- });
39
- },
40
- initErrorObservable: (): Observable<any> => {
41
- return new Observable(observer => {
42
- setTimeout(() => {
43
- observer.error('ERROR');
44
- }, STANDARD_DELAY);
45
- });
46
- },
47
- initChainedObservable: (): Observable<number> => {
48
- return new Observable(observer => {
49
- setTimeout(() => {
50
- observer.next(1);
51
- }, 1000);
52
-
53
- setTimeout(() => {
54
- observer.next(2);
55
- }, 2000);
56
-
57
- setTimeout(() => {
58
- observer.next(3);
59
- }, 3000);
60
-
61
- setTimeout(() => {
62
- observer.complete();
63
- }, 4000);
64
- });
65
- },
66
- };
67
-
68
- @Component({
69
- selector: 'app-root',
70
- templateUrl: './app.component.html',
71
- styleUrls: ['./app.component.css'],
72
- imports:[
73
- PromiseBtnDirective
74
- ]
75
- })
76
- export class AppComponent {
77
- successPromise: Promise<any>;
78
- errorPromise: Promise<any>;
79
- endlessInitialPromise: Promise<any>;
80
- endlessPromise: Promise<any>;
81
- submitPromise: Promise<any>;
82
- chainedPromises: any;
83
- promiseIndex: number;
84
- myBool = true;
85
-
86
- successObservable: Subscription;
87
- errorObservable: Subscription;
88
- endlessInitialObservable: Subscription;
89
- endlessObservable: Subscription;
90
- chainedObservableValue: any;
91
- chainedObservable: Subscription;
92
- customDisabled = true;
93
- myBoolWithCustomDisabled = false;
94
- isOutsideDisabled = true;
95
-
96
- constructor() {
97
- this.endlessInitial();
98
- this.initEndlessInitialObservable();
99
- }
100
-
101
- success($event: any): Promise<any> {
102
- console.log($event);
103
- this.successPromise = FAKE_FACT.success();
104
- return this.successPromise;
105
- }
106
-
107
- error() {
108
- this.errorPromise = FAKE_FACT.error()
109
- .catch(() => {
110
- console.log('YEAH ERROR');
111
- });
112
- }
113
-
114
- endless() {
115
- this.endlessPromise = FAKE_FACT.endless();
116
- }
117
-
118
- endlessInitial() {
119
- this.endlessInitialPromise = FAKE_FACT.endless();
120
- }
121
-
122
- initSuccessObservable() {
123
- const observable = FAKE_FACT.initSuccessObservable();
124
- this.successObservable = observable.subscribe(
125
- () => {
126
- },
127
- () => {
128
- },
129
- () => {
130
- }
131
- );
132
- }
133
-
134
- initErrorObservable() {
135
- const observable = FAKE_FACT.initErrorObservable();
136
- this.errorObservable = observable.subscribe(
137
- () => {
138
- },
139
- (msg) => {
140
- console.log(msg);
141
- },
142
- () => {
143
- },
144
- );
145
- }
146
-
147
- initChainedObservable() {
148
- const observable = FAKE_FACT.initChainedObservable();
149
- this.chainedObservableValue = 'INITIALIZED';
150
- this.chainedObservable = observable.subscribe(
151
- (value: number) => {
152
- this.chainedObservableValue = value;
153
- },
154
- () => {
155
- },
156
- () => {
157
- this.chainedObservableValue = 'COMPLETED';
158
- }
159
- );
160
- }
161
-
162
- initEndlessObservable() {
163
- const observable = FAKE_FACT.endlessObservable();
164
- this.endlessObservable = observable.subscribe(
165
- () => {
166
- },
167
- () => {
168
- },
169
- () => {
170
- },
171
- );
172
- }
173
-
174
- initEndlessInitialObservable() {
175
- const observable = FAKE_FACT.endlessObservable();
176
- this.endlessInitialObservable = observable.subscribe(
177
- () => {
178
- },
179
- () => {
180
- },
181
- () => {
182
- },
183
- );
184
- }
185
-
186
- submit() {
187
- this.submitPromise = FAKE_FACT.success();
188
- }
189
-
190
- chain() {
191
- this.promiseIndex = 0;
192
- this.chainedPromises = this.countChain()
193
- .then(this.countChain.bind(this))
194
- .then(this.countChain.bind(this))
195
- .then(this.countChain.bind(this))
196
- .then(this.countChain.bind(this));
197
-
198
- return this.chainedPromises;
199
- }
200
-
201
- countChain() {
202
- return FAKE_FACT.success()
203
- .then(() => {
204
- this.promiseIndex++;
205
- });
206
- }
207
-
208
- }
@@ -1,3 +0,0 @@
1
- export const environment = {
2
- production: true
3
- };
@@ -1,8 +0,0 @@
1
- // The file contents for the current environment will overwrite these during build.
2
- // The build system defaults to the dev environment which uses `environment.ts`, but if you do
3
- // `ng build --env=prod` then `environment.prod.ts` will be used instead.
4
- // The list of which env maps to which file can be found in `.angular-cli.json`.
5
-
6
- export const environment = {
7
- production: false
8
- };
@@ -1,72 +0,0 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <title>NgxPromiseButtons</title>
6
-
7
- <meta name="viewport"
8
- content="width=device-width, initial-scale=1">
9
- <link rel="icon"
10
- type="image/x-icon"
11
- href="favicon.ico">
12
- <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
13
- rel="stylesheet">
14
- </head>
15
- <body>
16
-
17
- <header class="main-header">
18
- <a href="https://github.com/meysamsahragard/ngx-promise-buttons"
19
- class="fork-me-badge">
20
- <img src="https://camo.githubusercontent.com/365986a132ccd6a44c23a9169022c0b5c890c387/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f7265645f6161303030302e706e67"
21
- alt="Fork me on GitHub"
22
- data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_red_aa0000.png">
23
- </a>
24
-
25
- <div class="container">
26
- <h1 class="header">ngx-promise-buttons</h1>
27
- <p class="header motto"><i>Chilled Buttons for Angular</i></p>
28
-
29
- <!-- Place this tag where you want the button to render. -->
30
- <!-- Place this tag where you want the button to render. -->
31
- <a class="github-button"
32
- href="https://github.com/meysamsahragard/ngx-promise-buttons"
33
- data-icon="octicon-star"
34
- data-size="large"
35
- data-show-count="true"
36
- aria-label="Star meysamsahragard/ngx-promise-buttons on GitHub">Star</a>
37
-
38
- <!-- Place this tag where you want the button to render. -->
39
- <a class="github-button"
40
- href="https://github.com/meysamsahragard/ngx-promise-buttons/fork"
41
- data-icon="octicon-repo-forked"
42
- data-size="large"
43
- data-show-count="true"
44
- aria-label="Fork meysamsahragard/ngx-promise-buttons on GitHub">Fork</a>
45
-
46
- <!-- Place this tag where you want the button to render. -->
47
- <a class="github-button"
48
- href="https://github.com/meysamsahragard/ngx-promise-buttons/issues"
49
- data-icon="octicon-issue-opened"
50
- data-size="large"
51
- data-show-count="true"
52
- aria-label="Issue meysamsahragard/ngx-promise-buttons on GitHub">Issue</a>
53
- </div>
54
- </header>
55
-
56
- <div class="container">
57
- <main>
58
- ___README_MD_NEEDLE___
59
-
60
-
61
- <h2><a name="demo"
62
- id="demo"></a>Demo</h2>
63
- <app-root>Loading...</app-root>
64
- </main>
65
- </div>
66
-
67
- <script async
68
- defer
69
- id="github-bjs"
70
- src="https://buttons.github.io/buttons.js"></script>
71
- </body>
72
- </html>
@@ -1,11 +0,0 @@
1
- import { bootstrapApplication } from '@angular/platform-browser';
2
- import {AppComponent} from "./app/app.component";
3
- import {provideNgxPromiseButtons} from "../../ngx-promise-buttons/src";
4
-
5
- bootstrapApplication(AppComponent, {
6
- providers: [
7
- provideNgxPromiseButtons({
8
- // handleCurrentBtnOnly: true
9
- }),
10
- ],
11
- });
@@ -1,63 +0,0 @@
1
- /**
2
- * This file includes polyfills needed by Angular and is loaded before the app.
3
- * You can add your own extra polyfills to this file.
4
- *
5
- * This file is divided into 2 sections:
6
- * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.
7
- * 2. Application imports. Files imported after ZoneJS that should be loaded before your main
8
- * file.
9
- *
10
- * The current setup is for so-called "evergreen" browsers; the last versions of browsers that
11
- * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),
12
- * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.
13
- *
14
- * Learn more in https://angular.io/guide/browser-support
15
- */
16
-
17
- /***************************************************************************************************
18
- * BROWSER POLYFILLS
19
- */
20
-
21
- /** IE10 and IE11 requires the following for NgClass support on SVG elements */
22
- // import 'classlist.js'; // Run `npm install --save classlist.js`.
23
-
24
- /**
25
- * Web Animations `@angular/platform-browser/animations`
26
- * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari.
27
- * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0).
28
- */
29
- // import 'web-animations-js'; // Run `npm install --save web-animations-js`.
30
-
31
- /**
32
- * By default, zone.js will patch all possible macroTask and DomEvents
33
- * user can disable parts of macroTask/DomEvents patch by setting following flags
34
- * because those flags need to be set before `zone.js` being loaded, and webpack
35
- * will put import in the top of bundle, so user need to create a separate file
36
- * in this directory (for example: zone-flags.ts), and put the following flags
37
- * into that file, and then add the following code before importing zone.js.
38
- * import './zone-flags.ts';
39
- *
40
- * The flags allowed in zone-flags.ts are listed here.
41
- *
42
- * The following flags will work for all browsers.
43
- *
44
- * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame
45
- * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick
46
- * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames
47
- *
48
- * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js
49
- * with the following flag, it will bypass `zone.js` patch for IE/Edge
50
- *
51
- * (window as any).__Zone_enable_cross_context_check = true;
52
- *
53
- */
54
-
55
- /***************************************************************************************************
56
- * Zone JS is required by default for Angular itself.
57
- */
58
- import 'zone.js'; // Included with Angular CLI.
59
-
60
-
61
- /***************************************************************************************************
62
- * APPLICATION IMPORTS
63
- */
@@ -1,135 +0,0 @@
1
- @import '../../../node_modules/bootstrap-material-design/dist/css/bootstrap-material-design.css';
2
- //@import 'node_modules/bootstrap-material-design/scss/bootstrap-material-design';
3
-
4
- /* You can add global styles to this file, and also import other style files */
5
- @-webkit-keyframes three-quarters {
6
- 0% {
7
- -webkit-transform: rotate(0deg);
8
- -moz-transform: rotate(0deg);
9
- -ms-transform: rotate(0deg);
10
- -o-transform: rotate(0deg);
11
- transform: rotate(0deg);
12
- }
13
-
14
- 100% {
15
- -webkit-transform: rotate(360deg);
16
- -moz-transform: rotate(360deg);
17
- -ms-transform: rotate(360deg);
18
- -o-transform: rotate(360deg);
19
- transform: rotate(360deg);
20
- }
21
- }
22
-
23
- @-moz-keyframes three-quarters {
24
- 0% {
25
- -webkit-transform: rotate(0deg);
26
- -moz-transform: rotate(0deg);
27
- -ms-transform: rotate(0deg);
28
- -o-transform: rotate(0deg);
29
- transform: rotate(0deg);
30
- }
31
-
32
- 100% {
33
- -webkit-transform: rotate(360deg);
34
- -moz-transform: rotate(360deg);
35
- -ms-transform: rotate(360deg);
36
- -o-transform: rotate(360deg);
37
- transform: rotate(360deg);
38
- }
39
- }
40
-
41
- @-o-keyframes three-quarters {
42
- 0% {
43
- -webkit-transform: rotate(0deg);
44
- -moz-transform: rotate(0deg);
45
- -ms-transform: rotate(0deg);
46
- -o-transform: rotate(0deg);
47
- transform: rotate(0deg);
48
- }
49
-
50
- 100% {
51
- -webkit-transform: rotate(360deg);
52
- -moz-transform: rotate(360deg);
53
- -ms-transform: rotate(360deg);
54
- -o-transform: rotate(360deg);
55
- transform: rotate(360deg);
56
- }
57
- }
58
-
59
- @keyframes three-quarters {
60
- 0% {
61
- -webkit-transform: rotate(0deg);
62
- -moz-transform: rotate(0deg);
63
- -ms-transform: rotate(0deg);
64
- -o-transform: rotate(0deg);
65
- transform: rotate(0deg);
66
- }
67
-
68
- 100% {
69
- -webkit-transform: rotate(360deg);
70
- -moz-transform: rotate(360deg);
71
- -ms-transform: rotate(360deg);
72
- -o-transform: rotate(360deg);
73
- transform: rotate(360deg);
74
- }
75
- }
76
-
77
- /* Styles for old versions of IE */
78
- button .btn-spinner {
79
- font-family: sans-serif;
80
- font-weight: 100;
81
- -webkit-animation: three-quarters 1250ms infinite linear;
82
- -moz-animation: three-quarters 1250ms infinite linear;
83
- -ms-animation: three-quarters 1250ms infinite linear;
84
- -o-animation: three-quarters 1250ms infinite linear;
85
- animation: three-quarters 1250ms infinite linear;
86
- border: 3px solid #8c024c;
87
- border-right-color: transparent;
88
- border-radius: 100%;
89
- box-sizing: border-box;
90
- display: inline-block;
91
- position: relative;
92
- vertical-align: middle;
93
- overflow: hidden;
94
- text-indent: -9999px;
95
- width: 18px;
96
- height: 18px;
97
- }
98
-
99
- button .btn-spinner:not(:required) {
100
- margin-left: -22px;
101
- opacity: 0;
102
- transition: 0.4s margin ease-out,
103
- 0.2s opacity ease-out;
104
- }
105
-
106
- button.is-loading .btn-spinner {
107
- transition: 0.2s margin ease-in,
108
- 0.4s opacity ease-in;
109
- margin-left: 5px;
110
- opacity: 1;
111
- }
112
-
113
- .btn {
114
- text-align: left;
115
- }
116
-
117
- body {
118
- padding-bottom: 50px;
119
- }
120
-
121
- .main-header {
122
- background: #3f51b5;
123
- color: #eeeeee;
124
- height: 133px;
125
- }
126
-
127
- .main-header h1 {
128
- margin-top: 10px;
129
- }
130
-
131
- .fork-me-badge {
132
- position: absolute;
133
- right: 0;
134
- top: 0;
135
- }
@@ -1,14 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.json",
3
- "compilerOptions": {
4
- "outDir": "./out-tsc/app",
5
- "types": []
6
- },
7
- "files": [
8
- "src/main.ts",
9
- "src/polyfills.ts"
10
- ],
11
- "include": [
12
- "src/**/*.d.ts"
13
- ]
14
- }
@@ -1,18 +0,0 @@
1
- /* To learn more about this file see: https://angular.io/config/tsconfig. */
2
- {
3
- "extends": "../../tsconfig.json",
4
- "compilerOptions": {
5
- "outDir": "../../out-tsc/spec",
6
- "types": [
7
- "jasmine"
8
- ]
9
- },
10
- "files": [
11
- "src/test.ts",
12
- "src/polyfills.ts"
13
- ],
14
- "include": [
15
- "src/**/*.spec.ts",
16
- "src/**/*.d.ts"
17
- ]
18
- }
@@ -1,156 +0,0 @@
1
- {
2
- "extends": "tslint:recommended",
3
- "rules": {
4
- "align": {
5
- "options": [
6
- "parameters",
7
- "statements"
8
- ]
9
- },
10
- "array-type": false,
11
- "arrow-parens": false,
12
- "arrow-return-shorthand": true,
13
- "deprecation": {
14
- "severity": "warning"
15
- },
16
- "component-class-suffix": true,
17
- "contextual-lifecycle": true,
18
- "curly": true,
19
- "directive-class-suffix": true,
20
- "directive-selector": [
21
- false,
22
- "attribute",
23
- "app",
24
- "camelCase"
25
- ],
26
- "component-selector": [
27
- false,
28
- "element",
29
- "app",
30
- "kebab-case"
31
- ],
32
- "eofline": true,
33
- "import-blacklist": [
34
- true,
35
- "rxjs/Rx"
36
- ],
37
- "import-spacing": true,
38
- "indent": {
39
- "options": [
40
- "spaces"
41
- ]
42
- },
43
- "interface-name": false,
44
- "max-classes-per-file": false,
45
- "max-line-length": [
46
- true,
47
- 150
48
- ],
49
- "member-access": false,
50
- "member-ordering": [
51
- true,
52
- {
53
- "order": [
54
- "static-field",
55
- "instance-field",
56
- "static-method",
57
- "instance-method"
58
- ]
59
- }
60
- ],
61
- "no-consecutive-blank-lines": false,
62
- "no-console": [
63
- true,
64
- "debug",
65
- "info",
66
- "time",
67
- "timeEnd",
68
- "trace"
69
- ],
70
- "no-empty": false,
71
- "no-inferrable-types": [
72
- true,
73
- "ignore-params"
74
- ],
75
- "no-non-null-assertion": true,
76
- "no-redundant-jsdoc": true,
77
- "no-switch-case-fall-through": true,
78
- "no-var-requires": false,
79
- "object-literal-key-quotes": [
80
- true,
81
- "as-needed"
82
- ],
83
- "object-literal-sort-keys": false,
84
- "ordered-imports": false,
85
- "quotemark": [
86
- true,
87
- "single"
88
- ],
89
- "trailing-comma": false,
90
- "no-conflicting-lifecycle": true,
91
- "no-host-metadata-property": true,
92
- "no-input-rename": false,
93
- "no-inputs-metadata-property": true,
94
- "no-output-native": true,
95
- "no-output-on-prefix": true,
96
- "no-output-rename": true,
97
- "semicolon": {
98
- "options": [
99
- "always"
100
- ]
101
- },
102
- "space-before-function-paren": {
103
- "options": {
104
- "anonymous": "never",
105
- "asyncArrow": "always",
106
- "constructor": "never",
107
- "method": "never",
108
- "named": "never"
109
- }
110
- },
111
- "no-outputs-metadata-property": true,
112
- "template-banana-in-box": true,
113
- "template-no-negated-async": false,
114
- "typedef-whitespace": {
115
- "options": [
116
- {
117
- "call-signature": "nospace",
118
- "index-signature": "nospace",
119
- "parameter": "nospace",
120
- "property-declaration": "nospace",
121
- "variable-declaration": "nospace"
122
- },
123
- {
124
- "call-signature": "onespace",
125
- "index-signature": "onespace",
126
- "parameter": "onespace",
127
- "property-declaration": "onespace",
128
- "variable-declaration": "onespace"
129
- }
130
- ]
131
- },
132
- "use-lifecycle-interface": true,
133
- "use-pipe-transform-interface": true,
134
- "variable-name": [
135
- true,
136
- "allow-pascal-case",
137
- "allow-snake-case",
138
- "ban-keywords",
139
- "check-format",
140
- "allow-leading-underscore"
141
- ],
142
- "whitespace": {
143
- "options": [
144
- "check-branch",
145
- "check-decl",
146
- "check-operator",
147
- "check-separator",
148
- "check-type",
149
- "check-typecast"
150
- ]
151
- }
152
- },
153
- "rulesDirectory": [
154
- "codelyzer"
155
- ]
156
- }