sass-template-common 0.10.1 → 0.10.10
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 +36 -36
- package/dist/sass-template-common.d.ts +102 -12
- package/dist/sass-template-common.js +2714 -2576
- package/dist/sass-template-common.umd.cjs +44 -44
- package/package.json +69 -69
package/README.md
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
# sass-template-common
|
|
2
|
-
|
|
3
|
-
Librería web, maqueta de configuración y componentes para proyectos sass.
|
|
4
|
-
|
|
5
|
-
## Publicar nueva versión
|
|
6
|
-
|
|
7
|
-
Para que los cambios se reflejen al publicar:
|
|
8
|
-
|
|
9
|
-
1. **Subir versión** (obligatorio; si no, npm rechaza o se usa la misma versión):
|
|
10
|
-
```bash
|
|
11
|
-
pnpm version:patch # 0.3.21 → 0.3.22
|
|
12
|
-
# o
|
|
13
|
-
pnpm version:minor # 0.3.21 → 0.4.0
|
|
14
|
-
pnpm version:major # 0.3.21 → 1.0.0
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
2. **Build limpio + publicar**:
|
|
18
|
-
```bash
|
|
19
|
-
pnpm run clean && pnpm run build && pnpm publish
|
|
20
|
-
```
|
|
21
|
-
O en un solo paso (patch):
|
|
22
|
-
```bash
|
|
23
|
-
pnpm release:patch
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
3. **`prepublishOnly`**: Antes de cada `pnpm publish` se ejecuta `clean` + `build`, así siempre se publica un build nuevo.
|
|
27
|
-
|
|
28
|
-
4. **En proyectos que consumen la lib**: Actualizar la dependencia y reinstalar:
|
|
29
|
-
```bash
|
|
30
|
-
pnpm update sass-template-common
|
|
31
|
-
# o cambiar la versión en package.json y luego
|
|
32
|
-
pnpm install
|
|
33
|
-
```
|
|
34
|
-
Si usan versión fija (`"0.3.21"`), hay que actualizarla a la nueva (p. ej. `"0.3.22"`).
|
|
35
|
-
|
|
36
|
-
**Si no ves los cambios:** comprueba que subiste la versión (`version:patch` o similar), que hiciste `clean` + `build` antes de publicar, y que el proyecto consumidor tiene actualizada la dependencia (o `^0.3.21` y ha ejecutado `pnpm update`).
|
|
1
|
+
# sass-template-common
|
|
2
|
+
|
|
3
|
+
Librería web, maqueta de configuración y componentes para proyectos sass.
|
|
4
|
+
|
|
5
|
+
## Publicar nueva versión
|
|
6
|
+
|
|
7
|
+
Para que los cambios se reflejen al publicar:
|
|
8
|
+
|
|
9
|
+
1. **Subir versión** (obligatorio; si no, npm rechaza o se usa la misma versión):
|
|
10
|
+
```bash
|
|
11
|
+
pnpm version:patch # 0.3.21 → 0.3.22
|
|
12
|
+
# o
|
|
13
|
+
pnpm version:minor # 0.3.21 → 0.4.0
|
|
14
|
+
pnpm version:major # 0.3.21 → 1.0.0
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
2. **Build limpio + publicar**:
|
|
18
|
+
```bash
|
|
19
|
+
pnpm run clean && pnpm run build && pnpm publish
|
|
20
|
+
```
|
|
21
|
+
O en un solo paso (patch):
|
|
22
|
+
```bash
|
|
23
|
+
pnpm release:patch
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
3. **`prepublishOnly`**: Antes de cada `pnpm publish` se ejecuta `clean` + `build`, así siempre se publica un build nuevo.
|
|
27
|
+
|
|
28
|
+
4. **En proyectos que consumen la lib**: Actualizar la dependencia y reinstalar:
|
|
29
|
+
```bash
|
|
30
|
+
pnpm update sass-template-common
|
|
31
|
+
# o cambiar la versión en package.json y luego
|
|
32
|
+
pnpm install
|
|
33
|
+
```
|
|
34
|
+
Si usan versión fija (`"0.3.21"`), hay que actualizarla a la nueva (p. ej. `"0.3.22"`).
|
|
35
|
+
|
|
36
|
+
**Si no ves los cambios:** comprueba que subiste la versión (`version:patch` o similar), que hiciste `clean` + `build` antes de publicar, y que el proyecto consumidor tiene actualizada la dependencia (o `^0.3.21` y ha ejecutado `pnpm update`).
|
|
@@ -51,6 +51,8 @@ export declare type Analytics = {
|
|
|
51
51
|
comscore: string | undefined;
|
|
52
52
|
};
|
|
53
53
|
|
|
54
|
+
export declare const assetsImagesPrefixer: (imagePath: string, assetsClient?: string) => string;
|
|
55
|
+
|
|
54
56
|
export declare const AssetsPreconnect: () => false | "" | JSX.Element | undefined;
|
|
55
57
|
|
|
56
58
|
export declare function auditConfigOrigin(entry: ConfigOriginAuditEntry): void;
|
|
@@ -179,15 +181,14 @@ export declare const bannersReplace: (bannerLineAd: string, replaces?: {
|
|
|
179
181
|
}) => string;
|
|
180
182
|
|
|
181
183
|
/**
|
|
182
|
-
*
|
|
183
|
-
*
|
|
184
|
-
*
|
|
185
|
-
*
|
|
186
|
-
*
|
|
187
|
-
* userPage=2 → API pages 4, 5, 6 (items 46–90)
|
|
184
|
+
* Variante metadata: mismo split que `createBatchedFetch` pero devuelve
|
|
185
|
+
* `hasNextPage` (último batch lleno) y el primer response crudo, para derivar
|
|
186
|
+
* next/prev y el título de sección. Lee el conteo de batches del MISMO
|
|
187
|
+
* `CONFIG_batchedFetch` que el render (vía `resolveBatchCount`), de modo que la
|
|
188
|
+
* paginación de metadata y la lista visible nunca discrepan.
|
|
188
189
|
*
|
|
189
|
-
*
|
|
190
|
-
*
|
|
190
|
+
* `ceil` (antes `floor`) alinea la matemática con `createBatchedFetch`; para los
|
|
191
|
+
* totales usados en prod (45, 15) ambos coinciden por ser divisibles.
|
|
191
192
|
*/
|
|
192
193
|
export declare function batchedNewsFetch({ fetchFn, baseParams, userPage, newsListLimit, batchCount, }: BatchFetchParams): Promise<BatchFetchResult>;
|
|
193
194
|
|
|
@@ -808,6 +809,25 @@ declare interface CreateAssessmentParams {
|
|
|
808
809
|
userIpAddress?: string;
|
|
809
810
|
}
|
|
810
811
|
|
|
812
|
+
/**
|
|
813
|
+
* Divide un fetch de lista en `batches` requests paralelos de `ceil(totalSize/
|
|
814
|
+
* batches)` ítems cada uno (páginas contiguas del upstream) y concatena los
|
|
815
|
+
* resultados en orden, devolviendo el MISMO envelope que un fetch único
|
|
816
|
+
* (`{ data: { data: [] } }`) para que caiga directo en un `PromiseArray` con
|
|
817
|
+
* `custom_extractData: getResponse`.
|
|
818
|
+
*
|
|
819
|
+
* Mapeo de páginas (batches=5, totalSize=45 → batchSize=9):
|
|
820
|
+
* userPage=1 → API pages 1..5 (ítems 1–45)
|
|
821
|
+
* userPage=2 → API pages 6..10 (ítems 46–90)
|
|
822
|
+
*
|
|
823
|
+
* `fetchFn` recibe `(size, page)` y devuelve la respuesta del CMS o `undefined`.
|
|
824
|
+
*/
|
|
825
|
+
export declare function createBatchedFetch(fetchFn: (size: number, page: number) => Promise<any> | undefined, totalSize: number, userPage: number, batches?: number): Promise<{
|
|
826
|
+
data: {
|
|
827
|
+
data: any[];
|
|
828
|
+
};
|
|
829
|
+
}>;
|
|
830
|
+
|
|
811
831
|
export declare const cutString: (text: string, length?: number) => string;
|
|
812
832
|
|
|
813
833
|
export declare interface DataNews {
|
|
@@ -1056,6 +1076,18 @@ export declare type FetchConfig = {
|
|
|
1056
1076
|
newsType: string;
|
|
1057
1077
|
};
|
|
1058
1078
|
|
|
1079
|
+
/**
|
|
1080
|
+
* Envuelve `fetchFn` con batch SI la ruta está activada en config; si no, hace
|
|
1081
|
+
* el fetch único (comportamiento de master). Behavior-preserving cuando el batch
|
|
1082
|
+
* está off, así que es seguro envolver todas las rutas de lista de una — solo
|
|
1083
|
+
* las que estén en `CONFIG_batchedFetch.routes` cambian de comportamiento.
|
|
1084
|
+
*/
|
|
1085
|
+
export declare function fetchMaybeBatched(route: string, fetchFn: (size: number, page: number) => Promise<any> | undefined, totalSize: number, userPage: number): Promise<{
|
|
1086
|
+
data: {
|
|
1087
|
+
data: any[];
|
|
1088
|
+
};
|
|
1089
|
+
}>;
|
|
1090
|
+
|
|
1059
1091
|
/**
|
|
1060
1092
|
* Cache in-memory + deduplicación de requests en vuelo (misma clave → misma promesa).
|
|
1061
1093
|
* TTL corto pensado para SSR: evita 4–5 GETs repetidos de menú/banners por instancia.
|
|
@@ -1431,6 +1463,16 @@ export declare const HeaderSectionComponent: FC<Props_12>;
|
|
|
1431
1463
|
|
|
1432
1464
|
export declare function HomeCard(props: SectionCardProps_3): JSX.Element;
|
|
1433
1465
|
|
|
1466
|
+
/**
|
|
1467
|
+
* Genera el string HTML de una HomeCard de tipo "imagen" sin pasar por React.
|
|
1468
|
+
* Reemplaza a <HomeCard> para el tipo imagen en LandingTemplate.
|
|
1469
|
+
*
|
|
1470
|
+
* - `priorityHigh` (lo decide el caller) → fetchpriority="high" / loading="eager".
|
|
1471
|
+
* Por default false → low/lazy.
|
|
1472
|
+
* - Sin espacio extra en la clase homeCardImage cuando no hay preRenderClass.
|
|
1473
|
+
*/
|
|
1474
|
+
export declare function homeCardImagenToHTMLString(item: NewListResponseData, index: number, paths: RoutePathConfig, share?: Omit<NoteShare, 'googleProfile'>, priorityHigh?: boolean): string;
|
|
1475
|
+
|
|
1434
1476
|
declare interface ICommonServices {
|
|
1435
1477
|
config?: Config;
|
|
1436
1478
|
imgSizes?: any;
|
|
@@ -1559,6 +1601,14 @@ export declare const isHomePath: (pathname?: string) => boolean;
|
|
|
1559
1601
|
|
|
1560
1602
|
export declare const isPhotoGallery: (news: NewListResponseData) => boolean | undefined;
|
|
1561
1603
|
|
|
1604
|
+
/**
|
|
1605
|
+
* ¿La ruta tiene batch activo? Precedencia:
|
|
1606
|
+
* 1. `CONFIG_batchedFetch.routes[route]` explícito (true/false) gana.
|
|
1607
|
+
* 2. Retro-compat: el legacy `CONFIG_sectionBatchedFetch` solo cubría `seccion`.
|
|
1608
|
+
* 3. Off por default.
|
|
1609
|
+
*/
|
|
1610
|
+
export declare function isRouteBatched(route: string): boolean;
|
|
1611
|
+
|
|
1562
1612
|
export declare class IssuuServices {
|
|
1563
1613
|
private issuuApi;
|
|
1564
1614
|
private api;
|
|
@@ -1666,12 +1716,45 @@ export declare type LibraryConfig = {
|
|
|
1666
1716
|
*/
|
|
1667
1717
|
CONFIG_sectionMetaInfo?: boolean;
|
|
1668
1718
|
/**
|
|
1669
|
-
*
|
|
1670
|
-
*
|
|
1671
|
-
*
|
|
1672
|
-
*
|
|
1719
|
+
* @deprecated Reemplazado por `CONFIG_batchedFetch.routes.seccion`. Se mantiene
|
|
1720
|
+
* como shim de retro-compatibilidad: si `CONFIG_batchedFetch` no está seteado y
|
|
1721
|
+
* este flag es `true`, el batch de sección (solo metadata next/prev) sigue
|
|
1722
|
+
* funcionando con el conteo default. Cuando ambos están, `CONFIG_batchedFetch`
|
|
1723
|
+
* gana. Remover cuando todos los sitios migren a `CONFIG_batchedFetch`.
|
|
1673
1724
|
*/
|
|
1674
1725
|
CONFIG_sectionBatchedFetch?: boolean;
|
|
1726
|
+
/**
|
|
1727
|
+
* [renderizado] Formaliza el fetch de listas de noticias por batches: divide un
|
|
1728
|
+
* único fetch de `config.newsListLimit` ítems en `batches` fetches paralelos
|
|
1729
|
+
* (páginas contiguas del upstream) y los concatena, devolviendo el MISMO
|
|
1730
|
+
* envelope que un fetch único. Es la versión canónica del sistema que vivía
|
|
1731
|
+
* suelto en soyfutbol (`newsListBatches` + `batchFetchRoutes`).
|
|
1732
|
+
*
|
|
1733
|
+
* - `batches`: número de fetches paralelos por lista. Sin la key (o 1) → un
|
|
1734
|
+
* único fetch = comportamiento de master (aditivo, cero cambio por default).
|
|
1735
|
+
* - `routes`: opt-in por ruta (`home`/`seccion`/`tema`/`ultimas-noticias`/
|
|
1736
|
+
* `autor`/...). Solo las rutas en `true` se batchean; el resto hace fetch único.
|
|
1737
|
+
*
|
|
1738
|
+
* Unifica render y metadata: cuando una ruta está activa acá, tanto la lista
|
|
1739
|
+
* visible como la derivación next/prev usan el MISMO `batches`, evitando el
|
|
1740
|
+
* desajuste "next dice que hay más pero la página muestra un solo fetch".
|
|
1741
|
+
* Reemplaza al legacy `CONFIG_sectionBatchedFetch`.
|
|
1742
|
+
*/
|
|
1743
|
+
CONFIG_batchedFetch?: {
|
|
1744
|
+
/** N fetches paralelos por lista. Default efectivo 3 si algo lo activa sin fijarlo. */
|
|
1745
|
+
batches?: number;
|
|
1746
|
+
/** Opt-in por ruta. Claves = route keys de `MetadataDefaultsKeys`. */
|
|
1747
|
+
routes?: Record<string, boolean>;
|
|
1748
|
+
};
|
|
1749
|
+
/**
|
|
1750
|
+
* [render] Cuando es `true`, `LandingTemplate` renderiza las cards de tipo
|
|
1751
|
+
* `imagen` con el fast-render HTML-string (`homeCardImagenToHTMLString`) en
|
|
1752
|
+
* lugar del componente React `<HomeCard>`, ahorrando reconciliación/hidratación.
|
|
1753
|
+
* El fast-render se saltea online cuando la URL de preview no es absoluta y
|
|
1754
|
+
* SIEMPRE cae a `<HomeCard>` en offline (el path HTML-string no pasa por el
|
|
1755
|
+
* hidratador de imágenes offline). Default `false` → usa `<HomeCard>` React.
|
|
1756
|
+
*/
|
|
1757
|
+
CONFIG_landingFastRender?: boolean;
|
|
1675
1758
|
CONFIG_deferBanners?: {
|
|
1676
1759
|
common?: boolean;
|
|
1677
1760
|
middle?: boolean;
|
|
@@ -3113,6 +3196,13 @@ export declare interface ResilientFetchOptions {
|
|
|
3113
3196
|
baseDelayMs?: number;
|
|
3114
3197
|
}
|
|
3115
3198
|
|
|
3199
|
+
/**
|
|
3200
|
+
* Conteo de batches efectivo leído de `getConfig().CONFIG_batchedFetch.batches`.
|
|
3201
|
+
* Default `3` cuando algo activa el batch sin fijar el número (preserva el
|
|
3202
|
+
* comportamiento histórico del path de metadata, cuyo default era 3).
|
|
3203
|
+
*/
|
|
3204
|
+
export declare function resolveBatchCount(): number;
|
|
3205
|
+
|
|
3116
3206
|
export declare function resolveBucketMenuSubtype(path?: string): string;
|
|
3117
3207
|
|
|
3118
3208
|
export declare function resolveBucketOriginUrl(bucket: BucketOriginConfig, servicePrefix: string | undefined, type: 'menu' | 'banners', subtype: string): string;
|