@fuse_ui/core 0.0.1
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.
- package/README.md +7 -0
- package/fesm2022/fuse_ui-core.mjs +167 -0
- package/fesm2022/fuse_ui-core.mjs.map +1 -0
- package/package.json +60 -0
- package/types/fuse_ui-core.d.ts +56 -0
package/README.md
ADDED
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component, inject, Injectable, signal, computed } from '@angular/core';
|
|
3
|
+
import { Platform } from '@ionic/angular';
|
|
4
|
+
|
|
5
|
+
class Core {
|
|
6
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: Core, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: Core, isStandalone: true, selector: "fuse-core", ngImport: i0, template: "<p>Core works!</p>\n", styles: [""] });
|
|
8
|
+
}
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: Core, decorators: [{
|
|
10
|
+
type: Component,
|
|
11
|
+
args: [{ selector: 'fuse-core', imports: [], template: "<p>Core works!</p>\n" }]
|
|
12
|
+
}] });
|
|
13
|
+
|
|
14
|
+
class FusePlatformService {
|
|
15
|
+
ionicPlatform = inject(Platform, { optional: true });
|
|
16
|
+
get isIonic() { return !!this.ionicPlatform; }
|
|
17
|
+
get currentMode() {
|
|
18
|
+
const m = document.documentElement.getAttribute('mode');
|
|
19
|
+
return m === 'ios' ? 'ios' : 'md';
|
|
20
|
+
}
|
|
21
|
+
get isMobile() {
|
|
22
|
+
return this.ionicPlatform?.is('mobile')
|
|
23
|
+
?? /Mobi|Android/i.test(navigator.userAgent);
|
|
24
|
+
}
|
|
25
|
+
get isIos() { return this.ionicPlatform?.is('ios') ?? false; }
|
|
26
|
+
get isAndroid() { return this.ionicPlatform?.is('android') ?? false; }
|
|
27
|
+
get isNative() {
|
|
28
|
+
try {
|
|
29
|
+
return window.Capacitor?.isNativePlatform() ?? false;
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FusePlatformService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
36
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FusePlatformService, providedIn: 'root' });
|
|
37
|
+
}
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FusePlatformService, decorators: [{
|
|
39
|
+
type: Injectable,
|
|
40
|
+
args: [{ providedIn: 'root' }]
|
|
41
|
+
}] });
|
|
42
|
+
|
|
43
|
+
class FuseThemeService {
|
|
44
|
+
STORAGE_KEY = 'fuse-theme';
|
|
45
|
+
activeTheme = signal(localStorage.getItem(this.STORAGE_KEY) ?? 'light', ...(ngDevMode ? [{ debugName: "activeTheme" }] : /* istanbul ignore next */ []));
|
|
46
|
+
isDark = computed(() => this.activeTheme() === 'dark', ...(ngDevMode ? [{ debugName: "isDark" }] : /* istanbul ignore next */ []));
|
|
47
|
+
availableThemes = signal(['light', 'dark', 'ocean', 'rose'], ...(ngDevMode ? [{ debugName: "availableThemes" }] : /* istanbul ignore next */ []));
|
|
48
|
+
constructor() {
|
|
49
|
+
/* Apply persisted theme on init */
|
|
50
|
+
this.applyTheme(this.activeTheme());
|
|
51
|
+
/* Respect system dark mode preference on first load */
|
|
52
|
+
const mq = window.matchMedia('(prefers-color-scheme: dark)');
|
|
53
|
+
if (!localStorage.getItem(this.STORAGE_KEY) && mq.matches) {
|
|
54
|
+
this.setTheme('dark');
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
setTheme(theme) {
|
|
58
|
+
this.activeTheme.set(theme);
|
|
59
|
+
this.applyTheme(theme);
|
|
60
|
+
localStorage.setItem(this.STORAGE_KEY, theme);
|
|
61
|
+
}
|
|
62
|
+
registerTheme(name) {
|
|
63
|
+
this.availableThemes.update(t => [...t, name]);
|
|
64
|
+
}
|
|
65
|
+
toggleDarkMode() {
|
|
66
|
+
this.setTheme(this.isDark() ? 'light' : 'dark');
|
|
67
|
+
}
|
|
68
|
+
setReduceMotion(enabled) {
|
|
69
|
+
document.documentElement.toggleAttribute('data-reduce-motion', enabled);
|
|
70
|
+
}
|
|
71
|
+
applyTheme(theme) {
|
|
72
|
+
const root = document.documentElement;
|
|
73
|
+
root.setAttribute('data-theme', theme);
|
|
74
|
+
/* Ionic 8 dark mode: toggle .ion-palette-dark on :root */
|
|
75
|
+
root.classList.toggle('ion-palette-dark', theme === 'dark');
|
|
76
|
+
}
|
|
77
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
78
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseThemeService, providedIn: 'root' });
|
|
79
|
+
}
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseThemeService, decorators: [{
|
|
81
|
+
type: Injectable,
|
|
82
|
+
args: [{ providedIn: 'root' }]
|
|
83
|
+
}], ctorParameters: () => [] });
|
|
84
|
+
|
|
85
|
+
class FuseAnimationService {
|
|
86
|
+
reduceMotion = signal(window.matchMedia('(prefers-reduced-motion: reduce)').matches, ...(ngDevMode ? [{ debugName: "reduceMotion" }] : /* istanbul ignore next */ []));
|
|
87
|
+
constructor() {
|
|
88
|
+
const mq = window.matchMedia('(prefers-reduced-motion: reduce)');
|
|
89
|
+
mq.addEventListener('change', (e) => this.reduceMotion.set(e.matches));
|
|
90
|
+
}
|
|
91
|
+
addEnterState(el, type = 'default') {
|
|
92
|
+
if (this.reduceMotion())
|
|
93
|
+
return;
|
|
94
|
+
const attr = type === 'default' ? 'data-entering' :
|
|
95
|
+
type === 'overlay' ? 'data-overlay-entering' :
|
|
96
|
+
type === 'slide' ? 'data-slide-entering' :
|
|
97
|
+
'data-tooltip-entering';
|
|
98
|
+
el.setAttribute(attr, '');
|
|
99
|
+
el.addEventListener('animationend', () => el.removeAttribute(attr), { once: true });
|
|
100
|
+
}
|
|
101
|
+
addLeaveState(el, onDone, type = 'default') {
|
|
102
|
+
if (this.reduceMotion()) {
|
|
103
|
+
onDone();
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
const attr = type === 'default' ? 'data-leaving' :
|
|
107
|
+
type === 'overlay' ? 'data-overlay-leaving' :
|
|
108
|
+
'data-slide-leaving';
|
|
109
|
+
el.setAttribute(attr, '');
|
|
110
|
+
el.addEventListener('animationend', () => { el.removeAttribute(attr); onDone(); }, { once: true });
|
|
111
|
+
}
|
|
112
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseAnimationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
113
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseAnimationService, providedIn: 'root' });
|
|
114
|
+
}
|
|
115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseAnimationService, decorators: [{
|
|
116
|
+
type: Injectable,
|
|
117
|
+
args: [{ providedIn: 'root' }]
|
|
118
|
+
}], ctorParameters: () => [] });
|
|
119
|
+
|
|
120
|
+
class FuseIconRegistryService {
|
|
121
|
+
registry = new Map();
|
|
122
|
+
constructor() { this.registerDefaults(); }
|
|
123
|
+
register(name, svg) {
|
|
124
|
+
this.registry.set(name, svg);
|
|
125
|
+
}
|
|
126
|
+
getIcon(name) {
|
|
127
|
+
return this.registry.get(name) ?? null;
|
|
128
|
+
}
|
|
129
|
+
registerDefaults() {
|
|
130
|
+
const icons = {
|
|
131
|
+
'check': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>`,
|
|
132
|
+
'x': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>`,
|
|
133
|
+
'chevron-down': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg>`,
|
|
134
|
+
'chevron-right': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"/></svg>`,
|
|
135
|
+
'chevron-up': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="18 15 12 9 6 15"/></svg>`,
|
|
136
|
+
'search': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>`,
|
|
137
|
+
'eye': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg>`,
|
|
138
|
+
'eye-off': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"/><line x1="1" y1="1" x2="23" y2="23"/></svg>`,
|
|
139
|
+
'info': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="12" y1="16" x2="12" y2="12"/><line x1="12" y1="8" x2="12.01" y2="8"/></svg>`,
|
|
140
|
+
'warning': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>`,
|
|
141
|
+
'danger-triangle': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>`,
|
|
142
|
+
'plus': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="5" x2="12" y2="19"/><line x1="5" y1="12" x2="19" y2="12"/></svg>`,
|
|
143
|
+
'minus': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"/></svg>`,
|
|
144
|
+
'menu': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="6" x2="21" y2="6"/><line x1="3" y1="18" x2="21" y2="18"/></svg>`,
|
|
145
|
+
'close': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>`,
|
|
146
|
+
'arrow-right': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"/><polyline points="12 5 19 12 12 19"/></svg>`,
|
|
147
|
+
'arrow-left': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="19" y1="12" x2="5" y2="12"/><polyline points="12 19 5 12 12 5"/></svg>`,
|
|
148
|
+
'spinner': `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12a9 9 0 1 1-6.219-8.56"/></svg>`,
|
|
149
|
+
};
|
|
150
|
+
for (const [name, svg] of Object.entries(icons)) {
|
|
151
|
+
this.registry.set(name, svg);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseIconRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
155
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseIconRegistryService, providedIn: 'root' });
|
|
156
|
+
}
|
|
157
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: FuseIconRegistryService, decorators: [{
|
|
158
|
+
type: Injectable,
|
|
159
|
+
args: [{ providedIn: 'root' }]
|
|
160
|
+
}], ctorParameters: () => [] });
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Generated bundle index. Do not edit.
|
|
164
|
+
*/
|
|
165
|
+
|
|
166
|
+
export { Core, FuseAnimationService, FuseIconRegistryService, FusePlatformService, FuseThemeService };
|
|
167
|
+
//# sourceMappingURL=fuse_ui-core.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fuse_ui-core.mjs","sources":["../../../../packages/core/src/lib/core/core.ts","../../../../packages/core/src/lib/core/core.html","../../../../packages/core/src/lib/services/fuse-platform.service.ts","../../../../packages/core/src/lib/services/fuse-theme.service.ts","../../../../packages/core/src/lib/services/fuse-animation.service.ts","../../../../packages/core/src/lib/services/fuse-icon-registry.service.ts","../../../../packages/core/src/fuse_ui-core.ts"],"sourcesContent":["import { Component } from '@angular/core';\n\n@Component({\n selector: 'fuse-core',\n imports: [],\n templateUrl: './core.html',\n styleUrl: './core.scss',\n})\nexport class Core {}\n","<p>Core works!</p>\n","import { Injectable, Optional, inject } from '@angular/core';\nimport { Platform } from '@ionic/angular';\n\n@Injectable({ providedIn: 'root' })\nexport class FusePlatformService {\n private readonly ionicPlatform = inject<Platform>(Platform, { optional: true });\n\n get isIonic(): boolean { return !!this.ionicPlatform; }\n\n get currentMode(): 'ios' | 'md' {\n const m = document.documentElement.getAttribute('mode');\n return m === 'ios' ? 'ios' : 'md';\n }\n\n get isMobile(): boolean {\n return this.ionicPlatform?.is('mobile')\n ?? /Mobi|Android/i.test(navigator.userAgent);\n }\n\n get isIos(): boolean { return this.ionicPlatform?.is('ios') ?? false; }\n get isAndroid(): boolean { return this.ionicPlatform?.is('android') ?? false; }\n\n get isNative(): boolean {\n try { return (window as any).Capacitor?.isNativePlatform() ?? false; }\n catch { return false; }\n }\n}\n","import { Injectable, computed, signal } from '@angular/core';\n\nexport type FuseTheme = 'light' | 'dark' | 'ocean' | 'rose' | (string & {});\n\n@Injectable({ providedIn: 'root' })\nexport class FuseThemeService {\n private readonly STORAGE_KEY = 'fuse-theme';\n\n readonly activeTheme = signal<FuseTheme>(\n (localStorage.getItem(this.STORAGE_KEY) as FuseTheme) ?? 'light'\n );\n\n readonly isDark = computed(() => this.activeTheme() === 'dark');\n readonly availableThemes = signal<FuseTheme[]>(['light', 'dark', 'ocean', 'rose']);\n\n constructor() {\n /* Apply persisted theme on init */\n this.applyTheme(this.activeTheme());\n\n /* Respect system dark mode preference on first load */\n const mq = window.matchMedia('(prefers-color-scheme: dark)');\n if (!localStorage.getItem(this.STORAGE_KEY) && mq.matches) {\n this.setTheme('dark');\n }\n }\n\n setTheme(theme: FuseTheme): void {\n this.activeTheme.set(theme);\n this.applyTheme(theme);\n localStorage.setItem(this.STORAGE_KEY, theme);\n }\n\n registerTheme(name: string): void {\n this.availableThemes.update(t => [...t, name as FuseTheme]);\n }\n\n toggleDarkMode(): void {\n this.setTheme(this.isDark() ? 'light' : 'dark');\n }\n\n setReduceMotion(enabled: boolean): void {\n document.documentElement.toggleAttribute('data-reduce-motion', enabled);\n }\n\n private applyTheme(theme: FuseTheme): void {\n const root = document.documentElement;\n root.setAttribute('data-theme', theme);\n /* Ionic 8 dark mode: toggle .ion-palette-dark on :root */\n root.classList.toggle('ion-palette-dark', theme === 'dark');\n }\n}\n","import { Injectable, signal } from '@angular/core';\n\n@Injectable({ providedIn: 'root' })\nexport class FuseAnimationService {\n readonly reduceMotion = signal(\n window.matchMedia('(prefers-reduced-motion: reduce)').matches\n );\n\n constructor() {\n const mq = window.matchMedia('(prefers-reduced-motion: reduce)');\n mq.addEventListener('change', (e) => this.reduceMotion.set(e.matches));\n }\n\n addEnterState(\n el: HTMLElement,\n type: 'overlay' | 'slide' | 'tooltip' | 'default' = 'default',\n ): void {\n if (this.reduceMotion()) return;\n const attr =\n type === 'default' ? 'data-entering' :\n type === 'overlay' ? 'data-overlay-entering' :\n type === 'slide' ? 'data-slide-entering' :\n 'data-tooltip-entering';\n el.setAttribute(attr, '');\n el.addEventListener('animationend', () => el.removeAttribute(attr), { once: true });\n }\n\n addLeaveState(\n el: HTMLElement,\n onDone: () => void,\n type: 'overlay' | 'slide' | 'default' = 'default',\n ): void {\n if (this.reduceMotion()) { onDone(); return; }\n const attr =\n type === 'default' ? 'data-leaving' :\n type === 'overlay' ? 'data-overlay-leaving' :\n 'data-slide-leaving';\n el.setAttribute(attr, '');\n el.addEventListener('animationend', () => { el.removeAttribute(attr); onDone(); }, { once: true });\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({ providedIn: 'root' })\nexport class FuseIconRegistryService {\n private registry = new Map<string, string>();\n\n constructor() { this.registerDefaults(); }\n\n register(name: string, svg: string): void {\n this.registry.set(name, svg);\n }\n\n getIcon(name: string): string | null {\n return this.registry.get(name) ?? null;\n }\n\n private registerDefaults(): void {\n const icons: Record<string, string> = {\n 'check': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"/></svg>`,\n\n 'x': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"/></svg>`,\n\n 'chevron-down': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 15 18 9\"/></svg>`,\n\n 'chevron-right': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"9 18 15 12 9 6\"/></svg>`,\n\n 'chevron-up': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"18 15 12 9 6 15\"/></svg>`,\n\n 'search': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"11\" cy=\"11\" r=\"8\"/><line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\"/></svg>`,\n\n 'eye': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z\"/><circle cx=\"12\" cy=\"12\" r=\"3\"/></svg>`,\n\n 'eye-off': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24\"/><line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\"/></svg>`,\n\n 'info': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"/><line x1=\"12\" y1=\"16\" x2=\"12\" y2=\"12\"/><line x1=\"12\" y1=\"8\" x2=\"12.01\" y2=\"8\"/></svg>`,\n\n 'warning': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\"/><line x1=\"12\" y1=\"9\" x2=\"12\" y2=\"13\"/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"/></svg>`,\n\n 'danger-triangle': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\"/><line x1=\"12\" y1=\"9\" x2=\"12\" y2=\"13\"/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"/></svg>`,\n\n 'plus': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"/></svg>`,\n\n 'minus': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"/></svg>`,\n\n 'menu': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"3\" y1=\"12\" x2=\"21\" y2=\"12\"/><line x1=\"3\" y1=\"6\" x2=\"21\" y2=\"6\"/><line x1=\"3\" y1=\"18\" x2=\"21\" y2=\"18\"/></svg>`,\n\n 'close': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"/></svg>`,\n\n 'arrow-right': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"/><polyline points=\"12 5 19 12 12 19\"/></svg>`,\n\n 'arrow-left': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"19\" y1=\"12\" x2=\"5\" y2=\"12\"/><polyline points=\"12 19 5 12 12 5\"/></svg>`,\n\n 'spinner': `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 12a9 9 0 1 1-6.219-8.56\"/></svg>`,\n };\n\n for (const [name, svg] of Object.entries(icons)) {\n this.registry.set(name, svg);\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@fuse_ui/core",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"license": "MIT",
|
|
5
|
+
"publishConfig": {
|
|
6
|
+
"access": "public"
|
|
7
|
+
},
|
|
8
|
+
"keywords": [
|
|
9
|
+
"fuse-ui",
|
|
10
|
+
"angular",
|
|
11
|
+
"ionic",
|
|
12
|
+
"ionic8",
|
|
13
|
+
"angular18",
|
|
14
|
+
"angular19",
|
|
15
|
+
"angular20",
|
|
16
|
+
"angular21",
|
|
17
|
+
"ui-components",
|
|
18
|
+
"design-system",
|
|
19
|
+
"css-variables",
|
|
20
|
+
"signals",
|
|
21
|
+
"standalone",
|
|
22
|
+
"multi-theme",
|
|
23
|
+
"dark-mode",
|
|
24
|
+
"fluid-typography",
|
|
25
|
+
"animated"
|
|
26
|
+
],
|
|
27
|
+
"peerDependencies": {
|
|
28
|
+
"@angular/core": ">=18.0.0",
|
|
29
|
+
"@angular/common": ">=18.0.0",
|
|
30
|
+
"rxjs": ">=7.4.0",
|
|
31
|
+
"@ionic/angular": "^8.8.2"
|
|
32
|
+
},
|
|
33
|
+
"peerDependenciesMeta": {
|
|
34
|
+
"@ionic/angular": {
|
|
35
|
+
"optional": true
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"sideEffects": [
|
|
39
|
+
"*.css",
|
|
40
|
+
"**/*.scss"
|
|
41
|
+
],
|
|
42
|
+
"engines": {
|
|
43
|
+
"node": ">=20.0.0"
|
|
44
|
+
},
|
|
45
|
+
"module": "fesm2022/fuse_ui-core.mjs",
|
|
46
|
+
"typings": "types/fuse_ui-core.d.ts",
|
|
47
|
+
"exports": {
|
|
48
|
+
"./package.json": {
|
|
49
|
+
"default": "./package.json"
|
|
50
|
+
},
|
|
51
|
+
".": {
|
|
52
|
+
"types": "./types/fuse_ui-core.d.ts",
|
|
53
|
+
"default": "./fesm2022/fuse_ui-core.mjs"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
"type": "module",
|
|
57
|
+
"dependencies": {
|
|
58
|
+
"tslib": "^2.3.0"
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
|
|
3
|
+
declare class Core {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<Core, never>;
|
|
5
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<Core, "fuse-core", never, {}, {}, never, never, true, never>;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
declare class FusePlatformService {
|
|
9
|
+
private readonly ionicPlatform;
|
|
10
|
+
get isIonic(): boolean;
|
|
11
|
+
get currentMode(): 'ios' | 'md';
|
|
12
|
+
get isMobile(): boolean;
|
|
13
|
+
get isIos(): boolean;
|
|
14
|
+
get isAndroid(): boolean;
|
|
15
|
+
get isNative(): boolean;
|
|
16
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FusePlatformService, never>;
|
|
17
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FusePlatformService>;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
type FuseTheme = 'light' | 'dark' | 'ocean' | 'rose' | (string & {});
|
|
21
|
+
declare class FuseThemeService {
|
|
22
|
+
private readonly STORAGE_KEY;
|
|
23
|
+
readonly activeTheme: i0.WritableSignal<FuseTheme>;
|
|
24
|
+
readonly isDark: i0.Signal<boolean>;
|
|
25
|
+
readonly availableThemes: i0.WritableSignal<FuseTheme[]>;
|
|
26
|
+
constructor();
|
|
27
|
+
setTheme(theme: FuseTheme): void;
|
|
28
|
+
registerTheme(name: string): void;
|
|
29
|
+
toggleDarkMode(): void;
|
|
30
|
+
setReduceMotion(enabled: boolean): void;
|
|
31
|
+
private applyTheme;
|
|
32
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FuseThemeService, never>;
|
|
33
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FuseThemeService>;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
declare class FuseAnimationService {
|
|
37
|
+
readonly reduceMotion: i0.WritableSignal<boolean>;
|
|
38
|
+
constructor();
|
|
39
|
+
addEnterState(el: HTMLElement, type?: 'overlay' | 'slide' | 'tooltip' | 'default'): void;
|
|
40
|
+
addLeaveState(el: HTMLElement, onDone: () => void, type?: 'overlay' | 'slide' | 'default'): void;
|
|
41
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FuseAnimationService, never>;
|
|
42
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FuseAnimationService>;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
declare class FuseIconRegistryService {
|
|
46
|
+
private registry;
|
|
47
|
+
constructor();
|
|
48
|
+
register(name: string, svg: string): void;
|
|
49
|
+
getIcon(name: string): string | null;
|
|
50
|
+
private registerDefaults;
|
|
51
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FuseIconRegistryService, never>;
|
|
52
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FuseIconRegistryService>;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export { Core, FuseAnimationService, FuseIconRegistryService, FusePlatformService, FuseThemeService };
|
|
56
|
+
export type { FuseTheme };
|