tailjng 0.1.6 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -5
- package/cli/execute/init-app.js +5 -2
- package/cli/execute/sync-app.js +14 -2
- package/cli/settings/colors-config-utils.js +69 -11
- package/cli/settings/icons-config-utils.js +62 -0
- package/cli/settings/path-utils.js +32 -2
- package/cli/settings/project-utils.js +7 -1
- package/cli/templates/app.generator.js +8 -5
- package/fesm2022/tailjng.mjs +247 -80
- package/fesm2022/tailjng.mjs.map +1 -1
- package/lib/services/static/theme.service.d.ts +39 -1
- package/lib/utils/theme/theme-variables.util.d.ts +31 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -1
- package/registry/components.json +41 -18
- package/src/colors.safelist.css +2 -2
- package/src/lib/components/.config/README.md +11 -0
- package/src/lib/components/.config/colors/README.md +40 -0
- package/src/lib/components/{colors-config → .config/colors}/colors.config.ts +5 -5
- package/src/lib/components/{colors-config → .config/colors}/colors.safelist.css +2 -2
- package/src/lib/components/.config/icons/README.md +26 -0
- package/src/lib/components/.config/icons/icons.lucide.ts +134 -0
- package/src/lib/components/.config/input/README.md +24 -0
- package/src/lib/components/.config/input/input.classes.ts +119 -0
- package/src/lib/components/alert/alert-dialog/dialog-alert.component.css +177 -6
- package/src/lib/components/alert/alert-dialog/dialog-alert.component.html +24 -37
- package/src/lib/components/alert/alert-dialog/dialog-alert.component.ts +66 -56
- package/src/lib/components/alert/alert-dialog/dialog-alert.types.ts +19 -0
- package/src/lib/components/alert/alert-toast/toast-alert.component.css +494 -14
- package/src/lib/components/alert/alert-toast/toast-alert.component.html +106 -102
- package/src/lib/components/alert/alert-toast/toast-alert.component.ts +485 -128
- package/src/lib/components/alert/alert-toast/toast-alert.types.ts +25 -0
- package/src/lib/components/badge/badge.component.html +34 -21
- package/src/lib/components/badge/badge.component.ts +140 -31
- package/src/lib/components/button/button.component.html +16 -10
- package/src/lib/components/button/button.component.ts +162 -22
- package/src/lib/components/card/card-complete/complete-card.component.html +2 -2
- package/src/lib/components/card/card-complete/complete-card.component.ts +26 -16
- package/src/lib/components/card/card-crud-complete/complete-crud-card.component.html +2 -2
- package/src/lib/components/card/card-crud-complete/complete-crud-card.component.ts +26 -16
- package/src/lib/components/checkbox/checkbox-input/input-checkbox.component.css +30 -0
- package/src/lib/components/checkbox/checkbox-input/input-checkbox.component.html +58 -46
- package/src/lib/components/checkbox/checkbox-input/input-checkbox.component.ts +135 -64
- package/src/lib/components/checkbox/checkbox-input/input-checkbox.types.ts +3 -0
- package/src/lib/components/checkbox/checkbox-switch/switch-checkbox.component.css +62 -0
- package/src/lib/components/checkbox/checkbox-switch/switch-checkbox.component.html +39 -25
- package/src/lib/components/checkbox/checkbox-switch/switch-checkbox.component.ts +74 -15
- package/src/lib/components/checkbox/checkbox-switch/switch-checkbox.types.ts +1 -0
- package/src/lib/components/coach-mark/coach-mark.component.html +6 -24
- package/src/lib/components/coach-mark/coach-mark.component.scss +1 -7
- package/src/lib/components/coach-mark/coach-mark.component.ts +51 -18
- package/src/lib/components/coach-mark/coach-mark.directive.ts +133 -78
- package/src/lib/components/coach-mark/coach-mark.types.ts +12 -0
- package/src/lib/components/dialog/dialog.component.css +1 -1
- package/src/lib/components/dialog/dialog.component.html +56 -65
- package/src/lib/components/dialog/dialog.component.ts +136 -110
- package/src/lib/components/dialog/dialog.types.ts +19 -0
- package/src/lib/components/filter/filter-complete/complete-filter.component.html +17 -20
- package/src/lib/components/filter/filter-complete/complete-filter.component.scss +25 -0
- package/src/lib/components/filter/filter-complete/complete-filter.component.ts +58 -34
- package/src/lib/components/filter/filter-complete/complete-filter.types.ts +7 -0
- package/src/lib/components/filter/filter-complete/complete-filter.util.ts +16 -0
- package/src/lib/components/form/form-container/container-form.component.css +4 -0
- package/src/lib/components/form/form-container/container-form.component.html +2 -2
- package/src/lib/components/form/form-container/container-form.component.ts +72 -16
- package/src/lib/components/form/form-container/container-form.types.ts +42 -0
- package/src/lib/components/form/form-container/form-col-span.directive.ts +25 -0
- package/src/lib/components/form/form-sidebar/sidebar-form.component.css +45 -0
- package/src/lib/components/form/form-sidebar/sidebar-form.component.html +128 -124
- package/src/lib/components/form/form-sidebar/sidebar-form.component.ts +114 -34
- package/src/lib/components/form/form-sidebar/sidebar-form.types.ts +3 -0
- package/src/lib/components/{toggle-radio/toggle-radio.component.css → form/form-validation/validation-form.component.css} +0 -1
- package/src/lib/components/form/form-validation/validation-form.component.html +10 -6
- package/src/lib/components/form/form-validation/validation-form.component.ts +99 -12
- package/src/lib/components/form/form-validation/validation-form.types.ts +33 -0
- package/src/lib/components/icon/icon.component.html +8 -5
- package/src/lib/components/icon/icon.component.ts +111 -9
- package/src/lib/components/input/input/input.component.css +0 -14
- package/src/lib/components/input/input/input.component.html +19 -16
- package/src/lib/components/input/input/input.component.ts +130 -53
- package/src/lib/components/input/input/input.types.ts +8 -0
- package/src/lib/components/input/input-file/file-input.component.html +65 -56
- package/src/lib/components/input/input-file/file-input.component.ts +276 -173
- package/src/lib/components/input/input-file/file-input.types.ts +2 -0
- package/src/lib/components/input/input-range/range-input.component.css +67 -0
- package/src/lib/components/input/input-range/range-input.component.html +50 -58
- package/src/lib/components/input/input-range/range-input.component.ts +148 -60
- package/src/lib/components/input/input-range/range-input.types.ts +7 -0
- package/src/lib/components/input/input-textarea/textarea-input.component.html +16 -7
- package/src/lib/components/input/input-textarea/textarea-input.component.ts +140 -50
- package/src/lib/components/input/input-textarea/textarea-input.types.ts +2 -0
- package/src/lib/components/label/label.component.html +17 -16
- package/src/lib/components/label/label.component.ts +94 -16
- package/src/lib/components/label/label.types.ts +2 -0
- package/src/lib/components/menu/menu-options-table/menu-options-defaults.ts +34 -0
- package/src/lib/components/menu/menu-options-table/options-table-menu.component.html +34 -20
- package/src/lib/components/menu/menu-options-table/options-table-menu.component.ts +211 -58
- package/src/lib/components/menu/menu-options-table/options-table-menu.types.ts +38 -0
- package/src/lib/components/menu/options-coach-menu/options-coach-menu.component.html +49 -52
- package/src/lib/components/menu/options-coach-menu/options-coach-menu.component.ts +112 -24
- package/src/lib/components/menu/options-coach-menu/options-coach-menu.types.ts +9 -0
- package/src/lib/components/mode-toggle/mode-toggle.component.html +11 -16
- package/src/lib/components/mode-toggle/mode-toggle.component.ts +69 -33
- package/src/lib/components/paginator/paginator-complete/complete-paginator.component.html +4 -4
- package/src/lib/components/paginator/paginator-complete/complete-paginator.component.ts +31 -7
- package/src/lib/components/paginator/paginator-complete/complete-paginator.types.ts +12 -0
- package/src/lib/components/paginator/paginator-complete/complete-paginator.util.ts +36 -0
- package/src/lib/components/progress-bar/progress-bar.component.html +41 -40
- package/src/lib/components/progress-bar/progress-bar.component.ts +95 -11
- package/src/lib/components/progress-bar/progress-bar.types.ts +2 -0
- package/src/lib/components/select/select-dropdown/dropdown-select.component.html +56 -46
- package/src/lib/components/select/select-dropdown/dropdown-select.component.ts +450 -509
- package/src/lib/components/select/select-dropdown/dropdown-select.types.ts +43 -0
- package/src/lib/components/select/select-dropdown/dropdown-select.util.ts +179 -0
- package/src/lib/components/select/select-multi-dropdown/multi-dropdown-select.component.html +131 -42
- package/src/lib/components/select/select-multi-dropdown/multi-dropdown-select.component.ts +491 -475
- package/src/lib/components/select/select-multi-dropdown/multi-dropdown-select.types.ts +22 -0
- package/src/lib/components/select/select-multi-dropdown/multi-dropdown-select.util.ts +20 -0
- package/src/lib/components/select/select-multi-table/multi-table-select.component.css +4 -0
- package/src/lib/components/select/select-multi-table/multi-table-select.component.html +76 -60
- package/src/lib/components/select/select-multi-table/multi-table-select.component.ts +250 -313
- package/src/lib/components/select/select-multi-table/multi-table-select.types.ts +10 -0
- package/src/lib/components/select/select-multi-table/multi-table-select.util.ts +5 -0
- package/src/lib/components/sidebar/sidebar-static/static-sidebar.component.css +155 -0
- package/src/lib/components/sidebar/sidebar-static/static-sidebar.component.html +72 -53
- package/src/lib/components/sidebar/sidebar-static/static-sidebar.component.ts +84 -27
- package/src/lib/components/sidebar/sidebar-static/static-sidebar.types.ts +2 -0
- package/src/lib/components/table/table-complete/complete-table.component.html +21 -23
- package/src/lib/components/table/table-complete/complete-table.component.ts +190 -338
- package/src/lib/components/table/table-complete/complete-table.types.ts +28 -0
- package/src/lib/components/table/table-complete/complete-table.util.ts +236 -0
- package/src/lib/components/table/table-complete/index.ts +2 -0
- package/src/lib/components/table/table-crud-complete/complete-crud-table.animations.ts +34 -0
- package/src/lib/components/table/table-crud-complete/complete-crud-table.component.html +87 -142
- package/src/lib/components/table/table-crud-complete/complete-crud-table.component.scss +0 -63
- package/src/lib/components/table/table-crud-complete/complete-crud-table.component.ts +544 -831
- package/src/lib/components/table/table-crud-complete/complete-crud-table.types.ts +57 -0
- package/src/lib/components/table/table-crud-complete/complete-crud-table.util.ts +723 -0
- package/src/lib/components/table/table-crud-complete/index.ts +3 -0
- package/src/lib/components/theme-generator/theme-generator.component.css +21 -0
- package/src/lib/components/theme-generator/theme-generator.component.html +141 -116
- package/src/lib/components/theme-generator/theme-generator.component.ts +44 -24
- package/src/lib/components/toggle-radio/shared/toggle-options.types.ts +8 -0
- package/src/lib/components/toggle-radio/shared/toggle-options.util.ts +62 -0
- package/src/lib/components/toggle-radio/toggle-radio/toggle-radio.component.css +22 -0
- package/src/lib/components/toggle-radio/toggle-radio/toggle-radio.component.html +65 -0
- package/src/lib/components/toggle-radio/toggle-radio/toggle-radio.component.ts +192 -0
- package/src/lib/components/toggle-radio/toggle-radio/toggle-radio.types.ts +1 -0
- package/src/lib/components/toggle-radio/toggle-segment/segment-toggle.component.css +34 -0
- package/src/lib/components/toggle-radio/toggle-segment/segment-toggle.component.html +47 -0
- package/src/lib/components/toggle-radio/toggle-segment/segment-toggle.component.ts +187 -0
- package/src/lib/components/toggle-radio/toggle-segment/segment-toggle.types.ts +1 -0
- package/src/lib/components/tooltip/tooltip.directive.ts +12 -9
- package/src/lib/components/tooltip/tooltip.service.ts +331 -133
- package/src/lib/components/tooltip/tooltip.types.ts +9 -0
- package/src/lib/components/viewer/viewer-image/image-viewer.component.css +14 -4
- package/src/lib/components/viewer/viewer-image/image-viewer.component.html +61 -95
- package/src/lib/components/viewer/viewer-image/image-viewer.component.ts +182 -177
- package/src/lib/components/viewer/viewer-image/image-viewer.types.ts +3 -0
- package/src/lib/components/viewer/viewer-pdf/pdf-viewer.component.css +25 -0
- package/src/lib/components/viewer/viewer-pdf/pdf-viewer.component.html +95 -24
- package/src/lib/components/viewer/viewer-pdf/pdf-viewer.component.ts +168 -15
- package/src/lib/components/viewer/viewer-pdf/pdf-viewer.types.ts +1 -0
- package/src/styles.css +2 -2
- package/lib/services/static/icons.service.d.ts +0 -65
- package/src/lib/components/colors-config/README.md +0 -38
- package/src/lib/components/form/form-sidebar/sidebar-form.component.scss +0 -0
- package/src/lib/components/form/form-validation/validation-form.component.scss +0 -0
- package/src/lib/components/menu/menu-options-table/options-table-menu.component.scss +0 -0
- package/src/lib/components/menu/options-coach-menu/options-coach-menu.component.scss +0 -12
- package/src/lib/components/sidebar/sidebar-static/static-sidebar.component.scss +0 -0
- package/src/lib/components/toggle-radio/toggle-radio.component.html +0 -51
- package/src/lib/components/toggle-radio/toggle-radio.component.ts +0 -222
- package/src/lib/components/viewer/viewer-pdf/pdf-viewer.component.scss +0 -0
- package/tailjng-0.1.6.tgz +0 -0
|
@@ -1,183 +1,149 @@
|
|
|
1
|
-
<div class="relative
|
|
1
|
+
<div class="relative h-full w-full" [ngClass]="ngClasses" #container>
|
|
2
2
|
@if (hasAnyControlVisible) {
|
|
3
3
|
<div
|
|
4
|
-
class="absolute z-20 flex flex-wrap justify-end
|
|
5
|
-
[ngClass]="
|
|
6
|
-
'top-3 right-3': isFullscreen,
|
|
7
|
-
'top-2 right-2': !isFullscreen,
|
|
8
|
-
}"
|
|
4
|
+
class="absolute z-20 flex max-w-[calc(100%-1rem)] flex-wrap items-center justify-end gap-1"
|
|
5
|
+
[ngClass]="controlsPositionClasses"
|
|
9
6
|
>
|
|
10
7
|
@if (isControlVisible(showRotateLeft)) {
|
|
11
8
|
<JButton
|
|
12
9
|
jTooltip="Girar a la izquierda"
|
|
13
|
-
[icon]="
|
|
10
|
+
[icon]="Icons.RotateCcw"
|
|
14
11
|
[iconSize]="buttonIconSize"
|
|
15
|
-
(clicked)="
|
|
16
|
-
[classes]="
|
|
17
|
-
'secondary rounded-lg shrink-0 opacity-30 hover:opacity-100 transition-opacity duration-200 ' +
|
|
18
|
-
buttonSizeClass
|
|
19
|
-
"
|
|
12
|
+
(clicked)="rotateLeft()"
|
|
13
|
+
[classes]="controlButtonClasses"
|
|
20
14
|
/>
|
|
21
15
|
}
|
|
22
16
|
|
|
23
17
|
@if (isControlVisible(showRotateRight)) {
|
|
24
18
|
<JButton
|
|
25
19
|
jTooltip="Girar a la derecha"
|
|
26
|
-
[icon]="
|
|
20
|
+
[icon]="Icons.RotateCw"
|
|
27
21
|
[iconSize]="buttonIconSize"
|
|
28
|
-
(clicked)="
|
|
29
|
-
[classes]="
|
|
30
|
-
'secondary rounded-lg shrink-0 opacity-30 hover:opacity-100 transition-opacity duration-200 ' +
|
|
31
|
-
buttonSizeClass
|
|
32
|
-
"
|
|
22
|
+
(clicked)="rotateRight()"
|
|
23
|
+
[classes]="controlButtonClasses"
|
|
33
24
|
/>
|
|
34
25
|
}
|
|
35
26
|
|
|
36
27
|
@if (isControlVisible(showReset)) {
|
|
37
28
|
<JButton
|
|
38
29
|
jTooltip="Restablecer"
|
|
39
|
-
[icon]="
|
|
30
|
+
[icon]="Icons.RefreshCcw"
|
|
40
31
|
[iconSize]="buttonIconSize"
|
|
41
|
-
(clicked)="
|
|
42
|
-
[classes]="
|
|
43
|
-
'secondary rounded-lg shrink-0 opacity-30 hover:opacity-100 transition-opacity duration-200 ' +
|
|
44
|
-
buttonSizeClass
|
|
45
|
-
"
|
|
32
|
+
(clicked)="resetView()"
|
|
33
|
+
[classes]="controlButtonClasses"
|
|
46
34
|
/>
|
|
47
35
|
}
|
|
48
36
|
|
|
49
37
|
@if (isControlVisible(showZoomOut)) {
|
|
50
38
|
<JButton
|
|
51
39
|
jTooltip="Alejar"
|
|
52
|
-
[icon]="
|
|
40
|
+
[icon]="Icons.ZoomOut"
|
|
53
41
|
[iconSize]="buttonIconSize"
|
|
54
|
-
[disabled]="
|
|
42
|
+
[disabled]="isZoomMin"
|
|
55
43
|
(clicked)="zoomOut()"
|
|
56
|
-
[classes]="
|
|
57
|
-
'secondary rounded-lg shrink-0 opacity-30 hover:opacity-100 transition-opacity duration-200 ' +
|
|
58
|
-
buttonSizeClass
|
|
59
|
-
"
|
|
44
|
+
[classes]="controlButtonClasses"
|
|
60
45
|
/>
|
|
61
46
|
}
|
|
62
47
|
|
|
63
48
|
@if (isControlVisible(showZoomIn)) {
|
|
64
49
|
<JButton
|
|
65
50
|
jTooltip="Acercar"
|
|
66
|
-
[icon]="
|
|
51
|
+
[icon]="Icons.ZoomIn"
|
|
67
52
|
[iconSize]="buttonIconSize"
|
|
68
|
-
[disabled]="
|
|
53
|
+
[disabled]="isZoomMax"
|
|
69
54
|
(clicked)="zoomIn()"
|
|
70
|
-
[classes]="
|
|
71
|
-
'secondary rounded-lg shrink-0 opacity-30 hover:opacity-100 transition-opacity duration-200 ' +
|
|
72
|
-
buttonSizeClass
|
|
73
|
-
"
|
|
55
|
+
[classes]="controlButtonClasses"
|
|
74
56
|
/>
|
|
75
57
|
}
|
|
76
58
|
|
|
77
59
|
@if (isControlVisible(showDownload)) {
|
|
78
60
|
<JButton
|
|
79
61
|
jTooltip="Descargar"
|
|
80
|
-
[icon]="
|
|
62
|
+
[icon]="Icons.Download"
|
|
81
63
|
[iconSize]="buttonIconSize"
|
|
82
64
|
(clicked)="download()"
|
|
83
65
|
[isLoading]="isDownloading"
|
|
84
|
-
[classes]="
|
|
85
|
-
'secondary rounded-lg shrink-0 opacity-30 hover:opacity-100 transition-opacity duration-200 ' +
|
|
86
|
-
buttonSizeClass
|
|
87
|
-
"
|
|
66
|
+
[classes]="controlButtonClasses"
|
|
88
67
|
/>
|
|
89
68
|
}
|
|
90
69
|
|
|
91
70
|
@if (isControlVisible(showFullscreen)) {
|
|
92
71
|
<JButton
|
|
93
72
|
jTooltip="Pantalla completa"
|
|
94
|
-
[icon]="
|
|
95
|
-
isFullscreen
|
|
96
|
-
? iconsService.icons.exitFullscreen
|
|
97
|
-
: iconsService.icons.fullscreen
|
|
98
|
-
"
|
|
73
|
+
[icon]="fullscreenIcon"
|
|
99
74
|
[iconSize]="buttonIconSize"
|
|
100
75
|
(clicked)="toggleFullscreen(container)"
|
|
101
|
-
[classes]="
|
|
102
|
-
'secondary rounded-lg shrink-0 opacity-30 hover:opacity-100 transition-opacity duration-200 ' +
|
|
103
|
-
buttonSizeClass
|
|
104
|
-
"
|
|
76
|
+
[classes]="controlButtonClasses"
|
|
105
77
|
/>
|
|
106
78
|
}
|
|
107
79
|
</div>
|
|
108
80
|
}
|
|
109
81
|
|
|
110
82
|
<div
|
|
111
|
-
class="flex
|
|
112
|
-
[
|
|
83
|
+
class="flex h-full w-full select-none items-center justify-center"
|
|
84
|
+
[ngClass]="{ 'bg-background dark:bg-dark-background': isFullscreen }"
|
|
113
85
|
>
|
|
114
|
-
<div class="relative
|
|
86
|
+
<div class="relative h-full w-full overflow-hidden">
|
|
115
87
|
@if (hasImage && !hasError) {
|
|
116
88
|
<img
|
|
89
|
+
class="pointer-events-auto h-full w-full select-none [-webkit-user-drag:none]"
|
|
117
90
|
[src]="src"
|
|
118
91
|
[alt]="alt"
|
|
119
|
-
(load)="
|
|
120
|
-
(error)="
|
|
92
|
+
(load)="onImageLoad()"
|
|
93
|
+
(error)="onImageError()"
|
|
121
94
|
(mousedown)="startDrag($event)"
|
|
122
|
-
[style.transform]="
|
|
123
|
-
|
|
124
|
-
zoom +
|
|
125
|
-
') rotate(' +
|
|
126
|
-
rotate +
|
|
127
|
-
'deg) translate(' +
|
|
128
|
-
posX +
|
|
129
|
-
'px,' +
|
|
130
|
-
posY +
|
|
131
|
-
'px)'
|
|
132
|
-
"
|
|
133
|
-
[style.objectFit]="objectFit"
|
|
95
|
+
[style.transform]="imageTransform"
|
|
96
|
+
[style.object-fit]="objectFit"
|
|
134
97
|
[style.cursor]="zoom > 1 ? 'grab' : 'default'"
|
|
135
|
-
[
|
|
136
|
-
[class.transition-transform]="animateTransform"
|
|
137
|
-
[class.duration-200]="animateTransform"
|
|
138
|
-
[class.ease-in-out]="animateTransform"
|
|
139
|
-
class="w-full h-full object-contain pointer-events-auto select-none"
|
|
98
|
+
[ngClass]="imageClasses"
|
|
140
99
|
/>
|
|
141
100
|
}
|
|
142
101
|
|
|
143
102
|
@if (hasImage && loading && !hasError) {
|
|
144
103
|
<div
|
|
145
|
-
class="absolute flex flex-col
|
|
104
|
+
class="j-image-viewer__overlay--loading absolute inset-0 flex flex-col items-center justify-center gap-3"
|
|
146
105
|
>
|
|
147
|
-
<
|
|
148
|
-
[
|
|
149
|
-
size="30"
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
106
|
+
<JIcon
|
|
107
|
+
[icon]="Icons.Loader2"
|
|
108
|
+
[size]="30"
|
|
109
|
+
iconClass="animate-spin text-primary dark:text-dark-primary"
|
|
110
|
+
[ariaHidden]="true"
|
|
111
|
+
/>
|
|
112
|
+
<span
|
|
113
|
+
class="text-sm leading-tight text-muted-foreground dark:text-dark-muted-foreground"
|
|
114
|
+
>
|
|
115
|
+
Cargando imagen...
|
|
116
|
+
</span>
|
|
153
117
|
</div>
|
|
154
118
|
}
|
|
155
119
|
|
|
156
120
|
@if (!hasImage) {
|
|
157
|
-
<div
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
class="text-gray-400"
|
|
121
|
+
<div class="absolute inset-0 flex flex-col items-center justify-center gap-3">
|
|
122
|
+
<JIcon
|
|
123
|
+
[icon]="Icons.ImageOff"
|
|
124
|
+
[size]="30"
|
|
125
|
+
iconClass="text-muted-foreground"
|
|
126
|
+
[ariaHidden]="true"
|
|
164
127
|
/>
|
|
165
|
-
<span
|
|
128
|
+
<span
|
|
129
|
+
class="text-sm leading-tight text-muted-foreground dark:text-dark-muted-foreground"
|
|
130
|
+
>
|
|
166
131
|
{{ emptyMessage }}
|
|
167
132
|
</span>
|
|
168
133
|
</div>
|
|
169
134
|
}
|
|
170
135
|
|
|
171
136
|
@if (hasImage && hasError) {
|
|
172
|
-
<div
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
class="text-red-500"
|
|
137
|
+
<div class="absolute inset-0 flex flex-col items-center justify-center gap-3">
|
|
138
|
+
<JIcon
|
|
139
|
+
[icon]="Icons.ImageOff"
|
|
140
|
+
[size]="30"
|
|
141
|
+
iconClass="text-destructive"
|
|
142
|
+
[ariaHidden]="true"
|
|
179
143
|
/>
|
|
180
|
-
<span class="text-sm text-
|
|
144
|
+
<span class="text-sm leading-tight text-destructive">
|
|
145
|
+
No se pudo cargar la imagen
|
|
146
|
+
</span>
|
|
181
147
|
</div>
|
|
182
148
|
}
|
|
183
149
|
</div>
|