@crtobiasdelsud/portal-ui 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.
- package/CHANGELOG.md +71 -0
- package/README.md +829 -0
- package/package.json +43 -0
- package/src/adapters/AdaptersContext.jsx +28 -0
- package/src/components/ArticleHero/ArticleHero.jsx +73 -0
- package/src/components/ArticleHero/ArticleHero.module.scss +89 -0
- package/src/components/ArticleHero/variants/V0/V0.jsx +29 -0
- package/src/components/ArticleHero/variants/V0/V0.module.scss +51 -0
- package/src/components/ArticleHero/variants/V0Desktop/V0Desktop.jsx +29 -0
- package/src/components/ArticleHero/variants/V0Desktop/V0Desktop.module.scss +54 -0
- package/src/components/ArticleHero/variants/V0Tablet/V0Tablet.jsx +29 -0
- package/src/components/ArticleHero/variants/V0Tablet/V0Tablet.module.scss +49 -0
- package/src/components/ArticleHero/variants/V1/V1.jsx +29 -0
- package/src/components/ArticleHero/variants/V1/V1.module.scss +40 -0
- package/src/components/ArticleHero/variants/V2/V2.jsx +29 -0
- package/src/components/ArticleHero/variants/V2/V2.module.scss +44 -0
- package/src/components/ArticleHero/variants/V3/V3.jsx +25 -0
- package/src/components/ArticleHero/variants/V3/V3.module.scss +41 -0
- package/src/components/ArticleHero/variants/V4/V4.jsx +25 -0
- package/src/components/ArticleHero/variants/V4/V4.module.scss +36 -0
- package/src/components/ArticleHero/variants/V5/V5.jsx +25 -0
- package/src/components/ArticleHero/variants/V5/V5.module.scss +33 -0
- package/src/components/ArticleHeroFull/ArticleHeroFull.jsx +38 -0
- package/src/components/ArticleHeroFull/ArticleHeroFull.module.scss +116 -0
- package/src/components/ArticleSidebar/ArticleSidebar.jsx +28 -0
- package/src/components/ArticleSidebar/ArticleSidebar.module.scss +41 -0
- package/src/components/AuthorBlock/AuthorBlock.jsx +67 -0
- package/src/components/AuthorBlock/AuthorBlock.module.scss +35 -0
- package/src/components/AuthorBlock/variants/V1/V1.jsx +38 -0
- package/src/components/AuthorBlock/variants/V1/V1.module.scss +25 -0
- package/src/components/AuthorBlock/variants/V2/V2.jsx +38 -0
- package/src/components/AuthorBlock/variants/V2/V2.module.scss +10 -0
- package/src/components/AuthorBlock/variants/V3/V3.jsx +30 -0
- package/src/components/AuthorBlock/variants/V3/V3.module.scss +10 -0
- package/src/components/AuthorBlock/variants/V4/V4.jsx +30 -0
- package/src/components/AuthorBlock/variants/V4/V4.module.scss +10 -0
- package/src/components/Banner/Banner.module.scss +70 -0
- package/src/components/Banner/BannerDisplay.jsx +118 -0
- package/src/components/Banner/BannerView.jsx +35 -0
- package/src/components/Blocks/BlockColumns/BlockColumns.jsx +37 -0
- package/src/components/Blocks/BlockColumns/BlockColumns.module.scss +64 -0
- package/src/components/Blocks/BlockColumnsBajada/BlockColumnsBajada.jsx +38 -0
- package/src/components/Blocks/BlockColumnsBajada/BlockColumnsBajada.module.scss +64 -0
- package/src/components/Blocks/BlockMain/BlockMain.jsx +18 -0
- package/src/components/Blocks/BlockMain/BlockMain.module.scss +9 -0
- package/src/components/Blocks/BlockMainNarrow/BlockMainNarrow.jsx +18 -0
- package/src/components/Blocks/BlockMainNarrow/BlockMainNarrow.module.scss +9 -0
- package/src/components/Blocks/BlockMainSidebar/BlockMainSidebar.jsx +33 -0
- package/src/components/Blocks/BlockMainSidebar/BlockMainSidebar.module.scss +44 -0
- package/src/components/Blocks/BlockStack/BlockStack.jsx +8 -0
- package/src/components/Blocks/BlockStack/BlockStack.module.scss +18 -0
- package/src/components/Blocks/WidgetErrorBoundary.jsx +43 -0
- package/src/components/Breadcrumb/Breadcrumb.jsx +24 -0
- package/src/components/Breadcrumb/Breadcrumb.module.scss +33 -0
- package/src/components/Breadcrumb/variants/V1/V1.jsx +39 -0
- package/src/components/Breadcrumb/variants/V1/V1.module.scss +3 -0
- package/src/components/Breadcrumb/variants/V2/V2.jsx +28 -0
- package/src/components/Breadcrumb/variants/V2/V2.module.scss +3 -0
- package/src/components/Breadcrumb/variants/V3/V3.jsx +28 -0
- package/src/components/Breadcrumb/variants/V3/V3.module.scss +3 -0
- package/src/components/Breadcrumb/variants/V4/V4.jsx +28 -0
- package/src/components/Breadcrumb/variants/V4/V4.module.scss +3 -0
- package/src/components/Breadcrumb/variants/V5/V5.jsx +28 -0
- package/src/components/Breadcrumb/variants/V5/V5.module.scss +4 -0
- package/src/components/Cabezal/Cabezal.module.scss +82 -0
- package/src/components/Cabezal/CabezalView.jsx +87 -0
- package/src/components/Cabezal/CardCabezal/CardCabezal.module.scss +403 -0
- package/src/components/Cabezal/CardCabezal/index.jsx +25 -0
- package/src/components/Cabezal/CardCabezal/variants/Amp/Amp.jsx +20 -0
- package/src/components/Cabezal/CardCabezal/variants/Carrusel/Carrusel.jsx +39 -0
- package/src/components/Cabezal/CardCabezal/variants/Carrusel/Carrusel.module.scss +87 -0
- package/src/components/Cabezal/CardCabezal/variants/Compact/Compact.jsx +36 -0
- package/src/components/Cabezal/CardCabezal/variants/Default/Default.jsx +35 -0
- package/src/components/Cabezal/CardCabezal/variants/Featured/Featured.jsx +36 -0
- package/src/components/Cabezal/CardCabezal/variants/FeaturedDuo/FeaturedDuo.jsx +36 -0
- package/src/components/Cabezal/CardCabezal/variants/FeaturedHorizontal/FeaturedHorizontal.jsx +36 -0
- package/src/components/Cabezal/CardCabezal/variants/Medium/Medium.jsx +35 -0
- package/src/components/Cabezal/CardCabezal/variants/Ranked/Ranked.jsx +36 -0
- package/src/components/Cabezal/variants/Carrusel/Carrusel.jsx +167 -0
- package/src/components/Cabezal/variants/Carrusel/Carrusel.module.scss +145 -0
- package/src/components/Cabezal/variants/Categoria/Categoria.jsx +29 -0
- package/src/components/Cabezal/variants/Categoria/Categoria.module.scss +82 -0
- package/src/components/Cabezal/variants/CategoriaDos/CategoriaDos.jsx +29 -0
- package/src/components/Cabezal/variants/CategoriaDos/CategoriaDos.module.scss +99 -0
- package/src/components/Cabezal/variants/Compact/Compact.jsx +24 -0
- package/src/components/Cabezal/variants/Compact/Compact.module.scss +73 -0
- package/src/components/Cabezal/variants/Default/Default.jsx +24 -0
- package/src/components/Cabezal/variants/Default/Default.module.scss +71 -0
- package/src/components/Cabezal/variants/Desktop/Desktop.jsx +45 -0
- package/src/components/Cabezal/variants/Desktop/Desktop.module.scss +113 -0
- package/src/components/Cabezal/variants/Duo/Duo.jsx +24 -0
- package/src/components/Cabezal/variants/Duo/Duo.module.scss +72 -0
- package/src/components/Cabezal/variants/DuoSinCopete/DuoSinCopete.jsx +24 -0
- package/src/components/Cabezal/variants/DuoSinCopete/DuoSinCopete.module.scss +72 -0
- package/src/components/Cabezal/variants/Horizontal/Horizontal.jsx +24 -0
- package/src/components/Cabezal/variants/Horizontal/Horizontal.module.scss +64 -0
- package/src/components/Cabezal/variants/LeeAdemas/LeeAdemas.jsx +53 -0
- package/src/components/Cabezal/variants/LeeAdemas/LeeAdemas.module.scss +103 -0
- package/src/components/Cabezal/variants/LoQueSeLee/LoQueSeLee.jsx +48 -0
- package/src/components/Cabezal/variants/LoQueSeLee/LoQueSeLee.module.scss +103 -0
- package/src/components/Cabezal/variants/LoQueSeLee/LoQueSeLeeSkeleton.jsx +21 -0
- package/src/components/Cabezal/variants/LoQueSeLee/LoQueSeLeeSkeleton.module.scss +34 -0
- package/src/components/Cabezal/variants/Medium/Medium.jsx +24 -0
- package/src/components/Cabezal/variants/Medium/Medium.module.scss +78 -0
- package/src/components/Cabezal/variants/Mobile/Mobile.jsx +48 -0
- package/src/components/Cabezal/variants/Mobile/Mobile.module.scss +64 -0
- package/src/components/Cabezal/variants/Ranking/Ranking.jsx +24 -0
- package/src/components/Cabezal/variants/Ranking/Ranking.module.scss +79 -0
- package/src/components/Cabezal/variants/SeguiLeyendo/SeguiLeyendo.jsx +38 -0
- package/src/components/Cabezal/variants/SeguiLeyendo/SeguiLeyendo.module.scss +52 -0
- package/src/components/Cabezal/variants/Tablet/Tablet.jsx +45 -0
- package/src/components/Cabezal/variants/Tablet/Tablet.module.scss +113 -0
- package/src/components/Cabezal/variants/Tres/Tres.jsx +24 -0
- package/src/components/Cabezal/variants/Tres/Tres.module.scss +74 -0
- package/src/components/Cabezal/variants/UnaDetallada/UnaDetallada.jsx +29 -0
- package/src/components/Cabezal/variants/UnaDetallada/UnaDetallada.module.scss +86 -0
- package/src/components/Cards/ArticleBody/ArticleBody.module.scss +9 -0
- package/src/components/Cards/ArticleBody/ArticleBodyView.jsx +23 -0
- package/src/components/Cards/ArticleCard/ArticleCard.jsx +111 -0
- package/src/components/Cards/ArticleCard/ArticleCard.module.scss +129 -0
- package/src/components/Cards/Bajada/Bajada.jsx +41 -0
- package/src/components/Cards/Bajada/Bajada.module.scss +113 -0
- package/src/components/Cards/Bajada/variants/V1/V1.jsx +20 -0
- package/src/components/Cards/Bajada/variants/V1/V1.module.scss +2 -0
- package/src/components/Cards/Bajada/variants/V2/V2.jsx +20 -0
- package/src/components/Cards/Bajada/variants/V2/V2.module.scss +2 -0
- package/src/components/Clima/Clima.module.scss +93 -0
- package/src/components/Clima/ClimaView.jsx +45 -0
- package/src/components/DateTime/DateTime.jsx +26 -0
- package/src/components/DateTime/DateTime.module.scss +29 -0
- package/src/components/DolarTicker/DolarTicker.jsx +137 -0
- package/src/components/DolarTicker/DolarTicker.module.scss +249 -0
- package/src/components/DolarTicker/arrow_back_ios_black.svg +3 -0
- package/src/components/DolarTicker/arrow_back_ios_white.svg +3 -0
- package/src/components/DolarTicker/arrow_downward.svg +3 -0
- package/src/components/DolarTicker/arrow_upward.svg +3 -0
- package/src/components/DolarTickerOriginal/DolarTickerOriginal.jsx +137 -0
- package/src/components/DolarTickerOriginal/DolarTickerOriginal.module.scss +235 -0
- package/src/components/DolarTickerOriginal/arrow_back_ios_black.svg +3 -0
- package/src/components/DolarTickerOriginal/arrow_back_ios_white.svg +3 -0
- package/src/components/DolarTickerOriginal/arrow_downward.svg +3 -0
- package/src/components/DolarTickerOriginal/arrow_upward.svg +3 -0
- package/src/components/EditorOutput/EditorOutput.jsx +303 -0
- package/src/components/EditorOutput/EditorOutput.module.scss +310 -0
- package/src/components/EditorOutputFull/EditorOutputFull.jsx +303 -0
- package/src/components/EditorOutputFull/EditorOutputFull.module.scss +317 -0
- package/src/components/Feed/Feed.module.scss +77 -0
- package/src/components/Feed/FeedView.jsx +25 -0
- package/src/components/Feed/variants/V1/V1.jsx +34 -0
- package/src/components/Feed/variants/V1/V1.module.scss +39 -0
- package/src/components/Feed/variants/V2/V2.jsx +36 -0
- package/src/components/Feed/variants/V2/V2.module.scss +72 -0
- package/src/components/Footers/FooterSimple/FooterSimple.jsx +170 -0
- package/src/components/Footers/FooterSimple/FooterSimple.module.scss +256 -0
- package/src/components/Headers/HeaderSimple/CategoriesBar/CategoriesBar.jsx +104 -0
- package/src/components/Headers/HeaderSimple/CategoriesBar/CategoriesBar.module.scss +112 -0
- package/src/components/Headers/HeaderSimple/DrawerContext/DrawerContext.jsx +44 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleAmp/HeaderSimpleAmp.jsx +95 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleAmp/HeaderSimpleAmp.module.scss +2 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleDesktop/HeaderSimpleDesktop.jsx +93 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleDesktop/HeaderSimpleDesktop.module.scss +121 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleDesktopCompact/HeaderSimpleDesktopCompact.jsx +96 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleDesktopCompact/HeaderSimpleDesktopCompact.module.scss +137 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleDesktopCompact/SearchTrigger.jsx +17 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleMobile/HeaderSimpleMobile.jsx +89 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleMobile/HeaderSimpleMobile.module.scss +76 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleSwitch/HeaderSimpleSwitch.jsx +47 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleSwitch/HeaderSwitch.jsx +32 -0
- package/src/components/Headers/HeaderSimple/HeaderSimpleSwitch/HeaderSwitch.module.scss +46 -0
- package/src/components/Headers/HeaderSimple/LiveBanner/LiveBanner.jsx +79 -0
- package/src/components/Headers/HeaderSimple/LiveBanner/LiveBanner.module.scss +102 -0
- package/src/components/Headers/HeaderSimple/MenuDrawer/MenuDrawer.jsx +217 -0
- package/src/components/Headers/HeaderSimple/MenuDrawer/MenuDrawer.module.scss +243 -0
- package/src/components/Headers/HeaderSimple/_headerUtils.js +48 -0
- package/src/components/Headers/HeaderSimple/_logos/mendoza-claro.svg +43 -0
- package/src/components/Headers/HeaderSimple/_logos/mendoza-oscuro.svg +43 -0
- package/src/components/Hero/Hero.module.scss +131 -0
- package/src/components/Hero/HeroView.jsx +48 -0
- package/src/components/Recommended/Recommended.module.scss +119 -0
- package/src/components/Recommended/RecommendedView.jsx +23 -0
- package/src/components/ShareBlock/ShareBlock.jsx +75 -0
- package/src/components/ShareBlock/ShareBlock.module.scss +60 -0
- package/src/components/ShareBlock/variants/V1/V1.jsx +27 -0
- package/src/components/ShareBlock/variants/V1/V1.module.scss +2 -0
- package/src/components/ShareBlock/variants/V2/V2.jsx +27 -0
- package/src/components/ShareBlock/variants/V2/V2.module.scss +3 -0
- package/src/components/SpeechButton/SpeechButton.jsx +60 -0
- package/src/components/SpeechButton/SpeechButton.module.scss +49 -0
- package/src/components/SpeechPlayerBar/SpeechPlayerBar.jsx +92 -0
- package/src/components/SpeechPlayerBar/SpeechPlayerBar.module.scss +180 -0
- package/src/components/SpeechProviderWrapper/SpeechProviderWrapper.jsx +13 -0
- package/src/components/TextWrap/TextWrap.module.scss +72 -0
- package/src/components/TextWrap/TextWrapView.jsx +23 -0
- package/src/components/UI/AspectImage/AspectImage.jsx +53 -0
- package/src/components/UI/FocalImage/FocalImage.jsx +36 -0
- package/src/components/UI/Icon/Icon.jsx +40 -0
- package/src/components/UI/Icon/Icon.module.scss +82 -0
- package/src/components/UI/IconSmall/IconSmall.jsx +40 -0
- package/src/components/UI/IconSmall/IconSmall.module.scss +82 -0
- package/src/components/UI/PageWrapper/PageWrapper.jsx +9 -0
- package/src/components/UI/PageWrapper/PageWrapper.module.scss +5 -0
- package/src/components/UI/ToolTip/ToolTip.jsx +49 -0
- package/src/components/UI/ToolTip/ToolTip.module.scss +26 -0
- package/src/components/UI/index.js +6 -0
- package/src/constants/imageSizes.js +10 -0
- package/src/context/SiteConfigContext.jsx +79 -0
- package/src/context/SpeechContext.jsx +138 -0
- package/src/data/ArticlePoolContext.jsx +83 -0
- package/src/data/index.js +7 -0
- package/src/data/useArticles.js +67 -0
- package/src/index.js +101 -0
- package/src/styles/index.scss +3 -0
- package/src/styles/mixins/_helpers.scss +6 -0
- package/src/styles/mixins/_media.scss +30 -0
- package/src/styles/variables/_breakpoint.scss +4 -0
- package/src/styles/variables/_colors.scss +4 -0
- package/src/styles/variables/_spacing.scss +0 -0
- package/src/utils/colorContrast.js +64 -0
- package/src/utils/fechaHora.js +26 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 1.0.0 — 2026-05-14
|
|
4
|
+
|
|
5
|
+
Migración 100% completa. Paridad total entre portal y CMS — todos los
|
|
6
|
+
componentes "espejo" viven en este paquete; las apps sólo tienen data widgets
|
|
7
|
+
(thin wrappers que fetchean + renderizan el View).
|
|
8
|
+
|
|
9
|
+
### Fase 2 completa — Vistas puras
|
|
10
|
+
- **UI primitives**: `AspectImage`, `FocalImage`, `Icon`, `IconSmall`,
|
|
11
|
+
`PageWrapper`, `ToolTip`
|
|
12
|
+
- **DateTime** + helper `getFechaHora()`
|
|
13
|
+
- **SiteConfigContext** — `SiteConfigProvider`, `PreviewThemeProvider`,
|
|
14
|
+
`useSiteConfig`, `useTheme`, `useRawConfig`, `useCategories`,
|
|
15
|
+
`useBanners`, `useComputed`, `useInfoPages`
|
|
16
|
+
- **AuthorBlock** (×4), **Breadcrumb** (×5), **ShareBlock** (×2)
|
|
17
|
+
- **Cards**: `ArticleCard` (con tooltip), `Bajada` (×2)
|
|
18
|
+
- **Headers**: `HeaderSimpleSwitch` (con `forceMode` para CMS preview),
|
|
19
|
+
`HeaderSimpleDesktop`, `HeaderSimpleDesktopCompact`, `HeaderSimpleMobile`,
|
|
20
|
+
`HeaderSimpleAmp` + sub-componentes (`CategoriesBar`, `LiveBanner`,
|
|
21
|
+
`MenuDrawer`, `HeaderSwitch`, `SearchTrigger`, `DrawerContext`)
|
|
22
|
+
- **Footers**: `FooterSimple`
|
|
23
|
+
- **Blocks**: `BlockColumns`, `BlockColumnsBajada`, `BlockMain`,
|
|
24
|
+
`BlockMainNarrow`, `BlockMainSidebar`, `BlockStack`, `WidgetErrorBoundary`
|
|
25
|
+
- **Article-detail**: `ArticleHero` (×8 variants V0/V0Tablet/V0Desktop/V1-V5),
|
|
26
|
+
`ArticleHeroFull`, `ArticleSidebar`
|
|
27
|
+
- **EditorOutput / EditorOutputFull** — renderer de Editor.js (server + client),
|
|
28
|
+
con soporte AMP. Exporta `EditorBlocks` para uso aislado.
|
|
29
|
+
- **Speech**: `SpeechProvider`, `SpeechProviderWrapper`, `SpeechButton`,
|
|
30
|
+
`SpeechPlayerBar`, hook `useSpeech` — Web Speech API + contexto propio
|
|
31
|
+
|
|
32
|
+
### Fase 3 — Split data/view en widgets que tocan red
|
|
33
|
+
- **FeedView** + variants V1/V2
|
|
34
|
+
- **HeroView**
|
|
35
|
+
- **RecommendedView** (usa el `ArticleCard` interno)
|
|
36
|
+
- **CabezalView** + 18 variants top-level + 9 sub-variants de `CardCabezal`
|
|
37
|
+
- **BannerView** + **BannerDisplay** (client, tracking via adapter fetcher)
|
|
38
|
+
- **ClimaView**
|
|
39
|
+
- **TextWrapView** + **ArticleBodyView** — renderean un artículo via `EditorOutput`
|
|
40
|
+
- **DolarTicker** + **DolarTickerOriginal** — auto-fetchean su data internamente
|
|
41
|
+
|
|
42
|
+
### Adapter pattern
|
|
43
|
+
- `useAdapters().Link` / `.Image` / `.fetcher` para que el paquete no dependa
|
|
44
|
+
de Next/Vite directamente
|
|
45
|
+
- `MenuDrawer` cambió `router.push` por `<form action="/search">` nativo
|
|
46
|
+
para no necesitar useRouter
|
|
47
|
+
- Logos legacy de Mendoza incluidos en `components/Headers/HeaderSimple/_logos/`
|
|
48
|
+
(TODO: quitar cuando todos los sites usen `logoUrl` directo)
|
|
49
|
+
|
|
50
|
+
### Utils & constants exportados
|
|
51
|
+
- `getFechaHora`, `contrastRatio`, `hexToCssFilter`, `ensureContrast`,
|
|
52
|
+
`IMAGE_SIZES`
|
|
53
|
+
|
|
54
|
+
### Article pool
|
|
55
|
+
- `createArticlePool(fetcher, opts?)` — factory pura
|
|
56
|
+
- `ArticlePoolProvider` + `useArticlePool()` — uso client-side
|
|
57
|
+
- `useArticles({ limit, endpoint?, categoria? })` — hook universal
|
|
58
|
+
|
|
59
|
+
## 0.3.0 — 2026-05-14
|
|
60
|
+
|
|
61
|
+
Phase 3 — Feed/Hero/Recommended/Cabezal split data/view inicial. Apps consumen
|
|
62
|
+
via shims de 1 línea para no tocar 40+ callers.
|
|
63
|
+
|
|
64
|
+
## 0.2.0 — 2026-05-14
|
|
65
|
+
|
|
66
|
+
Phase 2 inicial: UI primitives + DateTime + SiteConfigContext + AuthorBlock/
|
|
67
|
+
Breadcrumb/ShareBlock + Cards.
|
|
68
|
+
|
|
69
|
+
## 0.1.0 — 2026-05-14
|
|
70
|
+
|
|
71
|
+
Setup — adapters, article pool, scaffold.
|