@juligc99/loro-ui 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 +64 -0
- package/assets/loro-ui/favicons/Assets.xcassets/AppIcon.appiconset/AppIcon-Any.png +0 -0
- package/assets/loro-ui/favicons/Assets.xcassets/AppIcon.appiconset/AppIcon-Dark.png +0 -0
- package/assets/loro-ui/favicons/Assets.xcassets/AppIcon.appiconset/Contents.json +26 -0
- package/assets/loro-ui/favicons/Assets.xcassets/Contents.json +6 -0
- package/assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/Contents.json +56 -0
- package/assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-2732x2732-1.png +0 -0
- package/assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-2732x2732-2.png +0 -0
- package/assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-2732x2732.png +0 -0
- package/assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-dark-2732x2732-1.png +0 -0
- package/assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-dark-2732x2732-2.png +0 -0
- package/assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-dark-2732x2732.png +0 -0
- package/assets/loro-ui/favicons/apple-touch-icon.png +0 -0
- package/assets/loro-ui/favicons/favicon.ico +0 -0
- package/assets/loro-ui/favicons/favicon.svg +4 -0
- package/assets/loro-ui/fonts/google-fonts.css +107 -0
- package/assets/loro-ui/fonts/inter-latin-ext.woff2 +0 -0
- package/assets/loro-ui/fonts/inter-latin.woff2 +0 -0
- package/assets/loro-ui/fonts/manrope-latin-ext.woff2 +0 -0
- package/assets/loro-ui/fonts/manrope-latin.woff2 +0 -0
- package/assets/loro-ui/icons/apple.svg +7 -0
- package/assets/loro-ui/icons/arrow-right.svg +1 -0
- package/assets/loro-ui/icons/auto.svg +3 -0
- package/assets/loro-ui/icons/back.svg +1 -0
- package/assets/loro-ui/icons/bag.svg +1 -0
- package/assets/loro-ui/icons/barcode.svg +3 -0
- package/assets/loro-ui/icons/bell.svg +3 -0
- package/assets/loro-ui/icons/bottle.svg +3 -0
- package/assets/loro-ui/icons/bulb.svg +3 -0
- package/assets/loro-ui/icons/calendar.svg +1 -0
- package/assets/loro-ui/icons/camera.svg +3 -0
- package/assets/loro-ui/icons/cart.svg +3 -0
- package/assets/loro-ui/icons/chart-bar.svg +3 -0
- package/assets/loro-ui/icons/chat.svg +3 -0
- package/assets/loro-ui/icons/check.svg +3 -0
- package/assets/loro-ui/icons/checkbox-empty.svg +1 -0
- package/assets/loro-ui/icons/chevron-down.svg +3 -0
- package/assets/loro-ui/icons/chevron-right.svg +3 -0
- package/assets/loro-ui/icons/chevron-up.svg +3 -0
- package/assets/loro-ui/icons/clock.svg +3 -0
- package/assets/loro-ui/icons/download.svg +3 -0
- package/assets/loro-ui/icons/email.svg +1 -0
- package/assets/loro-ui/icons/eye-off.svg +6 -0
- package/assets/loro-ui/icons/eye.svg +1 -0
- package/assets/loro-ui/icons/globe.svg +3 -0
- package/assets/loro-ui/icons/google.svg +1 -0
- package/assets/loro-ui/icons/headset.svg +3 -0
- package/assets/loro-ui/icons/help.svg +3 -0
- package/assets/loro-ui/icons/home.svg +1 -0
- package/assets/loro-ui/icons/info.svg +3 -0
- package/assets/loro-ui/icons/laptop.svg +3 -0
- package/assets/loro-ui/icons/leaf.svg +3 -0
- package/assets/loro-ui/icons/list.svg +1 -0
- package/assets/loro-ui/icons/location.svg +3 -0
- package/assets/loro-ui/icons/lock.svg +1 -0
- package/assets/loro-ui/icons/logout.svg +3 -0
- package/assets/loro-ui/icons/megaphone.svg +3 -0
- package/assets/loro-ui/icons/moon.svg +3 -0
- package/assets/loro-ui/icons/more-vertical.svg +3 -0
- package/assets/loro-ui/icons/nav-compare.svg +4 -0
- package/assets/loro-ui/icons/nav-home.svg +4 -0
- package/assets/loro-ui/icons/nav-list.svg +6 -0
- package/assets/loro-ui/icons/nav-pantry.svg +6 -0
- package/assets/loro-ui/icons/pantry-stock.svg +8 -0
- package/assets/loro-ui/icons/paperclip.svg +3 -0
- package/assets/loro-ui/icons/phone.svg +3 -0
- package/assets/loro-ui/icons/plus-user.svg +1 -0
- package/assets/loro-ui/icons/plus.svg +3 -0
- package/assets/loro-ui/icons/scanner.svg +1 -0
- package/assets/loro-ui/icons/search.svg +3 -0
- package/assets/loro-ui/icons/send.svg +3 -0
- package/assets/loro-ui/icons/settings.svg +1 -0
- package/assets/loro-ui/icons/shelf.svg +1 -0
- package/assets/loro-ui/icons/shield-alert.svg +3 -0
- package/assets/loro-ui/icons/shield.svg +3 -0
- package/assets/loro-ui/icons/star.svg +3 -0
- package/assets/loro-ui/icons/store.svg +3 -0
- package/assets/loro-ui/icons/sun.svg +3 -0
- package/assets/loro-ui/icons/tablet.svg +3 -0
- package/assets/loro-ui/icons/tag.svg +1 -0
- package/assets/loro-ui/icons/tick-circle.svg +3 -0
- package/assets/loro-ui/icons/trash-white.svg +3 -0
- package/assets/loro-ui/icons/trash.svg +3 -0
- package/assets/loro-ui/icons/trend.svg +3 -0
- package/assets/loro-ui/icons/user.svg +1 -0
- package/assets/loro-ui/icons/warning.svg +3 -0
- package/assets/loro-ui/images/al-loro-design-library-home-ai.png +0 -0
- package/assets/loro-ui/images/home-icon-ai.svg +15 -0
- package/assets/loro-ui/images/home-icon-basket.svg +12 -0
- package/assets/loro-ui/images/home-icon-compare.svg +12 -0
- package/assets/loro-ui/images/home-icon-expiry.svg +18 -0
- package/assets/loro-ui/images/home-icon-pantry.svg +18 -0
- package/assets/loro-ui/images/home-icon-scan.svg +11 -0
- package/assets/loro-ui/images/image-home.png +0 -0
- package/assets/loro-ui/images/logo-despensa-buy.png +0 -0
- package/assets/loro-ui/images/logo-list-buy.png +0 -0
- package/assets/loro-ui/images/loro-apaisado-blanco.png +0 -0
- package/assets/loro-ui/images/loro-apaisado.png +0 -0
- package/assets/loro-ui/images/loro-card-buy.png +0 -0
- package/assets/loro-ui/images/loro-card-caducidad.png +0 -0
- package/assets/loro-ui/images/loro-card-comparativa.png +0 -0
- package/assets/loro-ui/images/loro-card-ia.png +0 -0
- package/assets/loro-ui/images/loro-card-qr.png +0 -0
- package/assets/loro-ui/images/loro-despensa.png +0 -0
- package/assets/loro-ui/images/loro-icon-default.png +0 -0
- package/assets/loro-ui/images/loro-spinner-ring.svg +76 -0
- package/assets/loro-ui/images/loro-tittle-sub.png +0 -0
- package/assets/loro-ui/images/pantry-cabinet.svg +12 -0
- package/assets/loro-ui/images/pantry-metric-chart.svg +16 -0
- package/assets/loro-ui/images/product-bananas.svg +6 -0
- package/assets/loro-ui/images/product-milk.svg +6 -0
- package/assets/loro-ui/images/product-pasta.svg +5 -0
- package/assets/loro-ui/images/product-rice.svg +6 -0
- package/assets/loro-ui/images/product-tomatoes.svg +6 -0
- package/assets/loro-ui/images/product-yogurt.svg +6 -0
- package/assets/loro-ui/images/store-ahorramas.svg +1 -0
- package/assets/loro-ui/images/store-alcampo.png +0 -0
- package/assets/loro-ui/images/store-aldi.svg +7 -0
- package/assets/loro-ui/images/store-bonpreu.svg +19 -0
- package/assets/loro-ui/images/store-caprabo.svg +29 -0
- package/assets/loro-ui/images/store-carrefour.svg +43 -0
- package/assets/loro-ui/images/store-consum.png +0 -0
- package/assets/loro-ui/images/store-coviran.png +0 -0
- package/assets/loro-ui/images/store-dia.svg +59 -0
- package/assets/loro-ui/images/store-el-corte-ingles.svg +20 -0
- package/assets/loro-ui/images/store-eroski.png +0 -0
- package/assets/loro-ui/images/store-froiz.svg +1 -0
- package/assets/loro-ui/images/store-gadis.png +0 -0
- package/assets/loro-ui/images/store-lidl.svg +7 -0
- package/assets/loro-ui/images/store-mercadona.svg +17 -0
- package/assets/loro-ui/loro-assets.generated.ts +1009 -0
- package/design-tokens/loro-theme.scss +376 -0
- package/fesm2022/juligc99-loro-ui.mjs +3592 -0
- package/fesm2022/juligc99-loro-ui.mjs.map +1 -0
- package/package.json +83 -0
- package/styles/_breakpoints.scss +28 -0
- package/types/juligc99-loro-ui.d.ts +818 -0
|
@@ -0,0 +1,818 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { LoroIconName, LoroIconSize as LoroIconSize$1, LoroIconRenderMode as LoroIconRenderMode$1, LoroIconColor as LoroIconColor$1 } from '@loro-ui/components/resources/loro-icon/loro-icon';
|
|
3
|
+
import { LoroButtonVariant as LoroButtonVariant$1 } from '@loro-ui/components/components/loro-button/loro-button';
|
|
4
|
+
import { LoroImageName } from '@loro-ui/components/resources/loro-image/loro-image';
|
|
5
|
+
import { LoroBadgeVariant as LoroBadgeVariant$1 } from '@loro-ui/components/components/loro-badge/loro-badge';
|
|
6
|
+
import * as _juligc99_loro_ui from '@juligc99/loro-ui';
|
|
7
|
+
import { FormCheckboxControl, WithOptionalFieldTree, ValidationError, FormValueControl } from '@angular/forms/signals';
|
|
8
|
+
import { LoroIconName as LoroIconName$1, LoroImageName as LoroImageName$1 } from '@loro-ui/assets/loro-assets.generated';
|
|
9
|
+
export { LORO_ICON_ASSETS, LORO_ICON_LEGACY_NAMES, LORO_ICON_PATHS, LORO_IMAGE_ASSETS, LORO_IMAGE_LEGACY_NAMES, LORO_IMAGE_PATHS, LoroIconAsset, LoroIconAssetName, LoroIconLegacyName, LoroIconName, LoroImageAsset, LoroImageAssetName, LoroImageLegacyName, LoroImageName } from '@loro-ui/assets/loro-assets.generated';
|
|
10
|
+
|
|
11
|
+
declare class Footer {
|
|
12
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Footer, never>;
|
|
13
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Footer, "loro-footer", never, {}, {}, never, never, true, never>;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
declare class LoroAccordion {
|
|
17
|
+
title: _angular_core.InputSignal<string>;
|
|
18
|
+
icon: _angular_core.InputSignal<LoroIconName | null>;
|
|
19
|
+
expanded: _angular_core.InputSignal<boolean>;
|
|
20
|
+
expandedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
21
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroAccordion, never>;
|
|
22
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroAccordion, "loro-accordion", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; }, { "expandedChange": "expandedChange"; }, never, ["*"], true, never>;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
interface LoroAppNavItem {
|
|
26
|
+
id: string;
|
|
27
|
+
label: string;
|
|
28
|
+
icon: LoroIconName;
|
|
29
|
+
active?: boolean;
|
|
30
|
+
badge?: string | number | null;
|
|
31
|
+
disabled?: boolean;
|
|
32
|
+
}
|
|
33
|
+
interface LoroAppNavClick {
|
|
34
|
+
item: LoroAppNavItem;
|
|
35
|
+
section: 'main' | 'utility';
|
|
36
|
+
}
|
|
37
|
+
declare class LoroAppNav {
|
|
38
|
+
private readonly haptics;
|
|
39
|
+
private readonly draggedMobilePosition;
|
|
40
|
+
private readonly draggedMobileIndex;
|
|
41
|
+
private activePointerId;
|
|
42
|
+
private suppressNextMobileClick;
|
|
43
|
+
items: _angular_core.InputSignal<LoroAppNavItem[]>;
|
|
44
|
+
utilityItems: _angular_core.InputSignal<LoroAppNavItem[]>;
|
|
45
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
46
|
+
showUtilityItems: _angular_core.InputSignal<boolean>;
|
|
47
|
+
compactDesktop: _angular_core.InputSignal<boolean>;
|
|
48
|
+
itemClick: _angular_core.OutputEmitterRef<LoroAppNavItem>;
|
|
49
|
+
utilityItemClick: _angular_core.OutputEmitterRef<LoroAppNavItem>;
|
|
50
|
+
navItemClick: _angular_core.OutputEmitterRef<LoroAppNavClick>;
|
|
51
|
+
protected readonly desktopItems: _angular_core.Signal<LoroAppNavItem[]>;
|
|
52
|
+
protected readonly mobileItems: _angular_core.Signal<LoroAppNavItem[]>;
|
|
53
|
+
protected readonly mobileVisualSlotCount: _angular_core.Signal<number>;
|
|
54
|
+
private readonly selectedMobileIndex;
|
|
55
|
+
protected readonly mobileSliderPosition: _angular_core.Signal<number>;
|
|
56
|
+
protected readonly isMobileDragging: _angular_core.Signal<boolean>;
|
|
57
|
+
protected readonly mobileItemCount: _angular_core.Signal<number>;
|
|
58
|
+
protected isMobileItemVisualActive(index: number): boolean;
|
|
59
|
+
onMainItemClick(item: LoroAppNavItem): void;
|
|
60
|
+
protected onMobileItemClick(item: LoroAppNavItem): void;
|
|
61
|
+
protected onMobilePointerDown(event: PointerEvent): void;
|
|
62
|
+
protected onMobilePointerMove(event: PointerEvent): void;
|
|
63
|
+
protected onMobilePointerUp(event: PointerEvent): void;
|
|
64
|
+
protected onMobilePointerCancel(event: PointerEvent): void;
|
|
65
|
+
onUtilityItemClick(item: LoroAppNavItem): void;
|
|
66
|
+
private emitMainItem;
|
|
67
|
+
private getMobileVisualSlotPosition;
|
|
68
|
+
protected mobileItemGridColumn(index: number): number;
|
|
69
|
+
private mobileItemIndexToVisualSlot;
|
|
70
|
+
private getNearestEnabledMobileIndex;
|
|
71
|
+
private releaseMobilePointer;
|
|
72
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroAppNav, never>;
|
|
73
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroAppNav, "loro-app-nav", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "utilityItems": { "alias": "utilityItems"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "showUtilityItems": { "alias": "showUtilityItems"; "required": false; "isSignal": true; }; "compactDesktop": { "alias": "compactDesktop"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; "utilityItemClick": "utilityItemClick"; "navItemClick": "navItemClick"; }, never, never, true, never>;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
declare class LoroAssistantCard {
|
|
77
|
+
title: _angular_core.InputSignal<string>;
|
|
78
|
+
description: _angular_core.InputSignal<string>;
|
|
79
|
+
imageName: _angular_core.InputSignal<LoroImageName | null>;
|
|
80
|
+
icon: _angular_core.InputSignal<LoroIconName>;
|
|
81
|
+
actionLabel: _angular_core.InputSignal<string>;
|
|
82
|
+
actionIcon: _angular_core.InputSignal<LoroIconName | null>;
|
|
83
|
+
actionVariant: _angular_core.InputSignal<LoroButtonVariant$1>;
|
|
84
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroAssistantCard, never>;
|
|
85
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroAssistantCard, "loro-assistant-card", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "description": { "alias": "description"; "required": true; "isSignal": true; }; "imageName": { "alias": "imageName"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "actionIcon": { "alias": "actionIcon"; "required": false; "isSignal": true; }; "actionVariant": { "alias": "actionVariant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
declare class LoroAuthSocialButton {
|
|
89
|
+
icon: _angular_core.InputSignal<LoroIconName>;
|
|
90
|
+
label: _angular_core.InputSignal<string>;
|
|
91
|
+
outline: _angular_core.InputSignal<boolean>;
|
|
92
|
+
selected: _angular_core.InputSignal<boolean>;
|
|
93
|
+
iconSize: _angular_core.InputSignal<number>;
|
|
94
|
+
protected readonly nativeIconSrc: _angular_core.Signal<"assets/loro-ui/icons/apple.svg" | "assets/loro-ui/icons/google.svg" | "">;
|
|
95
|
+
protected releaseFocus(event: Event): void;
|
|
96
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroAuthSocialButton, never>;
|
|
97
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroAuthSocialButton, "loro-auth-social-button", never, { "icon": { "alias": "icon"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "outline": { "alias": "outline"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
type LoroBadgeVariant = 'success' | 'error' | 'info' | 'warning' | 'neutral';
|
|
101
|
+
declare class LoroBadge {
|
|
102
|
+
label: _angular_core.InputSignal<string>;
|
|
103
|
+
variant: _angular_core.InputSignal<LoroBadgeVariant>;
|
|
104
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroBadge, never>;
|
|
105
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroBadge, "loro-badge", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
type LoroButtonVariant = 'primary' | 'outline' | 'ghost' | 'danger' | 'soft' | 'social' | 'action' | 'navigation';
|
|
109
|
+
type LoroButtonType = 'primary' | 'secondary' | 'tertiary';
|
|
110
|
+
type LoroButtonColor = 'primary' | 'secondary' | 'tertiary' | 'danger';
|
|
111
|
+
type LoroButtonSize = 'sm' | 'md' | 'lg';
|
|
112
|
+
type LoroButtonWidth = 'fit-content' | 'full';
|
|
113
|
+
type LoroButtonIconMode = 'none' | 'with-icon' | 'only-icon';
|
|
114
|
+
declare class LoroButton {
|
|
115
|
+
label: _angular_core.InputSignal<string>;
|
|
116
|
+
text: _angular_core.InputSignal<string>;
|
|
117
|
+
icon: _angular_core.InputSignal<LoroIconName | LoroButtonIconMode | null>;
|
|
118
|
+
iconContent: _angular_core.InputSignal<LoroIconName | null>;
|
|
119
|
+
iconMode: _angular_core.InputSignal<LoroButtonIconMode>;
|
|
120
|
+
iconSize: _angular_core.InputSignal<LoroIconSize$1>;
|
|
121
|
+
iconButtonSize: _angular_core.InputSignal<LoroIconSize$1 | null>;
|
|
122
|
+
iconColor: _angular_core.InputSignal<string>;
|
|
123
|
+
socialMobileCompact: _angular_core.InputSignal<boolean>;
|
|
124
|
+
selected: _angular_core.InputSignal<boolean>;
|
|
125
|
+
variant: _angular_core.InputSignal<LoroButtonVariant>;
|
|
126
|
+
typeButton: _angular_core.InputSignal<LoroButtonType>;
|
|
127
|
+
color: _angular_core.InputSignal<LoroButtonColor>;
|
|
128
|
+
size: _angular_core.InputSignal<LoroButtonSize>;
|
|
129
|
+
fullWidth: _angular_core.InputSignal<boolean>;
|
|
130
|
+
buttonWidth: _angular_core.InputSignal<LoroButtonWidth>;
|
|
131
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
132
|
+
loading: _angular_core.InputSignal<boolean>;
|
|
133
|
+
type: _angular_core.InputSignal<"button" | "submit" | "reset">;
|
|
134
|
+
formId: _angular_core.InputSignal<string>;
|
|
135
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
136
|
+
ariaDescription: _angular_core.InputSignal<string>;
|
|
137
|
+
buttonClick: _angular_core.OutputEmitterRef<void>;
|
|
138
|
+
change: _angular_core.OutputEmitterRef<void>;
|
|
139
|
+
sanChange: _angular_core.OutputEmitterRef<void>;
|
|
140
|
+
protected readonly resolvedText: _angular_core.Signal<string>;
|
|
141
|
+
protected readonly resolvedIcon: _angular_core.Signal<LoroIconName | null>;
|
|
142
|
+
protected readonly resolvedIconMode: _angular_core.Signal<LoroButtonIconMode>;
|
|
143
|
+
protected readonly resolvedButtonWidth: _angular_core.Signal<LoroButtonWidth>;
|
|
144
|
+
protected readonly resolvedIconButtonSize: _angular_core.Signal<string>;
|
|
145
|
+
protected readonly resolvedTypeButton: _angular_core.Signal<LoroButtonType>;
|
|
146
|
+
protected readonly resolvedColor: _angular_core.Signal<LoroButtonColor>;
|
|
147
|
+
protected readonly showIcon: _angular_core.Signal<boolean>;
|
|
148
|
+
protected readonly resolvedAriaLabel: _angular_core.Signal<string | null>;
|
|
149
|
+
protected readonly resolvedIconColor: _angular_core.Signal<string>;
|
|
150
|
+
protected readonly resolvedIconRenderMode: _angular_core.Signal<LoroIconRenderMode$1>;
|
|
151
|
+
protected readonly isDisabled: _angular_core.Signal<boolean>;
|
|
152
|
+
protected readonly showSpinner: _angular_core.Signal<boolean>;
|
|
153
|
+
protected readonly loadingAriaLabel: _angular_core.Signal<string>;
|
|
154
|
+
protected emitChange(): void;
|
|
155
|
+
protected defaultIconColor(): LoroIconColor$1;
|
|
156
|
+
private isIconMode;
|
|
157
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroButton, never>;
|
|
158
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroButton, "loro-button", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconContent": { "alias": "iconContent"; "required": false; "isSignal": true; }; "iconMode": { "alias": "iconMode"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; "iconButtonSize": { "alias": "iconButtonSize"; "required": false; "isSignal": true; }; "iconColor": { "alias": "iconColor"; "required": false; "isSignal": true; }; "socialMobileCompact": { "alias": "socialMobileCompact"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "typeButton": { "alias": "typeButton"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "fullWidth": { "alias": "fullWidth"; "required": false; "isSignal": true; }; "buttonWidth": { "alias": "buttonWidth"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "formId": { "alias": "formId"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaDescription": { "alias": "ariaDescription"; "required": false; "isSignal": true; }; }, { "buttonClick": "buttonClick"; "change": "change"; "sanChange": "sanChange"; }, never, never, true, never>;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
type LoroCardVariant = 'default' | 'tinted' | 'danger' | 'selectable' | 'benefit' | 'benefit-showcase' | 'home-hero' | 'home-primary' | 'home-secondary';
|
|
162
|
+
type LoroCardJustify = 'start' | 'center' | 'end';
|
|
163
|
+
declare class LoroCard {
|
|
164
|
+
title: _angular_core.InputSignal<string>;
|
|
165
|
+
description: _angular_core.InputSignal<string>;
|
|
166
|
+
icon: _angular_core.InputSignal<LoroIconName | null>;
|
|
167
|
+
iconSize: _angular_core.InputSignal<number>;
|
|
168
|
+
iconColor: _angular_core.InputSignal<string>;
|
|
169
|
+
link: _angular_core.InputSignal<string>;
|
|
170
|
+
variant: _angular_core.InputSignal<LoroCardVariant>;
|
|
171
|
+
justify: _angular_core.InputSignal<LoroCardJustify>;
|
|
172
|
+
mobileJustify: _angular_core.InputSignal<LoroCardJustify>;
|
|
173
|
+
selected: _angular_core.InputSignal<boolean>;
|
|
174
|
+
showArrow: _angular_core.InputSignal<boolean>;
|
|
175
|
+
arrowSize: _angular_core.InputSignal<number>;
|
|
176
|
+
heroGreeting: _angular_core.InputSignal<string>;
|
|
177
|
+
heroSubtitle: _angular_core.InputSignal<string>;
|
|
178
|
+
heroAvatarSrc: _angular_core.InputSignal<string | null>;
|
|
179
|
+
heroAvatarAlt: _angular_core.InputSignal<string>;
|
|
180
|
+
heroAvatarIcon: _angular_core.InputSignal<LoroIconName>;
|
|
181
|
+
heroAvatarIconSize: _angular_core.InputSignal<number>;
|
|
182
|
+
heroVisualImage: _angular_core.InputSignal<LoroImageName | null>;
|
|
183
|
+
heroVisualAlt: _angular_core.InputSignal<string>;
|
|
184
|
+
protected readonly resolvedIconSize: _angular_core.Signal<string>;
|
|
185
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroCard, never>;
|
|
186
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroCard, "loro-card", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; "iconColor": { "alias": "iconColor"; "required": false; "isSignal": true; }; "link": { "alias": "link"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "justify": { "alias": "justify"; "required": false; "isSignal": true; }; "mobileJustify": { "alias": "mobileJustify"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "showArrow": { "alias": "showArrow"; "required": false; "isSignal": true; }; "arrowSize": { "alias": "arrowSize"; "required": false; "isSignal": true; }; "heroGreeting": { "alias": "heroGreeting"; "required": false; "isSignal": true; }; "heroSubtitle": { "alias": "heroSubtitle"; "required": false; "isSignal": true; }; "heroAvatarSrc": { "alias": "heroAvatarSrc"; "required": false; "isSignal": true; }; "heroAvatarAlt": { "alias": "heroAvatarAlt"; "required": false; "isSignal": true; }; "heroAvatarIcon": { "alias": "heroAvatarIcon"; "required": false; "isSignal": true; }; "heroAvatarIconSize": { "alias": "heroAvatarIconSize"; "required": false; "isSignal": true; }; "heroVisualImage": { "alias": "heroVisualImage"; "required": false; "isSignal": true; }; "heroVisualAlt": { "alias": "heroVisualAlt"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
type LoroCardNavVariant = 'default' | 'danger' | 'soft';
|
|
190
|
+
type LoroCardNavTrailing = 'arrow' | 'toggle' | 'radio' | 'text' | 'badge' | 'none';
|
|
191
|
+
declare class LoroCardNav {
|
|
192
|
+
private readonly router;
|
|
193
|
+
title: _angular_core.InputSignal<string>;
|
|
194
|
+
description: _angular_core.InputSignal<string>;
|
|
195
|
+
icon: _angular_core.InputSignal<LoroIconName | null>;
|
|
196
|
+
iconSize: _angular_core.InputSignal<number>;
|
|
197
|
+
iconColor: _angular_core.InputSignal<string>;
|
|
198
|
+
route: _angular_core.InputSignal<string>;
|
|
199
|
+
variant: _angular_core.InputSignal<LoroCardNavVariant>;
|
|
200
|
+
trailing: _angular_core.InputSignal<LoroCardNavTrailing>;
|
|
201
|
+
value: _angular_core.InputSignal<string>;
|
|
202
|
+
checked: _angular_core.InputSignal<boolean>;
|
|
203
|
+
selected: _angular_core.InputSignal<boolean>;
|
|
204
|
+
badgeLabel: _angular_core.InputSignal<string>;
|
|
205
|
+
badgeVariant: _angular_core.InputSignal<LoroBadgeVariant$1>;
|
|
206
|
+
itemClick: _angular_core.OutputEmitterRef<void>;
|
|
207
|
+
checkedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
208
|
+
selectedChange: _angular_core.OutputEmitterRef<string>;
|
|
209
|
+
protected activate(): void;
|
|
210
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroCardNav, never>;
|
|
211
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroCardNav, "loro-card-nav", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; "iconColor": { "alias": "iconColor"; "required": false; "isSignal": true; }; "route": { "alias": "route"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "trailing": { "alias": "trailing"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "badgeLabel": { "alias": "badgeLabel"; "required": false; "isSignal": true; }; "badgeVariant": { "alias": "badgeVariant"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; "checkedChange": "checkedChange"; "selectedChange": "selectedChange"; }, never, never, true, never>;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
declare class LoroDashboardCard {
|
|
215
|
+
private readonly haptics;
|
|
216
|
+
title: _angular_core.InputSignal<string>;
|
|
217
|
+
description: _angular_core.InputSignal<string>;
|
|
218
|
+
link: _angular_core.InputSignal<string>;
|
|
219
|
+
icon: _angular_core.InputSignal<LoroIconName | null>;
|
|
220
|
+
illustration: _angular_core.InputSignal<LoroImageName | null>;
|
|
221
|
+
variant: _angular_core.InputSignal<"home" | "default">;
|
|
222
|
+
showArrow: _angular_core.InputSignal<boolean>;
|
|
223
|
+
iconSize: _angular_core.InputSignal<number>;
|
|
224
|
+
arrowSize: _angular_core.InputSignal<number>;
|
|
225
|
+
onCardClick(): void;
|
|
226
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroDashboardCard, never>;
|
|
227
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroDashboardCard, "loro-dashboard-card", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "link": { "alias": "link"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "illustration": { "alias": "illustration"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "showArrow": { "alias": "showArrow"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; "arrowSize": { "alias": "arrowSize"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
type LoroDividerAlign = 'left' | 'center' | 'right';
|
|
231
|
+
declare class LoroDivider {
|
|
232
|
+
text: _angular_core.InputSignal<string>;
|
|
233
|
+
align: _angular_core.InputSignal<LoroDividerAlign>;
|
|
234
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroDivider, never>;
|
|
235
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroDivider, "loro-divider", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
type LoroProductRowVariant = 'basket' | 'pantry' | 'compare';
|
|
239
|
+
type LoroProductRowStatus = 'ok' | 'warning' | 'expiring';
|
|
240
|
+
declare class LoroProductRow {
|
|
241
|
+
variant: _angular_core.InputSignal<LoroProductRowVariant>;
|
|
242
|
+
name: _angular_core.InputSignal<string>;
|
|
243
|
+
meta: _angular_core.InputSignal<string>;
|
|
244
|
+
imageName: _angular_core.InputSignal<LoroImageName | null>;
|
|
245
|
+
quantityLabel: _angular_core.InputSignal<string>;
|
|
246
|
+
quantity: _angular_core.InputSignal<number | null>;
|
|
247
|
+
unit: _angular_core.InputSignal<string>;
|
|
248
|
+
total: _angular_core.InputSignal<number>;
|
|
249
|
+
checked: _angular_core.InputSignal<boolean>;
|
|
250
|
+
divider: _angular_core.InputSignal<boolean>;
|
|
251
|
+
status: _angular_core.InputSignal<LoroProductRowStatus>;
|
|
252
|
+
prices: _angular_core.InputSignal<readonly {
|
|
253
|
+
store: string;
|
|
254
|
+
value: number;
|
|
255
|
+
best?: boolean;
|
|
256
|
+
logoName?: LoroImageName | null;
|
|
257
|
+
}[]>;
|
|
258
|
+
checkedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
259
|
+
quantityChange: _angular_core.OutputEmitterRef<number>;
|
|
260
|
+
increment: _angular_core.OutputEmitterRef<void>;
|
|
261
|
+
decrement: _angular_core.OutputEmitterRef<void>;
|
|
262
|
+
rowRemove: _angular_core.OutputEmitterRef<void>;
|
|
263
|
+
protected readonly swipeDragging: _angular_core.WritableSignal<boolean>;
|
|
264
|
+
protected readonly swipeArmed: _angular_core.WritableSignal<boolean>;
|
|
265
|
+
protected readonly swipeRemoving: _angular_core.WritableSignal<boolean>;
|
|
266
|
+
private readonly swipeOffsetX;
|
|
267
|
+
private touchStartX;
|
|
268
|
+
private touchStartY;
|
|
269
|
+
private touchStartedOnInteractive;
|
|
270
|
+
private touchMoved;
|
|
271
|
+
private suppressNextClick;
|
|
272
|
+
protected swipeTransform(): string | null;
|
|
273
|
+
protected deleteActionTransform(): string | null;
|
|
274
|
+
protected isSwipeRemovable(): boolean;
|
|
275
|
+
protected quantityValue(): string;
|
|
276
|
+
protected updateQuantity(value: string): void;
|
|
277
|
+
protected onRowTouchStart(event: TouchEvent): void;
|
|
278
|
+
protected onRowTouchMove(event: TouchEvent): void;
|
|
279
|
+
protected onRowTouchEnd(event: TouchEvent): void;
|
|
280
|
+
protected onRowTouchCancel(): void;
|
|
281
|
+
protected onBasketClick(event: MouseEvent): void;
|
|
282
|
+
private formatQuantity;
|
|
283
|
+
private normalizedUnit;
|
|
284
|
+
protected formatCurrency(value: number): string;
|
|
285
|
+
private resetSwipe;
|
|
286
|
+
private triggerRemove;
|
|
287
|
+
private isMobileViewport;
|
|
288
|
+
private isInteractiveTarget;
|
|
289
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroProductRow, never>;
|
|
290
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroProductRow, "loro-product-row", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": true; "isSignal": true; }; "meta": { "alias": "meta"; "required": false; "isSignal": true; }; "imageName": { "alias": "imageName"; "required": false; "isSignal": true; }; "quantityLabel": { "alias": "quantityLabel"; "required": false; "isSignal": true; }; "quantity": { "alias": "quantity"; "required": false; "isSignal": true; }; "unit": { "alias": "unit"; "required": false; "isSignal": true; }; "total": { "alias": "total"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "divider": { "alias": "divider"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "prices": { "alias": "prices"; "required": false; "isSignal": true; }; }, { "checkedChange": "checkedChange"; "quantityChange": "quantityChange"; "increment": "increment"; "decrement": "decrement"; "rowRemove": "rowRemove"; }, never, never, true, never>;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
declare class LoroProductSection {
|
|
294
|
+
title: _angular_core.InputSignal<string>;
|
|
295
|
+
icon: _angular_core.InputSignal<LoroIconName>;
|
|
296
|
+
collapsible: _angular_core.InputSignal<boolean>;
|
|
297
|
+
protected readonly expanded: _angular_core.WritableSignal<boolean>;
|
|
298
|
+
protected toggle(): void;
|
|
299
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroProductSection, never>;
|
|
300
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroProductSection, "loro-product-section", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
declare class LoroProfileCard {
|
|
304
|
+
name: _angular_core.InputSignal<string>;
|
|
305
|
+
email: _angular_core.InputSignal<string>;
|
|
306
|
+
imageSrc: _angular_core.InputSignal<string | null>;
|
|
307
|
+
changePhotoClick: _angular_core.OutputEmitterRef<void>;
|
|
308
|
+
private readonly imageFailed;
|
|
309
|
+
constructor();
|
|
310
|
+
protected resolvedImageSrc(): string | null;
|
|
311
|
+
protected onImageError(): void;
|
|
312
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroProfileCard, never>;
|
|
313
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroProfileCard, "loro-profile-card", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "email": { "alias": "email"; "required": true; "isSignal": true; }; "imageSrc": { "alias": "imageSrc"; "required": false; "isSignal": true; }; }, { "changePhotoClick": "changePhotoClick"; }, never, never, true, never>;
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
type LoroProfileHeroVariant = 'default' | 'compact' | 'large' | 'support';
|
|
317
|
+
declare class LoroProfileHero {
|
|
318
|
+
variant: _angular_core.InputSignal<LoroProfileHeroVariant>;
|
|
319
|
+
firstName: _angular_core.InputSignal<string>;
|
|
320
|
+
eyebrow: _angular_core.InputSignal<string>;
|
|
321
|
+
greeting: _angular_core.InputSignal<string>;
|
|
322
|
+
profileImageSrc: _angular_core.InputSignal<string | null>;
|
|
323
|
+
profileImageAlt: _angular_core.InputSignal<string>;
|
|
324
|
+
avatarIconName: _angular_core.InputSignal<_juligc99_loro_ui.LoroIconName>;
|
|
325
|
+
avatarIconSize: _angular_core.InputSignal<number>;
|
|
326
|
+
avatarAlt: _angular_core.InputSignal<string>;
|
|
327
|
+
avatarSize: _angular_core.InputSignal<string>;
|
|
328
|
+
avatarRadius: _angular_core.InputSignal<string>;
|
|
329
|
+
parrotImageName: _angular_core.InputSignal<LoroImageName>;
|
|
330
|
+
parrotImageAlt: _angular_core.InputSignal<string>;
|
|
331
|
+
parrotMobileWidth: _angular_core.InputSignal<string>;
|
|
332
|
+
parrotWebWidth: _angular_core.InputSignal<string>;
|
|
333
|
+
eyebrowFontSize: _angular_core.InputSignal<string>;
|
|
334
|
+
titleFontSize: _angular_core.InputSignal<string>;
|
|
335
|
+
greetingFontSize: _angular_core.InputSignal<string>;
|
|
336
|
+
elevated: _angular_core.InputSignal<boolean>;
|
|
337
|
+
avatarIconCssSize(): string;
|
|
338
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroProfileHero, never>;
|
|
339
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroProfileHero, "loro-profile-hero", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "firstName": { "alias": "firstName"; "required": false; "isSignal": true; }; "eyebrow": { "alias": "eyebrow"; "required": false; "isSignal": true; }; "greeting": { "alias": "greeting"; "required": false; "isSignal": true; }; "profileImageSrc": { "alias": "profileImageSrc"; "required": false; "isSignal": true; }; "profileImageAlt": { "alias": "profileImageAlt"; "required": false; "isSignal": true; }; "avatarIconName": { "alias": "avatarIconName"; "required": false; "isSignal": true; }; "avatarIconSize": { "alias": "avatarIconSize"; "required": false; "isSignal": true; }; "avatarAlt": { "alias": "avatarAlt"; "required": false; "isSignal": true; }; "avatarSize": { "alias": "avatarSize"; "required": false; "isSignal": true; }; "avatarRadius": { "alias": "avatarRadius"; "required": false; "isSignal": true; }; "parrotImageName": { "alias": "parrotImageName"; "required": false; "isSignal": true; }; "parrotImageAlt": { "alias": "parrotImageAlt"; "required": false; "isSignal": true; }; "parrotMobileWidth": { "alias": "parrotMobileWidth"; "required": false; "isSignal": true; }; "parrotWebWidth": { "alias": "parrotWebWidth"; "required": false; "isSignal": true; }; "eyebrowFontSize": { "alias": "eyebrowFontSize"; "required": false; "isSignal": true; }; "titleFontSize": { "alias": "titleFontSize"; "required": false; "isSignal": true; }; "greetingFontSize": { "alias": "greetingFontSize"; "required": false; "isSignal": true; }; "elevated": { "alias": "elevated"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
type LoroStatCardVariant = 'default' | 'tinted' | 'danger' | 'compare-summary' | 'compare-inline' | 'image-corner' | 'card-basket';
|
|
343
|
+
declare class LoroStatCard {
|
|
344
|
+
title: _angular_core.InputSignal<string>;
|
|
345
|
+
value: _angular_core.InputSignal<string>;
|
|
346
|
+
description: _angular_core.InputSignal<string>;
|
|
347
|
+
eyebrow: _angular_core.InputSignal<string>;
|
|
348
|
+
icon: _angular_core.InputSignal<LoroIconName | null>;
|
|
349
|
+
iconSize: _angular_core.InputSignal<number>;
|
|
350
|
+
image: _angular_core.InputSignal<LoroImageName | null>;
|
|
351
|
+
topImage: _angular_core.InputSignal<LoroImageName | null>;
|
|
352
|
+
variant: _angular_core.InputSignal<LoroStatCardVariant>;
|
|
353
|
+
total: _angular_core.InputSignal<number>;
|
|
354
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroStatCard, never>;
|
|
355
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroStatCard, "loro-stat-card", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "eyebrow": { "alias": "eyebrow"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; "image": { "alias": "image"; "required": false; "isSignal": true; }; "topImage": { "alias": "topImage"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "total": { "alias": "total"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
type LoroStoreRankCardVariant = 'default' | 'compact';
|
|
359
|
+
declare class LoroStoreRankCard {
|
|
360
|
+
rank: _angular_core.InputSignal<number>;
|
|
361
|
+
name: _angular_core.InputSignal<string>;
|
|
362
|
+
price: _angular_core.InputSignal<number>;
|
|
363
|
+
delta: _angular_core.InputSignal<number>;
|
|
364
|
+
logoName: _angular_core.InputSignal<LoroImageName | null>;
|
|
365
|
+
best: _angular_core.InputSignal<boolean>;
|
|
366
|
+
variant: _angular_core.InputSignal<LoroStoreRankCardVariant>;
|
|
367
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroStoreRankCard, never>;
|
|
368
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroStoreRankCard, "loro-store-rank-card", never, { "rank": { "alias": "rank"; "required": true; "isSignal": true; }; "name": { "alias": "name"; "required": true; "isSignal": true; }; "price": { "alias": "price"; "required": true; "isSignal": true; }; "delta": { "alias": "delta"; "required": false; "isSignal": true; }; "logoName": { "alias": "logoName"; "required": false; "isSignal": true; }; "best": { "alias": "best"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
declare class LoroSummaryBar {
|
|
372
|
+
totalLabel: _angular_core.InputSignal<string>;
|
|
373
|
+
total: _angular_core.InputSignal<number>;
|
|
374
|
+
primaryLabel: _angular_core.InputSignal<string>;
|
|
375
|
+
secondaryLabel: _angular_core.InputSignal<string>;
|
|
376
|
+
helper: _angular_core.InputSignal<string>;
|
|
377
|
+
leftImage: _angular_core.InputSignal<LoroImageName>;
|
|
378
|
+
rightImage: _angular_core.InputSignal<LoroImageName>;
|
|
379
|
+
primaryDisabled: _angular_core.InputSignal<boolean>;
|
|
380
|
+
secondaryDisabled: _angular_core.InputSignal<boolean>;
|
|
381
|
+
primaryAction: _angular_core.OutputEmitterRef<void>;
|
|
382
|
+
secondaryAction: _angular_core.OutputEmitterRef<void>;
|
|
383
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroSummaryBar, never>;
|
|
384
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroSummaryBar, "loro-summary-bar", never, { "totalLabel": { "alias": "totalLabel"; "required": false; "isSignal": true; }; "total": { "alias": "total"; "required": true; "isSignal": true; }; "primaryLabel": { "alias": "primaryLabel"; "required": false; "isSignal": true; }; "secondaryLabel": { "alias": "secondaryLabel"; "required": false; "isSignal": true; }; "helper": { "alias": "helper"; "required": false; "isSignal": true; }; "leftImage": { "alias": "leftImage"; "required": false; "isSignal": true; }; "rightImage": { "alias": "rightImage"; "required": false; "isSignal": true; }; "primaryDisabled": { "alias": "primaryDisabled"; "required": false; "isSignal": true; }; "secondaryDisabled": { "alias": "secondaryDisabled"; "required": false; "isSignal": true; }; }, { "primaryAction": "primaryAction"; "secondaryAction": "secondaryAction"; }, never, never, true, never>;
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
type LoroTabAlign = 'flex' | 'block';
|
|
388
|
+
interface LoroTabOption {
|
|
389
|
+
readonly value: string;
|
|
390
|
+
readonly label: string;
|
|
391
|
+
readonly icon?: LoroIconName | null;
|
|
392
|
+
readonly ariaLabel?: string;
|
|
393
|
+
}
|
|
394
|
+
declare class LoroTab {
|
|
395
|
+
options: _angular_core.InputSignal<readonly LoroTabOption[]>;
|
|
396
|
+
value: _angular_core.InputSignal<string>;
|
|
397
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
398
|
+
align: _angular_core.InputSignal<LoroTabAlign>;
|
|
399
|
+
iconSize: _angular_core.InputSignal<number>;
|
|
400
|
+
change: _angular_core.OutputEmitterRef<string>;
|
|
401
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroTab, never>;
|
|
402
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroTab, "loro-tab", never, { "options": { "alias": "options"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; }, { "change": "change"; }, never, never, true, never>;
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
type LoroAlertVariant = 'neutral' | 'info' | 'success' | 'warning' | 'error';
|
|
406
|
+
type LoroAlertAnnouncement = 'auto' | 'polite' | 'assertive' | 'off';
|
|
407
|
+
declare class LoroAlert {
|
|
408
|
+
/** Visible heading. Keep it short and specific. */
|
|
409
|
+
readonly title: _angular_core.InputSignal<string>;
|
|
410
|
+
/** Plain text body for common inline alerts. Rich content can still be projected. */
|
|
411
|
+
readonly message: _angular_core.InputSignal<string>;
|
|
412
|
+
/** Semantic visual treatment. Meaning must never depend on colour alone. */
|
|
413
|
+
readonly variant: _angular_core.InputSignal<LoroAlertVariant>;
|
|
414
|
+
/** Controls live-region behaviour for dynamically inserted messages. */
|
|
415
|
+
readonly announcement: _angular_core.InputSignal<LoroAlertAnnouncement>;
|
|
416
|
+
/** Allows programmatic focus without adding the alert to the Tab order. */
|
|
417
|
+
readonly focusable: _angular_core.InputSignal<boolean>;
|
|
418
|
+
/** Shows the built-in action button when a label is supplied. */
|
|
419
|
+
readonly actionLabel: _angular_core.InputSignal<string>;
|
|
420
|
+
/** Shows a close button and emits dismissed when activated. */
|
|
421
|
+
readonly dismissible: _angular_core.InputSignal<boolean>;
|
|
422
|
+
/** Accessible name for the icon-only close button. */
|
|
423
|
+
readonly dismissLabel: _angular_core.InputSignal<string>;
|
|
424
|
+
/** Emitted by the built-in action button. */
|
|
425
|
+
readonly action: _angular_core.OutputEmitterRef<void>;
|
|
426
|
+
/** Emitted by the close button. The parent decides whether to remove the alert. */
|
|
427
|
+
readonly dismissed: _angular_core.OutputEmitterRef<void>;
|
|
428
|
+
protected readonly resolvedIcon: _angular_core.Signal<LoroIconName>;
|
|
429
|
+
protected readonly resolvedIconColor: _angular_core.Signal<string>;
|
|
430
|
+
protected readonly role: _angular_core.Signal<"status" | "alert" | null>;
|
|
431
|
+
protected readonly ariaLive: _angular_core.Signal<"polite" | "assertive" | null>;
|
|
432
|
+
private readonly resolvedAnnouncement;
|
|
433
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroAlert, never>;
|
|
434
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroAlert, "loro-alert", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "announcement": { "alias": "announcement"; "required": false; "isSignal": true; }; "focusable": { "alias": "focusable"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; "dismissLabel": { "alias": "dismissLabel"; "required": false; "isSignal": true; }; }, { "action": "action"; "dismissed": "dismissed"; }, never, ["*", "[loroAlertActions]"], true, never>;
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
declare class LoroNotification {
|
|
438
|
+
count: _angular_core.InputSignal<number>;
|
|
439
|
+
maxCount: _angular_core.InputSignal<number>;
|
|
440
|
+
showZero: _angular_core.InputSignal<boolean>;
|
|
441
|
+
active: _angular_core.InputSignal<boolean>;
|
|
442
|
+
expanded: _angular_core.InputSignal<boolean | null>;
|
|
443
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
444
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
445
|
+
iconSize: _angular_core.InputSignal<number>;
|
|
446
|
+
notificationClick: _angular_core.OutputEmitterRef<void>;
|
|
447
|
+
protected readonly showBadge: _angular_core.Signal<boolean>;
|
|
448
|
+
protected readonly badgeLabel: _angular_core.Signal<string>;
|
|
449
|
+
protected readonly badgeAriaLabel: _angular_core.Signal<string>;
|
|
450
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroNotification, never>;
|
|
451
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroNotification, "loro-notification", never, { "count": { "alias": "count"; "required": false; "isSignal": true; }; "maxCount": { "alias": "maxCount"; "required": false; "isSignal": true; }; "showZero": { "alias": "showZero"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; }, { "notificationClick": "notificationClick"; }, never, never, true, never>;
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
interface LoroNotificationItem {
|
|
455
|
+
id: string;
|
|
456
|
+
title: string;
|
|
457
|
+
message: string;
|
|
458
|
+
time?: string;
|
|
459
|
+
icon?: LoroIconName;
|
|
460
|
+
unread?: boolean;
|
|
461
|
+
}
|
|
462
|
+
declare class LoroNotificationPanel {
|
|
463
|
+
title: _angular_core.InputSignal<string>;
|
|
464
|
+
items: _angular_core.InputSignal<readonly LoroNotificationItem[]>;
|
|
465
|
+
presentation: _angular_core.InputSignal<"dropdown" | "sheet">;
|
|
466
|
+
showMarkAll: _angular_core.InputSignal<boolean>;
|
|
467
|
+
markAllLabel: _angular_core.InputSignal<string>;
|
|
468
|
+
showClearAll: _angular_core.InputSignal<boolean>;
|
|
469
|
+
clearAllLabel: _angular_core.InputSignal<string>;
|
|
470
|
+
emptyIcon: _angular_core.InputSignal<LoroIconName>;
|
|
471
|
+
emptyTitle: _angular_core.InputSignal<string>;
|
|
472
|
+
emptyMessage: _angular_core.InputSignal<string>;
|
|
473
|
+
itemClick: _angular_core.OutputEmitterRef<LoroNotificationItem>;
|
|
474
|
+
itemRemove: _angular_core.OutputEmitterRef<LoroNotificationItem>;
|
|
475
|
+
markAllRead: _angular_core.OutputEmitterRef<void>;
|
|
476
|
+
clearAll: _angular_core.OutputEmitterRef<void>;
|
|
477
|
+
protected readonly hasUnread: _angular_core.Signal<boolean>;
|
|
478
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroNotificationPanel, never>;
|
|
479
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroNotificationPanel, "loro-notification-panel", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "presentation": { "alias": "presentation"; "required": false; "isSignal": true; }; "showMarkAll": { "alias": "showMarkAll"; "required": false; "isSignal": true; }; "markAllLabel": { "alias": "markAllLabel"; "required": false; "isSignal": true; }; "showClearAll": { "alias": "showClearAll"; "required": false; "isSignal": true; }; "clearAllLabel": { "alias": "clearAllLabel"; "required": false; "isSignal": true; }; "emptyIcon": { "alias": "emptyIcon"; "required": false; "isSignal": true; }; "emptyTitle": { "alias": "emptyTitle"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; "itemRemove": "itemRemove"; "markAllRead": "markAllRead"; "clearAll": "clearAll"; }, never, never, true, never>;
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
declare class LoroNotificationRow {
|
|
483
|
+
title: _angular_core.InputSignal<string>;
|
|
484
|
+
message: _angular_core.InputSignal<string>;
|
|
485
|
+
time: _angular_core.InputSignal<string>;
|
|
486
|
+
icon: _angular_core.InputSignal<LoroIconName>;
|
|
487
|
+
unread: _angular_core.InputSignal<boolean>;
|
|
488
|
+
rowClick: _angular_core.OutputEmitterRef<void>;
|
|
489
|
+
rowRemove: _angular_core.OutputEmitterRef<void>;
|
|
490
|
+
protected readonly dragX: _angular_core.WritableSignal<number>;
|
|
491
|
+
protected readonly dragging: _angular_core.WritableSignal<boolean>;
|
|
492
|
+
protected readonly armed: _angular_core.WritableSignal<boolean>;
|
|
493
|
+
protected readonly removing: _angular_core.WritableSignal<boolean>;
|
|
494
|
+
private touchStartX;
|
|
495
|
+
private touchStartY;
|
|
496
|
+
private clickSuppressed;
|
|
497
|
+
private static readonly REVEAL_PX;
|
|
498
|
+
private static readonly MAX_PX;
|
|
499
|
+
private static readonly DELETE_EXTRA_PX;
|
|
500
|
+
protected onTouchStart(event: TouchEvent): void;
|
|
501
|
+
protected onTouchMove(event: TouchEvent): void;
|
|
502
|
+
protected onTouchEnd(): void;
|
|
503
|
+
protected resetDrag(): void;
|
|
504
|
+
protected onRowClick(): void;
|
|
505
|
+
protected onRowKeydown(event: Event): void;
|
|
506
|
+
protected onDeleteClick(event: Event): void;
|
|
507
|
+
private startRemove;
|
|
508
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroNotificationRow, never>;
|
|
509
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroNotificationRow, "loro-notification-row", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "message": { "alias": "message"; "required": true; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "unread": { "alias": "unread"; "required": false; "isSignal": true; }; }, { "rowClick": "rowClick"; "rowRemove": "rowRemove"; }, never, never, true, never>;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
declare class LoroSpinner {
|
|
513
|
+
protected readonly iconName = "image-loro-icon-default";
|
|
514
|
+
readonly message: _angular_core.InputSignal<string>;
|
|
515
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
516
|
+
readonly showBrand: _angular_core.InputSignal<boolean>;
|
|
517
|
+
readonly brandText: _angular_core.InputSignal<string>;
|
|
518
|
+
readonly showMessage: _angular_core.InputSignal<boolean>;
|
|
519
|
+
readonly showDots: _angular_core.InputSignal<boolean>;
|
|
520
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroSpinner, never>;
|
|
521
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroSpinner, "loro-spinner", never, { "message": { "alias": "message"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "showBrand": { "alias": "showBrand"; "required": false; "isSignal": true; }; "brandText": { "alias": "brandText"; "required": false; "isSignal": true; }; "showMessage": { "alias": "showMessage"; "required": false; "isSignal": true; }; "showDots": { "alias": "showDots"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
type LoroToastVariant = 'loading' | 'success' | 'info' | 'warning' | 'error';
|
|
525
|
+
type LoroToastPosition = 'top-right' | 'bottom-right' | 'bottom-center' | 'inline';
|
|
526
|
+
declare class LoroToast {
|
|
527
|
+
message: _angular_core.InputSignal<string>;
|
|
528
|
+
variant: _angular_core.InputSignal<LoroToastVariant>;
|
|
529
|
+
position: _angular_core.InputSignal<LoroToastPosition>;
|
|
530
|
+
visible: _angular_core.InputSignal<boolean>;
|
|
531
|
+
dismissible: _angular_core.InputSignal<boolean>;
|
|
532
|
+
dismiss: _angular_core.OutputEmitterRef<void>;
|
|
533
|
+
protected resolvedIcon(): 'check' | 'info' | 'warning' | 'shield-alert';
|
|
534
|
+
protected iconColor(): 'success' | 'danger' | 'warning' | 'primary';
|
|
535
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroToast, never>;
|
|
536
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroToast, "loro-toast", never, { "message": { "alias": "message"; "required": true; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; }, { "dismiss": "dismiss"; }, never, never, true, never>;
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
type LoroAuthFieldState = 'default' | 'error';
|
|
540
|
+
declare class LoroAuthField {
|
|
541
|
+
icon: _angular_core.InputSignal<LoroIconName>;
|
|
542
|
+
label: _angular_core.InputSignal<string>;
|
|
543
|
+
placeholder: _angular_core.InputSignal<string>;
|
|
544
|
+
value: _angular_core.InputSignal<string>;
|
|
545
|
+
type: _angular_core.InputSignal<"email" | "text" | "password">;
|
|
546
|
+
autocomplete: _angular_core.InputSignal<string>;
|
|
547
|
+
selected: _angular_core.InputSignal<boolean>;
|
|
548
|
+
state: _angular_core.InputSignal<LoroAuthFieldState>;
|
|
549
|
+
errorMessage: _angular_core.InputSignal<string>;
|
|
550
|
+
valueChange: _angular_core.OutputEmitterRef<string>;
|
|
551
|
+
protected readonly errorId: string;
|
|
552
|
+
protected readonly errorText: _angular_core.Signal<string>;
|
|
553
|
+
protected readonly hasError: _angular_core.Signal<boolean>;
|
|
554
|
+
protected readonly passwordVisible: _angular_core.WritableSignal<boolean>;
|
|
555
|
+
protected showToggle(): boolean;
|
|
556
|
+
protected resolvedType(): "email" | "text" | "password";
|
|
557
|
+
protected toggleVisibility(): void;
|
|
558
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroAuthField, never>;
|
|
559
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroAuthField, "loro-auth-field", never, { "icon": { "alias": "icon"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "autocomplete": { "alias": "autocomplete"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
560
|
+
}
|
|
561
|
+
|
|
562
|
+
declare class LoroCheckbox implements FormCheckboxControl {
|
|
563
|
+
checked: _angular_core.ModelSignal<boolean>;
|
|
564
|
+
touched: _angular_core.ModelSignal<boolean>;
|
|
565
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
566
|
+
readonly: _angular_core.InputSignal<boolean>;
|
|
567
|
+
required: _angular_core.InputSignal<boolean>;
|
|
568
|
+
invalid: _angular_core.InputSignal<boolean>;
|
|
569
|
+
errors: _angular_core.InputSignal<readonly WithOptionalFieldTree<ValidationError>[]>;
|
|
570
|
+
helperText: _angular_core.InputSignal<string>;
|
|
571
|
+
text: _angular_core.InputSignal<string>;
|
|
572
|
+
protected readonly errorText: _angular_core.Signal<string>;
|
|
573
|
+
protected readonly showError: _angular_core.Signal<boolean>;
|
|
574
|
+
protected toggle(checked: boolean): void;
|
|
575
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroCheckbox, never>;
|
|
576
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroCheckbox, "loro-checkbox", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "touched": "touchedChange"; }, never, ["*"], true, never>;
|
|
577
|
+
}
|
|
578
|
+
|
|
579
|
+
interface LoroDropdownOption {
|
|
580
|
+
label: string;
|
|
581
|
+
value: string;
|
|
582
|
+
}
|
|
583
|
+
declare class LoroDropdown {
|
|
584
|
+
label: _angular_core.InputSignal<string>;
|
|
585
|
+
placeholder: _angular_core.InputSignal<string>;
|
|
586
|
+
value: _angular_core.InputSignal<string>;
|
|
587
|
+
options: _angular_core.InputSignal<readonly LoroDropdownOption[]>;
|
|
588
|
+
valueChange: _angular_core.OutputEmitterRef<string>;
|
|
589
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroDropdown, never>;
|
|
590
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroDropdown, "loro-dropdown", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
591
|
+
}
|
|
592
|
+
|
|
593
|
+
declare class LoroFilterChip {
|
|
594
|
+
label: _angular_core.InputSignal<string>;
|
|
595
|
+
value: _angular_core.InputSignal<string>;
|
|
596
|
+
icon: _angular_core.InputSignal<LoroIconName | null>;
|
|
597
|
+
active: _angular_core.InputSignal<boolean>;
|
|
598
|
+
selected: _angular_core.OutputEmitterRef<string>;
|
|
599
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroFilterChip, never>;
|
|
600
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroFilterChip, "loro-filter-chip", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; }, { "selected": "selected"; }, never, never, true, never>;
|
|
601
|
+
}
|
|
602
|
+
|
|
603
|
+
type LoroInputUnit = 'kg' | 'ud';
|
|
604
|
+
type LoroInputVariant = 'default' | 'withIcon' | 'search' | 'photo' | 'stepper';
|
|
605
|
+
type LoroInputState = 'default' | 'error' | 'success' | 'loading';
|
|
606
|
+
declare class LoroInput implements FormValueControl<string> {
|
|
607
|
+
label: _angular_core.InputSignal<string>;
|
|
608
|
+
placeholder: _angular_core.InputSignal<string>;
|
|
609
|
+
helperText: _angular_core.InputSignal<string>;
|
|
610
|
+
value: _angular_core.ModelSignal<string>;
|
|
611
|
+
type: _angular_core.InputSignal<"email" | "search" | "text" | "tel" | "password">;
|
|
612
|
+
name: _angular_core.InputSignal<string>;
|
|
613
|
+
autocomplete: _angular_core.InputSignal<string>;
|
|
614
|
+
inputmode: _angular_core.InputSignal<"" | "email" | "search" | "text" | "none" | "tel" | "url" | "numeric" | "decimal">;
|
|
615
|
+
icon: _angular_core.InputSignal<LoroIconName | null>;
|
|
616
|
+
iconSize: _angular_core.InputSignal<number>;
|
|
617
|
+
trailingIcon: _angular_core.InputSignal<LoroIconName | null>;
|
|
618
|
+
trailingIconSize: _angular_core.InputSignal<number>;
|
|
619
|
+
trailingAriaLabel: _angular_core.InputSignal<string>;
|
|
620
|
+
variant: _angular_core.InputSignal<LoroInputVariant>;
|
|
621
|
+
state: _angular_core.InputSignal<LoroInputState>;
|
|
622
|
+
errorMessage: _angular_core.InputSignal<string>;
|
|
623
|
+
errors: _angular_core.InputSignal<readonly WithOptionalFieldTree<ValidationError>[]>;
|
|
624
|
+
invalid: _angular_core.InputSignal<boolean>;
|
|
625
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
626
|
+
readonly: _angular_core.InputSignal<boolean>;
|
|
627
|
+
required: _angular_core.InputSignal<boolean>;
|
|
628
|
+
touched: _angular_core.ModelSignal<boolean>;
|
|
629
|
+
unit: _angular_core.InputSignal<string>;
|
|
630
|
+
step: _angular_core.InputSignal<number>;
|
|
631
|
+
min: _angular_core.InputSignal<number | undefined>;
|
|
632
|
+
max: _angular_core.InputSignal<number | undefined>;
|
|
633
|
+
trailingClick: _angular_core.OutputEmitterRef<void>;
|
|
634
|
+
private readonly control;
|
|
635
|
+
protected readonly errorId: string;
|
|
636
|
+
protected readonly errorText: _angular_core.Signal<string>;
|
|
637
|
+
protected readonly hasError: _angular_core.Signal<boolean>;
|
|
638
|
+
protected readonly hasSuccess: _angular_core.Signal<boolean>;
|
|
639
|
+
protected readonly hasLoading: _angular_core.Signal<boolean>;
|
|
640
|
+
protected readonly resolvedLeadingIconColor: _angular_core.Signal<string>;
|
|
641
|
+
protected readonly resolvedTrailingIconColor: _angular_core.Signal<string>;
|
|
642
|
+
focus(options?: FocusOptions): void;
|
|
643
|
+
protected adjust(delta: number): void;
|
|
644
|
+
protected normalizeValue(value: string): void;
|
|
645
|
+
protected updateValue(value: string): void;
|
|
646
|
+
protected markAsTouched(): void;
|
|
647
|
+
private coerceNumber;
|
|
648
|
+
private formatValue;
|
|
649
|
+
protected normalizedUnit(): LoroInputUnit;
|
|
650
|
+
protected stepperInputSize(): number;
|
|
651
|
+
protected stepperInputMaxLength(): number;
|
|
652
|
+
protected sanitizeStepperInput(event: Event): void;
|
|
653
|
+
private clampValue;
|
|
654
|
+
private sanitizeValue;
|
|
655
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroInput, never>;
|
|
656
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroInput, "loro-input", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "autocomplete": { "alias": "autocomplete"; "required": false; "isSignal": true; }; "inputmode": { "alias": "inputmode"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; "trailingIcon": { "alias": "trailingIcon"; "required": false; "isSignal": true; }; "trailingIconSize": { "alias": "trailingIconSize"; "required": false; "isSignal": true; }; "trailingAriaLabel": { "alias": "trailingAriaLabel"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "unit": { "alias": "unit"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; "trailingClick": "trailingClick"; }, never, never, true, never>;
|
|
657
|
+
}
|
|
658
|
+
|
|
659
|
+
type LoroRadioVariant = 'default' | 'row';
|
|
660
|
+
declare class LoroRadio {
|
|
661
|
+
label: _angular_core.InputSignal<string>;
|
|
662
|
+
value: _angular_core.InputSignal<string>;
|
|
663
|
+
description: _angular_core.InputSignal<string>;
|
|
664
|
+
checked: _angular_core.InputSignal<boolean>;
|
|
665
|
+
variant: _angular_core.InputSignal<LoroRadioVariant>;
|
|
666
|
+
selected: _angular_core.OutputEmitterRef<string>;
|
|
667
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroRadio, never>;
|
|
668
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroRadio, "loro-radio", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, { "selected": "selected"; }, never, never, true, never>;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
interface LoroSegmentedOption {
|
|
672
|
+
label: string;
|
|
673
|
+
value: string;
|
|
674
|
+
}
|
|
675
|
+
declare class LoroSegmentedControl {
|
|
676
|
+
options: _angular_core.InputSignal<readonly LoroSegmentedOption[]>;
|
|
677
|
+
value: _angular_core.InputSignal<string>;
|
|
678
|
+
valueChange: _angular_core.OutputEmitterRef<string>;
|
|
679
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroSegmentedControl, never>;
|
|
680
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroSegmentedControl, "loro-segmented-control", never, { "options": { "alias": "options"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
declare class LoroSelect {
|
|
684
|
+
title: _angular_core.InputSignal<string>;
|
|
685
|
+
subtitle: _angular_core.InputSignal<string>;
|
|
686
|
+
meta: _angular_core.InputSignal<string>;
|
|
687
|
+
icon: _angular_core.InputSignal<LoroIconName>;
|
|
688
|
+
badge: _angular_core.InputSignal<string>;
|
|
689
|
+
status: _angular_core.InputSignal<string>;
|
|
690
|
+
selected: _angular_core.InputSignal<boolean>;
|
|
691
|
+
actionLabel: _angular_core.InputSignal<string>;
|
|
692
|
+
action: _angular_core.OutputEmitterRef<void>;
|
|
693
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroSelect, never>;
|
|
694
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroSelect, "loro-select", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "meta": { "alias": "meta"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; }, { "action": "action"; }, never, never, true, never>;
|
|
695
|
+
}
|
|
696
|
+
|
|
697
|
+
declare class LoroTextArea {
|
|
698
|
+
label: _angular_core.InputSignal<string>;
|
|
699
|
+
placeholder: _angular_core.InputSignal<string>;
|
|
700
|
+
value: _angular_core.InputSignal<string>;
|
|
701
|
+
maxLength: _angular_core.InputSignal<number | null>;
|
|
702
|
+
valueChange: _angular_core.OutputEmitterRef<string>;
|
|
703
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroTextArea, never>;
|
|
704
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroTextArea, "loro-text-area", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
705
|
+
}
|
|
706
|
+
|
|
707
|
+
declare class LoroToggle {
|
|
708
|
+
checked: _angular_core.InputSignal<boolean>;
|
|
709
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
710
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
711
|
+
checkedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
712
|
+
protected toggle(): void;
|
|
713
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroToggle, never>;
|
|
714
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroToggle, "loro-toggle", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "checkedChange": "checkedChange"; }, never, never, true, never>;
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
declare class LoroUpload {
|
|
718
|
+
label: _angular_core.InputSignal<string>;
|
|
719
|
+
title: _angular_core.InputSignal<string>;
|
|
720
|
+
description: _angular_core.InputSignal<string>;
|
|
721
|
+
accept: _angular_core.InputSignal<string>;
|
|
722
|
+
optional: _angular_core.InputSignal<boolean>;
|
|
723
|
+
compact: _angular_core.InputSignal<boolean>;
|
|
724
|
+
fileSelected: _angular_core.OutputEmitterRef<File | null>;
|
|
725
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroUpload, never>;
|
|
726
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroUpload, "loro-upload", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "optional": { "alias": "optional"; "required": false; "isSignal": true; }; "compact": { "alias": "compact"; "required": false; "isSignal": true; }; }, { "fileSelected": "fileSelected"; }, never, never, true, never>;
|
|
727
|
+
}
|
|
728
|
+
|
|
729
|
+
type LoroModalSize = 'sm' | 'md' | 'lg';
|
|
730
|
+
type LoroModalPlacement = 'center' | 'sheet';
|
|
731
|
+
declare class LoroModal {
|
|
732
|
+
private readonly document;
|
|
733
|
+
private dragStartY;
|
|
734
|
+
private dragStartTop;
|
|
735
|
+
open: _angular_core.InputSignal<boolean>;
|
|
736
|
+
title: _angular_core.InputSignal<string>;
|
|
737
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
738
|
+
size: _angular_core.InputSignal<LoroModalSize>;
|
|
739
|
+
placement: _angular_core.InputSignal<LoroModalPlacement>;
|
|
740
|
+
dismissible: _angular_core.InputSignal<boolean>;
|
|
741
|
+
sheetDragToClose: _angular_core.InputSignal<boolean>;
|
|
742
|
+
sheetRestTop: _angular_core.InputSignal<string>;
|
|
743
|
+
showBackdrop: _angular_core.InputSignal<boolean>;
|
|
744
|
+
closeOnBackdrop: _angular_core.InputSignal<boolean>;
|
|
745
|
+
modalClose: _angular_core.OutputEmitterRef<void>;
|
|
746
|
+
protected readonly sheetDragging: _angular_core.WritableSignal<boolean>;
|
|
747
|
+
private readonly sheetTop;
|
|
748
|
+
protected readonly sheetRestTopCss: _angular_core.Signal<string | null>;
|
|
749
|
+
protected readonly sheetDragOffsetCss: _angular_core.Signal<string | null>;
|
|
750
|
+
protected readonly backdropOpacity: _angular_core.Signal<string>;
|
|
751
|
+
constructor();
|
|
752
|
+
protected requestClose(): void;
|
|
753
|
+
protected onSheetTouchStart(event: TouchEvent, dialog: HTMLElement): void;
|
|
754
|
+
protected onSheetTouchMove(event: TouchEvent): void;
|
|
755
|
+
protected onSheetTouchEnd(): void;
|
|
756
|
+
private resetSheetState;
|
|
757
|
+
private currentSheetTop;
|
|
758
|
+
private clampSheetTop;
|
|
759
|
+
private collapsedSheetTop;
|
|
760
|
+
private maxSheetTop;
|
|
761
|
+
private viewportHeight;
|
|
762
|
+
private safeAreaInsetTop;
|
|
763
|
+
private lockDocumentScroll;
|
|
764
|
+
private isSheetInteractionEnabled;
|
|
765
|
+
private isDragZone;
|
|
766
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroModal, never>;
|
|
767
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroModal, "loro-modal", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; "sheetDragToClose": { "alias": "sheetDragToClose"; "required": false; "isSignal": true; }; "sheetRestTop": { "alias": "sheetRestTop"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "closeOnBackdrop": { "alias": "closeOnBackdrop"; "required": false; "isSignal": true; }; }, { "modalClose": "modalClose"; }, never, ["*", "[loro-modal-actions]"], true, never>;
|
|
768
|
+
}
|
|
769
|
+
|
|
770
|
+
type LoroIconColorToken = 'default' | 'primary' | 'primary-strong' | 'primary-deep' | 'text' | 'muted' | 'success' | 'danger' | 'warning' | 'inverse';
|
|
771
|
+
type LoroIconColor = LoroIconColorToken | string;
|
|
772
|
+
type LoroIconRenderMode = 'mask' | 'origin';
|
|
773
|
+
type LoroIconSize = number | string;
|
|
774
|
+
declare class LoroIcon {
|
|
775
|
+
name: _angular_core.InputSignal<LoroIconName$1>;
|
|
776
|
+
size: _angular_core.InputSignal<LoroIconSize>;
|
|
777
|
+
alt: _angular_core.InputSignal<string>;
|
|
778
|
+
decorative: _angular_core.InputSignal<boolean>;
|
|
779
|
+
color: _angular_core.InputSignal<string>;
|
|
780
|
+
renderMode: _angular_core.InputSignal<LoroIconRenderMode>;
|
|
781
|
+
protected readonly assetName: _angular_core.Signal<"icon-apple" | "icon-arrow-right" | "icon-auto" | "icon-back" | "icon-bag" | "icon-barcode" | "icon-bell" | "icon-bottle" | "icon-bulb" | "icon-calendar" | "icon-camera" | "icon-cart" | "icon-chart-bar" | "icon-chat" | "icon-check" | "icon-checkbox-empty" | "icon-chevron-down" | "icon-chevron-right" | "icon-chevron-up" | "icon-clock" | "icon-download" | "icon-email" | "icon-eye-off" | "icon-eye" | "icon-globe" | "icon-google" | "icon-headset" | "icon-help" | "icon-home" | "icon-info" | "icon-laptop" | "icon-leaf" | "icon-list" | "icon-location" | "icon-lock" | "icon-logout" | "icon-megaphone" | "icon-moon" | "icon-more-vertical" | "icon-nav-compare" | "icon-nav-home" | "icon-nav-list" | "icon-nav-pantry" | "icon-pantry-stock" | "icon-paperclip" | "icon-phone" | "icon-plus-user" | "icon-plus" | "icon-scanner" | "icon-search" | "icon-send" | "icon-settings" | "icon-shelf" | "icon-shield-alert" | "icon-shield" | "icon-star" | "icon-store" | "icon-sun" | "icon-tablet" | "icon-tag" | "icon-tick-circle" | "icon-trash-white" | "icon-trash" | "icon-trend" | "icon-user" | "icon-warning">;
|
|
782
|
+
protected readonly src: _angular_core.Signal<"assets/loro-ui/icons/apple.svg" | "assets/loro-ui/icons/arrow-right.svg" | "assets/loro-ui/icons/auto.svg" | "assets/loro-ui/icons/back.svg" | "assets/loro-ui/icons/bag.svg" | "assets/loro-ui/icons/barcode.svg" | "assets/loro-ui/icons/bell.svg" | "assets/loro-ui/icons/bottle.svg" | "assets/loro-ui/icons/bulb.svg" | "assets/loro-ui/icons/calendar.svg" | "assets/loro-ui/icons/camera.svg" | "assets/loro-ui/icons/cart.svg" | "assets/loro-ui/icons/chart-bar.svg" | "assets/loro-ui/icons/chat.svg" | "assets/loro-ui/icons/check.svg" | "assets/loro-ui/icons/checkbox-empty.svg" | "assets/loro-ui/icons/chevron-down.svg" | "assets/loro-ui/icons/chevron-right.svg" | "assets/loro-ui/icons/chevron-up.svg" | "assets/loro-ui/icons/clock.svg" | "assets/loro-ui/icons/download.svg" | "assets/loro-ui/icons/email.svg" | "assets/loro-ui/icons/eye-off.svg" | "assets/loro-ui/icons/eye.svg" | "assets/loro-ui/icons/globe.svg" | "assets/loro-ui/icons/google.svg" | "assets/loro-ui/icons/headset.svg" | "assets/loro-ui/icons/help.svg" | "assets/loro-ui/icons/home.svg" | "assets/loro-ui/icons/info.svg" | "assets/loro-ui/icons/laptop.svg" | "assets/loro-ui/icons/leaf.svg" | "assets/loro-ui/icons/list.svg" | "assets/loro-ui/icons/location.svg" | "assets/loro-ui/icons/lock.svg" | "assets/loro-ui/icons/logout.svg" | "assets/loro-ui/icons/megaphone.svg" | "assets/loro-ui/icons/moon.svg" | "assets/loro-ui/icons/more-vertical.svg" | "assets/loro-ui/icons/nav-compare.svg" | "assets/loro-ui/icons/nav-home.svg" | "assets/loro-ui/icons/nav-list.svg" | "assets/loro-ui/icons/nav-pantry.svg" | "assets/loro-ui/icons/pantry-stock.svg" | "assets/loro-ui/icons/paperclip.svg" | "assets/loro-ui/icons/phone.svg" | "assets/loro-ui/icons/plus-user.svg" | "assets/loro-ui/icons/plus.svg" | "assets/loro-ui/icons/scanner.svg" | "assets/loro-ui/icons/search.svg" | "assets/loro-ui/icons/send.svg" | "assets/loro-ui/icons/settings.svg" | "assets/loro-ui/icons/shelf.svg" | "assets/loro-ui/icons/shield-alert.svg" | "assets/loro-ui/icons/shield.svg" | "assets/loro-ui/icons/star.svg" | "assets/loro-ui/icons/store.svg" | "assets/loro-ui/icons/sun.svg" | "assets/loro-ui/icons/tablet.svg" | "assets/loro-ui/icons/tag.svg" | "assets/loro-ui/icons/tick-circle.svg" | "assets/loro-ui/icons/trash-white.svg" | "assets/loro-ui/icons/trash.svg" | "assets/loro-ui/icons/trend.svg" | "assets/loro-ui/icons/user.svg" | "assets/loro-ui/icons/warning.svg">;
|
|
783
|
+
protected readonly altText: _angular_core.Signal<string>;
|
|
784
|
+
protected readonly resolvedSize: _angular_core.Signal<string>;
|
|
785
|
+
protected readonly resolvedColor: _angular_core.Signal<string>;
|
|
786
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroIcon, never>;
|
|
787
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroIcon, "loro-icon", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "alt": { "alias": "alt"; "required": false; "isSignal": true; }; "decorative": { "alias": "decorative"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "renderMode": { "alias": "renderMode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
788
|
+
}
|
|
789
|
+
|
|
790
|
+
declare class LoroImage {
|
|
791
|
+
name: _angular_core.InputSignal<LoroImageName$1>;
|
|
792
|
+
alt: _angular_core.InputSignal<string>;
|
|
793
|
+
size: _angular_core.InputSignal<string>;
|
|
794
|
+
width: _angular_core.InputSignal<string>;
|
|
795
|
+
height: _angular_core.InputSignal<string>;
|
|
796
|
+
fit: _angular_core.InputSignal<"contain" | "cover">;
|
|
797
|
+
protected readonly assetName: _angular_core.Signal<"image-al-loro-design-library-home-ai" | "image-favicon-apple-touch-icon" | "image-favicon-assets-xcassets-appicon-appiconset-appicon-any" | "image-favicon-assets-xcassets-appicon-appiconset-appicon-dark" | "image-favicon-assets-xcassets-splash-imageset-splash-2732x2732" | "image-favicon-assets-xcassets-splash-imageset-splash-2732x2732-1" | "image-favicon-assets-xcassets-splash-imageset-splash-2732x2732-2" | "image-favicon-assets-xcassets-splash-imageset-splash-dark-2732x2732" | "image-favicon-assets-xcassets-splash-imageset-splash-dark-2732x2732-1" | "image-favicon-assets-xcassets-splash-imageset-splash-dark-2732x2732-2" | "image-favicon-favicon" | "image-home-icon-ai" | "image-home-icon-basket" | "image-home-icon-compare" | "image-home-icon-expiry" | "image-home-icon-pantry" | "image-home-icon-scan" | "image-image-home" | "image-logo-despensa-buy" | "image-logo-list-buy" | "image-loro-apaisado" | "image-loro-apaisado-blanco" | "image-loro-card-buy" | "image-loro-card-caducidad" | "image-loro-card-comparativa" | "image-loro-card-ia" | "image-loro-card-qr" | "image-loro-despensa" | "image-loro-icon-default" | "image-loro-spinner-ring" | "image-loro-tittle-sub" | "image-pantry-cabinet" | "image-pantry-metric-chart" | "image-product-bananas" | "image-product-milk" | "image-product-pasta" | "image-product-rice" | "image-product-tomatoes" | "image-product-yogurt" | "image-store-ahorramas" | "image-store-alcampo" | "image-store-aldi" | "image-store-bonpreu" | "image-store-caprabo" | "image-store-carrefour" | "image-store-consum" | "image-store-coviran" | "image-store-dia" | "image-store-el-corte-ingles" | "image-store-eroski" | "image-store-froiz" | "image-store-gadis" | "image-store-lidl" | "image-store-mercadona">;
|
|
798
|
+
protected readonly src: _angular_core.Signal<"assets/loro-ui/images/al-loro-design-library-home-ai.png" | "assets/loro-ui/favicons/apple-touch-icon.png" | "assets/loro-ui/favicons/Assets.xcassets/AppIcon.appiconset/AppIcon-Any.png" | "assets/loro-ui/favicons/Assets.xcassets/AppIcon.appiconset/AppIcon-Dark.png" | "assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-2732x2732.png" | "assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-2732x2732-1.png" | "assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-2732x2732-2.png" | "assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-dark-2732x2732.png" | "assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-dark-2732x2732-1.png" | "assets/loro-ui/favicons/Assets.xcassets/Splash.imageset/splash-dark-2732x2732-2.png" | "assets/loro-ui/favicons/favicon.svg" | "assets/loro-ui/images/home-icon-ai.svg" | "assets/loro-ui/images/home-icon-basket.svg" | "assets/loro-ui/images/home-icon-compare.svg" | "assets/loro-ui/images/home-icon-expiry.svg" | "assets/loro-ui/images/home-icon-pantry.svg" | "assets/loro-ui/images/home-icon-scan.svg" | "assets/loro-ui/images/image-home.png" | "assets/loro-ui/images/logo-despensa-buy.png" | "assets/loro-ui/images/logo-list-buy.png" | "assets/loro-ui/images/loro-apaisado.png" | "assets/loro-ui/images/loro-apaisado-blanco.png" | "assets/loro-ui/images/loro-card-buy.png" | "assets/loro-ui/images/loro-card-caducidad.png" | "assets/loro-ui/images/loro-card-comparativa.png" | "assets/loro-ui/images/loro-card-ia.png" | "assets/loro-ui/images/loro-card-qr.png" | "assets/loro-ui/images/loro-despensa.png" | "assets/loro-ui/images/loro-icon-default.png" | "assets/loro-ui/images/loro-spinner-ring.svg" | "assets/loro-ui/images/loro-tittle-sub.png" | "assets/loro-ui/images/pantry-cabinet.svg" | "assets/loro-ui/images/pantry-metric-chart.svg" | "assets/loro-ui/images/product-bananas.svg" | "assets/loro-ui/images/product-milk.svg" | "assets/loro-ui/images/product-pasta.svg" | "assets/loro-ui/images/product-rice.svg" | "assets/loro-ui/images/product-tomatoes.svg" | "assets/loro-ui/images/product-yogurt.svg" | "assets/loro-ui/images/store-ahorramas.svg" | "assets/loro-ui/images/store-alcampo.png" | "assets/loro-ui/images/store-aldi.svg" | "assets/loro-ui/images/store-bonpreu.svg" | "assets/loro-ui/images/store-caprabo.svg" | "assets/loro-ui/images/store-carrefour.svg" | "assets/loro-ui/images/store-consum.png" | "assets/loro-ui/images/store-coviran.png" | "assets/loro-ui/images/store-dia.svg" | "assets/loro-ui/images/store-el-corte-ingles.svg" | "assets/loro-ui/images/store-eroski.png" | "assets/loro-ui/images/store-froiz.svg" | "assets/loro-ui/images/store-gadis.png" | "assets/loro-ui/images/store-lidl.svg" | "assets/loro-ui/images/store-mercadona.svg">;
|
|
799
|
+
protected readonly altText: _angular_core.Signal<string>;
|
|
800
|
+
protected readonly resolvedWidth: _angular_core.Signal<string>;
|
|
801
|
+
protected readonly resolvedHeight: _angular_core.Signal<string>;
|
|
802
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroImage, never>;
|
|
803
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoroImage, "loro-image", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "alt": { "alias": "alt"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "fit": { "alias": "fit"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
804
|
+
}
|
|
805
|
+
|
|
806
|
+
declare class LoroHapticsService {
|
|
807
|
+
private readonly document;
|
|
808
|
+
private readonly vibration;
|
|
809
|
+
impact(style?: 'light' | 'medium' | 'heavy'): void;
|
|
810
|
+
selection(): void;
|
|
811
|
+
notification(type?: 'success' | 'warning' | 'error'): void;
|
|
812
|
+
private trigger;
|
|
813
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoroHapticsService, never>;
|
|
814
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<LoroHapticsService>;
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
export { Footer, LoroAccordion, LoroAlert, LoroAppNav, LoroAssistantCard, LoroAuthField, LoroAuthSocialButton, LoroBadge, LoroButton, LoroCard, LoroCardNav, LoroCheckbox, LoroDashboardCard, LoroDivider, LoroDropdown, LoroFilterChip, LoroHapticsService, LoroIcon, LoroImage, LoroInput, LoroModal, LoroNotification, LoroNotificationPanel, LoroNotificationRow, LoroProductRow, LoroProductSection, LoroProfileCard, LoroProfileHero, LoroRadio, LoroSegmentedControl, LoroSelect, LoroSpinner, LoroStatCard, LoroStoreRankCard, LoroSummaryBar, LoroTab, LoroTextArea, LoroToast, LoroToggle, LoroUpload };
|
|
818
|
+
export type { LoroAlertAnnouncement, LoroAlertVariant, LoroAppNavClick, LoroAppNavItem, LoroAuthFieldState, LoroBadgeVariant, LoroButtonColor, LoroButtonIconMode, LoroButtonSize, LoroButtonType, LoroButtonVariant, LoroButtonWidth, LoroCardJustify, LoroCardNavTrailing, LoroCardNavVariant, LoroCardVariant, LoroDividerAlign, LoroDropdownOption, LoroIconColor, LoroIconColorToken, LoroIconRenderMode, LoroIconSize, LoroInputState, LoroInputUnit, LoroInputVariant, LoroModalPlacement, LoroModalSize, LoroNotificationItem, LoroProductRowStatus, LoroProductRowVariant, LoroRadioVariant, LoroSegmentedOption, LoroStatCardVariant, LoroStoreRankCardVariant, LoroTabAlign, LoroTabOption, LoroToastPosition, LoroToastVariant };
|