@golstats/gsc-reports 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/README.md +2 -0
  2. package/dist/FilterConditions-55d68355-C5NIJbY6-xW04mYhu-DRN4eEO4.js +191 -0
  3. package/dist/FilterField-59a73e38-DO8nYLqs-Da7H_Fvj-ZuLwDGOM.js +21 -0
  4. package/dist/FilterSubcategories-a9b32cc9-DlkHni1L-BXid_sIn-BvoU3OqZ.js +42 -0
  5. package/dist/css/fonts.css +83 -0
  6. package/dist/fonts/BebasNeue-Bold.otf +0 -0
  7. package/dist/fonts/BebasNeue-Bold.ttf +0 -0
  8. package/dist/fonts/BebasNeue-Bold.woff2 +0 -0
  9. package/dist/fonts/BebasNeue-Book.otf +0 -0
  10. package/dist/fonts/BebasNeue-Book.ttf +0 -0
  11. package/dist/fonts/BebasNeue-Book.woff2 +0 -0
  12. package/dist/fonts/BebasNeue-Light.otf +0 -0
  13. package/dist/fonts/BebasNeue-Light.ttf +0 -0
  14. package/dist/fonts/BebasNeue-Light.woff2 +0 -0
  15. package/dist/fonts/BebasNeue-Regular.otf +0 -0
  16. package/dist/fonts/BebasNeue-Regular.ttf +0 -0
  17. package/dist/fonts/BebasNeue-Regular.woff2 +0 -0
  18. package/dist/fonts/BebasNeue-Thin.otf +0 -0
  19. package/dist/fonts/BebasNeue-Thin.ttf +0 -0
  20. package/dist/fonts/BebasNeue-Thin.woff2 +0 -0
  21. package/dist/fonts/Montserrat-Black.otf +0 -0
  22. package/dist/fonts/Montserrat-BlackItalic.otf +0 -0
  23. package/dist/fonts/Montserrat-Bold.otf +0 -0
  24. package/dist/fonts/Montserrat-BoldItalic.otf +0 -0
  25. package/dist/fonts/Montserrat-ExtraBold.otf +0 -0
  26. package/dist/fonts/Montserrat-ExtraBoldItalic.otf +0 -0
  27. package/dist/fonts/Montserrat-ExtraLight.otf +0 -0
  28. package/dist/fonts/Montserrat-ExtraLightItalic.otf +0 -0
  29. package/dist/fonts/Montserrat-Italic.otf +0 -0
  30. package/dist/fonts/Montserrat-Light.otf +0 -0
  31. package/dist/fonts/Montserrat-LightItalic.otf +0 -0
  32. package/dist/fonts/Montserrat-Medium.otf +0 -0
  33. package/dist/fonts/Montserrat-MediumItalic.otf +0 -0
  34. package/dist/fonts/Montserrat-Regular.otf +0 -0
  35. package/dist/fonts/Montserrat-SemiBold.otf +0 -0
  36. package/dist/fonts/Montserrat-SemiBoldItalic.otf +0 -0
  37. package/dist/fonts/Montserrat-Thin.otf +0 -0
  38. package/dist/fonts/Montserrat-ThinItalic.otf +0 -0
  39. package/dist/fonts/Oswald-Bold.ttf +0 -0
  40. package/dist/fonts/Oswald-ExtraLight.ttf +0 -0
  41. package/dist/fonts/Oswald-Light.ttf +0 -0
  42. package/dist/fonts/Oswald-Medium.ttf +0 -0
  43. package/dist/fonts/Oswald-Regular.ttf +0 -0
  44. package/dist/fonts/Oswald-SemiBold.ttf +0 -0
  45. package/dist/fonts/Poppins-Black.otf +0 -0
  46. package/dist/fonts/Poppins-BlackItalic.otf +0 -0
  47. package/dist/fonts/Poppins-Bold.otf +0 -0
  48. package/dist/fonts/Poppins-BoldItalic.otf +0 -0
  49. package/dist/fonts/Poppins-ExtraBold.otf +0 -0
  50. package/dist/fonts/Poppins-ExtraBoldItalic.otf +0 -0
  51. package/dist/fonts/Poppins-ExtraLight.otf +0 -0
  52. package/dist/fonts/Poppins-ExtraLightItalic.otf +0 -0
  53. package/dist/fonts/Poppins-Italic.otf +0 -0
  54. package/dist/fonts/Poppins-Light.otf +0 -0
  55. package/dist/fonts/Poppins-LightItalic.otf +0 -0
  56. package/dist/fonts/Poppins-Medium.otf +0 -0
  57. package/dist/fonts/Poppins-MediumItalic.otf +0 -0
  58. package/dist/fonts/Poppins-Regular.otf +0 -0
  59. package/dist/fonts/Poppins-SemiBold.otf +0 -0
  60. package/dist/fonts/Poppins-SemiBoldItalic.otf +0 -0
  61. package/dist/fonts/Poppins-Thin.otf +0 -0
  62. package/dist/fonts/Poppins-ThinItalic.otf +0 -0
  63. package/dist/gsc-reports.css +1 -0
  64. package/dist/gsc-reports.es.js +4 -0
  65. package/dist/gsc-reports.umd.js +4079 -0
  66. package/dist/icons/icn-close.svg +5 -0
  67. package/dist/icons/icn-delete-delete.svg +3 -0
  68. package/dist/icons/icn-delete.svg +3 -0
  69. package/dist/icons/icn-download.svg +4 -0
  70. package/dist/icons/icn-duplicate-white.svg +11 -0
  71. package/dist/icons/icn-duplicate.svg +11 -0
  72. package/dist/icons/icn-edit.svg +11 -0
  73. package/dist/icons/icn-editar-withe.svg +3 -0
  74. package/dist/icons/icn-rename-white.svg +3 -0
  75. package/dist/icons/icn-rename.svg +3 -0
  76. package/dist/icons/icn-report-white.svg +11 -0
  77. package/dist/icons/icn-report.svg +11 -0
  78. package/dist/images/background-postmatch-template-01.jpg +0 -0
  79. package/dist/images/background-postmatch-template-02.jpg +0 -0
  80. package/dist/images/canchaRPH.svg +30 -0
  81. package/dist/index-B1R4W2EC.js +128151 -0
  82. package/dist/reports/background-postmatch-template-01@2x.jpg +0 -0
  83. package/dist/reports/background-postmatch-template-02@2x.jpg +0 -0
  84. package/dist/reports/thumbnail-portada-01@2x.png +0 -0
  85. package/dist/reports/thumbnail-portada-02@2x.png +0 -0
  86. package/dist/reports/thumbnail-portada-03@2x.png +0 -0
  87. package/dist/reports/thumbnail-portada-04@2x.png +0 -0
  88. package/dist/reports/thumbnail-portada-prmatch-01@2x.png +0 -0
  89. package/dist/reports/thumbnail-portada-prmatch-02@2x.png +0 -0
  90. package/dist/reports/thumbnail-portada-prmatch-03@2x.png +0 -0
  91. package/dist/reports/thumbnail-portada-prmatch-04@2x.png +0 -0
  92. package/dist/thumb1.png +0 -0
  93. package/dist/thumbnail-portada-01.jpg +0 -0
  94. package/dist/thumbnail-portada-02.jpg +0 -0
  95. package/dist/thumbnail-portada-03.jpg +0 -0
  96. package/dist/thumbnail-portada-04.jpg +0 -0
  97. package/dist/thumbnail-portada-prmatch-01.jpg +0 -0
  98. package/dist/thumbnail-portada-prmatch-02.jpg +0 -0
  99. package/dist/thumbnail-portada-prmatch-03.jpg +0 -0
  100. package/dist/thumbnail-portada-prmatch-04.jpg +0 -0
  101. package/package.json +70 -0
  102. package/src/App.vue +28 -0
  103. package/src/components/ReportsSection.vue +764 -0
  104. package/src/components/TemplatesSection.vue +911 -0
  105. package/src/components/elementsTemplates/ModalCreateTemplate.vue +407 -0
  106. package/src/components/elementsTemplates/ModalDeleteReport.vue +231 -0
  107. package/src/components/elementsTemplates/ModalDeleteTemplate.vue +234 -0
  108. package/src/components/elementsTemplates/ModalGenerarReporte.vue +1151 -0
  109. package/src/components/elementsTemplates/ModalRenameReporte.vue +315 -0
  110. package/src/components/elementsTemplates/ModalRenameTemplate.vue +320 -0
  111. package/src/components/elementsTemplates/ModalSoloEscritorio.vue +83 -0
  112. package/src/components/elementsTemplates/ModalduplicateTemplate.vue +283 -0
  113. package/src/components/elementsTemplates/ReportItem.vue +458 -0
  114. package/src/components/elementsTemplates/TemplateItem.vue +360 -0
  115. package/src/components/elementsTemplates/TooltipReportOptions.vue +85 -0
  116. package/src/components/elementsTemplates/TooltipTemplateOptions.vue +141 -0
  117. package/src/components/filters.vue +935 -0
  118. package/src/components/gsc-reports.vue +452 -0
  119. package/src/components/template-report-maker/CoverPage.vue +636 -0
  120. package/src/components/template-report-maker/CoverSelector.vue +165 -0
  121. package/src/components/template-report-maker/ReportAndTemplateMaker.vue +675 -0
  122. package/src/components/template-report-maker/ReportView.vue +66 -0
  123. package/src/components/template-report-maker/TemplateReportPage.vue +398 -0
  124. package/src/components/thumbnails-reports/AnalisisPostMatchType1.vue +741 -0
  125. package/src/components/thumbnails-reports/AnalisisPostMatchType2.vue +743 -0
  126. package/src/components/thumbnails-reports/AnalisisPostMatchType3.vue +463 -0
  127. package/src/components/thumbnails-reports/AnalisisPostMatchType4.vue +462 -0
  128. package/src/components/thumbnails-reports/AnalisisPrematchType1.vue +164 -0
  129. package/src/components/thumbnails-reports/AnalisisPrematchType2.vue +163 -0
  130. package/src/components/thumbnails-reports/AnalisisPrematchType3.vue +173 -0
  131. package/src/components/thumbnails-reports/AnalisisPrematchType4.vue +173 -0
  132. package/src/index.js +4 -0
  133. package/src/main.js +4 -0
  134. package/src/types.d.ts +45 -0
  135. package/src/utils/dateUtils.js +52 -0
@@ -0,0 +1,360 @@
1
+ <template>
2
+ <div class="template-card postpartido" style="position: relative">
3
+ <div class="three-dots" @click.stop="showTooltip = !showTooltip">
4
+ <span></span><span></span><span></span>
5
+ </div>
6
+ <div v-if="template.pages && template.pages[0]" class="template-img-placeholder" style="position: relative">
7
+ <img
8
+ v-if="template.template_type === 1 && template.pages[0].type == 1"
9
+ src="/thumbnail-portada-prmatch-01.jpg"
10
+ alt="Template Prematch Type 1"
11
+ class="template-img"
12
+ />
13
+ <img
14
+ v-else-if="template.template_type === 2 && template.pages[0].type == 1"
15
+ src="/thumbnail-portada-01.jpg"
16
+ alt="Template Postmatch Type 1"
17
+ class="template-img"
18
+ />
19
+ <img
20
+ v-else-if="template.template_type === 1 && template.pages[0].type == 2"
21
+ src="/thumbnail-portada-prmatch-02.jpg"
22
+ alt="Template Prematch Type 2"
23
+ class="template-img"
24
+ />
25
+ <img
26
+ v-else-if="template.template_type === 2 && template.pages[0].type == 2"
27
+ src="/thumbnail-portada-02.jpg"
28
+ alt="Template Postmatch Type 2"
29
+ class="template-img"
30
+ />
31
+ <img
32
+ v-else-if="template.template_type === 1 && template.pages[0].type == 3"
33
+ src="/thumbnail-portada-prmatch-03.jpg"
34
+ alt="Template Prematch Type 3"
35
+ class="template-img"
36
+ />
37
+ <img
38
+ v-else-if="template.template_type === 2 && template.pages[0].type == 3"
39
+ src="/thumbnail-portada-03.jpg"
40
+ alt="Template Postmatch Type 3"
41
+ class="template-img"
42
+ />
43
+ <img
44
+ v-else-if="template.template_type === 1 && template.pages[0].type == 4"
45
+ src="/thumbnail-portada-prmatch-04.jpg"
46
+ alt="Template Prematch Type 4"
47
+ class="template-img"
48
+ />
49
+ <img
50
+ v-else-if="template.template_type === 2 && template.pages[0].type == 4"
51
+ src="/thumbnail-portada-04.jpg"
52
+ alt="Template Postmatch Type 4"
53
+ class="template-img"
54
+ />
55
+ <img v-else src="/thumb1.png" alt="Template Default" class="template-img" />
56
+ </div>
57
+ <div class="inner-card-postpartido">
58
+ <div class="postpartido-footer">
59
+ <div class="postpartido-version">{{ template.name }}</div>
60
+ <div class="postpartido-status">
61
+ <span class="tipo-label">Tipo:</span>
62
+ <span class="tipo-value"
63
+ >&nbsp;{{ template.template_type == 1 ? 'Prepartido' : 'Postpartido' }}</span
64
+ >
65
+ </div>
66
+ <button class="postpartido-btn" @click="emit('generar-reporte')">Generar reporte</button>
67
+ </div>
68
+ </div>
69
+ <TooltipTemplateOptions
70
+ v-if="showTooltip"
71
+ @click.self="showTooltip = false"
72
+ @mouseleave="showTooltip = false"
73
+ @generar-reporte="onGenerarReporte"
74
+ @renombrar="onRenombrar"
75
+ @editar="onEditar"
76
+ @duplicar="onDuplicar"
77
+ @eliminar="onEliminar"
78
+ @toggle-autogen="onToggleAutogen"
79
+ />
80
+ <div v-if="showTooltip" class="tooltip-overlay" @click="showTooltip = false"></div>
81
+ </div>
82
+ </template>
83
+
84
+ <script setup>
85
+ import { ref } from 'vue'
86
+ import TooltipTemplateOptions from './TooltipTemplateOptions.vue'
87
+
88
+ // Definir la prop template como objeto
89
+ const props = defineProps({
90
+ template: {
91
+ type: Object,
92
+ required: true,
93
+ },
94
+ })
95
+
96
+ const emit = defineEmits(['generar-reporte', 'renombrar', 'duplicar', 'eliminar', 'edit-template'])
97
+ const showTooltip = ref(false)
98
+
99
+ function onGenerarReporte() {
100
+ console.log('generar-reporte')
101
+ showTooltip.value = false
102
+ emit('generar-reporte')
103
+ }
104
+ function onRenombrar() {
105
+ console.log('renombrar')
106
+ showTooltip.value = false
107
+ const nombre = props.template.name || ''
108
+ emit('renombrar', nombre)
109
+ }
110
+ function onEditar() {
111
+ console.log('editar')
112
+ showTooltip.value = false
113
+ emit('edit-template', props.template)
114
+ }
115
+ function onDuplicar() {
116
+ console.log('duplicar')
117
+ showTooltip.value = false
118
+ const nombre = props.template.name || ''
119
+ emit('duplicar', nombre)
120
+ }
121
+ function onEliminar() {
122
+ console.log('eliminar')
123
+ showTooltip.value = false
124
+ emit('eliminar', props.template)
125
+ }
126
+ function onToggleAutogen(val) {
127
+ console.log('toggle-autogen', val)
128
+ }
129
+ </script>
130
+
131
+ <style scoped>
132
+ .template-card.postpartido {
133
+ border-radius: 5.7px;
134
+ background: #1a2a3a;
135
+ width: 340px;
136
+ height: 388px;
137
+ display: flex;
138
+ flex-direction: column;
139
+ align-items: center;
140
+ justify-content: flex-start;
141
+ position: relative;
142
+ overflow: hidden;
143
+ box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.25);
144
+ padding: 0;
145
+ }
146
+
147
+ .template-img {
148
+ width: 312px;
149
+ height: 242px;
150
+ object-fit: cover;
151
+ border-radius: 5.7px 5.7px 0 0;
152
+ display: block;
153
+ margin: 0 auto;
154
+ }
155
+
156
+ .template-img-placeholder {
157
+ width: 312px;
158
+ height: 242px;
159
+ margin: 0 auto;
160
+ margin-top: 14px;
161
+ border-radius: 5.7px 5.7px 0 0;
162
+ }
163
+
164
+ .inner-card-postpartido {
165
+ background: linear-gradient(180deg, #1a2a3a 60%, #193346 100%);
166
+ border-radius: 0 0 12px 12px;
167
+ width: 100%;
168
+ height: 230px;
169
+ display: flex;
170
+ flex-direction: column;
171
+ align-items: center;
172
+ justify-content: space-between;
173
+ padding: 12px 0 0 0;
174
+ position: relative;
175
+ flex: 1;
176
+ }
177
+
178
+ .logo-golstats {
179
+ width: 90px;
180
+ margin-bottom: 6px;
181
+ }
182
+
183
+ .postpartido-header {
184
+ text-align: center;
185
+ color: #fff;
186
+ margin-bottom: 8px;
187
+ }
188
+
189
+ .postpartido-title {
190
+ font-family: Poppins-Bold;
191
+ font-size: 20px;
192
+ margin-bottom: 2px;
193
+ }
194
+
195
+ .postpartido-title .bold {
196
+ font-weight: bold;
197
+ }
198
+
199
+ .postpartido-subtitle {
200
+ font-size: 12px;
201
+ color: #c0cbe0;
202
+ margin-top: 8px;
203
+ }
204
+
205
+ .postpartido-score-row {
206
+ display: flex;
207
+ align-items: center;
208
+ justify-content: center;
209
+ margin: 12px 0 0 0;
210
+ }
211
+
212
+ .postpartido-shield {
213
+ width: 60px;
214
+ height: 70px;
215
+ background: rgba(0, 0, 0, 0.15);
216
+ border-radius: 10px;
217
+ margin: 0 18px;
218
+ }
219
+
220
+ .postpartido-score {
221
+ font-size: 64px;
222
+ font-family: Poppins-Bold;
223
+ color: #fff;
224
+ margin: 0 12px;
225
+ min-width: 48px;
226
+ text-align: center;
227
+ }
228
+
229
+ .postpartido-names-row {
230
+ display: flex;
231
+ justify-content: space-between;
232
+ width: 80%;
233
+ margin: 8px auto 0 auto;
234
+ }
235
+
236
+ .postpartido-name {
237
+ font-size: 13px;
238
+ color: #fff;
239
+ opacity: 0.8;
240
+ }
241
+
242
+ .postpartido-footer {
243
+ width: 100%;
244
+ padding: 0px 18px 0 50px;
245
+ display: flex;
246
+ flex-direction: column;
247
+ align-items: flex-start;
248
+ }
249
+
250
+ .postpartido-version {
251
+ font-family: Poppins-Medium;
252
+ font-size: 14px;
253
+ font-weight: 500;
254
+ font-stretch: normal;
255
+ font-style: normal;
256
+ line-height: normal;
257
+ letter-spacing: normal;
258
+ text-align: left;
259
+ color: #fff;
260
+ margin-bottom: 2px;
261
+ }
262
+
263
+ .postpartido-status {
264
+ font-family: Poppins-SemiBold;
265
+ font-size: 14px;
266
+ font-weight: normal;
267
+ font-stretch: normal;
268
+ font-style: normal;
269
+ opacity: 0.7;
270
+ line-height: normal;
271
+ letter-spacing: normal;
272
+ text-align: left;
273
+ margin-top: 11px;
274
+ color: #fff;
275
+ }
276
+
277
+ .tipo-label {
278
+ font-family: Poppins-SemiBold;
279
+ font-size: 14px;
280
+ font-weight: normal;
281
+ font-stretch: normal;
282
+ font-style: normal;
283
+ line-height: normal;
284
+ letter-spacing: normal;
285
+ text-align: left;
286
+ color: #fff;
287
+ }
288
+
289
+ .tipo-value {
290
+ font-family: Poppins-Regular;
291
+ font-size: 14px;
292
+ font-weight: normal;
293
+ font-stretch: normal;
294
+ font-style: normal;
295
+ line-height: normal;
296
+ letter-spacing: normal;
297
+ text-align: left;
298
+ color: #fff;
299
+ }
300
+
301
+ .postpartido-btn {
302
+ border-radius: 79.2px;
303
+ -webkit-backdrop-filter: blur(19.8px);
304
+ backdrop-filter: blur(19.8px);
305
+ border: solid 1px #cbee6b;
306
+ background-color: rgba(255, 255, 255, 0.06);
307
+ width: calc(100% - 32px);
308
+ height: 28px;
309
+ color: #fff;
310
+ font-family: Poppins-Medium;
311
+ font-size: 14.9px;
312
+ font-weight: 500;
313
+ font-stretch: normal;
314
+ font-style: normal;
315
+ line-height: 1.2;
316
+ letter-spacing: -0.45px;
317
+ text-align: center;
318
+ cursor: pointer;
319
+ margin-top: 20px;
320
+ transition: opacity 0.2s;
321
+ }
322
+
323
+ .postpartido-btn:hover {
324
+ opacity: 0.8;
325
+ }
326
+
327
+ .three-dots {
328
+ position: absolute;
329
+ top: 22px;
330
+ right: 23px;
331
+ width: 28px;
332
+ height: 28px;
333
+ display: flex;
334
+ align-items: center;
335
+ justify-content: center;
336
+ border-radius: 50%;
337
+ cursor: pointer;
338
+ z-index: 3100;
339
+ transition: background 0.2s;
340
+ }
341
+ .three-dots span {
342
+ display: block;
343
+ width: 3px;
344
+ height: 3px;
345
+ background: #fff;
346
+ border-radius: 50%;
347
+ margin: 0 1.5px;
348
+ }
349
+ .three-dots span + span {
350
+ margin-left: 3px;
351
+ }
352
+ .tooltip-overlay {
353
+ position: fixed;
354
+ top: 0;
355
+ left: 0;
356
+ width: 100vw;
357
+ height: 100vh;
358
+ z-index: 2999;
359
+ }
360
+ </style>
@@ -0,0 +1,85 @@
1
+ <template>
2
+ <div class="tooltip-report-options">
3
+ <ul>
4
+ <li class="option" @click="$emit('renombrar')">
5
+ <img src="/icons/icn-rename.svg" alt="Renombrar reporte" class="icon" />
6
+ Renombrar reporte
7
+ </li>
8
+ <li class="option" @click="$emit('descargar')">
9
+ <img src="/icons/icn-download.svg" alt="Descargar reporte" class="icon" />
10
+ Descargar reporte
11
+ </li>
12
+ <li class="option" @click="$emit('eliminar')">
13
+ <img src="/icons/icn-delete.svg" alt="Eliminar reporte" class="icon" />
14
+ Eliminar reporte
15
+ </li>
16
+ </ul>
17
+ </div>
18
+ </template>
19
+
20
+ <script setup>
21
+ const emit = defineEmits([
22
+ 'ver-reporte',
23
+ 'renombrar',
24
+ 'editar',
25
+ 'duplicar',
26
+ 'descargar',
27
+ 'eliminar',
28
+ ])
29
+ </script>
30
+
31
+ <style scoped>
32
+ .tooltip-report-options {
33
+ position: absolute;
34
+ top: 44px;
35
+ right: 20px;
36
+ width: 215px;
37
+ height: 115px;
38
+ background: #2e3b46;
39
+ border-radius: 10px;
40
+ box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.25);
41
+ padding: 8px 0 0 0;
42
+ z-index: 3000;
43
+ font-family: Poppins-Regular;
44
+ }
45
+
46
+ ul {
47
+ list-style: none;
48
+ margin: 0;
49
+ padding: 0;
50
+ }
51
+
52
+ .option {
53
+ display: flex;
54
+ align-items: center;
55
+ color: #fff;
56
+ font-family: Poppins-Regular;
57
+ font-size: 13px;
58
+ font-weight: normal;
59
+ font-stretch: normal;
60
+ font-style: normal;
61
+ line-height: 1.5;
62
+ letter-spacing: normal;
63
+ text-align: left;
64
+ padding: 8px 16px 8px 14px;
65
+ cursor: pointer;
66
+ transition:
67
+ background 0.2s,
68
+ color 0.2s;
69
+ gap: 14px;
70
+ }
71
+
72
+ .option:hover {
73
+ background: #434f59;
74
+ color: #cbee6b;
75
+ }
76
+
77
+ .icon {
78
+ width: 17px;
79
+ height: 17px;
80
+ display: inline-block;
81
+ background-size: contain;
82
+ background-repeat: no-repeat;
83
+ object-fit: contain;
84
+ }
85
+ </style>
@@ -0,0 +1,141 @@
1
+ <template>
2
+ <div class="tooltip-template-options">
3
+ <ul>
4
+ <li class="option" @click="$emit('generar-reporte')">
5
+ <img src="/icons/icn-report.svg" alt="Generar reporte" class="icon" />
6
+ Generar reporte
7
+ </li>
8
+ <li class="option" @click="$emit('renombrar')">
9
+ <img src="/icons/icn-rename.svg" alt="Renombrar template" class="icon" />
10
+ Renombrar template
11
+ </li>
12
+ <li class="option" @click="$emit('editar')">
13
+ <img src="/icons/icn-edit.svg" alt="Editar template" class="icon" />
14
+ Editar template
15
+ </li>
16
+ <li class="option" @click="$emit('duplicar')">
17
+ <img src="/icons/icn-duplicate.svg" alt="Duplicar template" class="icon" />
18
+ Duplicar template
19
+ </li>
20
+ <li class="option" @click="$emit('eliminar')">
21
+ <img src="/icons/icn-delete.svg" alt="Eliminar template" class="icon" />
22
+ Eliminar template
23
+ </li>
24
+ </ul>
25
+ </div>
26
+ </template>
27
+
28
+ <script setup>
29
+ const emit = defineEmits(['generar-reporte', 'renombrar', 'editar', 'duplicar', 'eliminar'])
30
+ </script>
31
+
32
+ <style scoped>
33
+ .tooltip-template-options {
34
+ position: absolute;
35
+ top: 48px;
36
+ right: 20px;
37
+ width: 215px;
38
+ height: 185px;
39
+ background: #2e3b46;
40
+ border-radius: 10px;
41
+ box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.25);
42
+ padding: 8px 0 0 0;
43
+ z-index: 3000;
44
+ font-family: Poppins-Regular;
45
+ }
46
+ ul {
47
+ list-style: none;
48
+ margin: 0;
49
+ padding: 0;
50
+ }
51
+ .option {
52
+ display: flex;
53
+ align-items: center;
54
+ color: #fff;
55
+ font-family: Poppins-Regular;
56
+ font-size: 13px;
57
+ font-weight: normal;
58
+ font-stretch: normal;
59
+ font-style: normal;
60
+ line-height: 1.5;
61
+ letter-spacing: normal;
62
+ text-align: left;
63
+ padding: 8px 16px 8px 14px;
64
+ cursor: pointer;
65
+ transition:
66
+ background 0.2s,
67
+ color 0.2s;
68
+ gap: 14px;
69
+ }
70
+ .option:hover {
71
+ background: #434f59;
72
+ color: #cbee6b;
73
+ }
74
+ .icon {
75
+ width: 17px;
76
+ height: 17px;
77
+ display: inline-block;
78
+ background-size: contain;
79
+ background-repeat: no-repeat;
80
+ object-fit: contain;
81
+ }
82
+ .icon-doc {
83
+ background-image: url('https://img.icons8.com/ios-filled/24/cbee6b/document--v1.png');
84
+ }
85
+ .icon-rename {
86
+ background-image: url('https://img.icons8.com/ios-filled/24/cbee6b/replace.png');
87
+ }
88
+
89
+ .divider {
90
+ width: 100%;
91
+ height: 1px;
92
+ background: #3d4a54;
93
+ margin: 6px 0 0 0;
94
+ }
95
+ .autogen-row {
96
+ display: flex;
97
+ align-items: center;
98
+ gap: 10px;
99
+ margin-top: 7px;
100
+ padding: 10px 14px 12px 14px;
101
+ }
102
+ .switch {
103
+ display: flex;
104
+ align-items: center;
105
+ cursor: pointer;
106
+ }
107
+ .switch-track {
108
+ width: 28px;
109
+ height: 16px;
110
+ background: transparent;
111
+ border-radius: 10px;
112
+ position: relative;
113
+ transition: background 0.2s;
114
+ border: 1px solid #fff;
115
+ }
116
+ .switch-thumb {
117
+ width: 12px;
118
+ height: 12px;
119
+ background: #cbee6b;
120
+ border-radius: 50%;
121
+ position: absolute;
122
+ top: 2px;
123
+ left: 1px;
124
+ transition: left 0.2s;
125
+ box-shadow: 0 1px 4px 0 rgba(203, 238, 107, 0.15);
126
+ }
127
+ .switch-thumb.on {
128
+ left: 14px;
129
+ }
130
+ .autogen-label {
131
+ color: #fff;
132
+ font-family: Poppins-Regular;
133
+ font-size: 13px;
134
+ font-weight: normal;
135
+ font-stretch: normal;
136
+ font-style: normal;
137
+ line-height: 1.5;
138
+ letter-spacing: normal;
139
+ text-align: left;
140
+ }
141
+ </style>