@solar-angular/ui-ionic 19.1.0 → 19.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,8 +1,26 @@
|
|
|
1
|
+
import { ImpactStyle, Haptics } from '@capacitor/haptics';
|
|
1
2
|
import * as i0 from '@angular/core';
|
|
2
3
|
import { inject, Injectable } from '@angular/core';
|
|
3
4
|
import { LoadingController, ToastController, AlertController, ActionSheetController } from '@ionic/angular/standalone';
|
|
4
5
|
import { finalize } from 'rxjs';
|
|
5
6
|
|
|
7
|
+
function HapticsImpact(style = ImpactStyle.Light) {
|
|
8
|
+
return function (target, _context) {
|
|
9
|
+
return function (...args) {
|
|
10
|
+
Haptics.impact({ style });
|
|
11
|
+
return target.apply(this, args);
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function HapticsNotification(type) {
|
|
16
|
+
return function (target, _context) {
|
|
17
|
+
return function (...args) {
|
|
18
|
+
Haptics.notification({ type });
|
|
19
|
+
return target.apply(this, args);
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
|
|
6
24
|
class OverlayController {
|
|
7
25
|
constructor() {
|
|
8
26
|
this.loadingCtrl = inject(LoadingController);
|
|
@@ -85,10 +103,10 @@ class OverlayController {
|
|
|
85
103
|
return observable.pipe(finalize(async () => (await loading).dismiss()));
|
|
86
104
|
};
|
|
87
105
|
}
|
|
88
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
89
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
106
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: OverlayController, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
107
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: OverlayController, providedIn: 'root' }); }
|
|
90
108
|
}
|
|
91
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
109
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: OverlayController, decorators: [{
|
|
92
110
|
type: Injectable,
|
|
93
111
|
args: [{
|
|
94
112
|
providedIn: 'root'
|
|
@@ -139,5 +157,5 @@ function alertButton(text, handler) {
|
|
|
139
157
|
* Generated bundle index. Do not edit.
|
|
140
158
|
*/
|
|
141
159
|
|
|
142
|
-
export { OverlayController, actionSheetButton, actionSheetCancelButton, actionSheetDestructiveButton, alertButton, alertCancelButton, alertDestructiveButton };
|
|
160
|
+
export { HapticsImpact, HapticsNotification, OverlayController, actionSheetButton, actionSheetCancelButton, actionSheetDestructiveButton, alertButton, alertCancelButton, alertDestructiveButton };
|
|
143
161
|
//# sourceMappingURL=solar-angular-ui-ionic.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solar-angular-ui-ionic.mjs","sources":["../../../packages/ui-ionic/src/overlay.controller.ts","../../../packages/ui-ionic/src/solar-angular-ui-ionic.ts"],"sourcesContent":["import { inject, Injectable } from '@angular/core';\nimport { ActionSheetButton, ActionSheetController, ActionSheetOptions, AlertButton, AlertController, AlertOptions, LoadingController, ToastController } from '@ionic/angular/standalone';\nimport { finalize, Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OverlayController {\n private readonly loadingCtrl = inject(LoadingController);\n private readonly toastCtrl = inject(ToastController);\n private readonly alertCtrl = inject(AlertController);\n private readonly actionSheetCtrl = inject(ActionSheetController);\n\n readonly toast = {\n info: async (message: string) => {\n const toast = await this.toastCtrl.create({\n message,\n color: 'dark',\n icon: 'information-circle',\n translucent: true\n });\n await toast.present();\n return toast;\n },\n success: async (message: string) => {\n const toast = await this.toastCtrl.create({\n message,\n color: 'dark',\n icon: 'checkmark-circle',\n translucent: true\n });\n await toast.present();\n return toast;\n },\n warning: async (message: string) => {\n const toast = await this.toastCtrl.create({\n message,\n color: 'dark',\n icon: 'alert-circle',\n translucent: true\n });\n await toast.present();\n return toast;\n },\n error: async (message: string) => {\n const toast = await this.toastCtrl.create({\n message,\n color: 'dark',\n icon: 'close-circle',\n translucent: true\n });\n await toast.present();\n return toast;\n }\n };\n\n async alert(header: string, message: string, options: AlertOptions) {\n const alert = await this.alertCtrl.create({\n header,\n message,\n translucent: true,\n ...options\n });\n await alert.present();\n return alert;\n }\n\n async actionSheet(header: string, options: ActionSheetOptions) {\n const actionSheet = await this.actionSheetCtrl.create({\n header: header || undefined,\n translucent: true,\n ...options\n });\n await actionSheet.present();\n return actionSheet;\n }\n\n async loading(message = '正在加载') {\n const loading = await this.loadingCtrl.create({\n message,\n cssClass: 'ion-loading'\n });\n await loading.present();\n return loading;\n }\n\n withLoading<T>(message?: string) {\n return (observable: Observable<T>) => {\n const loading = this.loading(message);\n return observable.pipe(\n finalize(async () => (await loading).dismiss())\n );\n };\n }\n\n}\n\nexport function actionSheetCancelButton(text = '取消', handler?: ActionSheetButton['handler']): ActionSheetButton {\n return {\n text,\n role: 'cancel',\n handler\n };\n}\n\nexport function actionSheetDestructiveButton(text: string, handler?: ActionSheetButton['handler']): ActionSheetButton {\n return {\n text,\n role: 'destructive',\n handler\n };\n}\n\nexport function actionSheetButton(text: string, handler?: ActionSheetButton['handler']): ActionSheetButton {\n return {\n text,\n handler\n };\n}\n\nexport function alertCancelButton(text = '取消', handler?: AlertButton['handler']): AlertButton {\n return {\n text,\n role: 'cancel',\n handler\n };\n}\n\nexport function alertDestructiveButton(text: string, handler: AlertButton['handler']): AlertButton {\n return {\n text,\n role: 'destructive',\n handler\n };\n}\n\nexport function alertButton(text: string, handler: AlertButton['handler']): AlertButton {\n return {\n text,\n handler\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"solar-angular-ui-ionic.mjs","sources":["../../../packages/ui-ionic/src/haptics.ts","../../../packages/ui-ionic/src/overlay.controller.ts","../../../packages/ui-ionic/src/solar-angular-ui-ionic.ts"],"sourcesContent":["import { Haptics, ImpactStyle, type NotificationType } from '@capacitor/haptics';\n\nexport function HapticsImpact(style: ImpactStyle = ImpactStyle.Light) {\n return function <This, Args extends any[], Return>(\n target: (this: This, ...args: Args) => Return,\n _context: ClassMethodDecoratorContext<This, (this: This, ...args: Args) => Return>\n ) {\n return function (this: This, ...args: Args): Return {\n Haptics.impact({ style });\n return target.apply(this, args);\n };\n };\n}\n\nexport function HapticsNotification(type: NotificationType) {\n return function <This, Args extends any[], Return>(\n target: (this: This, ...args: Args) => Return,\n _context: ClassMethodDecoratorContext<This, (this: This, ...args: Args) => Return>\n ) {\n return function (this: This, ...args: Args): Return {\n Haptics.notification({ type });\n return target.apply(this, args);\n };\n };\n}\n","import { inject, Injectable } from '@angular/core';\nimport { ActionSheetButton, ActionSheetController, ActionSheetOptions, AlertButton, AlertController, AlertOptions, LoadingController, ToastController } from '@ionic/angular/standalone';\nimport { finalize, Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OverlayController {\n private readonly loadingCtrl = inject(LoadingController);\n private readonly toastCtrl = inject(ToastController);\n private readonly alertCtrl = inject(AlertController);\n private readonly actionSheetCtrl = inject(ActionSheetController);\n\n readonly toast = {\n info: async (message: string) => {\n const toast = await this.toastCtrl.create({\n message,\n color: 'dark',\n icon: 'information-circle',\n translucent: true\n });\n await toast.present();\n return toast;\n },\n success: async (message: string) => {\n const toast = await this.toastCtrl.create({\n message,\n color: 'dark',\n icon: 'checkmark-circle',\n translucent: true\n });\n await toast.present();\n return toast;\n },\n warning: async (message: string) => {\n const toast = await this.toastCtrl.create({\n message,\n color: 'dark',\n icon: 'alert-circle',\n translucent: true\n });\n await toast.present();\n return toast;\n },\n error: async (message: string) => {\n const toast = await this.toastCtrl.create({\n message,\n color: 'dark',\n icon: 'close-circle',\n translucent: true\n });\n await toast.present();\n return toast;\n }\n };\n\n async alert(header: string, message: string, options: AlertOptions) {\n const alert = await this.alertCtrl.create({\n header,\n message,\n translucent: true,\n ...options\n });\n await alert.present();\n return alert;\n }\n\n async actionSheet(header: string, options: ActionSheetOptions) {\n const actionSheet = await this.actionSheetCtrl.create({\n header: header || undefined,\n translucent: true,\n ...options\n });\n await actionSheet.present();\n return actionSheet;\n }\n\n async loading(message = '正在加载') {\n const loading = await this.loadingCtrl.create({\n message,\n cssClass: 'ion-loading'\n });\n await loading.present();\n return loading;\n }\n\n withLoading<T>(message?: string) {\n return (observable: Observable<T>) => {\n const loading = this.loading(message);\n return observable.pipe(\n finalize(async () => (await loading).dismiss())\n );\n };\n }\n\n}\n\nexport function actionSheetCancelButton(text = '取消', handler?: ActionSheetButton['handler']): ActionSheetButton {\n return {\n text,\n role: 'cancel',\n handler\n };\n}\n\nexport function actionSheetDestructiveButton(text: string, handler?: ActionSheetButton['handler']): ActionSheetButton {\n return {\n text,\n role: 'destructive',\n handler\n };\n}\n\nexport function actionSheetButton(text: string, handler?: ActionSheetButton['handler']): ActionSheetButton {\n return {\n text,\n handler\n };\n}\n\nexport function alertCancelButton(text = '取消', handler?: AlertButton['handler']): AlertButton {\n return {\n text,\n role: 'cancel',\n handler\n };\n}\n\nexport function alertDestructiveButton(text: string, handler: AlertButton['handler']): AlertButton {\n return {\n text,\n role: 'destructive',\n handler\n };\n}\n\nexport function alertButton(text: string, handler: AlertButton['handler']): AlertButton {\n return {\n text,\n handler\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/haptics.d.ts
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ImpactStyle, type NotificationType } from '@capacitor/haptics';
|
|
2
|
+
export declare function HapticsImpact(style?: ImpactStyle): <This, Args extends any[], Return>(target: (this: This, ...args: Args) => Return, _context: ClassMethodDecoratorContext<This, (this: This, ...args: Args) => Return>) => (this: This, ...args: Args) => Return;
|
|
3
|
+
export declare function HapticsNotification(type: NotificationType): <This, Args extends any[], Return>(target: (this: This, ...args: Args) => Return, _context: ClassMethodDecoratorContext<This, (this: This, ...args: Args) => Return>) => (this: This, ...args: Args) => Return;
|
package/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@solar-angular/ui-ionic",
|
|
3
|
-
"version": "19.
|
|
3
|
+
"version": "19.2.0",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
8
8
|
"peerDependencies": {
|
|
9
9
|
"@angular/core": ">=19.0.0",
|
|
10
|
-
"@ionic/angular": ">=7.0.0"
|
|
10
|
+
"@ionic/angular": ">=7.0.0",
|
|
11
|
+
"@capacitor/haptics": ">=7.0.0"
|
|
11
12
|
},
|
|
12
13
|
"module": "fesm2022/solar-angular-ui-ionic.mjs",
|
|
13
14
|
"typings": "index.d.ts",
|