@xosue-utils/helpers 0.2.4 → 0.2.6
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.
|
@@ -137,11 +137,11 @@ class SmartPaginationComponent {
|
|
|
137
137
|
this.queryParamsSub.unsubscribe();
|
|
138
138
|
}
|
|
139
139
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SmartPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
140
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: SmartPaginationComponent, isStandalone: true, selector: "smart-pagination", inputs: { resetOnChanges: "resetOnChanges", paramName: "paramName", emptyLabel: "emptyLabel", singlePageLabel: "singlePageLabel", data: "data" }, ngImport: i0, template: "@if (paginationData() && paginationData().total === 0) {\r\n <p class=\"NonResults\">{{ emptyLabel }}</p>\r\n} @else if (paginationData() && paginationData().last_page > 1) {\r\n <nav class=\"pagination\" aria-label=\"Paginaci\u00F3n\">\r\n @if (currentPage() > 1) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() - 1)\" aria-label=\"Anterior\">\r\n <lucide-icon name=\"chevron-left\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n\r\n @for (p of pagesToDisplay(); track $index) {\r\n @if (isPage(p)) {\r\n <a\r\n [class.active]=\"p === currentPage()\"\r\n [href]=\"generateHref(p)\"\r\n (click)=\"goToPage(p); $event.preventDefault()\"\r\n >\r\n {{ p }}\r\n </a>\r\n } @else {\r\n <span class=\"ellipsis\">\u2026</span>\r\n }\r\n }\r\n\r\n @if (currentPage() < lastPage()) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() + 1)\" aria-label=\"Siguiente\">\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n </nav>\r\n} @else {\r\n <p class=\"UniquePage\">{{ singlePageLabel }}</p>\r\n}\r\n", styles: [":host{width:max-content;height:32px;display:flex
|
|
140
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: SmartPaginationComponent, isStandalone: true, selector: "smart-pagination", inputs: { resetOnChanges: "resetOnChanges", paramName: "paramName", emptyLabel: "emptyLabel", singlePageLabel: "singlePageLabel", data: "data" }, ngImport: i0, template: "@if (paginationData() && paginationData().total === 0) {\r\n <p class=\"NonResults\">{{ emptyLabel }}</p>\r\n} @else if (paginationData() && paginationData().last_page > 1) {\r\n <nav class=\"pagination\" aria-label=\"Paginaci\u00F3n\">\r\n @if (currentPage() > 1) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() - 1)\" aria-label=\"Anterior\">\r\n <lucide-icon name=\"chevron-left\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n\r\n @for (p of pagesToDisplay(); track $index) {\r\n @if (isPage(p)) {\r\n <a\r\n [class.active]=\"p === currentPage()\"\r\n [href]=\"generateHref(p)\"\r\n (click)=\"goToPage(p); $event.preventDefault()\"\r\n >\r\n {{ p }}\r\n </a>\r\n } @else {\r\n <span class=\"ellipsis\">\u2026</span>\r\n }\r\n }\r\n\r\n @if (currentPage() < lastPage()) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() + 1)\" aria-label=\"Siguiente\">\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n </nav>\r\n} @else {\r\n <p class=\"UniquePage\">{{ singlePageLabel }}</p>\r\n}\r\n", styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;width:max-content;height:32px;display:flex!important}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.pagination{width:max-content;max-width:280px;height:32px;display:flex;align-items:center;gap:4px;background-color:var(--color-surface-muted, var(--color-surface));border-radius:var(--xosue-libs-layout-radius-lg, 12px);padding:2px;border:1px solid var(--color-border, #e5e5e5)}.pagination a,.pagination button{min-width:28px;height:28px;padding:2px 8px;font-size:14px;font-weight:400;cursor:pointer;border:none;background-color:transparent;color:var(--color-fg-muted, #a3a3a3);border-radius:var(--xosue-libs-layout-radius-md, 8px);display:flex;justify-content:center;align-items:center;text-decoration:none;transition:background-color .15s ease,color .15s ease,transform .1s ease}.pagination a:hover,.pagination button:hover{background-color:color-mix(in srgb,var(--color-surface, #ffffff) 80%,var(--color-border, #e5e5e5));color:var(--color-fg, #171717)}.pagination a:active,.pagination button:active{transform:scale(.98)}.pagination a.active,.pagination button.active{background-color:var(--color-surface, #ffffff);color:var(--color-fg, #171717);font-weight:400;box-shadow:0 1px 2px color-mix(in srgb,var(--color-fg, #171717) 12%,transparent)}.pagination .ellipsis{display:flex;align-items:center;justify-content:center;width:max-content;padding:0 2px;color:var(--color-fg-muted, #a3a3a3)}.NonResults,.UniquePage{width:max-content;max-width:280px;height:32px;display:flex;align-items:center;gap:4px;background-color:var(--color-surface-muted, var(--color-surface));border-radius:var(--xosue-libs-layout-radius-lg, 12px);padding:4px 8px;border:1px solid var(--color-border, #e5e5e5);color:var(--color-fg-muted, #a3a3a3);margin:0;font-size:14px}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "ngmodule", type: CommonModule }] });
|
|
141
141
|
}
|
|
142
142
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SmartPaginationComponent, decorators: [{
|
|
143
143
|
type: Component,
|
|
144
|
-
args: [{ selector: 'smart-pagination', standalone: true, imports: [LucideIconComponent, CommonModule], template: "@if (paginationData() && paginationData().total === 0) {\r\n <p class=\"NonResults\">{{ emptyLabel }}</p>\r\n} @else if (paginationData() && paginationData().last_page > 1) {\r\n <nav class=\"pagination\" aria-label=\"Paginaci\u00F3n\">\r\n @if (currentPage() > 1) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() - 1)\" aria-label=\"Anterior\">\r\n <lucide-icon name=\"chevron-left\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n\r\n @for (p of pagesToDisplay(); track $index) {\r\n @if (isPage(p)) {\r\n <a\r\n [class.active]=\"p === currentPage()\"\r\n [href]=\"generateHref(p)\"\r\n (click)=\"goToPage(p); $event.preventDefault()\"\r\n >\r\n {{ p }}\r\n </a>\r\n } @else {\r\n <span class=\"ellipsis\">\u2026</span>\r\n }\r\n }\r\n\r\n @if (currentPage() < lastPage()) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() + 1)\" aria-label=\"Siguiente\">\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n </nav>\r\n} @else {\r\n <p class=\"UniquePage\">{{ singlePageLabel }}</p>\r\n}\r\n", styles: [":host{width:max-content;height:32px;display:flex
|
|
144
|
+
args: [{ selector: 'smart-pagination', standalone: true, imports: [LucideIconComponent, CommonModule], template: "@if (paginationData() && paginationData().total === 0) {\r\n <p class=\"NonResults\">{{ emptyLabel }}</p>\r\n} @else if (paginationData() && paginationData().last_page > 1) {\r\n <nav class=\"pagination\" aria-label=\"Paginaci\u00F3n\">\r\n @if (currentPage() > 1) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() - 1)\" aria-label=\"Anterior\">\r\n <lucide-icon name=\"chevron-left\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n\r\n @for (p of pagesToDisplay(); track $index) {\r\n @if (isPage(p)) {\r\n <a\r\n [class.active]=\"p === currentPage()\"\r\n [href]=\"generateHref(p)\"\r\n (click)=\"goToPage(p); $event.preventDefault()\"\r\n >\r\n {{ p }}\r\n </a>\r\n } @else {\r\n <span class=\"ellipsis\">\u2026</span>\r\n }\r\n }\r\n\r\n @if (currentPage() < lastPage()) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() + 1)\" aria-label=\"Siguiente\">\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n </nav>\r\n} @else {\r\n <p class=\"UniquePage\">{{ singlePageLabel }}</p>\r\n}\r\n", styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;width:max-content;height:32px;display:flex!important}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.pagination{width:max-content;max-width:280px;height:32px;display:flex;align-items:center;gap:4px;background-color:var(--color-surface-muted, var(--color-surface));border-radius:var(--xosue-libs-layout-radius-lg, 12px);padding:2px;border:1px solid var(--color-border, #e5e5e5)}.pagination a,.pagination button{min-width:28px;height:28px;padding:2px 8px;font-size:14px;font-weight:400;cursor:pointer;border:none;background-color:transparent;color:var(--color-fg-muted, #a3a3a3);border-radius:var(--xosue-libs-layout-radius-md, 8px);display:flex;justify-content:center;align-items:center;text-decoration:none;transition:background-color .15s ease,color .15s ease,transform .1s ease}.pagination a:hover,.pagination button:hover{background-color:color-mix(in srgb,var(--color-surface, #ffffff) 80%,var(--color-border, #e5e5e5));color:var(--color-fg, #171717)}.pagination a:active,.pagination button:active{transform:scale(.98)}.pagination a.active,.pagination button.active{background-color:var(--color-surface, #ffffff);color:var(--color-fg, #171717);font-weight:400;box-shadow:0 1px 2px color-mix(in srgb,var(--color-fg, #171717) 12%,transparent)}.pagination .ellipsis{display:flex;align-items:center;justify-content:center;width:max-content;padding:0 2px;color:var(--color-fg-muted, #a3a3a3)}.NonResults,.UniquePage{width:max-content;max-width:280px;height:32px;display:flex;align-items:center;gap:4px;background-color:var(--color-surface-muted, var(--color-surface));border-radius:var(--xosue-libs-layout-radius-lg, 12px);padding:4px 8px;border:1px solid var(--color-border, #e5e5e5);color:var(--color-fg-muted, #a3a3a3);margin:0;font-size:14px}\n"] }]
|
|
145
145
|
}], propDecorators: { resetOnChanges: [{
|
|
146
146
|
type: Input
|
|
147
147
|
}], paramName: [{
|
|
@@ -160,11 +160,12 @@ class EmptyStateComponent {
|
|
|
160
160
|
icon = input('inbox');
|
|
161
161
|
primaryLabel = input(null);
|
|
162
162
|
primaryIcon = input(null);
|
|
163
|
+
primaryLink = input(null);
|
|
163
164
|
secondaryLabel = input(null);
|
|
164
165
|
primary = output();
|
|
165
166
|
secondary = output();
|
|
166
167
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: EmptyStateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
167
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: EmptyStateComponent, isStandalone: true, selector: "empty-state", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, primaryLabel: { classPropertyName: "primaryLabel", publicName: "primaryLabel", isSignal: true, isRequired: false, transformFunction: null }, primaryIcon: { classPropertyName: "primaryIcon", publicName: "primaryIcon", isSignal: true, isRequired: false, transformFunction: null }, secondaryLabel: { classPropertyName: "secondaryLabel", publicName: "secondaryLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { primary: "primary", secondary: "secondary" }, ngImport: i0, template: `
|
|
168
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: EmptyStateComponent, isStandalone: true, selector: "empty-state", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, primaryLabel: { classPropertyName: "primaryLabel", publicName: "primaryLabel", isSignal: true, isRequired: false, transformFunction: null }, primaryIcon: { classPropertyName: "primaryIcon", publicName: "primaryIcon", isSignal: true, isRequired: false, transformFunction: null }, primaryLink: { classPropertyName: "primaryLink", publicName: "primaryLink", isSignal: true, isRequired: false, transformFunction: null }, secondaryLabel: { classPropertyName: "secondaryLabel", publicName: "secondaryLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { primary: "primary", secondary: "secondary" }, ngImport: i0, template: `
|
|
168
169
|
<div class="EmptyState">
|
|
169
170
|
@if (icon()) {
|
|
170
171
|
<div class="EmptyState__Icon">
|
|
@@ -189,6 +190,7 @@ class EmptyStateComponent {
|
|
|
189
190
|
<text-btn
|
|
190
191
|
[label]="primaryLabel()!"
|
|
191
192
|
[icon]="primaryIcon() ?? ''"
|
|
193
|
+
[routerLink]="primaryLink()"
|
|
192
194
|
color="primary"
|
|
193
195
|
(clicked)="primary.emit($event)"
|
|
194
196
|
></text-btn>
|
|
@@ -197,7 +199,7 @@ class EmptyStateComponent {
|
|
|
197
199
|
}
|
|
198
200
|
<ng-content></ng-content>
|
|
199
201
|
</div>
|
|
200
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
202
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.EmptyState{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px 16px 20px;text-align:center;border-radius:var(--xosue-libs-layout-radius-xl, 16px)!important;background:var(--color-surface-muted, var(--color-surface));border:1px solid var(--color-border, #e5e5e5)}.EmptyState__Icon{display:flex;color:var(--color-fg-muted, #a3a3a3)}.EmptyState__Icon lucide-icon{--lucide-stroke: var(--color-fg-muted, #a3a3a3)}.EmptyState__Title{margin:0;font-size:14px;font-weight:400;color:var(--color-fg, #171717)}.EmptyState__Message{margin:0;max-width:28rem;font-size:14px;line-height:1.45;color:var(--color-fg-muted, #a3a3a3)}.EmptyState__Actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px;margin-top:4px}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "component", type: TextBtnComponent, selector: "text-btn", inputs: ["label", "icon", "iconPosition", "iconSpin", "layout", "variant", "color", "rounded", "size", "ripple", "disabled", "buttonType", "href", "routerLink", "fit", "width", "textColor", "bgColor", "borderColor", "title"], outputs: ["clicked"] }] });
|
|
201
203
|
}
|
|
202
204
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: EmptyStateComponent, decorators: [{
|
|
203
205
|
type: Component,
|
|
@@ -226,6 +228,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
226
228
|
<text-btn
|
|
227
229
|
[label]="primaryLabel()!"
|
|
228
230
|
[icon]="primaryIcon() ?? ''"
|
|
231
|
+
[routerLink]="primaryLink()"
|
|
229
232
|
color="primary"
|
|
230
233
|
(clicked)="primary.emit($event)"
|
|
231
234
|
></text-btn>
|
|
@@ -234,7 +237,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
234
237
|
}
|
|
235
238
|
<ng-content></ng-content>
|
|
236
239
|
</div>
|
|
237
|
-
`, styles: [":host{display:block;width:100
|
|
240
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.EmptyState{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px 16px 20px;text-align:center;border-radius:var(--xosue-libs-layout-radius-xl, 16px)!important;background:var(--color-surface-muted, var(--color-surface));border:1px solid var(--color-border, #e5e5e5)}.EmptyState__Icon{display:flex;color:var(--color-fg-muted, #a3a3a3)}.EmptyState__Icon lucide-icon{--lucide-stroke: var(--color-fg-muted, #a3a3a3)}.EmptyState__Title{margin:0;font-size:14px;font-weight:400;color:var(--color-fg, #171717)}.EmptyState__Message{margin:0;max-width:28rem;font-size:14px;line-height:1.45;color:var(--color-fg-muted, #a3a3a3)}.EmptyState__Actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px;margin-top:4px}\n"] }]
|
|
238
241
|
}] });
|
|
239
242
|
|
|
240
243
|
class LoadErrorComponent {
|
|
@@ -242,9 +245,11 @@ class LoadErrorComponent {
|
|
|
242
245
|
message = input('Revisá tu conexión e intentá de nuevo.');
|
|
243
246
|
icon = input('triangle-alert');
|
|
244
247
|
retryLabel = input('Reintentar');
|
|
248
|
+
homeLabel = input('Ir al inicio');
|
|
249
|
+
homeLink = input(null);
|
|
245
250
|
retry = output();
|
|
246
251
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: LoadErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
247
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: LoadErrorComponent, isStandalone: true, selector: "load-error", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, retryLabel: { classPropertyName: "retryLabel", publicName: "retryLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { retry: "retry" }, ngImport: i0, template: `
|
|
252
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: LoadErrorComponent, isStandalone: true, selector: "load-error", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, retryLabel: { classPropertyName: "retryLabel", publicName: "retryLabel", isSignal: true, isRequired: false, transformFunction: null }, homeLabel: { classPropertyName: "homeLabel", publicName: "homeLabel", isSignal: true, isRequired: false, transformFunction: null }, homeLink: { classPropertyName: "homeLink", publicName: "homeLink", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { retry: "retry" }, ngImport: i0, template: `
|
|
248
253
|
<div class="LoadError">
|
|
249
254
|
<div class="LoadError__Icon">
|
|
250
255
|
<lucide-icon [name]="icon()" [size]="24"></lucide-icon>
|
|
@@ -260,10 +265,17 @@ class LoadErrorComponent {
|
|
|
260
265
|
color="primary"
|
|
261
266
|
(clicked)="retry.emit($event)"
|
|
262
267
|
></text-btn>
|
|
268
|
+
@if (homeLink()) {
|
|
269
|
+
<text-btn
|
|
270
|
+
[label]="homeLabel()"
|
|
271
|
+
color="secondary"
|
|
272
|
+
[routerLink]="homeLink()"
|
|
273
|
+
></text-btn>
|
|
274
|
+
}
|
|
263
275
|
</div>
|
|
264
276
|
<ng-content></ng-content>
|
|
265
277
|
</div>
|
|
266
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
278
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.LoadError{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px 16px 20px;text-align:center;border-radius:var(--xosue-libs-layout-radius-xl, 16px)!important;background:var(--color-danger-bg, var(--color-surface, #fef2f2));border:1px solid var(--color-danger-border, var(--color-border, #fca5a5))}.LoadError__Icon{display:flex;color:var(--color-danger-fg, var(--color-fg, #dc2626))}.LoadError__Icon lucide-icon{--lucide-stroke: var(--color-danger-fg, var(--color-fg, #dc2626))}.LoadError__Title{margin:0;font-size:14px;font-weight:400;color:var(--color-fg, #171717)}.LoadError__Message{margin:0;max-width:28rem;font-size:14px;line-height:1.45;color:var(--color-fg-muted, #a3a3a3)}.LoadError__Actions{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:4px}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "component", type: TextBtnComponent, selector: "text-btn", inputs: ["label", "icon", "iconPosition", "iconSpin", "layout", "variant", "color", "rounded", "size", "ripple", "disabled", "buttonType", "href", "routerLink", "fit", "width", "textColor", "bgColor", "borderColor", "title"], outputs: ["clicked"] }] });
|
|
267
279
|
}
|
|
268
280
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: LoadErrorComponent, decorators: [{
|
|
269
281
|
type: Component,
|
|
@@ -283,10 +295,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
283
295
|
color="primary"
|
|
284
296
|
(clicked)="retry.emit($event)"
|
|
285
297
|
></text-btn>
|
|
298
|
+
@if (homeLink()) {
|
|
299
|
+
<text-btn
|
|
300
|
+
[label]="homeLabel()"
|
|
301
|
+
color="secondary"
|
|
302
|
+
[routerLink]="homeLink()"
|
|
303
|
+
></text-btn>
|
|
304
|
+
}
|
|
286
305
|
</div>
|
|
287
306
|
<ng-content></ng-content>
|
|
288
307
|
</div>
|
|
289
|
-
`, styles: [":host{display:block;width:100
|
|
308
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.LoadError{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px 16px 20px;text-align:center;border-radius:var(--xosue-libs-layout-radius-xl, 16px)!important;background:var(--color-danger-bg, var(--color-surface, #fef2f2));border:1px solid var(--color-danger-border, var(--color-border, #fca5a5))}.LoadError__Icon{display:flex;color:var(--color-danger-fg, var(--color-fg, #dc2626))}.LoadError__Icon lucide-icon{--lucide-stroke: var(--color-danger-fg, var(--color-fg, #dc2626))}.LoadError__Title{margin:0;font-size:14px;font-weight:400;color:var(--color-fg, #171717)}.LoadError__Message{margin:0;max-width:28rem;font-size:14px;line-height:1.45;color:var(--color-fg-muted, #a3a3a3)}.LoadError__Actions{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:4px}\n"] }]
|
|
290
309
|
}] });
|
|
291
310
|
|
|
292
311
|
class SectionHeaderComponent {
|
|
@@ -309,7 +328,7 @@ class SectionHeaderComponent {
|
|
|
309
328
|
<ng-content></ng-content>
|
|
310
329
|
</div>
|
|
311
330
|
</header>
|
|
312
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
331
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.SectionHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;width:100%}.SectionHeader__Text{display:flex;flex-direction:column;gap:4px;min-width:0}.SectionHeader__Eyebrow{margin:0;font-size:14px;font-weight:400;letter-spacing:.04em;text-transform:uppercase;color:var(--color-fg-muted, #a3a3a3)}.SectionHeader__Title{margin:0;font-size:14px;font-weight:400;color:var(--color-fg, #171717);line-height:1.25}.SectionHeader__Subtitle{margin:0;font-size:14px;color:var(--color-fg-muted, #a3a3a3);line-height:1.4}.SectionHeader__Actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px;flex-shrink:0}\n"] });
|
|
313
332
|
}
|
|
314
333
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SectionHeaderComponent, decorators: [{
|
|
315
334
|
type: Component,
|
|
@@ -328,7 +347,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
328
347
|
<ng-content></ng-content>
|
|
329
348
|
</div>
|
|
330
349
|
</header>
|
|
331
|
-
`, styles: [":host{display:block;width:100
|
|
350
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.SectionHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;width:100%}.SectionHeader__Text{display:flex;flex-direction:column;gap:4px;min-width:0}.SectionHeader__Eyebrow{margin:0;font-size:14px;font-weight:400;letter-spacing:.04em;text-transform:uppercase;color:var(--color-fg-muted, #a3a3a3)}.SectionHeader__Title{margin:0;font-size:14px;font-weight:400;color:var(--color-fg, #171717);line-height:1.25}.SectionHeader__Subtitle{margin:0;font-size:14px;color:var(--color-fg-muted, #a3a3a3);line-height:1.4}.SectionHeader__Actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px;flex-shrink:0}\n"] }]
|
|
332
351
|
}] });
|
|
333
352
|
|
|
334
353
|
class KeyValueListComponent {
|
|
@@ -344,7 +363,7 @@ class KeyValueListComponent {
|
|
|
344
363
|
</div>
|
|
345
364
|
}
|
|
346
365
|
</dl>
|
|
347
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
366
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.KvList{margin:0;display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border, #e5e5e5);border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;overflow:hidden;background:var(--color-surface, #ffffff)}.KvList__Row{display:grid;grid-template-columns:minmax(6rem,40%) 1fr;gap:8px;padding:8px 12px;border-bottom:1px solid var(--color-border, #e5e5e5)}.KvList__Row:last-child{border-bottom:none}.KvList__Label{margin:0;font-size:14px;color:var(--color-fg-muted, #a3a3a3);font-weight:400}.KvList__Value{margin:0;font-size:14px;color:var(--color-fg, #171717);word-break:break-word}\n"] });
|
|
348
367
|
}
|
|
349
368
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: KeyValueListComponent, decorators: [{
|
|
350
369
|
type: Component,
|
|
@@ -357,7 +376,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
357
376
|
</div>
|
|
358
377
|
}
|
|
359
378
|
</dl>
|
|
360
|
-
`, styles: [":host{display:block;width:100
|
|
379
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.KvList{margin:0;display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border, #e5e5e5);border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;overflow:hidden;background:var(--color-surface, #ffffff)}.KvList__Row{display:grid;grid-template-columns:minmax(6rem,40%) 1fr;gap:8px;padding:8px 12px;border-bottom:1px solid var(--color-border, #e5e5e5)}.KvList__Row:last-child{border-bottom:none}.KvList__Label{margin:0;font-size:14px;color:var(--color-fg-muted, #a3a3a3);font-weight:400}.KvList__Value{margin:0;font-size:14px;color:var(--color-fg, #171717);word-break:break-word}\n"] }]
|
|
361
380
|
}] });
|
|
362
381
|
|
|
363
382
|
class SkeletonComponent {
|
|
@@ -391,7 +410,7 @@ class SkeletonComponent {
|
|
|
391
410
|
<span class="Skeleton__Block" [style.width]="width()" [style.height]="height()"></span>
|
|
392
411
|
}
|
|
393
412
|
</div>
|
|
394
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
413
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Skeleton{display:flex;flex-direction:column;gap:4px;width:100%}.Skeleton--circle,.Skeleton--rect{width:auto}.Skeleton__Line,.Skeleton__Block{display:block;border-radius:8px;background:var(--color-surface-emphasis, #e5e5e5);animation:skeletonPulse 1.2s ease-in-out infinite alternate}.Skeleton__Line{height:14px}.Skeleton__Block{min-width:14px;min-height:14px}.Skeleton--circle .Skeleton__Block{border-radius:50%}.Skeleton--static .Skeleton__Line,.Skeleton--static .Skeleton__Block{animation:none}@keyframes skeletonPulse{0%{opacity:.55}to{opacity:1}}\n"] });
|
|
395
414
|
}
|
|
396
415
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SkeletonComponent, decorators: [{
|
|
397
416
|
type: Component,
|
|
@@ -411,7 +430,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
411
430
|
<span class="Skeleton__Block" [style.width]="width()" [style.height]="height()"></span>
|
|
412
431
|
}
|
|
413
432
|
</div>
|
|
414
|
-
`, styles: [":host{display:block;width:100
|
|
433
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Skeleton{display:flex;flex-direction:column;gap:4px;width:100%}.Skeleton--circle,.Skeleton--rect{width:auto}.Skeleton__Line,.Skeleton__Block{display:block;border-radius:8px;background:var(--color-surface-emphasis, #e5e5e5);animation:skeletonPulse 1.2s ease-in-out infinite alternate}.Skeleton__Line{height:14px}.Skeleton__Block{min-width:14px;min-height:14px}.Skeleton--circle .Skeleton__Block{border-radius:50%}.Skeleton--static .Skeleton__Line,.Skeleton--static .Skeleton__Block{animation:none}@keyframes skeletonPulse{0%{opacity:.55}to{opacity:1}}\n"] }]
|
|
415
434
|
}] });
|
|
416
435
|
|
|
417
436
|
class SurfaceCardComponent {
|
|
@@ -435,7 +454,7 @@ class SurfaceCardComponent {
|
|
|
435
454
|
<ng-content></ng-content>
|
|
436
455
|
</div>
|
|
437
456
|
</div>
|
|
438
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
457
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.SurfaceCard{display:flex;flex-direction:column;gap:4px;width:100%;padding:16px;border-radius:var(--xosue-libs-layout-radius-xl, 16px)!important;background:var(--color-surface-muted, #f5f5f5)}.SurfaceCard--compact{padding:8px}.SurfaceCard__Head{display:flex;flex-direction:column;gap:4px}.SurfaceCard__Title{margin:0;font-size:14px;font-weight:400;color:var(--color-fg, #171717)}.SurfaceCard__Subtitle{margin:0;font-size:14px;font-weight:400;color:var(--color-fg-muted, #a3a3a3)}.SurfaceCard__Body{display:flex;flex-direction:column;gap:4px;min-width:0}\n"] });
|
|
439
458
|
}
|
|
440
459
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SurfaceCardComponent, decorators: [{
|
|
441
460
|
type: Component,
|
|
@@ -455,7 +474,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
455
474
|
<ng-content></ng-content>
|
|
456
475
|
</div>
|
|
457
476
|
</div>
|
|
458
|
-
`, styles: [":host{display:block;width:100
|
|
477
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.SurfaceCard{display:flex;flex-direction:column;gap:4px;width:100%;padding:16px;border-radius:var(--xosue-libs-layout-radius-xl, 16px)!important;background:var(--color-surface-muted, #f5f5f5)}.SurfaceCard--compact{padding:8px}.SurfaceCard__Head{display:flex;flex-direction:column;gap:4px}.SurfaceCard__Title{margin:0;font-size:14px;font-weight:400;color:var(--color-fg, #171717)}.SurfaceCard__Subtitle{margin:0;font-size:14px;font-weight:400;color:var(--color-fg-muted, #a3a3a3)}.SurfaceCard__Body{display:flex;flex-direction:column;gap:4px;min-width:0}\n"] }]
|
|
459
478
|
}] });
|
|
460
479
|
|
|
461
480
|
class AvatarComponent {
|
|
@@ -491,7 +510,7 @@ class AvatarComponent {
|
|
|
491
510
|
<lucide-icon [name]="icon()" [size]="iconSize()"></lucide-icon>
|
|
492
511
|
}
|
|
493
512
|
</span>
|
|
494
|
-
`, isInline: true, styles: [":host{display:inline-flex;flex-shrink:0
|
|
513
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:inline-flex!important;flex-shrink:0}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Avatar{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;background:var(--color-surface-emphasis, #e5e5e5);color:var(--color-fg-secondary, #525252);font-size:14px;font-weight:400;line-height:1}.Avatar lucide-icon{--lucide-stroke: currentColor}.Avatar__Img{width:100%;height:100%;object-fit:cover}.Avatar__Initials{letter-spacing:.02em}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }] });
|
|
495
514
|
}
|
|
496
515
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: AvatarComponent, decorators: [{
|
|
497
516
|
type: Component,
|
|
@@ -510,7 +529,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
510
529
|
<lucide-icon [name]="icon()" [size]="iconSize()"></lucide-icon>
|
|
511
530
|
}
|
|
512
531
|
</span>
|
|
513
|
-
`, styles: [":host{display:inline-flex;flex-shrink:0
|
|
532
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:inline-flex!important;flex-shrink:0}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Avatar{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;background:var(--color-surface-emphasis, #e5e5e5);color:var(--color-fg-secondary, #525252);font-size:14px;font-weight:400;line-height:1}.Avatar lucide-icon{--lucide-stroke: currentColor}.Avatar__Img{width:100%;height:100%;object-fit:cover}.Avatar__Initials{letter-spacing:.02em}\n"] }]
|
|
514
533
|
}] });
|
|
515
534
|
|
|
516
535
|
class ListRowComponent {
|
|
@@ -552,7 +571,7 @@ class ListRowComponent {
|
|
|
552
571
|
}
|
|
553
572
|
</span>
|
|
554
573
|
</div>
|
|
555
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
574
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.ListRow{display:flex;align-items:center;gap:4px;width:100%;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important}.ListRow--disabled{opacity:.45}.ListRow__Main{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:8px;border:none;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.ListRow__Main:hover:not(:disabled){background:var(--color-surface-muted, #f5f5f5)}.ListRow__Main:active:not(:disabled){transform:scale(.98)}.ListRow__Main:disabled{cursor:not-allowed}.ListRow__Icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;background:var(--color-surface-muted, #f5f5f5);color:var(--color-fg-secondary, #525252)}.ListRow__Icon lucide-icon{--lucide-stroke: currentColor}.ListRow__Text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.ListRow__Title,.ListRow__Subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400}.ListRow__Title{color:var(--color-fg, #171717)}.ListRow__Subtitle{color:var(--color-fg-muted, #a3a3a3)}.ListRow__Trail{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;color:var(--color-fg-muted, #a3a3a3)}.ListRow__Trail lucide-icon{--lucide-stroke: currentColor}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "component", type: AvatarComponent, selector: "avatar", inputs: ["src", "name", "icon", "size"] }] });
|
|
556
575
|
}
|
|
557
576
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ListRowComponent, decorators: [{
|
|
558
577
|
type: Component,
|
|
@@ -585,7 +604,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
585
604
|
}
|
|
586
605
|
</span>
|
|
587
606
|
</div>
|
|
588
|
-
`, styles: [":host{display:block;width:100
|
|
607
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.ListRow{display:flex;align-items:center;gap:4px;width:100%;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important}.ListRow--disabled{opacity:.45}.ListRow__Main{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:8px;border:none;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.ListRow__Main:hover:not(:disabled){background:var(--color-surface-muted, #f5f5f5)}.ListRow__Main:active:not(:disabled){transform:scale(.98)}.ListRow__Main:disabled{cursor:not-allowed}.ListRow__Icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;background:var(--color-surface-muted, #f5f5f5);color:var(--color-fg-secondary, #525252)}.ListRow__Icon lucide-icon{--lucide-stroke: currentColor}.ListRow__Text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.ListRow__Title,.ListRow__Subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400}.ListRow__Title{color:var(--color-fg, #171717)}.ListRow__Subtitle{color:var(--color-fg-muted, #a3a3a3)}.ListRow__Trail{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;color:var(--color-fg-muted, #a3a3a3)}.ListRow__Trail lucide-icon{--lucide-stroke: currentColor}\n"] }]
|
|
589
608
|
}] });
|
|
590
609
|
|
|
591
610
|
class DataTableComponent {
|
|
@@ -638,7 +657,7 @@ class DataTableComponent {
|
|
|
638
657
|
</div>
|
|
639
658
|
}
|
|
640
659
|
</div>
|
|
641
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
660
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.DataTable{display:flex;flex-direction:column;gap:4px;width:100%;overflow:auto}.DataTable__Head,.DataTable__Row{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;align-items:center;width:100%;min-width:0}.DataTable__Head{padding:8px;color:var(--color-fg-muted, #a3a3a3)}.DataTable__Body{display:flex;flex-direction:column;gap:4px}.DataTable__Row{padding:8px;border:none;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;background:var(--color-surface-muted, #f5f5f5);color:inherit;font:inherit;text-align:left;cursor:pointer}.DataTable__Row:hover{background:var(--color-surface-emphasis, #e5e5e5)}.DataTable__Row:active{transform:scale(.98)}.DataTable__Cell{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400;color:var(--color-fg, #171717)}.DataTable__Cell--head{color:var(--color-fg-muted, #a3a3a3)}\n"], dependencies: [{ kind: "component", type: EmptyStateComponent, selector: "empty-state", inputs: ["title", "message", "icon", "primaryLabel", "primaryIcon", "primaryLink", "secondaryLabel"], outputs: ["primary", "secondary"] }, { kind: "component", type: SkeletonComponent, selector: "skeleton", inputs: ["variant", "lines", "width", "height", "pulse"] }] });
|
|
642
661
|
}
|
|
643
662
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DataTableComponent, decorators: [{
|
|
644
663
|
type: Component,
|
|
@@ -674,7 +693,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
674
693
|
</div>
|
|
675
694
|
}
|
|
676
695
|
</div>
|
|
677
|
-
`, styles: [":host{display:block;width:100
|
|
696
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.DataTable{display:flex;flex-direction:column;gap:4px;width:100%;overflow:auto}.DataTable__Head,.DataTable__Row{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;align-items:center;width:100%;min-width:0}.DataTable__Head{padding:8px;color:var(--color-fg-muted, #a3a3a3)}.DataTable__Body{display:flex;flex-direction:column;gap:4px}.DataTable__Row{padding:8px;border:none;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;background:var(--color-surface-muted, #f5f5f5);color:inherit;font:inherit;text-align:left;cursor:pointer}.DataTable__Row:hover{background:var(--color-surface-emphasis, #e5e5e5)}.DataTable__Row:active{transform:scale(.98)}.DataTable__Cell{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400;color:var(--color-fg, #171717)}.DataTable__Cell--head{color:var(--color-fg-muted, #a3a3a3)}\n"] }]
|
|
678
697
|
}] });
|
|
679
698
|
|
|
680
699
|
class AccordionItemComponent {
|
|
@@ -706,7 +725,7 @@ class AccordionItemComponent {
|
|
|
706
725
|
</div>
|
|
707
726
|
}
|
|
708
727
|
</div>
|
|
709
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
728
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.AccordionItem{display:flex;flex-direction:column;gap:4px;width:100%}.AccordionItem__Head{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:none;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;background:var(--color-surface-muted, #f5f5f5);color:var(--color-fg, #171717);font:inherit;font-size:14px;font-weight:400;text-align:left;cursor:pointer}.AccordionItem__Head lucide-icon{--lucide-stroke: currentColor}.AccordionItem__Head:hover:not(:disabled){background:var(--color-surface-emphasis, #e5e5e5)}.AccordionItem__Head:disabled{opacity:.45;cursor:not-allowed}.AccordionItem__Title{flex:1;min-width:0}.AccordionItem__Chevron{flex-shrink:0;color:var(--color-fg-muted, #a3a3a3);transition:transform .18s ease}.AccordionItem--open .AccordionItem__Chevron{transform:rotate(180deg)}.AccordionItem__Body{display:flex;flex-direction:column;gap:4px;padding:4px 8px 8px;font-size:14px;color:var(--color-fg-secondary, #525252)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }] });
|
|
710
729
|
}
|
|
711
730
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: AccordionItemComponent, decorators: [{
|
|
712
731
|
type: Component,
|
|
@@ -725,7 +744,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
725
744
|
</div>
|
|
726
745
|
}
|
|
727
746
|
</div>
|
|
728
|
-
`, styles: [":host{display:block;width:100
|
|
747
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.AccordionItem{display:flex;flex-direction:column;gap:4px;width:100%}.AccordionItem__Head{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:none;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;background:var(--color-surface-muted, #f5f5f5);color:var(--color-fg, #171717);font:inherit;font-size:14px;font-weight:400;text-align:left;cursor:pointer}.AccordionItem__Head lucide-icon{--lucide-stroke: currentColor}.AccordionItem__Head:hover:not(:disabled){background:var(--color-surface-emphasis, #e5e5e5)}.AccordionItem__Head:disabled{opacity:.45;cursor:not-allowed}.AccordionItem__Title{flex:1;min-width:0}.AccordionItem__Chevron{flex-shrink:0;color:var(--color-fg-muted, #a3a3a3);transition:transform .18s ease}.AccordionItem--open .AccordionItem__Chevron{transform:rotate(180deg)}.AccordionItem__Body{display:flex;flex-direction:column;gap:4px;padding:4px 8px 8px;font-size:14px;color:var(--color-fg-secondary, #525252)}\n"] }]
|
|
729
748
|
}] });
|
|
730
749
|
|
|
731
750
|
class AccordionComponent {
|
|
@@ -744,7 +763,7 @@ class AccordionComponent {
|
|
|
744
763
|
<div class="Accordion">
|
|
745
764
|
<ng-content></ng-content>
|
|
746
765
|
</div>
|
|
747
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
766
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Accordion{display:flex;flex-direction:column;gap:4px;width:100%}\n"] });
|
|
748
767
|
}
|
|
749
768
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: AccordionComponent, decorators: [{
|
|
750
769
|
type: Component,
|
|
@@ -752,7 +771,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
752
771
|
<div class="Accordion">
|
|
753
772
|
<ng-content></ng-content>
|
|
754
773
|
</div>
|
|
755
|
-
`, styles: [":host{display:block;width:100
|
|
774
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Accordion{display:flex;flex-direction:column;gap:4px;width:100%}\n"] }]
|
|
756
775
|
}] });
|
|
757
776
|
|
|
758
777
|
class StepperComponent {
|
|
@@ -791,7 +810,7 @@ class StepperComponent {
|
|
|
791
810
|
</li>
|
|
792
811
|
}
|
|
793
812
|
</ol>
|
|
794
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
813
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Stepper{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.Stepper__Item{flex:1;min-width:120px}.Stepper__Btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:none;border-radius:12px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:default}.Stepper__Btn:not(:disabled){cursor:pointer}.Stepper__Btn:not(:disabled):hover{background:var(--color-surface-muted, #f5f5f5)}.Stepper__Index{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:var(--color-surface-emphasis, #e5e5e5);color:var(--color-fg-muted, #a3a3a3);font-size:14px;font-weight:400}.Stepper__Item--done .Stepper__Index{background:color-mix(in srgb,var(--color-brand, #22c55e) 18%,var(--color-surface-muted, #f5f5f5));color:var(--color-fg-brand, #16a34a)}.Stepper__Item--current .Stepper__Index{background:var(--color-brand, #22c55e);color:var(--color-fg-inverse, #fafafa)}.Stepper__Text{display:flex;flex-direction:column;gap:4px;min-width:0}.Stepper__Label,.Stepper__Desc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400}.Stepper__Label{color:var(--color-fg-muted, #a3a3a3)}.Stepper__Item--done .Stepper__Label,.Stepper__Item--current .Stepper__Label{color:var(--color-fg, #171717)}.Stepper__Desc{color:var(--color-fg-muted, #a3a3a3)}\n"] });
|
|
795
814
|
}
|
|
796
815
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: StepperComponent, decorators: [{
|
|
797
816
|
type: Component,
|
|
@@ -820,7 +839,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
820
839
|
</li>
|
|
821
840
|
}
|
|
822
841
|
</ol>
|
|
823
|
-
`, styles: [":host{display:block;width:100
|
|
842
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Stepper{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.Stepper__Item{flex:1;min-width:120px}.Stepper__Btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:none;border-radius:12px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:default}.Stepper__Btn:not(:disabled){cursor:pointer}.Stepper__Btn:not(:disabled):hover{background:var(--color-surface-muted, #f5f5f5)}.Stepper__Index{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:var(--color-surface-emphasis, #e5e5e5);color:var(--color-fg-muted, #a3a3a3);font-size:14px;font-weight:400}.Stepper__Item--done .Stepper__Index{background:color-mix(in srgb,var(--color-brand, #22c55e) 18%,var(--color-surface-muted, #f5f5f5));color:var(--color-fg-brand, #16a34a)}.Stepper__Item--current .Stepper__Index{background:var(--color-brand, #22c55e);color:var(--color-fg-inverse, #fafafa)}.Stepper__Text{display:flex;flex-direction:column;gap:4px;min-width:0}.Stepper__Label,.Stepper__Desc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400}.Stepper__Label{color:var(--color-fg-muted, #a3a3a3)}.Stepper__Item--done .Stepper__Label,.Stepper__Item--current .Stepper__Label{color:var(--color-fg, #171717)}.Stepper__Desc{color:var(--color-fg-muted, #a3a3a3)}\n"] }]
|
|
824
843
|
}] });
|
|
825
844
|
|
|
826
845
|
class BreadcrumbsComponent {
|
|
@@ -851,7 +870,7 @@ class BreadcrumbsComponent {
|
|
|
851
870
|
}
|
|
852
871
|
</ol>
|
|
853
872
|
</nav>
|
|
854
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
873
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Breadcrumbs__List{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;list-style:none}.Breadcrumbs__Sep{display:inline-flex;color:var(--color-fg-muted, #a3a3a3)}.Breadcrumbs__Sep lucide-icon{--lucide-stroke: currentColor}.Breadcrumbs__Link,.Breadcrumbs__Current{display:inline-flex;align-items:center;padding:2px 4px;border:none;border-radius:8px;background:transparent;font:inherit;font-size:14px;font-weight:400;text-decoration:none}.Breadcrumbs__Link{color:var(--color-fg-muted, #a3a3a3);cursor:pointer}.Breadcrumbs__Link:hover{color:var(--color-fg-brand, #16a34a)}.Breadcrumbs__Current{color:var(--color-fg, #171717)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
|
|
855
874
|
}
|
|
856
875
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: BreadcrumbsComponent, decorators: [{
|
|
857
876
|
type: Component,
|
|
@@ -878,7 +897,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
878
897
|
}
|
|
879
898
|
</ol>
|
|
880
899
|
</nav>
|
|
881
|
-
`, styles: [":host{display:block;width:100
|
|
900
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Breadcrumbs__List{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;list-style:none}.Breadcrumbs__Sep{display:inline-flex;color:var(--color-fg-muted, #a3a3a3)}.Breadcrumbs__Sep lucide-icon{--lucide-stroke: currentColor}.Breadcrumbs__Link,.Breadcrumbs__Current{display:inline-flex;align-items:center;padding:2px 4px;border:none;border-radius:8px;background:transparent;font:inherit;font-size:14px;font-weight:400;text-decoration:none}.Breadcrumbs__Link{color:var(--color-fg-muted, #a3a3a3);cursor:pointer}.Breadcrumbs__Link:hover{color:var(--color-fg-brand, #16a34a)}.Breadcrumbs__Current{color:var(--color-fg, #171717)}\n"] }]
|
|
882
901
|
}] });
|
|
883
902
|
|
|
884
903
|
class TabsComponent {
|
|
@@ -916,7 +935,7 @@ class TabsComponent {
|
|
|
916
935
|
<ng-content></ng-content>
|
|
917
936
|
</div>
|
|
918
937
|
</div>
|
|
919
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
938
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Tabs{display:flex;flex-direction:column;gap:8px;width:100%}.Tabs__Bar{display:flex;flex-wrap:wrap;gap:4px}.Tabs__Tab{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:none;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;background:transparent;color:var(--color-fg-muted, #a3a3a3);font:inherit;font-size:14px;font-weight:400;cursor:pointer}.Tabs__Tab lucide-icon{--lucide-stroke: currentColor}.Tabs__Tab:hover:not(:disabled):not(.Tabs__Tab--on){background:var(--color-surface-muted, #f5f5f5);color:var(--color-fg, #171717)}.Tabs__Tab--on{background:var(--color-surface-muted, #f5f5f5);color:var(--color-fg-brand, #16a34a)}.Tabs__Tab:disabled{opacity:.45;cursor:not-allowed}.Tabs__Panel{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:14px;color:var(--color-fg-secondary, #525252)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }] });
|
|
920
939
|
}
|
|
921
940
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TabsComponent, decorators: [{
|
|
922
941
|
type: Component,
|
|
@@ -944,7 +963,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
944
963
|
<ng-content></ng-content>
|
|
945
964
|
</div>
|
|
946
965
|
</div>
|
|
947
|
-
`, styles: [":host{display:block;width:100
|
|
966
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Tabs{display:flex;flex-direction:column;gap:8px;width:100%}.Tabs__Bar{display:flex;flex-wrap:wrap;gap:4px}.Tabs__Tab{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:none;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;background:transparent;color:var(--color-fg-muted, #a3a3a3);font:inherit;font-size:14px;font-weight:400;cursor:pointer}.Tabs__Tab lucide-icon{--lucide-stroke: currentColor}.Tabs__Tab:hover:not(:disabled):not(.Tabs__Tab--on){background:var(--color-surface-muted, #f5f5f5);color:var(--color-fg, #171717)}.Tabs__Tab--on{background:var(--color-surface-muted, #f5f5f5);color:var(--color-fg-brand, #16a34a)}.Tabs__Tab:disabled{opacity:.45;cursor:not-allowed}.Tabs__Panel{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:14px;color:var(--color-fg-secondary, #525252)}\n"] }]
|
|
948
967
|
}] });
|
|
949
968
|
|
|
950
969
|
class NoticeComponent {
|
|
@@ -989,7 +1008,7 @@ class NoticeComponent {
|
|
|
989
1008
|
<ng-content></ng-content>
|
|
990
1009
|
</div>
|
|
991
1010
|
</div>
|
|
992
|
-
`, isInline: true, styles: [":host{display:block;width:100
|
|
1011
|
+
`, isInline: true, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Notice{display:flex;align-items:flex-start;gap:8px;width:100%;padding:8px;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;font-size:14px;font-weight:400}.Notice lucide-icon{--lucide-stroke: currentColor}.Notice--info{background:color-mix(in srgb,var(--color-info-bg, #eff6ff) 88%,var(--color-surface, #ffffff));color:var(--color-info-fg, #2563eb)}.Notice--success{background:color-mix(in srgb,var(--color-success-bg, #f0fdf4) 88%,var(--color-surface, #ffffff));color:var(--color-success-fg, #16a34a)}.Notice--warning{background:color-mix(in srgb,var(--color-warning-bg, #fffbeb) 88%,var(--color-surface, #ffffff));color:var(--color-warning-fg, #d97706)}.Notice--danger{background:color-mix(in srgb,var(--color-danger-bg, #fef2f2) 88%,var(--color-surface, #ffffff));color:var(--color-danger-fg, #dc2626)}.Notice__Icon{display:inline-flex;flex-shrink:0;margin-top:2px}.Notice__Body{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.Notice__Title,.Notice__Message{margin:0;font-size:14px;font-weight:400}.Notice__Title{color:inherit}.Notice__Message{color:var(--color-fg-secondary, #525252)}\n"], dependencies: [{ kind: "component", type: LucideIconComponent, selector: "lucide-icon", inputs: ["name", "size", "spin", "filled"] }] });
|
|
993
1012
|
}
|
|
994
1013
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: NoticeComponent, decorators: [{
|
|
995
1014
|
type: Component,
|
|
@@ -1015,7 +1034,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
1015
1034
|
<ng-content></ng-content>
|
|
1016
1035
|
</div>
|
|
1017
1036
|
</div>
|
|
1018
|
-
`, styles: [":host{display:block;width:100
|
|
1037
|
+
`, styles: [":host{--xosue-libs-layout-radius-none: 0 !important;--xosue-libs-layout-radius-xs: 2px !important;--xosue-libs-layout-radius-sm: 4px !important;--xosue-libs-layout-radius-md: 8px !important;--xosue-libs-layout-radius-lg: 12px !important;--xosue-libs-layout-radius-xl: 16px !important;--xosue-libs-layout-radius-full: 9999px !important;--xosue-libs-layout-space-xxs: 2px !important;--xosue-libs-layout-space-xs: 4px !important;--xosue-libs-layout-space-sm: 8px !important;--xosue-libs-layout-space-md: 12px !important;--xosue-libs-layout-space-lg: 16px !important;user-select:none;-webkit-user-select:none;display:block!important;width:100%}:host input,:host textarea,:host [contenteditable=true],:host [contenteditable=plaintext-only]{user-select:auto;-webkit-user-select:auto}.Notice{display:flex;align-items:flex-start;gap:8px;width:100%;padding:8px;border-radius:var(--xosue-libs-layout-radius-lg, 12px)!important;font-size:14px;font-weight:400}.Notice lucide-icon{--lucide-stroke: currentColor}.Notice--info{background:color-mix(in srgb,var(--color-info-bg, #eff6ff) 88%,var(--color-surface, #ffffff));color:var(--color-info-fg, #2563eb)}.Notice--success{background:color-mix(in srgb,var(--color-success-bg, #f0fdf4) 88%,var(--color-surface, #ffffff));color:var(--color-success-fg, #16a34a)}.Notice--warning{background:color-mix(in srgb,var(--color-warning-bg, #fffbeb) 88%,var(--color-surface, #ffffff));color:var(--color-warning-fg, #d97706)}.Notice--danger{background:color-mix(in srgb,var(--color-danger-bg, #fef2f2) 88%,var(--color-surface, #ffffff));color:var(--color-danger-fg, #dc2626)}.Notice__Icon{display:inline-flex;flex-shrink:0;margin-top:2px}.Notice__Body{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.Notice__Title,.Notice__Message{margin:0;font-size:14px;font-weight:400}.Notice__Title{color:inherit}.Notice__Message{color:var(--color-fg-secondary, #525252)}\n"] }]
|
|
1019
1038
|
}] });
|
|
1020
1039
|
|
|
1021
1040
|
/*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xosue-utils-helpers.mjs","sources":["../../src/lib/smart-pagination/smart-pagination.component.ts","../../src/lib/smart-pagination/smart-pagination.component.html","../../src/lib/empty-state/empty-state.component.ts","../../src/lib/load-error/load-error.component.ts","../../src/lib/section-header/section-header.component.ts","../../src/lib/key-value-list/key-value-list.component.ts","../../src/lib/skeleton/skeleton.component.ts","../../src/lib/surface-card/surface-card.component.ts","../../src/lib/avatar/avatar.component.ts","../../src/lib/list-row/list-row.component.ts","../../src/lib/data-table/data-table.component.ts","../../src/lib/accordion/accordion-item.component.ts","../../src/lib/accordion/accordion.component.ts","../../src/lib/stepper/stepper.component.ts","../../src/lib/breadcrumbs/breadcrumbs.component.ts","../../src/lib/tabs/tabs.component.ts","../../src/lib/notice/notice.component.ts","../../src/public-api.ts","../../src/xosue-utils-helpers.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n signal,\r\n effect,\r\n computed,\r\n inject,\r\n OnInit,\r\n OnDestroy,\r\n Injector,\r\n} from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Subscription } from 'rxjs';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\nexport interface PaginationData {\r\n total: number;\r\n per_page: number;\r\n current_page: number;\r\n last_page: number;\r\n from: number;\r\n to: number;\r\n}\r\n\r\n@Component({\r\n selector: 'smart-pagination',\r\n standalone: true,\r\n imports: [LucideIconComponent, CommonModule],\r\n templateUrl: './smart-pagination.component.html',\r\n styleUrl: './smart-pagination.component.sass',\r\n})\r\nexport class SmartPaginationComponent implements OnInit, OnDestroy {\r\n private router = inject(Router);\r\n private route = inject(ActivatedRoute);\r\n private injector = inject(Injector);\r\n\r\n @Input() resetOnChanges = false;\r\n @Input() paramName = 'page';\r\n /** Label when total === 0. */\r\n @Input() emptyLabel = 'No hay resultados.';\r\n /** Label when last_page === 1. */\r\n @Input() singlePageLabel = 'Página única';\r\n\r\n @Input() set data(value: PaginationData | null | undefined) {\r\n if (value) {\r\n this.paginationData.set(value);\r\n } else {\r\n this.paginationData.set({\r\n total: 0,\r\n per_page: 10,\r\n current_page: 1,\r\n last_page: 1,\r\n from: 0,\r\n to: 0,\r\n });\r\n }\r\n }\r\n\r\n paginationData = signal<PaginationData>({\r\n total: 0,\r\n per_page: 10,\r\n current_page: 1,\r\n last_page: 1,\r\n from: 0,\r\n to: 0,\r\n });\r\n\r\n readonly currentPage = computed(() => this.paginationData().current_page);\r\n readonly lastPage = computed(() => this.paginationData().last_page);\r\n\r\n readonly pagesToDisplay = computed(() => {\r\n const current = this.currentPage();\r\n const last = this.lastPage();\r\n const pages: (number | string)[] = [];\r\n\r\n if (last <= 5) {\r\n for (let i = 1; i <= last; i++) pages.push(i);\r\n return pages;\r\n }\r\n\r\n pages.push(1);\r\n\r\n if (current <= 4) {\r\n for (let i = 2; i <= 5; i++) pages.push(i);\r\n pages.push('...');\r\n } else if (current >= last - 3) {\r\n pages.push('...');\r\n for (let i = last - 4; i < last; i++) pages.push(i);\r\n } else {\r\n pages.push('...');\r\n pages.push(current - 1, current, current + 1);\r\n pages.push('...');\r\n }\r\n\r\n pages.push(last);\r\n return pages;\r\n });\r\n\r\n private queryParamsSub = Subscription.EMPTY;\r\n readonly queryParams = signal<{ [key: string]: string }>({});\r\n\r\n isPage(p: number | string): p is number {\r\n return typeof p === 'number';\r\n }\r\n\r\n goToPage(page: number): void {\r\n this.router.navigate([], {\r\n relativeTo: this.route,\r\n queryParams: { [this.paramName]: page },\r\n queryParamsHandling: 'merge',\r\n });\r\n }\r\n\r\n generateHref(page: number): string {\r\n const base = this.router.url.split('?')[0];\r\n const params = new URLSearchParams({\r\n ...this.queryParams(),\r\n [this.paramName]: String(page),\r\n });\r\n return `${base}?${params}`;\r\n }\r\n\r\n updateFilter(params: { [key: string]: unknown }): void {\r\n const queryParams: { [key: string]: string | null } = {};\r\n for (const key in params) {\r\n queryParams[key] = params[key] != null ? String(params[key]) : null;\r\n }\r\n this.router.navigate([], {\r\n relativeTo: this.route,\r\n queryParams,\r\n queryParamsHandling: 'merge',\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n const queryPage = +(this.route.snapshot.queryParamMap.get(this.paramName) || '1');\r\n if (!queryPage || queryPage < 1) {\r\n this.goToPage(1);\r\n }\r\n\r\n this.queryParamsSub = this.route.queryParamMap.subscribe((params) => {\r\n const newParams: { [key: string]: string } = {};\r\n params.keys.forEach((key) => {\r\n if (key !== this.paramName) {\r\n newParams[key] = params.get(key) ?? '';\r\n }\r\n });\r\n this.queryParams.set(newParams);\r\n\r\n const page = +(params.get(this.paramName) || '1');\r\n if (!page || page < 1) {\r\n this.goToPage(1);\r\n }\r\n });\r\n\r\n effect(\r\n () => {\r\n const pag = this.paginationData();\r\n if (!pag) return;\r\n\r\n const currentParam = +(this.route.snapshot.queryParamMap.get(this.paramName) || '1');\r\n\r\n if (this.resetOnChanges) {\r\n if (currentParam !== 1) {\r\n this.goToPage(1);\r\n }\r\n return;\r\n }\r\n\r\n if (pag.last_page && currentParam > pag.last_page && pag.last_page >= 1) {\r\n this.goToPage(pag.last_page);\r\n }\r\n },\r\n { injector: this.injector },\r\n );\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.queryParamsSub.unsubscribe();\r\n }\r\n}\r\n","@if (paginationData() && paginationData().total === 0) {\r\n <p class=\"NonResults\">{{ emptyLabel }}</p>\r\n} @else if (paginationData() && paginationData().last_page > 1) {\r\n <nav class=\"pagination\" aria-label=\"Paginación\">\r\n @if (currentPage() > 1) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() - 1)\" aria-label=\"Anterior\">\r\n <lucide-icon name=\"chevron-left\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n\r\n @for (p of pagesToDisplay(); track $index) {\r\n @if (isPage(p)) {\r\n <a\r\n [class.active]=\"p === currentPage()\"\r\n [href]=\"generateHref(p)\"\r\n (click)=\"goToPage(p); $event.preventDefault()\"\r\n >\r\n {{ p }}\r\n </a>\r\n } @else {\r\n <span class=\"ellipsis\">…</span>\r\n }\r\n }\r\n\r\n @if (currentPage() < lastPage()) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() + 1)\" aria-label=\"Siguiente\">\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n </nav>\r\n} @else {\r\n <p class=\"UniquePage\">{{ singlePageLabel }}</p>\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { LucideIconComponent, TextBtnComponent } from '@xosue-utils/actions';\r\n\r\n@Component({\r\n selector: 'empty-state',\r\n standalone: true,\r\n imports: [LucideIconComponent, TextBtnComponent],\r\n template: `\r\n <div class=\"EmptyState\">\r\n @if (icon()) {\r\n <div class=\"EmptyState__Icon\">\r\n <lucide-icon [name]=\"icon()!\" [size]=\"24\"></lucide-icon>\r\n </div>\r\n }\r\n <h3 class=\"EmptyState__Title\">{{ title() }}</h3>\r\n @if (message()) {\r\n <p class=\"EmptyState__Message\">{{ message() }}</p>\r\n }\r\n @if (primaryLabel() || secondaryLabel()) {\r\n <div class=\"EmptyState__Actions\">\r\n @if (secondaryLabel()) {\r\n <text-btn\r\n [label]=\"secondaryLabel()!\"\r\n color=\"cancel\"\r\n variant=\"ghost\"\r\n (clicked)=\"secondary.emit($event)\"\r\n ></text-btn>\r\n }\r\n @if (primaryLabel()) {\r\n <text-btn\r\n [label]=\"primaryLabel()!\"\r\n [icon]=\"primaryIcon() ?? ''\"\r\n color=\"primary\"\r\n (clicked)=\"primary.emit($event)\"\r\n ></text-btn>\r\n }\r\n </div>\r\n }\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n styleUrl: './empty-state.component.sass',\r\n})\r\nexport class EmptyStateComponent {\r\n readonly title = input('Sin datos');\r\n readonly message = input<string | null>(null);\r\n readonly icon = input<string | null>('inbox');\r\n readonly primaryLabel = input<string | null>(null);\r\n readonly primaryIcon = input<string | null>(null);\r\n readonly secondaryLabel = input<string | null>(null);\r\n\r\n readonly primary = output<MouseEvent>();\r\n readonly secondary = output<MouseEvent>();\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { LucideIconComponent, TextBtnComponent } from '@xosue-utils/actions';\r\n\r\n@Component({\r\n selector: 'load-error',\r\n standalone: true,\r\n imports: [LucideIconComponent, TextBtnComponent],\r\n template: `\r\n <div class=\"LoadError\">\r\n <div class=\"LoadError__Icon\">\r\n <lucide-icon [name]=\"icon()\" [size]=\"24\"></lucide-icon>\r\n </div>\r\n <h3 class=\"LoadError__Title\">{{ title() }}</h3>\r\n @if (message()) {\r\n <p class=\"LoadError__Message\">{{ message() }}</p>\r\n }\r\n <div class=\"LoadError__Actions\">\r\n <text-btn\r\n [label]=\"retryLabel()\"\r\n icon=\"refresh-cw\"\r\n color=\"primary\"\r\n (clicked)=\"retry.emit($event)\"\r\n ></text-btn>\r\n </div>\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n styleUrl: './load-error.component.sass',\r\n})\r\nexport class LoadErrorComponent {\r\n readonly title = input('No se pudo cargar');\r\n readonly message = input<string | null>('Revisá tu conexión e intentá de nuevo.');\r\n readonly icon = input('triangle-alert');\r\n readonly retryLabel = input('Reintentar');\r\n\r\n readonly retry = output<MouseEvent>();\r\n}\r\n","import { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'section-header',\r\n standalone: true,\r\n template: `\r\n <header class=\"SectionHeader\">\r\n <div class=\"SectionHeader__Text\">\r\n @if (eyebrow()) {\r\n <p class=\"SectionHeader__Eyebrow\">{{ eyebrow() }}</p>\r\n }\r\n <h2 class=\"SectionHeader__Title\">{{ title() }}</h2>\r\n @if (subtitle()) {\r\n <p class=\"SectionHeader__Subtitle\">{{ subtitle() }}</p>\r\n }\r\n </div>\r\n <div class=\"SectionHeader__Actions\">\r\n <ng-content></ng-content>\r\n </div>\r\n </header>\r\n `,\r\n styleUrl: './section-header.component.sass',\r\n})\r\nexport class SectionHeaderComponent {\r\n readonly title = input.required<string>();\r\n readonly subtitle = input<string | null>(null);\r\n readonly eyebrow = input<string | null>(null);\r\n}\r\n","import { Component, input } from '@angular/core';\r\n\r\nexport interface KeyValueItem {\r\n label: string;\r\n value: string | number | null | undefined;\r\n}\r\n\r\n@Component({\r\n selector: 'key-value-list',\r\n standalone: true,\r\n template: `\r\n <dl class=\"KvList\">\r\n @for (item of items(); track item.label + '-' + $index) {\r\n <div class=\"KvList__Row\">\r\n <dt class=\"KvList__Label\">{{ item.label }}</dt>\r\n <dd class=\"KvList__Value\">{{ item.value ?? emptyValue() }}</dd>\r\n </div>\r\n }\r\n </dl>\r\n `,\r\n styleUrl: './key-value-list.component.sass',\r\n})\r\nexport class KeyValueListComponent {\r\n readonly items = input<KeyValueItem[]>([]);\r\n readonly emptyValue = input('—');\r\n}\r\n","import { booleanAttribute, Component, input } from '@angular/core';\r\n\r\nexport type SkeletonVariant = 'line' | 'rect' | 'circle';\r\n\r\n@Component({\r\n selector: 'skeleton',\r\n standalone: true,\r\n template: `\r\n <div\r\n class=\"Skeleton\"\r\n [class.Skeleton--circle]=\"variant() === 'circle'\"\r\n [class.Skeleton--rect]=\"variant() === 'rect'\"\r\n [class.Skeleton--static]=\"!pulse()\"\r\n [attr.aria-hidden]=\"true\"\r\n >\r\n @if (variant() === 'line') {\r\n @for (line of lineIndexes; track line) {\r\n <span class=\"Skeleton__Line\" [style.width]=\"lineWidth(line)\"></span>\r\n }\r\n } @else {\r\n <span class=\"Skeleton__Block\" [style.width]=\"width()\" [style.height]=\"height()\"></span>\r\n }\r\n </div>\r\n `,\r\n styleUrl: './skeleton.component.sass',\r\n})\r\nexport class SkeletonComponent {\r\n readonly variant = input<SkeletonVariant>('line');\r\n readonly lines = input(3);\r\n readonly width = input('100%');\r\n readonly height = input('14px');\r\n readonly pulse = input(true, { transform: booleanAttribute });\r\n\r\n get lineIndexes(): number[] {\r\n return Array.from({ length: Math.max(1, this.lines()) }, (_, i) => i);\r\n }\r\n\r\n lineWidth(index: number): string {\r\n if (this.lines() <= 1) return this.width();\r\n return index === this.lines() - 1 ? '62%' : '100%';\r\n }\r\n}\r\n","import { booleanAttribute, Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'surface-card',\r\n standalone: true,\r\n template: `\r\n <div class=\"SurfaceCard\" [class.SurfaceCard--compact]=\"compact()\">\r\n @if (title() || subtitle()) {\r\n <div class=\"SurfaceCard__Head\">\r\n @if (title()) {\r\n <p class=\"SurfaceCard__Title\">{{ title() }}</p>\r\n }\r\n @if (subtitle()) {\r\n <p class=\"SurfaceCard__Subtitle\">{{ subtitle() }}</p>\r\n }\r\n </div>\r\n }\r\n <div class=\"SurfaceCard__Body\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n styleUrl: './surface-card.component.sass',\r\n})\r\nexport class SurfaceCardComponent {\r\n readonly title = input<string | null>(null);\r\n readonly subtitle = input<string | null>(null);\r\n readonly compact = input(false, { transform: booleanAttribute });\r\n}\r\n","import { Component, computed, input } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\n@Component({\r\n selector: 'avatar',\r\n standalone: true,\r\n imports: [LucideIconComponent],\r\n template: `\r\n <span\r\n class=\"Avatar\"\r\n [style.width.px]=\"size()\"\r\n [style.height.px]=\"size()\"\r\n [attr.aria-label]=\"name() || 'Avatar'\"\r\n >\r\n @if (src() && !broken) {\r\n <img class=\"Avatar__Img\" [src]=\"src()!\" alt=\"\" (error)=\"broken = true\" />\r\n } @else if (initials()) {\r\n <span class=\"Avatar__Initials\">{{ initials() }}</span>\r\n } @else {\r\n <lucide-icon [name]=\"icon()\" [size]=\"iconSize()\"></lucide-icon>\r\n }\r\n </span>\r\n `,\r\n styleUrl: './avatar.component.sass',\r\n})\r\nexport class AvatarComponent {\r\n readonly src = input<string | null>(null);\r\n readonly name = input<string | null>(null);\r\n readonly icon = input('user');\r\n readonly size = input(32);\r\n\r\n broken = false;\r\n\r\n readonly initials = computed(() => {\r\n const parts = (this.name() ?? '').trim().split(/\\s+/).filter(Boolean);\r\n if (!parts.length) return '';\r\n const first = parts[0][0] ?? '';\r\n const second = parts.length > 1 ? parts[parts.length - 1][0] ?? '' : '';\r\n return (first + second).toUpperCase();\r\n });\r\n\r\n iconSize(): number {\r\n return Math.max(12, Math.round(this.size() * 0.44));\r\n }\r\n}\r\n","import { booleanAttribute, Component, input, output } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\nimport { AvatarComponent } from '../avatar/avatar.component';\r\n\r\n@Component({\r\n selector: 'list-row',\r\n standalone: true,\r\n imports: [LucideIconComponent, AvatarComponent],\r\n template: `\r\n <div class=\"ListRow\" [class.ListRow--disabled]=\"disabled()\">\r\n <button\r\n type=\"button\"\r\n class=\"ListRow__Main\"\r\n [disabled]=\"disabled()\"\r\n (click)=\"clicked.emit($event)\"\r\n >\r\n @if (avatarSrc() || avatarName()) {\r\n <avatar [src]=\"avatarSrc()\" [name]=\"avatarName()\" [size]=\"32\"></avatar>\r\n } @else if (icon()) {\r\n <span class=\"ListRow__Icon\">\r\n <lucide-icon [name]=\"icon()!\" [size]=\"14\"></lucide-icon>\r\n </span>\r\n }\r\n <span class=\"ListRow__Text\">\r\n <span class=\"ListRow__Title\">{{ title() }}</span>\r\n @if (subtitle()) {\r\n <span class=\"ListRow__Subtitle\">{{ subtitle() }}</span>\r\n }\r\n </span>\r\n </button>\r\n <span class=\"ListRow__Trail\">\r\n <ng-content></ng-content>\r\n @if (chevron()) {\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n }\r\n </span>\r\n </div>\r\n `,\r\n styleUrl: './list-row.component.sass',\r\n})\r\nexport class ListRowComponent {\r\n readonly title = input.required<string>();\r\n readonly subtitle = input<string | null>(null);\r\n readonly icon = input<string | null>(null);\r\n readonly avatarSrc = input<string | null>(null);\r\n readonly avatarName = input<string | null>(null);\r\n readonly chevron = input(false, { transform: booleanAttribute });\r\n readonly disabled = input(false, { transform: booleanAttribute });\r\n\r\n readonly clicked = output<MouseEvent>();\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { EmptyStateComponent } from '../empty-state/empty-state.component';\r\nimport { SkeletonComponent } from '../skeleton/skeleton.component';\r\n\r\nexport interface DataTableColumn {\r\n key: string;\r\n label: string;\r\n width?: string;\r\n}\r\n\r\n@Component({\r\n selector: 'data-table',\r\n standalone: true,\r\n imports: [EmptyStateComponent, SkeletonComponent],\r\n template: `\r\n <div class=\"DataTable\" role=\"table\">\r\n <div class=\"DataTable__Head\" role=\"row\" [style.grid-template-columns]=\"gridCols()\">\r\n @for (col of columns(); track col.key) {\r\n <span class=\"DataTable__Cell DataTable__Cell--head\" role=\"columnheader\" [style.width]=\"col.width || null\">\r\n {{ col.label }}\r\n </span>\r\n }\r\n </div>\r\n\r\n @if (loading()) {\r\n <div class=\"DataTable__Body\">\r\n @for (row of [0, 1, 2]; track row) {\r\n <skeleton [lines]=\"1\"></skeleton>\r\n }\r\n </div>\r\n } @else if (!rows().length) {\r\n <empty-state [title]=\"emptyTitle()\" [message]=\"emptyMessage()\" [icon]=\"emptyIcon()\"></empty-state>\r\n } @else {\r\n <div class=\"DataTable__Body\">\r\n @for (row of rows(); track $index) {\r\n <button type=\"button\" class=\"DataTable__Row\" role=\"row\" [style.grid-template-columns]=\"gridCols()\" (click)=\"rowClick.emit(row)\">\r\n @for (col of columns(); track col.key) {\r\n <span class=\"DataTable__Cell\" role=\"cell\" [style.width]=\"col.width || null\">\r\n {{ cell(row, col.key) }}\r\n </span>\r\n }\r\n </button>\r\n }\r\n </div>\r\n }\r\n </div>\r\n `,\r\n styleUrl: './data-table.component.sass',\r\n})\r\nexport class DataTableComponent {\r\n readonly columns = input<DataTableColumn[]>([]);\r\n readonly rows = input<Record<string, unknown>[]>([]);\r\n readonly loading = input(false);\r\n readonly emptyTitle = input('Sin filas');\r\n readonly emptyMessage = input<string | null>('No hay datos para mostrar.');\r\n readonly emptyIcon = input<string | null>('table');\r\n\r\n readonly rowClick = output<Record<string, unknown>>();\r\n\r\n gridCols(): string {\r\n return `repeat(${Math.max(1, this.columns().length)}, minmax(0, 1fr))`;\r\n }\r\n\r\n cell(row: Record<string, unknown>, key: string): string {\r\n const value = row[key];\r\n if (value == null || value === '') return '—';\r\n return String(value);\r\n }\r\n}\r\n","import { booleanAttribute, Component, forwardRef, inject, input, model } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\nimport { AccordionComponent } from './accordion.component';\r\n\r\n@Component({\r\n selector: 'accordion-item',\r\n standalone: true,\r\n imports: [LucideIconComponent],\r\n template: `\r\n <div class=\"AccordionItem\" [class.AccordionItem--open]=\"open()\">\r\n <button type=\"button\" class=\"AccordionItem__Head\" [disabled]=\"disabled()\" (click)=\"toggle()\">\r\n @if (icon()) {\r\n <lucide-icon [name]=\"icon()!\" [size]=\"14\"></lucide-icon>\r\n }\r\n <span class=\"AccordionItem__Title\">{{ title() }}</span>\r\n <lucide-icon name=\"chevron-down\" [size]=\"14\" class=\"AccordionItem__Chevron\"></lucide-icon>\r\n </button>\r\n @if (open()) {\r\n <div class=\"AccordionItem__Body\">\r\n <ng-content></ng-content>\r\n </div>\r\n }\r\n </div>\r\n `,\r\n styleUrl: './accordion-item.component.sass',\r\n})\r\nexport class AccordionItemComponent {\r\n readonly title = input.required<string>();\r\n readonly icon = input<string | null>(null);\r\n readonly disabled = input(false, { transform: booleanAttribute });\r\n readonly open = model(false);\r\n\r\n private readonly group = inject(forwardRef(() => AccordionComponent), { optional: true, skipSelf: true });\r\n\r\n toggle(): void {\r\n if (this.disabled()) return;\r\n this.open.set(!this.open());\r\n if (this.open()) this.group?.itemOpened(this);\r\n }\r\n}\r\n","import { booleanAttribute, Component, contentChildren, input } from '@angular/core';\r\nimport { AccordionItemComponent } from './accordion-item.component';\r\n\r\n@Component({\r\n selector: 'accordion',\r\n standalone: true,\r\n template: `\r\n <div class=\"Accordion\">\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n styleUrl: './accordion.component.sass',\r\n})\r\nexport class AccordionComponent {\r\n readonly multiple = input(false, { transform: booleanAttribute });\r\n private readonly items = contentChildren(AccordionItemComponent);\r\n\r\n itemOpened(opened: AccordionItemComponent): void {\r\n if (this.multiple()) return;\r\n for (const item of this.items()) {\r\n if (item !== opened) item.open.set(false);\r\n }\r\n }\r\n}\r\n","import { booleanAttribute, Component, input, model } from '@angular/core';\r\n\r\nexport interface StepperStep {\r\n label: string;\r\n description?: string;\r\n}\r\n\r\n@Component({\r\n selector: 'stepper',\r\n standalone: true,\r\n template: `\r\n <ol class=\"Stepper\" [attr.aria-label]=\"label()\">\r\n @for (step of steps(); track $index) {\r\n <li\r\n class=\"Stepper__Item\"\r\n [class.Stepper__Item--done]=\"$index < index()\"\r\n [class.Stepper__Item--current]=\"$index === index()\"\r\n >\r\n <button\r\n type=\"button\"\r\n class=\"Stepper__Btn\"\r\n [disabled]=\"!clickable() || $index === index()\"\r\n (click)=\"select($index)\"\r\n >\r\n <span class=\"Stepper__Index\">{{ $index + 1 }}</span>\r\n <span class=\"Stepper__Text\">\r\n <span class=\"Stepper__Label\">{{ step.label }}</span>\r\n @if (step.description) {\r\n <span class=\"Stepper__Desc\">{{ step.description }}</span>\r\n }\r\n </span>\r\n </button>\r\n </li>\r\n }\r\n </ol>\r\n `,\r\n styleUrl: './stepper.component.sass',\r\n})\r\nexport class StepperComponent {\r\n readonly steps = input<StepperStep[]>([]);\r\n readonly index = model(0);\r\n readonly clickable = input(false, { transform: booleanAttribute });\r\n readonly label = input('Pasos');\r\n\r\n select(next: number): void {\r\n if (!this.clickable() || next === this.index()) return;\r\n this.index.set(next);\r\n }\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { RouterLink } from '@angular/router';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\nexport interface BreadcrumbItem {\r\n label: string;\r\n href?: string;\r\n routerLink?: string | string[];\r\n}\r\n\r\n@Component({\r\n selector: 'breadcrumbs',\r\n standalone: true,\r\n imports: [LucideIconComponent, RouterLink],\r\n template: `\r\n <nav class=\"Breadcrumbs\" [attr.aria-label]=\"label()\">\r\n <ol class=\"Breadcrumbs__List\">\r\n @for (item of items(); track $index) {\r\n @if ($index > 0) {\r\n <li class=\"Breadcrumbs__Sep\" aria-hidden=\"true\">\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n </li>\r\n }\r\n <li class=\"Breadcrumbs__Item\">\r\n @if ($last) {\r\n <span class=\"Breadcrumbs__Current\">{{ item.label }}</span>\r\n } @else if (item.routerLink) {\r\n <a class=\"Breadcrumbs__Link\" [routerLink]=\"item.routerLink\" (click)=\"itemClick.emit(item)\">{{ item.label }}</a>\r\n } @else if (item.href) {\r\n <a class=\"Breadcrumbs__Link\" [href]=\"item.href\" (click)=\"itemClick.emit(item)\">{{ item.label }}</a>\r\n } @else {\r\n <button type=\"button\" class=\"Breadcrumbs__Link\" (click)=\"itemClick.emit(item)\">{{ item.label }}</button>\r\n }\r\n </li>\r\n }\r\n </ol>\r\n </nav>\r\n `,\r\n styleUrl: './breadcrumbs.component.sass',\r\n})\r\nexport class BreadcrumbsComponent {\r\n readonly items = input<BreadcrumbItem[]>([]);\r\n readonly label = input('Ruta');\r\n\r\n readonly itemClick = output<BreadcrumbItem>();\r\n}\r\n","import { booleanAttribute, Component, input, model } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\nexport interface TabItem {\r\n value: string;\r\n label: string;\r\n icon?: string;\r\n disabled?: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'tabs',\r\n standalone: true,\r\n imports: [LucideIconComponent],\r\n template: `\r\n <div class=\"Tabs\">\r\n <div class=\"Tabs__Bar\" role=\"tablist\" [attr.aria-label]=\"label()\">\r\n @for (item of items(); track item.value) {\r\n <button\r\n type=\"button\"\r\n class=\"Tabs__Tab\"\r\n role=\"tab\"\r\n [class.Tabs__Tab--on]=\"item.value === value()\"\r\n [disabled]=\"item.disabled === true || disabled()\"\r\n [attr.aria-selected]=\"item.value === value()\"\r\n (click)=\"select(item)\"\r\n >\r\n @if (item.icon) {\r\n <lucide-icon [name]=\"item.icon\" [size]=\"14\"></lucide-icon>\r\n }\r\n <span>{{ item.label }}</span>\r\n </button>\r\n }\r\n </div>\r\n <div class=\"Tabs__Panel\" role=\"tabpanel\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n styleUrl: './tabs.component.sass',\r\n})\r\nexport class TabsComponent {\r\n readonly items = input<TabItem[]>([]);\r\n readonly value = model('');\r\n readonly label = input('Secciones');\r\n readonly disabled = input(false, { transform: booleanAttribute });\r\n\r\n select(item: TabItem): void {\r\n if (item.disabled || this.disabled() || item.value === this.value()) return;\r\n this.value.set(item.value);\r\n }\r\n}\r\n","import { Component, input } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\nexport type NoticeTone = 'info' | 'success' | 'warning' | 'danger';\r\n\r\n@Component({\r\n selector: 'notice',\r\n standalone: true,\r\n imports: [LucideIconComponent],\r\n template: `\r\n <div\r\n class=\"Notice\"\r\n [class.Notice--info]=\"tone() === 'info'\"\r\n [class.Notice--success]=\"tone() === 'success'\"\r\n [class.Notice--warning]=\"tone() === 'warning'\"\r\n [class.Notice--danger]=\"tone() === 'danger'\"\r\n role=\"status\"\r\n >\r\n <span class=\"Notice__Icon\">\r\n <lucide-icon [name]=\"resolvedIcon()\" [size]=\"14\"></lucide-icon>\r\n </span>\r\n <div class=\"Notice__Body\">\r\n @if (title()) {\r\n <p class=\"Notice__Title\">{{ title() }}</p>\r\n }\r\n @if (message()) {\r\n <p class=\"Notice__Message\">{{ message() }}</p>\r\n }\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n styleUrl: './notice.component.sass',\r\n})\r\nexport class NoticeComponent {\r\n readonly tone = input<NoticeTone>('info');\r\n readonly title = input<string | null>(null);\r\n readonly message = input<string | null>(null);\r\n readonly icon = input<string | null>(null);\r\n\r\n resolvedIcon(): string {\r\n if (this.icon()) return this.icon()!;\r\n switch (this.tone()) {\r\n case 'success':\r\n return 'check-circle';\r\n case 'warning':\r\n return 'triangle-alert';\r\n case 'danger':\r\n return 'circle-alert';\r\n default:\r\n return 'info';\r\n }\r\n }\r\n}\r\n","/*\r\n * Public API Surface of @xosue-utils/helpers\r\n */\r\n\r\nexport {\r\n SmartPaginationComponent,\r\n type PaginationData,\r\n} from './lib/smart-pagination/smart-pagination.component';\r\nexport { EmptyStateComponent } from './lib/empty-state/empty-state.component';\r\nexport { LoadErrorComponent } from './lib/load-error/load-error.component';\r\nexport { SectionHeaderComponent } from './lib/section-header/section-header.component';\r\nexport {\r\n KeyValueListComponent,\r\n type KeyValueItem,\r\n} from './lib/key-value-list/key-value-list.component';\r\nexport { SkeletonComponent } from './lib/skeleton/skeleton.component';\r\nexport type { SkeletonVariant } from './lib/skeleton/skeleton.component';\r\nexport { SurfaceCardComponent } from './lib/surface-card/surface-card.component';\r\nexport { AvatarComponent } from './lib/avatar/avatar.component';\r\nexport { ListRowComponent } from './lib/list-row/list-row.component';\r\nexport { DataTableComponent } from './lib/data-table/data-table.component';\r\nexport type { DataTableColumn } from './lib/data-table/data-table.component';\r\nexport { AccordionComponent } from './lib/accordion/accordion.component';\r\nexport { AccordionItemComponent } from './lib/accordion/accordion-item.component';\r\nexport { StepperComponent } from './lib/stepper/stepper.component';\r\nexport type { StepperStep } from './lib/stepper/stepper.component';\r\nexport { BreadcrumbsComponent } from './lib/breadcrumbs/breadcrumbs.component';\r\nexport type { BreadcrumbItem } from './lib/breadcrumbs/breadcrumbs.component';\r\nexport { TabsComponent } from './lib/tabs/tabs.component';\r\nexport type { TabItem } from './lib/tabs/tabs.component';\r\nexport { NoticeComponent } from './lib/notice/notice.component';\r\nexport type { NoticeTone } from './lib/notice/notice.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xosue-utils-helpers.mjs","sources":["../../src/lib/smart-pagination/smart-pagination.component.ts","../../src/lib/smart-pagination/smart-pagination.component.html","../../src/lib/empty-state/empty-state.component.ts","../../src/lib/load-error/load-error.component.ts","../../src/lib/section-header/section-header.component.ts","../../src/lib/key-value-list/key-value-list.component.ts","../../src/lib/skeleton/skeleton.component.ts","../../src/lib/surface-card/surface-card.component.ts","../../src/lib/avatar/avatar.component.ts","../../src/lib/list-row/list-row.component.ts","../../src/lib/data-table/data-table.component.ts","../../src/lib/accordion/accordion-item.component.ts","../../src/lib/accordion/accordion.component.ts","../../src/lib/stepper/stepper.component.ts","../../src/lib/breadcrumbs/breadcrumbs.component.ts","../../src/lib/tabs/tabs.component.ts","../../src/lib/notice/notice.component.ts","../../src/public-api.ts","../../src/xosue-utils-helpers.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n signal,\r\n effect,\r\n computed,\r\n inject,\r\n OnInit,\r\n OnDestroy,\r\n Injector,\r\n} from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Subscription } from 'rxjs';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\nexport interface PaginationData {\r\n total: number;\r\n per_page: number;\r\n current_page: number;\r\n last_page: number;\r\n from: number;\r\n to: number;\r\n}\r\n\r\n@Component({\r\n selector: 'smart-pagination',\r\n standalone: true,\r\n imports: [LucideIconComponent, CommonModule],\r\n templateUrl: './smart-pagination.component.html',\r\n styleUrl: './smart-pagination.component.sass',\r\n})\r\nexport class SmartPaginationComponent implements OnInit, OnDestroy {\r\n private router = inject(Router);\r\n private route = inject(ActivatedRoute);\r\n private injector = inject(Injector);\r\n\r\n @Input() resetOnChanges = false;\r\n @Input() paramName = 'page';\r\n /** Label when total === 0. */\r\n @Input() emptyLabel = 'No hay resultados.';\r\n /** Label when last_page === 1. */\r\n @Input() singlePageLabel = 'Página única';\r\n\r\n @Input() set data(value: PaginationData | null | undefined) {\r\n if (value) {\r\n this.paginationData.set(value);\r\n } else {\r\n this.paginationData.set({\r\n total: 0,\r\n per_page: 10,\r\n current_page: 1,\r\n last_page: 1,\r\n from: 0,\r\n to: 0,\r\n });\r\n }\r\n }\r\n\r\n paginationData = signal<PaginationData>({\r\n total: 0,\r\n per_page: 10,\r\n current_page: 1,\r\n last_page: 1,\r\n from: 0,\r\n to: 0,\r\n });\r\n\r\n readonly currentPage = computed(() => this.paginationData().current_page);\r\n readonly lastPage = computed(() => this.paginationData().last_page);\r\n\r\n readonly pagesToDisplay = computed(() => {\r\n const current = this.currentPage();\r\n const last = this.lastPage();\r\n const pages: (number | string)[] = [];\r\n\r\n if (last <= 5) {\r\n for (let i = 1; i <= last; i++) pages.push(i);\r\n return pages;\r\n }\r\n\r\n pages.push(1);\r\n\r\n if (current <= 4) {\r\n for (let i = 2; i <= 5; i++) pages.push(i);\r\n pages.push('...');\r\n } else if (current >= last - 3) {\r\n pages.push('...');\r\n for (let i = last - 4; i < last; i++) pages.push(i);\r\n } else {\r\n pages.push('...');\r\n pages.push(current - 1, current, current + 1);\r\n pages.push('...');\r\n }\r\n\r\n pages.push(last);\r\n return pages;\r\n });\r\n\r\n private queryParamsSub = Subscription.EMPTY;\r\n readonly queryParams = signal<{ [key: string]: string }>({});\r\n\r\n isPage(p: number | string): p is number {\r\n return typeof p === 'number';\r\n }\r\n\r\n goToPage(page: number): void {\r\n this.router.navigate([], {\r\n relativeTo: this.route,\r\n queryParams: { [this.paramName]: page },\r\n queryParamsHandling: 'merge',\r\n });\r\n }\r\n\r\n generateHref(page: number): string {\r\n const base = this.router.url.split('?')[0];\r\n const params = new URLSearchParams({\r\n ...this.queryParams(),\r\n [this.paramName]: String(page),\r\n });\r\n return `${base}?${params}`;\r\n }\r\n\r\n updateFilter(params: { [key: string]: unknown }): void {\r\n const queryParams: { [key: string]: string | null } = {};\r\n for (const key in params) {\r\n queryParams[key] = params[key] != null ? String(params[key]) : null;\r\n }\r\n this.router.navigate([], {\r\n relativeTo: this.route,\r\n queryParams,\r\n queryParamsHandling: 'merge',\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n const queryPage = +(this.route.snapshot.queryParamMap.get(this.paramName) || '1');\r\n if (!queryPage || queryPage < 1) {\r\n this.goToPage(1);\r\n }\r\n\r\n this.queryParamsSub = this.route.queryParamMap.subscribe((params) => {\r\n const newParams: { [key: string]: string } = {};\r\n params.keys.forEach((key) => {\r\n if (key !== this.paramName) {\r\n newParams[key] = params.get(key) ?? '';\r\n }\r\n });\r\n this.queryParams.set(newParams);\r\n\r\n const page = +(params.get(this.paramName) || '1');\r\n if (!page || page < 1) {\r\n this.goToPage(1);\r\n }\r\n });\r\n\r\n effect(\r\n () => {\r\n const pag = this.paginationData();\r\n if (!pag) return;\r\n\r\n const currentParam = +(this.route.snapshot.queryParamMap.get(this.paramName) || '1');\r\n\r\n if (this.resetOnChanges) {\r\n if (currentParam !== 1) {\r\n this.goToPage(1);\r\n }\r\n return;\r\n }\r\n\r\n if (pag.last_page && currentParam > pag.last_page && pag.last_page >= 1) {\r\n this.goToPage(pag.last_page);\r\n }\r\n },\r\n { injector: this.injector },\r\n );\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.queryParamsSub.unsubscribe();\r\n }\r\n}\r\n","@if (paginationData() && paginationData().total === 0) {\r\n <p class=\"NonResults\">{{ emptyLabel }}</p>\r\n} @else if (paginationData() && paginationData().last_page > 1) {\r\n <nav class=\"pagination\" aria-label=\"Paginación\">\r\n @if (currentPage() > 1) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() - 1)\" aria-label=\"Anterior\">\r\n <lucide-icon name=\"chevron-left\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n\r\n @for (p of pagesToDisplay(); track $index) {\r\n @if (isPage(p)) {\r\n <a\r\n [class.active]=\"p === currentPage()\"\r\n [href]=\"generateHref(p)\"\r\n (click)=\"goToPage(p); $event.preventDefault()\"\r\n >\r\n {{ p }}\r\n </a>\r\n } @else {\r\n <span class=\"ellipsis\">…</span>\r\n }\r\n }\r\n\r\n @if (currentPage() < lastPage()) {\r\n <button type=\"button\" (click)=\"goToPage(currentPage() + 1)\" aria-label=\"Siguiente\">\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n </button>\r\n }\r\n </nav>\r\n} @else {\r\n <p class=\"UniquePage\">{{ singlePageLabel }}</p>\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { LucideIconComponent, TextBtnComponent } from '@xosue-utils/actions';\r\n\r\n@Component({\r\n selector: 'empty-state',\r\n standalone: true,\r\n imports: [LucideIconComponent, TextBtnComponent],\r\n template: `\r\n <div class=\"EmptyState\">\r\n @if (icon()) {\r\n <div class=\"EmptyState__Icon\">\r\n <lucide-icon [name]=\"icon()!\" [size]=\"24\"></lucide-icon>\r\n </div>\r\n }\r\n <h3 class=\"EmptyState__Title\">{{ title() }}</h3>\r\n @if (message()) {\r\n <p class=\"EmptyState__Message\">{{ message() }}</p>\r\n }\r\n @if (primaryLabel() || secondaryLabel()) {\r\n <div class=\"EmptyState__Actions\">\r\n @if (secondaryLabel()) {\r\n <text-btn\r\n [label]=\"secondaryLabel()!\"\r\n color=\"cancel\"\r\n variant=\"ghost\"\r\n (clicked)=\"secondary.emit($event)\"\r\n ></text-btn>\r\n }\r\n @if (primaryLabel()) {\r\n <text-btn\r\n [label]=\"primaryLabel()!\"\r\n [icon]=\"primaryIcon() ?? ''\"\r\n [routerLink]=\"primaryLink()\"\r\n color=\"primary\"\r\n (clicked)=\"primary.emit($event)\"\r\n ></text-btn>\r\n }\r\n </div>\r\n }\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n styleUrl: './empty-state.component.sass',\r\n})\r\nexport class EmptyStateComponent {\r\n readonly title = input('Sin datos');\r\n readonly message = input<string | null>(null);\r\n readonly icon = input<string | null>('inbox');\r\n readonly primaryLabel = input<string | null>(null);\r\n readonly primaryIcon = input<string | null>(null);\r\n readonly primaryLink = input<string | string[] | null>(null);\r\n readonly secondaryLabel = input<string | null>(null);\r\n\r\n readonly primary = output<MouseEvent>();\r\n readonly secondary = output<MouseEvent>();\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { LucideIconComponent, TextBtnComponent } from '@xosue-utils/actions';\r\n\r\n@Component({\r\n selector: 'load-error',\r\n standalone: true,\r\n imports: [LucideIconComponent, TextBtnComponent],\r\n template: `\r\n <div class=\"LoadError\">\r\n <div class=\"LoadError__Icon\">\r\n <lucide-icon [name]=\"icon()\" [size]=\"24\"></lucide-icon>\r\n </div>\r\n <h3 class=\"LoadError__Title\">{{ title() }}</h3>\r\n @if (message()) {\r\n <p class=\"LoadError__Message\">{{ message() }}</p>\r\n }\r\n <div class=\"LoadError__Actions\">\r\n <text-btn\r\n [label]=\"retryLabel()\"\r\n icon=\"refresh-cw\"\r\n color=\"primary\"\r\n (clicked)=\"retry.emit($event)\"\r\n ></text-btn>\r\n @if (homeLink()) {\r\n <text-btn\r\n [label]=\"homeLabel()\"\r\n color=\"secondary\"\r\n [routerLink]=\"homeLink()\"\r\n ></text-btn>\r\n }\r\n </div>\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n styleUrl: './load-error.component.sass',\r\n})\r\nexport class LoadErrorComponent {\r\n readonly title = input('No se pudo cargar');\r\n readonly message = input<string | null>('Revisá tu conexión e intentá de nuevo.');\r\n readonly icon = input('triangle-alert');\r\n readonly retryLabel = input('Reintentar');\r\n readonly homeLabel = input('Ir al inicio');\r\n readonly homeLink = input<string | string[] | null>(null);\r\n\r\n readonly retry = output<MouseEvent>();\r\n}\r\n","import { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'section-header',\r\n standalone: true,\r\n template: `\r\n <header class=\"SectionHeader\">\r\n <div class=\"SectionHeader__Text\">\r\n @if (eyebrow()) {\r\n <p class=\"SectionHeader__Eyebrow\">{{ eyebrow() }}</p>\r\n }\r\n <h2 class=\"SectionHeader__Title\">{{ title() }}</h2>\r\n @if (subtitle()) {\r\n <p class=\"SectionHeader__Subtitle\">{{ subtitle() }}</p>\r\n }\r\n </div>\r\n <div class=\"SectionHeader__Actions\">\r\n <ng-content></ng-content>\r\n </div>\r\n </header>\r\n `,\r\n styleUrl: './section-header.component.sass',\r\n})\r\nexport class SectionHeaderComponent {\r\n readonly title = input.required<string>();\r\n readonly subtitle = input<string | null>(null);\r\n readonly eyebrow = input<string | null>(null);\r\n}\r\n","import { Component, input } from '@angular/core';\r\n\r\nexport interface KeyValueItem {\r\n label: string;\r\n value: string | number | null | undefined;\r\n}\r\n\r\n@Component({\r\n selector: 'key-value-list',\r\n standalone: true,\r\n template: `\r\n <dl class=\"KvList\">\r\n @for (item of items(); track item.label + '-' + $index) {\r\n <div class=\"KvList__Row\">\r\n <dt class=\"KvList__Label\">{{ item.label }}</dt>\r\n <dd class=\"KvList__Value\">{{ item.value ?? emptyValue() }}</dd>\r\n </div>\r\n }\r\n </dl>\r\n `,\r\n styleUrl: './key-value-list.component.sass',\r\n})\r\nexport class KeyValueListComponent {\r\n readonly items = input<KeyValueItem[]>([]);\r\n readonly emptyValue = input('—');\r\n}\r\n","import { booleanAttribute, Component, input } from '@angular/core';\r\n\r\nexport type SkeletonVariant = 'line' | 'rect' | 'circle';\r\n\r\n@Component({\r\n selector: 'skeleton',\r\n standalone: true,\r\n template: `\r\n <div\r\n class=\"Skeleton\"\r\n [class.Skeleton--circle]=\"variant() === 'circle'\"\r\n [class.Skeleton--rect]=\"variant() === 'rect'\"\r\n [class.Skeleton--static]=\"!pulse()\"\r\n [attr.aria-hidden]=\"true\"\r\n >\r\n @if (variant() === 'line') {\r\n @for (line of lineIndexes; track line) {\r\n <span class=\"Skeleton__Line\" [style.width]=\"lineWidth(line)\"></span>\r\n }\r\n } @else {\r\n <span class=\"Skeleton__Block\" [style.width]=\"width()\" [style.height]=\"height()\"></span>\r\n }\r\n </div>\r\n `,\r\n styleUrl: './skeleton.component.sass',\r\n})\r\nexport class SkeletonComponent {\r\n readonly variant = input<SkeletonVariant>('line');\r\n readonly lines = input(3);\r\n readonly width = input('100%');\r\n readonly height = input('14px');\r\n readonly pulse = input(true, { transform: booleanAttribute });\r\n\r\n get lineIndexes(): number[] {\r\n return Array.from({ length: Math.max(1, this.lines()) }, (_, i) => i);\r\n }\r\n\r\n lineWidth(index: number): string {\r\n if (this.lines() <= 1) return this.width();\r\n return index === this.lines() - 1 ? '62%' : '100%';\r\n }\r\n}\r\n","import { booleanAttribute, Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'surface-card',\r\n standalone: true,\r\n template: `\r\n <div class=\"SurfaceCard\" [class.SurfaceCard--compact]=\"compact()\">\r\n @if (title() || subtitle()) {\r\n <div class=\"SurfaceCard__Head\">\r\n @if (title()) {\r\n <p class=\"SurfaceCard__Title\">{{ title() }}</p>\r\n }\r\n @if (subtitle()) {\r\n <p class=\"SurfaceCard__Subtitle\">{{ subtitle() }}</p>\r\n }\r\n </div>\r\n }\r\n <div class=\"SurfaceCard__Body\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n styleUrl: './surface-card.component.sass',\r\n})\r\nexport class SurfaceCardComponent {\r\n readonly title = input<string | null>(null);\r\n readonly subtitle = input<string | null>(null);\r\n readonly compact = input(false, { transform: booleanAttribute });\r\n}\r\n","import { Component, computed, input } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\n@Component({\r\n selector: 'avatar',\r\n standalone: true,\r\n imports: [LucideIconComponent],\r\n template: `\r\n <span\r\n class=\"Avatar\"\r\n [style.width.px]=\"size()\"\r\n [style.height.px]=\"size()\"\r\n [attr.aria-label]=\"name() || 'Avatar'\"\r\n >\r\n @if (src() && !broken) {\r\n <img class=\"Avatar__Img\" [src]=\"src()!\" alt=\"\" (error)=\"broken = true\" />\r\n } @else if (initials()) {\r\n <span class=\"Avatar__Initials\">{{ initials() }}</span>\r\n } @else {\r\n <lucide-icon [name]=\"icon()\" [size]=\"iconSize()\"></lucide-icon>\r\n }\r\n </span>\r\n `,\r\n styleUrl: './avatar.component.sass',\r\n})\r\nexport class AvatarComponent {\r\n readonly src = input<string | null>(null);\r\n readonly name = input<string | null>(null);\r\n readonly icon = input('user');\r\n readonly size = input(32);\r\n\r\n broken = false;\r\n\r\n readonly initials = computed(() => {\r\n const parts = (this.name() ?? '').trim().split(/\\s+/).filter(Boolean);\r\n if (!parts.length) return '';\r\n const first = parts[0][0] ?? '';\r\n const second = parts.length > 1 ? parts[parts.length - 1][0] ?? '' : '';\r\n return (first + second).toUpperCase();\r\n });\r\n\r\n iconSize(): number {\r\n return Math.max(12, Math.round(this.size() * 0.44));\r\n }\r\n}\r\n","import { booleanAttribute, Component, input, output } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\nimport { AvatarComponent } from '../avatar/avatar.component';\r\n\r\n@Component({\r\n selector: 'list-row',\r\n standalone: true,\r\n imports: [LucideIconComponent, AvatarComponent],\r\n template: `\r\n <div class=\"ListRow\" [class.ListRow--disabled]=\"disabled()\">\r\n <button\r\n type=\"button\"\r\n class=\"ListRow__Main\"\r\n [disabled]=\"disabled()\"\r\n (click)=\"clicked.emit($event)\"\r\n >\r\n @if (avatarSrc() || avatarName()) {\r\n <avatar [src]=\"avatarSrc()\" [name]=\"avatarName()\" [size]=\"32\"></avatar>\r\n } @else if (icon()) {\r\n <span class=\"ListRow__Icon\">\r\n <lucide-icon [name]=\"icon()!\" [size]=\"14\"></lucide-icon>\r\n </span>\r\n }\r\n <span class=\"ListRow__Text\">\r\n <span class=\"ListRow__Title\">{{ title() }}</span>\r\n @if (subtitle()) {\r\n <span class=\"ListRow__Subtitle\">{{ subtitle() }}</span>\r\n }\r\n </span>\r\n </button>\r\n <span class=\"ListRow__Trail\">\r\n <ng-content></ng-content>\r\n @if (chevron()) {\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n }\r\n </span>\r\n </div>\r\n `,\r\n styleUrl: './list-row.component.sass',\r\n})\r\nexport class ListRowComponent {\r\n readonly title = input.required<string>();\r\n readonly subtitle = input<string | null>(null);\r\n readonly icon = input<string | null>(null);\r\n readonly avatarSrc = input<string | null>(null);\r\n readonly avatarName = input<string | null>(null);\r\n readonly chevron = input(false, { transform: booleanAttribute });\r\n readonly disabled = input(false, { transform: booleanAttribute });\r\n\r\n readonly clicked = output<MouseEvent>();\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { EmptyStateComponent } from '../empty-state/empty-state.component';\r\nimport { SkeletonComponent } from '../skeleton/skeleton.component';\r\n\r\nexport interface DataTableColumn {\r\n key: string;\r\n label: string;\r\n width?: string;\r\n}\r\n\r\n@Component({\r\n selector: 'data-table',\r\n standalone: true,\r\n imports: [EmptyStateComponent, SkeletonComponent],\r\n template: `\r\n <div class=\"DataTable\" role=\"table\">\r\n <div class=\"DataTable__Head\" role=\"row\" [style.grid-template-columns]=\"gridCols()\">\r\n @for (col of columns(); track col.key) {\r\n <span class=\"DataTable__Cell DataTable__Cell--head\" role=\"columnheader\" [style.width]=\"col.width || null\">\r\n {{ col.label }}\r\n </span>\r\n }\r\n </div>\r\n\r\n @if (loading()) {\r\n <div class=\"DataTable__Body\">\r\n @for (row of [0, 1, 2]; track row) {\r\n <skeleton [lines]=\"1\"></skeleton>\r\n }\r\n </div>\r\n } @else if (!rows().length) {\r\n <empty-state [title]=\"emptyTitle()\" [message]=\"emptyMessage()\" [icon]=\"emptyIcon()\"></empty-state>\r\n } @else {\r\n <div class=\"DataTable__Body\">\r\n @for (row of rows(); track $index) {\r\n <button type=\"button\" class=\"DataTable__Row\" role=\"row\" [style.grid-template-columns]=\"gridCols()\" (click)=\"rowClick.emit(row)\">\r\n @for (col of columns(); track col.key) {\r\n <span class=\"DataTable__Cell\" role=\"cell\" [style.width]=\"col.width || null\">\r\n {{ cell(row, col.key) }}\r\n </span>\r\n }\r\n </button>\r\n }\r\n </div>\r\n }\r\n </div>\r\n `,\r\n styleUrl: './data-table.component.sass',\r\n})\r\nexport class DataTableComponent {\r\n readonly columns = input<DataTableColumn[]>([]);\r\n readonly rows = input<Record<string, unknown>[]>([]);\r\n readonly loading = input(false);\r\n readonly emptyTitle = input('Sin filas');\r\n readonly emptyMessage = input<string | null>('No hay datos para mostrar.');\r\n readonly emptyIcon = input<string | null>('table');\r\n\r\n readonly rowClick = output<Record<string, unknown>>();\r\n\r\n gridCols(): string {\r\n return `repeat(${Math.max(1, this.columns().length)}, minmax(0, 1fr))`;\r\n }\r\n\r\n cell(row: Record<string, unknown>, key: string): string {\r\n const value = row[key];\r\n if (value == null || value === '') return '—';\r\n return String(value);\r\n }\r\n}\r\n","import { booleanAttribute, Component, forwardRef, inject, input, model } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\nimport { AccordionComponent } from './accordion.component';\r\n\r\n@Component({\r\n selector: 'accordion-item',\r\n standalone: true,\r\n imports: [LucideIconComponent],\r\n template: `\r\n <div class=\"AccordionItem\" [class.AccordionItem--open]=\"open()\">\r\n <button type=\"button\" class=\"AccordionItem__Head\" [disabled]=\"disabled()\" (click)=\"toggle()\">\r\n @if (icon()) {\r\n <lucide-icon [name]=\"icon()!\" [size]=\"14\"></lucide-icon>\r\n }\r\n <span class=\"AccordionItem__Title\">{{ title() }}</span>\r\n <lucide-icon name=\"chevron-down\" [size]=\"14\" class=\"AccordionItem__Chevron\"></lucide-icon>\r\n </button>\r\n @if (open()) {\r\n <div class=\"AccordionItem__Body\">\r\n <ng-content></ng-content>\r\n </div>\r\n }\r\n </div>\r\n `,\r\n styleUrl: './accordion-item.component.sass',\r\n})\r\nexport class AccordionItemComponent {\r\n readonly title = input.required<string>();\r\n readonly icon = input<string | null>(null);\r\n readonly disabled = input(false, { transform: booleanAttribute });\r\n readonly open = model(false);\r\n\r\n private readonly group = inject(forwardRef(() => AccordionComponent), { optional: true, skipSelf: true });\r\n\r\n toggle(): void {\r\n if (this.disabled()) return;\r\n this.open.set(!this.open());\r\n if (this.open()) this.group?.itemOpened(this);\r\n }\r\n}\r\n","import { booleanAttribute, Component, contentChildren, input } from '@angular/core';\r\nimport { AccordionItemComponent } from './accordion-item.component';\r\n\r\n@Component({\r\n selector: 'accordion',\r\n standalone: true,\r\n template: `\r\n <div class=\"Accordion\">\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n styleUrl: './accordion.component.sass',\r\n})\r\nexport class AccordionComponent {\r\n readonly multiple = input(false, { transform: booleanAttribute });\r\n private readonly items = contentChildren(AccordionItemComponent);\r\n\r\n itemOpened(opened: AccordionItemComponent): void {\r\n if (this.multiple()) return;\r\n for (const item of this.items()) {\r\n if (item !== opened) item.open.set(false);\r\n }\r\n }\r\n}\r\n","import { booleanAttribute, Component, input, model } from '@angular/core';\r\n\r\nexport interface StepperStep {\r\n label: string;\r\n description?: string;\r\n}\r\n\r\n@Component({\r\n selector: 'stepper',\r\n standalone: true,\r\n template: `\r\n <ol class=\"Stepper\" [attr.aria-label]=\"label()\">\r\n @for (step of steps(); track $index) {\r\n <li\r\n class=\"Stepper__Item\"\r\n [class.Stepper__Item--done]=\"$index < index()\"\r\n [class.Stepper__Item--current]=\"$index === index()\"\r\n >\r\n <button\r\n type=\"button\"\r\n class=\"Stepper__Btn\"\r\n [disabled]=\"!clickable() || $index === index()\"\r\n (click)=\"select($index)\"\r\n >\r\n <span class=\"Stepper__Index\">{{ $index + 1 }}</span>\r\n <span class=\"Stepper__Text\">\r\n <span class=\"Stepper__Label\">{{ step.label }}</span>\r\n @if (step.description) {\r\n <span class=\"Stepper__Desc\">{{ step.description }}</span>\r\n }\r\n </span>\r\n </button>\r\n </li>\r\n }\r\n </ol>\r\n `,\r\n styleUrl: './stepper.component.sass',\r\n})\r\nexport class StepperComponent {\r\n readonly steps = input<StepperStep[]>([]);\r\n readonly index = model(0);\r\n readonly clickable = input(false, { transform: booleanAttribute });\r\n readonly label = input('Pasos');\r\n\r\n select(next: number): void {\r\n if (!this.clickable() || next === this.index()) return;\r\n this.index.set(next);\r\n }\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { RouterLink } from '@angular/router';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\nexport interface BreadcrumbItem {\r\n label: string;\r\n href?: string;\r\n routerLink?: string | string[];\r\n}\r\n\r\n@Component({\r\n selector: 'breadcrumbs',\r\n standalone: true,\r\n imports: [LucideIconComponent, RouterLink],\r\n template: `\r\n <nav class=\"Breadcrumbs\" [attr.aria-label]=\"label()\">\r\n <ol class=\"Breadcrumbs__List\">\r\n @for (item of items(); track $index) {\r\n @if ($index > 0) {\r\n <li class=\"Breadcrumbs__Sep\" aria-hidden=\"true\">\r\n <lucide-icon name=\"chevron-right\" [size]=\"14\"></lucide-icon>\r\n </li>\r\n }\r\n <li class=\"Breadcrumbs__Item\">\r\n @if ($last) {\r\n <span class=\"Breadcrumbs__Current\">{{ item.label }}</span>\r\n } @else if (item.routerLink) {\r\n <a class=\"Breadcrumbs__Link\" [routerLink]=\"item.routerLink\" (click)=\"itemClick.emit(item)\">{{ item.label }}</a>\r\n } @else if (item.href) {\r\n <a class=\"Breadcrumbs__Link\" [href]=\"item.href\" (click)=\"itemClick.emit(item)\">{{ item.label }}</a>\r\n } @else {\r\n <button type=\"button\" class=\"Breadcrumbs__Link\" (click)=\"itemClick.emit(item)\">{{ item.label }}</button>\r\n }\r\n </li>\r\n }\r\n </ol>\r\n </nav>\r\n `,\r\n styleUrl: './breadcrumbs.component.sass',\r\n})\r\nexport class BreadcrumbsComponent {\r\n readonly items = input<BreadcrumbItem[]>([]);\r\n readonly label = input('Ruta');\r\n\r\n readonly itemClick = output<BreadcrumbItem>();\r\n}\r\n","import { booleanAttribute, Component, input, model } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\nexport interface TabItem {\r\n value: string;\r\n label: string;\r\n icon?: string;\r\n disabled?: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'tabs',\r\n standalone: true,\r\n imports: [LucideIconComponent],\r\n template: `\r\n <div class=\"Tabs\">\r\n <div class=\"Tabs__Bar\" role=\"tablist\" [attr.aria-label]=\"label()\">\r\n @for (item of items(); track item.value) {\r\n <button\r\n type=\"button\"\r\n class=\"Tabs__Tab\"\r\n role=\"tab\"\r\n [class.Tabs__Tab--on]=\"item.value === value()\"\r\n [disabled]=\"item.disabled === true || disabled()\"\r\n [attr.aria-selected]=\"item.value === value()\"\r\n (click)=\"select(item)\"\r\n >\r\n @if (item.icon) {\r\n <lucide-icon [name]=\"item.icon\" [size]=\"14\"></lucide-icon>\r\n }\r\n <span>{{ item.label }}</span>\r\n </button>\r\n }\r\n </div>\r\n <div class=\"Tabs__Panel\" role=\"tabpanel\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n styleUrl: './tabs.component.sass',\r\n})\r\nexport class TabsComponent {\r\n readonly items = input<TabItem[]>([]);\r\n readonly value = model('');\r\n readonly label = input('Secciones');\r\n readonly disabled = input(false, { transform: booleanAttribute });\r\n\r\n select(item: TabItem): void {\r\n if (item.disabled || this.disabled() || item.value === this.value()) return;\r\n this.value.set(item.value);\r\n }\r\n}\r\n","import { Component, input } from '@angular/core';\r\nimport { LucideIconComponent } from '@xosue-utils/actions';\r\n\r\nexport type NoticeTone = 'info' | 'success' | 'warning' | 'danger';\r\n\r\n@Component({\r\n selector: 'notice',\r\n standalone: true,\r\n imports: [LucideIconComponent],\r\n template: `\r\n <div\r\n class=\"Notice\"\r\n [class.Notice--info]=\"tone() === 'info'\"\r\n [class.Notice--success]=\"tone() === 'success'\"\r\n [class.Notice--warning]=\"tone() === 'warning'\"\r\n [class.Notice--danger]=\"tone() === 'danger'\"\r\n role=\"status\"\r\n >\r\n <span class=\"Notice__Icon\">\r\n <lucide-icon [name]=\"resolvedIcon()\" [size]=\"14\"></lucide-icon>\r\n </span>\r\n <div class=\"Notice__Body\">\r\n @if (title()) {\r\n <p class=\"Notice__Title\">{{ title() }}</p>\r\n }\r\n @if (message()) {\r\n <p class=\"Notice__Message\">{{ message() }}</p>\r\n }\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n styleUrl: './notice.component.sass',\r\n})\r\nexport class NoticeComponent {\r\n readonly tone = input<NoticeTone>('info');\r\n readonly title = input<string | null>(null);\r\n readonly message = input<string | null>(null);\r\n readonly icon = input<string | null>(null);\r\n\r\n resolvedIcon(): string {\r\n if (this.icon()) return this.icon()!;\r\n switch (this.tone()) {\r\n case 'success':\r\n return 'check-circle';\r\n case 'warning':\r\n return 'triangle-alert';\r\n case 'danger':\r\n return 'circle-alert';\r\n default:\r\n return 'info';\r\n }\r\n }\r\n}\r\n","/*\r\n * Public API Surface of @xosue-utils/helpers\r\n */\r\n\r\nexport {\r\n SmartPaginationComponent,\r\n type PaginationData,\r\n} from './lib/smart-pagination/smart-pagination.component';\r\nexport { EmptyStateComponent } from './lib/empty-state/empty-state.component';\r\nexport { LoadErrorComponent } from './lib/load-error/load-error.component';\r\nexport { SectionHeaderComponent } from './lib/section-header/section-header.component';\r\nexport {\r\n KeyValueListComponent,\r\n type KeyValueItem,\r\n} from './lib/key-value-list/key-value-list.component';\r\nexport { SkeletonComponent } from './lib/skeleton/skeleton.component';\r\nexport type { SkeletonVariant } from './lib/skeleton/skeleton.component';\r\nexport { SurfaceCardComponent } from './lib/surface-card/surface-card.component';\r\nexport { AvatarComponent } from './lib/avatar/avatar.component';\r\nexport { ListRowComponent } from './lib/list-row/list-row.component';\r\nexport { DataTableComponent } from './lib/data-table/data-table.component';\r\nexport type { DataTableColumn } from './lib/data-table/data-table.component';\r\nexport { AccordionComponent } from './lib/accordion/accordion.component';\r\nexport { AccordionItemComponent } from './lib/accordion/accordion-item.component';\r\nexport { StepperComponent } from './lib/stepper/stepper.component';\r\nexport type { StepperStep } from './lib/stepper/stepper.component';\r\nexport { BreadcrumbsComponent } from './lib/breadcrumbs/breadcrumbs.component';\r\nexport type { BreadcrumbItem } from './lib/breadcrumbs/breadcrumbs.component';\r\nexport { TabsComponent } from './lib/tabs/tabs.component';\r\nexport type { TabItem } from './lib/tabs/tabs.component';\r\nexport { NoticeComponent } from './lib/notice/notice.component';\r\nexport type { NoticeTone } from './lib/notice/notice.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,10 @@ export declare class EmptyStateComponent {
|
|
|
5
5
|
readonly icon: import("@angular/core").InputSignal<string>;
|
|
6
6
|
readonly primaryLabel: import("@angular/core").InputSignal<string>;
|
|
7
7
|
readonly primaryIcon: import("@angular/core").InputSignal<string>;
|
|
8
|
+
readonly primaryLink: import("@angular/core").InputSignal<string | string[]>;
|
|
8
9
|
readonly secondaryLabel: import("@angular/core").InputSignal<string>;
|
|
9
10
|
readonly primary: import("@angular/core").OutputEmitterRef<MouseEvent>;
|
|
10
11
|
readonly secondary: import("@angular/core").OutputEmitterRef<MouseEvent>;
|
|
11
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<EmptyStateComponent, never>;
|
|
12
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<EmptyStateComponent, "empty-state", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "primaryLabel": { "alias": "primaryLabel"; "required": false; "isSignal": true; }; "primaryIcon": { "alias": "primaryIcon"; "required": false; "isSignal": true; }; "secondaryLabel": { "alias": "secondaryLabel"; "required": false; "isSignal": true; }; }, { "primary": "primary"; "secondary": "secondary"; }, never, ["*"], true, never>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<EmptyStateComponent, "empty-state", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "primaryLabel": { "alias": "primaryLabel"; "required": false; "isSignal": true; }; "primaryIcon": { "alias": "primaryIcon"; "required": false; "isSignal": true; }; "primaryLink": { "alias": "primaryLink"; "required": false; "isSignal": true; }; "secondaryLabel": { "alias": "secondaryLabel"; "required": false; "isSignal": true; }; }, { "primary": "primary"; "secondary": "secondary"; }, never, ["*"], true, never>;
|
|
13
14
|
}
|
|
@@ -4,7 +4,9 @@ export declare class LoadErrorComponent {
|
|
|
4
4
|
readonly message: import("@angular/core").InputSignal<string>;
|
|
5
5
|
readonly icon: import("@angular/core").InputSignal<string>;
|
|
6
6
|
readonly retryLabel: import("@angular/core").InputSignal<string>;
|
|
7
|
+
readonly homeLabel: import("@angular/core").InputSignal<string>;
|
|
8
|
+
readonly homeLink: import("@angular/core").InputSignal<string | string[]>;
|
|
7
9
|
readonly retry: import("@angular/core").OutputEmitterRef<MouseEvent>;
|
|
8
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<LoadErrorComponent, never>;
|
|
9
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<LoadErrorComponent, "load-error", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "retryLabel": { "alias": "retryLabel"; "required": false; "isSignal": true; }; }, { "retry": "retry"; }, never, ["*"], true, never>;
|
|
11
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LoadErrorComponent, "load-error", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "retryLabel": { "alias": "retryLabel"; "required": false; "isSignal": true; }; "homeLabel": { "alias": "homeLabel"; "required": false; "isSignal": true; }; "homeLink": { "alias": "homeLink"; "required": false; "isSignal": true; }; }, { "retry": "retry"; }, never, ["*"], true, never>;
|
|
10
12
|
}
|
package/package.json
CHANGED