Skip to content
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,9 @@ jobs:

- uses: actions/setup-node@v4
with:
node-version: 20
# Angular 22 starters require Node ^22.22.3 || ^24.15.0 || >=26.0.0.
# All other current/legacy starters in this matrix run on Node 22 too.
node-version: 22
cache: npm
cache-dependency-path: |
build/${{ matrix.framework }}/ionic.starter.json
Expand Down
46 changes: 0 additions & 46 deletions angular-standalone/base/.eslintrc.json

This file was deleted.

28 changes: 7 additions & 21 deletions angular-standalone/base/angular.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,14 @@
"prefix": "app",
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:application",
"builder": "@angular/build:application",
"options": {
"outputPath": {
"base": "www",
"browser": ""
},
"index": "src/index.html",
"polyfills": [
"src/polyfills.ts"
],
"polyfills": [],
"tsConfig": "tsconfig.app.json",
"inlineStyleLanguage": "scss",
"assets": [
Expand Down Expand Up @@ -74,7 +72,7 @@
"defaultConfiguration": "production"
},
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"builder": "@angular/build:dev-server",
"configurations": {
"production": {
"buildTarget": "app:build:production"
Expand All @@ -89,32 +87,20 @@
"defaultConfiguration": "development"
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"builder": "@angular/build:extract-i18n",
"options": {
"buildTarget": "app:build"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"builder": "@angular/build:unit-test",
"options": {
"main": "src/test.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "tsconfig.spec.json",
"karmaConfig": "karma.conf.js",
"inlineStyleLanguage": "scss",
"assets": [
{
"glob": "**/*",
"input": "src/assets",
"output": "assets"
}
],
"styles": ["src/global.scss", "src/theme/variables.scss"],
"scripts": []
"buildTarget": "::development",
"setupFiles": ["src/test-setup.ts"]
},
"configurations": {
"ci": {
"progress": false,
"watch": false
}
}
Expand Down
31 changes: 31 additions & 0 deletions angular-standalone/base/eslint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
// @ts-check
const tseslint = require("typescript-eslint");
const angular = require("angular-eslint");

module.exports = tseslint.config(
{
files: ["**/*.ts"],
ignores: ["projects/**/*"],
extends: [...angular.configs.tsRecommended],
processor: angular.processInlineTemplates,
rules: {
"@angular-eslint/component-class-suffix": [
"error",
{ suffixes: ["Page", "Component"] },
],
"@angular-eslint/component-selector": [
"error",
{ type: "element", prefix: "app", style: "kebab-case" },
],
"@angular-eslint/directive-selector": [
"error",
{ type: "attribute", prefix: "app", style: "camelCase" },
],
},
},
{
files: ["**/*.html"],
extends: [...angular.configs.templateRecommended],
rules: {},
}
);
44 changes: 0 additions & 44 deletions angular-standalone/base/karma.conf.js

This file was deleted.

53 changes: 18 additions & 35 deletions angular-standalone/base/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,45 +13,28 @@
},
"private": true,
"dependencies": {
"@angular/animations": "20.3.25",
"@angular/common": "20.3.25",
"@angular/compiler": "20.3.25",
"@angular/core": "20.3.25",
"@angular/forms": "20.3.25",
"@angular/platform-browser": "20.3.25",
"@angular/platform-browser-dynamic": "20.3.25",
"@angular/router": "20.3.25",
"@ionic/angular": "^8.0.0",
"@angular/common": "22.0.1",
"@angular/compiler": "22.0.1",
"@angular/core": "22.0.1",
"@angular/forms": "22.0.1",
"@angular/platform-browser": "22.0.1",
"@angular/router": "22.0.1",
"@ionic/angular": "8.8.9-dev.11781098612.122c6758",
"ionicons": "^7.0.0",
"rxjs": "~7.8.0",
"tslib": "^2.3.0",
"zone.js": "~0.15.0"
"tslib": "^2.3.0"
},
"devDependencies": {
"@angular-devkit/build-angular": "20.3.28",
"@angular-eslint/builder": "20.7.0",
"@angular-eslint/eslint-plugin": "20.7.0",
"@angular-eslint/eslint-plugin-template": "20.7.0",
"@angular-eslint/schematics": "20.7.0",
"@angular-eslint/template-parser": "20.7.0",
"@angular/cli": "20.3.28",
"@angular/compiler-cli": "20.3.25",
"@angular/language-service": "20.3.25",
"@ionic/angular-toolkit": "^12.0.0",
"@types/jasmine": "~5.1.0",
"@typescript-eslint/eslint-plugin": "^8.18.0",
"@typescript-eslint/parser": "^8.18.0",
"@angular/build": "22.0.1",
"@angular/cli": "22.0.1",
"@angular/compiler-cli": "22.0.1",
"@angular/language-service": "22.0.1",
"@ionic/angular-toolkit": "^12.3.0",
"angular-eslint": "22.0.0",
"eslint": "^9.16.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsdoc": "^48.2.1",
"eslint-plugin-prefer-arrow": "1.2.2",
"jasmine-core": "~5.1.0",
"jasmine-spec-reporter": "~5.0.0",
"karma": "~6.4.0",
"karma-chrome-launcher": "~3.2.0",
"karma-coverage": "~2.2.0",
"karma-jasmine": "~5.1.0",
"karma-jasmine-html-reporter": "~2.1.0",
"typescript": "~5.9.0"
"jsdom": "^26.0.0",
"typescript": "~6.0.0",
"typescript-eslint": "^8.61.0",
"vitest": "^4.0.8"
}
}
6 changes: 4 additions & 2 deletions angular-standalone/base/src/main.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
import { provideZonelessChangeDetection } from '@angular/core';
import { bootstrapApplication } from '@angular/platform-browser';
import { RouteReuseStrategy, provideRouter, withPreloading, PreloadAllModules } from '@angular/router';
import { RouteReuseStrategy, provideRouter, withComponentInputBinding, withPreloading, PreloadAllModules } from '@angular/router';
import { IonicRouteStrategy, provideIonicAngular } from '@ionic/angular/standalone';

import { routes } from './app/app.routes';
import { AppComponent } from './app/app.component';

bootstrapApplication(AppComponent, {
providers: [
provideZonelessChangeDetection(),
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
provideIonicAngular(),
provideRouter(routes, withPreloading(PreloadAllModules)),
provideRouter(routes, withPreloading(PreloadAllModules), withComponentInputBinding()),
],
});
55 changes: 0 additions & 55 deletions angular-standalone/base/src/polyfills.ts

This file was deleted.

16 changes: 16 additions & 0 deletions angular-standalone/base/src/test-setup.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// Polyfills for running unit tests under jsdom (the default Vitest environment).
// Ionic components such as ion-menu and ion-split-pane query `window.matchMedia`,
// which jsdom does not implement.
if (!window.matchMedia) {
window.matchMedia = (query: string): MediaQueryList =>
({
matches: false,
media: query,
onchange: null,
addListener: () => undefined,
removeListener: () => undefined,
addEventListener: () => undefined,
removeEventListener: () => undefined,
dispatchEvent: () => false,
}) as MediaQueryList;
}
14 changes: 0 additions & 14 deletions angular-standalone/base/src/test.ts

This file was deleted.

6 changes: 0 additions & 6 deletions angular-standalone/base/src/zone-flags.ts

This file was deleted.

3 changes: 1 addition & 2 deletions angular-standalone/base/tsconfig.app.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@
"types": []
},
"files": [
"src/main.ts",
"src/polyfills.ts"
"src/main.ts"
],
"include": [
"src/**/*.d.ts"
Expand Down
Loading
Loading