@xscriptor/xcomponents 0.1.0 → 0.1.2

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 (106) hide show
  1. package/README.md +1 -0
  2. package/dist/{chunk-QCMWPIG7.mjs → chunk-BXVG4SYP.mjs} +101 -3
  3. package/dist/chunk-BXVG4SYP.mjs.map +7 -0
  4. package/dist/{chunk-42XPBYTL.mjs → chunk-FW47JGYZ.mjs} +122 -4
  5. package/dist/chunk-FW47JGYZ.mjs.map +7 -0
  6. package/dist/chunk-FZRTAML3.mjs +1 -1
  7. package/dist/chunk-FZRTAML3.mjs.map +7 -1
  8. package/dist/{chunk-5G4P2E76.mjs → chunk-IK2UCTCM.mjs} +46 -6
  9. package/dist/chunk-IK2UCTCM.mjs.map +7 -0
  10. package/dist/{chunk-U27ZVCP7.mjs → chunk-WE7QZGVP.mjs} +45 -2
  11. package/dist/chunk-WE7QZGVP.mjs.map +7 -0
  12. package/dist/{chunk-2OAXRRVQ.mjs → chunk-XB3UGHSF.mjs} +94 -3
  13. package/dist/chunk-XB3UGHSF.mjs.map +7 -0
  14. package/dist/{chunk-NY22GB3E.mjs → chunk-ZDMG7X6H.mjs} +57 -2
  15. package/dist/chunk-ZDMG7X6H.mjs.map +7 -0
  16. package/dist/components/content/index.css +65 -66
  17. package/dist/components/content/index.css.map +7 -1
  18. package/dist/components/content/index.d.ts +2 -17
  19. package/dist/components/content/index.js +46 -10
  20. package/dist/components/content/index.js.map +7 -1
  21. package/dist/components/content/index.mjs +2 -2
  22. package/dist/components/content/index.mjs.map +7 -1
  23. package/dist/components/content/xinteractivephrase/XInteractivePhrase.d.ts +13 -0
  24. package/dist/components/content/xinteractivephrase/index.d.ts +3 -0
  25. package/dist/components/forms/index.css +114 -116
  26. package/dist/components/forms/index.css.map +7 -1
  27. package/dist/components/forms/index.d.ts +4 -68
  28. package/dist/components/forms/index.js +101 -8
  29. package/dist/components/forms/index.js.map +7 -1
  30. package/dist/components/forms/index.mjs +2 -2
  31. package/dist/components/forms/index.mjs.map +7 -1
  32. package/dist/components/forms/xcontactform/XContactForm.d.ts +42 -0
  33. package/dist/components/forms/xcontactform/index.d.ts +3 -0
  34. package/dist/components/forms/xnewsletter/XNewsletter.d.ts +21 -0
  35. package/dist/components/forms/xnewsletter/index.d.ts +3 -0
  36. package/dist/components/gallery/index.css +108 -111
  37. package/dist/components/gallery/index.css.map +7 -1
  38. package/dist/components/gallery/index.d.ts +4 -29
  39. package/dist/components/gallery/index.js +94 -8
  40. package/dist/components/gallery/index.js.map +7 -1
  41. package/dist/components/gallery/index.mjs +2 -2
  42. package/dist/components/gallery/index.mjs.map +7 -1
  43. package/dist/components/gallery/xmicrogallerytext/XMicroGalleryText.d.ts +15 -0
  44. package/dist/components/gallery/xmicrogallerytext/index.d.ts +3 -0
  45. package/dist/components/gallery/xstaticgallery/XStaticGallery.d.ts +10 -0
  46. package/dist/components/gallery/xstaticgallery/index.d.ts +3 -0
  47. package/dist/components/index.css +537 -535
  48. package/dist/components/index.css.map +7 -1
  49. package/dist/components/index.d.ts +6 -8
  50. package/dist/components/index.js +460 -35
  51. package/dist/components/index.js.map +7 -1
  52. package/dist/components/index.mjs +12 -12
  53. package/dist/components/index.mjs.map +7 -1
  54. package/dist/components/layout/index.css +90 -82
  55. package/dist/components/layout/index.css.map +7 -1
  56. package/dist/components/layout/index.d.ts +6 -55
  57. package/dist/components/layout/index.js +122 -10
  58. package/dist/components/layout/index.js.map +7 -1
  59. package/dist/components/layout/index.mjs +2 -2
  60. package/dist/components/layout/index.mjs.map +7 -1
  61. package/dist/components/layout/xfooter/XFooter.d.ts +24 -0
  62. package/dist/components/layout/xfooter/index.d.ts +3 -0
  63. package/dist/components/layout/xseparator/XSeparator.d.ts +13 -0
  64. package/dist/components/layout/xseparator/index.d.ts +3 -0
  65. package/dist/components/layout/xzigzaglayout/XZigZagLayout.d.ts +12 -0
  66. package/dist/components/layout/xzigzaglayout/index.d.ts +3 -0
  67. package/dist/components/navigation/index.css +121 -121
  68. package/dist/components/navigation/index.css.map +7 -1
  69. package/dist/components/navigation/index.d.ts +2 -76
  70. package/dist/components/navigation/index.js +57 -6
  71. package/dist/components/navigation/index.js.map +7 -1
  72. package/dist/components/navigation/index.mjs +2 -2
  73. package/dist/components/navigation/index.mjs.map +7 -1
  74. package/dist/components/navigation/{index.d.mts → xnavbar/XNavbar.d.ts} +6 -10
  75. package/dist/components/navigation/xnavbar/index.d.ts +3 -0
  76. package/dist/components/social/index.css +44 -44
  77. package/dist/components/social/index.css.map +7 -1
  78. package/dist/components/social/index.d.ts +2 -55
  79. package/dist/components/social/index.js +45 -13
  80. package/dist/components/social/index.js.map +7 -1
  81. package/dist/components/social/index.mjs +2 -2
  82. package/dist/components/social/index.mjs.map +7 -1
  83. package/dist/components/social/xsocialcontact/XSocialContact.d.ts +30 -0
  84. package/dist/components/social/xsocialcontact/XSocialIcons.d.ts +21 -0
  85. package/dist/components/social/xsocialcontact/index.d.ts +5 -0
  86. package/dist/index.css +537 -535
  87. package/dist/index.css.map +7 -1
  88. package/dist/index.d.ts +1 -8
  89. package/dist/index.js +463 -38
  90. package/dist/index.js.map +7 -1
  91. package/dist/index.mjs +12 -12
  92. package/dist/index.mjs.map +7 -1
  93. package/package.json +7 -4
  94. package/dist/chunk-2OAXRRVQ.mjs.map +0 -1
  95. package/dist/chunk-42XPBYTL.mjs.map +0 -1
  96. package/dist/chunk-5G4P2E76.mjs.map +0 -1
  97. package/dist/chunk-NY22GB3E.mjs.map +0 -1
  98. package/dist/chunk-QCMWPIG7.mjs.map +0 -1
  99. package/dist/chunk-U27ZVCP7.mjs.map +0 -1
  100. package/dist/components/content/index.d.mts +0 -17
  101. package/dist/components/forms/index.d.mts +0 -68
  102. package/dist/components/gallery/index.d.mts +0 -29
  103. package/dist/components/index.d.mts +0 -8
  104. package/dist/components/layout/index.d.mts +0 -55
  105. package/dist/components/social/index.d.mts +0 -55
  106. package/dist/index.d.mts +0 -8
@@ -37,8 +37,48 @@ module.exports = __toCommonJS(content_exports);
37
37
  // src/components/content/xinteractivephrase/XInteractivePhrase.tsx
38
38
  var import_react = __toESM(require("react"));
39
39
 
40
+ // esbuild-css-modules-plugin-ns-js::src/components/content/xinteractivephrase/XInteractivePhrase.module.css:injector.js
41
+ var content = __content_placeholder__;
42
+ var digest = __digest_placeholder__;
43
+ var inject = () => {
44
+ setTimeout(() => {
45
+ if (!globalThis.document) {
46
+ return;
47
+ }
48
+ let root = globalThis.document.querySelector("head");
49
+ if (root && root.shadowRoot) {
50
+ root = root.shadowRoot;
51
+ }
52
+ if (!root) {
53
+ root = globalThis.document.head;
54
+ }
55
+ let container = root.querySelector("#_" + digest);
56
+ if (!container) {
57
+ container = globalThis.document.createElement("style");
58
+ container.id = "_" + digest;
59
+ const text = globalThis.document.createTextNode(content);
60
+ container.appendChild(text);
61
+ root.appendChild(container);
62
+ }
63
+ }, 0);
64
+ };
65
+
40
66
  // src/components/content/xinteractivephrase/XInteractivePhrase.module.css
41
- var XInteractivePhrase_default = {};
67
+ var XInteractivePhrase_default = new Proxy({
68
+ "blurEffect": "XInteractivePhrase-module__blurEffect_fdhnVG__012",
69
+ "buttonEffect": "XInteractivePhrase-module__buttonEffect_fdhnVG__012",
70
+ "container": "XInteractivePhrase-module__container_fdhnVG__012",
71
+ "isHidden": "XInteractivePhrase-module__isHidden_fdhnVG__012",
72
+ "isVisible": "XInteractivePhrase-module__isVisible_fdhnVG__012",
73
+ "lineBreak": "XInteractivePhrase-module__lineBreak_fdhnVG__012",
74
+ "title": "XInteractivePhrase-module__title_fdhnVG__012",
75
+ "underlineEffect": "XInteractivePhrase-module__underlineEffect_fdhnVG__012"
76
+ }, {
77
+ get: function(source, key) {
78
+ inject();
79
+ return source[key];
80
+ }
81
+ });
42
82
 
43
83
  // src/components/content/xinteractivephrase/XInteractivePhrase.tsx
44
84
  var import_jsx_runtime = require("react/jsx-runtime");
@@ -76,9 +116,9 @@ function XInteractivePhrase({
76
116
  } else if (word.type === "blur2") {
77
117
  dynamicClass = `${XInteractivePhrase_default.blurEffect} ${active2 ? XInteractivePhrase_default.isVisible : XInteractivePhrase_default.isHidden}`;
78
118
  }
79
- let content = word.text;
80
- if (word.italic) content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("em", { children: content });
81
- if (word.bold) content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("strong", { children: content });
119
+ let content2 = word.text;
120
+ if (word.italic) content2 = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("em", { children: content2 });
121
+ if (word.bold) content2 = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("strong", { children: content2 });
82
122
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react.default.Fragment, { children: [
83
123
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
84
124
  "span",
@@ -88,15 +128,11 @@ function XInteractivePhrase({
88
128
  onKeyDown: keyHandler,
89
129
  role: clickHandler ? "button" : void 0,
90
130
  tabIndex: clickHandler ? 0 : void 0,
91
- children: content
131
+ children: content2
92
132
  }
93
133
  ),
94
134
  word.breakAfter ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: XInteractivePhrase_default.lineBreak }) : " "
95
135
  ] }, index);
96
136
  }) }) });
97
137
  }
98
- // Annotate the CommonJS export names for ESM import in node:
99
- 0 && (module.exports = {
100
- XInteractivePhrase
101
- });
102
- //# sourceMappingURL=index.js.map
138
+ //# sourceMappingURL=index.js.map
@@ -1 +1,7 @@
1
- {"version":3,"sources":["../../../src/components/content/index.ts","../../../src/components/content/xinteractivephrase/XInteractivePhrase.tsx","../../../src/components/content/xinteractivephrase/XInteractivePhrase.module.css"],"sourcesContent":["export { XInteractivePhrase } from \"./xinteractivephrase\";\nexport type { XInteractivePhraseProps, WordConfig } from \"./xinteractivephrase\";\n","\"use client\";\n\nimport React, { useState, KeyboardEvent } from \"react\";\nimport styles from \"./XInteractivePhrase.module.css\";\n\nexport interface WordConfig {\n text: string;\n // Solo comportamientos de interacción\n type: \"normal\" | \"underline\" | \"button\" | \"blur1\" | \"blur2\"; \n breakAfter?: boolean;\n italic?: boolean; // Esto controla el <em>\n bold?: boolean; // Esto controla el <strong>\n}\n\nexport interface XInteractivePhraseProps {\n words: WordConfig[];\n as?: \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"span\";\n className?: string;\n}\n\nexport default function XInteractivePhrase({ \n words, \n as: Tag = \"p\", \n className = \"\" \n}: XInteractivePhraseProps) {\n const [active1, setActive1] = useState<boolean>(false);\n const [active2, setActive2] = useState<boolean>(false);\n\n const handleAction = (type: \"underline\" | \"button\") => {\n if (type === \"underline\") setActive1(!active1);\n if (type === \"button\") setActive2(!active2);\n };\n\n const onKeyDown = (e: KeyboardEvent<HTMLSpanElement>, type: \"underline\" | \"button\") => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n handleAction(type);\n }\n };\n\n return (\n <div className={`${styles.container} ${className}`}>\n <Tag className={styles.title}>\n {words.map((word, index) => {\n let dynamicClass = \"\";\n let clickHandler: (() => void) | undefined = undefined;\n let keyHandler: ((e: KeyboardEvent<HTMLSpanElement>) => void) | undefined = undefined;\n\n // Gestión de lógica por tipo\n if (word.type === \"underline\") {\n dynamicClass = styles.underlineEffect;\n clickHandler = () => handleAction(\"underline\");\n keyHandler = (e) => onKeyDown(e, \"underline\");\n } \n else if (word.type === \"button\") {\n dynamicClass = styles.buttonEffect;\n clickHandler = () => handleAction(\"button\");\n keyHandler = (e) => onKeyDown(e, \"button\");\n } \n else if (word.type === \"blur1\") {\n dynamicClass = `${styles.blurEffect} ${active1 ? styles.isVisible : styles.isHidden}`;\n } \n else if (word.type === \"blur2\") {\n dynamicClass = `${styles.blurEffect} ${active2 ? styles.isVisible : styles.isHidden}`;\n }\n\n // Renderizado del contenido con estilos combinables\n let content: React.ReactNode = word.text;\n if (word.italic) content = <em>{content}</em>;\n if (word.bold) content = <strong>{content}</strong>;\n\n return (\n <React.Fragment key={index}>\n <span\n className={dynamicClass}\n onClick={clickHandler}\n onKeyDown={keyHandler}\n role={clickHandler ? \"button\" : undefined}\n tabIndex={clickHandler ? 0 : undefined}\n >\n {content}\n </span>\n {word.breakAfter ? <span className={styles.lineBreak} /> : \" \"}\n </React.Fragment>\n );\n })}\n </Tag>\n </div>\n );\n}",".container {\n padding: 1rem 0;\n color: var(--text, #000);\n width: 100%;\n}\n\n.title {\n margin: 0;\n padding: 0;\n line-height: 1.3;\n font-weight: inherit;\n text-align: inherit;\n}\n\n/* Escala tipográfica fluida */\nh1.title { font-size: clamp(2rem, 6vw, 2.2rem); font-weight: 800; margin: 0; padding: 0; text-align: inherit; }\nh2.title { font-size: clamp(1.675rem, 4vw, 1.8rem); font-weight: 700; margin: 0; padding: 0; text-align: inherit; }\nh3.title { font-size: clamp(1.4rem, 3vw, 1.95rem); font-weight: 700; margin: 0; padding: 0; text-align: inherit; }\nh4.title { font-size: clamp(1.25rem, 3vw, 2rem); font-weight: 600; margin: 0; padding: 0; text-align: inherit; }\nh5.title { font-size: clamp(1.125rem, 3vw, 1.5rem); font-weight: 600; margin: 0; padding: 0; text-align: inherit; }\nh6.title { font-size: clamp(1rem, 2.5vw, 1.25rem); font-weight: 600; margin: 0; padding: 0; text-align: inherit; }\np.title { font-size: 1rem; font-weight: 400; margin: 0; padding: 0; text-align: inherit; }\n\n/* Estilos para etiquetas de énfasis */\n.title strong {\n font-weight: 900;\n color: var(--accent, #0070f3);\n}\n\n.title em {\n font-style: italic;\n font-family: serif; /* Opcional: da un toque elegante a las itálicas */\n}\n\n/* Efectos */\n.underlineEffect {\n position: relative;\n cursor: pointer;\n color: var(--accent, #0070f3);\n display: inline-block;\n transition: color 0.3s ease;\n}\n\n.underlineEffect::after {\n content: \"\";\n position: absolute;\n bottom: -2px;\n left: 0;\n height: 0.15em;\n width: 100%;\n background: repeating-linear-gradient(\n 45deg,\n transparent,\n transparent 2px,\n currentColor 2px,\n currentColor 4px\n );\n transition: opacity 0.3s ease;\n}\n\n.underlineEffect:hover::after {\n opacity: 0;\n}\n\n.buttonEffect {\n display: inline-block;\n padding: 0.1em 0.6em;\n border: 2px dashed currentColor;\n border-radius: 9999px;\n cursor: pointer;\n color: var(--accent, #0070f3);\n transition: all 0.3s ease;\n}\n\n.buttonEffect:hover {\n background: currentColor;\n color: var(--bg, #fff);\n}\n\n.blurEffect {\n display: inline-block;\n transition: filter 0.7s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.7s ease;\n}\n\n.isVisible {\n filter: blur(0);\n opacity: 1;\n}\n\n.isHidden {\n filter: blur(10px);\n opacity: 0.3;\n user-select: none;\n}\n\n.lineBreak {\n display: block;\n height: 0.8rem;\n}\n\n.underlineEffect:focus-visible,\n.buttonEffect:focus-visible {\n outline: 2px solid var(--accent, #0070f3);\n outline-offset: 4px;\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,mBAA+C;;;ACF/C;;;ADoEqC;AAhDtB,SAAR,mBAAoC;AAAA,EACzC;AAAA,EACA,IAAI,MAAM;AAAA,EACV,YAAY;AACd,GAA4B;AAC1B,QAAM,CAAC,SAAS,UAAU,QAAI,uBAAkB,KAAK;AACrD,QAAM,CAAC,SAAS,UAAU,QAAI,uBAAkB,KAAK;AAErD,QAAM,eAAe,CAAC,SAAiC;AACrD,QAAI,SAAS,YAAa,YAAW,CAAC,OAAO;AAC7C,QAAI,SAAS,SAAU,YAAW,CAAC,OAAO;AAAA,EAC5C;AAEA,QAAM,YAAY,CAAC,GAAmC,SAAiC;AACrF,QAAI,EAAE,QAAQ,WAAW,EAAE,QAAQ,KAAK;AACtC,QAAE,eAAe;AACjB,mBAAa,IAAI;AAAA,IACnB;AAAA,EACF;AAEA,SACE,4CAAC,SAAI,WAAW,GAAG,2BAAO,SAAS,IAAI,SAAS,IAC9C,sDAAC,OAAI,WAAW,2BAAO,OACpB,gBAAM,IAAI,CAAC,MAAM,UAAU;AAC1B,QAAI,eAAe;AACnB,QAAI,eAAyC;AAC7C,QAAI,aAAwE;AAG5E,QAAI,KAAK,SAAS,aAAa;AAC7B,qBAAe,2BAAO;AACtB,qBAAe,MAAM,aAAa,WAAW;AAC7C,mBAAa,CAAC,MAAM,UAAU,GAAG,WAAW;AAAA,IAC9C,WACS,KAAK,SAAS,UAAU;AAC/B,qBAAe,2BAAO;AACtB,qBAAe,MAAM,aAAa,QAAQ;AAC1C,mBAAa,CAAC,MAAM,UAAU,GAAG,QAAQ;AAAA,IAC3C,WACS,KAAK,SAAS,SAAS;AAC9B,qBAAe,GAAG,2BAAO,UAAU,IAAI,UAAU,2BAAO,YAAY,2BAAO,QAAQ;AAAA,IACrF,WACS,KAAK,SAAS,SAAS;AAC9B,qBAAe,GAAG,2BAAO,UAAU,IAAI,UAAU,2BAAO,YAAY,2BAAO,QAAQ;AAAA,IACrF;AAGA,QAAI,UAA2B,KAAK;AACpC,QAAI,KAAK,OAAQ,WAAU,4CAAC,QAAI,mBAAQ;AACxC,QAAI,KAAK,KAAM,WAAU,4CAAC,YAAQ,mBAAQ;AAE1C,WACE,6CAAC,aAAAA,QAAM,UAAN,EACC;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,UACX,SAAS;AAAA,UACT,WAAW;AAAA,UACX,MAAM,eAAe,WAAW;AAAA,UAChC,UAAU,eAAe,IAAI;AAAA,UAE5B;AAAA;AAAA,MACH;AAAA,MACC,KAAK,aAAa,4CAAC,UAAK,WAAW,2BAAO,WAAW,IAAK;AAAA,SAVxC,KAWrB;AAAA,EAEJ,CAAC,GACH,GACF;AAEJ;","names":["React"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/content/index.ts", "../../../src/components/content/xinteractivephrase/XInteractivePhrase.tsx", "esbuild-css-modules-plugin-ns-js::src/components/content/xinteractivephrase/XInteractivePhrase.module.css:injector.js", "../../../src/components/content/xinteractivephrase/XInteractivePhrase.module.css"],
4
+ "sourcesContent": ["export { XInteractivePhrase } from \"./xinteractivephrase\";\nexport type { XInteractivePhraseProps, WordConfig } from \"./xinteractivephrase\";\n", "\"use client\";\n\nimport React, { useState, KeyboardEvent } from \"react\";\nimport styles from \"./XInteractivePhrase.module.css\";\n\nexport interface WordConfig {\n text: string;\n // Solo comportamientos de interacci\u00F3n\n type: \"normal\" | \"underline\" | \"button\" | \"blur1\" | \"blur2\"; \n breakAfter?: boolean;\n italic?: boolean; // Esto controla el <em>\n bold?: boolean; // Esto controla el <strong>\n}\n\nexport interface XInteractivePhraseProps {\n words: WordConfig[];\n as?: \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"span\";\n className?: string;\n}\n\nexport default function XInteractivePhrase({ \n words, \n as: Tag = \"p\", \n className = \"\" \n}: XInteractivePhraseProps) {\n const [active1, setActive1] = useState<boolean>(false);\n const [active2, setActive2] = useState<boolean>(false);\n\n const handleAction = (type: \"underline\" | \"button\") => {\n if (type === \"underline\") setActive1(!active1);\n if (type === \"button\") setActive2(!active2);\n };\n\n const onKeyDown = (e: KeyboardEvent<HTMLSpanElement>, type: \"underline\" | \"button\") => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n handleAction(type);\n }\n };\n\n return (\n <div className={`${styles.container} ${className}`}>\n <Tag className={styles.title}>\n {words.map((word, index) => {\n let dynamicClass = \"\";\n let clickHandler: (() => void) | undefined = undefined;\n let keyHandler: ((e: KeyboardEvent<HTMLSpanElement>) => void) | undefined = undefined;\n\n // Gesti\u00F3n de l\u00F3gica por tipo\n if (word.type === \"underline\") {\n dynamicClass = styles.underlineEffect;\n clickHandler = () => handleAction(\"underline\");\n keyHandler = (e) => onKeyDown(e, \"underline\");\n } \n else if (word.type === \"button\") {\n dynamicClass = styles.buttonEffect;\n clickHandler = () => handleAction(\"button\");\n keyHandler = (e) => onKeyDown(e, \"button\");\n } \n else if (word.type === \"blur1\") {\n dynamicClass = `${styles.blurEffect} ${active1 ? styles.isVisible : styles.isHidden}`;\n } \n else if (word.type === \"blur2\") {\n dynamicClass = `${styles.blurEffect} ${active2 ? styles.isVisible : styles.isHidden}`;\n }\n\n // Renderizado del contenido con estilos combinables\n let content: React.ReactNode = word.text;\n if (word.italic) content = <em>{content}</em>;\n if (word.bold) content = <strong>{content}</strong>;\n\n return (\n <React.Fragment key={index}>\n <span\n className={dynamicClass}\n onClick={clickHandler}\n onKeyDown={keyHandler}\n role={clickHandler ? \"button\" : undefined}\n tabIndex={clickHandler ? 0 : undefined}\n >\n {content}\n </span>\n {word.breakAfter ? <span className={styles.lineBreak} /> : \" \"}\n </React.Fragment>\n );\n })}\n </Tag>\n </div>\n );\n}", "\nconst content = __content_placeholder__;\nconst digest = __digest_placeholder__; \nconst inject = () => {\n setTimeout(() => {\n if (!globalThis.document) {\n return;\n }\n let root = globalThis.document.querySelector(\"head\");\n if (root && root.shadowRoot) {\n root = root.shadowRoot;\n }\n if (!root) {\n root = globalThis.document.head;\n }\n let container = root.querySelector(\"#_\" + digest);\n if (!container) {\n container = globalThis.document.createElement(\"style\");\n container.id = \"_\" + digest;\n const text = globalThis.document.createTextNode(content);\n container.appendChild(text);\n root.appendChild(container);\n }\n }, 0);\n};\n\nexport { inject };\n ", "import \"esbuild-css-modules-plugin-ns-css:src/components/content/xinteractivephrase/XInteractivePhrase.module.css\";\n\nimport { inject } from \"esbuild-css-modules-plugin-ns-js:src/components/content/xinteractivephrase/XInteractivePhrase.module.css:injector.js\";\nexport default new Proxy({\n \"blurEffect\": \"XInteractivePhrase-module__blurEffect_fdhnVG__012\",\n \"buttonEffect\": \"XInteractivePhrase-module__buttonEffect_fdhnVG__012\",\n \"container\": \"XInteractivePhrase-module__container_fdhnVG__012\",\n \"isHidden\": \"XInteractivePhrase-module__isHidden_fdhnVG__012\",\n \"isVisible\": \"XInteractivePhrase-module__isVisible_fdhnVG__012\",\n \"lineBreak\": \"XInteractivePhrase-module__lineBreak_fdhnVG__012\",\n \"title\": \"XInteractivePhrase-module__title_fdhnVG__012\",\n \"underlineEffect\": \"XInteractivePhrase-module__underlineEffect_fdhnVG__012\"\n}, {\n get: function(source, key) {\n inject();\n return source[key];\n }\n});\n "],
5
+ "mappings": "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",
6
+ "names": ["content", "React"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  XInteractivePhrase
3
- } from "../../chunk-5G4P2E76.mjs";
3
+ } from "../../chunk-IK2UCTCM.mjs";
4
4
  export {
5
5
  XInteractivePhrase
6
6
  };
7
- //# sourceMappingURL=index.mjs.map
7
+ //# sourceMappingURL=index.mjs.map
@@ -1 +1,7 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,13 @@
1
+ export interface WordConfig {
2
+ text: string;
3
+ type: "normal" | "underline" | "button" | "blur1" | "blur2";
4
+ breakAfter?: boolean;
5
+ italic?: boolean;
6
+ bold?: boolean;
7
+ }
8
+ export interface XInteractivePhraseProps {
9
+ words: WordConfig[];
10
+ as?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "p" | "span";
11
+ className?: string;
12
+ }
13
+ export default function XInteractivePhrase({ words, as: Tag, className }: XInteractivePhraseProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { default as XInteractivePhrase } from "./XInteractivePhrase";
2
+ export { default } from "./XInteractivePhrase";
3
+ export type { XInteractivePhraseProps, WordConfig } from "./XInteractivePhrase";
@@ -1,5 +1,5 @@
1
- /* src/components/forms/xcontactform/XContactForm.module.css */
2
- .wrapper {
1
+ /* esbuild-css-modules-plugin-ns-css:src/components/forms/xcontactform/XContactForm.module.css */
2
+ .XContactForm-module__wrapper_o7lHUG__012 {
3
3
  --input-padding: .65rem .9rem;
4
4
  --font-size: 16px;
5
5
  --form-gap: 1.25rem;
@@ -28,14 +28,14 @@
28
28
  --btn-hover-border-color: var(--btn-border-color);
29
29
  --status-ok-color: #1fa37a;
30
30
  --status-error-color: #d16a6a;
31
- max-width: 900px;
32
- margin: 0 auto;
33
- padding: 2rem 1rem;
34
31
  background-color: var(--wrapper-bg-color);
35
32
  border: var(--wrapper-border-width) var(--wrapper-border-style) var(--wrapper-border-color);
36
33
  border-radius: var(--wrapper-radius);
34
+ max-width: 900px;
35
+ margin: 0 auto;
36
+ padding: 2rem 1rem;
37
37
  }
38
- .small {
38
+ .XContactForm-module__small_o7lHUG__012 {
39
39
  --input-padding: .35rem .55rem;
40
40
  --font-size: 13px;
41
41
  --form-gap: .75rem;
@@ -43,7 +43,7 @@
43
43
  --field-gap: .3rem;
44
44
  --button-min-width: 118px;
45
45
  }
46
- .medium {
46
+ .XContactForm-module__medium_o7lHUG__012 {
47
47
  --input-padding: .5rem .7rem;
48
48
  --font-size: 15px;
49
49
  --form-gap: 1rem;
@@ -51,7 +51,7 @@
51
51
  --field-gap: .4rem;
52
52
  --button-min-width: 130px;
53
53
  }
54
- .large {
54
+ .XContactForm-module__large_o7lHUG__012 {
55
55
  --input-padding: 1rem 1.2rem;
56
56
  --font-size: 18px;
57
57
  --form-gap: 1.5rem;
@@ -59,33 +59,33 @@
59
59
  --field-gap: .5rem;
60
60
  --button-min-width: 150px;
61
61
  }
62
- .form {
63
- display: grid;
62
+ .XContactForm-module__form_o7lHUG__012 {
64
63
  gap: var(--form-gap);
65
64
  max-width: 100%;
66
- }
67
- .row {
68
65
  display: grid;
66
+ }
67
+ .XContactForm-module__row_o7lHUG__012 {
69
68
  gap: var(--row-gap);
69
+ display: grid;
70
70
  }
71
- .grid .row {
71
+ .XContactForm-module__grid_o7lHUG__012 .XContactForm-module__row_o7lHUG__012 {
72
72
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
73
73
  }
74
- .vertical .row {
74
+ .XContactForm-module__vertical_o7lHUG__012 .XContactForm-module__row_o7lHUG__012 {
75
75
  grid-template-columns: 1fr;
76
76
  }
77
- .field {
78
- display: flex;
79
- flex-direction: column;
77
+ .XContactForm-module__field_o7lHUG__012 {
80
78
  gap: var(--field-gap);
79
+ flex-direction: column;
80
+ display: flex;
81
81
  }
82
- .field label {
82
+ .XContactForm-module__field_o7lHUG__012 label {
83
83
  font-size: calc(var(--font-size) - 2px);
84
- font-weight: 500;
85
84
  color: var(--label-color);
85
+ font-weight: 500;
86
86
  }
87
- .field input,
88
- .field textarea {
87
+ .XContactForm-module__field_o7lHUG__012 input,
88
+ .XContactForm-module__field_o7lHUG__012 textarea {
89
89
  width: 100%;
90
90
  padding: var(--input-padding);
91
91
  border: var(--field-border-width) var(--field-border-style) var(--field-border-color);
@@ -94,16 +94,16 @@
94
94
  box-sizing: border-box;
95
95
  font-family: inherit;
96
96
  }
97
- .field input::placeholder,
98
- .field textarea::placeholder {
97
+ .XContactForm-module__field_o7lHUG__012 input::placeholder,
98
+ .XContactForm-module__field_o7lHUG__012 textarea::placeholder {
99
99
  color: #888;
100
100
  }
101
- .buttoncontainer {
102
- display: flex;
101
+ .XContactForm-module__buttoncontainer_o7lHUG__012 {
103
102
  justify-content: var(--btn-alignment);
104
- margin-top: 0.25rem;
103
+ margin-top: .25rem;
104
+ display: flex;
105
105
  }
106
- .button {
106
+ .XContactForm-module__button_o7lHUG__012 {
107
107
  padding: var(--input-padding);
108
108
  border-radius: var(--btn-radius);
109
109
  border: var(--btn-border-width) var(--btn-border-style) var(--btn-border-color);
@@ -111,197 +111,195 @@
111
111
  color: var(--btn-text-color);
112
112
  cursor: pointer;
113
113
  font-size: var(--font-size);
114
- font-weight: 600;
115
114
  min-width: var(--button-min-width);
115
+ font-weight: 600;
116
116
  transition:
117
- background-color 0.2s ease,
118
- color 0.2s ease,
119
- border-color 0.2s ease,
120
- opacity 0.2s ease;
117
+ background-color .2s,
118
+ color .2s,
119
+ border-color .2s,
120
+ opacity .2s;
121
121
  }
122
- .button:hover {
122
+ .XContactForm-module__button_o7lHUG__012:hover {
123
123
  background-color: var(--btn-hover-bg-color);
124
124
  color: var(--btn-hover-text-color);
125
125
  border-color: var(--btn-hover-border-color);
126
- opacity: 0.95;
126
+ opacity: .95;
127
127
  }
128
- .status {
128
+ .XContactForm-module__status_o7lHUG__012 {
129
129
  min-height: 1.5rem;
130
130
  font-size: calc(var(--font-size) - 2px);
131
- margin-top: 0.25rem;
131
+ margin-top: .25rem;
132
132
  }
133
- .statusOk {
133
+ .XContactForm-module__statusOk_o7lHUG__012 {
134
134
  color: var(--status-ok-color);
135
135
  }
136
- .statusError {
136
+ .XContactForm-module__statusError_o7lHUG__012 {
137
137
  color: var(--status-error-color);
138
138
  }
139
- .honeypot {
139
+ .XContactForm-module__honeypot_o7lHUG__012 {
140
140
  position: absolute;
141
- left: -9999px;
142
141
  top: -9999px;
142
+ left: -9999px;
143
143
  }
144
- .withDecorativeX {
145
- position: relative;
144
+ .XContactForm-module__withDecorativeX_o7lHUG__012 {
146
145
  padding-top: 2.5rem;
147
146
  padding-bottom: 2.5rem;
147
+ position: relative;
148
148
  }
149
- .decorativeXTop,
150
- .decorativeXBottom {
151
- position: absolute;
152
- left: 50%;
153
- transform: translateX(-50%);
154
- font-size: 0.5rem;
155
- font-weight: 300;
149
+ .XContactForm-module__decorativeXTop_o7lHUG__012,
150
+ .XContactForm-module__decorativeXBottom_o7lHUG__012 {
156
151
  color: var(--decorative-x-color, currentColor);
157
152
  opacity: 1;
158
153
  pointer-events: none;
159
154
  background-color: var(--wrapper-bg-color, transparent);
160
- padding: 0 0.3rem;
161
- line-height: 1;
162
155
  z-index: 1;
156
+ padding: 0 .3rem;
157
+ font-size: .5rem;
158
+ font-weight: 300;
159
+ line-height: 1;
160
+ position: absolute;
161
+ left: 50%;
162
+ transform: translateX(-50%);
163
163
  }
164
- .decorativeXTop {
164
+ .XContactForm-module__decorativeXTop_o7lHUG__012 {
165
165
  top: 0;
166
166
  transform: translate(-50%, -50%);
167
167
  }
168
- .decorativeXBottom {
168
+ .XContactForm-module__decorativeXBottom_o7lHUG__012 {
169
169
  bottom: 0;
170
170
  transform: translate(-50%, 50%);
171
171
  }
172
172
 
173
- /* src/components/forms/xnewsletter/XNewsletter.module.css */
174
- .container {
173
+ /* esbuild-css-modules-plugin-ns-css:src/components/forms/xnewsletter/XNewsletter.module.css */
174
+ .XNewsletter-module__container_uZr2_a__012 {
175
175
  --nws-accent: var(--accent);
176
176
  --nws-text: var(--text);
177
177
  --nws-border: var(--border);
178
178
  --nws-btn-text: var(--accent-text);
179
179
  width: 100%;
180
- font-family: "EB Garamond", serif;
180
+ font-family: EB Garamond, serif;
181
181
  }
182
- .form {
183
- display: flex;
182
+ .XNewsletter-module__form_uZr2_a__012 {
184
183
  gap: 1rem;
184
+ display: flex;
185
185
  }
186
- .horizontal {
186
+ .XNewsletter-module__horizontal_uZr2_a__012 {
187
187
  flex-direction: column;
188
- align-items: center;
189
188
  justify-content: center;
189
+ align-items: center;
190
190
  }
191
- @media (min-width: 768px) {
192
- .horizontal {
191
+ @media (width >= 768px) {
192
+ .XNewsletter-module__horizontal_uZr2_a__012 {
193
193
  flex-direction: row;
194
194
  }
195
195
  }
196
- .vertical {
196
+ .XNewsletter-module__vertical_uZr2_a__012 {
197
197
  flex-direction: column;
198
198
  align-items: flex-start;
199
199
  width: 100%;
200
200
  max-width: 24rem;
201
201
  margin: 0 auto;
202
202
  }
203
- .title {
204
- font-size: 0.875rem;
203
+ .XNewsletter-module__title_uZr2_a__012 {
205
204
  white-space: nowrap;
206
- font-weight: 500;
207
205
  color: var(--nws-text);
206
+ font-size: .875rem;
207
+ font-weight: 500;
208
208
  }
209
- .input {
210
- width: 100%;
211
- padding: 0.5rem 1rem;
212
- font-size: 0.875rem;
213
- border-radius: 0.5rem;
209
+ .XNewsletter-module__input_uZr2_a__012 {
214
210
  border: 1px solid var(--nws-border);
215
- background-color: transparent;
216
- outline: none;
217
- transition: border-color 0.2s ease;
211
+ width: 100%;
218
212
  color: var(--nws-text);
219
213
  caret-color: var(--nws-accent);
214
+ background-color: #0000;
215
+ border-radius: .5rem;
216
+ outline: none;
217
+ padding: .5rem 1rem;
220
218
  font-family: inherit;
219
+ font-size: .875rem;
220
+ transition: border-color .2s;
221
221
  }
222
- .horizontal .input {
223
- }
224
- @media (min-width: 768px) {
225
- .horizontal .input {
222
+ @media (width >= 768px) {
223
+ .XNewsletter-module__horizontal_uZr2_a__012 .XNewsletter-module__input_uZr2_a__012 {
226
224
  width: 16rem;
227
225
  }
228
226
  }
229
- .input:focus {
227
+ .XNewsletter-module__input_uZr2_a__012:focus {
230
228
  border-color: var(--nws-accent);
231
229
  }
232
- .actions {
233
- display: flex;
230
+ .XNewsletter-module__actions_uZr2_a__012 {
234
231
  gap: 1rem;
232
+ display: flex;
235
233
  }
236
- .actionsHorizontal {
234
+ .XNewsletter-module__actionsHorizontal_uZr2_a__012 {
237
235
  flex-direction: row;
238
236
  align-items: center;
239
237
  }
240
- .actionsVertical {
238
+ .XNewsletter-module__actionsVertical_uZr2_a__012 {
241
239
  flex-direction: column;
242
240
  align-items: flex-start;
243
241
  width: 100%;
244
242
  }
245
- .checkboxLabel {
246
- display: flex;
247
- align-items: center;
248
- gap: 0.5rem;
249
- font-size: 0.75rem;
243
+ .XNewsletter-module__checkboxLabel_uZr2_a__012 {
250
244
  white-space: nowrap;
251
245
  cursor: pointer;
252
246
  color: var(--nws-text);
247
+ align-items: center;
248
+ gap: .5rem;
249
+ font-size: .75rem;
250
+ display: flex;
253
251
  }
254
- .checkboxLabel span {
255
- opacity: 0.7;
252
+ .XNewsletter-module__checkboxLabel_uZr2_a__012 span {
253
+ opacity: .7;
256
254
  }
257
- .checkbox {
258
- height: 0.875rem;
259
- width: 0.875rem;
260
- border-radius: 0.125rem;
255
+ .XNewsletter-module__checkbox_uZr2_a__012 {
261
256
  cursor: pointer;
257
+ width: .875rem;
258
+ height: .875rem;
262
259
  accent-color: var(--nws-accent);
260
+ border-radius: .125rem;
263
261
  }
264
- .termsLink {
265
- text-decoration: underline;
262
+ .XNewsletter-module__termsLink_uZr2_a__012 {
266
263
  color: var(--nws-accent);
267
- transition: opacity 0.2s ease;
264
+ text-decoration: underline;
265
+ transition: opacity .2s;
268
266
  }
269
- .termsLink:hover {
267
+ .XNewsletter-module__termsLink_uZr2_a__012:hover {
270
268
  opacity: 1;
271
269
  }
272
- .button {
273
- padding: 0.5rem 1rem;
274
- font-size: 0.875rem;
275
- border-radius: 0.5rem;
270
+ .XNewsletter-module__button_uZr2_a__012 {
276
271
  border: 1px solid var(--nws-accent);
277
272
  color: var(--nws-accent);
278
- background-color: transparent;
279
- transition: all 0.2s ease;
280
273
  white-space: nowrap;
281
274
  cursor: pointer;
275
+ background-color: #0000;
276
+ border-radius: .5rem;
277
+ padding: .5rem 1rem;
278
+ font-size: .875rem;
279
+ transition: all .2s;
282
280
  }
283
- .button:hover:not(:disabled) {
281
+ .XNewsletter-module__button_uZr2_a__012:hover:not(:disabled) {
284
282
  background-color: var(--nws-accent);
285
283
  color: var(--nws-btn-text);
286
284
  }
287
- .button:disabled,
288
- .input:disabled,
289
- .checkbox:disabled {
290
- opacity: 0.5;
285
+ .XNewsletter-module__button_uZr2_a__012:disabled,
286
+ .XNewsletter-module__input_uZr2_a__012:disabled,
287
+ .XNewsletter-module__checkbox_uZr2_a__012:disabled {
288
+ opacity: .5;
291
289
  cursor: not-allowed;
292
290
  }
293
- .actionsVertical .button {
291
+ .XNewsletter-module__actionsVertical_uZr2_a__012 .XNewsletter-module__button_uZr2_a__012 {
294
292
  width: 100%;
295
293
  }
296
- .message {
297
- margin-top: 0.75rem;
298
- font-size: 0.75rem;
294
+ .XNewsletter-module__message_uZr2_a__012 {
299
295
  color: var(--nws-accent);
296
+ margin-top: .75rem;
297
+ font-size: .75rem;
300
298
  }
301
- .messageHorizontal {
299
+ .XNewsletter-module__messageHorizontal_uZr2_a__012 {
302
300
  text-align: center;
303
301
  }
304
- .messageVertical {
302
+ .XNewsletter-module__messageVertical_uZr2_a__012 {
305
303
  text-align: left;
306
304
  }
307
- /*# sourceMappingURL=index.css.map */
305
+ /*# sourceMappingURL=index.css.map */
@@ -1 +1,7 @@
1
- {"version":3,"sources":["../../../src/components/forms/xcontactform/XContactForm.module.css","../../../src/components/forms/xnewsletter/XNewsletter.module.css"],"sourcesContent":["/* Tamaños dinámicos base */\n.wrapper {\n --input-padding: .65rem .9rem;\n --font-size: 16px;\n --form-gap: 1.25rem;\n --row-gap: .85rem;\n --field-gap: .45rem;\n --button-min-width: 140px;\n --label-color: inherit;\n --wrapper-bg-color: transparent;\n --wrapper-border-color: transparent;\n --wrapper-border-width: 0px;\n --wrapper-border-style: solid;\n --wrapper-radius: .5rem;\n --field-border-color: var(--border, #ccc);\n --field-border-width: 1px;\n --field-border-style: solid;\n --field-radius: .5rem;\n --btn-bg-color: var(--bg, #333);\n --btn-text-color: var(--text, #fff);\n --btn-border-color: transparent;\n --btn-border-width: 0px;\n --btn-border-style: solid;\n --btn-radius: .5rem;\n --btn-alignment: flex-start;\n --btn-hover-bg-color: var(--btn-bg-color);\n --btn-hover-text-color: var(--btn-text-color);\n --btn-hover-border-color: var(--btn-border-color);\n --status-ok-color: #1fa37a;\n --status-error-color: #d16a6a;\n \n max-width: 900px;\n margin: 0 auto;\n padding: 2rem 1rem;\n background-color: var(--wrapper-bg-color);\n border: var(--wrapper-border-width) var(--wrapper-border-style) var(--wrapper-border-color);\n border-radius: var(--wrapper-radius);\n}\n\n/* Modificadores de tamaño */\n.small {\n --input-padding: .35rem .55rem;\n --font-size: 13px;\n --form-gap: .75rem;\n --row-gap: .6rem;\n --field-gap: .3rem;\n --button-min-width: 118px;\n}\n.medium {\n --input-padding: .5rem .7rem;\n --font-size: 15px;\n --form-gap: 1rem;\n --row-gap: .7rem;\n --field-gap: .4rem;\n --button-min-width: 130px;\n}\n.large {\n --input-padding: 1rem 1.2rem;\n --font-size: 18px;\n --form-gap: 1.5rem;\n --row-gap: 1rem;\n --field-gap: .5rem;\n --button-min-width: 150px;\n}\n\n.form {\n display: grid;\n gap: var(--form-gap);\n max-width: 100%;\n}\n\n/* Layouts */\n.row {\n display: grid;\n gap: var(--row-gap);\n}\n\n.grid .row {\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n}\n\n.vertical .row {\n grid-template-columns: 1fr;\n}\n\n.field {\n display: flex;\n flex-direction: column;\n gap: var(--field-gap);\n}\n\n.field label {\n font-size: calc(var(--font-size) - 2px);\n font-weight: 500;\n color: var(--label-color);\n}\n\n.field input,\n.field textarea {\n width: 100%;\n padding: var(--input-padding);\n border: var(--field-border-width) var(--field-border-style) var(--field-border-color);\n border-radius: var(--field-radius);\n font-size: var(--font-size);\n box-sizing: border-box;\n font-family: inherit;\n}\n\n.field input::placeholder,\n.field textarea::placeholder {\n color: #888;\n}\n\n.buttoncontainer {\n display: flex;\n justify-content: var(--btn-alignment);\n margin-top: 0.25rem;\n}\n\n.button {\n padding: var(--input-padding);\n border-radius: var(--btn-radius);\n border: var(--btn-border-width) var(--btn-border-style) var(--btn-border-color);\n background-color: var(--btn-bg-color);\n color: var(--btn-text-color);\n cursor: pointer;\n font-size: var(--font-size);\n font-weight: 600;\n min-width: var(--button-min-width);\n transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;\n}\n\n.button:hover {\n background-color: var(--btn-hover-bg-color);\n color: var(--btn-hover-text-color);\n border-color: var(--btn-hover-border-color);\n opacity: 0.95;\n}\n\n.status {\n min-height: 1.5rem;\n font-size: calc(var(--font-size) - 2px);\n margin-top: 0.25rem;\n}\n\n.statusOk { color: var(--status-ok-color); }\n.statusError { color: var(--status-error-color); }\n\n.honeypot {\n position: absolute;\n left: -9999px;\n top: -9999px;\n}\n\n.withDecorativeX {\n position: relative;\n padding-top: 2.5rem;\n padding-bottom: 2.5rem;\n}\n\n.decorativeXTop,\n.decorativeXBottom {\n position: absolute;\n left: 50%;\n transform: translateX(-50%);\n font-size: 0.5rem;\n font-weight: 300;\n color: var(--decorative-x-color, currentColor);\n opacity: 1;\n pointer-events: none;\n background-color: var(--wrapper-bg-color, transparent);\n padding: 0 0.3rem;\n line-height: 1;\n z-index: 1;\n}\n\n.decorativeXTop {\n top: 0;\n transform: translate(-50%, -50%);\n}\n\n.decorativeXBottom {\n bottom: 0;\n transform: translate(-50%, 50%);\n}","/* XNewsletter.module.css */\n\n.container {\n /* Estas variables recibirán sus valores desde React */\n --nws-accent: var(--accent);\n --nws-text: var(--text);\n --nws-border: var(--border);\n --nws-btn-text: var(--accent-text);\n \n width: 100%;\n font-family: \"EB Garamond\", serif;\n}\n\n/* --- Layouts Base --- */\n.form {\n display: flex;\n gap: 1rem;\n}\n\n.horizontal {\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n\n@media (min-width: 768px) {\n .horizontal {\n flex-direction: row;\n }\n}\n\n.vertical {\n flex-direction: column;\n align-items: flex-start;\n width: 100%;\n max-width: 24rem; /* equivalente a max-w-sm */\n margin: 0 auto;\n}\n\n/* --- Elementos --- */\n.title {\n font-size: 0.875rem;\n white-space: nowrap;\n font-weight: 500;\n color: var(--nws-text);\n}\n\n.input {\n width: 100%;\n padding: 0.5rem 1rem;\n font-size: 0.875rem;\n border-radius: 0.5rem;\n border: 1px solid var(--nws-border);\n background-color: transparent;\n outline: none;\n transition: border-color 0.2s ease;\n color: var(--nws-text);\n caret-color: var(--nws-accent);\n font-family: inherit;\n}\n\n.horizontal .input {\n /* En escritorio, el input horizontal es de tamaño fijo (md:w-64) */\n}\n@media (min-width: 768px) {\n .horizontal .input {\n width: 16rem; \n }\n}\n\n.input:focus {\n border-color: var(--nws-accent);\n}\n\n/* --- Checkbox y Botón --- */\n.actions {\n display: flex;\n gap: 1rem;\n}\n\n.actionsHorizontal {\n flex-direction: row;\n align-items: center;\n}\n\n.actionsVertical {\n flex-direction: column;\n align-items: flex-start;\n width: 100%;\n}\n\n.checkboxLabel {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n font-size: 0.75rem;\n white-space: nowrap;\n cursor: pointer;\n color: var(--nws-text);\n}\n\n.checkboxLabel span {\n opacity: 0.7;\n}\n\n.checkbox {\n height: 0.875rem;\n width: 0.875rem;\n border-radius: 0.125rem;\n cursor: pointer;\n accent-color: var(--nws-accent);\n}\n\n.termsLink {\n text-decoration: underline;\n color: var(--nws-accent);\n transition: opacity 0.2s ease;\n}\n\n.termsLink:hover {\n opacity: 1;\n}\n\n.button {\n padding: 0.5rem 1rem;\n font-size: 0.875rem;\n border-radius: 0.5rem;\n border: 1px solid var(--nws-accent);\n color: var(--nws-accent);\n background-color: transparent;\n transition: all 0.2s ease;\n white-space: nowrap;\n cursor: pointer;\n}\n\n.button:hover:not(:disabled) {\n background-color: var(--nws-accent);\n color: var(--nws-btn-text);\n}\n\n.button:disabled, .input:disabled, .checkbox:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.actionsVertical .button {\n width: 100%;\n}\n\n/* --- Feedback Message --- */\n.message {\n margin-top: 0.75rem;\n font-size: 0.75rem;\n color: var(--nws-accent);\n}\n\n.messageHorizontal {\n text-align: center;\n}\n\n.messageVertical {\n text-align: left;\n}"],"mappings":"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","names":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["esbuild-css-modules-plugin-ns-css:src/components/forms/xcontactform/XContactForm.module.css", "esbuild-css-modules-plugin-ns-css:src/components/forms/xnewsletter/XNewsletter.module.css"],
4
+ "sourcesContent": [".XContactForm-module__wrapper_o7lHUG__012 {\n --input-padding: .65rem .9rem;\n --font-size: 16px;\n --form-gap: 1.25rem;\n --row-gap: .85rem;\n --field-gap: .45rem;\n --button-min-width: 140px;\n --label-color: inherit;\n --wrapper-bg-color: transparent;\n --wrapper-border-color: transparent;\n --wrapper-border-width: 0px;\n --wrapper-border-style: solid;\n --wrapper-radius: .5rem;\n --field-border-color: var(--border, #ccc);\n --field-border-width: 1px;\n --field-border-style: solid;\n --field-radius: .5rem;\n --btn-bg-color: var(--bg, #333);\n --btn-text-color: var(--text, #fff);\n --btn-border-color: transparent;\n --btn-border-width: 0px;\n --btn-border-style: solid;\n --btn-radius: .5rem;\n --btn-alignment: flex-start;\n --btn-hover-bg-color: var(--btn-bg-color);\n --btn-hover-text-color: var(--btn-text-color);\n --btn-hover-border-color: var(--btn-border-color);\n --status-ok-color: #1fa37a;\n --status-error-color: #d16a6a;\n background-color: var(--wrapper-bg-color);\n border: var(--wrapper-border-width) var(--wrapper-border-style) var(--wrapper-border-color);\n border-radius: var(--wrapper-radius);\n max-width: 900px;\n margin: 0 auto;\n padding: 2rem 1rem;\n}\n\n.XContactForm-module__small_o7lHUG__012 {\n --input-padding: .35rem .55rem;\n --font-size: 13px;\n --form-gap: .75rem;\n --row-gap: .6rem;\n --field-gap: .3rem;\n --button-min-width: 118px;\n}\n\n.XContactForm-module__medium_o7lHUG__012 {\n --input-padding: .5rem .7rem;\n --font-size: 15px;\n --form-gap: 1rem;\n --row-gap: .7rem;\n --field-gap: .4rem;\n --button-min-width: 130px;\n}\n\n.XContactForm-module__large_o7lHUG__012 {\n --input-padding: 1rem 1.2rem;\n --font-size: 18px;\n --form-gap: 1.5rem;\n --row-gap: 1rem;\n --field-gap: .5rem;\n --button-min-width: 150px;\n}\n\n.XContactForm-module__form_o7lHUG__012 {\n gap: var(--form-gap);\n max-width: 100%;\n display: grid;\n}\n\n.XContactForm-module__row_o7lHUG__012 {\n gap: var(--row-gap);\n display: grid;\n}\n\n.XContactForm-module__grid_o7lHUG__012 .XContactForm-module__row_o7lHUG__012 {\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n}\n\n.XContactForm-module__vertical_o7lHUG__012 .XContactForm-module__row_o7lHUG__012 {\n grid-template-columns: 1fr;\n}\n\n.XContactForm-module__field_o7lHUG__012 {\n gap: var(--field-gap);\n flex-direction: column;\n display: flex;\n}\n\n.XContactForm-module__field_o7lHUG__012 label {\n font-size: calc(var(--font-size) - 2px);\n color: var(--label-color);\n font-weight: 500;\n}\n\n.XContactForm-module__field_o7lHUG__012 input, .XContactForm-module__field_o7lHUG__012 textarea {\n width: 100%;\n padding: var(--input-padding);\n border: var(--field-border-width) var(--field-border-style) var(--field-border-color);\n border-radius: var(--field-radius);\n font-size: var(--font-size);\n box-sizing: border-box;\n font-family: inherit;\n}\n\n.XContactForm-module__field_o7lHUG__012 input::placeholder, .XContactForm-module__field_o7lHUG__012 textarea::placeholder {\n color: #888;\n}\n\n.XContactForm-module__buttoncontainer_o7lHUG__012 {\n justify-content: var(--btn-alignment);\n margin-top: .25rem;\n display: flex;\n}\n\n.XContactForm-module__button_o7lHUG__012 {\n padding: var(--input-padding);\n border-radius: var(--btn-radius);\n border: var(--btn-border-width) var(--btn-border-style) var(--btn-border-color);\n background-color: var(--btn-bg-color);\n color: var(--btn-text-color);\n cursor: pointer;\n font-size: var(--font-size);\n min-width: var(--button-min-width);\n font-weight: 600;\n transition: background-color .2s, color .2s, border-color .2s, opacity .2s;\n}\n\n.XContactForm-module__button_o7lHUG__012:hover {\n background-color: var(--btn-hover-bg-color);\n color: var(--btn-hover-text-color);\n border-color: var(--btn-hover-border-color);\n opacity: .95;\n}\n\n.XContactForm-module__status_o7lHUG__012 {\n min-height: 1.5rem;\n font-size: calc(var(--font-size) - 2px);\n margin-top: .25rem;\n}\n\n.XContactForm-module__statusOk_o7lHUG__012 {\n color: var(--status-ok-color);\n}\n\n.XContactForm-module__statusError_o7lHUG__012 {\n color: var(--status-error-color);\n}\n\n.XContactForm-module__honeypot_o7lHUG__012 {\n position: absolute;\n top: -9999px;\n left: -9999px;\n}\n\n.XContactForm-module__withDecorativeX_o7lHUG__012 {\n padding-top: 2.5rem;\n padding-bottom: 2.5rem;\n position: relative;\n}\n\n.XContactForm-module__decorativeXTop_o7lHUG__012, .XContactForm-module__decorativeXBottom_o7lHUG__012 {\n color: var(--decorative-x-color, currentColor);\n opacity: 1;\n pointer-events: none;\n background-color: var(--wrapper-bg-color, transparent);\n z-index: 1;\n padding: 0 .3rem;\n font-size: .5rem;\n font-weight: 300;\n line-height: 1;\n position: absolute;\n left: 50%;\n transform: translateX(-50%);\n}\n\n.XContactForm-module__decorativeXTop_o7lHUG__012 {\n top: 0;\n transform: translate(-50%, -50%);\n}\n\n.XContactForm-module__decorativeXBottom_o7lHUG__012 {\n bottom: 0;\n transform: translate(-50%, 50%);\n}\n", ".XNewsletter-module__container_uZr2_a__012 {\n --nws-accent: var(--accent);\n --nws-text: var(--text);\n --nws-border: var(--border);\n --nws-btn-text: var(--accent-text);\n width: 100%;\n font-family: EB Garamond, serif;\n}\n\n.XNewsletter-module__form_uZr2_a__012 {\n gap: 1rem;\n display: flex;\n}\n\n.XNewsletter-module__horizontal_uZr2_a__012 {\n flex-direction: column;\n justify-content: center;\n align-items: center;\n}\n\n@media (width >= 768px) {\n .XNewsletter-module__horizontal_uZr2_a__012 {\n flex-direction: row;\n }\n}\n\n.XNewsletter-module__vertical_uZr2_a__012 {\n flex-direction: column;\n align-items: flex-start;\n width: 100%;\n max-width: 24rem;\n margin: 0 auto;\n}\n\n.XNewsletter-module__title_uZr2_a__012 {\n white-space: nowrap;\n color: var(--nws-text);\n font-size: .875rem;\n font-weight: 500;\n}\n\n.XNewsletter-module__input_uZr2_a__012 {\n border: 1px solid var(--nws-border);\n width: 100%;\n color: var(--nws-text);\n caret-color: var(--nws-accent);\n background-color: #0000;\n border-radius: .5rem;\n outline: none;\n padding: .5rem 1rem;\n font-family: inherit;\n font-size: .875rem;\n transition: border-color .2s;\n}\n\n@media (width >= 768px) {\n .XNewsletter-module__horizontal_uZr2_a__012 .XNewsletter-module__input_uZr2_a__012 {\n width: 16rem;\n }\n}\n\n.XNewsletter-module__input_uZr2_a__012:focus {\n border-color: var(--nws-accent);\n}\n\n.XNewsletter-module__actions_uZr2_a__012 {\n gap: 1rem;\n display: flex;\n}\n\n.XNewsletter-module__actionsHorizontal_uZr2_a__012 {\n flex-direction: row;\n align-items: center;\n}\n\n.XNewsletter-module__actionsVertical_uZr2_a__012 {\n flex-direction: column;\n align-items: flex-start;\n width: 100%;\n}\n\n.XNewsletter-module__checkboxLabel_uZr2_a__012 {\n white-space: nowrap;\n cursor: pointer;\n color: var(--nws-text);\n align-items: center;\n gap: .5rem;\n font-size: .75rem;\n display: flex;\n}\n\n.XNewsletter-module__checkboxLabel_uZr2_a__012 span {\n opacity: .7;\n}\n\n.XNewsletter-module__checkbox_uZr2_a__012 {\n cursor: pointer;\n width: .875rem;\n height: .875rem;\n accent-color: var(--nws-accent);\n border-radius: .125rem;\n}\n\n.XNewsletter-module__termsLink_uZr2_a__012 {\n color: var(--nws-accent);\n text-decoration: underline;\n transition: opacity .2s;\n}\n\n.XNewsletter-module__termsLink_uZr2_a__012:hover {\n opacity: 1;\n}\n\n.XNewsletter-module__button_uZr2_a__012 {\n border: 1px solid var(--nws-accent);\n color: var(--nws-accent);\n white-space: nowrap;\n cursor: pointer;\n background-color: #0000;\n border-radius: .5rem;\n padding: .5rem 1rem;\n font-size: .875rem;\n transition: all .2s;\n}\n\n.XNewsletter-module__button_uZr2_a__012:hover:not(:disabled) {\n background-color: var(--nws-accent);\n color: var(--nws-btn-text);\n}\n\n.XNewsletter-module__button_uZr2_a__012:disabled, .XNewsletter-module__input_uZr2_a__012:disabled, .XNewsletter-module__checkbox_uZr2_a__012:disabled {\n opacity: .5;\n cursor: not-allowed;\n}\n\n.XNewsletter-module__actionsVertical_uZr2_a__012 .XNewsletter-module__button_uZr2_a__012 {\n width: 100%;\n}\n\n.XNewsletter-module__message_uZr2_a__012 {\n color: var(--nws-accent);\n margin-top: .75rem;\n font-size: .75rem;\n}\n\n.XNewsletter-module__messageHorizontal_uZr2_a__012 {\n text-align: center;\n}\n\n.XNewsletter-module__messageVertical_uZr2_a__012 {\n text-align: left;\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }