@golstats/gsc-top-player 1.1.1 → 1.1.3
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/dist/{FilterConditions-e6c1cf0d-CR6046FF.js → FilterConditions-33ce2100-DWmn0gLJ.js} +1 -1
- package/dist/{FilterField-5dfcd3ba-B5krjHfM.js → FilterField-0f3013eb-DAR1Qtvx.js} +1 -1
- package/dist/{FilterSubcategories-eb0e7102-DP67Y6JD.js → FilterSubcategories-4c69ac5b-DrBntaSu.js} +1 -1
- package/dist/gsc-top-player.css +1 -1
- package/dist/gsc-top-player.es.js +1 -1
- package/dist/gsc-top-player.umd.js +11 -11
- package/dist/{index-CffQSWF3.js → index-DOAxTpI0.js} +1507 -1493
- package/package.json +4 -4
- package/src/components/comparative/gsc-top.vue +23 -11
- package/src/components/comparative/gsc-tops-full.vue +6 -15
- package/src/utils/imageUrl.js +30 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golstats/gsc-top-player",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.3",
|
|
4
4
|
"main": "dist/gsc-top-player.umd.js",
|
|
5
5
|
"module": "dist/gsc-top-player.es.js",
|
|
6
6
|
"exports": {
|
|
@@ -50,11 +50,11 @@
|
|
|
50
50
|
"dependencies": {
|
|
51
51
|
"@golstats/gsc-carousel": "^1.0.15",
|
|
52
52
|
"@golstats/gsc-filterperteam": "^1.0.17",
|
|
53
|
-
"@golstats/gsc-filters": "^1.1.
|
|
53
|
+
"@golstats/gsc-filters": "^1.1.3",
|
|
54
54
|
"@golstats/gsc-label": "^1.0.5",
|
|
55
|
-
"@golstats/gsc-season-select": "^1.0.
|
|
55
|
+
"@golstats/gsc-season-select": "^1.0.10",
|
|
56
56
|
"@golstats/gsc-switch-component": "^1.0.14",
|
|
57
|
-
"@golstats/gsc-tournament-select": "^1.0.
|
|
57
|
+
"@golstats/gsc-tournament-select": "^1.0.23",
|
|
58
58
|
"axios": "^1.10.0"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
@@ -29,9 +29,12 @@
|
|
|
29
29
|
logo:
|
|
30
30
|
player.img && player.img.includes('player-shadow')
|
|
31
31
|
? 'https://golstatsimages.blob.core.windows.net/images-library/logo-team@2x.png'
|
|
32
|
-
:
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
: getImageUrl(
|
|
33
|
+
'https://golstatsimages.blob.core.windows.net/teams-80/' +
|
|
34
|
+
player.teamid +
|
|
35
|
+
'.png',
|
|
36
|
+
provider,
|
|
37
|
+
),
|
|
35
38
|
name: player.name,
|
|
36
39
|
player_short: player.name_short,
|
|
37
40
|
player_id: player.id,
|
|
@@ -87,9 +90,12 @@
|
|
|
87
90
|
team_logo:
|
|
88
91
|
player.img && player.img.includes('player-shadow')
|
|
89
92
|
? 'https://golstatsimages.blob.core.windows.net/images-library/logo-team@2x.png'
|
|
90
|
-
:
|
|
91
|
-
|
|
92
|
-
|
|
93
|
+
: getImageUrl(
|
|
94
|
+
'https://golstatsimages.blob.core.windows.net/teams-80/' +
|
|
95
|
+
player.teamid +
|
|
96
|
+
'.png',
|
|
97
|
+
provider,
|
|
98
|
+
),
|
|
93
99
|
player_position: player.position,
|
|
94
100
|
player_country_flag:
|
|
95
101
|
'https://golstatsimages.blob.core.windows.net/flags/' +
|
|
@@ -210,10 +216,12 @@
|
|
|
210
216
|
id: player.id,
|
|
211
217
|
player_age: player.age,
|
|
212
218
|
team_abrev: player.team,
|
|
213
|
-
team_logo:
|
|
219
|
+
team_logo: getImageUrl(
|
|
214
220
|
'https://golstatsimages.blob.core.windows.net/teams-80/' +
|
|
215
|
-
|
|
216
|
-
|
|
221
|
+
player.teamid +
|
|
222
|
+
'.png',
|
|
223
|
+
provider,
|
|
224
|
+
),
|
|
217
225
|
player_position: player.position,
|
|
218
226
|
player_country_flag:
|
|
219
227
|
'https://golstatsimages.blob.core.windows.net/flags/' +
|
|
@@ -292,6 +300,7 @@
|
|
|
292
300
|
<script>
|
|
293
301
|
import axios from 'axios'
|
|
294
302
|
import { getApiUrl } from '@/utils/apiUrl.js'
|
|
303
|
+
import { getImageUrl } from '@/utils/imageUrl.js'
|
|
295
304
|
import { ref } from 'vue'
|
|
296
305
|
import useElementSize from './useElementSize'
|
|
297
306
|
import GSCLeaders from './gsc-header-tops.vue'
|
|
@@ -487,8 +496,10 @@ export default {
|
|
|
487
496
|
topTeam[play.team_id]['total'] = play.total
|
|
488
497
|
topTeam[play.team_id]['id'] = this.teamInfo[play.team_id].id
|
|
489
498
|
topTeam[play.team_id]['name'] = this.teamInfo[play.team_id].name.replace(' Femenil', '')
|
|
490
|
-
topTeam[play.team_id]['img'] =
|
|
491
|
-
'https://golstatsimages.blob.core.windows.net/teams-80/' + play.team_id + '.png'
|
|
499
|
+
topTeam[play.team_id]['img'] = getImageUrl(
|
|
500
|
+
'https://golstatsimages.blob.core.windows.net/teams-80/' + play.team_id + '.png',
|
|
501
|
+
this.provider,
|
|
502
|
+
)
|
|
492
503
|
topTeam[play.team_id]['effectiveness'] = this.teamInfo[play.team_id].effectiveness
|
|
493
504
|
topTeam[play.team_id]['frecuency'] = this.teamInfo[play.team_id].frecuency
|
|
494
505
|
topTeam[play.team_id]['game_avg'] = this.teamInfo[play.team_id].game_avg
|
|
@@ -782,6 +793,7 @@ export default {
|
|
|
782
793
|
],
|
|
783
794
|
}),
|
|
784
795
|
methods: {
|
|
796
|
+
getImageUrl,
|
|
785
797
|
getButtonFontSize() {
|
|
786
798
|
// Ajustar el tamaño de la fuente según el ancho del componente
|
|
787
799
|
if (this.elementSize.width > 500) {
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
<script>
|
|
37
37
|
import axios from 'axios'
|
|
38
38
|
import { getApiUrl } from '@/utils/apiUrl.js'
|
|
39
|
+
import { getImageUrl } from '@/utils/imageUrl.js'
|
|
39
40
|
import computedProperties from './computedProperties.js'
|
|
40
41
|
import useElementSize from './useElementSize'
|
|
41
42
|
import GSCTopCategory from '@/components/comparative/gsc-top.vue'
|
|
@@ -638,7 +639,6 @@ export default {
|
|
|
638
639
|
updateTablesfull: 0,
|
|
639
640
|
optionSelected: 'Jugadores',
|
|
640
641
|
optionSelectedSubmenu: 'Todas las jugadas',
|
|
641
|
-
tournamentsUrl: 'https://17zyhpyc7c.execute-api.us-west-2.amazonaws.com/prod/tournaments',
|
|
642
642
|
teamsUrl: 'https://d2oco6mqmc.execute-api.us-west-2.amazonaws.com/prod/teamsBySeason/',
|
|
643
643
|
urlFilter:
|
|
644
644
|
'https://cqqxaonvm6.execute-api.us-east-2.amazonaws.com/prod/gs2/tops/filters?categories=',
|
|
@@ -879,10 +879,12 @@ export default {
|
|
|
879
879
|
player_age: this.calcularEdad(data[index].dob),
|
|
880
880
|
team_abrev: data[index].teams[0].acronym,
|
|
881
881
|
team_name: data[index].teams[0].team_name,
|
|
882
|
-
team_logo:
|
|
882
|
+
team_logo: getImageUrl(
|
|
883
883
|
'https://golstatsimages.blob.core.windows.net/teams-80/' +
|
|
884
|
-
|
|
885
|
-
|
|
884
|
+
data[index].teams[0].team_id +
|
|
885
|
+
'.png',
|
|
886
|
+
this.provider,
|
|
887
|
+
),
|
|
886
888
|
player_position: data[index].position_id,
|
|
887
889
|
player_country_flag:
|
|
888
890
|
'https://golstatsimages.blob.core.windows.net/flags/' +
|
|
@@ -1630,17 +1632,6 @@ export default {
|
|
|
1630
1632
|
this.optionSelectedSubmenu = idchange
|
|
1631
1633
|
},
|
|
1632
1634
|
|
|
1633
|
-
async fetchTournaments() {
|
|
1634
|
-
const axiosInstance = axios.create({
|
|
1635
|
-
headers: {
|
|
1636
|
-
Authorization: `${this.token}`,
|
|
1637
|
-
},
|
|
1638
|
-
})
|
|
1639
|
-
const { data } = await axiosInstance.get(
|
|
1640
|
-
getApiUrl(this.tournamentsUrl, this.provider, this.isDevApis),
|
|
1641
|
-
)
|
|
1642
|
-
return data
|
|
1643
|
-
},
|
|
1644
1635
|
async fetchTeams() {
|
|
1645
1636
|
const axiosInstance = axios.create({
|
|
1646
1637
|
headers: {
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Inserta el proveedor activo en una URL de imágenes de GolStats
|
|
3
|
+
* (dominio `golstatsimages.blob.core.windows.net`, escudos `teams-*`, etc.).
|
|
4
|
+
*
|
|
5
|
+
* Regla A: provider es 1, 0 o null/undefined → URL sin cambios.
|
|
6
|
+
* Regla B: provider >= 2 → se inserta `/<provider>` después del contenedor.
|
|
7
|
+
*
|
|
8
|
+
* https://host/teams-80/16906.png → https://host/teams-80/2/16906.png
|
|
9
|
+
*
|
|
10
|
+
* El proveedor no puede ir justo después del host: Azure exige que el primer
|
|
11
|
+
* segmento sea un nombre de contenedor válido (mínimo 3 caracteres) y responde
|
|
12
|
+
* 400 ante `/2/teams-80/16906.png`.
|
|
13
|
+
*
|
|
14
|
+
* @param {string} originalUrl URL original (con el id ya interpolado)
|
|
15
|
+
* @param {number|null} provider ID del proveedor
|
|
16
|
+
* @returns {string} URL final
|
|
17
|
+
*/
|
|
18
|
+
export function getImageUrl(originalUrl, provider) {
|
|
19
|
+
if (!provider || provider <= 1) {
|
|
20
|
+
return originalUrl
|
|
21
|
+
}
|
|
22
|
+
const parsed = new URL(originalUrl)
|
|
23
|
+
const segments = parsed.pathname.split('/').filter((s) => s !== '')
|
|
24
|
+
if (segments.length === 0) {
|
|
25
|
+
return originalUrl
|
|
26
|
+
}
|
|
27
|
+
const [container, ...rest] = segments
|
|
28
|
+
const path = [container, provider, ...rest].join('/')
|
|
29
|
+
return `${parsed.origin}/${path}${parsed.search}`
|
|
30
|
+
}
|