@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,283 @@
1
+ <template>
2
+ <div class="modal-overlay" @click.self="$emit('close')">
3
+ <div class="modal-content">
4
+ <button class="close-btn" @click="$emit('close')">
5
+ <img src="/icons/icn-close.svg" alt="Cerrar" />
6
+ </button>
7
+ <div class="modal-header">
8
+ <img src="/icons/icn-duplicate-white.svg" class="icon-title" alt="icon" />
9
+ <span class="modal-title">Duplicar template</span>
10
+ </div>
11
+ <div class="header-separator"></div>
12
+ <div class="modal-body">
13
+ <div class="modal-label">Nombre:</div>
14
+ <input
15
+ class="template-name-input"
16
+ type="text"
17
+ v-model="duplicateName"
18
+ :placeholder="initialName"
19
+ maxlength="40"
20
+ autocomplete="off"
21
+ />
22
+ </div>
23
+ <div class="header-separator"></div>
24
+ <div class="modal-footer">
25
+ <button class="cancel-btn" @click="$emit('close')">Cancelar</button>
26
+ <button
27
+ class="next-btn"
28
+ :disabled="duplicateName.trim().length < 3 || isLoading"
29
+ @click="acceptDuplicate"
30
+ >
31
+ {{ isLoading ? 'Duplicando...' : 'Aceptar' }}
32
+ </button>
33
+ </div>
34
+ </div>
35
+ </div>
36
+ </template>
37
+
38
+ <script setup>
39
+ import { ref, watch } from 'vue'
40
+ import axios from 'axios'
41
+
42
+ const props = defineProps({
43
+ initialName: {
44
+ type: String,
45
+ required: true,
46
+ },
47
+ token: {
48
+ type: String,
49
+ required: true,
50
+ },
51
+ templateId: {
52
+ type: String,
53
+ required: true,
54
+ },
55
+ })
56
+
57
+ const emit = defineEmits(['close', 'duplicate', 'template-duplicated'])
58
+ const duplicateName = ref(props.initialName + ' copy')
59
+ const isLoading = ref(false)
60
+
61
+ watch(
62
+ () => props.initialName,
63
+ (val) => {
64
+ duplicateName.value = val + ' copy'
65
+ },
66
+ )
67
+
68
+ async function acceptDuplicate() {
69
+ if (duplicateName.value.trim().length >= 3 && !isLoading.value) {
70
+ isLoading.value = true
71
+
72
+ try {
73
+ const response = await axios.post(
74
+ `https://m9qip57rsh.execute-api.us-east-2.amazonaws.com/prod/templates/${props.templateId}/duplicate`,
75
+ { name: duplicateName.value.trim() }, // Enviar el nombre en el payload
76
+ {
77
+ headers: {
78
+ Authorization: `${props.token}`,
79
+ 'Content-Type': 'application/json',
80
+ },
81
+ },
82
+ )
83
+
84
+ // Emitir el evento específico de duplicación exitosa
85
+ emit('template-duplicated', {
86
+ originalTemplateId: props.templateId,
87
+ newTemplateName: duplicateName.value.trim(),
88
+ responseData: response.data,
89
+ })
90
+ emit('close')
91
+ } catch (error) {
92
+ console.error('Error al duplicar template:', error)
93
+ // Aquí podrías mostrar un mensaje de error al usuario
94
+ alert('Error al duplicar el template. Por favor, intenta de nuevo.')
95
+ } finally {
96
+ isLoading.value = false
97
+ }
98
+ }
99
+ }
100
+ </script>
101
+
102
+ <style scoped>
103
+ .modal-overlay {
104
+ position: fixed;
105
+ top: 0;
106
+ left: 0;
107
+ width: 100vw;
108
+ height: 100vh;
109
+ background: rgba(0, 0, 0, 0.45);
110
+ display: flex;
111
+ align-items: center;
112
+ justify-content: center;
113
+ z-index: 3200;
114
+ }
115
+ .modal-content {
116
+ width: 375px;
117
+ height: 220px;
118
+ background: #2e3b46;
119
+ border-radius: 10px;
120
+ box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.18);
121
+ padding: 0;
122
+ position: relative;
123
+ display: flex;
124
+ flex-direction: column;
125
+ font-family: 'Poppins-Regular', 'Montserrat', sans-serif;
126
+ }
127
+ .close-btn {
128
+ position: absolute;
129
+ top: 16px;
130
+ right: 16px;
131
+ background: none;
132
+ border: none;
133
+ cursor: pointer;
134
+ z-index: 2;
135
+ padding: 0;
136
+ display: flex;
137
+ align-items: center;
138
+ justify-content: center;
139
+ }
140
+ .close-btn:hover {
141
+ opacity: 0.7;
142
+ }
143
+ .close-btn img {
144
+ width: 20px;
145
+ height: 20px;
146
+ }
147
+ .header-separator {
148
+ width: 100%;
149
+ height: 1px;
150
+ border-bottom: dashed 1px #58626b;
151
+ margin: 12px 0 0 0;
152
+ }
153
+ .modal-header {
154
+ display: flex;
155
+ align-items: center;
156
+ gap: 8px;
157
+ padding: 20px 24px 0 24px;
158
+ }
159
+ .icon-title {
160
+ width: 16px;
161
+ height: 16px;
162
+ }
163
+ .modal-title {
164
+ font-family: Poppins-Medium;
165
+ font-size: 14px;
166
+ font-weight: 500;
167
+ font-stretch: normal;
168
+ font-style: normal;
169
+ line-height: 1.5;
170
+ letter-spacing: normal;
171
+ text-align: left;
172
+ color: #fff;
173
+ }
174
+ .modal-body {
175
+ flex: 1;
176
+ display: flex;
177
+ flex-direction: column;
178
+ justify-content: center;
179
+ padding: 12px 24px 0 24px;
180
+ }
181
+ .modal-label {
182
+ font-family: Poppins-Regular;
183
+ font-size: 14px;
184
+ font-stretch: normal;
185
+ font-style: normal;
186
+ line-height: normal;
187
+ letter-spacing: -0.3px;
188
+ margin-top: 0px;
189
+ text-align: left;
190
+ color: rgba(255, 255, 255, 0.6);
191
+ margin-bottom: 8px;
192
+ }
193
+ .template-name-input {
194
+ width: 327px;
195
+ height: 44.5px;
196
+ border-radius: 6px;
197
+ border: 1px solid #3d4a54;
198
+ background: #2e3b46;
199
+ color: #fff;
200
+ font-family: Poppins-Regular;
201
+ font-size: 14px;
202
+ font-weight: normal;
203
+ font-stretch: normal;
204
+ font-style: normal;
205
+ line-height: normal;
206
+ letter-spacing: 0.1px;
207
+ text-align: left;
208
+ padding: 0 16px;
209
+ margin-bottom: 8px;
210
+ outline: none;
211
+ box-sizing: border-box;
212
+ transition: border 0.2s;
213
+ margin-left: auto;
214
+ margin-right: auto;
215
+ }
216
+ .template-name-input::placeholder {
217
+ color: #b0bec5;
218
+ opacity: 0.5;
219
+ }
220
+ .template-name-input:focus {
221
+ border: 1.5px solid rgba(224, 231, 240, 0.3);
222
+ }
223
+ .modal-footer {
224
+ display: flex;
225
+ justify-content: center;
226
+ align-items: center;
227
+ gap: 18px;
228
+ margin-top: 13px;
229
+ padding: 0 24px 12px 24px;
230
+ }
231
+ .cancel-btn {
232
+ background: none;
233
+ border: none;
234
+ color: #b0bec5;
235
+ font-size: 14.9px;
236
+ font-family: Poppins-Medium;
237
+ height: 30px;
238
+ border-radius: 64px;
239
+ display: flex;
240
+ align-items: center;
241
+ justify-content: center;
242
+ cursor: pointer;
243
+ padding: 0 18px;
244
+ transition: color 0.2s;
245
+ text-decoration: underline;
246
+ }
247
+ .cancel-btn:hover {
248
+ color: #fff;
249
+ }
250
+ .next-btn {
251
+ width: 107px;
252
+ height: 30px;
253
+ border-radius: 64px;
254
+ -webkit-backdrop-filter: blur(16px);
255
+ backdrop-filter: blur(16px);
256
+ border: solid 0.8px #cbee6b;
257
+ background-color: rgba(255, 255, 255, 0.06);
258
+ font-family: Poppins-Medium;
259
+ font-size: 14.9px;
260
+ font-weight: 500;
261
+ font-stretch: normal;
262
+ font-style: normal;
263
+ line-height: 1.2;
264
+ letter-spacing: -0.45px;
265
+ text-align: center;
266
+ color: #fff;
267
+ cursor: pointer;
268
+ transition:
269
+ background 0.2s,
270
+ color 0.2s;
271
+ display: flex;
272
+ align-items: center;
273
+ justify-content: center;
274
+ }
275
+ .next-btn:disabled {
276
+ opacity: 0.5;
277
+ cursor: not-allowed;
278
+ }
279
+ .next-btn:not(:disabled):hover {
280
+ background: #cbee6b;
281
+ color: #232e39;
282
+ }
283
+ </style>