Skip to content
Open
Show file tree
Hide file tree
Changes from all 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