@golstats/gsc-reports 1.0.35 → 1.0.37

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 (32) hide show
  1. package/README.md +2 -2
  2. package/dist/{FilterConditions-55d68355-BUvCA8gG-B9ZYfWlj-G_MlTXrw.js → FilterConditions-55d68355-BUvCA8gG-BgesEQ5y-DrSEkUL0.js} +24 -24
  3. package/dist/{FilterField-59a73e38-C85AzksG-BwFrSJDM-DHSWHEFH.js → FilterField-59a73e38-C85AzksG-B74SN9-k-BeKkLIXL.js} +8 -8
  4. package/dist/{FilterSubcategories-a9b32cc9-B7ERo60D-D0LNP6hE-gzPlGiqa.js → FilterSubcategories-a9b32cc9-B7ERo60D-CLS0i9LD-CAcJTNTj.js} +6 -6
  5. package/dist/css/fonts.css +83 -83
  6. package/dist/gsc-reports.css +1 -1
  7. package/dist/gsc-reports.es.js +1 -1
  8. package/dist/gsc-reports.umd.js +153 -153
  9. package/dist/{index-CmyyUVa5.js → index-FY3s5bCZ.js} +35485 -35425
  10. package/package.json +2 -2
  11. package/src/components/TemplatesSection.vue +5 -0
  12. package/src/components/elementsTemplates/ModalDeleteReport.vue +246 -246
  13. package/src/components/elementsTemplates/ModalDeleteTemplate.vue +249 -249
  14. package/src/components/elementsTemplates/ModalRenameReporte.vue +330 -330
  15. package/src/components/elementsTemplates/ModalRenameTemplate.vue +337 -337
  16. package/src/components/elementsTemplates/ModalSoloEscritorio.vue +83 -83
  17. package/src/components/elementsTemplates/ModalduplicateTemplate.vue +300 -300
  18. package/src/components/elementsTemplates/TooltipReportOptions.vue +97 -97
  19. package/src/components/elementsTemplates/TooltipTemplateOptions.vue +168 -168
  20. package/src/components/filters.vue +935 -935
  21. package/src/components/gsc-reports.vue +15 -6
  22. package/src/components/thumbnails-reports/AnalisisPostMatchType1.vue +741 -741
  23. package/src/components/thumbnails-reports/AnalisisPostMatchType2.vue +743 -743
  24. package/src/components/thumbnails-reports/AnalisisPostMatchType3.vue +463 -463
  25. package/src/components/thumbnails-reports/AnalisisPostMatchType4.vue +462 -462
  26. package/src/components/thumbnails-reports/AnalisisPrematchType1.vue +164 -164
  27. package/src/components/thumbnails-reports/AnalisisPrematchType2.vue +163 -163
  28. package/src/components/thumbnails-reports/AnalisisPrematchType3.vue +173 -173
  29. package/src/components/thumbnails-reports/AnalisisPrematchType4.vue +173 -173
  30. package/src/index.js +4 -4
  31. package/src/types.d.ts +45 -45
  32. package/src/utils/dateUtils.js +52 -52
@@ -1,337 +1,337 @@
1
- <template>
2
- <div class="modal-overlay">
3
- <div class="modal-content">
4
- <button class="close-btn" @click="$emit('close')">
5
- <img
6
- src="https://golstatsimages.blob.core.windows.net/reports-images/icn-close.svg"
7
- alt="Cerrar"
8
- />
9
- </button>
10
- <div class="modal-header">
11
- <img
12
- src="https://golstatsimages.blob.core.windows.net/reports-images/icn-rename-white.svg"
13
- class="icon-title"
14
- alt="icon"
15
- />
16
- <span class="modal-title">Renombrar Template</span>
17
- </div>
18
- <div class="header-separator"></div>
19
- <div class="modal-body">
20
- <div class="modal-label">Nombre:</div>
21
- <input
22
- class="template-name-input"
23
- type="text"
24
- v-model="newName"
25
- :placeholder="initialName"
26
- maxlength="40"
27
- autocomplete="off"
28
- :disabled="isLoading"
29
- />
30
- <div v-if="errorMessage" class="error-message">
31
- {{ errorMessage }}
32
- </div>
33
- </div>
34
- <div class="header-separator"></div>
35
- <div class="modal-footer">
36
- <button class="cancel-btn" @click="$emit('close')" :disabled="isLoading">Cancelar</button>
37
- <button
38
- class="next-btn"
39
- :disabled="newName.trim().length < 3 || isLoading"
40
- @click="acceptRename"
41
- >
42
- <span v-if="isLoading">Guardando...</span>
43
- <span v-else>Guardar</span>
44
- </button>
45
- </div>
46
- </div>
47
- </div>
48
- </template>
49
-
50
- <script setup>
51
- import { ref, watch, onMounted, onUnmounted } from 'vue'
52
- import axios from 'axios'
53
-
54
- const props = defineProps({
55
- initialName: {
56
- type: String,
57
- required: true,
58
- },
59
- templateType: {
60
- type: String,
61
- required: true,
62
- },
63
- token: {
64
- type: String,
65
- required: true,
66
- },
67
- userId: {
68
- type: String,
69
- required: true,
70
- },
71
- templateId: {
72
- type: String,
73
- required: true,
74
- },
75
- })
76
-
77
- const emit = defineEmits(['close', 'rename', 'refresh'])
78
- const newName = ref(props.initialName)
79
- const isLoading = ref(false)
80
- const errorMessage = ref('')
81
-
82
- watch(
83
- () => props.initialName,
84
- (val) => {
85
- newName.value = val
86
- errorMessage.value = ''
87
- },
88
- )
89
-
90
- onMounted(() => {
91
- // Bloquear el scroll del body cuando la modal está abierta
92
- document.body.style.overflow = 'hidden'
93
- })
94
-
95
- onUnmounted(() => {
96
- // Restaurar el scroll del body cuando la modal se cierra
97
- document.body.style.overflow = ''
98
- })
99
-
100
- async function acceptRename() {
101
- console.log('acceptRename')
102
- if (newName.value.trim().length < 3) return
103
- console.log('acceptRename 22')
104
-
105
- isLoading.value = true
106
- errorMessage.value = ''
107
-
108
- try {
109
- await axios.put(
110
- `https://m9qip57rsh.execute-api.us-east-2.amazonaws.com/prod/users/${props.userId}/templates/${props.templateId}/general`,
111
- {
112
- name: newName.value.trim(),
113
- },
114
- {
115
- headers: {
116
- Authorization: `${props.token}`,
117
- 'Content-Type': 'application/json',
118
- },
119
- },
120
- )
121
-
122
- // Si la petición es exitosa, emitir el evento de rename y refresh
123
- emit('rename', newName.value.trim())
124
- emit('refresh')
125
- emit('close')
126
- } catch (error) {
127
- console.error('Error al renombrar el template:', error)
128
-
129
- if (error.response?.status === 409) {
130
- errorMessage.value = 'Ya existe un template con el mismo nombre'
131
- } else {
132
- errorMessage.value = 'Error al renombrar el template. Inténtalo de nuevo.'
133
- }
134
- } finally {
135
- isLoading.value = false
136
- }
137
- }
138
- </script>
139
-
140
- <style scoped>
141
- .modal-overlay {
142
- position: fixed;
143
- top: 0;
144
- left: 0;
145
- width: 100vw;
146
- height: 100vh;
147
- background: rgba(0, 0, 0, 0.45);
148
- display: flex;
149
- align-items: center;
150
- justify-content: center;
151
- z-index: 3200;
152
- }
153
- .modal-content {
154
- width: 375px;
155
- height: auto;
156
- background: #2e3b46;
157
- border-radius: 10px;
158
- box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.18);
159
- padding: 0;
160
- position: relative;
161
- display: flex;
162
- flex-direction: column;
163
- font-family: 'Poppins-Regular', 'Montserrat', sans-serif;
164
- }
165
- .close-btn {
166
- position: absolute;
167
- top: 16px;
168
- right: 16px;
169
- background: none;
170
- border: none;
171
- cursor: pointer;
172
- z-index: 2;
173
- padding: 0;
174
- display: flex;
175
- align-items: center;
176
- justify-content: center;
177
- }
178
- .close-btn:hover {
179
- opacity: 0.7;
180
- }
181
- .close-btn img {
182
- width: 20px;
183
- height: 20px;
184
- }
185
- .header-separator {
186
- width: 100%;
187
- height: 1px;
188
- border-bottom: dashed 1px #58626b;
189
- margin: 12px 0 0 0;
190
- }
191
- .modal-header {
192
- display: flex;
193
- align-items: center;
194
- gap: 8px;
195
- padding: 20px 24px 0 24px;
196
- }
197
- .icon-title {
198
- width: 16px;
199
- height: 16px;
200
- }
201
- .modal-title {
202
- font-family: Poppins-Medium;
203
- font-size: 14px;
204
- font-weight: 500;
205
- font-stretch: normal;
206
- font-style: normal;
207
- line-height: 1.5;
208
- letter-spacing: normal;
209
- text-align: left;
210
- color: #fff;
211
- }
212
- .modal-body {
213
- flex: 1;
214
- display: flex;
215
- flex-direction: column;
216
- justify-content: center;
217
- padding: 12px 24px 0 24px;
218
- }
219
- .modal-label {
220
- font-family: Poppins-Regular;
221
- font-size: 14px;
222
- font-stretch: normal;
223
- font-style: normal;
224
- line-height: normal;
225
- letter-spacing: -0.3px;
226
- margin-top: 0px;
227
- text-align: left;
228
- color: rgba(255, 255, 255, 0.6);
229
- margin-bottom: 8px;
230
- }
231
- .template-name-input {
232
- width: 327px;
233
- height: 44.5px;
234
- border-radius: 6px;
235
- border: 1px solid #3d4a54;
236
- background: #2e3b46;
237
- color: #fff;
238
- font-family: Poppins-Regular;
239
- font-size: 14px;
240
- font-weight: normal;
241
- font-stretch: normal;
242
- font-style: normal;
243
- line-height: normal;
244
- letter-spacing: 0.1px;
245
- text-align: left;
246
- padding: 0 16px;
247
- margin-bottom: 8px;
248
- outline: none;
249
- box-sizing: border-box;
250
- transition: border 0.2s;
251
- margin-left: auto;
252
- margin-right: auto;
253
- }
254
- .template-name-input::placeholder {
255
- color: #b0bec5;
256
- opacity: 0.5;
257
- }
258
- .template-name-input:focus {
259
- border: 1.5px solid rgba(224, 231, 240, 0.3);
260
- }
261
- .template-name-input:disabled {
262
- opacity: 0.5;
263
- cursor: not-allowed;
264
- }
265
- .error-message {
266
- color: #fcfcfc;
267
- font-size: 12px;
268
- opacity: 0.6;
269
- text-align: center;
270
- margin-top: 0px;
271
- font-family: Poppins-Regular;
272
- }
273
- .modal-footer {
274
- display: flex;
275
- justify-content: center;
276
- align-items: center;
277
- gap: 18px;
278
- margin-top: 13px;
279
- padding: 0 24px 12px 24px;
280
- }
281
- .cancel-btn {
282
- background: none;
283
- border: none;
284
- color: #b0bec5;
285
- font-size: 14.9px;
286
- font-family: Poppins-Medium;
287
- height: 30px;
288
- border-radius: 64px;
289
- display: flex;
290
- align-items: center;
291
- justify-content: center;
292
- cursor: pointer;
293
- padding: 0 18px;
294
- transition: color 0.2s;
295
- text-decoration: underline;
296
- }
297
- .cancel-btn:hover:not(:disabled) {
298
- color: #fff;
299
- }
300
- .cancel-btn:disabled {
301
- opacity: 0.5;
302
- cursor: not-allowed;
303
- }
304
- .next-btn {
305
- width: 107px;
306
- height: 30px;
307
- border-radius: 64px;
308
- -webkit-backdrop-filter: blur(16px);
309
- backdrop-filter: blur(16px);
310
- border: solid 0.8px #cbee6b;
311
- background-color: rgba(255, 255, 255, 0.06);
312
- font-family: Poppins-Medium;
313
- font-size: 14.9px;
314
- font-weight: 500;
315
- font-stretch: normal;
316
- font-style: normal;
317
- line-height: 1.2;
318
- letter-spacing: -0.45px;
319
- text-align: center;
320
- color: #fff;
321
- cursor: pointer;
322
- transition:
323
- background 0.2s,
324
- color 0.2s;
325
- display: flex;
326
- align-items: center;
327
- justify-content: center;
328
- }
329
- .next-btn:disabled {
330
- opacity: 0.5;
331
- cursor: not-allowed;
332
- }
333
- .next-btn:not(:disabled):hover {
334
- background: #cbee6b;
335
- color: #232e39;
336
- }
337
- </style>
1
+ <template>
2
+ <div class="modal-overlay">
3
+ <div class="modal-content">
4
+ <button class="close-btn" @click="$emit('close')">
5
+ <img
6
+ src="https://golstatsimages.blob.core.windows.net/reports-images/icn-close.svg"
7
+ alt="Cerrar"
8
+ />
9
+ </button>
10
+ <div class="modal-header">
11
+ <img
12
+ src="https://golstatsimages.blob.core.windows.net/reports-images/icn-rename-white.svg"
13
+ class="icon-title"
14
+ alt="icon"
15
+ />
16
+ <span class="modal-title">Renombrar Template</span>
17
+ </div>
18
+ <div class="header-separator"></div>
19
+ <div class="modal-body">
20
+ <div class="modal-label">Nombre:</div>
21
+ <input
22
+ class="template-name-input"
23
+ type="text"
24
+ v-model="newName"
25
+ :placeholder="initialName"
26
+ maxlength="40"
27
+ autocomplete="off"
28
+ :disabled="isLoading"
29
+ />
30
+ <div v-if="errorMessage" class="error-message">
31
+ {{ errorMessage }}
32
+ </div>
33
+ </div>
34
+ <div class="header-separator"></div>
35
+ <div class="modal-footer">
36
+ <button class="cancel-btn" @click="$emit('close')" :disabled="isLoading">Cancelar</button>
37
+ <button
38
+ class="next-btn"
39
+ :disabled="newName.trim().length < 3 || isLoading"
40
+ @click="acceptRename"
41
+ >
42
+ <span v-if="isLoading">Guardando...</span>
43
+ <span v-else>Guardar</span>
44
+ </button>
45
+ </div>
46
+ </div>
47
+ </div>
48
+ </template>
49
+
50
+ <script setup>
51
+ import { ref, watch, onMounted, onUnmounted } from 'vue'
52
+ import axios from 'axios'
53
+
54
+ const props = defineProps({
55
+ initialName: {
56
+ type: String,
57
+ required: true,
58
+ },
59
+ templateType: {
60
+ type: String,
61
+ required: true,
62
+ },
63
+ token: {
64
+ type: String,
65
+ required: true,
66
+ },
67
+ userId: {
68
+ type: String,
69
+ required: true,
70
+ },
71
+ templateId: {
72
+ type: String,
73
+ required: true,
74
+ },
75
+ })
76
+
77
+ const emit = defineEmits(['close', 'rename', 'refresh'])
78
+ const newName = ref(props.initialName)
79
+ const isLoading = ref(false)
80
+ const errorMessage = ref('')
81
+
82
+ watch(
83
+ () => props.initialName,
84
+ (val) => {
85
+ newName.value = val
86
+ errorMessage.value = ''
87
+ },
88
+ )
89
+
90
+ onMounted(() => {
91
+ // Bloquear el scroll del body cuando la modal está abierta
92
+ document.body.style.overflow = 'hidden'
93
+ })
94
+
95
+ onUnmounted(() => {
96
+ // Restaurar el scroll del body cuando la modal se cierra
97
+ document.body.style.overflow = ''
98
+ })
99
+
100
+ async function acceptRename() {
101
+ console.log('acceptRename')
102
+ if (newName.value.trim().length < 3) return
103
+ console.log('acceptRename 22')
104
+
105
+ isLoading.value = true
106
+ errorMessage.value = ''
107
+
108
+ try {
109
+ await axios.put(
110
+ `https://m9qip57rsh.execute-api.us-east-2.amazonaws.com/prod/users/${props.userId}/templates/${props.templateId}/general`,
111
+ {
112
+ name: newName.value.trim(),
113
+ },
114
+ {
115
+ headers: {
116
+ Authorization: `${props.token}`,
117
+ 'Content-Type': 'application/json',
118
+ },
119
+ },
120
+ )
121
+
122
+ // Si la petición es exitosa, emitir el evento de rename y refresh
123
+ emit('rename', newName.value.trim())
124
+ emit('refresh')
125
+ emit('close')
126
+ } catch (error) {
127
+ console.error('Error al renombrar el template:', error)
128
+
129
+ if (error.response?.status === 409) {
130
+ errorMessage.value = 'Ya existe un template con el mismo nombre'
131
+ } else {
132
+ errorMessage.value = 'Error al renombrar el template. Inténtalo de nuevo.'
133
+ }
134
+ } finally {
135
+ isLoading.value = false
136
+ }
137
+ }
138
+ </script>
139
+
140
+ <style scoped>
141
+ .modal-overlay {
142
+ position: fixed;
143
+ top: 0;
144
+ left: 0;
145
+ width: 100vw;
146
+ height: 100vh;
147
+ background: rgba(0, 0, 0, 0.45);
148
+ display: flex;
149
+ align-items: center;
150
+ justify-content: center;
151
+ z-index: 3200;
152
+ }
153
+ .modal-content {
154
+ width: 375px;
155
+ height: auto;
156
+ background: #2e3b46;
157
+ border-radius: 10px;
158
+ box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.18);
159
+ padding: 0;
160
+ position: relative;
161
+ display: flex;
162
+ flex-direction: column;
163
+ font-family: 'Poppins-Regular', 'Montserrat', sans-serif;
164
+ }
165
+ .close-btn {
166
+ position: absolute;
167
+ top: 16px;
168
+ right: 16px;
169
+ background: none;
170
+ border: none;
171
+ cursor: pointer;
172
+ z-index: 2;
173
+ padding: 0;
174
+ display: flex;
175
+ align-items: center;
176
+ justify-content: center;
177
+ }
178
+ .close-btn:hover {
179
+ opacity: 0.7;
180
+ }
181
+ .close-btn img {
182
+ width: 20px;
183
+ height: 20px;
184
+ }
185
+ .header-separator {
186
+ width: 100%;
187
+ height: 1px;
188
+ border-bottom: dashed 1px #58626b;
189
+ margin: 12px 0 0 0;
190
+ }
191
+ .modal-header {
192
+ display: flex;
193
+ align-items: center;
194
+ gap: 8px;
195
+ padding: 20px 24px 0 24px;
196
+ }
197
+ .icon-title {
198
+ width: 16px;
199
+ height: 16px;
200
+ }
201
+ .modal-title {
202
+ font-family: Poppins-Medium;
203
+ font-size: 14px;
204
+ font-weight: 500;
205
+ font-stretch: normal;
206
+ font-style: normal;
207
+ line-height: 1.5;
208
+ letter-spacing: normal;
209
+ text-align: left;
210
+ color: #fff;
211
+ }
212
+ .modal-body {
213
+ flex: 1;
214
+ display: flex;
215
+ flex-direction: column;
216
+ justify-content: center;
217
+ padding: 12px 24px 0 24px;
218
+ }
219
+ .modal-label {
220
+ font-family: Poppins-Regular;
221
+ font-size: 14px;
222
+ font-stretch: normal;
223
+ font-style: normal;
224
+ line-height: normal;
225
+ letter-spacing: -0.3px;
226
+ margin-top: 0px;
227
+ text-align: left;
228
+ color: rgba(255, 255, 255, 0.6);
229
+ margin-bottom: 8px;
230
+ }
231
+ .template-name-input {
232
+ width: 327px;
233
+ height: 44.5px;
234
+ border-radius: 6px;
235
+ border: 1px solid #3d4a54;
236
+ background: #2e3b46;
237
+ color: #fff;
238
+ font-family: Poppins-Regular;
239
+ font-size: 14px;
240
+ font-weight: normal;
241
+ font-stretch: normal;
242
+ font-style: normal;
243
+ line-height: normal;
244
+ letter-spacing: 0.1px;
245
+ text-align: left;
246
+ padding: 0 16px;
247
+ margin-bottom: 8px;
248
+ outline: none;
249
+ box-sizing: border-box;
250
+ transition: border 0.2s;
251
+ margin-left: auto;
252
+ margin-right: auto;
253
+ }
254
+ .template-name-input::placeholder {
255
+ color: #b0bec5;
256
+ opacity: 0.5;
257
+ }
258
+ .template-name-input:focus {
259
+ border: 1.5px solid rgba(224, 231, 240, 0.3);
260
+ }
261
+ .template-name-input:disabled {
262
+ opacity: 0.5;
263
+ cursor: not-allowed;
264
+ }
265
+ .error-message {
266
+ color: #fcfcfc;
267
+ font-size: 12px;
268
+ opacity: 0.6;
269
+ text-align: center;
270
+ margin-top: 0px;
271
+ font-family: Poppins-Regular;
272
+ }
273
+ .modal-footer {
274
+ display: flex;
275
+ justify-content: center;
276
+ align-items: center;
277
+ gap: 18px;
278
+ margin-top: 13px;
279
+ padding: 0 24px 12px 24px;
280
+ }
281
+ .cancel-btn {
282
+ background: none;
283
+ border: none;
284
+ color: #b0bec5;
285
+ font-size: 14.9px;
286
+ font-family: Poppins-Medium;
287
+ height: 30px;
288
+ border-radius: 64px;
289
+ display: flex;
290
+ align-items: center;
291
+ justify-content: center;
292
+ cursor: pointer;
293
+ padding: 0 18px;
294
+ transition: color 0.2s;
295
+ text-decoration: underline;
296
+ }
297
+ .cancel-btn:hover:not(:disabled) {
298
+ color: #fff;
299
+ }
300
+ .cancel-btn:disabled {
301
+ opacity: 0.5;
302
+ cursor: not-allowed;
303
+ }
304
+ .next-btn {
305
+ width: 107px;
306
+ height: 30px;
307
+ border-radius: 64px;
308
+ -webkit-backdrop-filter: blur(16px);
309
+ backdrop-filter: blur(16px);
310
+ border: solid 0.8px #cbee6b;
311
+ background-color: rgba(255, 255, 255, 0.06);
312
+ font-family: Poppins-Medium;
313
+ font-size: 14.9px;
314
+ font-weight: 500;
315
+ font-stretch: normal;
316
+ font-style: normal;
317
+ line-height: 1.2;
318
+ letter-spacing: -0.45px;
319
+ text-align: center;
320
+ color: #fff;
321
+ cursor: pointer;
322
+ transition:
323
+ background 0.2s,
324
+ color 0.2s;
325
+ display: flex;
326
+ align-items: center;
327
+ justify-content: center;
328
+ }
329
+ .next-btn:disabled {
330
+ opacity: 0.5;
331
+ cursor: not-allowed;
332
+ }
333
+ .next-btn:not(:disabled):hover {
334
+ background: #cbee6b;
335
+ color: #232e39;
336
+ }
337
+ </style>