@orioncactuscorp/ui 1.3.0 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +1 -1
  2. package/dist/components/ActionArea/ActionArea.css +1 -1
  3. package/dist/components/ActionArea/ActionAreaLayout.css +1 -0
  4. package/dist/components/ActionArea/ActionAreaLayout.js +145 -0
  5. package/dist/components/ActionArea/ActionAreaLayout.module.scss.js +11 -0
  6. package/dist/components/ActionArea.js +10 -4
  7. package/dist/components/BackgroundIconButton/BackgroundIconButton.js +72 -52
  8. package/dist/components/Button/Button.css +1 -1
  9. package/dist/components/Button/Button.js +79 -139
  10. package/dist/components/IconButton/IconButton.js +48 -29
  11. package/dist/components/Loading/Loading.css +1 -1
  12. package/dist/components/Loading/Loading.js +10 -10
  13. package/dist/components/Modal/Modal.css +1 -1
  14. package/dist/components/internal/Pressable.js +90 -0
  15. package/dist/index.js +102 -96
  16. package/dist/styles.css +5 -4
  17. package/dist/ui/src/components/ActionArea/ActionAreaLayout.d.ts +12 -0
  18. package/dist/ui/src/components/ActionArea/ActionAreaLayout.d.ts.map +1 -0
  19. package/dist/ui/src/components/ActionArea/index.d.ts +2 -1
  20. package/dist/ui/src/components/ActionArea/index.d.ts.map +1 -1
  21. package/dist/ui/src/components/ActionArea/types.d.ts +11 -0
  22. package/dist/ui/src/components/ActionArea/types.d.ts.map +1 -1
  23. package/dist/ui/src/components/BackgroundIconButton/BackgroundIconButton.d.ts +1 -1
  24. package/dist/ui/src/components/BackgroundIconButton/BackgroundIconButton.d.ts.map +1 -1
  25. package/dist/ui/src/components/BackgroundIconButton/index.d.ts +1 -1
  26. package/dist/ui/src/components/BackgroundIconButton/index.d.ts.map +1 -1
  27. package/dist/ui/src/components/BackgroundIconButton/types.d.ts +6 -5
  28. package/dist/ui/src/components/BackgroundIconButton/types.d.ts.map +1 -1
  29. package/dist/ui/src/components/Button/Button.d.ts.map +1 -1
  30. package/dist/ui/src/components/Button/types.d.ts +3 -7
  31. package/dist/ui/src/components/Button/types.d.ts.map +1 -1
  32. package/dist/ui/src/components/IconButton/IconButton.d.ts +1 -1
  33. package/dist/ui/src/components/IconButton/IconButton.d.ts.map +1 -1
  34. package/dist/ui/src/components/IconButton/index.d.ts +1 -1
  35. package/dist/ui/src/components/IconButton/index.d.ts.map +1 -1
  36. package/dist/ui/src/components/IconButton/types.d.ts +6 -5
  37. package/dist/ui/src/components/IconButton/types.d.ts.map +1 -1
  38. package/dist/ui/src/components/Modal/types.d.ts +2 -2
  39. package/dist/ui/src/components/Modal/types.d.ts.map +1 -1
  40. package/dist/ui/src/components/internal/Pressable.d.ts +19 -0
  41. package/dist/ui/src/components/internal/Pressable.d.ts.map +1 -0
  42. package/dist/ui/src/index.d.ts +2 -2
  43. package/dist/ui/src/index.d.ts.map +1 -1
  44. package/package.json +1 -1
package/README.md CHANGED
@@ -61,7 +61,7 @@ export default function Example() {
61
61
 
62
62
  - `SectionHeader`
63
63
  - `Button`, `TextButton`, `IconButton`, `BackgroundIconButton`
64
- - `ActionArea`, `ActionAreaButton`
64
+ - `ActionArea`, `ActionAreaButton`, `ActionAreaLayout`
65
65
  - `Badge`, `Background`, `Divider`, `Loading`, `Cell`, `CellItem`
66
66
  - `CheckMark`
67
67
  - `Field`, `FieldLabel`, `FieldControl`, `FieldMessage`, `FieldErrorMessage` (`vertical`/`horizontal` orientation)
@@ -1 +1 @@
1
- .oc-ActionArea-module__actionArea__jnxep{position:relative;isolation:isolate;display:flex;flex-direction:column;inline-size:100%;padding:var(--oc-action-area-padding-y) var(--oc-action-area-padding-x) var(--oc-action-area-padding-bottom);--oc-action-area-padding-x: var(--oc-space-section-padding-viewport-x);--oc-action-area-padding-y: var(--oc-space-section-padding-viewport-y);--oc-action-area-padding-bottom: var(--oc-action-area-padding-y);--oc-action-area-gap: var(--oc-space-item-gap-small);--oc-action-area-actions-gap: var(--oc-space-item-gap-small);--oc-action-area-background-color: var(--oc-color-theme-background-elevated-normal)}.oc-ActionArea-module__actionArea__jnxep:before{position:absolute;inset:0;z-index:0;background:linear-gradient(to bottom,transparent,var(--oc-action-area-background-color) 45%);opacity:0;content:"";pointer-events:none}.oc-ActionArea-module__actionArea__jnxep>*{position:relative;z-index:1}.oc-ActionArea-module__actionArea__jnxep[data-oc-background=true]:before{opacity:1}.oc-ActionArea-module__actionArea__jnxep[data-oc-has-extra=true]{border-block-start:1px solid var(--oc-color-theme-line-normal-neutral);background-color:var(--oc-action-area-background-color)}.oc-ActionArea-module__actionArea__jnxep [data-oc-part=extra-slot]{display:flex;flex-direction:column;align-items:center;margin-block-end:calc(var(--oc-action-area-gap) + var(--oc-action-area-padding-y))}.oc-ActionArea-module__actionArea__jnxep [data-oc-part=caption]{font-size:calc(var(--oc-typo-size-label2) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label2) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label2);font-weight:var(--oc-typo-weight-label2-normal);margin:0 0 var(--oc-space-item-gap-medium);color:var(--oc-color-theme-label-alternative);text-align:center}.oc-ActionArea-module__actionArea__jnxep [data-oc-part=actions]{display:flex;gap:var(--oc-action-area-actions-gap);min-width:0}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=strong] [data-oc-part=actions],.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=cancel] [data-oc-part=actions]{flex-direction:column}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=neutral] [data-oc-part=actions]{flex-direction:row}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=neutral] [data-oc-part=actions]>[data-oc-action-area-button=true]{flex:1 1 0}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=neutral] [data-oc-part=actions]>[data-oc-action-area-button-priority=sub]{flex:0 0 auto}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=actions]{flex-direction:row;justify-content:flex-end}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=actions]:has(>[data-oc-action-area-button-priority=sub][data-oc-icon-only=true]){justify-content:space-between;inline-size:100%}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=actions]>[data-oc-action-area-button-priority=sub]{flex:0 0 auto}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=compact-row]{display:flex;align-items:center;justify-content:space-between;gap:var(--oc-space-item-gap-medium);min-width:0}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=compact-slot]{display:flex;align-items:center;flex:1 1 auto;min-width:0}.oc-ActionArea-module__actionButton__fKHJQ{min-width:0}.oc-ActionArea-module__actionButton__fKHJQ[data-oc-component=text-button]{flex:0 0 auto;inline-size:fit-content;align-self:center}
1
+ .oc-ActionArea-module__actionArea__jnxep{position:relative;isolation:isolate;display:flex;flex-direction:column;inline-size:100%;padding:var(--oc-action-area-padding-y) var(--oc-action-area-padding-x) var(--oc-action-area-padding-bottom);--oc-action-area-padding-x: var(--oc-space-section-padding-viewport-x);--oc-action-area-padding-y: var(--oc-space-section-padding-viewport-y);--oc-action-area-padding-bottom: var(--oc-action-area-padding-y);--oc-action-area-gap: var(--oc-space-item-gap-small);--oc-action-area-actions-gap: var(--oc-space-item-gap-small);--oc-action-area-container-max-width: var(--oc-atomic-width-content);--oc-action-area-background-color: var(--oc-color-theme-background-elevated-normal)}.oc-ActionArea-module__actionArea__jnxep:before{position:absolute;inset:0;z-index:0;background:linear-gradient(to bottom,transparent,var(--oc-action-area-background-color) 45%);opacity:0;content:"";pointer-events:none}.oc-ActionArea-module__actionArea__jnxep>*{position:relative;z-index:1}.oc-ActionArea-module__actionArea__jnxep[data-oc-background=true]:before{opacity:1}.oc-ActionArea-module__actionArea__jnxep[data-oc-has-extra=true]{border-block-start:1px solid var(--oc-color-theme-line-normal-neutral);background-color:var(--oc-action-area-background-color)}.oc-ActionArea-module__actionArea__jnxep [data-oc-part=extra-slot]{display:flex;flex-direction:column;align-items:center;margin-block-end:calc(var(--oc-action-area-gap) + var(--oc-action-area-padding-y))}.oc-ActionArea-module__actionArea__jnxep [data-oc-part=caption]{font-size:calc(var(--oc-typo-size-label2) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label2) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label2);font-weight:var(--oc-typo-weight-label2-normal);margin:0 0 var(--oc-space-item-gap-medium);color:var(--oc-color-theme-label-alternative);text-align:center}.oc-ActionArea-module__actionArea__jnxep [data-oc-part=actions]{display:flex;gap:var(--oc-action-area-actions-gap);min-width:0}@media screen and (min-width:769px){.oc-ActionArea-module__actionArea__jnxep [data-oc-part=actions]{max-inline-size:var(--oc-action-area-container-max-width)}.oc-ActionArea-module__actionArea__jnxep:not([data-oc-variant=compact]) [data-oc-part=actions]{inline-size:100%;margin-inline:auto}}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=strong] [data-oc-part=actions],.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=cancel] [data-oc-part=actions]{flex-direction:column}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=neutral] [data-oc-part=actions]{flex-direction:row}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=neutral] [data-oc-part=actions]>[data-oc-action-area-button=true]{flex:1 1 0}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=neutral] [data-oc-part=actions]>[data-oc-action-area-button-priority=sub]{flex:0 0 auto}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=actions]{flex-direction:row;justify-content:flex-end}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=actions]:has(>[data-oc-action-area-button-priority=sub][data-oc-icon-only=true]){justify-content:space-between;inline-size:100%}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=actions]>[data-oc-action-area-button-priority=sub]{flex:0 0 auto}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=compact-row]{display:flex;align-items:center;justify-content:space-between;gap:var(--oc-space-item-gap-medium);min-width:0}.oc-ActionArea-module__actionArea__jnxep[data-oc-variant=compact] [data-oc-part=compact-slot]{display:flex;align-items:center;flex:1 1 auto;min-width:0}.oc-ActionArea-module__actionButton__fKHJQ{min-width:0}.oc-ActionArea-module__actionButton__fKHJQ[data-oc-component=text-button]{flex:0 0 auto;inline-size:fit-content;align-self:center}
@@ -0,0 +1 @@
1
+ .oc-ActionAreaLayout-module__layout__UBL8D{--oc-action-area-layout-block-size: 100dvh;--oc-action-area-layout-gradient-overlap: 100%;--oc-action-area-layout-gradient-size: 50%;display:grid;grid-template-rows:minmax(0,1fr) auto;min-block-size:0;block-size:var(--oc-action-area-layout-block-size)}.oc-ActionAreaLayout-module__body__Q3-3E{min-block-size:0;overflow-y:auto;overscroll-behavior-y:contain}.oc-ActionAreaLayout-module__footer__-ewkN{--_-action-area-layout-footer-background-opacity: 0;--_-action-area-layout-footer-background-scale-y: 0;--oc-action-area-layout-background-color: var(--oc-color-theme-background-elevated-normal);position:relative;z-index:1;min-block-size:0}.oc-ActionAreaLayout-module__footer__-ewkN:before{position:absolute;inset-block:calc(-1 * var(--oc-action-area-layout-gradient-overlap)) 0;inset-inline:0;z-index:0;background-color:var(--oc-action-area-layout-background-color);-webkit-mask-image:linear-gradient(to bottom,transparent 0,black var(--oc-action-area-layout-gradient-size));mask-image:linear-gradient(to bottom,transparent 0,black var(--oc-action-area-layout-gradient-size));opacity:var(--_-action-area-layout-footer-background-opacity);content:"";pointer-events:none;transform:scaleY(var(--_-action-area-layout-footer-background-scale-y));transform-origin:bottom center;transition:opacity calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1.5) var(--oc-motion-timing-feedback),transform calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1.5) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-ActionAreaLayout-module__footer__-ewkN:before{transition-property:opacity;transition-duration:calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1.5);transition-timing-function:var(--oc-motion-timing-feedback);transform:none}}.oc-ActionAreaLayout-module__footer__-ewkN:has(>[data-oc-component=action-area][data-oc-background=true]):before{--_-action-area-layout-footer-background-opacity: 1;--_-action-area-layout-footer-background-scale-y: 1}.oc-ActionAreaLayout-module__footer__-ewkN>*{position:relative;z-index:1}.oc-ActionAreaLayout-module__footer__-ewkN>[data-oc-component=action-area]:before{content:none}
@@ -0,0 +1,145 @@
1
+ 'use client';
2
+ import { jsx as l } from "react/jsx-runtime";
3
+ import { useState as b, useCallback as S, useEffect as h, useMemo as N, useContext as O, createContext as C } from "react";
4
+ import { ActionArea as x } from "./ActionArea.js";
5
+ import d from "./ActionAreaLayout.module.scss.js";
6
+ const p = {
7
+ canScroll: !1,
8
+ scrolledToBottom: !0
9
+ }, L = 1, v = C(null);
10
+ function f(...o) {
11
+ return o.filter(Boolean).join(" ");
12
+ }
13
+ function R(o, t) {
14
+ typeof o == "function" ? o(t) : o && (o.current = t);
15
+ }
16
+ function E(o) {
17
+ if (!o) return p;
18
+ const t = o.scrollHeight - o.scrollTop - o.clientHeight, r = o.scrollHeight - o.clientHeight > L;
19
+ return {
20
+ canScroll: r,
21
+ scrolledToBottom: !r || t <= L
22
+ };
23
+ }
24
+ function A(o) {
25
+ const t = O(v);
26
+ if (!t)
27
+ throw new Error(`${o} must be used within ActionAreaLayout.`);
28
+ return t;
29
+ }
30
+ function H(o, t) {
31
+ return o.canScroll === t.canScroll && o.scrolledToBottom === t.scrolledToBottom ? o : t;
32
+ }
33
+ function w({
34
+ children: o,
35
+ className: t = "",
36
+ ref: r,
37
+ ...n
38
+ }) {
39
+ const [s, i] = b(p), u = N(
40
+ () => ({
41
+ ...s,
42
+ setScrollState: i
43
+ }),
44
+ [s]
45
+ );
46
+ return /* @__PURE__ */ l(v.Provider, { value: u, children: /* @__PURE__ */ l(
47
+ "div",
48
+ {
49
+ ...n,
50
+ ref: r,
51
+ className: f(d.layout, t),
52
+ "data-oc-component": "action-area-layout",
53
+ children: o
54
+ }
55
+ ) });
56
+ }
57
+ function _({
58
+ children: o,
59
+ className: t = "",
60
+ onScroll: r,
61
+ ref: n,
62
+ ...s
63
+ }) {
64
+ const { setScrollState: i } = A(
65
+ "ActionAreaLayout.Body"
66
+ ), [u, g] = b(null), c = S(
67
+ (e) => {
68
+ i(
69
+ (a) => H(a, E(e))
70
+ );
71
+ },
72
+ [i]
73
+ ), B = S(
74
+ (e) => {
75
+ g(e), R(n, e), c(e);
76
+ },
77
+ [n, c]
78
+ );
79
+ return h(() => {
80
+ const e = u;
81
+ if (c(e), !e || typeof ResizeObserver > "u")
82
+ return;
83
+ const a = new ResizeObserver(() => c(e)), y = () => {
84
+ a.disconnect(), a.observe(e);
85
+ for (const T of Array.from(e.children))
86
+ a.observe(T);
87
+ c(e);
88
+ }, m = typeof MutationObserver > "u" ? void 0 : new MutationObserver(y);
89
+ return y(), m?.observe(e, { childList: !0 }), () => {
90
+ a.disconnect(), m?.disconnect();
91
+ };
92
+ }, [u, c]), /* @__PURE__ */ l(
93
+ "div",
94
+ {
95
+ ...s,
96
+ ref: B,
97
+ className: f(d.body, t),
98
+ "data-oc-part": "body",
99
+ "data-oc-component": "action-area-layout-body",
100
+ onScroll: (e) => {
101
+ c(e.currentTarget), r?.(e);
102
+ },
103
+ children: o
104
+ }
105
+ );
106
+ }
107
+ function F({
108
+ children: o,
109
+ className: t = "",
110
+ ref: r,
111
+ ...n
112
+ }) {
113
+ return A("ActionAreaLayout.Footer"), /* @__PURE__ */ l(
114
+ "footer",
115
+ {
116
+ ...n,
117
+ ref: r,
118
+ className: f(d.footer, t),
119
+ "data-oc-part": "footer",
120
+ "data-oc-component": "action-area-layout-footer",
121
+ children: o
122
+ }
123
+ );
124
+ }
125
+ function j({
126
+ background: o = "auto",
127
+ ...t
128
+ }) {
129
+ const { canScroll: r, scrolledToBottom: n } = A(
130
+ "ActionAreaLayout.ActionArea"
131
+ );
132
+ return /* @__PURE__ */ l(x, { ...t, background: o === "auto" ? r && !n : o });
133
+ }
134
+ const P = Object.assign(w, {
135
+ Body: _,
136
+ Footer: F,
137
+ ActionArea: j
138
+ });
139
+ export {
140
+ w as ActionAreaLayout,
141
+ j as ActionAreaLayoutActionArea,
142
+ _ as ActionAreaLayoutBody,
143
+ F as ActionAreaLayoutFooter,
144
+ P as default
145
+ };
@@ -0,0 +1,11 @@
1
+ import './ActionAreaLayout.css';const o = "oc-ActionAreaLayout-module__layout__UBL8D", t = "oc-ActionAreaLayout-module__body__Q3-3E", e = "oc-ActionAreaLayout-module__footer__-ewkN", _ = {
2
+ layout: o,
3
+ body: t,
4
+ footer: e
5
+ };
6
+ export {
7
+ t as body,
8
+ _ as default,
9
+ e as footer,
10
+ o as layout
11
+ };
@@ -1,6 +1,12 @@
1
- import { ActionArea as e, ActionAreaButton as r, default as A } from "./ActionArea/ActionArea.js";
1
+ import { ActionArea as a, ActionAreaButton as A, default as e } from "./ActionArea/ActionArea.js";
2
+ import { default as n, ActionAreaLayoutActionArea as c, ActionAreaLayoutBody as i, ActionAreaLayoutFooter as u, ActionAreaLayout as y } from "./ActionArea/ActionAreaLayout.js";
2
3
  export {
3
- e as ActionArea,
4
- r as ActionAreaButton,
5
- A as default
4
+ a as ActionArea,
5
+ A as ActionAreaButton,
6
+ n as ActionAreaLayout,
7
+ c as ActionAreaLayoutActionArea,
8
+ i as ActionAreaLayoutBody,
9
+ u as ActionAreaLayoutFooter,
10
+ y as ActionAreaLayoutRoot,
11
+ e as default
6
12
  };
@@ -1,61 +1,81 @@
1
- import { jsxs as k, jsx as t } from "react/jsx-runtime";
2
- import { isValidElement as y, cloneElement as B } from "react";
3
- import E from "../Interaction/Interaction.js";
4
- import n from "./BackgroundIconButton.module.scss.js";
5
- function h({
6
- className: s = "",
7
- type: d = "button",
8
- children: o,
9
- size: a = 24,
10
- variant: r = "normal",
11
- alternative: e = !1,
12
- viewBox: c,
13
- color: u,
14
- style: b,
15
- ref: m,
16
- "aria-label": i,
17
- "aria-labelledby": l,
18
- "data-oc-component": p = "background-icon-button",
19
- ...f
1
+ 'use client';
2
+ import { jsx as o, jsxs as N, Fragment as E } from "react/jsx-runtime";
3
+ import { isValidElement as I, cloneElement as P } from "react";
4
+ import j from "../Interaction/Interaction.js";
5
+ import y from "../internal/Pressable.js";
6
+ import i from "./BackgroundIconButton.module.scss.js";
7
+ function $({
8
+ className: k = "",
9
+ children: a,
10
+ href: l,
11
+ disabled: s = !1,
12
+ size: t = 24,
13
+ variant: n = "normal",
14
+ alternative: r = !1,
15
+ viewBox: d,
16
+ color: v,
17
+ style: h,
18
+ ref: u,
19
+ "aria-label": c,
20
+ "aria-labelledby": e,
21
+ "data-oc-component": m = "background-icon-button",
22
+ ...p
20
23
  }) {
21
- process.env.NODE_ENV !== "production" && !i && !l && console.warn(
24
+ process.env.NODE_ENV !== "production" && !c && !e && console.warn(
22
25
  "[@orioncactuscorp/ui] BackgroundIconButton requires `aria-label` or `aria-labelledby` for screen reader accessibility."
23
26
  );
24
- const g = y(o) ? B(o, {
25
- size: a,
26
- color: u,
27
- ...c ? { viewBox: c } : {}
28
- }) : o;
29
- return /* @__PURE__ */ k(
30
- "button",
27
+ const B = I(a) ? P(a, {
28
+ size: t,
29
+ color: v,
30
+ ...d ? { viewBox: d } : {}
31
+ }) : a, b = [
32
+ i.backgroundIconButton,
33
+ i[n],
34
+ r ? i.alternative : "",
35
+ k
36
+ ].filter(Boolean).join(" "), f = {
37
+ ...h,
38
+ "--oc-background-icon-button-size": `${t / 16}rem`
39
+ }, g = /* @__PURE__ */ N(E, { children: [
40
+ /* @__PURE__ */ o("span", { "data-oc-part": "icon", children: B }),
41
+ /* @__PURE__ */ o("span", { "data-oc-part": "background", "aria-hidden": "true", role: "presentation" }),
42
+ /* @__PURE__ */ o(j, { variant: "light" })
43
+ ] });
44
+ return l !== void 0 ? /* @__PURE__ */ o(
45
+ y,
31
46
  {
32
- ...f,
33
- ref: m,
34
- type: d,
35
- className: [
36
- n.backgroundIconButton,
37
- n[r],
38
- e ? n.alternative : "",
39
- s
40
- ].filter(Boolean).join(" "),
41
- "aria-label": i,
42
- "aria-labelledby": l,
43
- "data-oc-component": p,
44
- "data-oc-variant": r,
45
- "data-oc-size": String(a),
46
- "data-oc-alternative": e ? "true" : void 0,
47
- style: {
48
- ...b,
49
- "--oc-background-icon-button-size": `${a / 16}rem`
50
- },
51
- children: [
52
- /* @__PURE__ */ t("span", { "data-oc-part": "icon", children: g }),
53
- /* @__PURE__ */ t("span", { "data-oc-part": "background", "aria-hidden": "true", role: "presentation" }),
54
- /* @__PURE__ */ t(E, { variant: "light" })
55
- ]
47
+ ...p,
48
+ ref: u,
49
+ href: l,
50
+ disabled: s,
51
+ className: b,
52
+ "aria-label": c,
53
+ "aria-labelledby": e,
54
+ "data-oc-component": m,
55
+ "data-oc-variant": n,
56
+ "data-oc-size": String(t),
57
+ "data-oc-alternative": r ? "true" : void 0,
58
+ style: f,
59
+ children: g
60
+ }
61
+ ) : /* @__PURE__ */ o(
62
+ y,
63
+ {
64
+ ...p,
65
+ ref: u,
66
+ disabled: s,
67
+ className: b,
68
+ "aria-label": c,
69
+ "aria-labelledby": e,
70
+ "data-oc-component": m,
71
+ "data-oc-variant": n,
72
+ "data-oc-size": String(t),
73
+ "data-oc-alternative": r ? "true" : void 0,
74
+ style: f,
75
+ children: g
56
76
  }
57
77
  );
58
78
  }
59
79
  export {
60
- h as default
80
+ $ as default
61
81
  };
@@ -1 +1 @@
1
- .oc-Button-module__button__18Bed{position:relative;display:inline-flex;align-items:center;justify-content:center;appearance:none;border:none;background-color:transparent;padding:0;cursor:pointer;text-decoration:none;color:inherit;will-change:transform;transition:transform calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-Button-module__button__18Bed{transition:none;transform:none}}.oc-Button-module__button__18Bed{-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;font-size:calc(var(--oc-typo-size-body1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-body1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-body1);font-weight:var(--oc-typo-weight-body1-bold);display:inline-flex;position:relative;overflow:hidden;flex-direction:column;gap:0;box-shadow:inset 0 0 0 1px var(--oc-button-border-color, transparent);border-radius:var(--oc-button-radius);background-color:var(--oc-button-background-color);padding:var(--oc-button-padding-y) var(--oc-button-padding-x);min-block-size:calc(var(--oc-button-content-height) + var(--oc-button-padding-y) * 2);color:var(--oc-button-color);white-space:nowrap;transition:background-color calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback),box-shadow calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback),color calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback),transform calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-Button-module__button__18Bed{transition-property:background-color,box-shadow,color;transition-duration:calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-feedback);transform:none}}.oc-Button-module__button__18Bed{--oc-button-padding-x: var(--oc-space-item-padding-medium);--oc-button-padding-y: var(--oc-space-item-padding-xsmall);--oc-button-content-height: var(--oc-typo-height-body1);--oc-button-control-size: calc(var(--oc-button-content-height) + (var(--oc-button-padding-y) * 2));--oc-button-icon-size: var(--oc-typo-height-label1);--oc-button-gap: var(--oc-space-item-gap-tiny);--oc-button-label-padding-x: 0;--oc-button-radius: var(--oc-atomic-radius-small);--oc-button-background-color: var(--oc-color-theme-label-strong);--oc-button-color: var(--oc-color-theme-background-normal-normal);--oc-interaction-color: var(--oc-color-theme-background-normal-normal);--oc-button-border-color: var(--oc-color-theme-static-transparent);--oc-button-loading-color: var(--oc-color-theme-label-alternative);--oc-interaction-z-index: 1}.oc-Button-module__button__18Bed>[data-oc-component=interaction]{border-radius:var(--oc-button-radius)}.oc-Button-module__button__18Bed>[data-oc-part=content]{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:var(--oc-button-gap);block-size:var(--oc-button-content-height)}.oc-Button-module__button__18Bed>[data-oc-part=loading]{position:absolute;z-index:3;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;inline-size:var(--oc-button-content-height);block-size:var(--oc-button-content-height);color:currentcolor;line-height:0;pointer-events:none}.oc-Button-module__button__18Bed>[data-oc-part=loading]>[data-oc-component=loading]{--oc-loading-size: 100%;--oc-loading-color: var(--oc-button-loading-color)}.oc-Button-module__button__18Bed [data-oc-part=label]{display:inline-flex;align-items:center;justify-content:center;padding-inline:var(--oc-button-label-padding-x, 0)}.oc-Button-module__button__18Bed [data-oc-part=leading-icon],.oc-Button-module__button__18Bed [data-oc-part=trailing-icon],.oc-Button-module__button__18Bed [data-oc-part=icon]{display:inline-flex;align-items:center;justify-content:center;inline-size:var(--oc-button-icon-size);block-size:var(--oc-button-icon-size);color:currentcolor}.oc-Button-module__button__18Bed [data-oc-part=leading-icon]>svg,.oc-Button-module__button__18Bed [data-oc-part=trailing-icon]>svg,.oc-Button-module__button__18Bed [data-oc-part=icon]>svg{inline-size:100%;block-size:100%}.oc-Button-module__button__18Bed:focus-visible>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-focus);transform:scale(1)}@media(hover:hover){.oc-Button-module__button__18Bed:hover:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-hover);transform:scale(1)}}.oc-Button-module__button__18Bed:active:not(:disabled,[aria-disabled=true]){transform:scale(max(0,1 + (.9875 - 1) * var(--oc-motion-scale-factor-feedback)))}.oc-Button-module__button__18Bed:active:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-active);transform:scale(1)}.oc-Button-module__button__18Bed:disabled,.oc-Button-module__button__18Bed[aria-disabled=true]{--oc-button-background-color: var(--oc-color-theme-interaction-disable);--oc-button-border-color: var(--oc-color-theme-static-transparent);--oc-button-color: var(--oc-color-theme-label-disable);--oc-button-loading-color: var(--oc-color-theme-label-disable);cursor:not-allowed}.oc-Button-module__button__18Bed:where(.oc-Button-module__medium__HYxwi){font-size:calc(var(--oc-typo-size-body2) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-body2) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-body2);font-weight:var(--oc-typo-weight-body2-bold);--oc-button-padding-x: var(--oc-space-item-padding-small);--oc-button-padding-y: var(--oc-space-item-padding-mini)}.oc-Button-module__button__18Bed:where(.oc-Button-module__small__zfmcP){font-size:calc(var(--oc-typo-size-label1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label1);font-weight:var(--oc-typo-weight-label1-bold);--oc-button-padding-x: var(--oc-space-item-padding-xsmall);--oc-button-padding-y: var(--oc-space-item-padding-tiny);--oc-button-gap: var(--oc-space-item-gap-nano);--oc-button-label-padding-x: var(--oc-space-item-padding-atom);--oc-button-radius: var(--oc-atomic-radius-xsmall);--oc-button-icon-size: var(--oc-typo-height-label2)}.oc-Button-module__button__18Bed:where(.oc-Button-module__xsmall__QS3d-){font-size:calc(var(--oc-typo-size-label1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label1);font-weight:var(--oc-typo-weight-label1-bold);--oc-button-padding-x: var(--oc-space-item-padding-mini);--oc-button-padding-y: var(--oc-space-item-padding-tiny);--oc-button-content-height: var(--oc-typo-height-label1);--oc-button-gap: var(--oc-space-item-gap-atom);--oc-button-label-padding-x: var(--oc-space-item-padding-atom);--oc-button-radius: var(--oc-atomic-radius-mini);--oc-button-icon-size: var(--oc-typo-height-caption1)}.oc-Button-module__button__18Bed:where(.oc-Button-module__solid__yi-oB):where(.oc-Button-module__primary__st6yY){--oc-button-background-color: var(--oc-color-theme-primary-normal);--oc-button-color: var(--oc-color-theme-static-white);--oc-button-loading-color: var(--oc-color-theme-static-white);--oc-interaction-color: var(--oc-color-theme-label-normal)}.oc-Button-module__button__18Bed:where(.oc-Button-module__solid__yi-oB):where(.oc-Button-module__assistive__6KrCl){--oc-button-background-color: var(--oc-color-theme-fill-normal);--oc-button-color: var(--oc-color-theme-label-neutral);--oc-interaction-color: var(--oc-color-theme-label-neutral)}.oc-Button-module__button__18Bed:where(.oc-Button-module__solid__yi-oB):disabled,.oc-Button-module__button__18Bed:where(.oc-Button-module__solid__yi-oB)[aria-disabled=true]{--oc-button-background-color: var(--oc-color-theme-interaction-disable);--oc-button-border-color: var(--oc-color-theme-static-transparent);--oc-button-color: var(--oc-color-theme-label-disable);--oc-button-loading-color: var(--oc-color-theme-label-disable)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH){--oc-button-background-color: transparent;--oc-button-border-color: var(--oc-color-theme-label-normal);--oc-button-color: var(--oc-color-theme-label-normal);--oc-interaction-color: var(--oc-color-theme-label-normal)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__primary__st6yY){--oc-button-border-color: var(--oc-color-theme-primary-normal);--oc-button-color: var(--oc-color-theme-primary-normal);--oc-interaction-color: var(--oc-color-theme-primary-normal)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__secondary__j-3rj){--oc-button-border-color: var(--oc-color-theme-line-normal-normal);--oc-button-color: var(--oc-color-theme-primary-normal);--oc-interaction-color: var(--oc-color-theme-label-normal)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__assistive__6KrCl){--oc-button-border-color: var(--oc-color-theme-line-normal-normal);--oc-button-color: var(--oc-color-theme-label-neutral);--oc-interaction-color: var(--oc-color-theme-label-neutral);font-size:calc(var(--oc-typo-size-body1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-body1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-body1);font-weight:var(--oc-typo-weight-body1-medium)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__assistive__6KrCl):where(.oc-Button-module__medium__HYxwi){font-size:calc(var(--oc-typo-size-body2) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-body2) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-body2);font-weight:var(--oc-typo-weight-body2-medium)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__assistive__6KrCl):where(.oc-Button-module__small__zfmcP),.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__assistive__6KrCl):where(.oc-Button-module__xsmall__QS3d-){font-size:calc(var(--oc-typo-size-label1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label1);font-weight:var(--oc-typo-weight-label1-medium)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):disabled,.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH)[aria-disabled=true]{--oc-button-background-color: var(--oc-color-theme-static-transparent);--oc-button-border-color: var(--oc-color-theme-line-normal-neutral);--oc-button-color: var(--oc-color-theme-label-disable);--oc-button-loading-color: var(--oc-color-theme-label-disable)}.oc-Button-module__button__18Bed:where(.oc-Button-module__loading__QfItr){cursor:progress}.oc-Button-module__button__18Bed:where(.oc-Button-module__loading__QfItr)>[data-oc-part=content]{visibility:hidden}.oc-Button-module__button__18Bed:where(.oc-Button-module__iconOnly__FNrSu){aspect-ratio:1;inline-size:var(--oc-button-control-size);padding-inline:var(--oc-button-padding-y)}.oc-Button-module__button__18Bed:where(.oc-Button-module__fullWidth__AHpSl){inline-size:100%}.oc-Button-module__button__18Bed:where(.oc-Button-module__iconOnly__FNrSu):where(.oc-Button-module__fullWidth__AHpSl){aspect-ratio:auto}@media(prefers-reduced-motion:reduce){.oc-Button-module__button__18Bed:active:not(:disabled,[aria-disabled=true]){transform:none}}
1
+ .oc-Button-module__button__18Bed{position:relative;display:inline-flex;align-items:center;justify-content:center;appearance:none;border:none;background-color:transparent;padding:0;cursor:pointer;text-decoration:none;color:inherit;will-change:transform;transition:transform calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-Button-module__button__18Bed{transition:none;transform:none}}.oc-Button-module__button__18Bed{-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;font-size:calc(var(--oc-typo-size-body1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-body1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-body1);font-weight:var(--oc-typo-weight-body1-bold);display:inline-flex;position:relative;overflow:hidden;flex-direction:column;gap:0;box-shadow:inset 0 0 0 1px var(--oc-button-border-color, transparent);border-radius:var(--oc-button-radius);background-color:var(--oc-button-background-color);padding:var(--oc-button-padding-y) var(--oc-button-padding-x);min-block-size:calc(var(--oc-button-content-height) + var(--oc-button-padding-y) * 2);color:var(--oc-button-color);white-space:nowrap;transition:background-color calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback),box-shadow calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback),color calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback),transform calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-Button-module__button__18Bed{transition-property:background-color,box-shadow,color;transition-duration:calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-feedback);transform:none}}.oc-Button-module__button__18Bed{--oc-button-padding-x: var(--oc-space-item-padding-medium);--oc-button-padding-y: var(--oc-space-item-padding-xsmall);--oc-button-content-height: var(--oc-typo-height-body1);--oc-button-control-size: calc(var(--oc-button-content-height) + (var(--oc-button-padding-y) * 2));--oc-button-icon-size: var(--oc-typo-height-label1);--oc-button-gap: var(--oc-space-item-gap-tiny);--oc-button-label-padding-x: 0;--oc-button-radius: var(--oc-atomic-radius-small);--oc-button-background-color: var(--oc-color-theme-label-strong);--oc-button-color: var(--oc-color-theme-background-normal-normal);--oc-interaction-color: var(--oc-color-theme-background-normal-normal);--oc-button-border-color: var(--oc-color-theme-static-transparent);--oc-button-loading-color: var(--oc-color-theme-label-alternative);--oc-interaction-z-index: 1}.oc-Button-module__button__18Bed>[data-oc-component=interaction]{border-radius:var(--oc-button-radius)}.oc-Button-module__button__18Bed>[data-oc-part=content]{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:var(--oc-button-gap);block-size:var(--oc-button-content-height)}.oc-Button-module__button__18Bed>[data-oc-part=loading]{position:absolute;z-index:3;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;inline-size:var(--oc-button-content-height);block-size:var(--oc-button-content-height);color:currentcolor;line-height:0;padding:.0625rem;pointer-events:none}.oc-Button-module__button__18Bed>[data-oc-part=loading]>[data-oc-component=loading]{--oc-loading-size: 100%;--oc-loading-color: var(--oc-button-loading-color)}.oc-Button-module__button__18Bed [data-oc-part=label]{display:inline-flex;align-items:center;justify-content:center;padding-inline:var(--oc-button-label-padding-x, 0)}.oc-Button-module__button__18Bed [data-oc-part=leading-icon],.oc-Button-module__button__18Bed [data-oc-part=trailing-icon],.oc-Button-module__button__18Bed [data-oc-part=icon]{display:inline-flex;align-items:center;justify-content:center;inline-size:var(--oc-button-icon-size);block-size:var(--oc-button-icon-size);color:currentcolor}.oc-Button-module__button__18Bed [data-oc-part=leading-icon]>svg,.oc-Button-module__button__18Bed [data-oc-part=trailing-icon]>svg,.oc-Button-module__button__18Bed [data-oc-part=icon]>svg{inline-size:100%;block-size:100%}.oc-Button-module__button__18Bed:focus-visible>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-focus);transform:scale(1)}@media(hover:hover){.oc-Button-module__button__18Bed:hover:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-hover);transform:scale(1)}}.oc-Button-module__button__18Bed:active:not(:disabled,[aria-disabled=true]){transform:scale(max(0,1 + (.9875 - 1) * var(--oc-motion-scale-factor-feedback)))}.oc-Button-module__button__18Bed:active:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-active);transform:scale(1)}.oc-Button-module__button__18Bed:disabled,.oc-Button-module__button__18Bed[aria-disabled=true]{--oc-button-background-color: var(--oc-color-theme-interaction-disable);--oc-button-border-color: var(--oc-color-theme-static-transparent);--oc-button-color: var(--oc-color-theme-label-disable);--oc-button-loading-color: var(--oc-color-theme-label-disable);cursor:not-allowed}.oc-Button-module__button__18Bed:where(.oc-Button-module__medium__HYxwi){font-size:calc(var(--oc-typo-size-body2) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-body2) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-body2);font-weight:var(--oc-typo-weight-body2-bold);--oc-button-padding-x: var(--oc-space-item-padding-small);--oc-button-padding-y: var(--oc-space-item-padding-mini)}.oc-Button-module__button__18Bed:where(.oc-Button-module__small__zfmcP){font-size:calc(var(--oc-typo-size-label1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label1);font-weight:var(--oc-typo-weight-label1-bold);--oc-button-padding-x: var(--oc-space-item-padding-xsmall);--oc-button-padding-y: var(--oc-space-item-padding-tiny);--oc-button-gap: var(--oc-space-item-gap-nano);--oc-button-label-padding-x: var(--oc-space-item-padding-atom);--oc-button-radius: var(--oc-atomic-radius-xsmall);--oc-button-icon-size: var(--oc-typo-height-label2)}.oc-Button-module__button__18Bed:where(.oc-Button-module__xsmall__QS3d-){font-size:calc(var(--oc-typo-size-label1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label1);font-weight:var(--oc-typo-weight-label1-bold);--oc-button-padding-x: var(--oc-space-item-padding-mini);--oc-button-padding-y: var(--oc-space-item-padding-tiny);--oc-button-content-height: var(--oc-typo-height-label1);--oc-button-gap: var(--oc-space-item-gap-atom);--oc-button-label-padding-x: var(--oc-space-item-padding-atom);--oc-button-radius: var(--oc-atomic-radius-mini);--oc-button-icon-size: var(--oc-typo-height-caption1)}.oc-Button-module__button__18Bed:where(.oc-Button-module__solid__yi-oB):where(.oc-Button-module__primary__st6yY){--oc-button-background-color: var(--oc-color-theme-primary-normal);--oc-button-color: var(--oc-color-theme-static-white);--oc-button-loading-color: var(--oc-color-theme-static-white);--oc-interaction-color: var(--oc-color-theme-label-normal)}.oc-Button-module__button__18Bed:where(.oc-Button-module__solid__yi-oB):where(.oc-Button-module__assistive__6KrCl){--oc-button-background-color: var(--oc-color-theme-fill-normal);--oc-button-color: var(--oc-color-theme-label-neutral);--oc-interaction-color: var(--oc-color-theme-label-neutral)}.oc-Button-module__button__18Bed:where(.oc-Button-module__solid__yi-oB):disabled,.oc-Button-module__button__18Bed:where(.oc-Button-module__solid__yi-oB)[aria-disabled=true]{--oc-button-background-color: var(--oc-color-theme-interaction-disable);--oc-button-border-color: var(--oc-color-theme-static-transparent);--oc-button-color: var(--oc-color-theme-label-disable);--oc-button-loading-color: var(--oc-color-theme-label-disable)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH){--oc-button-background-color: transparent;--oc-button-border-color: var(--oc-color-theme-label-normal);--oc-button-color: var(--oc-color-theme-label-normal);--oc-interaction-color: var(--oc-color-theme-label-normal)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__primary__st6yY){--oc-button-border-color: var(--oc-color-theme-primary-normal);--oc-button-color: var(--oc-color-theme-primary-normal);--oc-interaction-color: var(--oc-color-theme-primary-normal)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__secondary__j-3rj){--oc-button-border-color: var(--oc-color-theme-line-normal-normal);--oc-button-color: var(--oc-color-theme-primary-normal);--oc-interaction-color: var(--oc-color-theme-label-normal)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__assistive__6KrCl){--oc-button-border-color: var(--oc-color-theme-line-normal-normal);--oc-button-color: var(--oc-color-theme-label-neutral);--oc-interaction-color: var(--oc-color-theme-label-neutral);font-size:calc(var(--oc-typo-size-body1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-body1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-body1);font-weight:var(--oc-typo-weight-body1-medium)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__assistive__6KrCl):where(.oc-Button-module__medium__HYxwi){font-size:calc(var(--oc-typo-size-body2) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-body2) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-body2);font-weight:var(--oc-typo-weight-body2-medium)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__assistive__6KrCl):where(.oc-Button-module__small__zfmcP),.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):where(.oc-Button-module__assistive__6KrCl):where(.oc-Button-module__xsmall__QS3d-){font-size:calc(var(--oc-typo-size-label1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label1);font-weight:var(--oc-typo-weight-label1-medium)}.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH):disabled,.oc-Button-module__button__18Bed:where(.oc-Button-module__outlined__f4ewH)[aria-disabled=true]{--oc-button-background-color: var(--oc-color-theme-static-transparent);--oc-button-border-color: var(--oc-color-theme-line-normal-neutral);--oc-button-color: var(--oc-color-theme-label-disable);--oc-button-loading-color: var(--oc-color-theme-label-disable)}.oc-Button-module__button__18Bed:where(.oc-Button-module__loading__QfItr){cursor:progress}.oc-Button-module__button__18Bed:where(.oc-Button-module__loading__QfItr)>[data-oc-part=content]{visibility:hidden}.oc-Button-module__button__18Bed:where(.oc-Button-module__iconOnly__FNrSu){aspect-ratio:1;inline-size:var(--oc-button-control-size);padding-inline:var(--oc-button-padding-y)}.oc-Button-module__button__18Bed:where(.oc-Button-module__fullWidth__AHpSl){inline-size:100%}.oc-Button-module__button__18Bed:where(.oc-Button-module__iconOnly__FNrSu):where(.oc-Button-module__fullWidth__AHpSl){aspect-ratio:auto}@media(prefers-reduced-motion:reduce){.oc-Button-module__button__18Bed:active:not(:disabled,[aria-disabled=true]){transform:none}}
@@ -1,152 +1,92 @@
1
1
  'use client';
2
- import { jsx as a, jsxs as v, Fragment as A } from "react/jsx-runtime";
3
- import U from "../Interaction/Interaction.js";
4
- import X from "../Loading/Loading.js";
5
- import e from "./Button.module.scss.js";
6
- function lo({
7
- children: d,
8
- className: E = "",
9
- style: C,
10
- disabled: l = !1,
11
- href: P,
12
- appearance: i = "solid",
13
- variant: u = "default",
14
- size: f = "large",
15
- fullWidth: h = !1,
16
- loading: t = !1,
17
- leadingIcon: w,
18
- trailingIcon: D,
19
- icon: y,
20
- "aria-label": p,
21
- "aria-labelledby": k,
22
- ...B
2
+ import { jsx as o, jsxs as x, Fragment as O } from "react/jsx-runtime";
3
+ import q from "../Interaction/Interaction.js";
4
+ import C from "../Loading/Loading.js";
5
+ import V from "../internal/Pressable.js";
6
+ import t from "./Button.module.scss.js";
7
+ function H({
8
+ children: c,
9
+ className: z = "",
10
+ style: v,
11
+ disabled: h = !1,
12
+ href: y,
13
+ appearance: r = "solid",
14
+ variant: e = "default",
15
+ size: l = "large",
16
+ fullWidth: d = !1,
17
+ loading: a = !1,
18
+ leadingIcon: s,
19
+ trailingIcon: u,
20
+ icon: m,
21
+ "aria-label": b,
22
+ "aria-labelledby": f,
23
+ ...N
23
24
  }) {
24
- const c = i === "solid" && u === "secondary" ? "primary" : u, x = d != null, s = !!(y && !x && !w && !D), K = [
25
- e.button,
26
- e[i],
27
- e[c],
28
- e[f],
29
- s ? e.iconOnly : "",
30
- h ? e.fullWidth : "",
31
- t ? e.loading : "",
32
- E
33
- ].filter(Boolean).join(" "), N = i === "solid" && c === "default" || i === "outlined" && c === "secondary" ? "light" : "normal";
34
- process.env.NODE_ENV !== "production" && s && !p && !k && console.warn(
25
+ const n = r === "solid" && e === "secondary" ? "primary" : e, w = c != null, i = !!(m && !w && !s && !u), B = [
26
+ t.button,
27
+ t[r],
28
+ t[n],
29
+ t[l],
30
+ i ? t.iconOnly : "",
31
+ d ? t.fullWidth : "",
32
+ a ? t.loading : "",
33
+ z
34
+ ].filter(Boolean).join(" "), E = r === "solid" && n === "default" || r === "outlined" && n === "secondary" ? "light" : "normal";
35
+ process.env.NODE_ENV !== "production" && i && !b && !f && console.warn(
35
36
  "[@orioncactuscorp/ui] Button with `icon` requires `aria-label` or `aria-labelledby` for screen reader accessibility."
36
37
  );
37
- const m = (o, b) => /* @__PURE__ */ a("span", { "data-oc-part": b, "aria-hidden": "true", children: /* @__PURE__ */ a(o, { size: "custom" }) }), r = (o) => t ? (o.preventDefault(), o.stopPropagation(), !0) : !1, M = /* @__PURE__ */ v(A, { children: [
38
- /* @__PURE__ */ a("span", { "data-oc-part": "content", children: s && y ? m(y, "icon") : /* @__PURE__ */ v(A, { children: [
39
- w ? m(w, "leading-icon") : null,
40
- x ? /* @__PURE__ */ a("span", { "data-oc-part": "label", children: d }) : null,
41
- D ? m(D, "trailing-icon") : null
38
+ const p = (j, g) => /* @__PURE__ */ o("span", { "data-oc-part": g, "aria-hidden": "true", children: /* @__PURE__ */ o(j, { size: "custom" }) }), P = /* @__PURE__ */ x(O, { children: [
39
+ /* @__PURE__ */ o("span", { "data-oc-part": "content", children: i && m ? p(m, "icon") : /* @__PURE__ */ x(O, { children: [
40
+ s ? p(s, "leading-icon") : null,
41
+ w ? /* @__PURE__ */ o("span", { "data-oc-part": "label", children: c }) : null,
42
+ u ? p(u, "trailing-icon") : null
42
43
  ] }) }),
43
- t ? /* @__PURE__ */ a("span", { "data-oc-part": "loading", "aria-hidden": "true", children: /* @__PURE__ */ a(X, { size: "custom" }) }) : null,
44
- /* @__PURE__ */ a(U, { variant: N })
44
+ a ? /* @__PURE__ */ o("span", { "data-oc-part": "loading", "aria-hidden": "true", children: /* @__PURE__ */ o(C, { size: "custom" }) }) : null,
45
+ /* @__PURE__ */ o(q, { variant: E })
45
46
  ] });
46
- if (P !== void 0) {
47
- const o = B, {
48
- onAuxClick: b,
49
- onClick: G,
50
- onKeyDown: H,
51
- onMouseDown: I,
52
- onPointerDown: J,
53
- ref: Q,
54
- tabIndex: R,
55
- ...S
56
- } = o;
57
- return /* @__PURE__ */ a(
58
- "a",
59
- {
60
- ...S,
61
- ref: Q,
62
- className: K,
63
- style: C,
64
- href: P,
65
- onAuxClick: (n) => {
66
- if (l || t) {
67
- n.preventDefault(), n.stopPropagation();
68
- return;
69
- }
70
- b?.(n);
71
- },
72
- onClick: (n) => {
73
- if (l || t) {
74
- n.preventDefault();
75
- return;
76
- }
77
- G?.(n);
78
- },
79
- onKeyDown: (n) => {
80
- (n.key === "Enter" || n.key === " ") && r(n) || H?.(n);
81
- },
82
- onMouseDown: (n) => {
83
- r(n) || I?.(n);
84
- },
85
- onPointerDown: (n) => {
86
- r(n) || J?.(n);
87
- },
88
- "aria-label": p,
89
- "aria-labelledby": k,
90
- "aria-busy": t ? "true" : void 0,
91
- "aria-disabled": l || t ? "true" : void 0,
92
- tabIndex: l || t ? -1 : R,
93
- "data-oc-component": "button",
94
- "data-oc-appearance": i,
95
- "data-oc-variant": u,
96
- "data-oc-resolved-variant": c,
97
- "data-oc-size": f,
98
- "data-oc-full-width": h ? "true" : void 0,
99
- "data-oc-loading": t ? "true" : void 0,
100
- "data-oc-icon-only": s ? "true" : void 0,
101
- children: M
102
- }
103
- );
104
- }
105
- const j = B, {
106
- type: O = "button",
107
- onClick: V,
108
- onKeyDown: z,
109
- onMouseDown: q,
110
- onPointerDown: F,
111
- ref: _,
112
- ...g
113
- } = j;
114
- return /* @__PURE__ */ a(
115
- "button",
47
+ return y !== void 0 ? /* @__PURE__ */ o(
48
+ V,
116
49
  {
117
- ...g,
118
- ref: _,
119
- className: K,
120
- style: C,
121
- type: O,
122
- disabled: l || t,
123
- "aria-busy": t ? "true" : void 0,
124
- "aria-label": p,
125
- "aria-labelledby": k,
126
- onClick: (o) => {
127
- r(o) || V?.(o);
128
- },
129
- onKeyDown: (o) => {
130
- (o.key === "Enter" || o.key === " ") && r(o) || z?.(o);
131
- },
132
- onMouseDown: (o) => {
133
- r(o) || q?.(o);
134
- },
135
- onPointerDown: (o) => {
136
- r(o) || F?.(o);
137
- },
50
+ ...N,
51
+ className: B,
52
+ style: v,
53
+ href: y,
54
+ disabled: h || a,
55
+ "aria-busy": a ? "true" : void 0,
56
+ "aria-label": b,
57
+ "aria-labelledby": f,
138
58
  "data-oc-component": "button",
139
- "data-oc-appearance": i,
140
- "data-oc-variant": u,
141
- "data-oc-resolved-variant": c,
142
- "data-oc-size": f,
143
- "data-oc-full-width": h ? "true" : void 0,
144
- "data-oc-loading": t ? "true" : void 0,
145
- "data-oc-icon-only": s ? "true" : void 0,
146
- children: M
59
+ "data-oc-appearance": r,
60
+ "data-oc-variant": e,
61
+ "data-oc-resolved-variant": n,
62
+ "data-oc-size": l,
63
+ "data-oc-full-width": d ? "true" : void 0,
64
+ "data-oc-loading": a ? "true" : void 0,
65
+ "data-oc-icon-only": i ? "true" : void 0,
66
+ children: P
67
+ }
68
+ ) : /* @__PURE__ */ o(
69
+ V,
70
+ {
71
+ ...N,
72
+ className: B,
73
+ style: v,
74
+ disabled: h || a,
75
+ "aria-busy": a ? "true" : void 0,
76
+ "aria-label": b,
77
+ "aria-labelledby": f,
78
+ "data-oc-component": "button",
79
+ "data-oc-appearance": r,
80
+ "data-oc-variant": e,
81
+ "data-oc-resolved-variant": n,
82
+ "data-oc-size": l,
83
+ "data-oc-full-width": d ? "true" : void 0,
84
+ "data-oc-loading": a ? "true" : void 0,
85
+ "data-oc-icon-only": i ? "true" : void 0,
86
+ children: P
147
87
  }
148
88
  );
149
89
  }
150
90
  export {
151
- lo as default
91
+ H as default
152
92
  };