@eduardoalvarez/arrecife 0.5.0 → 0.5.1
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 +7 -0
- package/dist/index.cjs +35 -29
- package/dist/index.d.cts +5 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +35 -29
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.5.1](https://github.com/Proskynete/arrecife/compare/v0.5.0...v0.5.1) (2026-08-31)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### 🐛 Correcciones
|
|
7
|
+
|
|
8
|
+
* **components:** la firma del pie va con la primera fila, no la última ([1a854ab](https://github.com/Proskynete/arrecife/commit/1a854ab7d71e66ab4998802ae3dc498f96e47b57))
|
|
9
|
+
|
|
3
10
|
## [0.5.0](https://github.com/Proskynete/arrecife/compare/v0.4.0...v0.5.0) (2026-08-31)
|
|
4
11
|
|
|
5
12
|
|
package/dist/index.cjs
CHANGED
|
@@ -3121,37 +3121,43 @@ function Footer({
|
|
|
3121
3121
|
className,
|
|
3122
3122
|
...props
|
|
3123
3123
|
}) {
|
|
3124
|
+
const firma = /* @__PURE__ */ jsxRuntime.jsxs(Text, { variant: "meta", tone: "muted", as: "p", className: "ml-auto shrink-0", children: [
|
|
3125
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { "aria-hidden": "true", className: "text-accent", children: [
|
|
3126
|
+
"$",
|
|
3127
|
+
" "
|
|
3128
|
+
] }),
|
|
3129
|
+
"cd ~/",
|
|
3130
|
+
naming.domain,
|
|
3131
|
+
"/",
|
|
3132
|
+
year
|
|
3133
|
+
] });
|
|
3134
|
+
const filas = [
|
|
3135
|
+
brand2 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center", children: brand2 }, "marca") : null,
|
|
3136
|
+
children ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "gap-step-md flex flex-wrap items-center", children }, "enlaces") : null,
|
|
3137
|
+
social && social.length > 0 ? (
|
|
3138
|
+
// 18px de separación, del documento. No es un escalón de `spacing`:
|
|
3139
|
+
// es el ritmo de una fila de iconos, no el de una página.
|
|
3140
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "flex items-center gap-[18px]", children: social.map((red) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3141
|
+
"a",
|
|
3142
|
+
{
|
|
3143
|
+
href: red.href,
|
|
3144
|
+
"aria-label": red.label,
|
|
3145
|
+
className: cn(
|
|
3146
|
+
"text-text-muted hover:text-accent transition-standard block cursor-pointer text-[19px]",
|
|
3147
|
+
"rounded-chip focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent"
|
|
3148
|
+
),
|
|
3149
|
+
children: red.icon
|
|
3150
|
+
}
|
|
3151
|
+
) }, red.href)) }, "redes")
|
|
3152
|
+
) : null
|
|
3153
|
+
].filter(Boolean);
|
|
3154
|
+
const [primera, ...resto] = filas;
|
|
3124
3155
|
return /* @__PURE__ */ jsxRuntime.jsx("footer", { className: cn("border-hairline w-full border-t", className), ...props, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "max-w-wide px-step-md py-step-xl gap-step-lg mx-auto flex flex-col", children: [
|
|
3125
|
-
brand2 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center", children: brand2 }) : null,
|
|
3126
|
-
children ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "gap-step-md flex flex-wrap items-center", children }) : null,
|
|
3127
3156
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "gap-step-md flex flex-wrap items-center", children: [
|
|
3128
|
-
|
|
3129
|
-
|
|
3130
|
-
|
|
3131
|
-
|
|
3132
|
-
"a",
|
|
3133
|
-
{
|
|
3134
|
-
href: red.href,
|
|
3135
|
-
"aria-label": red.label,
|
|
3136
|
-
className: cn(
|
|
3137
|
-
"text-text-muted hover:text-accent transition-standard block cursor-pointer text-[19px]",
|
|
3138
|
-
"rounded-chip focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent"
|
|
3139
|
-
),
|
|
3140
|
-
children: red.icon
|
|
3141
|
-
}
|
|
3142
|
-
) }, red.href)) })
|
|
3143
|
-
) : null,
|
|
3144
|
-
/* @__PURE__ */ jsxRuntime.jsxs(Text, { variant: "meta", tone: "muted", as: "p", className: "ml-auto", children: [
|
|
3145
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { "aria-hidden": "true", className: "text-accent", children: [
|
|
3146
|
-
"$",
|
|
3147
|
-
" "
|
|
3148
|
-
] }),
|
|
3149
|
-
"cd ~/",
|
|
3150
|
-
naming.domain,
|
|
3151
|
-
"/",
|
|
3152
|
-
year
|
|
3153
|
-
] })
|
|
3154
|
-
] })
|
|
3157
|
+
primera ?? null,
|
|
3158
|
+
firma
|
|
3159
|
+
] }),
|
|
3160
|
+
resto
|
|
3155
3161
|
] }) });
|
|
3156
3162
|
}
|
|
3157
3163
|
function FooterLink({ asChild = false, className, ...props }) {
|
package/dist/index.d.cts
CHANGED
|
@@ -964,6 +964,11 @@ declare function EventCalendar({ events, onCreateEvent, onUpdateEvent, onDeleteE
|
|
|
964
964
|
* Los enlaces de redes son iconos SIN texto visible, así que `aria-label` no es
|
|
965
965
|
* una mejora: es lo único que los hace legibles. Por eso es obligatorio en el
|
|
966
966
|
* tipo y no una prop opcional que se olvide.
|
|
967
|
+
*
|
|
968
|
+
* La firma va arriba a la derecha, al nivel de la PRIMERA fila que exista, no
|
|
969
|
+
* al final del bloque. Es una decisión de composición y no de estilo: el pie
|
|
970
|
+
* puede llevar marca, enlaces y redes, y colgar la firma de una fila concreta
|
|
971
|
+
* la hunde en cuanto esa fila deja de ser la primera.
|
|
967
972
|
*/
|
|
968
973
|
type Red = {
|
|
969
974
|
/** Lo que reemplaza al texto visible. Obligatorio. */
|
package/dist/index.d.ts
CHANGED
|
@@ -964,6 +964,11 @@ declare function EventCalendar({ events, onCreateEvent, onUpdateEvent, onDeleteE
|
|
|
964
964
|
* Los enlaces de redes son iconos SIN texto visible, así que `aria-label` no es
|
|
965
965
|
* una mejora: es lo único que los hace legibles. Por eso es obligatorio en el
|
|
966
966
|
* tipo y no una prop opcional que se olvide.
|
|
967
|
+
*
|
|
968
|
+
* La firma va arriba a la derecha, al nivel de la PRIMERA fila que exista, no
|
|
969
|
+
* al final del bloque. Es una decisión de composición y no de estilo: el pie
|
|
970
|
+
* puede llevar marca, enlaces y redes, y colgar la firma de una fila concreta
|
|
971
|
+
* la hunde en cuanto esa fila deja de ser la primera.
|
|
967
972
|
*/
|
|
968
973
|
type Red = {
|
|
969
974
|
/** Lo que reemplaza al texto visible. Obligatorio. */
|
package/dist/index.js
CHANGED
|
@@ -2584,37 +2584,43 @@ function Footer({
|
|
|
2584
2584
|
className,
|
|
2585
2585
|
...props
|
|
2586
2586
|
}) {
|
|
2587
|
+
const firma = /* @__PURE__ */ jsxs(Text, { variant: "meta", tone: "muted", as: "p", className: "ml-auto shrink-0", children: [
|
|
2588
|
+
/* @__PURE__ */ jsxs("span", { "aria-hidden": "true", className: "text-accent", children: [
|
|
2589
|
+
"$",
|
|
2590
|
+
" "
|
|
2591
|
+
] }),
|
|
2592
|
+
"cd ~/",
|
|
2593
|
+
naming.domain,
|
|
2594
|
+
"/",
|
|
2595
|
+
year
|
|
2596
|
+
] });
|
|
2597
|
+
const filas = [
|
|
2598
|
+
brand2 ? /* @__PURE__ */ jsx("div", { className: "flex items-center", children: brand2 }, "marca") : null,
|
|
2599
|
+
children ? /* @__PURE__ */ jsx("div", { className: "gap-step-md flex flex-wrap items-center", children }, "enlaces") : null,
|
|
2600
|
+
social && social.length > 0 ? (
|
|
2601
|
+
// 18px de separación, del documento. No es un escalón de `spacing`:
|
|
2602
|
+
// es el ritmo de una fila de iconos, no el de una página.
|
|
2603
|
+
/* @__PURE__ */ jsx("ul", { className: "flex items-center gap-[18px]", children: social.map((red) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
|
|
2604
|
+
"a",
|
|
2605
|
+
{
|
|
2606
|
+
href: red.href,
|
|
2607
|
+
"aria-label": red.label,
|
|
2608
|
+
className: cn(
|
|
2609
|
+
"text-text-muted hover:text-accent transition-standard block cursor-pointer text-[19px]",
|
|
2610
|
+
"rounded-chip focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent"
|
|
2611
|
+
),
|
|
2612
|
+
children: red.icon
|
|
2613
|
+
}
|
|
2614
|
+
) }, red.href)) }, "redes")
|
|
2615
|
+
) : null
|
|
2616
|
+
].filter(Boolean);
|
|
2617
|
+
const [primera, ...resto] = filas;
|
|
2587
2618
|
return /* @__PURE__ */ jsx("footer", { className: cn("border-hairline w-full border-t", className), ...props, children: /* @__PURE__ */ jsxs("div", { className: "max-w-wide px-step-md py-step-xl gap-step-lg mx-auto flex flex-col", children: [
|
|
2588
|
-
brand2 ? /* @__PURE__ */ jsx("div", { className: "flex items-center", children: brand2 }) : null,
|
|
2589
|
-
children ? /* @__PURE__ */ jsx("div", { className: "gap-step-md flex flex-wrap items-center", children }) : null,
|
|
2590
2619
|
/* @__PURE__ */ jsxs("div", { className: "gap-step-md flex flex-wrap items-center", children: [
|
|
2591
|
-
|
|
2592
|
-
|
|
2593
|
-
|
|
2594
|
-
|
|
2595
|
-
"a",
|
|
2596
|
-
{
|
|
2597
|
-
href: red.href,
|
|
2598
|
-
"aria-label": red.label,
|
|
2599
|
-
className: cn(
|
|
2600
|
-
"text-text-muted hover:text-accent transition-standard block cursor-pointer text-[19px]",
|
|
2601
|
-
"rounded-chip focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent"
|
|
2602
|
-
),
|
|
2603
|
-
children: red.icon
|
|
2604
|
-
}
|
|
2605
|
-
) }, red.href)) })
|
|
2606
|
-
) : null,
|
|
2607
|
-
/* @__PURE__ */ jsxs(Text, { variant: "meta", tone: "muted", as: "p", className: "ml-auto", children: [
|
|
2608
|
-
/* @__PURE__ */ jsxs("span", { "aria-hidden": "true", className: "text-accent", children: [
|
|
2609
|
-
"$",
|
|
2610
|
-
" "
|
|
2611
|
-
] }),
|
|
2612
|
-
"cd ~/",
|
|
2613
|
-
naming.domain,
|
|
2614
|
-
"/",
|
|
2615
|
-
year
|
|
2616
|
-
] })
|
|
2617
|
-
] })
|
|
2620
|
+
primera ?? null,
|
|
2621
|
+
firma
|
|
2622
|
+
] }),
|
|
2623
|
+
resto
|
|
2618
2624
|
] }) });
|
|
2619
2625
|
}
|
|
2620
2626
|
function FooterLink({ asChild = false, className, ...props }) {
|
package/package.json
CHANGED