From 995f4c0bdb2ca1c8cc5fe1a7c4c9a5f0c9100056 Mon Sep 17 00:00:00 2001
From: OS-jacobbell <228905018+OS-jacobbell@users.noreply.github.com>
Date: Tue, 28 Jul 2026 11:39:38 -0600
Subject: [PATCH 01/10] feat(angular): allow per-component standalone import
paths for better code-splitting
---
core/stencil.config.ts | 7 +-
packages/angular/common/ng-package.json | 5 -
packages/angular/lazy/ng-package.json | 5 -
packages/angular/ng-package.json | 7 -
packages/angular/package-lock.json | 32 +-
packages/angular/package.json | 24 +-
packages/angular/scripts/build-css.js | 12 +
.../{build-core.js => build-schematics.js} | 14 +-
.../control-value-accessors/index.ts | 0
.../control-value-accessors/value-accessor.ts | 0
.../directives/navigation/back-button.ts | 0
.../directives/navigation/nav-params.ts | 0
.../common}/directives/navigation/nav.ts | 0
.../navigation/router-link-delegate.ts | 0
.../directives/navigation/router-outlet.ts | 0
.../directives/navigation/stack-controller.ts | 0
.../directives/navigation/stack-utils.ts | 0
.../common}/directives/navigation/tabs.ts | 0
.../{common/src => src/common}/index.ts | 0
.../src => src/common}/overlays/modal.ts | 0
.../src => src/common}/overlays/popover.ts | 0
.../common}/providers/angular-delegate.ts | 0
.../src => src/common}/providers/config.ts | 0
.../common}/providers/dom-controller.ts | 0
.../common}/providers/menu-controller.ts | 0
.../common}/providers/nav-controller.ts | 0
.../src => src/common}/providers/platform.ts | 0
.../src => src/common}/types/interfaces.ts | 0
.../common}/types/ionic-lifecycle-hooks.ts | 0
.../common}/types/overlay-options.ts | 0
.../src => src/common}/utils/overlay.ts | 0
.../{common/src => src/common}/utils/proxy.ts | 0
.../src => src/common}/utils/routing.ts | 0
.../{common/src => src/common}/utils/util.ts | 0
.../{lazy/src => src/lazy}/app-initialize.ts | 0
.../directives/angular-component-lib/utils.ts | 0
.../boolean-value-accessor.ts | 0
.../control-value-accessors/index.ts | 0
.../numeric-value-accessor.ts | 0
.../select-value-accessor.ts | 0
.../text-value-accessor.ts | 0
.../directives/navigation/ion-back-button.ts | 0
.../lazy}/directives/navigation/ion-nav.ts | 0
.../navigation/ion-router-outlet.ts | 0
.../lazy}/directives/navigation/ion-tabs.ts | 0
.../navigation/router-link-delegate.ts | 0
.../lazy}/directives/overlays/modal.ts | 0
.../lazy}/directives/overlays/popover.ts | 0
.../lazy}/directives/proxies-list.ts | 0
.../src => src/lazy}/directives/proxies.ts | 0
.../lazy}/directives/validators/index.ts | 0
.../directives/validators/max-validator.ts | 0
.../directives/validators/min-validator.ts | 0
.../angular/{lazy/src => src/lazy}/index.ts | 0
.../{lazy/src => src/lazy}/ionic-core.ts | 0
.../{lazy/src => src/lazy}/ionic-module.ts | 0
.../providers/action-sheet-controller.ts | 0
.../lazy}/providers/alert-controller.ts | 0
.../lazy}/providers/animation-controller.ts | 0
.../lazy}/providers/gesture-controller.ts | 0
.../lazy}/providers/loading-controller.ts | 0
.../lazy}/providers/menu-controller.ts | 0
.../lazy}/providers/modal-controller.ts | 0
.../lazy}/providers/popover-controller.ts | 0
.../lazy}/providers/toast-controller.ts | 0
.../directives/angular-component-lib/utils.ts | 0
.../standalone}/directives/checkbox.ts | 0
.../standalone}/directives/datetime.ts | 0
.../src => src/standalone}/directives/icon.ts | 0
.../standalone}/directives/index.ts | 0
.../standalone}/directives/input-otp.ts | 0
.../standalone}/directives/input.ts | 0
.../directives/ion-accordion-group.ts | 45 +
.../standalone/directives/ion-accordion.ts | 33 +
.../standalone/directives/ion-action-sheet.ts | 83 +
.../src/standalone/directives/ion-alert.ts | 83 +
.../src/standalone/directives/ion-app.ts | 33 +
.../src/standalone/directives/ion-avatar.ts | 32 +
.../src/standalone/directives/ion-backdrop.ts | 42 +
.../src/standalone/directives/ion-badge.ts | 33 +
.../standalone/directives/ion-breadcrumb.ts | 47 +
.../standalone/directives/ion-breadcrumbs.ts | 43 +
.../src/standalone/directives/ion-button.ts | 47 +
.../src/standalone/directives/ion-buttons.ts | 33 +
.../standalone/directives/ion-card-content.ts | 33 +
.../standalone/directives/ion-card-header.ts | 33 +
.../directives/ion-card-subtitle.ts | 33 +
.../standalone/directives/ion-card-title.ts | 33 +
.../src/standalone/directives/ion-card.ts | 33 +
.../src/standalone/directives/ion-chip.ts | 33 +
.../src/standalone/directives/ion-col.ts | 33 +
.../src/standalone/directives/ion-content.ts | 58 +
.../directives/ion-datetime-button.ts | 33 +
.../standalone/directives/ion-fab-button.ts | 47 +
.../src/standalone/directives/ion-fab-list.ts | 33 +
.../src/standalone/directives/ion-fab.ts | 34 +
.../src/standalone/directives/ion-footer.ts | 33 +
.../src/standalone/directives/ion-grid.ts | 33 +
.../src/standalone/directives/ion-header.ts | 33 +
.../src/standalone/directives/ion-img.ts | 52 +
.../directives/ion-infinite-scroll-content.ts | 33 +
.../directives/ion-infinite-scroll.ts | 46 +
.../directives/ion-input-password-toggle.ts | 33 +
.../standalone/directives/ion-item-divider.ts | 33 +
.../standalone/directives/ion-item-group.ts | 32 +
.../standalone/directives/ion-item-option.ts | 33 +
.../standalone/directives/ion-item-options.ts | 42 +
.../standalone/directives/ion-item-sliding.ts | 43 +
.../src/standalone/directives/ion-item.ts | 33 +
.../src/standalone/directives/ion-label.ts | 33 +
.../standalone/directives/ion-list-header.ts | 33 +
.../src/standalone/directives/ion-list.ts | 34 +
.../src/standalone/directives/ion-loading.ts | 83 +
.../standalone/directives/ion-menu-button.ts | 33 +
.../standalone/directives/ion-menu-toggle.ts | 33 +
.../src/standalone/directives/ion-menu.ts | 59 +
.../src/standalone/directives/ion-nav-link.ts | 33 +
.../src/standalone/directives/ion-note.ts | 33 +
.../directives/ion-picker-column-option.ts | 33 +
.../directives/ion-picker-column.ts | 46 +
.../src/standalone/directives/ion-picker.ts | 33 +
.../standalone/directives/ion-progress-bar.ts | 33 +
.../src/standalone/directives/ion-radio.ts | 47 +
.../directives/ion-refresher-content.ts | 33 +
.../standalone/directives/ion-refresher.ts | 70 +
.../directives/ion-reorder-group.ts | 69 +
.../src/standalone/directives/ion-reorder.ts | 32 +
.../directives/ion-ripple-effect.ts | 34 +
.../src/standalone/directives/ion-row.ts | 32 +
.../directives/ion-segment-button.ts | 33 +
.../directives/ion-segment-content.ts | 32 +
.../standalone/directives/ion-segment-view.ts | 43 +
.../standalone/directives/ion-select-modal.ts | 33 +
.../directives/ion-select-option.ts | 33 +
.../directives/ion-skeleton-text.ts | 33 +
.../src/standalone/directives/ion-spinner.ts | 33 +
.../standalone/directives/ion-split-pane.ts | 42 +
.../src/standalone/directives/ion-tab-bar.ts | 33 +
.../standalone/directives/ion-tab-button.ts | 33 +
.../src/standalone/directives/ion-tab.ts | 34 +
.../src/standalone/directives/ion-text.ts | 33 +
.../standalone/directives/ion-thumbnail.ts | 32 +
.../src/standalone/directives/ion-title.ts | 33 +
.../src/standalone/directives/ion-toast.ts | 83 +
.../src/standalone/directives/ion-toolbar.ts | 33 +
.../src/standalone/directives/proxies.ts | 79 +
.../standalone}/directives/radio-group.ts | 0
.../standalone}/directives/range.ts | 0
.../standalone}/directives/searchbar.ts | 0
.../standalone}/directives/segment.ts | 0
.../standalone}/directives/select.ts | 0
.../standalone}/directives/textarea.ts | 0
.../standalone}/directives/toggle.ts | 0
.../src => src/standalone}/index.ts | 0
.../standalone}/navigation/back-button.ts | 0
.../src => src/standalone}/navigation/nav.ts | 0
.../navigation/router-link-delegate.ts | 0
.../standalone}/navigation/router-outlet.ts | 0
.../src => src/standalone}/navigation/tabs.ts | 0
.../src => src/standalone}/overlays/modal.ts | 0
.../standalone}/overlays/popover.ts | 0
.../providers/action-sheet-controller.ts | 0
.../standalone}/providers/alert-controller.ts | 0
.../providers/animation-controller.ts | 0
.../providers/gesture-controller.ts | 0
.../standalone}/providers/ionic-angular.ts | 0
.../providers/loading-controller.ts | 0
.../standalone}/providers/menu-controller.ts | 0
.../standalone}/providers/modal-controller.ts | 0
.../providers/popover-controller.ts | 0
.../standalone}/providers/toast-controller.ts | 0
.../standalone/src/directives/proxies.ts | 2252 -----------------
packages/angular/test/base/scripts/sync.sh | 2 +-
packages/angular/tsconfig.json | 44 +-
174 files changed, 3030 insertions(+), 2354 deletions(-)
delete mode 100644 packages/angular/common/ng-package.json
delete mode 100644 packages/angular/lazy/ng-package.json
delete mode 100644 packages/angular/ng-package.json
create mode 100644 packages/angular/scripts/build-css.js
rename packages/angular/scripts/{build-core.js => build-schematics.js} (80%)
rename packages/angular/{common/src => src/common}/directives/control-value-accessors/index.ts (100%)
rename packages/angular/{common/src => src/common}/directives/control-value-accessors/value-accessor.ts (100%)
rename packages/angular/{common/src => src/common}/directives/navigation/back-button.ts (100%)
rename packages/angular/{common/src => src/common}/directives/navigation/nav-params.ts (100%)
rename packages/angular/{common/src => src/common}/directives/navigation/nav.ts (100%)
rename packages/angular/{common/src => src/common}/directives/navigation/router-link-delegate.ts (100%)
rename packages/angular/{common/src => src/common}/directives/navigation/router-outlet.ts (100%)
rename packages/angular/{common/src => src/common}/directives/navigation/stack-controller.ts (100%)
rename packages/angular/{common/src => src/common}/directives/navigation/stack-utils.ts (100%)
rename packages/angular/{common/src => src/common}/directives/navigation/tabs.ts (100%)
rename packages/angular/{common/src => src/common}/index.ts (100%)
rename packages/angular/{common/src => src/common}/overlays/modal.ts (100%)
rename packages/angular/{common/src => src/common}/overlays/popover.ts (100%)
rename packages/angular/{common/src => src/common}/providers/angular-delegate.ts (100%)
rename packages/angular/{common/src => src/common}/providers/config.ts (100%)
rename packages/angular/{common/src => src/common}/providers/dom-controller.ts (100%)
rename packages/angular/{common/src => src/common}/providers/menu-controller.ts (100%)
rename packages/angular/{common/src => src/common}/providers/nav-controller.ts (100%)
rename packages/angular/{common/src => src/common}/providers/platform.ts (100%)
rename packages/angular/{common/src => src/common}/types/interfaces.ts (100%)
rename packages/angular/{common/src => src/common}/types/ionic-lifecycle-hooks.ts (100%)
rename packages/angular/{common/src => src/common}/types/overlay-options.ts (100%)
rename packages/angular/{common/src => src/common}/utils/overlay.ts (100%)
rename packages/angular/{common/src => src/common}/utils/proxy.ts (100%)
rename packages/angular/{common/src => src/common}/utils/routing.ts (100%)
rename packages/angular/{common/src => src/common}/utils/util.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/app-initialize.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/angular-component-lib/utils.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/control-value-accessors/boolean-value-accessor.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/control-value-accessors/index.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/control-value-accessors/numeric-value-accessor.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/control-value-accessors/select-value-accessor.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/control-value-accessors/text-value-accessor.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/navigation/ion-back-button.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/navigation/ion-nav.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/navigation/ion-router-outlet.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/navigation/ion-tabs.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/navigation/router-link-delegate.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/overlays/modal.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/overlays/popover.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/proxies-list.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/proxies.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/validators/index.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/validators/max-validator.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/directives/validators/min-validator.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/index.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/ionic-core.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/ionic-module.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/action-sheet-controller.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/alert-controller.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/animation-controller.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/gesture-controller.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/loading-controller.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/menu-controller.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/modal-controller.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/popover-controller.ts (100%)
rename packages/angular/{lazy/src => src/lazy}/providers/toast-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/angular-component-lib/utils.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/checkbox.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/datetime.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/icon.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/index.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/input-otp.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/input.ts (100%)
create mode 100644 packages/angular/src/standalone/directives/ion-accordion-group.ts
create mode 100644 packages/angular/src/standalone/directives/ion-accordion.ts
create mode 100644 packages/angular/src/standalone/directives/ion-action-sheet.ts
create mode 100644 packages/angular/src/standalone/directives/ion-alert.ts
create mode 100644 packages/angular/src/standalone/directives/ion-app.ts
create mode 100644 packages/angular/src/standalone/directives/ion-avatar.ts
create mode 100644 packages/angular/src/standalone/directives/ion-backdrop.ts
create mode 100644 packages/angular/src/standalone/directives/ion-badge.ts
create mode 100644 packages/angular/src/standalone/directives/ion-breadcrumb.ts
create mode 100644 packages/angular/src/standalone/directives/ion-breadcrumbs.ts
create mode 100644 packages/angular/src/standalone/directives/ion-button.ts
create mode 100644 packages/angular/src/standalone/directives/ion-buttons.ts
create mode 100644 packages/angular/src/standalone/directives/ion-card-content.ts
create mode 100644 packages/angular/src/standalone/directives/ion-card-header.ts
create mode 100644 packages/angular/src/standalone/directives/ion-card-subtitle.ts
create mode 100644 packages/angular/src/standalone/directives/ion-card-title.ts
create mode 100644 packages/angular/src/standalone/directives/ion-card.ts
create mode 100644 packages/angular/src/standalone/directives/ion-chip.ts
create mode 100644 packages/angular/src/standalone/directives/ion-col.ts
create mode 100644 packages/angular/src/standalone/directives/ion-content.ts
create mode 100644 packages/angular/src/standalone/directives/ion-datetime-button.ts
create mode 100644 packages/angular/src/standalone/directives/ion-fab-button.ts
create mode 100644 packages/angular/src/standalone/directives/ion-fab-list.ts
create mode 100644 packages/angular/src/standalone/directives/ion-fab.ts
create mode 100644 packages/angular/src/standalone/directives/ion-footer.ts
create mode 100644 packages/angular/src/standalone/directives/ion-grid.ts
create mode 100644 packages/angular/src/standalone/directives/ion-header.ts
create mode 100644 packages/angular/src/standalone/directives/ion-img.ts
create mode 100644 packages/angular/src/standalone/directives/ion-infinite-scroll-content.ts
create mode 100644 packages/angular/src/standalone/directives/ion-infinite-scroll.ts
create mode 100644 packages/angular/src/standalone/directives/ion-input-password-toggle.ts
create mode 100644 packages/angular/src/standalone/directives/ion-item-divider.ts
create mode 100644 packages/angular/src/standalone/directives/ion-item-group.ts
create mode 100644 packages/angular/src/standalone/directives/ion-item-option.ts
create mode 100644 packages/angular/src/standalone/directives/ion-item-options.ts
create mode 100644 packages/angular/src/standalone/directives/ion-item-sliding.ts
create mode 100644 packages/angular/src/standalone/directives/ion-item.ts
create mode 100644 packages/angular/src/standalone/directives/ion-label.ts
create mode 100644 packages/angular/src/standalone/directives/ion-list-header.ts
create mode 100644 packages/angular/src/standalone/directives/ion-list.ts
create mode 100644 packages/angular/src/standalone/directives/ion-loading.ts
create mode 100644 packages/angular/src/standalone/directives/ion-menu-button.ts
create mode 100644 packages/angular/src/standalone/directives/ion-menu-toggle.ts
create mode 100644 packages/angular/src/standalone/directives/ion-menu.ts
create mode 100644 packages/angular/src/standalone/directives/ion-nav-link.ts
create mode 100644 packages/angular/src/standalone/directives/ion-note.ts
create mode 100644 packages/angular/src/standalone/directives/ion-picker-column-option.ts
create mode 100644 packages/angular/src/standalone/directives/ion-picker-column.ts
create mode 100644 packages/angular/src/standalone/directives/ion-picker.ts
create mode 100644 packages/angular/src/standalone/directives/ion-progress-bar.ts
create mode 100644 packages/angular/src/standalone/directives/ion-radio.ts
create mode 100644 packages/angular/src/standalone/directives/ion-refresher-content.ts
create mode 100644 packages/angular/src/standalone/directives/ion-refresher.ts
create mode 100644 packages/angular/src/standalone/directives/ion-reorder-group.ts
create mode 100644 packages/angular/src/standalone/directives/ion-reorder.ts
create mode 100644 packages/angular/src/standalone/directives/ion-ripple-effect.ts
create mode 100644 packages/angular/src/standalone/directives/ion-row.ts
create mode 100644 packages/angular/src/standalone/directives/ion-segment-button.ts
create mode 100644 packages/angular/src/standalone/directives/ion-segment-content.ts
create mode 100644 packages/angular/src/standalone/directives/ion-segment-view.ts
create mode 100644 packages/angular/src/standalone/directives/ion-select-modal.ts
create mode 100644 packages/angular/src/standalone/directives/ion-select-option.ts
create mode 100644 packages/angular/src/standalone/directives/ion-skeleton-text.ts
create mode 100644 packages/angular/src/standalone/directives/ion-spinner.ts
create mode 100644 packages/angular/src/standalone/directives/ion-split-pane.ts
create mode 100644 packages/angular/src/standalone/directives/ion-tab-bar.ts
create mode 100644 packages/angular/src/standalone/directives/ion-tab-button.ts
create mode 100644 packages/angular/src/standalone/directives/ion-tab.ts
create mode 100644 packages/angular/src/standalone/directives/ion-text.ts
create mode 100644 packages/angular/src/standalone/directives/ion-thumbnail.ts
create mode 100644 packages/angular/src/standalone/directives/ion-title.ts
create mode 100644 packages/angular/src/standalone/directives/ion-toast.ts
create mode 100644 packages/angular/src/standalone/directives/ion-toolbar.ts
create mode 100644 packages/angular/src/standalone/directives/proxies.ts
rename packages/angular/{standalone/src => src/standalone}/directives/radio-group.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/range.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/searchbar.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/segment.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/select.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/textarea.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/directives/toggle.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/index.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/navigation/back-button.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/navigation/nav.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/navigation/router-link-delegate.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/navigation/router-outlet.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/navigation/tabs.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/overlays/modal.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/overlays/popover.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/action-sheet-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/alert-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/animation-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/gesture-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/ionic-angular.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/loading-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/menu-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/modal-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/popover-controller.ts (100%)
rename packages/angular/{standalone/src => src/standalone}/providers/toast-controller.ts (100%)
delete mode 100644 packages/angular/standalone/src/directives/proxies.ts
diff --git a/core/stencil.config.ts b/core/stencil.config.ts
index 114ef0889c0..165bd96e4a6 100644
--- a/core/stencil.config.ts
+++ b/core/stencil.config.ts
@@ -30,14 +30,14 @@ const getAngularOutputTargets = () => {
return [
angularOutputTarget({
componentCorePackage,
- directivesProxyFile: '../packages/angular/lazy/src/directives/proxies.ts',
- directivesArrayFile: '../packages/angular/lazy/src/directives/proxies-list.ts',
+ directivesProxyFile: '../packages/angular/src/lazy/directives/proxies.ts',
+ directivesArrayFile: '../packages/angular/src/lazy/directives/proxies-list.ts',
excludeComponents,
outputType: 'component',
}),
angularOutputTarget({
componentCorePackage,
- directivesProxyFile: '../packages/angular/standalone/src/directives/proxies.ts',
+ directivesProxyFile: '../packages/angular/src/standalone/directives/proxies.ts',
excludeComponents: [
...excludeComponents,
/**
@@ -64,6 +64,7 @@ const getAngularOutputTargets = () => {
],
outputType: 'standalone',
+ esModules: true,
})
];
}
diff --git a/packages/angular/common/ng-package.json b/packages/angular/common/ng-package.json
deleted file mode 100644
index b15651d6c2c..00000000000
--- a/packages/angular/common/ng-package.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "lib": {
- "entryFile": "src/index.ts"
- },
-}
diff --git a/packages/angular/lazy/ng-package.json b/packages/angular/lazy/ng-package.json
deleted file mode 100644
index c781f0df467..00000000000
--- a/packages/angular/lazy/ng-package.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "lib": {
- "entryFile": "src/index.ts"
- }
-}
diff --git a/packages/angular/ng-package.json b/packages/angular/ng-package.json
deleted file mode 100644
index 4b8eafad7e2..00000000000
--- a/packages/angular/ng-package.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "$schema": "./node_modules/ng-packagr/ng-package.schema.json",
- "lib": {
- "entryFile": "standalone/src/index.ts"
- },
- "allowedNonPeerDependencies": ["@ionic/core", "ionicons", "jsonc-parser"]
-}
diff --git a/packages/angular/package-lock.json b/packages/angular/package-lock.json
index c857c63e7db..a8eaba98495 100644
--- a/packages/angular/package-lock.json
+++ b/packages/angular/package-lock.json
@@ -538,7 +538,6 @@
"integrity": "sha512-VJv4ryJ2yLy79FqAq6WzZCLU3U5WU3n5NS7av5LbatxxOb07Jg80J/DBPSeA3rJ5EzpSIrj8mHLvW8Eunn58Eg==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@angular-devkit/architect": "0.2200.0",
"@angular-devkit/core": "22.0.0",
@@ -574,7 +573,6 @@
"integrity": "sha512-O9Qk60/OQQuZXMeXRfOpsq+/B609nd5KIxjSZFddRQUfSMZrdvVDNK0irjgYVKGDkMx3dqCiQ8a4nAIdGy7V6A==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"tslib": "^2.3.0"
},
@@ -592,7 +590,6 @@
"integrity": "sha512-g8Ab5Lcji2cxADfcPPM7kltEzSlCjUevPK3udm+3S5uhkTcLNH236/XCAwhD1XIgHQDv9p7FWm1xS7zkvbwXhA==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"tslib": "^2.3.0"
},
@@ -606,7 +603,6 @@
"integrity": "sha512-7r4ufQ8CUhlRBol/N8a6psg40kOu/Y3H6iuUGwq9cs6Gs/fII7mVB6QgPi0bCiNDjaQB7xGq6NZ0iT6CPBH8Sw==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@babel/core": "7.29.0",
"@jridgewell/sourcemap-codec": "^1.4.14",
@@ -640,7 +636,6 @@
"integrity": "sha512-H4lzunB+LUNylQ3hZGYWDz1NfNAdFzPdOadwuS6VpPyxF4Ti0MLyAfx7NDnyTrmdY2/PFx8I6jXrveNlIsORXg==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"tslib": "^2.3.0"
},
@@ -688,7 +683,6 @@
"integrity": "sha512-ry4Hdov19V8sA+MrIEIeISXA8GKWluCDUg06PaAm9nJveYjQUUlElZqa3fTNGOmy3/eNV8H9nmaroD27L8yU1A==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"tslib": "^2.3.0"
},
@@ -775,7 +769,6 @@
"integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@babel/code-frame": "^7.29.0",
"@babel/generator": "^7.29.0",
@@ -1931,7 +1924,6 @@
"integrity": "sha512-XJmn/wY4AX56l1BRU+ZjDrFtg9+2uBEi4JvJQj82kwJDQKiPgSn4CEsbfGGygS4Gw6rkL4W18oATjfVfaqub2Q==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@inquirer/checkbox": "^5.1.4",
"@inquirer/confirm": "^6.0.12",
@@ -2112,7 +2104,6 @@
"integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==",
"dev": true,
"license": "BSD-2-Clause",
- "peer": true,
"dependencies": {
"@typescript-eslint/scope-manager": "4.33.0",
"@typescript-eslint/types": "4.33.0",
@@ -3878,7 +3869,6 @@
"integrity": "sha512-dyh/xO2Fh5bYrfWaaqGrRQQGkNdmYw6AmaAUvYeUMNTWQtvb796ikLdmTchRmOlOiIJ1TDXfWgVx1QkUlQ6Hew==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"undici-types": "~6.21.0"
}
@@ -4065,7 +4055,6 @@
"integrity": "sha512-5B7PfA2e1NQGCnDHd/0lW7W3gvp3d59Ryw54FYO8Uswxo9f6ikw3AZV+Xj/TvpImmpsiYyUqAfhC6kJID1jF6w==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@typescript-eslint/scope-manager": "8.61.0",
"@typescript-eslint/types": "8.61.0",
@@ -4173,7 +4162,6 @@
"integrity": "sha512-9QTQpZ5Iin4CdIodfbDQFSeiSJKidgYJYug1P9CC2xWgUTvlmixViqDZNciMjwLBZyJnG4tGmPl97rVAFb1AJg==",
"dev": true,
"license": "MIT",
- "peer": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
@@ -4255,7 +4243,6 @@
"integrity": "sha512-3bzFt7ImFMW/jVYwJamDoe/dMOdFLSC6pom6rRjdh4SZJEYupyMzem8e7vKZLclLfpHjlwSAXOUxtKxGXUiLqA==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.9.1",
"@typescript-eslint/scope-manager": "8.61.0",
@@ -4342,7 +4329,6 @@
"integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==",
"dev": true,
"license": "MIT",
- "peer": true,
"bin": {
"acorn": "bin/acorn"
},
@@ -4488,7 +4474,6 @@
"integrity": "sha512-jU5MKQ24bBB4J99gSSexmUrLm2LvTJZCuCHhNTQ1LavWX4e1lrIxhm+6pJILOm6Cixf8jyNXnHMty6nljX8J+Q==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@angular-eslint/bundled-angular-compiler": "22.0.0",
"eslint-scope": "9.1.2"
@@ -4819,7 +4804,6 @@
}
],
"license": "MIT",
- "peer": true,
"dependencies": {
"baseline-browser-mapping": "^2.10.12",
"caniuse-lite": "^1.0.30001782",
@@ -4987,7 +4971,6 @@
"integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"readdirp": "^5.0.0"
},
@@ -5783,7 +5766,6 @@
"integrity": "sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.8.0",
"@eslint-community/regexpp": "^4.12.1",
@@ -6223,7 +6205,6 @@
"integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"accepts": "^2.0.0",
"body-parser": "^2.2.1",
@@ -6998,7 +6979,6 @@
"integrity": "sha512-eIaZ9qDgu7XV0pxOCrg7/WhnQ6Ivm22UcxhXx/A3dcbqbbYgBEkc6e/J/s7j2tS96zoB0S9VBdLwQNCWwUo4LA==",
"dev": true,
"license": "MIT",
- "peer": true,
"engines": {
"node": ">=16.9.0"
}
@@ -7935,7 +7915,6 @@
"integrity": "sha512-7I5knELsJKTUjXG+A6BkKAiGkW1i25fNa/xlUl9hFtk15WbE9jndA89xu5FzQKrY5llajE1hfZZFMILXkDHk/Q==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"cli-truncate": "^5.2.0",
"eventemitter3": "^5.0.4",
@@ -9397,7 +9376,6 @@
"integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
"dev": true,
"license": "MIT",
- "peer": true,
"bin": {
"prettier": "bin-prettier.js"
},
@@ -9676,7 +9654,6 @@
"integrity": "sha512-WHeFSbZYsPu3+bLoNRUuAO+wavNlocOPf3wSHTP7hcFKVnJeWsYlCDbr3mTS14FCizf9ccIxXA8sGL8zKeQN3g==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"@types/estree": "1.0.8"
},
@@ -9915,7 +9892,6 @@
"integrity": "sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==",
"dev": true,
"license": "Apache-2.0",
- "peer": true,
"dependencies": {
"tslib": "^2.1.0"
}
@@ -10700,8 +10676,7 @@
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
- "license": "0BSD",
- "peer": true
+ "license": "0BSD"
},
"node_modules/tsutils": {
"version": "3.21.0",
@@ -10871,7 +10846,6 @@
"integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==",
"dev": true,
"license": "Apache-2.0",
- "peer": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@@ -11340,7 +11314,6 @@
"integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==",
"dev": true,
"license": "MIT",
- "peer": true,
"funding": {
"url": "https://github.com/sponsors/colinhacks"
}
@@ -11360,8 +11333,7 @@
"resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.16.2.tgz",
"integrity": "sha512-Eky7p2Z1Ig3NnbfodSPoARCjKBSTFMnE/ACsP1L/XJEfY4SdOFce19BsUCWVwL6K5ABZFy5J3bjcMWffX+YM3Q==",
"dev": true,
- "license": "MIT",
- "peer": true
+ "license": "MIT"
}
}
}
diff --git a/packages/angular/package.json b/packages/angular/package.json
index 7310ffc679c..bd79f30e0e3 100644
--- a/packages/angular/package.json
+++ b/packages/angular/package.json
@@ -24,8 +24,9 @@
},
"homepage": "https://ionicframework.com/",
"scripts": {
- "build": "npm run clean && npm run build.ng && npm run build.core && npm run clean-generated",
- "build.core": "node scripts/build-core.js",
+ "build": "ngc && npm run build.css && npm run build.schematics",
+ "build.css": "node scripts/build-css.js",
+ "build.schematics": "node scripts/build-schematics.js",
"build.ng": "ng-packagr -p ng-package.json -c tsconfig.json",
"build.watch": "npm run build.ng -- --watch",
"clean": "node scripts/clean.js",
@@ -43,10 +44,26 @@
"validate": "npm i && npm run lint && npm run test && npm run build"
},
"exports": {
+ ".": {
+ "default": "./dist/standalone/index.js"
+ },
+ "./*": {
+ "default": "./dist/standalone/directives/*.js"
+ },
+ "./lazy": {
+ "default": "./dist/lazy/index.js"
+ },
+ "./common": {
+ "default": "./dist/common/index.js"
+ },
"./css/*": {
"style": "./css/*"
}
},
+ "files": [
+ "dist/",
+ "css/"
+ ],
"dependencies": {
"@ionic/core": "^8.8.13",
"ionicons": "^8.0.13",
@@ -97,5 +114,6 @@
"zone.js": "~0.16.0"
},
"prettier": "@ionic/prettier-config",
- "schematics": "./schematics/collection.json"
+ "schematics": "./schematics/collection.json",
+ "sideEffects": false
}
diff --git a/packages/angular/scripts/build-css.js b/packages/angular/scripts/build-css.js
new file mode 100644
index 00000000000..eac58d83b82
--- /dev/null
+++ b/packages/angular/scripts/build-css.js
@@ -0,0 +1,12 @@
+const fs = require('fs-extra');
+const path = require('path');
+
+function copyCSS() {
+ const src = path.join(__dirname, '..', '..', '..', 'core', 'css');
+ const dst = path.join(__dirname, '..', 'css');
+
+ fs.removeSync(dst);
+ fs.copySync(src, dst);
+}
+
+copyCSS();
diff --git a/packages/angular/scripts/build-core.js b/packages/angular/scripts/build-schematics.js
similarity index 80%
rename from packages/angular/scripts/build-core.js
rename to packages/angular/scripts/build-schematics.js
index 968453c71d5..a851d526951 100644
--- a/packages/angular/scripts/build-core.js
+++ b/packages/angular/scripts/build-schematics.js
@@ -2,16 +2,6 @@ const fs = require('fs-extra');
const path = require('path');
const spawn = require('child_process').spawn;
-const typescriptPath = path.join(__dirname, '..', 'node_modules', '.bin');
-
-function copyCSS() {
- const src = path.join(__dirname, '..', '..', '..', 'core', 'css');
- const dst = path.join(__dirname, '..','dist', 'css');
-
- fs.removeSync(dst);
- fs.copySync(src, dst);
-}
-
function buildSchematics(){
return new Promise((resolve, reject) => {
const cmd = 'tsc';
@@ -20,7 +10,8 @@ function buildSchematics(){
path.join(__dirname, '..', 'tsconfig.schematics.json'),
];
- const p = spawn(cmd, args, { cwd: typescriptPath, stdio: 'inherit', shell: true });
+ const typescriptPath = path.join(__dirname, '..', 'node_modules', '.bin');
+ const p = spawn(cmd, args, { cwd: typescriptPath, stdio: 'inherit'});
p.on('close', (code) => {
if (code > 0) {
console.log(`ng-add build exited with ${code}`);
@@ -48,6 +39,5 @@ function copySchematicsJson(){
}
-copyCSS();
buildSchematics();
copySchematicsJson()
diff --git a/packages/angular/common/src/directives/control-value-accessors/index.ts b/packages/angular/src/common/directives/control-value-accessors/index.ts
similarity index 100%
rename from packages/angular/common/src/directives/control-value-accessors/index.ts
rename to packages/angular/src/common/directives/control-value-accessors/index.ts
diff --git a/packages/angular/common/src/directives/control-value-accessors/value-accessor.ts b/packages/angular/src/common/directives/control-value-accessors/value-accessor.ts
similarity index 100%
rename from packages/angular/common/src/directives/control-value-accessors/value-accessor.ts
rename to packages/angular/src/common/directives/control-value-accessors/value-accessor.ts
diff --git a/packages/angular/common/src/directives/navigation/back-button.ts b/packages/angular/src/common/directives/navigation/back-button.ts
similarity index 100%
rename from packages/angular/common/src/directives/navigation/back-button.ts
rename to packages/angular/src/common/directives/navigation/back-button.ts
diff --git a/packages/angular/common/src/directives/navigation/nav-params.ts b/packages/angular/src/common/directives/navigation/nav-params.ts
similarity index 100%
rename from packages/angular/common/src/directives/navigation/nav-params.ts
rename to packages/angular/src/common/directives/navigation/nav-params.ts
diff --git a/packages/angular/common/src/directives/navigation/nav.ts b/packages/angular/src/common/directives/navigation/nav.ts
similarity index 100%
rename from packages/angular/common/src/directives/navigation/nav.ts
rename to packages/angular/src/common/directives/navigation/nav.ts
diff --git a/packages/angular/common/src/directives/navigation/router-link-delegate.ts b/packages/angular/src/common/directives/navigation/router-link-delegate.ts
similarity index 100%
rename from packages/angular/common/src/directives/navigation/router-link-delegate.ts
rename to packages/angular/src/common/directives/navigation/router-link-delegate.ts
diff --git a/packages/angular/common/src/directives/navigation/router-outlet.ts b/packages/angular/src/common/directives/navigation/router-outlet.ts
similarity index 100%
rename from packages/angular/common/src/directives/navigation/router-outlet.ts
rename to packages/angular/src/common/directives/navigation/router-outlet.ts
diff --git a/packages/angular/common/src/directives/navigation/stack-controller.ts b/packages/angular/src/common/directives/navigation/stack-controller.ts
similarity index 100%
rename from packages/angular/common/src/directives/navigation/stack-controller.ts
rename to packages/angular/src/common/directives/navigation/stack-controller.ts
diff --git a/packages/angular/common/src/directives/navigation/stack-utils.ts b/packages/angular/src/common/directives/navigation/stack-utils.ts
similarity index 100%
rename from packages/angular/common/src/directives/navigation/stack-utils.ts
rename to packages/angular/src/common/directives/navigation/stack-utils.ts
diff --git a/packages/angular/common/src/directives/navigation/tabs.ts b/packages/angular/src/common/directives/navigation/tabs.ts
similarity index 100%
rename from packages/angular/common/src/directives/navigation/tabs.ts
rename to packages/angular/src/common/directives/navigation/tabs.ts
diff --git a/packages/angular/common/src/index.ts b/packages/angular/src/common/index.ts
similarity index 100%
rename from packages/angular/common/src/index.ts
rename to packages/angular/src/common/index.ts
diff --git a/packages/angular/common/src/overlays/modal.ts b/packages/angular/src/common/overlays/modal.ts
similarity index 100%
rename from packages/angular/common/src/overlays/modal.ts
rename to packages/angular/src/common/overlays/modal.ts
diff --git a/packages/angular/common/src/overlays/popover.ts b/packages/angular/src/common/overlays/popover.ts
similarity index 100%
rename from packages/angular/common/src/overlays/popover.ts
rename to packages/angular/src/common/overlays/popover.ts
diff --git a/packages/angular/common/src/providers/angular-delegate.ts b/packages/angular/src/common/providers/angular-delegate.ts
similarity index 100%
rename from packages/angular/common/src/providers/angular-delegate.ts
rename to packages/angular/src/common/providers/angular-delegate.ts
diff --git a/packages/angular/common/src/providers/config.ts b/packages/angular/src/common/providers/config.ts
similarity index 100%
rename from packages/angular/common/src/providers/config.ts
rename to packages/angular/src/common/providers/config.ts
diff --git a/packages/angular/common/src/providers/dom-controller.ts b/packages/angular/src/common/providers/dom-controller.ts
similarity index 100%
rename from packages/angular/common/src/providers/dom-controller.ts
rename to packages/angular/src/common/providers/dom-controller.ts
diff --git a/packages/angular/common/src/providers/menu-controller.ts b/packages/angular/src/common/providers/menu-controller.ts
similarity index 100%
rename from packages/angular/common/src/providers/menu-controller.ts
rename to packages/angular/src/common/providers/menu-controller.ts
diff --git a/packages/angular/common/src/providers/nav-controller.ts b/packages/angular/src/common/providers/nav-controller.ts
similarity index 100%
rename from packages/angular/common/src/providers/nav-controller.ts
rename to packages/angular/src/common/providers/nav-controller.ts
diff --git a/packages/angular/common/src/providers/platform.ts b/packages/angular/src/common/providers/platform.ts
similarity index 100%
rename from packages/angular/common/src/providers/platform.ts
rename to packages/angular/src/common/providers/platform.ts
diff --git a/packages/angular/common/src/types/interfaces.ts b/packages/angular/src/common/types/interfaces.ts
similarity index 100%
rename from packages/angular/common/src/types/interfaces.ts
rename to packages/angular/src/common/types/interfaces.ts
diff --git a/packages/angular/common/src/types/ionic-lifecycle-hooks.ts b/packages/angular/src/common/types/ionic-lifecycle-hooks.ts
similarity index 100%
rename from packages/angular/common/src/types/ionic-lifecycle-hooks.ts
rename to packages/angular/src/common/types/ionic-lifecycle-hooks.ts
diff --git a/packages/angular/common/src/types/overlay-options.ts b/packages/angular/src/common/types/overlay-options.ts
similarity index 100%
rename from packages/angular/common/src/types/overlay-options.ts
rename to packages/angular/src/common/types/overlay-options.ts
diff --git a/packages/angular/common/src/utils/overlay.ts b/packages/angular/src/common/utils/overlay.ts
similarity index 100%
rename from packages/angular/common/src/utils/overlay.ts
rename to packages/angular/src/common/utils/overlay.ts
diff --git a/packages/angular/common/src/utils/proxy.ts b/packages/angular/src/common/utils/proxy.ts
similarity index 100%
rename from packages/angular/common/src/utils/proxy.ts
rename to packages/angular/src/common/utils/proxy.ts
diff --git a/packages/angular/common/src/utils/routing.ts b/packages/angular/src/common/utils/routing.ts
similarity index 100%
rename from packages/angular/common/src/utils/routing.ts
rename to packages/angular/src/common/utils/routing.ts
diff --git a/packages/angular/common/src/utils/util.ts b/packages/angular/src/common/utils/util.ts
similarity index 100%
rename from packages/angular/common/src/utils/util.ts
rename to packages/angular/src/common/utils/util.ts
diff --git a/packages/angular/lazy/src/app-initialize.ts b/packages/angular/src/lazy/app-initialize.ts
similarity index 100%
rename from packages/angular/lazy/src/app-initialize.ts
rename to packages/angular/src/lazy/app-initialize.ts
diff --git a/packages/angular/lazy/src/directives/angular-component-lib/utils.ts b/packages/angular/src/lazy/directives/angular-component-lib/utils.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/angular-component-lib/utils.ts
rename to packages/angular/src/lazy/directives/angular-component-lib/utils.ts
diff --git a/packages/angular/lazy/src/directives/control-value-accessors/boolean-value-accessor.ts b/packages/angular/src/lazy/directives/control-value-accessors/boolean-value-accessor.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/control-value-accessors/boolean-value-accessor.ts
rename to packages/angular/src/lazy/directives/control-value-accessors/boolean-value-accessor.ts
diff --git a/packages/angular/lazy/src/directives/control-value-accessors/index.ts b/packages/angular/src/lazy/directives/control-value-accessors/index.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/control-value-accessors/index.ts
rename to packages/angular/src/lazy/directives/control-value-accessors/index.ts
diff --git a/packages/angular/lazy/src/directives/control-value-accessors/numeric-value-accessor.ts b/packages/angular/src/lazy/directives/control-value-accessors/numeric-value-accessor.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/control-value-accessors/numeric-value-accessor.ts
rename to packages/angular/src/lazy/directives/control-value-accessors/numeric-value-accessor.ts
diff --git a/packages/angular/lazy/src/directives/control-value-accessors/select-value-accessor.ts b/packages/angular/src/lazy/directives/control-value-accessors/select-value-accessor.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/control-value-accessors/select-value-accessor.ts
rename to packages/angular/src/lazy/directives/control-value-accessors/select-value-accessor.ts
diff --git a/packages/angular/lazy/src/directives/control-value-accessors/text-value-accessor.ts b/packages/angular/src/lazy/directives/control-value-accessors/text-value-accessor.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/control-value-accessors/text-value-accessor.ts
rename to packages/angular/src/lazy/directives/control-value-accessors/text-value-accessor.ts
diff --git a/packages/angular/lazy/src/directives/navigation/ion-back-button.ts b/packages/angular/src/lazy/directives/navigation/ion-back-button.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/navigation/ion-back-button.ts
rename to packages/angular/src/lazy/directives/navigation/ion-back-button.ts
diff --git a/packages/angular/lazy/src/directives/navigation/ion-nav.ts b/packages/angular/src/lazy/directives/navigation/ion-nav.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/navigation/ion-nav.ts
rename to packages/angular/src/lazy/directives/navigation/ion-nav.ts
diff --git a/packages/angular/lazy/src/directives/navigation/ion-router-outlet.ts b/packages/angular/src/lazy/directives/navigation/ion-router-outlet.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/navigation/ion-router-outlet.ts
rename to packages/angular/src/lazy/directives/navigation/ion-router-outlet.ts
diff --git a/packages/angular/lazy/src/directives/navigation/ion-tabs.ts b/packages/angular/src/lazy/directives/navigation/ion-tabs.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/navigation/ion-tabs.ts
rename to packages/angular/src/lazy/directives/navigation/ion-tabs.ts
diff --git a/packages/angular/lazy/src/directives/navigation/router-link-delegate.ts b/packages/angular/src/lazy/directives/navigation/router-link-delegate.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/navigation/router-link-delegate.ts
rename to packages/angular/src/lazy/directives/navigation/router-link-delegate.ts
diff --git a/packages/angular/lazy/src/directives/overlays/modal.ts b/packages/angular/src/lazy/directives/overlays/modal.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/overlays/modal.ts
rename to packages/angular/src/lazy/directives/overlays/modal.ts
diff --git a/packages/angular/lazy/src/directives/overlays/popover.ts b/packages/angular/src/lazy/directives/overlays/popover.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/overlays/popover.ts
rename to packages/angular/src/lazy/directives/overlays/popover.ts
diff --git a/packages/angular/lazy/src/directives/proxies-list.ts b/packages/angular/src/lazy/directives/proxies-list.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/proxies-list.ts
rename to packages/angular/src/lazy/directives/proxies-list.ts
diff --git a/packages/angular/lazy/src/directives/proxies.ts b/packages/angular/src/lazy/directives/proxies.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/proxies.ts
rename to packages/angular/src/lazy/directives/proxies.ts
diff --git a/packages/angular/lazy/src/directives/validators/index.ts b/packages/angular/src/lazy/directives/validators/index.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/validators/index.ts
rename to packages/angular/src/lazy/directives/validators/index.ts
diff --git a/packages/angular/lazy/src/directives/validators/max-validator.ts b/packages/angular/src/lazy/directives/validators/max-validator.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/validators/max-validator.ts
rename to packages/angular/src/lazy/directives/validators/max-validator.ts
diff --git a/packages/angular/lazy/src/directives/validators/min-validator.ts b/packages/angular/src/lazy/directives/validators/min-validator.ts
similarity index 100%
rename from packages/angular/lazy/src/directives/validators/min-validator.ts
rename to packages/angular/src/lazy/directives/validators/min-validator.ts
diff --git a/packages/angular/lazy/src/index.ts b/packages/angular/src/lazy/index.ts
similarity index 100%
rename from packages/angular/lazy/src/index.ts
rename to packages/angular/src/lazy/index.ts
diff --git a/packages/angular/lazy/src/ionic-core.ts b/packages/angular/src/lazy/ionic-core.ts
similarity index 100%
rename from packages/angular/lazy/src/ionic-core.ts
rename to packages/angular/src/lazy/ionic-core.ts
diff --git a/packages/angular/lazy/src/ionic-module.ts b/packages/angular/src/lazy/ionic-module.ts
similarity index 100%
rename from packages/angular/lazy/src/ionic-module.ts
rename to packages/angular/src/lazy/ionic-module.ts
diff --git a/packages/angular/lazy/src/providers/action-sheet-controller.ts b/packages/angular/src/lazy/providers/action-sheet-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/action-sheet-controller.ts
rename to packages/angular/src/lazy/providers/action-sheet-controller.ts
diff --git a/packages/angular/lazy/src/providers/alert-controller.ts b/packages/angular/src/lazy/providers/alert-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/alert-controller.ts
rename to packages/angular/src/lazy/providers/alert-controller.ts
diff --git a/packages/angular/lazy/src/providers/animation-controller.ts b/packages/angular/src/lazy/providers/animation-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/animation-controller.ts
rename to packages/angular/src/lazy/providers/animation-controller.ts
diff --git a/packages/angular/lazy/src/providers/gesture-controller.ts b/packages/angular/src/lazy/providers/gesture-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/gesture-controller.ts
rename to packages/angular/src/lazy/providers/gesture-controller.ts
diff --git a/packages/angular/lazy/src/providers/loading-controller.ts b/packages/angular/src/lazy/providers/loading-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/loading-controller.ts
rename to packages/angular/src/lazy/providers/loading-controller.ts
diff --git a/packages/angular/lazy/src/providers/menu-controller.ts b/packages/angular/src/lazy/providers/menu-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/menu-controller.ts
rename to packages/angular/src/lazy/providers/menu-controller.ts
diff --git a/packages/angular/lazy/src/providers/modal-controller.ts b/packages/angular/src/lazy/providers/modal-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/modal-controller.ts
rename to packages/angular/src/lazy/providers/modal-controller.ts
diff --git a/packages/angular/lazy/src/providers/popover-controller.ts b/packages/angular/src/lazy/providers/popover-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/popover-controller.ts
rename to packages/angular/src/lazy/providers/popover-controller.ts
diff --git a/packages/angular/lazy/src/providers/toast-controller.ts b/packages/angular/src/lazy/providers/toast-controller.ts
similarity index 100%
rename from packages/angular/lazy/src/providers/toast-controller.ts
rename to packages/angular/src/lazy/providers/toast-controller.ts
diff --git a/packages/angular/standalone/src/directives/angular-component-lib/utils.ts b/packages/angular/src/standalone/directives/angular-component-lib/utils.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/angular-component-lib/utils.ts
rename to packages/angular/src/standalone/directives/angular-component-lib/utils.ts
diff --git a/packages/angular/standalone/src/directives/checkbox.ts b/packages/angular/src/standalone/directives/checkbox.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/checkbox.ts
rename to packages/angular/src/standalone/directives/checkbox.ts
diff --git a/packages/angular/standalone/src/directives/datetime.ts b/packages/angular/src/standalone/directives/datetime.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/datetime.ts
rename to packages/angular/src/standalone/directives/datetime.ts
diff --git a/packages/angular/standalone/src/directives/icon.ts b/packages/angular/src/standalone/directives/icon.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/icon.ts
rename to packages/angular/src/standalone/directives/icon.ts
diff --git a/packages/angular/standalone/src/directives/index.ts b/packages/angular/src/standalone/directives/index.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/index.ts
rename to packages/angular/src/standalone/directives/index.ts
diff --git a/packages/angular/standalone/src/directives/input-otp.ts b/packages/angular/src/standalone/directives/input-otp.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/input-otp.ts
rename to packages/angular/src/standalone/directives/input-otp.ts
diff --git a/packages/angular/standalone/src/directives/input.ts b/packages/angular/src/standalone/directives/input.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/input.ts
rename to packages/angular/src/standalone/directives/input.ts
diff --git a/packages/angular/src/standalone/directives/ion-accordion-group.ts b/packages/angular/src/standalone/directives/ion-accordion-group.ts
new file mode 100644
index 00000000000..f082fe2cf19
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-accordion-group.ts
@@ -0,0 +1,45 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonAccordionGroup } from '@ionic/core/components/ion-accordion-group.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonAccordionGroup,
+ inputs: ['animated', 'disabled', 'expand', 'mode', 'multiple', 'readonly', 'value']
+})
+@Component({
+ selector: 'ion-accordion-group',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['animated', 'disabled', 'expand', 'mode', 'multiple', 'readonly', 'value'],
+ outputs: ['ionChange'],
+})
+export class IonAccordionGroup {
+ protected el: HTMLIonAccordionGroupElement;
+ @Output() ionChange = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonAccordionGroupCustomEvent } from '@ionic/core/components';
+import type { AccordionGroupChangeEventDetail as IIonAccordionGroupAccordionGroupChangeEventDetail } from '@ionic/core/components';
+
+export declare interface IonAccordionGroup extends Components.IonAccordionGroup {
+ /**
+ * Emitted when the value property has changed as a result of a user action such as a click.
+
+This event will not emit when programmatically setting the `value` property.
+ */
+ ionChange: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-accordion.ts b/packages/angular/src/standalone/directives/ion-accordion.ts
new file mode 100644
index 00000000000..9a55d3b8448
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-accordion.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonAccordion } from '@ionic/core/components/ion-accordion.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonAccordion,
+ inputs: ['disabled', 'mode', 'readonly', 'toggleIcon', 'toggleIconSlot', 'value']
+})
+@Component({
+ selector: 'ion-accordion',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['disabled', 'mode', 'readonly', 'toggleIcon', 'toggleIconSlot', 'value'],
+})
+export class IonAccordion {
+ protected el: HTMLIonAccordionElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonAccordion extends Components.IonAccordion {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-action-sheet.ts b/packages/angular/src/standalone/directives/ion-action-sheet.ts
new file mode 100644
index 00000000000..6975717048f
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-action-sheet.ts
@@ -0,0 +1,83 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonActionSheet } from '@ionic/core/components/ion-action-sheet.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonActionSheet,
+ inputs: ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'subHeader', 'translucent', 'trigger'],
+ methods: ['present', 'dismiss', 'onDidDismiss', 'onWillDismiss']
+})
+@Component({
+ selector: 'ion-action-sheet',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'subHeader', 'translucent', 'trigger'],
+ outputs: ['ionActionSheetDidPresent', 'ionActionSheetWillPresent', 'ionActionSheetWillDismiss', 'ionActionSheetDidDismiss', 'didPresent', 'willPresent', 'willDismiss', 'didDismiss'],
+})
+export class IonActionSheet {
+ protected el: HTMLIonActionSheetElement;
+ @Output() ionActionSheetDidPresent = new EventEmitter>();
+ @Output() ionActionSheetWillPresent = new EventEmitter>();
+ @Output() ionActionSheetWillDismiss = new EventEmitter>();
+ @Output() ionActionSheetDidDismiss = new EventEmitter>();
+ @Output() didPresent = new EventEmitter>();
+ @Output() willPresent = new EventEmitter>();
+ @Output() willDismiss = new EventEmitter>();
+ @Output() didDismiss = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonActionSheetCustomEvent } from '@ionic/core/components';
+import type { OverlayEventDetail as IIonActionSheetOverlayEventDetail } from '@ionic/core/components';
+
+export declare interface IonActionSheet extends Components.IonActionSheet {
+ /**
+ * Emitted after the action sheet has presented.
+ */
+ ionActionSheetDidPresent: EventEmitter>;
+ /**
+ * Emitted before the action sheet has presented.
+ */
+ ionActionSheetWillPresent: EventEmitter>;
+ /**
+ * Emitted before the action sheet has dismissed.
+ */
+ ionActionSheetWillDismiss: EventEmitter>;
+ /**
+ * Emitted after the action sheet has dismissed.
+ */
+ ionActionSheetDidDismiss: EventEmitter>;
+ /**
+ * Emitted after the action sheet has presented.
+Shorthand for ionActionSheetWillDismiss.
+ */
+ didPresent: EventEmitter>;
+ /**
+ * Emitted before the action sheet has presented.
+Shorthand for ionActionSheetWillPresent.
+ */
+ willPresent: EventEmitter>;
+ /**
+ * Emitted before the action sheet has dismissed.
+Shorthand for ionActionSheetWillDismiss.
+ */
+ willDismiss: EventEmitter>;
+ /**
+ * Emitted after the action sheet has dismissed.
+Shorthand for ionActionSheetDidDismiss.
+ */
+ didDismiss: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-alert.ts b/packages/angular/src/standalone/directives/ion-alert.ts
new file mode 100644
index 00000000000..72239b3b07d
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-alert.ts
@@ -0,0 +1,83 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonAlert } from '@ionic/core/components/ion-alert.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonAlert,
+ inputs: ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'inputs', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'subHeader', 'translucent', 'trigger'],
+ methods: ['present', 'dismiss', 'onDidDismiss', 'onWillDismiss']
+})
+@Component({
+ selector: 'ion-alert',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'inputs', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'subHeader', 'translucent', 'trigger'],
+ outputs: ['ionAlertDidPresent', 'ionAlertWillPresent', 'ionAlertWillDismiss', 'ionAlertDidDismiss', 'didPresent', 'willPresent', 'willDismiss', 'didDismiss'],
+})
+export class IonAlert {
+ protected el: HTMLIonAlertElement;
+ @Output() ionAlertDidPresent = new EventEmitter>();
+ @Output() ionAlertWillPresent = new EventEmitter>();
+ @Output() ionAlertWillDismiss = new EventEmitter>();
+ @Output() ionAlertDidDismiss = new EventEmitter>();
+ @Output() didPresent = new EventEmitter>();
+ @Output() willPresent = new EventEmitter>();
+ @Output() willDismiss = new EventEmitter>();
+ @Output() didDismiss = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonAlertCustomEvent } from '@ionic/core/components';
+import type { OverlayEventDetail as IIonAlertOverlayEventDetail } from '@ionic/core/components';
+
+export declare interface IonAlert extends Components.IonAlert {
+ /**
+ * Emitted after the alert has presented.
+ */
+ ionAlertDidPresent: EventEmitter>;
+ /**
+ * Emitted before the alert has presented.
+ */
+ ionAlertWillPresent: EventEmitter>;
+ /**
+ * Emitted before the alert has dismissed.
+ */
+ ionAlertWillDismiss: EventEmitter>;
+ /**
+ * Emitted after the alert has dismissed.
+ */
+ ionAlertDidDismiss: EventEmitter>;
+ /**
+ * Emitted after the alert has presented.
+Shorthand for ionAlertWillDismiss.
+ */
+ didPresent: EventEmitter>;
+ /**
+ * Emitted before the alert has presented.
+Shorthand for ionAlertWillPresent.
+ */
+ willPresent: EventEmitter>;
+ /**
+ * Emitted before the alert has dismissed.
+Shorthand for ionAlertWillDismiss.
+ */
+ willDismiss: EventEmitter>;
+ /**
+ * Emitted after the alert has dismissed.
+Shorthand for ionAlertDidDismiss.
+ */
+ didDismiss: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-app.ts b/packages/angular/src/standalone/directives/ion-app.ts
new file mode 100644
index 00000000000..8ae7e3df570
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-app.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonApp } from '@ionic/core/components/ion-app.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonApp,
+ methods: ['setFocus']
+})
+@Component({
+ selector: 'ion-app',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: [],
+})
+export class IonApp {
+ protected el: HTMLIonAppElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonApp extends Components.IonApp {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-avatar.ts b/packages/angular/src/standalone/directives/ion-avatar.ts
new file mode 100644
index 00000000000..4093d03c519
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-avatar.ts
@@ -0,0 +1,32 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonAvatar } from '@ionic/core/components/ion-avatar.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonAvatar
+})
+@Component({
+ selector: 'ion-avatar',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: [],
+})
+export class IonAvatar {
+ protected el: HTMLIonAvatarElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonAvatar extends Components.IonAvatar {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-backdrop.ts b/packages/angular/src/standalone/directives/ion-backdrop.ts
new file mode 100644
index 00000000000..5fc957f232f
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-backdrop.ts
@@ -0,0 +1,42 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonBackdrop } from '@ionic/core/components/ion-backdrop.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonBackdrop,
+ inputs: ['stopPropagation', 'tappable', 'visible']
+})
+@Component({
+ selector: 'ion-backdrop',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['stopPropagation', 'tappable', 'visible'],
+ outputs: ['ionBackdropTap'],
+})
+export class IonBackdrop {
+ protected el: HTMLIonBackdropElement;
+ @Output() ionBackdropTap = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonBackdropCustomEvent } from '@ionic/core/components';
+
+export declare interface IonBackdrop extends Components.IonBackdrop {
+ /**
+ * Emitted when the backdrop is tapped.
+ */
+ ionBackdropTap: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-badge.ts b/packages/angular/src/standalone/directives/ion-badge.ts
new file mode 100644
index 00000000000..b25b1cb9633
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-badge.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonBadge } from '@ionic/core/components/ion-badge.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonBadge,
+ inputs: ['color', 'mode']
+})
+@Component({
+ selector: 'ion-badge',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode'],
+})
+export class IonBadge {
+ protected el: HTMLIonBadgeElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonBadge extends Components.IonBadge {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-breadcrumb.ts b/packages/angular/src/standalone/directives/ion-breadcrumb.ts
new file mode 100644
index 00000000000..a63a99392be
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-breadcrumb.ts
@@ -0,0 +1,47 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonBreadcrumb } from '@ionic/core/components/ion-breadcrumb.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonBreadcrumb,
+ inputs: ['active', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'separator', 'target']
+})
+@Component({
+ selector: 'ion-breadcrumb',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['active', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'separator', 'target'],
+ outputs: ['ionFocus', 'ionBlur'],
+})
+export class IonBreadcrumb {
+ protected el: HTMLIonBreadcrumbElement;
+ @Output() ionFocus = new EventEmitter>();
+ @Output() ionBlur = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonBreadcrumbCustomEvent } from '@ionic/core/components';
+
+export declare interface IonBreadcrumb extends Components.IonBreadcrumb {
+ /**
+ * Emitted when the breadcrumb has focus.
+ */
+ ionFocus: EventEmitter>;
+ /**
+ * Emitted when the breadcrumb loses focus.
+ */
+ ionBlur: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-breadcrumbs.ts b/packages/angular/src/standalone/directives/ion-breadcrumbs.ts
new file mode 100644
index 00000000000..c74348c0865
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-breadcrumbs.ts
@@ -0,0 +1,43 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonBreadcrumbs } from '@ionic/core/components/ion-breadcrumbs.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonBreadcrumbs,
+ inputs: ['color', 'itemsAfterCollapse', 'itemsBeforeCollapse', 'maxItems', 'mode']
+})
+@Component({
+ selector: 'ion-breadcrumbs',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'itemsAfterCollapse', 'itemsBeforeCollapse', 'maxItems', 'mode'],
+ outputs: ['ionCollapsedClick'],
+})
+export class IonBreadcrumbs {
+ protected el: HTMLIonBreadcrumbsElement;
+ @Output() ionCollapsedClick = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonBreadcrumbsCustomEvent } from '@ionic/core/components';
+import type { BreadcrumbCollapsedClickEventDetail as IIonBreadcrumbsBreadcrumbCollapsedClickEventDetail } from '@ionic/core/components';
+
+export declare interface IonBreadcrumbs extends Components.IonBreadcrumbs {
+ /**
+ * Emitted when the collapsed indicator is clicked on.
+ */
+ ionCollapsedClick: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-button.ts b/packages/angular/src/standalone/directives/ion-button.ts
new file mode 100644
index 00000000000..b5a69a48884
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-button.ts
@@ -0,0 +1,47 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonButton } from '@ionic/core/components/ion-button.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonButton,
+ inputs: ['buttonType', 'color', 'disabled', 'download', 'expand', 'fill', 'form', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'shape', 'size', 'strong', 'target', 'type']
+})
+@Component({
+ selector: 'ion-button',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['buttonType', 'color', 'disabled', 'download', 'expand', 'fill', 'form', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'shape', 'size', 'strong', 'target', 'type'],
+ outputs: ['ionFocus', 'ionBlur'],
+})
+export class IonButton {
+ protected el: HTMLIonButtonElement;
+ @Output() ionFocus = new EventEmitter>();
+ @Output() ionBlur = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonButtonCustomEvent } from '@ionic/core/components';
+
+export declare interface IonButton extends Components.IonButton {
+ /**
+ * Emitted when the button has focus.
+ */
+ ionFocus: EventEmitter>;
+ /**
+ * Emitted when the button loses focus.
+ */
+ ionBlur: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-buttons.ts b/packages/angular/src/standalone/directives/ion-buttons.ts
new file mode 100644
index 00000000000..6adfbbbba24
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-buttons.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonButtons } from '@ionic/core/components/ion-buttons.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonButtons,
+ inputs: ['collapse']
+})
+@Component({
+ selector: 'ion-buttons',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['collapse'],
+})
+export class IonButtons {
+ protected el: HTMLIonButtonsElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonButtons extends Components.IonButtons {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-card-content.ts b/packages/angular/src/standalone/directives/ion-card-content.ts
new file mode 100644
index 00000000000..6ba1463f4be
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-card-content.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonCardContent } from '@ionic/core/components/ion-card-content.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonCardContent,
+ inputs: ['mode']
+})
+@Component({
+ selector: 'ion-card-content',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['mode'],
+})
+export class IonCardContent {
+ protected el: HTMLIonCardContentElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonCardContent extends Components.IonCardContent {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-card-header.ts b/packages/angular/src/standalone/directives/ion-card-header.ts
new file mode 100644
index 00000000000..f9d071e5aa6
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-card-header.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonCardHeader } from '@ionic/core/components/ion-card-header.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonCardHeader,
+ inputs: ['color', 'mode', 'translucent']
+})
+@Component({
+ selector: 'ion-card-header',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode', 'translucent'],
+})
+export class IonCardHeader {
+ protected el: HTMLIonCardHeaderElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonCardHeader extends Components.IonCardHeader {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-card-subtitle.ts b/packages/angular/src/standalone/directives/ion-card-subtitle.ts
new file mode 100644
index 00000000000..537eb4523fd
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-card-subtitle.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonCardSubtitle } from '@ionic/core/components/ion-card-subtitle.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonCardSubtitle,
+ inputs: ['color', 'mode']
+})
+@Component({
+ selector: 'ion-card-subtitle',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode'],
+})
+export class IonCardSubtitle {
+ protected el: HTMLIonCardSubtitleElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonCardSubtitle extends Components.IonCardSubtitle {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-card-title.ts b/packages/angular/src/standalone/directives/ion-card-title.ts
new file mode 100644
index 00000000000..c8d7c77ae61
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-card-title.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonCardTitle } from '@ionic/core/components/ion-card-title.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonCardTitle,
+ inputs: ['color', 'mode']
+})
+@Component({
+ selector: 'ion-card-title',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode'],
+})
+export class IonCardTitle {
+ protected el: HTMLIonCardTitleElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonCardTitle extends Components.IonCardTitle {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-card.ts b/packages/angular/src/standalone/directives/ion-card.ts
new file mode 100644
index 00000000000..1ac6acc186a
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-card.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonCard } from '@ionic/core/components/ion-card.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonCard,
+ inputs: ['button', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type']
+})
+@Component({
+ selector: 'ion-card',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['button', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type'],
+})
+export class IonCard {
+ protected el: HTMLIonCardElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonCard extends Components.IonCard {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-chip.ts b/packages/angular/src/standalone/directives/ion-chip.ts
new file mode 100644
index 00000000000..43a2aae4a7f
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-chip.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonChip } from '@ionic/core/components/ion-chip.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonChip,
+ inputs: ['color', 'disabled', 'mode', 'outline']
+})
+@Component({
+ selector: 'ion-chip',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'disabled', 'mode', 'outline'],
+})
+export class IonChip {
+ protected el: HTMLIonChipElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonChip extends Components.IonChip {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-col.ts b/packages/angular/src/standalone/directives/ion-col.ts
new file mode 100644
index 00000000000..c372b5bf3e6
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-col.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonCol } from '@ionic/core/components/ion-col.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonCol,
+ inputs: ['offset', 'offsetLg', 'offsetMd', 'offsetSm', 'offsetXl', 'offsetXs', 'pull', 'pullLg', 'pullMd', 'pullSm', 'pullXl', 'pullXs', 'push', 'pushLg', 'pushMd', 'pushSm', 'pushXl', 'pushXs', 'size', 'sizeLg', 'sizeMd', 'sizeSm', 'sizeXl', 'sizeXs']
+})
+@Component({
+ selector: 'ion-col',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['offset', 'offsetLg', 'offsetMd', 'offsetSm', 'offsetXl', 'offsetXs', 'pull', 'pullLg', 'pullMd', 'pullSm', 'pullXl', 'pullXs', 'push', 'pushLg', 'pushMd', 'pushSm', 'pushXl', 'pushXs', 'size', 'sizeLg', 'sizeMd', 'sizeSm', 'sizeXl', 'sizeXs'],
+})
+export class IonCol {
+ protected el: HTMLIonColElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonCol extends Components.IonCol {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-content.ts b/packages/angular/src/standalone/directives/ion-content.ts
new file mode 100644
index 00000000000..7bbe92db0af
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-content.ts
@@ -0,0 +1,58 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonContent } from '@ionic/core/components/ion-content.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonContent,
+ inputs: ['color', 'fixedSlotPlacement', 'forceOverscroll', 'fullscreen', 'scrollEvents', 'scrollX', 'scrollY'],
+ methods: ['getScrollElement', 'scrollToTop', 'scrollToBottom', 'scrollByPoint', 'scrollToPoint']
+})
+@Component({
+ selector: 'ion-content',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'fixedSlotPlacement', 'forceOverscroll', 'fullscreen', 'scrollEvents', 'scrollX', 'scrollY'],
+ outputs: ['ionScrollStart', 'ionScroll', 'ionScrollEnd'],
+})
+export class IonContent {
+ protected el: HTMLIonContentElement;
+ @Output() ionScrollStart = new EventEmitter>();
+ @Output() ionScroll = new EventEmitter>();
+ @Output() ionScrollEnd = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonContentCustomEvent } from '@ionic/core/components';
+import type { ScrollBaseDetail as IIonContentScrollBaseDetail } from '@ionic/core/components';
+import type { ScrollDetail as IIonContentScrollDetail } from '@ionic/core/components';
+
+export declare interface IonContent extends Components.IonContent {
+ /**
+ * Emitted when the scroll has started. This event is disabled by default.
+Set `scrollEvents` to `true` to enable.
+ */
+ ionScrollStart: EventEmitter>;
+ /**
+ * Emitted while scrolling. This event is disabled by default.
+Set `scrollEvents` to `true` to enable.
+ */
+ ionScroll: EventEmitter>;
+ /**
+ * Emitted when the scroll has ended. This event is disabled by default.
+Set `scrollEvents` to `true` to enable.
+ */
+ ionScrollEnd: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-datetime-button.ts b/packages/angular/src/standalone/directives/ion-datetime-button.ts
new file mode 100644
index 00000000000..2e14c977f3b
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-datetime-button.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonDatetimeButton } from '@ionic/core/components/ion-datetime-button.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonDatetimeButton,
+ inputs: ['color', 'datetime', 'disabled', 'mode']
+})
+@Component({
+ selector: 'ion-datetime-button',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'datetime', 'disabled', 'mode'],
+})
+export class IonDatetimeButton {
+ protected el: HTMLIonDatetimeButtonElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonDatetimeButton extends Components.IonDatetimeButton {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-fab-button.ts b/packages/angular/src/standalone/directives/ion-fab-button.ts
new file mode 100644
index 00000000000..96f7ddc332b
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-fab-button.ts
@@ -0,0 +1,47 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonFabButton } from '@ionic/core/components/ion-fab-button.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonFabButton,
+ inputs: ['activated', 'closeIcon', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'show', 'size', 'target', 'translucent', 'type']
+})
+@Component({
+ selector: 'ion-fab-button',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['activated', 'closeIcon', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'show', 'size', 'target', 'translucent', 'type'],
+ outputs: ['ionFocus', 'ionBlur'],
+})
+export class IonFabButton {
+ protected el: HTMLIonFabButtonElement;
+ @Output() ionFocus = new EventEmitter>();
+ @Output() ionBlur = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonFabButtonCustomEvent } from '@ionic/core/components';
+
+export declare interface IonFabButton extends Components.IonFabButton {
+ /**
+ * Emitted when the button has focus.
+ */
+ ionFocus: EventEmitter>;
+ /**
+ * Emitted when the button loses focus.
+ */
+ ionBlur: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-fab-list.ts b/packages/angular/src/standalone/directives/ion-fab-list.ts
new file mode 100644
index 00000000000..2e2860c1a0a
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-fab-list.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonFabList } from '@ionic/core/components/ion-fab-list.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonFabList,
+ inputs: ['activated', 'side']
+})
+@Component({
+ selector: 'ion-fab-list',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['activated', 'side'],
+})
+export class IonFabList {
+ protected el: HTMLIonFabListElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonFabList extends Components.IonFabList {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-fab.ts b/packages/angular/src/standalone/directives/ion-fab.ts
new file mode 100644
index 00000000000..94f45f9116d
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-fab.ts
@@ -0,0 +1,34 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonFab } from '@ionic/core/components/ion-fab.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonFab,
+ inputs: ['activated', 'edge', 'horizontal', 'vertical'],
+ methods: ['close']
+})
+@Component({
+ selector: 'ion-fab',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['activated', 'edge', 'horizontal', 'vertical'],
+})
+export class IonFab {
+ protected el: HTMLIonFabElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonFab extends Components.IonFab {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-footer.ts b/packages/angular/src/standalone/directives/ion-footer.ts
new file mode 100644
index 00000000000..3e33198b165
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-footer.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonFooter } from '@ionic/core/components/ion-footer.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonFooter,
+ inputs: ['collapse', 'mode', 'translucent']
+})
+@Component({
+ selector: 'ion-footer',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['collapse', 'mode', 'translucent'],
+})
+export class IonFooter {
+ protected el: HTMLIonFooterElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonFooter extends Components.IonFooter {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-grid.ts b/packages/angular/src/standalone/directives/ion-grid.ts
new file mode 100644
index 00000000000..1c5c874ff7e
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-grid.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonGrid } from '@ionic/core/components/ion-grid.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonGrid,
+ inputs: ['fixed']
+})
+@Component({
+ selector: 'ion-grid',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['fixed'],
+})
+export class IonGrid {
+ protected el: HTMLIonGridElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonGrid extends Components.IonGrid {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-header.ts b/packages/angular/src/standalone/directives/ion-header.ts
new file mode 100644
index 00000000000..929416d8c22
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-header.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonHeader } from '@ionic/core/components/ion-header.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonHeader,
+ inputs: ['collapse', 'mode', 'translucent']
+})
+@Component({
+ selector: 'ion-header',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['collapse', 'mode', 'translucent'],
+})
+export class IonHeader {
+ protected el: HTMLIonHeaderElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonHeader extends Components.IonHeader {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-img.ts b/packages/angular/src/standalone/directives/ion-img.ts
new file mode 100644
index 00000000000..e0e070788a4
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-img.ts
@@ -0,0 +1,52 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonImg } from '@ionic/core/components/ion-img.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonImg,
+ inputs: ['alt', 'src']
+})
+@Component({
+ selector: 'ion-img',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['alt', 'src'],
+ outputs: ['ionImgWillLoad', 'ionImgDidLoad', 'ionError'],
+})
+export class IonImg {
+ protected el: HTMLIonImgElement;
+ @Output() ionImgWillLoad = new EventEmitter>();
+ @Output() ionImgDidLoad = new EventEmitter>();
+ @Output() ionError = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonImgCustomEvent } from '@ionic/core/components';
+
+export declare interface IonImg extends Components.IonImg {
+ /**
+ * Emitted when the img src has been set
+ */
+ ionImgWillLoad: EventEmitter>;
+ /**
+ * Emitted when the image has finished loading
+ */
+ ionImgDidLoad: EventEmitter>;
+ /**
+ * Emitted when the img fails to load
+ */
+ ionError: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-infinite-scroll-content.ts b/packages/angular/src/standalone/directives/ion-infinite-scroll-content.ts
new file mode 100644
index 00000000000..64e4039b6e6
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-infinite-scroll-content.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonInfiniteScrollContent } from '@ionic/core/components/ion-infinite-scroll-content.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonInfiniteScrollContent,
+ inputs: ['loadingSpinner', 'loadingText']
+})
+@Component({
+ selector: 'ion-infinite-scroll-content',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['loadingSpinner', 'loadingText'],
+})
+export class IonInfiniteScrollContent {
+ protected el: HTMLIonInfiniteScrollContentElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonInfiniteScrollContent extends Components.IonInfiniteScrollContent {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-infinite-scroll.ts b/packages/angular/src/standalone/directives/ion-infinite-scroll.ts
new file mode 100644
index 00000000000..e9ae34c3e3c
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-infinite-scroll.ts
@@ -0,0 +1,46 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonInfiniteScroll } from '@ionic/core/components/ion-infinite-scroll.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonInfiniteScroll,
+ inputs: ['disabled', 'position', 'threshold'],
+ methods: ['complete']
+})
+@Component({
+ selector: 'ion-infinite-scroll',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['disabled', 'position', 'threshold'],
+ outputs: ['ionInfinite'],
+})
+export class IonInfiniteScroll {
+ protected el: HTMLIonInfiniteScrollElement;
+ @Output() ionInfinite = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonInfiniteScrollCustomEvent } from '@ionic/core/components';
+
+export declare interface IonInfiniteScroll extends Components.IonInfiniteScroll {
+ /**
+ * Emitted when the scroll reaches
+the threshold distance. From within your infinite handler,
+you must call the infinite scroll's `complete()` method when
+your async operation has completed.
+ */
+ ionInfinite: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-input-password-toggle.ts b/packages/angular/src/standalone/directives/ion-input-password-toggle.ts
new file mode 100644
index 00000000000..c62ca3b749d
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-input-password-toggle.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonInputPasswordToggle } from '@ionic/core/components/ion-input-password-toggle.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonInputPasswordToggle,
+ inputs: ['color', 'hideIcon', 'mode', 'showIcon']
+})
+@Component({
+ selector: 'ion-input-password-toggle',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'hideIcon', 'mode', 'showIcon'],
+})
+export class IonInputPasswordToggle {
+ protected el: HTMLIonInputPasswordToggleElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonInputPasswordToggle extends Components.IonInputPasswordToggle {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-item-divider.ts b/packages/angular/src/standalone/directives/ion-item-divider.ts
new file mode 100644
index 00000000000..04697dda2ba
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-item-divider.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonItemDivider } from '@ionic/core/components/ion-item-divider.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonItemDivider,
+ inputs: ['color', 'mode', 'sticky']
+})
+@Component({
+ selector: 'ion-item-divider',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode', 'sticky'],
+})
+export class IonItemDivider {
+ protected el: HTMLIonItemDividerElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonItemDivider extends Components.IonItemDivider {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-item-group.ts b/packages/angular/src/standalone/directives/ion-item-group.ts
new file mode 100644
index 00000000000..430879ea3ff
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-item-group.ts
@@ -0,0 +1,32 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonItemGroup } from '@ionic/core/components/ion-item-group.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonItemGroup
+})
+@Component({
+ selector: 'ion-item-group',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: [],
+})
+export class IonItemGroup {
+ protected el: HTMLIonItemGroupElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonItemGroup extends Components.IonItemGroup {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-item-option.ts b/packages/angular/src/standalone/directives/ion-item-option.ts
new file mode 100644
index 00000000000..f531f1a1bdf
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-item-option.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonItemOption } from '@ionic/core/components/ion-item-option.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonItemOption,
+ inputs: ['color', 'disabled', 'download', 'expandable', 'href', 'mode', 'rel', 'target', 'type']
+})
+@Component({
+ selector: 'ion-item-option',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'disabled', 'download', 'expandable', 'href', 'mode', 'rel', 'target', 'type'],
+})
+export class IonItemOption {
+ protected el: HTMLIonItemOptionElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonItemOption extends Components.IonItemOption {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-item-options.ts b/packages/angular/src/standalone/directives/ion-item-options.ts
new file mode 100644
index 00000000000..46172f93efb
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-item-options.ts
@@ -0,0 +1,42 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonItemOptions } from '@ionic/core/components/ion-item-options.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonItemOptions,
+ inputs: ['side']
+})
+@Component({
+ selector: 'ion-item-options',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['side'],
+ outputs: ['ionSwipe'],
+})
+export class IonItemOptions {
+ protected el: HTMLIonItemOptionsElement;
+ @Output() ionSwipe = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonItemOptionsCustomEvent } from '@ionic/core/components';
+
+export declare interface IonItemOptions extends Components.IonItemOptions {
+ /**
+ * Emitted when the item has been fully swiped.
+ */
+ ionSwipe: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-item-sliding.ts b/packages/angular/src/standalone/directives/ion-item-sliding.ts
new file mode 100644
index 00000000000..766083b51fc
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-item-sliding.ts
@@ -0,0 +1,43 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonItemSliding } from '@ionic/core/components/ion-item-sliding.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonItemSliding,
+ inputs: ['disabled'],
+ methods: ['getOpenAmount', 'getSlidingRatio', 'open', 'close', 'closeOpened']
+})
+@Component({
+ selector: 'ion-item-sliding',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['disabled'],
+ outputs: ['ionDrag'],
+})
+export class IonItemSliding {
+ protected el: HTMLIonItemSlidingElement;
+ @Output() ionDrag = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonItemSlidingCustomEvent } from '@ionic/core/components';
+
+export declare interface IonItemSliding extends Components.IonItemSliding {
+ /**
+ * Emitted when the sliding position changes.
+ */
+ ionDrag: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-item.ts b/packages/angular/src/standalone/directives/ion-item.ts
new file mode 100644
index 00000000000..97133751055
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-item.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonItem } from '@ionic/core/components/ion-item.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonItem,
+ inputs: ['button', 'color', 'detail', 'detailIcon', 'disabled', 'download', 'href', 'lines', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type']
+})
+@Component({
+ selector: 'ion-item',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['button', 'color', 'detail', 'detailIcon', 'disabled', 'download', 'href', 'lines', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type'],
+})
+export class IonItem {
+ protected el: HTMLIonItemElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonItem extends Components.IonItem {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-label.ts b/packages/angular/src/standalone/directives/ion-label.ts
new file mode 100644
index 00000000000..b028e1e79a8
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-label.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonLabel } from '@ionic/core/components/ion-label.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonLabel,
+ inputs: ['color', 'mode', 'position']
+})
+@Component({
+ selector: 'ion-label',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode', 'position'],
+})
+export class IonLabel {
+ protected el: HTMLIonLabelElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonLabel extends Components.IonLabel {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-list-header.ts b/packages/angular/src/standalone/directives/ion-list-header.ts
new file mode 100644
index 00000000000..542b0efa577
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-list-header.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonListHeader } from '@ionic/core/components/ion-list-header.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonListHeader,
+ inputs: ['color', 'lines', 'mode']
+})
+@Component({
+ selector: 'ion-list-header',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'lines', 'mode'],
+})
+export class IonListHeader {
+ protected el: HTMLIonListHeaderElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonListHeader extends Components.IonListHeader {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-list.ts b/packages/angular/src/standalone/directives/ion-list.ts
new file mode 100644
index 00000000000..51d411f640f
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-list.ts
@@ -0,0 +1,34 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonList } from '@ionic/core/components/ion-list.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonList,
+ inputs: ['inset', 'lines', 'mode'],
+ methods: ['closeSlidingItems']
+})
+@Component({
+ selector: 'ion-list',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['inset', 'lines', 'mode'],
+})
+export class IonList {
+ protected el: HTMLIonListElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonList extends Components.IonList {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-loading.ts b/packages/angular/src/standalone/directives/ion-loading.ts
new file mode 100644
index 00000000000..3ba00b3cbb6
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-loading.ts
@@ -0,0 +1,83 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonLoading } from '@ionic/core/components/ion-loading.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonLoading,
+ inputs: ['animated', 'backdropDismiss', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'showBackdrop', 'spinner', 'translucent', 'trigger'],
+ methods: ['present', 'dismiss', 'onDidDismiss', 'onWillDismiss']
+})
+@Component({
+ selector: 'ion-loading',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['animated', 'backdropDismiss', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'showBackdrop', 'spinner', 'translucent', 'trigger'],
+ outputs: ['ionLoadingDidPresent', 'ionLoadingWillPresent', 'ionLoadingWillDismiss', 'ionLoadingDidDismiss', 'didPresent', 'willPresent', 'willDismiss', 'didDismiss'],
+})
+export class IonLoading {
+ protected el: HTMLIonLoadingElement;
+ @Output() ionLoadingDidPresent = new EventEmitter>();
+ @Output() ionLoadingWillPresent = new EventEmitter>();
+ @Output() ionLoadingWillDismiss = new EventEmitter>();
+ @Output() ionLoadingDidDismiss = new EventEmitter>();
+ @Output() didPresent = new EventEmitter>();
+ @Output() willPresent = new EventEmitter>();
+ @Output() willDismiss = new EventEmitter>();
+ @Output() didDismiss = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonLoadingCustomEvent } from '@ionic/core/components';
+import type { OverlayEventDetail as IIonLoadingOverlayEventDetail } from '@ionic/core/components';
+
+export declare interface IonLoading extends Components.IonLoading {
+ /**
+ * Emitted after the loading has presented.
+ */
+ ionLoadingDidPresent: EventEmitter>;
+ /**
+ * Emitted before the loading has presented.
+ */
+ ionLoadingWillPresent: EventEmitter>;
+ /**
+ * Emitted before the loading has dismissed.
+ */
+ ionLoadingWillDismiss: EventEmitter>;
+ /**
+ * Emitted after the loading has dismissed.
+ */
+ ionLoadingDidDismiss: EventEmitter>;
+ /**
+ * Emitted after the loading indicator has presented.
+Shorthand for ionLoadingWillDismiss.
+ */
+ didPresent: EventEmitter>;
+ /**
+ * Emitted before the loading indicator has presented.
+Shorthand for ionLoadingWillPresent.
+ */
+ willPresent: EventEmitter>;
+ /**
+ * Emitted before the loading indicator has dismissed.
+Shorthand for ionLoadingWillDismiss.
+ */
+ willDismiss: EventEmitter>;
+ /**
+ * Emitted after the loading indicator has dismissed.
+Shorthand for ionLoadingDidDismiss.
+ */
+ didDismiss: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-menu-button.ts b/packages/angular/src/standalone/directives/ion-menu-button.ts
new file mode 100644
index 00000000000..344525e00d9
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-menu-button.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonMenuButton } from '@ionic/core/components/ion-menu-button.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonMenuButton,
+ inputs: ['autoHide', 'color', 'disabled', 'menu', 'mode', 'type']
+})
+@Component({
+ selector: 'ion-menu-button',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['autoHide', 'color', 'disabled', 'menu', 'mode', 'type'],
+})
+export class IonMenuButton {
+ protected el: HTMLIonMenuButtonElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonMenuButton extends Components.IonMenuButton {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-menu-toggle.ts b/packages/angular/src/standalone/directives/ion-menu-toggle.ts
new file mode 100644
index 00000000000..641491fbb06
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-menu-toggle.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonMenuToggle } from '@ionic/core/components/ion-menu-toggle.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonMenuToggle,
+ inputs: ['autoHide', 'menu']
+})
+@Component({
+ selector: 'ion-menu-toggle',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['autoHide', 'menu'],
+})
+export class IonMenuToggle {
+ protected el: HTMLIonMenuToggleElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonMenuToggle extends Components.IonMenuToggle {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-menu.ts b/packages/angular/src/standalone/directives/ion-menu.ts
new file mode 100644
index 00000000000..d56b082450c
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-menu.ts
@@ -0,0 +1,59 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonMenu } from '@ionic/core/components/ion-menu.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonMenu,
+ inputs: ['contentId', 'disabled', 'maxEdgeStart', 'menuId', 'side', 'swipeGesture', 'type'],
+ methods: ['isOpen', 'isActive', 'open', 'close', 'toggle', 'setOpen']
+})
+@Component({
+ selector: 'ion-menu',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['contentId', 'disabled', 'maxEdgeStart', 'menuId', 'side', 'swipeGesture', 'type'],
+ outputs: ['ionWillOpen', 'ionWillClose', 'ionDidOpen', 'ionDidClose'],
+})
+export class IonMenu {
+ protected el: HTMLIonMenuElement;
+ @Output() ionWillOpen = new EventEmitter>();
+ @Output() ionWillClose = new EventEmitter>();
+ @Output() ionDidOpen = new EventEmitter>();
+ @Output() ionDidClose = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonMenuCustomEvent } from '@ionic/core/components';
+import type { MenuCloseEventDetail as IIonMenuMenuCloseEventDetail } from '@ionic/core/components';
+
+export declare interface IonMenu extends Components.IonMenu {
+ /**
+ * Emitted when the menu is about to be opened.
+ */
+ ionWillOpen: EventEmitter>;
+ /**
+ * Emitted when the menu is about to be closed.
+ */
+ ionWillClose: EventEmitter>;
+ /**
+ * Emitted when the menu is open.
+ */
+ ionDidOpen: EventEmitter>;
+ /**
+ * Emitted when the menu is closed.
+ */
+ ionDidClose: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-nav-link.ts b/packages/angular/src/standalone/directives/ion-nav-link.ts
new file mode 100644
index 00000000000..86b6f7ed1a1
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-nav-link.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonNavLink } from '@ionic/core/components/ion-nav-link.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonNavLink,
+ inputs: ['component', 'componentProps', 'routerAnimation', 'routerDirection']
+})
+@Component({
+ selector: 'ion-nav-link',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['component', 'componentProps', 'routerAnimation', 'routerDirection'],
+})
+export class IonNavLink {
+ protected el: HTMLIonNavLinkElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonNavLink extends Components.IonNavLink {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-note.ts b/packages/angular/src/standalone/directives/ion-note.ts
new file mode 100644
index 00000000000..62acfd48705
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-note.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonNote } from '@ionic/core/components/ion-note.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonNote,
+ inputs: ['color', 'mode']
+})
+@Component({
+ selector: 'ion-note',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode'],
+})
+export class IonNote {
+ protected el: HTMLIonNoteElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonNote extends Components.IonNote {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-picker-column-option.ts b/packages/angular/src/standalone/directives/ion-picker-column-option.ts
new file mode 100644
index 00000000000..2c42d4af17e
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-picker-column-option.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonPickerColumnOption } from '@ionic/core/components/ion-picker-column-option.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonPickerColumnOption,
+ inputs: ['color', 'disabled', 'value']
+})
+@Component({
+ selector: 'ion-picker-column-option',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'disabled', 'value'],
+})
+export class IonPickerColumnOption {
+ protected el: HTMLIonPickerColumnOptionElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonPickerColumnOption extends Components.IonPickerColumnOption {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-picker-column.ts b/packages/angular/src/standalone/directives/ion-picker-column.ts
new file mode 100644
index 00000000000..48d621c975e
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-picker-column.ts
@@ -0,0 +1,46 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonPickerColumn } from '@ionic/core/components/ion-picker-column.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonPickerColumn,
+ inputs: ['color', 'disabled', 'mode', 'value'],
+ methods: ['setFocus']
+})
+@Component({
+ selector: 'ion-picker-column',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'disabled', 'mode', 'value'],
+ outputs: ['ionChange'],
+})
+export class IonPickerColumn {
+ protected el: HTMLIonPickerColumnElement;
+ @Output() ionChange = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonPickerColumnCustomEvent } from '@ionic/core/components';
+import type { PickerColumnChangeEventDetail as IIonPickerColumnPickerColumnChangeEventDetail } from '@ionic/core/components';
+
+export declare interface IonPickerColumn extends Components.IonPickerColumn {
+ /**
+ * Emitted when the value has changed.
+
+This event will not emit when programmatically setting the `value` property.
+ */
+ ionChange: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-picker.ts b/packages/angular/src/standalone/directives/ion-picker.ts
new file mode 100644
index 00000000000..b21198b3fac
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-picker.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonPicker } from '@ionic/core/components/ion-picker.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonPicker,
+ inputs: ['mode']
+})
+@Component({
+ selector: 'ion-picker',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['mode'],
+})
+export class IonPicker {
+ protected el: HTMLIonPickerElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonPicker extends Components.IonPicker {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-progress-bar.ts b/packages/angular/src/standalone/directives/ion-progress-bar.ts
new file mode 100644
index 00000000000..305a35529e8
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-progress-bar.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonProgressBar } from '@ionic/core/components/ion-progress-bar.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonProgressBar,
+ inputs: ['buffer', 'color', 'mode', 'reversed', 'type', 'value']
+})
+@Component({
+ selector: 'ion-progress-bar',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['buffer', 'color', 'mode', 'reversed', 'type', 'value'],
+})
+export class IonProgressBar {
+ protected el: HTMLIonProgressBarElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonProgressBar extends Components.IonProgressBar {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-radio.ts b/packages/angular/src/standalone/directives/ion-radio.ts
new file mode 100644
index 00000000000..60459663ff8
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-radio.ts
@@ -0,0 +1,47 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonRadio } from '@ionic/core/components/ion-radio.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonRadio,
+ inputs: ['alignment', 'color', 'disabled', 'justify', 'labelPlacement', 'mode', 'name', 'value']
+})
+@Component({
+ selector: 'ion-radio',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['alignment', 'color', 'disabled', 'justify', 'labelPlacement', 'mode', 'name', 'value'],
+ outputs: ['ionFocus', 'ionBlur'],
+})
+export class IonRadio {
+ protected el: HTMLIonRadioElement;
+ @Output() ionFocus = new EventEmitter>();
+ @Output() ionBlur = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonRadioCustomEvent } from '@ionic/core/components';
+
+export declare interface IonRadio extends Components.IonRadio {
+ /**
+ * Emitted when the radio button has focus.
+ */
+ ionFocus: EventEmitter>;
+ /**
+ * Emitted when the radio button loses focus.
+ */
+ ionBlur: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-refresher-content.ts b/packages/angular/src/standalone/directives/ion-refresher-content.ts
new file mode 100644
index 00000000000..aaed78a2c85
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-refresher-content.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonRefresherContent } from '@ionic/core/components/ion-refresher-content.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonRefresherContent,
+ inputs: ['pullingIcon', 'pullingText', 'refreshingSpinner', 'refreshingText']
+})
+@Component({
+ selector: 'ion-refresher-content',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['pullingIcon', 'pullingText', 'refreshingSpinner', 'refreshingText'],
+})
+export class IonRefresherContent {
+ protected el: HTMLIonRefresherContentElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonRefresherContent extends Components.IonRefresherContent {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-refresher.ts b/packages/angular/src/standalone/directives/ion-refresher.ts
new file mode 100644
index 00000000000..006c62683f7
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-refresher.ts
@@ -0,0 +1,70 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonRefresher } from '@ionic/core/components/ion-refresher.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonRefresher,
+ inputs: ['closeDuration', 'disabled', 'mode', 'pullFactor', 'pullMax', 'pullMin', 'snapbackDuration'],
+ methods: ['complete', 'cancel', 'getProgress']
+})
+@Component({
+ selector: 'ion-refresher',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['closeDuration', 'disabled', 'mode', 'pullFactor', 'pullMax', 'pullMin', 'snapbackDuration'],
+ outputs: ['ionRefresh', 'ionPull', 'ionStart', 'ionPullStart', 'ionPullEnd'],
+})
+export class IonRefresher {
+ protected el: HTMLIonRefresherElement;
+ @Output() ionRefresh = new EventEmitter>();
+ @Output() ionPull = new EventEmitter>();
+ @Output() ionStart = new EventEmitter>();
+ @Output() ionPullStart = new EventEmitter>();
+ @Output() ionPullEnd = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonRefresherCustomEvent } from '@ionic/core/components';
+import type { RefresherEventDetail as IIonRefresherRefresherEventDetail } from '@ionic/core/components';
+import type { RefresherPullEndEventDetail as IIonRefresherRefresherPullEndEventDetail } from '@ionic/core/components';
+
+export declare interface IonRefresher extends Components.IonRefresher {
+ /**
+ * Emitted when the user lets go of the content and has pulled down
+further than the `pullMin` or pulls the content down and exceeds the pullMax.
+Updates the refresher state to `refreshing`. The `complete()` method should be
+called when the async operation has completed.
+ */
+ ionRefresh: EventEmitter>;
+ /**
+ * Emitted while the user is pulling down the content and exposing the refresher.
+ */
+ ionPull: EventEmitter>;
+ /**
+ * Emitted when the user begins to start pulling down. @deprecated Use `ionPullStart` instead.
+ */
+ ionStart: EventEmitter>;
+ /**
+ * Emitted when the user begins to start pulling down.
+ */
+ ionPullStart: EventEmitter>;
+ /**
+ * Emitted when the refresher has returned to the inactive state
+after a pull gesture. This fires whether the refresh completed
+successfully or was canceled.
+ */
+ ionPullEnd: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-reorder-group.ts b/packages/angular/src/standalone/directives/ion-reorder-group.ts
new file mode 100644
index 00000000000..ee5757911f2
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-reorder-group.ts
@@ -0,0 +1,69 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonReorderGroup } from '@ionic/core/components/ion-reorder-group.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonReorderGroup,
+ inputs: ['disabled'],
+ methods: ['complete']
+})
+@Component({
+ selector: 'ion-reorder-group',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['disabled'],
+ outputs: ['ionItemReorder', 'ionReorderStart', 'ionReorderMove', 'ionReorderEnd'],
+})
+export class IonReorderGroup {
+ protected el: HTMLIonReorderGroupElement;
+ @Output() ionItemReorder = new EventEmitter>();
+ @Output() ionReorderStart = new EventEmitter>();
+ @Output() ionReorderMove = new EventEmitter>();
+ @Output() ionReorderEnd = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonReorderGroupCustomEvent } from '@ionic/core/components';
+import type { ItemReorderEventDetail as IIonReorderGroupItemReorderEventDetail } from '@ionic/core/components';
+import type { ReorderMoveEventDetail as IIonReorderGroupReorderMoveEventDetail } from '@ionic/core/components';
+import type { ReorderEndEventDetail as IIonReorderGroupReorderEndEventDetail } from '@ionic/core/components';
+
+export declare interface IonReorderGroup extends Components.IonReorderGroup {
+ /**
+ * Event that needs to be listened to in order to complete the reorder action. @deprecated Use `ionReorderEnd` instead. If you are accessing
+`event.detail.from` or `event.detail.to` and relying on them
+being different you should now add checks as they are always emitted
+in `ionReorderEnd`, even when they are the same.
+ */
+ ionItemReorder: EventEmitter>;
+ /**
+ * Event that is emitted when the reorder gesture starts.
+ */
+ ionReorderStart: EventEmitter>;
+ /**
+ * Event that is emitted as the reorder gesture moves.
+ */
+ ionReorderMove: EventEmitter>;
+ /**
+ * Event that is emitted when the reorder gesture ends.
+The from and to properties are always available, regardless of
+if the reorder gesture moved the item. If the item did not change
+from its start position, the from and to properties will be the same.
+Once the event has been emitted, the `complete()` method then needs
+to be called in order to finalize the reorder action.
+ */
+ ionReorderEnd: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-reorder.ts b/packages/angular/src/standalone/directives/ion-reorder.ts
new file mode 100644
index 00000000000..d6c79d9172c
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-reorder.ts
@@ -0,0 +1,32 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonReorder } from '@ionic/core/components/ion-reorder.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonReorder
+})
+@Component({
+ selector: 'ion-reorder',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: [],
+})
+export class IonReorder {
+ protected el: HTMLIonReorderElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonReorder extends Components.IonReorder {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-ripple-effect.ts b/packages/angular/src/standalone/directives/ion-ripple-effect.ts
new file mode 100644
index 00000000000..5b04e536af0
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-ripple-effect.ts
@@ -0,0 +1,34 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonRippleEffect } from '@ionic/core/components/ion-ripple-effect.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonRippleEffect,
+ inputs: ['type'],
+ methods: ['addRipple']
+})
+@Component({
+ selector: 'ion-ripple-effect',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['type'],
+})
+export class IonRippleEffect {
+ protected el: HTMLIonRippleEffectElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonRippleEffect extends Components.IonRippleEffect {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-row.ts b/packages/angular/src/standalone/directives/ion-row.ts
new file mode 100644
index 00000000000..9c93df28f6f
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-row.ts
@@ -0,0 +1,32 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonRow } from '@ionic/core/components/ion-row.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonRow
+})
+@Component({
+ selector: 'ion-row',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: [],
+})
+export class IonRow {
+ protected el: HTMLIonRowElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonRow extends Components.IonRow {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-segment-button.ts b/packages/angular/src/standalone/directives/ion-segment-button.ts
new file mode 100644
index 00000000000..daf64edee94
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-segment-button.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonSegmentButton } from '@ionic/core/components/ion-segment-button.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonSegmentButton,
+ inputs: ['contentId', 'disabled', 'layout', 'mode', 'type', 'value']
+})
+@Component({
+ selector: 'ion-segment-button',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['contentId', 'disabled', 'layout', 'mode', 'type', 'value'],
+})
+export class IonSegmentButton {
+ protected el: HTMLIonSegmentButtonElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonSegmentButton extends Components.IonSegmentButton {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-segment-content.ts b/packages/angular/src/standalone/directives/ion-segment-content.ts
new file mode 100644
index 00000000000..d3e3a47d9ee
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-segment-content.ts
@@ -0,0 +1,32 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonSegmentContent } from '@ionic/core/components/ion-segment-content.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonSegmentContent
+})
+@Component({
+ selector: 'ion-segment-content',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: [],
+})
+export class IonSegmentContent {
+ protected el: HTMLIonSegmentContentElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonSegmentContent extends Components.IonSegmentContent {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-segment-view.ts b/packages/angular/src/standalone/directives/ion-segment-view.ts
new file mode 100644
index 00000000000..0ac2736ef37
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-segment-view.ts
@@ -0,0 +1,43 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonSegmentView } from '@ionic/core/components/ion-segment-view.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonSegmentView,
+ inputs: ['disabled', 'swipeGesture']
+})
+@Component({
+ selector: 'ion-segment-view',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['disabled', 'swipeGesture'],
+ outputs: ['ionSegmentViewScroll'],
+})
+export class IonSegmentView {
+ protected el: HTMLIonSegmentViewElement;
+ @Output() ionSegmentViewScroll = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonSegmentViewCustomEvent } from '@ionic/core/components';
+import type { SegmentViewScrollEvent as IIonSegmentViewSegmentViewScrollEvent } from '@ionic/core/components';
+
+export declare interface IonSegmentView extends Components.IonSegmentView {
+ /**
+ * Emitted when the segment view is scrolled.
+ */
+ ionSegmentViewScroll: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-select-modal.ts b/packages/angular/src/standalone/directives/ion-select-modal.ts
new file mode 100644
index 00000000000..bc3336a0287
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-select-modal.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonSelectModal } from '@ionic/core/components/ion-select-modal.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonSelectModal,
+ inputs: ['cancelText', 'header', 'multiple', 'options']
+})
+@Component({
+ selector: 'ion-select-modal',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['cancelText', 'header', 'multiple', 'options'],
+})
+export class IonSelectModal {
+ protected el: HTMLIonSelectModalElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonSelectModal extends Components.IonSelectModal {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-select-option.ts b/packages/angular/src/standalone/directives/ion-select-option.ts
new file mode 100644
index 00000000000..d7696e4117f
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-select-option.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonSelectOption } from '@ionic/core/components/ion-select-option.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonSelectOption,
+ inputs: ['description', 'disabled', 'justify', 'labelPlacement', 'mode', 'value']
+})
+@Component({
+ selector: 'ion-select-option',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['description', 'disabled', 'justify', 'labelPlacement', 'mode', 'value'],
+})
+export class IonSelectOption {
+ protected el: HTMLIonSelectOptionElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonSelectOption extends Components.IonSelectOption {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-skeleton-text.ts b/packages/angular/src/standalone/directives/ion-skeleton-text.ts
new file mode 100644
index 00000000000..c6b32a4a82f
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-skeleton-text.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonSkeletonText } from '@ionic/core/components/ion-skeleton-text.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonSkeletonText,
+ inputs: ['animated']
+})
+@Component({
+ selector: 'ion-skeleton-text',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['animated'],
+})
+export class IonSkeletonText {
+ protected el: HTMLIonSkeletonTextElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonSkeletonText extends Components.IonSkeletonText {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-spinner.ts b/packages/angular/src/standalone/directives/ion-spinner.ts
new file mode 100644
index 00000000000..25f54aba4ad
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-spinner.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonSpinner } from '@ionic/core/components/ion-spinner.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonSpinner,
+ inputs: ['color', 'duration', 'name', 'paused']
+})
+@Component({
+ selector: 'ion-spinner',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'duration', 'name', 'paused'],
+})
+export class IonSpinner {
+ protected el: HTMLIonSpinnerElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonSpinner extends Components.IonSpinner {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-split-pane.ts b/packages/angular/src/standalone/directives/ion-split-pane.ts
new file mode 100644
index 00000000000..37c4eaad7ea
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-split-pane.ts
@@ -0,0 +1,42 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonSplitPane } from '@ionic/core/components/ion-split-pane.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonSplitPane,
+ inputs: ['contentId', 'disabled', 'when']
+})
+@Component({
+ selector: 'ion-split-pane',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['contentId', 'disabled', 'when'],
+ outputs: ['ionSplitPaneVisible'],
+})
+export class IonSplitPane {
+ protected el: HTMLIonSplitPaneElement;
+ @Output() ionSplitPaneVisible = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonSplitPaneCustomEvent } from '@ionic/core/components';
+
+export declare interface IonSplitPane extends Components.IonSplitPane {
+ /**
+ * Expression to be called when the split-pane visibility has changed
+ */
+ ionSplitPaneVisible: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-tab-bar.ts b/packages/angular/src/standalone/directives/ion-tab-bar.ts
new file mode 100644
index 00000000000..bcd6a4cc2c1
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-tab-bar.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonTabBar } from '@ionic/core/components/ion-tab-bar.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonTabBar,
+ inputs: ['color', 'mode', 'selectedTab', 'translucent']
+})
+@Component({
+ selector: 'ion-tab-bar',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode', 'selectedTab', 'translucent'],
+})
+export class IonTabBar {
+ protected el: HTMLIonTabBarElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonTabBar extends Components.IonTabBar {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-tab-button.ts b/packages/angular/src/standalone/directives/ion-tab-button.ts
new file mode 100644
index 00000000000..5c0eaf0d8e0
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-tab-button.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonTabButton } from '@ionic/core/components/ion-tab-button.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonTabButton,
+ inputs: ['disabled', 'download', 'href', 'layout', 'mode', 'rel', 'selected', 'tab', 'target']
+})
+@Component({
+ selector: 'ion-tab-button',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['disabled', 'download', 'href', 'layout', 'mode', 'rel', 'selected', 'tab', 'target'],
+})
+export class IonTabButton {
+ protected el: HTMLIonTabButtonElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonTabButton extends Components.IonTabButton {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-tab.ts b/packages/angular/src/standalone/directives/ion-tab.ts
new file mode 100644
index 00000000000..ace67e2ff1a
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-tab.ts
@@ -0,0 +1,34 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonTab } from '@ionic/core/components/ion-tab.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonTab,
+ inputs: ['component', 'tab'],
+ methods: ['setActive']
+})
+@Component({
+ selector: 'ion-tab',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['component', { name: 'tab', required: true }],
+})
+export class IonTab {
+ protected el: HTMLIonTabElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonTab extends Components.IonTab {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-text.ts b/packages/angular/src/standalone/directives/ion-text.ts
new file mode 100644
index 00000000000..fd79708a461
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-text.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonText } from '@ionic/core/components/ion-text.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonText,
+ inputs: ['color', 'mode']
+})
+@Component({
+ selector: 'ion-text',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode'],
+})
+export class IonText {
+ protected el: HTMLIonTextElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonText extends Components.IonText {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-thumbnail.ts b/packages/angular/src/standalone/directives/ion-thumbnail.ts
new file mode 100644
index 00000000000..f427f151170
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-thumbnail.ts
@@ -0,0 +1,32 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonThumbnail } from '@ionic/core/components/ion-thumbnail.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonThumbnail
+})
+@Component({
+ selector: 'ion-thumbnail',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: [],
+})
+export class IonThumbnail {
+ protected el: HTMLIonThumbnailElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonThumbnail extends Components.IonThumbnail {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-title.ts b/packages/angular/src/standalone/directives/ion-title.ts
new file mode 100644
index 00000000000..65b57156253
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-title.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonTitle } from '@ionic/core/components/ion-title.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonTitle,
+ inputs: ['color', 'size']
+})
+@Component({
+ selector: 'ion-title',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'size'],
+})
+export class IonTitle {
+ protected el: HTMLIonTitleElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonTitle extends Components.IonTitle {}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-toast.ts b/packages/angular/src/standalone/directives/ion-toast.ts
new file mode 100644
index 00000000000..cf714875a3e
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-toast.ts
@@ -0,0 +1,83 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone, EventEmitter, Output } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonToast } from '@ionic/core/components/ion-toast.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonToast,
+ inputs: ['animated', 'buttons', 'color', 'cssClass', 'duration', 'enterAnimation', 'header', 'htmlAttributes', 'icon', 'isOpen', 'keyboardClose', 'layout', 'leaveAnimation', 'message', 'mode', 'position', 'positionAnchor', 'swipeGesture', 'translucent', 'trigger'],
+ methods: ['present', 'dismiss', 'onDidDismiss', 'onWillDismiss']
+})
+@Component({
+ selector: 'ion-toast',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['animated', 'buttons', 'color', 'cssClass', 'duration', 'enterAnimation', 'header', 'htmlAttributes', 'icon', 'isOpen', 'keyboardClose', 'layout', 'leaveAnimation', 'message', 'mode', 'position', 'positionAnchor', 'swipeGesture', 'translucent', 'trigger'],
+ outputs: ['ionToastDidPresent', 'ionToastWillPresent', 'ionToastWillDismiss', 'ionToastDidDismiss', 'didPresent', 'willPresent', 'willDismiss', 'didDismiss'],
+})
+export class IonToast {
+ protected el: HTMLIonToastElement;
+ @Output() ionToastDidPresent = new EventEmitter>();
+ @Output() ionToastWillPresent = new EventEmitter>();
+ @Output() ionToastWillDismiss = new EventEmitter>();
+ @Output() ionToastDidDismiss = new EventEmitter>();
+ @Output() didPresent = new EventEmitter>();
+ @Output() willPresent = new EventEmitter>();
+ @Output() willDismiss = new EventEmitter>();
+ @Output() didDismiss = new EventEmitter>();
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+import type { IonToastCustomEvent } from '@ionic/core/components';
+import type { OverlayEventDetail as IIonToastOverlayEventDetail } from '@ionic/core/components';
+
+export declare interface IonToast extends Components.IonToast {
+ /**
+ * Emitted after the toast has presented.
+ */
+ ionToastDidPresent: EventEmitter>;
+ /**
+ * Emitted before the toast has presented.
+ */
+ ionToastWillPresent: EventEmitter>;
+ /**
+ * Emitted before the toast has dismissed.
+ */
+ ionToastWillDismiss: EventEmitter>;
+ /**
+ * Emitted after the toast has dismissed.
+ */
+ ionToastDidDismiss: EventEmitter>;
+ /**
+ * Emitted after the toast has presented.
+Shorthand for ionToastWillDismiss.
+ */
+ didPresent: EventEmitter>;
+ /**
+ * Emitted before the toast has presented.
+Shorthand for ionToastWillPresent.
+ */
+ willPresent: EventEmitter>;
+ /**
+ * Emitted before the toast has dismissed.
+Shorthand for ionToastWillDismiss.
+ */
+ willDismiss: EventEmitter>;
+ /**
+ * Emitted after the toast has dismissed.
+Shorthand for ionToastDidDismiss.
+ */
+ didDismiss: EventEmitter>;
+}
+
+
diff --git a/packages/angular/src/standalone/directives/ion-toolbar.ts b/packages/angular/src/standalone/directives/ion-toolbar.ts
new file mode 100644
index 00000000000..f67641ca9c1
--- /dev/null
+++ b/packages/angular/src/standalone/directives/ion-toolbar.ts
@@ -0,0 +1,33 @@
+/* tslint:disable */
+/* auto-generated angular directive proxies */
+import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core';
+
+import { ProxyCmp } from './angular-component-lib/utils';
+
+import type { Components } from '@ionic/core/components';
+
+import { defineCustomElement as defineIonToolbar } from '@ionic/core/components/ion-toolbar.js';
+
+@ProxyCmp({
+ defineCustomElementFn: defineIonToolbar,
+ inputs: ['color', 'mode']
+})
+@Component({
+ selector: 'ion-toolbar',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ template: '',
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
+ inputs: ['color', 'mode'],
+})
+export class IonToolbar {
+ protected el: HTMLIonToolbarElement;
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
+ c.detach();
+ this.el = r.nativeElement;
+ }
+}
+
+
+export declare interface IonToolbar extends Components.IonToolbar {}
+
+
diff --git a/packages/angular/src/standalone/directives/proxies.ts b/packages/angular/src/standalone/directives/proxies.ts
new file mode 100644
index 00000000000..01b5b741b20
--- /dev/null
+++ b/packages/angular/src/standalone/directives/proxies.ts
@@ -0,0 +1,79 @@
+/* tslint:disable */
+/**
+ * This file was automatically generated by the Stencil Angular Output Target.
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export { IonAccordion } from './ion-accordion';
+export { IonAccordionGroup } from './ion-accordion-group';
+export { IonActionSheet } from './ion-action-sheet';
+export { IonAlert } from './ion-alert';
+export { IonApp } from './ion-app';
+export { IonAvatar } from './ion-avatar';
+export { IonBackdrop } from './ion-backdrop';
+export { IonBadge } from './ion-badge';
+export { IonBreadcrumb } from './ion-breadcrumb';
+export { IonBreadcrumbs } from './ion-breadcrumbs';
+export { IonButton } from './ion-button';
+export { IonButtons } from './ion-buttons';
+export { IonCard } from './ion-card';
+export { IonCardContent } from './ion-card-content';
+export { IonCardHeader } from './ion-card-header';
+export { IonCardSubtitle } from './ion-card-subtitle';
+export { IonCardTitle } from './ion-card-title';
+export { IonChip } from './ion-chip';
+export { IonCol } from './ion-col';
+export { IonContent } from './ion-content';
+export { IonDatetimeButton } from './ion-datetime-button';
+export { IonFab } from './ion-fab';
+export { IonFabButton } from './ion-fab-button';
+export { IonFabList } from './ion-fab-list';
+export { IonFooter } from './ion-footer';
+export { IonGrid } from './ion-grid';
+export { IonHeader } from './ion-header';
+export { IonImg } from './ion-img';
+export { IonInfiniteScroll } from './ion-infinite-scroll';
+export { IonInfiniteScrollContent } from './ion-infinite-scroll-content';
+export { IonInputPasswordToggle } from './ion-input-password-toggle';
+export { IonItem } from './ion-item';
+export { IonItemDivider } from './ion-item-divider';
+export { IonItemGroup } from './ion-item-group';
+export { IonItemOption } from './ion-item-option';
+export { IonItemOptions } from './ion-item-options';
+export { IonItemSliding } from './ion-item-sliding';
+export { IonLabel } from './ion-label';
+export { IonList } from './ion-list';
+export { IonListHeader } from './ion-list-header';
+export { IonLoading } from './ion-loading';
+export { IonMenu } from './ion-menu';
+export { IonMenuButton } from './ion-menu-button';
+export { IonMenuToggle } from './ion-menu-toggle';
+export { IonNavLink } from './ion-nav-link';
+export { IonNote } from './ion-note';
+export { IonPicker } from './ion-picker';
+export { IonPickerColumn } from './ion-picker-column';
+export { IonPickerColumnOption } from './ion-picker-column-option';
+export { IonProgressBar } from './ion-progress-bar';
+export { IonRadio } from './ion-radio';
+export { IonRefresher } from './ion-refresher';
+export { IonRefresherContent } from './ion-refresher-content';
+export { IonReorder } from './ion-reorder';
+export { IonReorderGroup } from './ion-reorder-group';
+export { IonRippleEffect } from './ion-ripple-effect';
+export { IonRow } from './ion-row';
+export { IonSegmentButton } from './ion-segment-button';
+export { IonSegmentContent } from './ion-segment-content';
+export { IonSegmentView } from './ion-segment-view';
+export { IonSelectModal } from './ion-select-modal';
+export { IonSelectOption } from './ion-select-option';
+export { IonSkeletonText } from './ion-skeleton-text';
+export { IonSpinner } from './ion-spinner';
+export { IonSplitPane } from './ion-split-pane';
+export { IonTab } from './ion-tab';
+export { IonTabBar } from './ion-tab-bar';
+export { IonTabButton } from './ion-tab-button';
+export { IonText } from './ion-text';
+export { IonThumbnail } from './ion-thumbnail';
+export { IonTitle } from './ion-title';
+export { IonToast } from './ion-toast';
+export { IonToolbar } from './ion-toolbar';
diff --git a/packages/angular/standalone/src/directives/radio-group.ts b/packages/angular/src/standalone/directives/radio-group.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/radio-group.ts
rename to packages/angular/src/standalone/directives/radio-group.ts
diff --git a/packages/angular/standalone/src/directives/range.ts b/packages/angular/src/standalone/directives/range.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/range.ts
rename to packages/angular/src/standalone/directives/range.ts
diff --git a/packages/angular/standalone/src/directives/searchbar.ts b/packages/angular/src/standalone/directives/searchbar.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/searchbar.ts
rename to packages/angular/src/standalone/directives/searchbar.ts
diff --git a/packages/angular/standalone/src/directives/segment.ts b/packages/angular/src/standalone/directives/segment.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/segment.ts
rename to packages/angular/src/standalone/directives/segment.ts
diff --git a/packages/angular/standalone/src/directives/select.ts b/packages/angular/src/standalone/directives/select.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/select.ts
rename to packages/angular/src/standalone/directives/select.ts
diff --git a/packages/angular/standalone/src/directives/textarea.ts b/packages/angular/src/standalone/directives/textarea.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/textarea.ts
rename to packages/angular/src/standalone/directives/textarea.ts
diff --git a/packages/angular/standalone/src/directives/toggle.ts b/packages/angular/src/standalone/directives/toggle.ts
similarity index 100%
rename from packages/angular/standalone/src/directives/toggle.ts
rename to packages/angular/src/standalone/directives/toggle.ts
diff --git a/packages/angular/standalone/src/index.ts b/packages/angular/src/standalone/index.ts
similarity index 100%
rename from packages/angular/standalone/src/index.ts
rename to packages/angular/src/standalone/index.ts
diff --git a/packages/angular/standalone/src/navigation/back-button.ts b/packages/angular/src/standalone/navigation/back-button.ts
similarity index 100%
rename from packages/angular/standalone/src/navigation/back-button.ts
rename to packages/angular/src/standalone/navigation/back-button.ts
diff --git a/packages/angular/standalone/src/navigation/nav.ts b/packages/angular/src/standalone/navigation/nav.ts
similarity index 100%
rename from packages/angular/standalone/src/navigation/nav.ts
rename to packages/angular/src/standalone/navigation/nav.ts
diff --git a/packages/angular/standalone/src/navigation/router-link-delegate.ts b/packages/angular/src/standalone/navigation/router-link-delegate.ts
similarity index 100%
rename from packages/angular/standalone/src/navigation/router-link-delegate.ts
rename to packages/angular/src/standalone/navigation/router-link-delegate.ts
diff --git a/packages/angular/standalone/src/navigation/router-outlet.ts b/packages/angular/src/standalone/navigation/router-outlet.ts
similarity index 100%
rename from packages/angular/standalone/src/navigation/router-outlet.ts
rename to packages/angular/src/standalone/navigation/router-outlet.ts
diff --git a/packages/angular/standalone/src/navigation/tabs.ts b/packages/angular/src/standalone/navigation/tabs.ts
similarity index 100%
rename from packages/angular/standalone/src/navigation/tabs.ts
rename to packages/angular/src/standalone/navigation/tabs.ts
diff --git a/packages/angular/standalone/src/overlays/modal.ts b/packages/angular/src/standalone/overlays/modal.ts
similarity index 100%
rename from packages/angular/standalone/src/overlays/modal.ts
rename to packages/angular/src/standalone/overlays/modal.ts
diff --git a/packages/angular/standalone/src/overlays/popover.ts b/packages/angular/src/standalone/overlays/popover.ts
similarity index 100%
rename from packages/angular/standalone/src/overlays/popover.ts
rename to packages/angular/src/standalone/overlays/popover.ts
diff --git a/packages/angular/standalone/src/providers/action-sheet-controller.ts b/packages/angular/src/standalone/providers/action-sheet-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/action-sheet-controller.ts
rename to packages/angular/src/standalone/providers/action-sheet-controller.ts
diff --git a/packages/angular/standalone/src/providers/alert-controller.ts b/packages/angular/src/standalone/providers/alert-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/alert-controller.ts
rename to packages/angular/src/standalone/providers/alert-controller.ts
diff --git a/packages/angular/standalone/src/providers/animation-controller.ts b/packages/angular/src/standalone/providers/animation-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/animation-controller.ts
rename to packages/angular/src/standalone/providers/animation-controller.ts
diff --git a/packages/angular/standalone/src/providers/gesture-controller.ts b/packages/angular/src/standalone/providers/gesture-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/gesture-controller.ts
rename to packages/angular/src/standalone/providers/gesture-controller.ts
diff --git a/packages/angular/standalone/src/providers/ionic-angular.ts b/packages/angular/src/standalone/providers/ionic-angular.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/ionic-angular.ts
rename to packages/angular/src/standalone/providers/ionic-angular.ts
diff --git a/packages/angular/standalone/src/providers/loading-controller.ts b/packages/angular/src/standalone/providers/loading-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/loading-controller.ts
rename to packages/angular/src/standalone/providers/loading-controller.ts
diff --git a/packages/angular/standalone/src/providers/menu-controller.ts b/packages/angular/src/standalone/providers/menu-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/menu-controller.ts
rename to packages/angular/src/standalone/providers/menu-controller.ts
diff --git a/packages/angular/standalone/src/providers/modal-controller.ts b/packages/angular/src/standalone/providers/modal-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/modal-controller.ts
rename to packages/angular/src/standalone/providers/modal-controller.ts
diff --git a/packages/angular/standalone/src/providers/popover-controller.ts b/packages/angular/src/standalone/providers/popover-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/popover-controller.ts
rename to packages/angular/src/standalone/providers/popover-controller.ts
diff --git a/packages/angular/standalone/src/providers/toast-controller.ts b/packages/angular/src/standalone/providers/toast-controller.ts
similarity index 100%
rename from packages/angular/standalone/src/providers/toast-controller.ts
rename to packages/angular/src/standalone/providers/toast-controller.ts
diff --git a/packages/angular/standalone/src/directives/proxies.ts b/packages/angular/standalone/src/directives/proxies.ts
deleted file mode 100644
index 5507445158a..00000000000
--- a/packages/angular/standalone/src/directives/proxies.ts
+++ /dev/null
@@ -1,2252 +0,0 @@
-/* tslint:disable */
-/* auto-generated angular directive proxies */
-import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Output, NgZone } from '@angular/core';
-
-import { ProxyCmp } from './angular-component-lib/utils';
-
-import type { Components } from '@ionic/core/components';
-
-import { defineCustomElement as defineIonAccordion } from '@ionic/core/components/ion-accordion.js';
-import { defineCustomElement as defineIonAccordionGroup } from '@ionic/core/components/ion-accordion-group.js';
-import { defineCustomElement as defineIonActionSheet } from '@ionic/core/components/ion-action-sheet.js';
-import { defineCustomElement as defineIonAlert } from '@ionic/core/components/ion-alert.js';
-import { defineCustomElement as defineIonApp } from '@ionic/core/components/ion-app.js';
-import { defineCustomElement as defineIonAvatar } from '@ionic/core/components/ion-avatar.js';
-import { defineCustomElement as defineIonBackdrop } from '@ionic/core/components/ion-backdrop.js';
-import { defineCustomElement as defineIonBadge } from '@ionic/core/components/ion-badge.js';
-import { defineCustomElement as defineIonBreadcrumb } from '@ionic/core/components/ion-breadcrumb.js';
-import { defineCustomElement as defineIonBreadcrumbs } from '@ionic/core/components/ion-breadcrumbs.js';
-import { defineCustomElement as defineIonButton } from '@ionic/core/components/ion-button.js';
-import { defineCustomElement as defineIonButtons } from '@ionic/core/components/ion-buttons.js';
-import { defineCustomElement as defineIonCard } from '@ionic/core/components/ion-card.js';
-import { defineCustomElement as defineIonCardContent } from '@ionic/core/components/ion-card-content.js';
-import { defineCustomElement as defineIonCardHeader } from '@ionic/core/components/ion-card-header.js';
-import { defineCustomElement as defineIonCardSubtitle } from '@ionic/core/components/ion-card-subtitle.js';
-import { defineCustomElement as defineIonCardTitle } from '@ionic/core/components/ion-card-title.js';
-import { defineCustomElement as defineIonChip } from '@ionic/core/components/ion-chip.js';
-import { defineCustomElement as defineIonCol } from '@ionic/core/components/ion-col.js';
-import { defineCustomElement as defineIonContent } from '@ionic/core/components/ion-content.js';
-import { defineCustomElement as defineIonDatetimeButton } from '@ionic/core/components/ion-datetime-button.js';
-import { defineCustomElement as defineIonFab } from '@ionic/core/components/ion-fab.js';
-import { defineCustomElement as defineIonFabButton } from '@ionic/core/components/ion-fab-button.js';
-import { defineCustomElement as defineIonFabList } from '@ionic/core/components/ion-fab-list.js';
-import { defineCustomElement as defineIonFooter } from '@ionic/core/components/ion-footer.js';
-import { defineCustomElement as defineIonGrid } from '@ionic/core/components/ion-grid.js';
-import { defineCustomElement as defineIonHeader } from '@ionic/core/components/ion-header.js';
-import { defineCustomElement as defineIonImg } from '@ionic/core/components/ion-img.js';
-import { defineCustomElement as defineIonInfiniteScroll } from '@ionic/core/components/ion-infinite-scroll.js';
-import { defineCustomElement as defineIonInfiniteScrollContent } from '@ionic/core/components/ion-infinite-scroll-content.js';
-import { defineCustomElement as defineIonInputPasswordToggle } from '@ionic/core/components/ion-input-password-toggle.js';
-import { defineCustomElement as defineIonItem } from '@ionic/core/components/ion-item.js';
-import { defineCustomElement as defineIonItemDivider } from '@ionic/core/components/ion-item-divider.js';
-import { defineCustomElement as defineIonItemGroup } from '@ionic/core/components/ion-item-group.js';
-import { defineCustomElement as defineIonItemOption } from '@ionic/core/components/ion-item-option.js';
-import { defineCustomElement as defineIonItemOptions } from '@ionic/core/components/ion-item-options.js';
-import { defineCustomElement as defineIonItemSliding } from '@ionic/core/components/ion-item-sliding.js';
-import { defineCustomElement as defineIonLabel } from '@ionic/core/components/ion-label.js';
-import { defineCustomElement as defineIonList } from '@ionic/core/components/ion-list.js';
-import { defineCustomElement as defineIonListHeader } from '@ionic/core/components/ion-list-header.js';
-import { defineCustomElement as defineIonLoading } from '@ionic/core/components/ion-loading.js';
-import { defineCustomElement as defineIonMenu } from '@ionic/core/components/ion-menu.js';
-import { defineCustomElement as defineIonMenuButton } from '@ionic/core/components/ion-menu-button.js';
-import { defineCustomElement as defineIonMenuToggle } from '@ionic/core/components/ion-menu-toggle.js';
-import { defineCustomElement as defineIonNavLink } from '@ionic/core/components/ion-nav-link.js';
-import { defineCustomElement as defineIonNote } from '@ionic/core/components/ion-note.js';
-import { defineCustomElement as defineIonPicker } from '@ionic/core/components/ion-picker.js';
-import { defineCustomElement as defineIonPickerColumn } from '@ionic/core/components/ion-picker-column.js';
-import { defineCustomElement as defineIonPickerColumnOption } from '@ionic/core/components/ion-picker-column-option.js';
-import { defineCustomElement as defineIonProgressBar } from '@ionic/core/components/ion-progress-bar.js';
-import { defineCustomElement as defineIonRadio } from '@ionic/core/components/ion-radio.js';
-import { defineCustomElement as defineIonRefresher } from '@ionic/core/components/ion-refresher.js';
-import { defineCustomElement as defineIonRefresherContent } from '@ionic/core/components/ion-refresher-content.js';
-import { defineCustomElement as defineIonReorder } from '@ionic/core/components/ion-reorder.js';
-import { defineCustomElement as defineIonReorderGroup } from '@ionic/core/components/ion-reorder-group.js';
-import { defineCustomElement as defineIonRippleEffect } from '@ionic/core/components/ion-ripple-effect.js';
-import { defineCustomElement as defineIonRow } from '@ionic/core/components/ion-row.js';
-import { defineCustomElement as defineIonSegmentButton } from '@ionic/core/components/ion-segment-button.js';
-import { defineCustomElement as defineIonSegmentContent } from '@ionic/core/components/ion-segment-content.js';
-import { defineCustomElement as defineIonSegmentView } from '@ionic/core/components/ion-segment-view.js';
-import { defineCustomElement as defineIonSelectModal } from '@ionic/core/components/ion-select-modal.js';
-import { defineCustomElement as defineIonSelectOption } from '@ionic/core/components/ion-select-option.js';
-import { defineCustomElement as defineIonSkeletonText } from '@ionic/core/components/ion-skeleton-text.js';
-import { defineCustomElement as defineIonSpinner } from '@ionic/core/components/ion-spinner.js';
-import { defineCustomElement as defineIonSplitPane } from '@ionic/core/components/ion-split-pane.js';
-import { defineCustomElement as defineIonTab } from '@ionic/core/components/ion-tab.js';
-import { defineCustomElement as defineIonTabBar } from '@ionic/core/components/ion-tab-bar.js';
-import { defineCustomElement as defineIonTabButton } from '@ionic/core/components/ion-tab-button.js';
-import { defineCustomElement as defineIonText } from '@ionic/core/components/ion-text.js';
-import { defineCustomElement as defineIonThumbnail } from '@ionic/core/components/ion-thumbnail.js';
-import { defineCustomElement as defineIonTitle } from '@ionic/core/components/ion-title.js';
-import { defineCustomElement as defineIonToast } from '@ionic/core/components/ion-toast.js';
-import { defineCustomElement as defineIonToolbar } from '@ionic/core/components/ion-toolbar.js';
-@ProxyCmp({
- defineCustomElementFn: defineIonAccordion,
- inputs: ['disabled', 'mode', 'readonly', 'toggleIcon', 'toggleIconSlot', 'value']
-})
-@Component({
- selector: 'ion-accordion',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['disabled', 'mode', 'readonly', 'toggleIcon', 'toggleIconSlot', 'value'],
-})
-export class IonAccordion {
- protected el: HTMLIonAccordionElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonAccordion extends Components.IonAccordion {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonAccordionGroup,
- inputs: ['animated', 'disabled', 'expand', 'mode', 'multiple', 'readonly', 'value']
-})
-@Component({
- selector: 'ion-accordion-group',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['animated', 'disabled', 'expand', 'mode', 'multiple', 'readonly', 'value'],
- outputs: ['ionChange'],
-})
-export class IonAccordionGroup {
- protected el: HTMLIonAccordionGroupElement;
- @Output() ionChange = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonAccordionGroupCustomEvent } from '@ionic/core/components';
-import type { AccordionGroupChangeEventDetail as IIonAccordionGroupAccordionGroupChangeEventDetail } from '@ionic/core/components';
-
-export declare interface IonAccordionGroup extends Components.IonAccordionGroup {
- /**
- * Emitted when the value property has changed as a result of a user action such as a click.
-
-This event will not emit when programmatically setting the `value` property.
- */
- ionChange: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonActionSheet,
- inputs: ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'subHeader', 'translucent', 'trigger'],
- methods: ['present', 'dismiss', 'onDidDismiss', 'onWillDismiss']
-})
-@Component({
- selector: 'ion-action-sheet',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'subHeader', 'translucent', 'trigger'],
- outputs: ['ionActionSheetDidPresent', 'ionActionSheetWillPresent', 'ionActionSheetWillDismiss', 'ionActionSheetDidDismiss', 'didPresent', 'willPresent', 'willDismiss', 'didDismiss'],
-})
-export class IonActionSheet {
- protected el: HTMLIonActionSheetElement;
- @Output() ionActionSheetDidPresent = new EventEmitter>();
- @Output() ionActionSheetWillPresent = new EventEmitter>();
- @Output() ionActionSheetWillDismiss = new EventEmitter>();
- @Output() ionActionSheetDidDismiss = new EventEmitter>();
- @Output() didPresent = new EventEmitter>();
- @Output() willPresent = new EventEmitter>();
- @Output() willDismiss = new EventEmitter>();
- @Output() didDismiss = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonActionSheetCustomEvent } from '@ionic/core/components';
-import type { OverlayEventDetail as IIonActionSheetOverlayEventDetail } from '@ionic/core/components';
-
-export declare interface IonActionSheet extends Components.IonActionSheet {
- /**
- * Emitted after the action sheet has presented.
- */
- ionActionSheetDidPresent: EventEmitter>;
- /**
- * Emitted before the action sheet has presented.
- */
- ionActionSheetWillPresent: EventEmitter>;
- /**
- * Emitted before the action sheet has dismissed.
- */
- ionActionSheetWillDismiss: EventEmitter>;
- /**
- * Emitted after the action sheet has dismissed.
- */
- ionActionSheetDidDismiss: EventEmitter>;
- /**
- * Emitted after the action sheet has presented.
-Shorthand for ionActionSheetWillDismiss.
- */
- didPresent: EventEmitter>;
- /**
- * Emitted before the action sheet has presented.
-Shorthand for ionActionSheetWillPresent.
- */
- willPresent: EventEmitter>;
- /**
- * Emitted before the action sheet has dismissed.
-Shorthand for ionActionSheetWillDismiss.
- */
- willDismiss: EventEmitter>;
- /**
- * Emitted after the action sheet has dismissed.
-Shorthand for ionActionSheetDidDismiss.
- */
- didDismiss: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonAlert,
- inputs: ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'inputs', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'subHeader', 'translucent', 'trigger'],
- methods: ['present', 'dismiss', 'onDidDismiss', 'onWillDismiss']
-})
-@Component({
- selector: 'ion-alert',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'inputs', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'subHeader', 'translucent', 'trigger'],
- outputs: ['ionAlertDidPresent', 'ionAlertWillPresent', 'ionAlertWillDismiss', 'ionAlertDidDismiss', 'didPresent', 'willPresent', 'willDismiss', 'didDismiss'],
-})
-export class IonAlert {
- protected el: HTMLIonAlertElement;
- @Output() ionAlertDidPresent = new EventEmitter>();
- @Output() ionAlertWillPresent = new EventEmitter>();
- @Output() ionAlertWillDismiss = new EventEmitter>();
- @Output() ionAlertDidDismiss = new EventEmitter>();
- @Output() didPresent = new EventEmitter>();
- @Output() willPresent = new EventEmitter>();
- @Output() willDismiss = new EventEmitter>();
- @Output() didDismiss = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonAlertCustomEvent } from '@ionic/core/components';
-import type { OverlayEventDetail as IIonAlertOverlayEventDetail } from '@ionic/core/components';
-
-export declare interface IonAlert extends Components.IonAlert {
- /**
- * Emitted after the alert has presented.
- */
- ionAlertDidPresent: EventEmitter>;
- /**
- * Emitted before the alert has presented.
- */
- ionAlertWillPresent: EventEmitter>;
- /**
- * Emitted before the alert has dismissed.
- */
- ionAlertWillDismiss: EventEmitter>;
- /**
- * Emitted after the alert has dismissed.
- */
- ionAlertDidDismiss: EventEmitter>;
- /**
- * Emitted after the alert has presented.
-Shorthand for ionAlertWillDismiss.
- */
- didPresent: EventEmitter>;
- /**
- * Emitted before the alert has presented.
-Shorthand for ionAlertWillPresent.
- */
- willPresent: EventEmitter>;
- /**
- * Emitted before the alert has dismissed.
-Shorthand for ionAlertWillDismiss.
- */
- willDismiss: EventEmitter>;
- /**
- * Emitted after the alert has dismissed.
-Shorthand for ionAlertDidDismiss.
- */
- didDismiss: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonApp,
- methods: ['setFocus']
-})
-@Component({
- selector: 'ion-app',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: [],
-})
-export class IonApp {
- protected el: HTMLIonAppElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonApp extends Components.IonApp {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonAvatar
-})
-@Component({
- selector: 'ion-avatar',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: [],
-})
-export class IonAvatar {
- protected el: HTMLIonAvatarElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonAvatar extends Components.IonAvatar {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonBackdrop,
- inputs: ['stopPropagation', 'tappable', 'visible']
-})
-@Component({
- selector: 'ion-backdrop',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['stopPropagation', 'tappable', 'visible'],
- outputs: ['ionBackdropTap'],
-})
-export class IonBackdrop {
- protected el: HTMLIonBackdropElement;
- @Output() ionBackdropTap = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonBackdropCustomEvent } from '@ionic/core/components';
-
-export declare interface IonBackdrop extends Components.IonBackdrop {
- /**
- * Emitted when the backdrop is tapped.
- */
- ionBackdropTap: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonBadge,
- inputs: ['color', 'mode']
-})
-@Component({
- selector: 'ion-badge',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'mode'],
-})
-export class IonBadge {
- protected el: HTMLIonBadgeElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonBadge extends Components.IonBadge {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonBreadcrumb,
- inputs: ['active', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'separator', 'target']
-})
-@Component({
- selector: 'ion-breadcrumb',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['active', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'separator', 'target'],
- outputs: ['ionFocus', 'ionBlur'],
-})
-export class IonBreadcrumb {
- protected el: HTMLIonBreadcrumbElement;
- @Output() ionFocus = new EventEmitter>();
- @Output() ionBlur = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonBreadcrumbCustomEvent } from '@ionic/core/components';
-
-export declare interface IonBreadcrumb extends Components.IonBreadcrumb {
- /**
- * Emitted when the breadcrumb has focus.
- */
- ionFocus: EventEmitter>;
- /**
- * Emitted when the breadcrumb loses focus.
- */
- ionBlur: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonBreadcrumbs,
- inputs: ['color', 'itemsAfterCollapse', 'itemsBeforeCollapse', 'maxItems', 'mode']
-})
-@Component({
- selector: 'ion-breadcrumbs',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'itemsAfterCollapse', 'itemsBeforeCollapse', 'maxItems', 'mode'],
- outputs: ['ionCollapsedClick'],
-})
-export class IonBreadcrumbs {
- protected el: HTMLIonBreadcrumbsElement;
- @Output() ionCollapsedClick = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonBreadcrumbsCustomEvent } from '@ionic/core/components';
-import type { BreadcrumbCollapsedClickEventDetail as IIonBreadcrumbsBreadcrumbCollapsedClickEventDetail } from '@ionic/core/components';
-
-export declare interface IonBreadcrumbs extends Components.IonBreadcrumbs {
- /**
- * Emitted when the collapsed indicator is clicked on.
- */
- ionCollapsedClick: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonButton,
- inputs: ['buttonType', 'color', 'disabled', 'download', 'expand', 'fill', 'form', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'shape', 'size', 'strong', 'target', 'type']
-})
-@Component({
- selector: 'ion-button',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['buttonType', 'color', 'disabled', 'download', 'expand', 'fill', 'form', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'shape', 'size', 'strong', 'target', 'type'],
- outputs: ['ionFocus', 'ionBlur'],
-})
-export class IonButton {
- protected el: HTMLIonButtonElement;
- @Output() ionFocus = new EventEmitter>();
- @Output() ionBlur = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonButtonCustomEvent } from '@ionic/core/components';
-
-export declare interface IonButton extends Components.IonButton {
- /**
- * Emitted when the button has focus.
- */
- ionFocus: EventEmitter>;
- /**
- * Emitted when the button loses focus.
- */
- ionBlur: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonButtons,
- inputs: ['collapse']
-})
-@Component({
- selector: 'ion-buttons',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['collapse'],
-})
-export class IonButtons {
- protected el: HTMLIonButtonsElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonButtons extends Components.IonButtons {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonCard,
- inputs: ['button', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type']
-})
-@Component({
- selector: 'ion-card',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['button', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type'],
-})
-export class IonCard {
- protected el: HTMLIonCardElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonCard extends Components.IonCard {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonCardContent,
- inputs: ['mode']
-})
-@Component({
- selector: 'ion-card-content',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['mode'],
-})
-export class IonCardContent {
- protected el: HTMLIonCardContentElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonCardContent extends Components.IonCardContent {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonCardHeader,
- inputs: ['color', 'mode', 'translucent']
-})
-@Component({
- selector: 'ion-card-header',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'mode', 'translucent'],
-})
-export class IonCardHeader {
- protected el: HTMLIonCardHeaderElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonCardHeader extends Components.IonCardHeader {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonCardSubtitle,
- inputs: ['color', 'mode']
-})
-@Component({
- selector: 'ion-card-subtitle',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'mode'],
-})
-export class IonCardSubtitle {
- protected el: HTMLIonCardSubtitleElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonCardSubtitle extends Components.IonCardSubtitle {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonCardTitle,
- inputs: ['color', 'mode']
-})
-@Component({
- selector: 'ion-card-title',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'mode'],
-})
-export class IonCardTitle {
- protected el: HTMLIonCardTitleElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonCardTitle extends Components.IonCardTitle {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonChip,
- inputs: ['color', 'disabled', 'mode', 'outline']
-})
-@Component({
- selector: 'ion-chip',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'disabled', 'mode', 'outline'],
-})
-export class IonChip {
- protected el: HTMLIonChipElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonChip extends Components.IonChip {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonCol,
- inputs: ['offset', 'offsetLg', 'offsetMd', 'offsetSm', 'offsetXl', 'offsetXs', 'pull', 'pullLg', 'pullMd', 'pullSm', 'pullXl', 'pullXs', 'push', 'pushLg', 'pushMd', 'pushSm', 'pushXl', 'pushXs', 'size', 'sizeLg', 'sizeMd', 'sizeSm', 'sizeXl', 'sizeXs']
-})
-@Component({
- selector: 'ion-col',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['offset', 'offsetLg', 'offsetMd', 'offsetSm', 'offsetXl', 'offsetXs', 'pull', 'pullLg', 'pullMd', 'pullSm', 'pullXl', 'pullXs', 'push', 'pushLg', 'pushMd', 'pushSm', 'pushXl', 'pushXs', 'size', 'sizeLg', 'sizeMd', 'sizeSm', 'sizeXl', 'sizeXs'],
-})
-export class IonCol {
- protected el: HTMLIonColElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonCol extends Components.IonCol {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonContent,
- inputs: ['color', 'fixedSlotPlacement', 'forceOverscroll', 'fullscreen', 'scrollEvents', 'scrollX', 'scrollY'],
- methods: ['getScrollElement', 'scrollToTop', 'scrollToBottom', 'scrollByPoint', 'scrollToPoint']
-})
-@Component({
- selector: 'ion-content',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'fixedSlotPlacement', 'forceOverscroll', 'fullscreen', 'scrollEvents', 'scrollX', 'scrollY'],
- outputs: ['ionScrollStart', 'ionScroll', 'ionScrollEnd'],
-})
-export class IonContent {
- protected el: HTMLIonContentElement;
- @Output() ionScrollStart = new EventEmitter>();
- @Output() ionScroll = new EventEmitter>();
- @Output() ionScrollEnd = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonContentCustomEvent } from '@ionic/core/components';
-import type { ScrollBaseDetail as IIonContentScrollBaseDetail } from '@ionic/core/components';
-import type { ScrollDetail as IIonContentScrollDetail } from '@ionic/core/components';
-
-export declare interface IonContent extends Components.IonContent {
- /**
- * Emitted when the scroll has started. This event is disabled by default.
-Set `scrollEvents` to `true` to enable.
- */
- ionScrollStart: EventEmitter>;
- /**
- * Emitted while scrolling. This event is disabled by default.
-Set `scrollEvents` to `true` to enable.
- */
- ionScroll: EventEmitter>;
- /**
- * Emitted when the scroll has ended. This event is disabled by default.
-Set `scrollEvents` to `true` to enable.
- */
- ionScrollEnd: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonDatetimeButton,
- inputs: ['color', 'datetime', 'disabled', 'mode']
-})
-@Component({
- selector: 'ion-datetime-button',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'datetime', 'disabled', 'mode'],
-})
-export class IonDatetimeButton {
- protected el: HTMLIonDatetimeButtonElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonDatetimeButton extends Components.IonDatetimeButton {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonFab,
- inputs: ['activated', 'edge', 'horizontal', 'vertical'],
- methods: ['close']
-})
-@Component({
- selector: 'ion-fab',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['activated', 'edge', 'horizontal', 'vertical'],
-})
-export class IonFab {
- protected el: HTMLIonFabElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonFab extends Components.IonFab {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonFabButton,
- inputs: ['activated', 'closeIcon', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'show', 'size', 'target', 'translucent', 'type']
-})
-@Component({
- selector: 'ion-fab-button',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['activated', 'closeIcon', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'show', 'size', 'target', 'translucent', 'type'],
- outputs: ['ionFocus', 'ionBlur'],
-})
-export class IonFabButton {
- protected el: HTMLIonFabButtonElement;
- @Output() ionFocus = new EventEmitter>();
- @Output() ionBlur = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonFabButtonCustomEvent } from '@ionic/core/components';
-
-export declare interface IonFabButton extends Components.IonFabButton {
- /**
- * Emitted when the button has focus.
- */
- ionFocus: EventEmitter>;
- /**
- * Emitted when the button loses focus.
- */
- ionBlur: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonFabList,
- inputs: ['activated', 'side']
-})
-@Component({
- selector: 'ion-fab-list',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['activated', 'side'],
-})
-export class IonFabList {
- protected el: HTMLIonFabListElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonFabList extends Components.IonFabList {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonFooter,
- inputs: ['collapse', 'mode', 'translucent']
-})
-@Component({
- selector: 'ion-footer',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['collapse', 'mode', 'translucent'],
-})
-export class IonFooter {
- protected el: HTMLIonFooterElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonFooter extends Components.IonFooter {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonGrid,
- inputs: ['fixed']
-})
-@Component({
- selector: 'ion-grid',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['fixed'],
-})
-export class IonGrid {
- protected el: HTMLIonGridElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonGrid extends Components.IonGrid {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonHeader,
- inputs: ['collapse', 'mode', 'translucent']
-})
-@Component({
- selector: 'ion-header',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['collapse', 'mode', 'translucent'],
-})
-export class IonHeader {
- protected el: HTMLIonHeaderElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonHeader extends Components.IonHeader {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonImg,
- inputs: ['alt', 'src']
-})
-@Component({
- selector: 'ion-img',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['alt', 'src'],
- outputs: ['ionImgWillLoad', 'ionImgDidLoad', 'ionError'],
-})
-export class IonImg {
- protected el: HTMLIonImgElement;
- @Output() ionImgWillLoad = new EventEmitter>();
- @Output() ionImgDidLoad = new EventEmitter>();
- @Output() ionError = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonImgCustomEvent } from '@ionic/core/components';
-
-export declare interface IonImg extends Components.IonImg {
- /**
- * Emitted when the img src has been set
- */
- ionImgWillLoad: EventEmitter>;
- /**
- * Emitted when the image has finished loading
- */
- ionImgDidLoad: EventEmitter>;
- /**
- * Emitted when the img fails to load
- */
- ionError: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonInfiniteScroll,
- inputs: ['disabled', 'position', 'threshold'],
- methods: ['complete']
-})
-@Component({
- selector: 'ion-infinite-scroll',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['disabled', 'position', 'threshold'],
- outputs: ['ionInfinite'],
-})
-export class IonInfiniteScroll {
- protected el: HTMLIonInfiniteScrollElement;
- @Output() ionInfinite = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonInfiniteScrollCustomEvent } from '@ionic/core/components';
-
-export declare interface IonInfiniteScroll extends Components.IonInfiniteScroll {
- /**
- * Emitted when the scroll reaches
-the threshold distance. From within your infinite handler,
-you must call the infinite scroll's `complete()` method when
-your async operation has completed.
- */
- ionInfinite: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonInfiniteScrollContent,
- inputs: ['loadingSpinner', 'loadingText']
-})
-@Component({
- selector: 'ion-infinite-scroll-content',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['loadingSpinner', 'loadingText'],
-})
-export class IonInfiniteScrollContent {
- protected el: HTMLIonInfiniteScrollContentElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonInfiniteScrollContent extends Components.IonInfiniteScrollContent {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonInputPasswordToggle,
- inputs: ['color', 'hideIcon', 'mode', 'showIcon']
-})
-@Component({
- selector: 'ion-input-password-toggle',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'hideIcon', 'mode', 'showIcon'],
-})
-export class IonInputPasswordToggle {
- protected el: HTMLIonInputPasswordToggleElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonInputPasswordToggle extends Components.IonInputPasswordToggle {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonItem,
- inputs: ['button', 'color', 'detail', 'detailIcon', 'disabled', 'download', 'href', 'lines', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type']
-})
-@Component({
- selector: 'ion-item',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['button', 'color', 'detail', 'detailIcon', 'disabled', 'download', 'href', 'lines', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type'],
-})
-export class IonItem {
- protected el: HTMLIonItemElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonItem extends Components.IonItem {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonItemDivider,
- inputs: ['color', 'mode', 'sticky']
-})
-@Component({
- selector: 'ion-item-divider',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'mode', 'sticky'],
-})
-export class IonItemDivider {
- protected el: HTMLIonItemDividerElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonItemDivider extends Components.IonItemDivider {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonItemGroup
-})
-@Component({
- selector: 'ion-item-group',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: [],
-})
-export class IonItemGroup {
- protected el: HTMLIonItemGroupElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonItemGroup extends Components.IonItemGroup {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonItemOption,
- inputs: ['color', 'disabled', 'download', 'expandable', 'href', 'mode', 'rel', 'target', 'type']
-})
-@Component({
- selector: 'ion-item-option',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'disabled', 'download', 'expandable', 'href', 'mode', 'rel', 'target', 'type'],
-})
-export class IonItemOption {
- protected el: HTMLIonItemOptionElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonItemOption extends Components.IonItemOption {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonItemOptions,
- inputs: ['side']
-})
-@Component({
- selector: 'ion-item-options',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['side'],
- outputs: ['ionSwipe'],
-})
-export class IonItemOptions {
- protected el: HTMLIonItemOptionsElement;
- @Output() ionSwipe = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonItemOptionsCustomEvent } from '@ionic/core/components';
-
-export declare interface IonItemOptions extends Components.IonItemOptions {
- /**
- * Emitted when the item has been fully swiped.
- */
- ionSwipe: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonItemSliding,
- inputs: ['disabled'],
- methods: ['getOpenAmount', 'getSlidingRatio', 'open', 'close', 'closeOpened']
-})
-@Component({
- selector: 'ion-item-sliding',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['disabled'],
- outputs: ['ionDrag'],
-})
-export class IonItemSliding {
- protected el: HTMLIonItemSlidingElement;
- @Output() ionDrag = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonItemSlidingCustomEvent } from '@ionic/core/components';
-
-export declare interface IonItemSliding extends Components.IonItemSliding {
- /**
- * Emitted when the sliding position changes.
- */
- ionDrag: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonLabel,
- inputs: ['color', 'mode', 'position']
-})
-@Component({
- selector: 'ion-label',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'mode', 'position'],
-})
-export class IonLabel {
- protected el: HTMLIonLabelElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonLabel extends Components.IonLabel {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonList,
- inputs: ['inset', 'lines', 'mode'],
- methods: ['closeSlidingItems']
-})
-@Component({
- selector: 'ion-list',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['inset', 'lines', 'mode'],
-})
-export class IonList {
- protected el: HTMLIonListElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonList extends Components.IonList {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonListHeader,
- inputs: ['color', 'lines', 'mode']
-})
-@Component({
- selector: 'ion-list-header',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'lines', 'mode'],
-})
-export class IonListHeader {
- protected el: HTMLIonListHeaderElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonListHeader extends Components.IonListHeader {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonLoading,
- inputs: ['animated', 'backdropDismiss', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'showBackdrop', 'spinner', 'translucent', 'trigger'],
- methods: ['present', 'dismiss', 'onDidDismiss', 'onWillDismiss']
-})
-@Component({
- selector: 'ion-loading',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['animated', 'backdropDismiss', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'showBackdrop', 'spinner', 'translucent', 'trigger'],
- outputs: ['ionLoadingDidPresent', 'ionLoadingWillPresent', 'ionLoadingWillDismiss', 'ionLoadingDidDismiss', 'didPresent', 'willPresent', 'willDismiss', 'didDismiss'],
-})
-export class IonLoading {
- protected el: HTMLIonLoadingElement;
- @Output() ionLoadingDidPresent = new EventEmitter>();
- @Output() ionLoadingWillPresent = new EventEmitter>();
- @Output() ionLoadingWillDismiss = new EventEmitter>();
- @Output() ionLoadingDidDismiss = new EventEmitter>();
- @Output() didPresent = new EventEmitter>();
- @Output() willPresent = new EventEmitter>();
- @Output() willDismiss = new EventEmitter>();
- @Output() didDismiss = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonLoadingCustomEvent } from '@ionic/core/components';
-import type { OverlayEventDetail as IIonLoadingOverlayEventDetail } from '@ionic/core/components';
-
-export declare interface IonLoading extends Components.IonLoading {
- /**
- * Emitted after the loading has presented.
- */
- ionLoadingDidPresent: EventEmitter>;
- /**
- * Emitted before the loading has presented.
- */
- ionLoadingWillPresent: EventEmitter>;
- /**
- * Emitted before the loading has dismissed.
- */
- ionLoadingWillDismiss: EventEmitter>;
- /**
- * Emitted after the loading has dismissed.
- */
- ionLoadingDidDismiss: EventEmitter>;
- /**
- * Emitted after the loading indicator has presented.
-Shorthand for ionLoadingWillDismiss.
- */
- didPresent: EventEmitter>;
- /**
- * Emitted before the loading indicator has presented.
-Shorthand for ionLoadingWillPresent.
- */
- willPresent: EventEmitter>;
- /**
- * Emitted before the loading indicator has dismissed.
-Shorthand for ionLoadingWillDismiss.
- */
- willDismiss: EventEmitter>;
- /**
- * Emitted after the loading indicator has dismissed.
-Shorthand for ionLoadingDidDismiss.
- */
- didDismiss: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonMenu,
- inputs: ['contentId', 'disabled', 'maxEdgeStart', 'menuId', 'side', 'swipeGesture', 'type'],
- methods: ['isOpen', 'isActive', 'open', 'close', 'toggle', 'setOpen']
-})
-@Component({
- selector: 'ion-menu',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['contentId', 'disabled', 'maxEdgeStart', 'menuId', 'side', 'swipeGesture', 'type'],
- outputs: ['ionWillOpen', 'ionWillClose', 'ionDidOpen', 'ionDidClose'],
-})
-export class IonMenu {
- protected el: HTMLIonMenuElement;
- @Output() ionWillOpen = new EventEmitter>();
- @Output() ionWillClose = new EventEmitter>();
- @Output() ionDidOpen = new EventEmitter>();
- @Output() ionDidClose = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonMenuCustomEvent } from '@ionic/core/components';
-import type { MenuCloseEventDetail as IIonMenuMenuCloseEventDetail } from '@ionic/core/components';
-
-export declare interface IonMenu extends Components.IonMenu {
- /**
- * Emitted when the menu is about to be opened.
- */
- ionWillOpen: EventEmitter>;
- /**
- * Emitted when the menu is about to be closed.
- */
- ionWillClose: EventEmitter>;
- /**
- * Emitted when the menu is open.
- */
- ionDidOpen: EventEmitter>;
- /**
- * Emitted when the menu is closed.
- */
- ionDidClose: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonMenuButton,
- inputs: ['autoHide', 'color', 'disabled', 'menu', 'mode', 'type']
-})
-@Component({
- selector: 'ion-menu-button',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['autoHide', 'color', 'disabled', 'menu', 'mode', 'type'],
-})
-export class IonMenuButton {
- protected el: HTMLIonMenuButtonElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonMenuButton extends Components.IonMenuButton {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonMenuToggle,
- inputs: ['autoHide', 'menu']
-})
-@Component({
- selector: 'ion-menu-toggle',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['autoHide', 'menu'],
-})
-export class IonMenuToggle {
- protected el: HTMLIonMenuToggleElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonMenuToggle extends Components.IonMenuToggle {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonNavLink,
- inputs: ['component', 'componentProps', 'routerAnimation', 'routerDirection']
-})
-@Component({
- selector: 'ion-nav-link',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['component', 'componentProps', 'routerAnimation', 'routerDirection'],
-})
-export class IonNavLink {
- protected el: HTMLIonNavLinkElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonNavLink extends Components.IonNavLink {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonNote,
- inputs: ['color', 'mode']
-})
-@Component({
- selector: 'ion-note',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'mode'],
-})
-export class IonNote {
- protected el: HTMLIonNoteElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonNote extends Components.IonNote {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonPicker,
- inputs: ['mode']
-})
-@Component({
- selector: 'ion-picker',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['mode'],
-})
-export class IonPicker {
- protected el: HTMLIonPickerElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonPicker extends Components.IonPicker {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonPickerColumn,
- inputs: ['color', 'disabled', 'mode', 'value'],
- methods: ['setFocus']
-})
-@Component({
- selector: 'ion-picker-column',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'disabled', 'mode', 'value'],
- outputs: ['ionChange'],
-})
-export class IonPickerColumn {
- protected el: HTMLIonPickerColumnElement;
- @Output() ionChange = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonPickerColumnCustomEvent } from '@ionic/core/components';
-import type { PickerColumnChangeEventDetail as IIonPickerColumnPickerColumnChangeEventDetail } from '@ionic/core/components';
-
-export declare interface IonPickerColumn extends Components.IonPickerColumn {
- /**
- * Emitted when the value has changed.
-
-This event will not emit when programmatically setting the `value` property.
- */
- ionChange: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonPickerColumnOption,
- inputs: ['color', 'disabled', 'value']
-})
-@Component({
- selector: 'ion-picker-column-option',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['color', 'disabled', 'value'],
-})
-export class IonPickerColumnOption {
- protected el: HTMLIonPickerColumnOptionElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonPickerColumnOption extends Components.IonPickerColumnOption {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonProgressBar,
- inputs: ['buffer', 'color', 'mode', 'reversed', 'type', 'value']
-})
-@Component({
- selector: 'ion-progress-bar',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['buffer', 'color', 'mode', 'reversed', 'type', 'value'],
-})
-export class IonProgressBar {
- protected el: HTMLIonProgressBarElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonProgressBar extends Components.IonProgressBar {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonRadio,
- inputs: ['alignment', 'color', 'disabled', 'justify', 'labelPlacement', 'mode', 'name', 'value']
-})
-@Component({
- selector: 'ion-radio',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['alignment', 'color', 'disabled', 'justify', 'labelPlacement', 'mode', 'name', 'value'],
- outputs: ['ionFocus', 'ionBlur'],
-})
-export class IonRadio {
- protected el: HTMLIonRadioElement;
- @Output() ionFocus = new EventEmitter>();
- @Output() ionBlur = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonRadioCustomEvent } from '@ionic/core/components';
-
-export declare interface IonRadio extends Components.IonRadio {
- /**
- * Emitted when the radio button has focus.
- */
- ionFocus: EventEmitter>;
- /**
- * Emitted when the radio button loses focus.
- */
- ionBlur: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonRefresher,
- inputs: ['closeDuration', 'disabled', 'mode', 'pullFactor', 'pullMax', 'pullMin', 'snapbackDuration'],
- methods: ['complete', 'cancel', 'getProgress']
-})
-@Component({
- selector: 'ion-refresher',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['closeDuration', 'disabled', 'mode', 'pullFactor', 'pullMax', 'pullMin', 'snapbackDuration'],
- outputs: ['ionRefresh', 'ionPull', 'ionStart', 'ionPullStart', 'ionPullEnd'],
-})
-export class IonRefresher {
- protected el: HTMLIonRefresherElement;
- @Output() ionRefresh = new EventEmitter>();
- @Output() ionPull = new EventEmitter>();
- @Output() ionStart = new EventEmitter>();
- @Output() ionPullStart = new EventEmitter>();
- @Output() ionPullEnd = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonRefresherCustomEvent } from '@ionic/core/components';
-import type { RefresherEventDetail as IIonRefresherRefresherEventDetail } from '@ionic/core/components';
-import type { RefresherPullEndEventDetail as IIonRefresherRefresherPullEndEventDetail } from '@ionic/core/components';
-
-export declare interface IonRefresher extends Components.IonRefresher {
- /**
- * Emitted when the user lets go of the content and has pulled down
-further than the `pullMin` or pulls the content down and exceeds the pullMax.
-Updates the refresher state to `refreshing`. The `complete()` method should be
-called when the async operation has completed.
- */
- ionRefresh: EventEmitter>;
- /**
- * Emitted while the user is pulling down the content and exposing the refresher.
- */
- ionPull: EventEmitter>;
- /**
- * Emitted when the user begins to start pulling down. @deprecated Use `ionPullStart` instead.
- */
- ionStart: EventEmitter>;
- /**
- * Emitted when the user begins to start pulling down.
- */
- ionPullStart: EventEmitter>;
- /**
- * Emitted when the refresher has returned to the inactive state
-after a pull gesture. This fires whether the refresh completed
-successfully or was canceled.
- */
- ionPullEnd: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonRefresherContent,
- inputs: ['pullingIcon', 'pullingText', 'refreshingSpinner', 'refreshingText']
-})
-@Component({
- selector: 'ion-refresher-content',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['pullingIcon', 'pullingText', 'refreshingSpinner', 'refreshingText'],
-})
-export class IonRefresherContent {
- protected el: HTMLIonRefresherContentElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonRefresherContent extends Components.IonRefresherContent {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonReorder
-})
-@Component({
- selector: 'ion-reorder',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: [],
-})
-export class IonReorder {
- protected el: HTMLIonReorderElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonReorder extends Components.IonReorder {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonReorderGroup,
- inputs: ['disabled'],
- methods: ['complete']
-})
-@Component({
- selector: 'ion-reorder-group',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['disabled'],
- outputs: ['ionItemReorder', 'ionReorderStart', 'ionReorderMove', 'ionReorderEnd'],
-})
-export class IonReorderGroup {
- protected el: HTMLIonReorderGroupElement;
- @Output() ionItemReorder = new EventEmitter>();
- @Output() ionReorderStart = new EventEmitter>();
- @Output() ionReorderMove = new EventEmitter>();
- @Output() ionReorderEnd = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonReorderGroupCustomEvent } from '@ionic/core/components';
-import type { ItemReorderEventDetail as IIonReorderGroupItemReorderEventDetail } from '@ionic/core/components';
-import type { ReorderMoveEventDetail as IIonReorderGroupReorderMoveEventDetail } from '@ionic/core/components';
-import type { ReorderEndEventDetail as IIonReorderGroupReorderEndEventDetail } from '@ionic/core/components';
-
-export declare interface IonReorderGroup extends Components.IonReorderGroup {
- /**
- * Event that needs to be listened to in order to complete the reorder action. @deprecated Use `ionReorderEnd` instead. If you are accessing
-`event.detail.from` or `event.detail.to` and relying on them
-being different you should now add checks as they are always emitted
-in `ionReorderEnd`, even when they are the same.
- */
- ionItemReorder: EventEmitter>;
- /**
- * Event that is emitted when the reorder gesture starts.
- */
- ionReorderStart: EventEmitter>;
- /**
- * Event that is emitted as the reorder gesture moves.
- */
- ionReorderMove: EventEmitter>;
- /**
- * Event that is emitted when the reorder gesture ends.
-The from and to properties are always available, regardless of
-if the reorder gesture moved the item. If the item did not change
-from its start position, the from and to properties will be the same.
-Once the event has been emitted, the `complete()` method then needs
-to be called in order to finalize the reorder action.
- */
- ionReorderEnd: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonRippleEffect,
- inputs: ['type'],
- methods: ['addRipple']
-})
-@Component({
- selector: 'ion-ripple-effect',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['type'],
-})
-export class IonRippleEffect {
- protected el: HTMLIonRippleEffectElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonRippleEffect extends Components.IonRippleEffect {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonRow
-})
-@Component({
- selector: 'ion-row',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: [],
-})
-export class IonRow {
- protected el: HTMLIonRowElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonRow extends Components.IonRow {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonSegmentButton,
- inputs: ['contentId', 'disabled', 'layout', 'mode', 'type', 'value']
-})
-@Component({
- selector: 'ion-segment-button',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['contentId', 'disabled', 'layout', 'mode', 'type', 'value'],
-})
-export class IonSegmentButton {
- protected el: HTMLIonSegmentButtonElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonSegmentButton extends Components.IonSegmentButton {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonSegmentContent
-})
-@Component({
- selector: 'ion-segment-content',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: [],
-})
-export class IonSegmentContent {
- protected el: HTMLIonSegmentContentElement;
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-export declare interface IonSegmentContent extends Components.IonSegmentContent {}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonSegmentView,
- inputs: ['disabled', 'swipeGesture']
-})
-@Component({
- selector: 'ion-segment-view',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '',
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
- inputs: ['disabled', 'swipeGesture'],
- outputs: ['ionSegmentViewScroll'],
-})
-export class IonSegmentView {
- protected el: HTMLIonSegmentViewElement;
- @Output() ionSegmentViewScroll = new EventEmitter>();
- constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
- c.detach();
- this.el = r.nativeElement;
- }
-}
-
-
-import type { IonSegmentViewCustomEvent } from '@ionic/core/components';
-import type { SegmentViewScrollEvent as IIonSegmentViewSegmentViewScrollEvent } from '@ionic/core/components';
-
-export declare interface IonSegmentView extends Components.IonSegmentView {
- /**
- * Emitted when the segment view is scrolled.
- */
- ionSegmentViewScroll: EventEmitter>;
-}
-
-
-@ProxyCmp({
- defineCustomElementFn: defineIonSelectModal,
- inputs: ['cancelText', 'header', 'multiple', 'options']
-})
-@Component({
- selector: 'ion-select-modal',
- changeDetection: ChangeDetectionStrategy.OnPush,
- template: '