diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..dbf0821 --- /dev/null +++ b/.eslintignore @@ -0,0 +1 @@ +node_modules/* \ No newline at end of file diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..5fc845e --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,42 @@ +{ + "root": true, + "overrides": [ + { + "files": ["*.ts"], + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@angular-eslint/recommended", + // This is required if you use inline templates in Components + "plugin:@angular-eslint/template/process-inline-templates" + ], + "rules": { + /** + * Any TypeScript source code (NOT TEMPLATE) related rules you wish to use/reconfigure over and above the + * recommended set provided by the @angular-eslint project would go here. + */ + "@angular-eslint/directive-selector": [ + "error", + { "type": "attribute", "prefix": "app", "style": "camelCase" } + ], + "@angular-eslint/component-selector": [ + "error", + { "type": "element", "prefix": "app", "style": "kebab-case" } + ] + } + }, + { + "files": ["*.html"], + "extends": [ + "plugin:@angular-eslint/template/recommended", + "plugin:@angular-eslint/template/accessibility" + ], + "rules": { + /** + * Any template/HTML related rules you wish to use/reconfigure over and above the + * recommended set provided by the @angular-eslint project would go here. + */ + } + } + ] +} diff --git a/.gitignore b/.gitignore index f7528bf..e64e419 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ # See http://help.github.com/ignore-files/ for more about ignoring files. # compiled output +.angular/ /dist /tmp /out-tsc @@ -45,4 +46,7 @@ testem.log .DS_Store Thumbs.db +# Environment file +.env + package-lock.json diff --git a/angular.json b/angular.json index 6921db6..14f78d8 100644 --- a/angular.json +++ b/angular.json @@ -18,10 +18,7 @@ "main": "src/main.ts", "polyfills": "src/polyfills.ts", "tsConfig": "src/tsconfig.app.json", - "assets": [ - "src/favicon.ico", - "src/assets" - ], + "assets": ["src/favicon.ico", "src/assets"], "styles": [ "node_modules/bootstrap/dist/css/bootstrap.css", "src/styles.css" @@ -88,26 +85,16 @@ "polyfills": "src/polyfills.ts", "tsConfig": "src/tsconfig.spec.json", "karmaConfig": "src/karma.conf.js", - "styles": [ - "src/styles.css" - ], + "styles": ["src/styles.css"], "scripts": [], - "assets": [ - "src/favicon.ico", - "src/assets" - ] + "assets": ["src/favicon.ico", "src/assets"] } }, "lint": { - "builder": "@angular-devkit/build-angular:tslint", + "builder": "@angular-eslint/builder:lint", "options": { - "tsConfig": [ - "src/tsconfig.app.json", - "src/tsconfig.spec.json" - ], - "exclude": [ - "**/node_modules/**" - ] + "eslintConfig": ".eslintrc.json", + "lintFilePatterns": ["src/**/*.spec.ts", "src/**/*.d.ts"] } } } @@ -130,12 +117,10 @@ } }, "lint": { - "builder": "@angular-devkit/build-angular:tslint", + "builder": "@angular-eslint/builder:lint", "options": { - "tsConfig": "e2e/tsconfig.e2e.json", - "exclude": [ - "**/node_modules/**" - ] + "eslintConfig": ".eslintrc.json", + "lintFilePatterns": ["e2e/**/*spec.ts", "e2e/**/*.ts"] } } } @@ -167,14 +152,12 @@ } }, "lint": { - "builder": "@angular-devkit/build-angular:tslint", + "builder": "@angular-eslint/builder:lint", "options": { - "tsConfig": [ - "projects/ng7-dynamic-breadcrumb/tsconfig.lib.json", - "projects/ng7-dynamic-breadcrumb/tsconfig.spec.json" - ], - "exclude": [ - "**/node_modules/**" + "eslintConfig": ".eslintrc.json", + "lintFilePatterns": [ + "projects/ng7-dynamic-breadcrumb/**/*.spec.ts", + "projects/ng7-dynamic-breadcrumb/**/*.d.ts" ] } } @@ -207,14 +190,12 @@ } }, "lint": { - "builder": "@angular-devkit/build-angular:tslint", + "builder": "@angular-eslint/builder:lint", "options": { - "tsConfig": [ - "projects/ng7-bootstrap-breadcrumb/tsconfig.lib.json", - "projects/ng7-bootstrap-breadcrumb/tsconfig.spec.json" - ], - "exclude": [ - "**/node_modules/**" + "eslintConfig": ".eslintrc.json", + "lintFilePatterns": [ + "projects/ng7-bootstrap-breadcrumb/**/*.spec.ts", + "projects/ng7-bootstrap-breadcrumb/**/*.d.ts" ] } } @@ -247,14 +228,12 @@ } }, "lint": { - "builder": "@angular-devkit/build-angular:tslint", + "builder": "@angular-eslint/builder:lint", "options": { - "tsConfig": [ - "projects/ng7-mat-breadcrumb/tsconfig.lib.json", - "projects/ng7-mat-breadcrumb/tsconfig.spec.json" - ], - "exclude": [ - "**/node_modules/**" + "eslintConfig": ".eslintrc.json", + "lintFilePatterns": [ + "projects/ng7-mat-breadcrumb/**/*.spec.ts", + "projects/ng7-mat-breadcrumb/**/*.d.ts" ] } } @@ -287,22 +266,19 @@ } }, "lint": { - "builder": "@angular-devkit/build-angular:tslint", + "builder": "@angular-eslint/builder:lint", "options": { - "tsConfig": [ - "projects/ng-dynamic-breadcrumb/tsconfig.lib.json", - "projects/ng-dynamic-breadcrumb/tsconfig.spec.json" - ], - "exclude": [ - "**/node_modules/**" + "eslintConfig": ".eslintrc.json", + "lintFilePatterns": [ + "projects/ng-dynamic-breadcrumb/**/*.spec.ts", + "projects/ng-dynamic-breadcrumb/**/*.d.ts" ] } } } } }, - "defaultProject": "ng7-dynamic-breadcrumb-lib", "cli": { "analytics": false } -} \ No newline at end of file +} diff --git a/package.json b/package.json index 2d88716..cdc45ac 100644 --- a/package.json +++ b/package.json @@ -11,35 +11,42 @@ }, "private": true, "dependencies": { - "@angular/animations": "^14.0.0" , - "@angular/cdk": "^14.0.0", - "@angular/common": "^14.0.0", - "@angular/compiler": "^14.0.0", - "@angular/core": "^14.0.0", - "@angular/forms": "^14.0.0", - "@angular/material": "^14.0.0", - "@angular/platform-browser": "^14.0.0", - "@angular/platform-browser-dynamic": "^14.0.0", - "@angular/router": "^14.0.0", + "@angular/animations": "^15.2.9", + "@angular/cdk": "^15.2.9", + "@angular/common": "^15.2.9", + "@angular/compiler": "^15.2.9", + "@angular/core": "^15.2.9", + "@angular/forms": "^15.2.9", + "@angular/material": "^15.2.9", + "@angular/platform-browser": "^15.2.9", + "@angular/platform-browser-dynamic": "^15.2.9", + "@angular/router": "^15.2.9", "bootstrap": "^4.3.1", "core-js": "^3.1.3", - "ng-dynamic-breadcrumb": "projects/ng-dynamic-breadcrumb", - "ng7-bootstrap-breadcrumb": "projects/ng7-bootstrap-breadcrumb", - "ng7-dynamic-breadcrumb": "projects/ng7-dynamic-breadcrumb", - "ng7-mat-breadcrumb": "projects/ng7-mat-breadcrumb", + "ng-dynamic-breadcrumb": "./projects/ng-dynamic-breadcrumb", + "ng7-bootstrap-breadcrumb": "./projects/ng7-bootstrap-breadcrumb", + "ng7-dynamic-breadcrumb": "./projects/ng7-dynamic-breadcrumb", + "ng7-mat-breadcrumb": "./projects/ng7-mat-breadcrumb", "rxjs": "~6.6.3", "tslib": "^2.3.0", "zone.js": "~0.11.4" }, "devDependencies": { - "@angular-devkit/build-angular": "^14.0.0", - "@angular/cli": "^14.0.0", - "@angular/compiler-cli": "^14.0.0", - "@angular/language-service": "^14.0.0", + "@angular-devkit/build-angular": "^15.2.9", + "@angular-eslint/builder": "16.1.1", + "@angular-eslint/eslint-plugin": "16.1.1", + "@angular-eslint/eslint-plugin-template": "16.1.1", + "@angular-eslint/schematics": "16.1.1", + "@angular-eslint/template-parser": "16.1.1", + "@angular/compiler-cli": "^15.2.9", + "@angular/language-service": "^15.2.9", "@types/jasmine": "~3.8.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^14.0.0", + "@typescript-eslint/eslint-plugin": "5.62.0", + "@typescript-eslint/parser": "5.62.0", "codelyzer": "^6.0.0", + "eslint": "^8.47.0", "jasmine-core": "~3.8.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~6.3.4", @@ -47,7 +54,7 @@ "karma-coverage-istanbul-reporter": "~3.0.2", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", - "ng-packagr": "^14.0.0", + "ng-packagr": "^15.2.2", "protractor": "~7.0.0", "ts-node": "~8.2.0", "tslint": "~6.1.0", diff --git a/projects/ng-dynamic-breadcrumb/package.json b/projects/ng-dynamic-breadcrumb/package.json index 4547893..46a121e 100644 --- a/projects/ng-dynamic-breadcrumb/package.json +++ b/projects/ng-dynamic-breadcrumb/package.json @@ -1,10 +1,10 @@ { "name": "ng-dynamic-breadcrumb", - "description": "Angular 14 Dynamic Breadcrumb", - "version": "8.0.0", + "description": "Angular 15 Dynamic Breadcrumb", + "version": "9.0.0", "peerDependencies": { - "@angular/common": "^14.0.0", - "@angular/core": "^14.0.0" + "@angular/common": "^15.2.9", + "@angular/core": "^15.2.9" }, "main": "bundles/ng-dynamic-breadcrumb.umd.js", "module": "fesm5/ng-dynamic-breadcrumb.js", @@ -29,7 +29,7 @@ "ng-dynamic-breadcrumb", "angular6 breadcrumb", "angular 7 breadcrumb", - "angular dynamic breadcrumb" , + "angular dynamic breadcrumb", "angular breadcrumb", "Breadcrumbs", "angular7 Breadcrumbs", @@ -45,9 +45,8 @@ "angular 11 Breadcrumbs", "angular12 Breadcrumbs", "angular 12 Breadcrumbs", - "angular 14 Breadcrumbs" - - + "angular 14 Breadcrumbs", + "angular 15 Breadcrumbs" ], "bugs": { "url": "https://github.com/rajaramtt/ng7-dynamic-breadcrumb/issues" diff --git a/projects/ng-dynamic-breadcrumb/src/test.ts b/projects/ng-dynamic-breadcrumb/src/test.ts index ee9915d..e63a876 100644 --- a/projects/ng-dynamic-breadcrumb/src/test.ts +++ b/projects/ng-dynamic-breadcrumb/src/test.ts @@ -8,14 +8,8 @@ import { platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; -declare const require: any; - // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, platformBrowserDynamicTesting() ); -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().map(context); diff --git a/projects/ng-dynamic-breadcrumb/tsconfig.lib.json b/projects/ng-dynamic-breadcrumb/tsconfig.lib.json index 92d8245..307caea 100644 --- a/projects/ng-dynamic-breadcrumb/tsconfig.lib.json +++ b/projects/ng-dynamic-breadcrumb/tsconfig.lib.json @@ -3,7 +3,6 @@ "compilerOptions": { "outDir": "../../out-tsc/lib", "declarationMap": true, - "target": "es2015", "declaration": true, "inlineSources": true, "types": [], diff --git a/projects/ng7-bootstrap-breadcrumb/package.json b/projects/ng7-bootstrap-breadcrumb/package.json index 73aae6f..354fc21 100644 --- a/projects/ng7-bootstrap-breadcrumb/package.json +++ b/projects/ng7-bootstrap-breadcrumb/package.json @@ -1,10 +1,10 @@ { "name": "ng7-bootstrap-breadcrumb", - "description": "Angular 14 bootstrap Dynamic Breadcrumb", - "version": "8.0.0", + "description": "Angular 15 bootstrap Dynamic Breadcrumb", + "version": "9.0.0", "peerDependencies": { - "@angular/common": "^14.0.0", - "@angular/core": "^14.0.0", + "@angular/common": "^15.2.9", + "@angular/core": "^15.2.9", "bootstrap": "^4.3.1" }, "main": "bundles/ng7-dynamic-breadcrumb.umd.js", @@ -48,7 +48,8 @@ "angular11 Breadcrumbs", "angular 11 Breadcrumbs", "angular12 Breadcrumbs", - "angular 14 Breadcrumbs" + "angular 14 Breadcrumbs", + "angular 15 Breadcrumbs" ], "bugs": { "url": "https://github.com/rajaramtt/ng7-dynamic-breadcrumb/issues" diff --git a/projects/ng7-bootstrap-breadcrumb/src/test.ts b/projects/ng7-bootstrap-breadcrumb/src/test.ts index b1cc186..50aa0ae 100644 --- a/projects/ng7-bootstrap-breadcrumb/src/test.ts +++ b/projects/ng7-bootstrap-breadcrumb/src/test.ts @@ -9,14 +9,8 @@ import { platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; -declare const require: any; - // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, platformBrowserDynamicTesting() ); -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().map(context); diff --git a/projects/ng7-bootstrap-breadcrumb/tsconfig.lib.json b/projects/ng7-bootstrap-breadcrumb/tsconfig.lib.json index f689945..20e2948 100644 --- a/projects/ng7-bootstrap-breadcrumb/tsconfig.lib.json +++ b/projects/ng7-bootstrap-breadcrumb/tsconfig.lib.json @@ -3,7 +3,6 @@ "compilerOptions": { "outDir": "../../out-tsc/lib", "declarationMap": true, - "target": "es2015", "module": "es2015", "moduleResolution": "node", "declaration": true, diff --git a/projects/ng7-dynamic-breadcrumb/package.json b/projects/ng7-dynamic-breadcrumb/package.json index 608eba8..83cfb7b 100644 --- a/projects/ng7-dynamic-breadcrumb/package.json +++ b/projects/ng7-dynamic-breadcrumb/package.json @@ -1,10 +1,10 @@ { "name": "ng7-dynamic-breadcrumb", - "description": "Angular 14 Dynamic Breadcrumb", - "version": "8.0.0", + "description": "Angular 15 Dynamic Breadcrumb", + "version": "9.0.0", "peerDependencies": { - "@angular/common": "^14.0.0", - "@angular/core": "^14.0.0" + "@angular/common": "^15.2.9", + "@angular/core": "^15.2.9" }, "main": "bundles/ng7-dynamic-breadcrumb.umd.js", "module": "fesm5/ng7-dynamic-breadcrumb.js", @@ -29,7 +29,7 @@ "ng7-dynamic-breadcrumb", "angular6 breadcrumb", "angular 7 breadcrumb", - "angular dynamic breadcrumb" , + "angular dynamic breadcrumb", "angular breadcrumb", "Breadcrumbs", "angular7 Breadcrumbs", @@ -44,8 +44,8 @@ "angular11 Breadcrumbs", "angular 11 Breadcrumbs", "angular12 Breadcrumbs", - "angular 14 Breadcrumbs" - + "angular 14 Breadcrumbs", + "angular 15 Breadcrumbs" ], "bugs": { "url": "https://github.com/rajaramtt/ng7-dynamic-breadcrumb/issues" diff --git a/projects/ng7-dynamic-breadcrumb/src/test.ts b/projects/ng7-dynamic-breadcrumb/src/test.ts index b1cc186..50aa0ae 100644 --- a/projects/ng7-dynamic-breadcrumb/src/test.ts +++ b/projects/ng7-dynamic-breadcrumb/src/test.ts @@ -9,14 +9,8 @@ import { platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; -declare const require: any; - // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, platformBrowserDynamicTesting() ); -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().map(context); diff --git a/projects/ng7-dynamic-breadcrumb/tsconfig.lib.json b/projects/ng7-dynamic-breadcrumb/tsconfig.lib.json index f689945..20e2948 100644 --- a/projects/ng7-dynamic-breadcrumb/tsconfig.lib.json +++ b/projects/ng7-dynamic-breadcrumb/tsconfig.lib.json @@ -3,7 +3,6 @@ "compilerOptions": { "outDir": "../../out-tsc/lib", "declarationMap": true, - "target": "es2015", "module": "es2015", "moduleResolution": "node", "declaration": true, diff --git a/projects/ng7-mat-breadcrumb/package.json b/projects/ng7-mat-breadcrumb/package.json index 8854f06..a382502 100644 --- a/projects/ng7-mat-breadcrumb/package.json +++ b/projects/ng7-mat-breadcrumb/package.json @@ -1,11 +1,11 @@ { "name": "ng7-mat-breadcrumb", - "description": "Angular 14 Material Breadcrumb NPM Module", - "version": "8.0.0", + "description": "Angular 15 Material Breadcrumb NPM Module", + "version": "9.0.0", "peerDependencies": { - "@angular/common": "^14.0.0", - "@angular/core": "^14.0.0", - "@angular/material": "^14.0.0" + "@angular/common": "^15.2.9", + "@angular/core": "^15.2.9", + "@angular/material": "^15.2.9" }, "license": "MIT", "repository": { @@ -33,7 +33,8 @@ "angular11 Breadcrumbs", "angular 11 Breadcrumbs", "angular12 Breadcrumbs", - "angular 14 Breadcrumbs" + "angular 14 Breadcrumbs", + "angular 15 Breadcrumbs" ], "bugs": { "url": "https://github.com/rajaramtt/ng7-dynamic-breadcrumb/issues" diff --git a/projects/ng7-mat-breadcrumb/src/lib/ng7-mat-breadcrumb.module.ts b/projects/ng7-mat-breadcrumb/src/lib/ng7-mat-breadcrumb.module.ts index b5d36bf..b29f312 100644 --- a/projects/ng7-mat-breadcrumb/src/lib/ng7-mat-breadcrumb.module.ts +++ b/projects/ng7-mat-breadcrumb/src/lib/ng7-mat-breadcrumb.module.ts @@ -4,7 +4,7 @@ import { RouterModule } from '@angular/router'; import { CommonModule } from '@angular/common'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { MatToolbarModule } from '@angular/material/toolbar'; -import { MatListModule } from '@angular/material/list'; +import { MatLegacyListModule as MatListModule } from '@angular/material/legacy-list'; @NgModule({ declarations: [Ng7MatBreadcrumbComponent], diff --git a/projects/ng7-mat-breadcrumb/src/test.ts b/projects/ng7-mat-breadcrumb/src/test.ts index b1cc186..50aa0ae 100644 --- a/projects/ng7-mat-breadcrumb/src/test.ts +++ b/projects/ng7-mat-breadcrumb/src/test.ts @@ -9,14 +9,8 @@ import { platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; -declare const require: any; - // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, platformBrowserDynamicTesting() ); -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().map(context); diff --git a/projects/ng7-mat-breadcrumb/tsconfig.lib.json b/projects/ng7-mat-breadcrumb/tsconfig.lib.json index f689945..20e2948 100644 --- a/projects/ng7-mat-breadcrumb/tsconfig.lib.json +++ b/projects/ng7-mat-breadcrumb/tsconfig.lib.json @@ -3,7 +3,6 @@ "compilerOptions": { "outDir": "../../out-tsc/lib", "declarationMap": true, - "target": "es2015", "module": "es2015", "moduleResolution": "node", "declaration": true, diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 8816bec..c6d6781 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -63,7 +63,7 @@ const routes: Routes = [ ]; @NgModule({ - imports: [RouterModule.forRoot(routes, { relativeLinkResolution: 'legacy' })], + imports: [RouterModule.forRoot(routes, {})], exports: [RouterModule] }) export class AppRoutingModule { diff --git a/src/test.ts b/src/test.ts index a6f15af..7632e27 100644 --- a/src/test.ts +++ b/src/test.ts @@ -7,14 +7,8 @@ import { platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing'; -declare const require: any; - // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, platformBrowserDynamicTesting() ); -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().map(context); diff --git a/tsconfig.json b/tsconfig.json index 8709281..8983868 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -9,7 +9,7 @@ "moduleResolution": "node", "experimentalDecorators": true, "importHelpers": true, - "target": "es5", + "target": "ES2022", "typeRoots": [ "node_modules/@types" ], @@ -42,6 +42,7 @@ "ng-dynamic-breadcrumb/*": [ "dist/ng-dynamic-breadcrumb/*" ] - } + }, + "useDefineForClassFields": false } } \ No newline at end of file