@shibui-ui/ui 1.22.0 → 1.24.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.
Files changed (57) hide show
  1. package/dist/components/atoms/button/lib-button.component.d.ts +12 -3
  2. package/dist/components/atoms/button/lib-button.component.d.ts.map +1 -1
  3. package/dist/components/atoms/button/lib-button.html.d.ts +4 -2
  4. package/dist/components/atoms/button/lib-button.html.d.ts.map +1 -1
  5. package/dist/components/atoms/button/lib-button.stories.d.ts +3 -0
  6. package/dist/components/atoms/button/lib-button.stories.d.ts.map +1 -1
  7. package/dist/components/atoms/button/lib-button.types.d.ts +2 -0
  8. package/dist/components/atoms/button/lib-button.types.d.ts.map +1 -0
  9. package/dist/components/atoms/step/lib-step.component.d.ts +1 -1
  10. package/dist/components/atoms/step/lib-step.component.d.ts.map +1 -1
  11. package/dist/components/atoms/step/lib-step.html.d.ts +3 -4
  12. package/dist/components/atoms/step/lib-step.html.d.ts.map +1 -1
  13. package/dist/components/atoms/step/lib-step.stories.d.ts +3 -1
  14. package/dist/components/atoms/step/lib-step.stories.d.ts.map +1 -1
  15. package/dist/components/atoms/step/lib-step.types.d.ts +5 -0
  16. package/dist/components/atoms/step/lib-step.types.d.ts.map +1 -0
  17. package/dist/custom-elements.json +30 -2
  18. package/dist/index.css +1 -1
  19. package/dist/index14.js.map +1 -1
  20. package/dist/index196.js +1 -1
  21. package/dist/index216.js.map +1 -1
  22. package/dist/index217.js +1 -1
  23. package/dist/index23.js +30 -0
  24. package/dist/index23.js.map +1 -1
  25. package/dist/index232.js +1 -1
  26. package/dist/index233.js +1 -0
  27. package/dist/index233.js.map +1 -1
  28. package/dist/index307.js +1 -1
  29. package/dist/index316.js +4 -4
  30. package/dist/index353.js +24 -13
  31. package/dist/index353.js.map +1 -1
  32. package/dist/index354.js +6 -20
  33. package/dist/index354.js.map +1 -1
  34. package/dist/index355.js +18 -56
  35. package/dist/index355.js.map +1 -1
  36. package/dist/index356.js +57 -55
  37. package/dist/index356.js.map +1 -1
  38. package/dist/index357.js +63 -24
  39. package/dist/index357.js.map +1 -1
  40. package/dist/src/components/atoms/button/lib-button.component.d.ts +12 -3
  41. package/dist/src/components/atoms/button/lib-button.component.d.ts.map +1 -1
  42. package/dist/src/components/atoms/button/lib-button.html.d.ts +4 -2
  43. package/dist/src/components/atoms/button/lib-button.html.d.ts.map +1 -1
  44. package/dist/src/components/atoms/button/lib-button.stories.d.ts +3 -0
  45. package/dist/src/components/atoms/button/lib-button.stories.d.ts.map +1 -1
  46. package/dist/src/components/atoms/button/lib-button.types.d.ts +2 -0
  47. package/dist/src/components/atoms/button/lib-button.types.d.ts.map +1 -0
  48. package/dist/src/components/atoms/step/lib-step.component.d.ts +1 -1
  49. package/dist/src/components/atoms/step/lib-step.component.d.ts.map +1 -1
  50. package/dist/src/components/atoms/step/lib-step.html.d.ts +3 -4
  51. package/dist/src/components/atoms/step/lib-step.html.d.ts.map +1 -1
  52. package/dist/src/components/atoms/step/lib-step.stories.d.ts +3 -1
  53. package/dist/src/components/atoms/step/lib-step.stories.d.ts.map +1 -1
  54. package/dist/src/components/atoms/step/lib-step.types.d.ts +5 -0
  55. package/dist/src/components/atoms/step/lib-step.types.d.ts.map +1 -0
  56. package/dist/tokens.css +7 -336
  57. package/package.json +1 -1
package/dist/index353.js CHANGED
@@ -1,17 +1,28 @@
1
- import { html } from "lit";
2
- import { renderLogo, renderLinks, renderActions } from "./index361.js";
3
- import { renderHamburger, renderMobileDrawer } from "./index362.js";
4
- function renderClassic(ctx) {
5
- return html`
6
- <div class="hdr">
7
- ${renderLogo(ctx)}
8
- <nav class="hdr-nav">${renderLinks(ctx, ctx.links)}</nav>
9
- ${renderActions(ctx)}
10
- ${renderHamburger(ctx)}
11
- </div>
12
- ${renderMobileDrawer(ctx)}`;
1
+ import { nothing as A, noChange as E } from "./index358.js";
2
+ import { Directive as i, PartType as t, directive as e$1 } from "./index359.js";
3
+ /**
4
+ * @license
5
+ * Copyright 2017 Google LLC
6
+ * SPDX-License-Identifier: BSD-3-Clause
7
+ */
8
+ class e extends i {
9
+ constructor(i2) {
10
+ if (super(i2), this.it = A, i2.type !== t.CHILD) throw Error(this.constructor.directiveName + "() can only be used in child bindings");
11
+ }
12
+ render(r) {
13
+ if (r === A || null == r) return this._t = void 0, this.it = r;
14
+ if (r === E) return r;
15
+ if ("string" != typeof r) throw Error(this.constructor.directiveName + "() called with a non-string value");
16
+ if (r === this.it) return this._t;
17
+ this.it = r;
18
+ const s = [r];
19
+ return s.raw = s, this._t = { _$litType$: this.constructor.resultType, strings: s, values: [] };
20
+ }
13
21
  }
22
+ e.directiveName = "unsafeHTML", e.resultType = 1;
23
+ const o = e$1(e);
14
24
  export {
15
- renderClassic
25
+ e as UnsafeHTMLDirective,
26
+ o as unsafeHTML
16
27
  };
17
28
  //# sourceMappingURL=index353.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index353.js","sources":["../src/components/molecules/header/templates/header-classic.html.ts"],"sourcesContent":["import { html, TemplateResult } from 'lit';\nimport type { LibHeader } from '../lib-header.component';\nimport { renderLogo, renderLinks, renderActions } from './header-shared.html';\nimport { renderHamburger, renderMobileDrawer } from './header-mobile.html';\n\n/**\n * Template compartido por las variantes de layout simple:\n * classic · dark · transparent · kintsugi · glitch · minimal · shrink\n *\n * Estructura: logo | nav | actions | hamburger (móvil)\n */\nexport function renderClassic(ctx: LibHeader): TemplateResult {\n return html`\n <div class=\"hdr\">\n ${renderLogo(ctx)}\n <nav class=\"hdr-nav\">${renderLinks(ctx, ctx.links)}</nav>\n ${renderActions(ctx)}\n ${renderHamburger(ctx)}\n </div>\n ${renderMobileDrawer(ctx)}`;\n}"],"names":[],"mappings":";;;AAWO,SAAS,cAAc,KAAgC;AAC5D,SAAO;AAAA;AAAA,QAED,WAAW,GAAG,CAAC;AAAA,6BACM,YAAY,KAAK,IAAI,KAAK,CAAC;AAAA,QAChD,cAAc,GAAG,CAAC;AAAA,QAClB,gBAAgB,GAAG,CAAC;AAAA;AAAA,MAEtB,mBAAmB,GAAG,CAAC;AAC7B;"}
1
+ {"version":3,"file":"index353.js","sources":["../../../node_modules/.pnpm/lit-html@3.3.2/node_modules/lit-html/directives/unsafe-html.js"],"sourcesContent":["import{nothing as t,noChange as i}from\"../lit-html.js\";import{directive as r,Directive as s,PartType as n}from\"../directive.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class e extends s{constructor(i){if(super(i),this.it=t,i.type!==n.CHILD)throw Error(this.constructor.directiveName+\"() can only be used in child bindings\")}render(r){if(r===t||null==r)return this._t=void 0,this.it=r;if(r===i)return r;if(\"string\"!=typeof r)throw Error(this.constructor.directiveName+\"() called with a non-string value\");if(r===this.it)return this._t;this.it=r;const s=[r];return s.raw=s,this._t={_$litType$:this.constructor.resultType,strings:s,values:[]}}}e.directiveName=\"unsafeHTML\",e.resultType=1;const o=r(e);export{e as UnsafeHTMLDirective,o as unsafeHTML};\n//# sourceMappingURL=unsafe-html.js.map\n"],"names":["s","i","t","n","r"],"mappings":";;AACA;AAAA;AAAA;AAAA;AAAA;AAIG,MAAM,UAAUA,EAAC;AAAA,EAAC,YAAYC,IAAE;AAAC,QAAG,MAAMA,EAAC,GAAE,KAAK,KAAGC,GAAED,GAAE,SAAOE,EAAE,MAAM,OAAM,MAAM,KAAK,YAAY,gBAAc,uCAAuC;AAAA,EAAC;AAAA,EAAC,OAAO,GAAE;AAAC,QAAG,MAAID,KAAG,QAAM,EAAE,QAAO,KAAK,KAAG,QAAO,KAAK,KAAG;AAAE,QAAG,MAAID,EAAE,QAAO;AAAE,QAAG,YAAU,OAAO,EAAE,OAAM,MAAM,KAAK,YAAY,gBAAc,mCAAmC;AAAE,QAAG,MAAI,KAAK,GAAG,QAAO,KAAK;AAAG,SAAK,KAAG;AAAE,UAAM,IAAE,CAAC,CAAC;AAAE,WAAO,EAAE,MAAI,GAAE,KAAK,KAAG,EAAC,YAAW,KAAK,YAAY,YAAW,SAAQ,GAAE,QAAO,CAAA,EAAE;AAAA,EAAC;AAAC;AAAC,EAAE,gBAAc,cAAa,EAAE,aAAW;AAAO,MAAC,IAAEG,IAAE,CAAC;","x_google_ignoreList":[0]}
package/dist/index354.js CHANGED
@@ -1,31 +1,17 @@
1
- import { nothing, html } from "lit";
2
- import { renderLinks, renderLogo, renderActions } from "./index361.js";
1
+ import { html } from "lit";
2
+ import { renderLogo, renderLinks, renderActions } from "./index361.js";
3
3
  import { renderHamburger, renderMobileDrawer } from "./index362.js";
4
- function renderCentered(ctx) {
5
- const mid = Math.floor(ctx.links.length / 2);
6
- const leftLinks = ctx.links.slice(0, mid);
7
- const rightLinks = ctx.links.slice(mid);
4
+ function renderClassic(ctx) {
8
5
  return html`
9
- ${ctx.announcement ? html`
10
- <div class="hdr-announcement">
11
- <span>${ctx.announcement}</span>
12
- ${ctx.announcementHref ? html`<a href="${ctx.announcementHref}">Ver →</a>` : nothing}
13
- </div>` : nothing}
14
-
15
6
  <div class="hdr">
16
- <nav class="hdr-nav hdr-nav--centered-left">
17
- ${renderLinks(ctx, leftLinks)}
18
- </nav>
19
7
  ${renderLogo(ctx)}
20
- <nav class="hdr-nav hdr-nav--right">
21
- ${renderLinks(ctx, rightLinks)}
22
- ${renderActions(ctx)}
23
- </nav>
8
+ <nav class="hdr-nav">${renderLinks(ctx, ctx.links)}</nav>
9
+ ${renderActions(ctx)}
24
10
  ${renderHamburger(ctx)}
25
11
  </div>
26
12
  ${renderMobileDrawer(ctx)}`;
27
13
  }
28
14
  export {
29
- renderCentered
15
+ renderClassic
30
16
  };
31
17
  //# sourceMappingURL=index354.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index354.js","sources":["../src/components/molecules/header/templates/header-centered.html.ts"],"sourcesContent":["import { html, nothing, TemplateResult } from 'lit';\nimport type { LibHeader } from '../lib-header.component';\nimport { renderLogo, renderLinks, renderActions } from './header-shared.html';\nimport { renderHamburger, renderMobileDrawer } from './header-mobile.html';\n\n/**\n * Template variante centered:\n * [nav-izquierda] | [logo-central] | [nav-derecha + actions]\n * En móvil colapsa a: [logo] | [hamburger]\n */\nexport function renderCentered(ctx: LibHeader): TemplateResult {\n const mid = Math.floor(ctx.links.length / 2);\n const leftLinks = ctx.links.slice(0, mid);\n const rightLinks = ctx.links.slice(mid);\n\n return html`\n ${ctx.announcement ? html`\n <div class=\"hdr-announcement\">\n <span>${ctx.announcement}</span>\n ${ctx.announcementHref\n ? html`<a href=\"${ctx.announcementHref}\">Ver →</a>`\n : nothing}\n </div>` : nothing}\n\n <div class=\"hdr\">\n <nav class=\"hdr-nav hdr-nav--centered-left\">\n ${renderLinks(ctx, leftLinks)}\n </nav>\n ${renderLogo(ctx)}\n <nav class=\"hdr-nav hdr-nav--right\">\n ${renderLinks(ctx, rightLinks)}\n ${renderActions(ctx)}\n </nav>\n ${renderHamburger(ctx)}\n </div>\n ${renderMobileDrawer(ctx)}`;\n}"],"names":[],"mappings":";;;AAUO,SAAS,eAAe,KAAgC;AAC7D,QAAM,MAAa,KAAK,MAAM,IAAI,MAAM,SAAS,CAAC;AAClD,QAAM,YAAa,IAAI,MAAM,MAAM,GAAG,GAAG;AACzC,QAAM,aAAa,IAAI,MAAM,MAAM,GAAG;AAEtC,SAAO;AAAA,MACH,IAAI,eAAe;AAAA;AAAA,gBAET,IAAI,YAAY;AAAA,UACtB,IAAI,mBACF,gBAAgB,IAAI,gBAAgB,gBACpC,OAAO;AAAA,gBACH,OAAO;AAAA;AAAA;AAAA;AAAA,UAIb,YAAY,KAAK,SAAS,CAAC;AAAA;AAAA,QAE7B,WAAW,GAAG,CAAC;AAAA;AAAA,UAEb,YAAY,KAAK,UAAU,CAAC;AAAA,UAC5B,cAAc,GAAG,CAAC;AAAA;AAAA,QAEpB,gBAAgB,GAAG,CAAC;AAAA;AAAA,MAEtB,mBAAmB,GAAG,CAAC;AAC7B;"}
1
+ {"version":3,"file":"index354.js","sources":["../src/components/molecules/header/templates/header-classic.html.ts"],"sourcesContent":["import { html, TemplateResult } from 'lit';\nimport type { LibHeader } from '../lib-header.component';\nimport { renderLogo, renderLinks, renderActions } from './header-shared.html';\nimport { renderHamburger, renderMobileDrawer } from './header-mobile.html';\n\n/**\n * Template compartido por las variantes de layout simple:\n * classic · dark · transparent · kintsugi · glitch · minimal · shrink\n *\n * Estructura: logo | nav | actions | hamburger (móvil)\n */\nexport function renderClassic(ctx: LibHeader): TemplateResult {\n return html`\n <div class=\"hdr\">\n ${renderLogo(ctx)}\n <nav class=\"hdr-nav\">${renderLinks(ctx, ctx.links)}</nav>\n ${renderActions(ctx)}\n ${renderHamburger(ctx)}\n </div>\n ${renderMobileDrawer(ctx)}`;\n}"],"names":[],"mappings":";;;AAWO,SAAS,cAAc,KAAgC;AAC5D,SAAO;AAAA;AAAA,QAED,WAAW,GAAG,CAAC;AAAA,6BACM,YAAY,KAAK,IAAI,KAAK,CAAC;AAAA,QAChD,cAAc,GAAG,CAAC;AAAA,QAClB,gBAAgB,GAAG,CAAC;AAAA;AAAA,MAEtB,mBAAmB,GAAG,CAAC;AAC7B;"}
package/dist/index355.js CHANGED
@@ -1,69 +1,31 @@
1
1
  import { nothing, html } from "lit";
2
- import { renderLogo, svgChevron, renderActions } from "./index361.js";
2
+ import { renderLinks, renderLogo, renderActions } from "./index361.js";
3
3
  import { renderHamburger, renderMobileDrawer } from "./index362.js";
4
- function renderMega(ctx) {
4
+ function renderCentered(ctx) {
5
+ const mid = Math.floor(ctx.links.length / 2);
6
+ const leftLinks = ctx.links.slice(0, mid);
7
+ const rightLinks = ctx.links.slice(mid);
5
8
  return html`
9
+ ${ctx.announcement ? html`
10
+ <div class="hdr-announcement">
11
+ <span>${ctx.announcement}</span>
12
+ ${ctx.announcementHref ? html`<a href="${ctx.announcementHref}">Ver →</a>` : nothing}
13
+ </div>` : nothing}
14
+
6
15
  <div class="hdr">
16
+ <nav class="hdr-nav hdr-nav--centered-left">
17
+ ${renderLinks(ctx, leftLinks)}
18
+ </nav>
7
19
  ${renderLogo(ctx)}
8
- <nav class="hdr-nav">
9
- ${ctx.links.map(
10
- (link) => {
11
- var _a;
12
- return ((_a = link.dropdown) == null ? void 0 : _a.length) ? html`
13
- <div
14
- class="hdr-dd"
15
- @mouseenter="${() => ctx._openMega()}"
16
- @mouseleave="${() => ctx._closeMega()}"
17
- >
18
- <span class="hdr-link">
19
- ${link.label} ${svgChevron}
20
- </span>
21
- </div>` : html`<a href="${link.href || "#"}" class="hdr-link">${link.label}</a>`;
22
- }
23
- )}
20
+ <nav class="hdr-nav hdr-nav--right">
21
+ ${renderLinks(ctx, rightLinks)}
22
+ ${renderActions(ctx)}
24
23
  </nav>
25
- ${renderActions(ctx)}
26
24
  ${renderHamburger(ctx)}
27
25
  </div>
28
-
29
- <!-- Overlay detrás del panel -->
30
- <div
31
- class="hdr-mega-overlay ${ctx._megaOpen ? "is-open" : ""}"
32
- @mouseenter="${() => ctx._closeMega()}"
33
- ></div>
34
-
35
- <!-- Panel full-width -->
36
- <div
37
- class="hdr-mega-panel ${ctx._megaOpen ? "is-open" : ""}"
38
- @mouseenter="${() => ctx._openMega()}"
39
- @mouseleave="${() => ctx._closeMega()}"
40
- >
41
- <div class="hdr-mega-inner">
42
- ${ctx.megaColumns.map((col) => html`
43
- <div>
44
- <div class="hdr-mega-group-title">${col.title}</div>
45
- ${col.items.map((item) => html`
46
- <a href="${item.href || "#"}" class="hdr-mega-link">${item.label}</a>
47
- `)}
48
- </div>
49
- `)}
50
- ${ctx.megaCta ? html`
51
- <div class="hdr-mega-cta">
52
- <div class="hdr-mega-cta-label">${ctx.megaCta.label}</div>
53
- <div class="hdr-mega-cta-title">${ctx.megaCta.title}</div>
54
- <div class="hdr-mega-cta-desc">${ctx.megaCta.desc}</div>
55
- <a href="${ctx.megaCta.href || "#"}"
56
- class="hdr-action hdr-action--kaki"
57
- style="height:32px;font-size:8px;"
58
- >${ctx.megaCta.cta}</a>
59
- </div>
60
- ` : nothing}
61
- </div>
62
- </div>
63
-
64
26
  ${renderMobileDrawer(ctx)}`;
65
27
  }
66
28
  export {
67
- renderMega
29
+ renderCentered
68
30
  };
69
31
  //# sourceMappingURL=index355.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index355.js","sources":["../src/components/molecules/header/templates/header-mega.html.ts"],"sourcesContent":["import { html, nothing, TemplateResult } from 'lit';\nimport type { LibHeader } from '../lib-header.component';\nimport { renderLogo, renderActions, svgChevron } from './header-shared.html';\nimport { renderHamburger, renderMobileDrawer } from './header-mobile.html';\n\n/**\n * Template variante mega:\n * Panel full-width al hover sobre el link con dropdown.\n * En móvil el panel se oculta y el drawer cubre los mega-columns.\n */\nexport function renderMega(ctx: LibHeader): TemplateResult {\n return html`\n <div class=\"hdr\">\n ${renderLogo(ctx)}\n <nav class=\"hdr-nav\">\n ${ctx.links.map(link =>\n link.dropdown?.length\n ? html`\n <div\n class=\"hdr-dd\"\n @mouseenter=\"${(): void => ctx._openMega()}\"\n @mouseleave=\"${(): void => ctx._closeMega()}\"\n >\n <span class=\"hdr-link\">\n ${link.label} ${svgChevron}\n </span>\n </div>`\n : html`<a href=\"${link.href || '#'}\" class=\"hdr-link\">${link.label}</a>`\n )}\n </nav>\n ${renderActions(ctx)}\n ${renderHamburger(ctx)}\n </div>\n\n <!-- Overlay detrás del panel -->\n <div\n class=\"hdr-mega-overlay ${ctx._megaOpen ? 'is-open' : ''}\"\n @mouseenter=\"${(): void => ctx._closeMega()}\"\n ></div>\n\n <!-- Panel full-width -->\n <div\n class=\"hdr-mega-panel ${ctx._megaOpen ? 'is-open' : ''}\"\n @mouseenter=\"${(): void => ctx._openMega()}\"\n @mouseleave=\"${(): void => ctx._closeMega()}\"\n >\n <div class=\"hdr-mega-inner\">\n ${ctx.megaColumns.map(col => html`\n <div>\n <div class=\"hdr-mega-group-title\">${col.title}</div>\n ${col.items.map(item => html`\n <a href=\"${item.href || '#'}\" class=\"hdr-mega-link\">${item.label}</a>\n `)}\n </div>\n `)}\n ${ctx.megaCta ? html`\n <div class=\"hdr-mega-cta\">\n <div class=\"hdr-mega-cta-label\">${ctx.megaCta.label}</div>\n <div class=\"hdr-mega-cta-title\">${ctx.megaCta.title}</div>\n <div class=\"hdr-mega-cta-desc\">${ctx.megaCta.desc}</div>\n <a href=\"${ctx.megaCta.href || '#'}\"\n class=\"hdr-action hdr-action--kaki\"\n style=\"height:32px;font-size:8px;\"\n >${ctx.megaCta.cta}</a>\n </div>\n ` : nothing}\n </div>\n </div>\n\n ${renderMobileDrawer(ctx)}`;\n}"],"names":[],"mappings":";;;AAUO,SAAS,WAAW,KAAgC;AACzD,SAAO;AAAA;AAAA,QAED,WAAW,GAAG,CAAC;AAAA;AAAA,UAEb,IAAI,MAAM;AAAA,IAAI,CAAA,SAAA;;AACd,yBAAK,aAAL,mBAAe,UACX;AAAA;AAAA;AAAA,iCAGmB,MAAY,IAAI,WAAW;AAAA,iCAC3B,MAAY,IAAI,YAAY;AAAA;AAAA;AAAA,sBAGvC,KAAK,KAAK,IAAI,UAAU;AAAA;AAAA,0BAGhC,gBAAgB,KAAK,QAAQ,GAAG,sBAAsB,KAAK,KAAK;AAAA;AAAA,EAAA,CACrE;AAAA;AAAA,QAED,cAAc,GAAG,CAAC;AAAA,QAClB,gBAAgB,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,gCAKI,IAAI,YAAY,YAAY,EAAE;AAAA,qBACzC,MAAY,IAAI,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,8BAKnB,IAAI,YAAY,YAAY,EAAE;AAAA,qBACvC,MAAY,IAAI,WAAW;AAAA,qBAC3B,MAAY,IAAI,YAAY;AAAA;AAAA;AAAA,UAGvC,IAAI,YAAY,IAAI,CAAA,QAAO;AAAA;AAAA,gDAEW,IAAI,KAAK;AAAA,cAC3C,IAAI,MAAM,IAAI,CAAA,SAAQ;AAAA,yBACX,KAAK,QAAQ,GAAG,2BAA2B,KAAK,KAAK;AAAA,aACjE,CAAC;AAAA;AAAA,SAEL,CAAC;AAAA,UACA,IAAI,UAAU;AAAA;AAAA,8CAEsB,IAAI,QAAQ,KAAK;AAAA,8CACjB,IAAI,QAAQ,KAAK;AAAA,6CAClB,IAAI,QAAQ,IAAI;AAAA,uBACtC,IAAI,QAAQ,QAAQ,GAAG;AAAA;AAAA;AAAA,eAG/B,IAAI,QAAQ,GAAG;AAAA;AAAA,YAElB,OAAO;AAAA;AAAA;AAAA;AAAA,MAIb,mBAAmB,GAAG,CAAC;AAC7B;"}
1
+ {"version":3,"file":"index355.js","sources":["../src/components/molecules/header/templates/header-centered.html.ts"],"sourcesContent":["import { html, nothing, TemplateResult } from 'lit';\nimport type { LibHeader } from '../lib-header.component';\nimport { renderLogo, renderLinks, renderActions } from './header-shared.html';\nimport { renderHamburger, renderMobileDrawer } from './header-mobile.html';\n\n/**\n * Template variante centered:\n * [nav-izquierda] | [logo-central] | [nav-derecha + actions]\n * En móvil colapsa a: [logo] | [hamburger]\n */\nexport function renderCentered(ctx: LibHeader): TemplateResult {\n const mid = Math.floor(ctx.links.length / 2);\n const leftLinks = ctx.links.slice(0, mid);\n const rightLinks = ctx.links.slice(mid);\n\n return html`\n ${ctx.announcement ? html`\n <div class=\"hdr-announcement\">\n <span>${ctx.announcement}</span>\n ${ctx.announcementHref\n ? html`<a href=\"${ctx.announcementHref}\">Ver →</a>`\n : nothing}\n </div>` : nothing}\n\n <div class=\"hdr\">\n <nav class=\"hdr-nav hdr-nav--centered-left\">\n ${renderLinks(ctx, leftLinks)}\n </nav>\n ${renderLogo(ctx)}\n <nav class=\"hdr-nav hdr-nav--right\">\n ${renderLinks(ctx, rightLinks)}\n ${renderActions(ctx)}\n </nav>\n ${renderHamburger(ctx)}\n </div>\n ${renderMobileDrawer(ctx)}`;\n}"],"names":[],"mappings":";;;AAUO,SAAS,eAAe,KAAgC;AAC7D,QAAM,MAAa,KAAK,MAAM,IAAI,MAAM,SAAS,CAAC;AAClD,QAAM,YAAa,IAAI,MAAM,MAAM,GAAG,GAAG;AACzC,QAAM,aAAa,IAAI,MAAM,MAAM,GAAG;AAEtC,SAAO;AAAA,MACH,IAAI,eAAe;AAAA;AAAA,gBAET,IAAI,YAAY;AAAA,UACtB,IAAI,mBACF,gBAAgB,IAAI,gBAAgB,gBACpC,OAAO;AAAA,gBACH,OAAO;AAAA;AAAA;AAAA;AAAA,UAIb,YAAY,KAAK,SAAS,CAAC;AAAA;AAAA,QAE7B,WAAW,GAAG,CAAC;AAAA;AAAA,UAEb,YAAY,KAAK,UAAU,CAAC;AAAA,UAC5B,cAAc,GAAG,CAAC;AAAA;AAAA,QAEpB,gBAAgB,GAAG,CAAC;AAAA;AAAA,MAEtB,mBAAmB,GAAG,CAAC;AAC7B;"}
package/dist/index356.js CHANGED
@@ -1,67 +1,69 @@
1
1
  import { nothing, html } from "lit";
2
- import { svgBell, renderBreadcrumbs, svgSearch } from "./index361.js";
3
- function renderAppBar(ctx) {
2
+ import { renderLogo, svgChevron, renderActions } from "./index361.js";
3
+ import { renderHamburger, renderMobileDrawer } from "./index362.js";
4
+ function renderMega(ctx) {
4
5
  return html`
5
6
  <div class="hdr">
7
+ ${renderLogo(ctx)}
8
+ <nav class="hdr-nav">
9
+ ${ctx.links.map(
10
+ (link) => {
11
+ var _a;
12
+ return ((_a = link.dropdown) == null ? void 0 : _a.length) ? html`
13
+ <div
14
+ class="hdr-dd"
15
+ @mouseenter="${() => ctx._openMega()}"
16
+ @mouseleave="${() => ctx._closeMega()}"
17
+ >
18
+ <span class="hdr-link">
19
+ ${link.label} ${svgChevron}
20
+ </span>
21
+ </div>` : html`<a href="${link.href || "#"}" class="hdr-link">${link.label}</a>`;
22
+ }
23
+ )}
24
+ </nav>
25
+ ${renderActions(ctx)}
26
+ ${renderHamburger(ctx)}
27
+ </div>
6
28
 
7
- <!-- Logo mark (sin texto) -->
8
- <div class="hdr-logo-mark" style="flex-shrink:0;"></div>
29
+ <!-- Overlay detrás del panel -->
30
+ <div
31
+ class="hdr-mega-overlay ${ctx._megaOpen ? "is-open" : ""}"
32
+ @mouseenter="${() => ctx._closeMega()}"
33
+ ></div>
9
34
 
10
- <!-- Breadcrumbs -->
11
- ${ctx.breadcrumbs.length ? renderBreadcrumbs(ctx.breadcrumbs) : nothing}
12
-
13
- <!-- Divider — oculto en móvil -->
14
- <div class="hdr-divider hdr-divider--desktop"></div>
15
-
16
- <!-- Search — full en desktop, icono en móvil -->
17
- ${ctx.showSearch ? html`
18
- <div class="hdr-search">
19
- ${svgSearch}
20
- <input
21
- type="search"
22
- placeholder="${ctx.searchPlaceholder}"
23
- @input="${(e) => ctx._onSearch(e.target.value)}"
24
- />
25
- <span class="hdr-search-kbd">⌘K</span>
26
- </div>
27
- ` : nothing}
28
-
29
- <div class="hdr-spacer"></div>
30
-
31
- <!-- Context actions — ocultos en móvil -->
32
- ${ctx.actions.length ? html`
33
- <div class="hdr-actions hdr-actions--desktop">
34
- ${ctx.actions.map((action) => html`
35
- <a href="${action.href || "#"}"
36
- class="hdr-action ${action.variant === "outline" ? "hdr-action--outline" : "hdr-action--kaki"}"
35
+ <!-- Panel full-width -->
36
+ <div
37
+ class="hdr-mega-panel ${ctx._megaOpen ? "is-open" : ""}"
38
+ @mouseenter="${() => ctx._openMega()}"
39
+ @mouseleave="${() => ctx._closeMega()}"
40
+ >
41
+ <div class="hdr-mega-inner">
42
+ ${ctx.megaColumns.map((col) => html`
43
+ <div>
44
+ <div class="hdr-mega-group-title">${col.title}</div>
45
+ ${col.items.map((item) => html`
46
+ <a href="${item.href || "#"}" class="hdr-mega-link">${item.label}</a>
47
+ `)}
48
+ </div>
49
+ `)}
50
+ ${ctx.megaCta ? html`
51
+ <div class="hdr-mega-cta">
52
+ <div class="hdr-mega-cta-label">${ctx.megaCta.label}</div>
53
+ <div class="hdr-mega-cta-title">${ctx.megaCta.title}</div>
54
+ <div class="hdr-mega-cta-desc">${ctx.megaCta.desc}</div>
55
+ <a href="${ctx.megaCta.href || "#"}"
56
+ class="hdr-action hdr-action--kaki"
37
57
  style="height:32px;font-size:8px;"
38
- >${action.label}</a>
39
- `)}
40
- </div>
41
- ` : nothing}
42
-
43
- <!-- Status (compact mode) — oculto en móvil -->
44
- ${ctx.compact ? html`
45
- <div class="hdr-status hdr-status--desktop">
46
- <div class="hdr-status-dot"></div>
47
- <span class="hdr-status-text">Online · 42ms</span>
48
- </div>
49
- ` : nothing}
50
-
51
- <div class="hdr-divider"></div>
52
-
53
- <!-- Notificaciones -->
54
- <div class="hdr-notif">
55
- ${svgBell}
56
- ${ctx.notifications ? html`<span class="hdr-notif-dot"></span>` : nothing}
58
+ >${ctx.megaCta.cta}</a>
59
+ </div>
60
+ ` : nothing}
57
61
  </div>
62
+ </div>
58
63
 
59
- <!-- Avatar -->
60
- <div class="hdr-avatar">${ctx.userInitials || ctx.userName.slice(0, 1)}</div>
61
-
62
- </div>`;
64
+ ${renderMobileDrawer(ctx)}`;
63
65
  }
64
66
  export {
65
- renderAppBar
67
+ renderMega
66
68
  };
67
69
  //# sourceMappingURL=index356.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index356.js","sources":["../src/components/molecules/header/templates/header-app-bar.html.ts"],"sourcesContent":["import { html, nothing, TemplateResult } from 'lit';\nimport type { LibHeader } from '../lib-header.component';\nimport type { HeaderAction } from '../lib-header.types';\nimport { renderBreadcrumbs, svgSearch, svgBell } from './header-shared.html';\n\n/**\n * Template variante app-bar:\n * logomark | breadcrumbs | search | spacer | actions | notif | avatar\n * No usa el drawer móvil — sus acciones son contextuales.\n * En móvil: breadcrumbs se truncan, search colapsa a icono.\n */\nexport function renderAppBar(ctx: LibHeader): TemplateResult {\n return html`\n <div class=\"hdr\">\n\n <!-- Logo mark (sin texto) -->\n <div class=\"hdr-logo-mark\" style=\"flex-shrink:0;\"></div>\n\n <!-- Breadcrumbs -->\n ${ctx.breadcrumbs.length ? renderBreadcrumbs(ctx.breadcrumbs) : nothing}\n\n <!-- Divider oculto en móvil -->\n <div class=\"hdr-divider hdr-divider--desktop\"></div>\n\n <!-- Search — full en desktop, icono en móvil -->\n ${ctx.showSearch ? html`\n <div class=\"hdr-search\">\n ${svgSearch}\n <input\n type=\"search\"\n placeholder=\"${ctx.searchPlaceholder}\"\n @input=\"${(e: Event): void =>\n ctx._onSearch((e.target as HTMLInputElement).value)}\"\n />\n <span class=\"hdr-search-kbd\">⌘K</span>\n </div>\n ` : nothing}\n\n <div class=\"hdr-spacer\"></div>\n\n <!-- Context actions — ocultos en móvil -->\n ${ctx.actions.length ? html`\n <div class=\"hdr-actions hdr-actions--desktop\">\n ${ctx.actions.map((action: HeaderAction) => html`\n <a href=\"${action.href || '#'}\"\n class=\"hdr-action ${action.variant === 'outline'\n ? 'hdr-action--outline' : 'hdr-action--kaki'}\"\n style=\"height:32px;font-size:8px;\"\n >${action.label}</a>\n `)}\n </div>\n ` : nothing}\n\n <!-- Status (compact mode) — oculto en móvil -->\n ${ctx.compact ? html`\n <div class=\"hdr-status hdr-status--desktop\">\n <div class=\"hdr-status-dot\"></div>\n <span class=\"hdr-status-text\">Online · 42ms</span>\n </div>\n ` : nothing}\n\n <div class=\"hdr-divider\"></div>\n\n <!-- Notificaciones -->\n <div class=\"hdr-notif\">\n ${svgBell}\n ${ctx.notifications ? html`<span class=\"hdr-notif-dot\"></span>` : nothing}\n </div>\n\n <!-- Avatar -->\n <div class=\"hdr-avatar\">${ctx.userInitials || ctx.userName.slice(0, 1)}</div>\n\n </div>`;\n}"],"names":[],"mappings":";;AAWO,SAAS,aAAa,KAAgC;AAC3D,SAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAOD,IAAI,YAAY,SAAS,kBAAkB,IAAI,WAAW,IAAI,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAMrE,IAAI,aAAa;AAAA;AAAA,YAEb,SAAS;AAAA;AAAA;AAAA,2BAGM,IAAI,iBAAiB;AAAA,sBAC1B,CAAC,MACT,IAAI,UAAW,EAAE,OAA4B,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA,UAIvD,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,QAKT,IAAI,QAAQ,SAAS;AAAA;AAAA,YAEjB,IAAI,QAAQ,IAAI,CAAC,WAAyB;AAAA,uBAC/B,OAAO,QAAQ,GAAG;AAAA,kCACP,OAAO,YAAY,YACnC,wBAAwB,kBAAkB;AAAA;AAAA,eAE7C,OAAO,KAAK;AAAA,WAChB,CAAC;AAAA;AAAA,UAEF,OAAO;AAAA;AAAA;AAAA,QAGT,IAAI,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,UAKZ,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAMP,OAAO;AAAA,UACP,IAAI,gBAAgB,4CAA4C,OAAO;AAAA;AAAA;AAAA;AAAA,gCAIjD,IAAI,gBAAgB,IAAI,SAAS,MAAM,GAAG,CAAC,CAAC;AAAA;AAAA;AAG5E;"}
1
+ {"version":3,"file":"index356.js","sources":["../src/components/molecules/header/templates/header-mega.html.ts"],"sourcesContent":["import { html, nothing, TemplateResult } from 'lit';\nimport type { LibHeader } from '../lib-header.component';\nimport { renderLogo, renderActions, svgChevron } from './header-shared.html';\nimport { renderHamburger, renderMobileDrawer } from './header-mobile.html';\n\n/**\n * Template variante mega:\n * Panel full-width al hover sobre el link con dropdown.\n * En móvil el panel se oculta y el drawer cubre los mega-columns.\n */\nexport function renderMega(ctx: LibHeader): TemplateResult {\n return html`\n <div class=\"hdr\">\n ${renderLogo(ctx)}\n <nav class=\"hdr-nav\">\n ${ctx.links.map(link =>\n link.dropdown?.length\n ? html`\n <div\n class=\"hdr-dd\"\n @mouseenter=\"${(): void => ctx._openMega()}\"\n @mouseleave=\"${(): void => ctx._closeMega()}\"\n >\n <span class=\"hdr-link\">\n ${link.label} ${svgChevron}\n </span>\n </div>`\n : html`<a href=\"${link.href || '#'}\" class=\"hdr-link\">${link.label}</a>`\n )}\n </nav>\n ${renderActions(ctx)}\n ${renderHamburger(ctx)}\n </div>\n\n <!-- Overlay detrás del panel -->\n <div\n class=\"hdr-mega-overlay ${ctx._megaOpen ? 'is-open' : ''}\"\n @mouseenter=\"${(): void => ctx._closeMega()}\"\n ></div>\n\n <!-- Panel full-width -->\n <div\n class=\"hdr-mega-panel ${ctx._megaOpen ? 'is-open' : ''}\"\n @mouseenter=\"${(): void => ctx._openMega()}\"\n @mouseleave=\"${(): void => ctx._closeMega()}\"\n >\n <div class=\"hdr-mega-inner\">\n ${ctx.megaColumns.map(col => html`\n <div>\n <div class=\"hdr-mega-group-title\">${col.title}</div>\n ${col.items.map(item => html`\n <a href=\"${item.href || '#'}\" class=\"hdr-mega-link\">${item.label}</a>\n `)}\n </div>\n `)}\n ${ctx.megaCta ? html`\n <div class=\"hdr-mega-cta\">\n <div class=\"hdr-mega-cta-label\">${ctx.megaCta.label}</div>\n <div class=\"hdr-mega-cta-title\">${ctx.megaCta.title}</div>\n <div class=\"hdr-mega-cta-desc\">${ctx.megaCta.desc}</div>\n <a href=\"${ctx.megaCta.href || '#'}\"\n class=\"hdr-action hdr-action--kaki\"\n style=\"height:32px;font-size:8px;\"\n >${ctx.megaCta.cta}</a>\n </div>\n ` : nothing}\n </div>\n </div>\n\n ${renderMobileDrawer(ctx)}`;\n}"],"names":[],"mappings":";;;AAUO,SAAS,WAAW,KAAgC;AACzD,SAAO;AAAA;AAAA,QAED,WAAW,GAAG,CAAC;AAAA;AAAA,UAEb,IAAI,MAAM;AAAA,IAAI,CAAA,SAAA;;AACd,yBAAK,aAAL,mBAAe,UACX;AAAA;AAAA;AAAA,iCAGmB,MAAY,IAAI,WAAW;AAAA,iCAC3B,MAAY,IAAI,YAAY;AAAA;AAAA;AAAA,sBAGvC,KAAK,KAAK,IAAI,UAAU;AAAA;AAAA,0BAGhC,gBAAgB,KAAK,QAAQ,GAAG,sBAAsB,KAAK,KAAK;AAAA;AAAA,EAAA,CACrE;AAAA;AAAA,QAED,cAAc,GAAG,CAAC;AAAA,QAClB,gBAAgB,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,gCAKI,IAAI,YAAY,YAAY,EAAE;AAAA,qBACzC,MAAY,IAAI,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,8BAKnB,IAAI,YAAY,YAAY,EAAE;AAAA,qBACvC,MAAY,IAAI,WAAW;AAAA,qBAC3B,MAAY,IAAI,YAAY;AAAA;AAAA;AAAA,UAGvC,IAAI,YAAY,IAAI,CAAA,QAAO;AAAA;AAAA,gDAEW,IAAI,KAAK;AAAA,cAC3C,IAAI,MAAM,IAAI,CAAA,SAAQ;AAAA,yBACX,KAAK,QAAQ,GAAG,2BAA2B,KAAK,KAAK;AAAA,aACjE,CAAC;AAAA;AAAA,SAEL,CAAC;AAAA,UACA,IAAI,UAAU;AAAA;AAAA,8CAEsB,IAAI,QAAQ,KAAK;AAAA,8CACjB,IAAI,QAAQ,KAAK;AAAA,6CAClB,IAAI,QAAQ,IAAI;AAAA,uBACtC,IAAI,QAAQ,QAAQ,GAAG;AAAA;AAAA;AAAA,eAG/B,IAAI,QAAQ,GAAG;AAAA;AAAA,YAElB,OAAO;AAAA;AAAA;AAAA;AAAA,MAIb,mBAAmB,GAAG,CAAC;AAC7B;"}
package/dist/index357.js CHANGED
@@ -1,28 +1,67 @@
1
- import { nothing as A, noChange as E } from "./index358.js";
2
- import { Directive as i, PartType as t, directive as e$1 } from "./index359.js";
3
- /**
4
- * @license
5
- * Copyright 2017 Google LLC
6
- * SPDX-License-Identifier: BSD-3-Clause
7
- */
8
- class e extends i {
9
- constructor(i2) {
10
- if (super(i2), this.it = A, i2.type !== t.CHILD) throw Error(this.constructor.directiveName + "() can only be used in child bindings");
11
- }
12
- render(r) {
13
- if (r === A || null == r) return this._t = void 0, this.it = r;
14
- if (r === E) return r;
15
- if ("string" != typeof r) throw Error(this.constructor.directiveName + "() called with a non-string value");
16
- if (r === this.it) return this._t;
17
- this.it = r;
18
- const s = [r];
19
- return s.raw = s, this._t = { _$litType$: this.constructor.resultType, strings: s, values: [] };
20
- }
1
+ import { nothing, html } from "lit";
2
+ import { svgBell, renderBreadcrumbs, svgSearch } from "./index361.js";
3
+ function renderAppBar(ctx) {
4
+ return html`
5
+ <div class="hdr">
6
+
7
+ <!-- Logo mark (sin texto) -->
8
+ <div class="hdr-logo-mark" style="flex-shrink:0;"></div>
9
+
10
+ <!-- Breadcrumbs -->
11
+ ${ctx.breadcrumbs.length ? renderBreadcrumbs(ctx.breadcrumbs) : nothing}
12
+
13
+ <!-- Divider oculto en móvil -->
14
+ <div class="hdr-divider hdr-divider--desktop"></div>
15
+
16
+ <!-- Search full en desktop, icono en móvil -->
17
+ ${ctx.showSearch ? html`
18
+ <div class="hdr-search">
19
+ ${svgSearch}
20
+ <input
21
+ type="search"
22
+ placeholder="${ctx.searchPlaceholder}"
23
+ @input="${(e) => ctx._onSearch(e.target.value)}"
24
+ />
25
+ <span class="hdr-search-kbd">⌘K</span>
26
+ </div>
27
+ ` : nothing}
28
+
29
+ <div class="hdr-spacer"></div>
30
+
31
+ <!-- Context actions — ocultos en móvil -->
32
+ ${ctx.actions.length ? html`
33
+ <div class="hdr-actions hdr-actions--desktop">
34
+ ${ctx.actions.map((action) => html`
35
+ <a href="${action.href || "#"}"
36
+ class="hdr-action ${action.variant === "outline" ? "hdr-action--outline" : "hdr-action--kaki"}"
37
+ style="height:32px;font-size:8px;"
38
+ >${action.label}</a>
39
+ `)}
40
+ </div>
41
+ ` : nothing}
42
+
43
+ <!-- Status (compact mode) — oculto en móvil -->
44
+ ${ctx.compact ? html`
45
+ <div class="hdr-status hdr-status--desktop">
46
+ <div class="hdr-status-dot"></div>
47
+ <span class="hdr-status-text">Online · 42ms</span>
48
+ </div>
49
+ ` : nothing}
50
+
51
+ <div class="hdr-divider"></div>
52
+
53
+ <!-- Notificaciones -->
54
+ <div class="hdr-notif">
55
+ ${svgBell}
56
+ ${ctx.notifications ? html`<span class="hdr-notif-dot"></span>` : nothing}
57
+ </div>
58
+
59
+ <!-- Avatar -->
60
+ <div class="hdr-avatar">${ctx.userInitials || ctx.userName.slice(0, 1)}</div>
61
+
62
+ </div>`;
21
63
  }
22
- e.directiveName = "unsafeHTML", e.resultType = 1;
23
- const o = e$1(e);
24
64
  export {
25
- e as UnsafeHTMLDirective,
26
- o as unsafeHTML
65
+ renderAppBar
27
66
  };
28
67
  //# sourceMappingURL=index357.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index357.js","sources":["../../../node_modules/.pnpm/lit-html@3.3.2/node_modules/lit-html/directives/unsafe-html.js"],"sourcesContent":["import{nothing as t,noChange as i}from\"../lit-html.js\";import{directive as r,Directive as s,PartType as n}from\"../directive.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class e extends s{constructor(i){if(super(i),this.it=t,i.type!==n.CHILD)throw Error(this.constructor.directiveName+\"() can only be used in child bindings\")}render(r){if(r===t||null==r)return this._t=void 0,this.it=r;if(r===i)return r;if(\"string\"!=typeof r)throw Error(this.constructor.directiveName+\"() called with a non-string value\");if(r===this.it)return this._t;this.it=r;const s=[r];return s.raw=s,this._t={_$litType$:this.constructor.resultType,strings:s,values:[]}}}e.directiveName=\"unsafeHTML\",e.resultType=1;const o=r(e);export{e as UnsafeHTMLDirective,o as unsafeHTML};\n//# sourceMappingURL=unsafe-html.js.map\n"],"names":["s","i","t","n","r"],"mappings":";;AACA;AAAA;AAAA;AAAA;AAAA;AAIG,MAAM,UAAUA,EAAC;AAAA,EAAC,YAAYC,IAAE;AAAC,QAAG,MAAMA,EAAC,GAAE,KAAK,KAAGC,GAAED,GAAE,SAAOE,EAAE,MAAM,OAAM,MAAM,KAAK,YAAY,gBAAc,uCAAuC;AAAA,EAAC;AAAA,EAAC,OAAO,GAAE;AAAC,QAAG,MAAID,KAAG,QAAM,EAAE,QAAO,KAAK,KAAG,QAAO,KAAK,KAAG;AAAE,QAAG,MAAID,EAAE,QAAO;AAAE,QAAG,YAAU,OAAO,EAAE,OAAM,MAAM,KAAK,YAAY,gBAAc,mCAAmC;AAAE,QAAG,MAAI,KAAK,GAAG,QAAO,KAAK;AAAG,SAAK,KAAG;AAAE,UAAM,IAAE,CAAC,CAAC;AAAE,WAAO,EAAE,MAAI,GAAE,KAAK,KAAG,EAAC,YAAW,KAAK,YAAY,YAAW,SAAQ,GAAE,QAAO,CAAA,EAAE;AAAA,EAAC;AAAC;AAAC,EAAE,gBAAc,cAAa,EAAE,aAAW;AAAO,MAAC,IAAEG,IAAE,CAAC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index357.js","sources":["../src/components/molecules/header/templates/header-app-bar.html.ts"],"sourcesContent":["import { html, nothing, TemplateResult } from 'lit';\nimport type { LibHeader } from '../lib-header.component';\nimport type { HeaderAction } from '../lib-header.types';\nimport { renderBreadcrumbs, svgSearch, svgBell } from './header-shared.html';\n\n/**\n * Template variante app-bar:\n * logomark | breadcrumbs | search | spacer | actions | notif | avatar\n * No usa el drawer móvil — sus acciones son contextuales.\n * En móvil: breadcrumbs se truncan, search colapsa a icono.\n */\nexport function renderAppBar(ctx: LibHeader): TemplateResult {\n return html`\n <div class=\"hdr\">\n\n <!-- Logo mark (sin texto) -->\n <div class=\"hdr-logo-mark\" style=\"flex-shrink:0;\"></div>\n\n <!-- Breadcrumbs -->\n ${ctx.breadcrumbs.length ? renderBreadcrumbs(ctx.breadcrumbs) : nothing}\n\n <!-- Divider oculto en móvil -->\n <div class=\"hdr-divider hdr-divider--desktop\"></div>\n\n <!-- Search — full en desktop, icono en móvil -->\n ${ctx.showSearch ? html`\n <div class=\"hdr-search\">\n ${svgSearch}\n <input\n type=\"search\"\n placeholder=\"${ctx.searchPlaceholder}\"\n @input=\"${(e: Event): void =>\n ctx._onSearch((e.target as HTMLInputElement).value)}\"\n />\n <span class=\"hdr-search-kbd\">⌘K</span>\n </div>\n ` : nothing}\n\n <div class=\"hdr-spacer\"></div>\n\n <!-- Context actions — ocultos en móvil -->\n ${ctx.actions.length ? html`\n <div class=\"hdr-actions hdr-actions--desktop\">\n ${ctx.actions.map((action: HeaderAction) => html`\n <a href=\"${action.href || '#'}\"\n class=\"hdr-action ${action.variant === 'outline'\n ? 'hdr-action--outline' : 'hdr-action--kaki'}\"\n style=\"height:32px;font-size:8px;\"\n >${action.label}</a>\n `)}\n </div>\n ` : nothing}\n\n <!-- Status (compact mode) — oculto en móvil -->\n ${ctx.compact ? html`\n <div class=\"hdr-status hdr-status--desktop\">\n <div class=\"hdr-status-dot\"></div>\n <span class=\"hdr-status-text\">Online · 42ms</span>\n </div>\n ` : nothing}\n\n <div class=\"hdr-divider\"></div>\n\n <!-- Notificaciones -->\n <div class=\"hdr-notif\">\n ${svgBell}\n ${ctx.notifications ? html`<span class=\"hdr-notif-dot\"></span>` : nothing}\n </div>\n\n <!-- Avatar -->\n <div class=\"hdr-avatar\">${ctx.userInitials || ctx.userName.slice(0, 1)}</div>\n\n </div>`;\n}"],"names":[],"mappings":";;AAWO,SAAS,aAAa,KAAgC;AAC3D,SAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAOD,IAAI,YAAY,SAAS,kBAAkB,IAAI,WAAW,IAAI,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAMrE,IAAI,aAAa;AAAA;AAAA,YAEb,SAAS;AAAA;AAAA;AAAA,2BAGM,IAAI,iBAAiB;AAAA,sBAC1B,CAAC,MACT,IAAI,UAAW,EAAE,OAA4B,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA,UAIvD,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,QAKT,IAAI,QAAQ,SAAS;AAAA;AAAA,YAEjB,IAAI,QAAQ,IAAI,CAAC,WAAyB;AAAA,uBAC/B,OAAO,QAAQ,GAAG;AAAA,kCACP,OAAO,YAAY,YACnC,wBAAwB,kBAAkB;AAAA;AAAA,eAE7C,OAAO,KAAK;AAAA,WAChB,CAAC;AAAA;AAAA,UAEF,OAAO;AAAA;AAAA;AAAA,QAGT,IAAI,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,UAKZ,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAMP,OAAO;AAAA,UACP,IAAI,gBAAgB,4CAA4C,OAAO;AAAA;AAAA;AAAA;AAAA,gCAIjD,IAAI,gBAAgB,IAAI,SAAS,MAAM,GAAG,CAAC,CAAC;AAAA;AAAA;AAG5E;"}
@@ -1,5 +1,6 @@
1
1
  import { LitElement, TemplateResult } from 'lit';
2
- import type { LibSize, LibVariant } from '../../../types';
2
+ import type { LibSize } from '../../../types';
3
+ import type { LibButtonVariant } from './lib-button.types';
3
4
  /**
4
5
  * @tag lib-button
5
6
  * @element lib-button
@@ -12,9 +13,9 @@ export declare class LibButton extends LitElement {
12
13
  private _buttonId;
13
14
  constructor();
14
15
  /**
15
- * @type {"default" | "primary" | "secondary" | "success" | "warning" | "danger" | "accent"}
16
+ * @type {"primary" | "secondary" | "ghost" | "accent" | "danger" | "kintsugi" | "brutal"}
16
17
  */
17
- variant: LibVariant;
18
+ variant: LibButtonVariant;
18
19
  /**
19
20
  * @type {"sm" | "md" | "lg" | "xl"}
20
21
  */
@@ -28,6 +29,14 @@ export declare class LibButton extends LitElement {
28
29
  */
29
30
  glass: boolean;
30
31
  /**
32
+ * @type {boolean}
33
+ */
34
+ spotlight: boolean;
35
+ private _onMouseMove;
36
+ private _onMouseLeave;
37
+ connectedCallback(): void;
38
+ disconnectedCallback(): void;
39
+ /**
31
40
  * @type {'button' | 'submit' | 'reset'}
32
41
  */
33
42
  type: 'button' | 'submit' | 'reset';
@@ -1 +1 @@
1
- {"version":3,"file":"lib-button.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/button/lib-button.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkB,cAAc,EAAE,MAAM,KAAK,CAAC;AAGjE,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAsB,MAAM,gBAAgB,CAAC;AAK9E;;;;;;GAMG;AACH,qBACa,SAAU,SAAQ,UAAU;IACvC,OAAgB,MAAM,4BAOpB;IAEF,OAAO,CAAC,SAAS,CAAS;;IAO1B;;KAEC;IAED,OAAO,EAAE,UAAU,CAAa;IAEhC;;KAEC;IAED,IAAI,EAAE,OAAO,CAAQ;IAErB;;KAEC;IAED,QAAQ,UAAS;IAEnB;;OAEG;IAED,KAAK,UAAS;IAEd;;KAEC;IAED,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAY;IAE/C;;KAEC;IAED,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEpC;;KAEC;IAEQ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEzC;;OAEG;IACM,MAAM,IAAI,cAAc;IAcjC,OAAO,CAAC,YAAY;CAerB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}
1
+ {"version":3,"file":"lib-button.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/button/lib-button.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkB,cAAc,EAAE,MAAM,KAAK,CAAC;AAGjE,OAAO,KAAK,EAAE,OAAO,EAAsB,MAAM,gBAAgB,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAK3D;;;;;;GAMG;AACH,qBACa,SAAU,SAAQ,UAAU;IACvC,OAAgB,MAAM,4BAOpB;IAEF,OAAO,CAAC,SAAS,CAAS;;IAO1B;;KAEC;IAED,OAAO,EAAE,gBAAgB,CAAa;IAEtC;;KAEC;IAED,IAAI,EAAE,OAAO,CAAQ;IAErB;;KAEC;IAED,QAAQ,UAAS;IAEnB;;OAEG;IAED,KAAK,UAAS;IAEd;;KAEC;IAED,SAAS,UAAS;IAElB,OAAO,CAAC,YAAY,CASlB;IAEF,OAAO,CAAC,aAAa,CAGnB;IAEO,iBAAiB,IAAI,IAAI;IAMzB,oBAAoB,IAAI,IAAI;IAMrC;;KAEC;IAED,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAY;IAE/C;;KAEC;IAED,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEpC;;KAEC;IAEQ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEzC;;OAEG;IACM,MAAM,IAAI,cAAc;IAejC,OAAO,CAAC,YAAY;CAerB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}
@@ -1,14 +1,16 @@
1
1
  import { TemplateResult } from 'lit';
2
- import type { LibSize, LibVariant } from '../../../types';
2
+ import type { LibSize } from '../../../types';
3
+ import type { LibButtonVariant } from './lib-button.types';
3
4
  export interface ButtonTemplateProps {
4
5
  buttonId: string;
5
6
  type: 'button' | 'submit' | 'reset';
6
7
  disabled: boolean;
7
8
  ariaLabel?: string | undefined;
8
9
  handleClick: (event: Event) => void;
9
- variant: LibVariant;
10
+ variant: LibButtonVariant;
10
11
  size: LibSize;
11
12
  glass: boolean;
13
+ spotlight: boolean;
12
14
  customPadding?: string | undefined;
13
15
  }
14
16
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lib-button.html.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/button/lib-button.html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAE,MAAM,KAAK,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE1D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACpC,OAAO,EAAE,UAAU,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,cAAc,CAgBzE"}
1
+ {"version":3,"file":"lib-button.html.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/button/lib-button.html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAE,MAAM,KAAK,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACpC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,cAAc,CAiBzE"}
@@ -10,6 +10,9 @@ export default meta;
10
10
  type Story = StoryObj<LibButtonStoryArgs>;
11
11
  export declare const Playground: Story;
12
12
  export declare const AllVariants: Story;
13
+ export declare const Kintsugi: Story;
14
+ export declare const Brutal: Story;
15
+ export declare const SpotlightEffect: Story;
13
16
  export declare const Sizes: Story;
14
17
  export declare const Disabled: Story;
15
18
  export declare const GlassEffect: Story;
@@ -1 +1 @@
1
- {"version":3,"file":"lib-button.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/button/lib-button.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAQ,cAAc,EAAE,MAAM,KAAK,CAAC;AAC3C,OAAO,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,KAAK,kBAAkB,GAAG,SAAS,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,cAAc,CAAA;CAAE,CAAC;AAEhF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAmClC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAE1C,eAAO,MAAM,UAAU,EAAE,KAQxB,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,KAWzB,CAAC;AAGF,eAAO,MAAM,KAAK,EAAE,KAQnB,CAAC;AAGF,eAAO,MAAM,QAAQ,EAAE,KAUtB,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,KAmBzB,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,KAkBvB,CAAC"}
1
+ {"version":3,"file":"lib-button.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/button/lib-button.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAQ,cAAc,EAAE,MAAM,KAAK,CAAC;AAC3C,OAAO,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,KAAK,kBAAkB,GAAG,SAAS,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,cAAc,CAAA;CAAE,CAAC;AAEhF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAwClC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAE1C,eAAO,MAAM,UAAU,EAAE,KASxB,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,KAazB,CAAC;AAGF,eAAO,MAAM,QAAQ,EAAE,KAoBtB,CAAC;AAGF,eAAO,MAAM,MAAM,EAAE,KAoBpB,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,KAoB7B,CAAC;AAGF,eAAO,MAAM,KAAK,EAAE,KAQnB,CAAC;AAGF,eAAO,MAAM,QAAQ,EAAE,KAUtB,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,KAmBzB,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,KAkBvB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export type LibButtonVariant = 'primary' | 'secondary' | 'ghost' | 'accent' | 'danger' | 'kintsugi' | 'brutal';
2
+ //# sourceMappingURL=lib-button.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib-button.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/button/lib-button.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,WAAW,GACX,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,QAAQ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { LitElement, TemplateResult } from 'lit';
2
- import type { LibStepStatus, LibStepOrientation, LibStepVariant, LibStepSize } from './lib-step.html';
2
+ import type { LibStepStatus, LibStepOrientation, LibStepVariant, LibStepSize } from './lib-step.types';
3
3
  /**
4
4
  * @element lib-step
5
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"lib-step.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/step/lib-step.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkB,cAAc,EAAE,MAAM,KAAK,CAAC;AAEjE,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAKzB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBACa,OAAQ,SAAQ,UAAU;IACrC,OAAgB,MAAM,4BAGpB;IAEF,2DAA2D;IAE3D,KAAK,SAAM;IAEX,yCAAyC;IAEzC,GAAG,SAAM;IAET;;;OAGG;IAEH,KAAK,SAAK;IAEV;;;;;;;OAOG;IAEH,MAAM,EAAE,aAAa,CAAa;IAElC;;;OAGG;IAEH,IAAI,UAAS;IAEb;;OAEG;IAEH,WAAW,EAAE,kBAAkB,CAAgB;IAE/C;;;;;OAKG;IAEH,OAAO,EAAE,cAAc,CAAa;IAEpC;;;;;OAKG;IAEH,IAAI,EAAE,WAAW,CAAQ;IAEhB,MAAM,IAAI,cAAc;CAUlC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;KACrB;CACF"}
1
+ {"version":3,"file":"lib-step.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/atoms/step/lib-step.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkB,cAAc,EAAE,MAAM,KAAK,CAAC;AAEjE,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAK1B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBACa,OAAQ,SAAQ,UAAU;IACrC,OAAgB,MAAM,4BAGpB;IAEF,2DAA2D;IAE3D,KAAK,SAAM;IAEX,yCAAyC;IAEzC,GAAG,SAAM;IAET;;;OAGG;IAEH,KAAK,SAAK;IAEV;;;;;;;OAOG;IAEH,MAAM,EAAE,aAAa,CAAa;IAElC;;;OAGG;IAEH,IAAI,UAAS;IAEb;;OAEG;IAEH,WAAW,EAAE,kBAAkB,CAAgB;IAE/C;;;;;OAKG;IAEH,OAAO,EAAE,cAAc,CAAa;IAEpC;;;;;OAKG;IAEH,IAAI,EAAE,WAAW,CAAQ;IAEhB,MAAM,IAAI,cAAc;CAUlC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;KACrB;CACF"}
@@ -1,8 +1,7 @@
1
1
  import { TemplateResult } from 'lit';
2
- export type LibStepStatus = 'pending' | 'active' | 'completed' | 'error';
3
- export type LibStepOrientation = 'horizontal' | 'vertical';
4
- export type LibStepVariant = 'default' | 'minimal' | 'kintsugi';
5
- export type LibStepSize = 'sm' | 'md' | 'lg';
2
+ import type { LibStepStatus, LibStepOrientation } from './lib-step.types';
3
+ export type { LibStepStatus, LibStepOrientation } from './lib-step.types';
4
+ export type { LibStepVariant, LibStepSize } from './lib-step.types';
6
5
  export interface StepTemplateProps {
7
6
  index: number;
8
7
  status: LibStepStatus;