@tedi-design-system/react 18.1.0-rc.24 → 18.1.0-rc.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle-stats.html +1 -1
- package/package.json +1 -1
- package/src/community/components/tooltip/tooltip-trigger.cjs.js +1 -1
- package/src/community/components/tooltip/tooltip-trigger.es.js +15 -14
- package/src/tedi/components/form/checkbox/checkbox.cjs.js +1 -1
- package/src/tedi/components/form/checkbox/checkbox.es.js +64 -58
- package/src/tedi/components/form/choice-group/choice-group.cjs.js +1 -1
- package/src/tedi/components/form/choice-group/choice-group.es.js +98 -85
- package/src/tedi/components/form/choice-group/components/choice-group-item/choice-group-item.cjs.js +1 -1
- package/src/tedi/components/form/choice-group/components/choice-group-item/choice-group-item.es.js +13 -14
- package/src/tedi/components/form/radio/radio.cjs.js +1 -1
- package/src/tedi/components/form/radio/radio.es.js +24 -23
- package/src/tedi/components/overlays/dropdown/dropdown-trigger/dropdown-trigger.cjs.js +1 -1
- package/src/tedi/components/overlays/dropdown/dropdown-trigger/dropdown-trigger.es.js +8 -7
- package/src/tedi/components/overlays/modal/modal-trigger/modal-trigger.cjs.js +1 -1
- package/src/tedi/components/overlays/modal/modal-trigger/modal-trigger.es.js +10 -9
- package/src/tedi/components/overlays/overlay/overlay-trigger.cjs.js +1 -1
- package/src/tedi/components/overlays/overlay/overlay-trigger.es.js +20 -19
- package/src/tedi/helpers/get-element-ref.cjs.js +1 -0
- package/src/tedi/helpers/get-element-ref.d.ts +11 -0
- package/src/tedi/helpers/get-element-ref.es.js +8 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("react/jsx-runtime"),l=require("../../../../../external/classnames/index.cjs.js"),c=require("react"),T=require("../feedback-text/feedback-text.cjs.js"),$=require("../form-label/form-label.cjs.js"),e=require("./radio.module.scss.cjs.js"),z=require("../../layout/grid/row.cjs.js"),
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("react/jsx-runtime"),l=require("../../../../../external/classnames/index.cjs.js"),c=require("react"),T=require("../feedback-text/feedback-text.cjs.js"),$=require("../form-label/form-label.cjs.js"),e=require("./radio.module.scss.cjs.js"),z=require("../../layout/grid/row.cjs.js"),x=require("../../layout/grid/col.cjs.js"),j=k=>{const{id:r,label:u,value:n,className:q,disabled:s,onChange:i,hideLabel:C,helper:t,checked:o,defaultChecked:N,hover:g,name:R,tooltip:f,size:h="default",invalid:y,required:_,...w}=k,[b,L]=c.useState(N||!1),m=c.useRef(null),M=c.useMemo(()=>i&&typeof o<"u"?o:b,[i,b,o]),v=d=>{typeof o>"u"&&L(d==null?void 0:d.target.checked),i==null||i(n,d==null?void 0:d.target.checked)},p=t?t.id??`${r}-helper`:void 0,I=f?`${r}-tooltip`:void 0,S=l.default(e.default["tedi-radio__label"],{[e.default["tedi-radio--disabled"]]:s});return a.jsxs("div",{className:l.default(e.default["tedi-radio"],{[e.default["tedi-radio--disabled"]]:s}),"data-name":"radio",...w,children:[a.jsxs(z.Row,{gutter:0,children:[a.jsx(x.Col,{width:"auto",children:a.jsxs("div",{className:e.default["tedi-radio__outer-indicator-wrapper"],children:[a.jsx("input",{id:r,value:n,name:R,type:"radio",disabled:s,checked:M,onChange:v,className:e.default["tedi-radio__input"],"aria-describedby":[p,I].filter(Boolean).join(" "),required:_}),a.jsx("div",{"aria-hidden":"true",onClick:()=>{var d;return(d=m.current)==null?void 0:d.click()},className:l.default(e.default["tedi-radio__indicator"],{[e.default["tedi-radio__indicator--hover"]]:g},{[e.default[`tedi-radio__indicator--size-${h}`]]:h},{[e.default["tedi-radio__indicator--invalid"]]:y},q),"data-testid":"radio-indicator"})]})}),u&&a.jsx(x.Col,{children:a.jsx($.FormLabel,{ref:m,className:S,id:r,"data-testid":"radio-label",hideLabel:C,label:u,tooltip:f,required:_})})]}),t&&a.jsx(T.FeedbackText,{id:p,...t,className:l.default(e.default["tedi-radio__helper"],t.className)})]})};exports.Radio=j;exports.default=j;
|
|
@@ -5,29 +5,29 @@ import { FeedbackText as M } from "../feedback-text/feedback-text.es.js";
|
|
|
5
5
|
import { FormLabel as q } from "../form-label/form-label.es.js";
|
|
6
6
|
import e from "./radio.module.scss.es.js";
|
|
7
7
|
import { Row as v } from "../../layout/grid/row.es.js";
|
|
8
|
-
import { Col as
|
|
9
|
-
const K = (
|
|
8
|
+
import { Col as N } from "../../layout/grid/col.es.js";
|
|
9
|
+
const K = (C) => {
|
|
10
10
|
const {
|
|
11
11
|
id: o,
|
|
12
12
|
label: m,
|
|
13
13
|
value: h,
|
|
14
|
-
className:
|
|
14
|
+
className: g,
|
|
15
15
|
disabled: c,
|
|
16
16
|
onChange: a,
|
|
17
|
-
hideLabel:
|
|
17
|
+
hideLabel: y,
|
|
18
18
|
helper: r,
|
|
19
19
|
checked: t,
|
|
20
|
-
defaultChecked:
|
|
21
|
-
hover:
|
|
22
|
-
name:
|
|
20
|
+
defaultChecked: R,
|
|
21
|
+
hover: x,
|
|
22
|
+
name: j,
|
|
23
23
|
tooltip: p,
|
|
24
24
|
size: f = "default",
|
|
25
|
-
invalid:
|
|
26
|
-
required:
|
|
25
|
+
invalid: w,
|
|
26
|
+
required: u,
|
|
27
27
|
...I
|
|
28
|
-
} =
|
|
28
|
+
} = C, [_, L] = n.useState(R || !1), b = n.useRef(null), $ = n.useMemo(() => a && typeof t < "u" ? t : _, [a, _, t]), z = (i) => {
|
|
29
29
|
typeof t > "u" && L(i == null ? void 0 : i.target.checked), a == null || a(h, i == null ? void 0 : i.target.checked);
|
|
30
|
-
},
|
|
30
|
+
}, k = r ? r.id ?? `${o}-helper` : void 0, B = p ? `${o}-tooltip` : void 0, F = l(e["tedi-radio__label"], { [e["tedi-radio--disabled"]]: c });
|
|
31
31
|
return /* @__PURE__ */ s(
|
|
32
32
|
"div",
|
|
33
33
|
{
|
|
@@ -36,19 +36,20 @@ const K = (N) => {
|
|
|
36
36
|
...I,
|
|
37
37
|
children: [
|
|
38
38
|
/* @__PURE__ */ s(v, { gutter: 0, children: [
|
|
39
|
-
/* @__PURE__ */ d(
|
|
39
|
+
/* @__PURE__ */ d(N, { width: "auto", children: /* @__PURE__ */ s("div", { className: e["tedi-radio__outer-indicator-wrapper"], children: [
|
|
40
40
|
/* @__PURE__ */ d(
|
|
41
41
|
"input",
|
|
42
42
|
{
|
|
43
43
|
id: o,
|
|
44
44
|
value: h,
|
|
45
|
-
name:
|
|
45
|
+
name: j,
|
|
46
46
|
type: "radio",
|
|
47
47
|
disabled: c,
|
|
48
48
|
checked: $,
|
|
49
49
|
onChange: z,
|
|
50
50
|
className: e["tedi-radio__input"],
|
|
51
|
-
"aria-describedby": [
|
|
51
|
+
"aria-describedby": [k, B].filter(Boolean).join(" "),
|
|
52
|
+
required: u
|
|
52
53
|
}
|
|
53
54
|
),
|
|
54
55
|
/* @__PURE__ */ d(
|
|
@@ -57,34 +58,34 @@ const K = (N) => {
|
|
|
57
58
|
"aria-hidden": "true",
|
|
58
59
|
onClick: () => {
|
|
59
60
|
var i;
|
|
60
|
-
return (i =
|
|
61
|
+
return (i = b.current) == null ? void 0 : i.click();
|
|
61
62
|
},
|
|
62
63
|
className: l(
|
|
63
64
|
e["tedi-radio__indicator"],
|
|
64
|
-
{ [e["tedi-radio__indicator--hover"]]:
|
|
65
|
+
{ [e["tedi-radio__indicator--hover"]]: x },
|
|
65
66
|
{ [e[`tedi-radio__indicator--size-${f}`]]: f },
|
|
66
|
-
{ [e["tedi-radio__indicator--invalid"]]:
|
|
67
|
-
|
|
67
|
+
{ [e["tedi-radio__indicator--invalid"]]: w },
|
|
68
|
+
g
|
|
68
69
|
),
|
|
69
70
|
"data-testid": "radio-indicator"
|
|
70
71
|
}
|
|
71
72
|
)
|
|
72
73
|
] }) }),
|
|
73
|
-
m && /* @__PURE__ */ d(
|
|
74
|
+
m && /* @__PURE__ */ d(N, { children: /* @__PURE__ */ d(
|
|
74
75
|
q,
|
|
75
76
|
{
|
|
76
|
-
ref:
|
|
77
|
+
ref: b,
|
|
77
78
|
className: F,
|
|
78
79
|
id: o,
|
|
79
80
|
"data-testid": "radio-label",
|
|
80
|
-
hideLabel:
|
|
81
|
+
hideLabel: y,
|
|
81
82
|
label: m,
|
|
82
83
|
tooltip: p,
|
|
83
|
-
required:
|
|
84
|
+
required: u
|
|
84
85
|
}
|
|
85
86
|
) })
|
|
86
87
|
] }),
|
|
87
|
-
r && /* @__PURE__ */ d(M, { id:
|
|
88
|
+
r && /* @__PURE__ */ d(M, { id: k, ...r, className: l(e["tedi-radio__helper"], r.className) })
|
|
88
89
|
]
|
|
89
90
|
}
|
|
90
91
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../../../../../external/@floating-ui/react/dist/floating-ui.react.cjs.js"),c=require("react"),f=require("../dropdown-context.cjs.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../../../../../external/@floating-ui/react/dist/floating-ui.react.cjs.js"),c=require("react"),g=require("../../../../helpers/get-element-ref.cjs.js"),f=require("../dropdown-context.cjs.js"),i=({children:e})=>{const{refs:r,getReferenceProps:t}=f.useDropdownContext(),o=g.getElementRef(e),n=s.useMergeRefs([r.setReference,o]);return c.cloneElement(e,t({...e.props,ref:n}))};exports.DropdownTrigger=i;
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { useMergeRefs as
|
|
2
|
-
import { cloneElement as
|
|
1
|
+
import { useMergeRefs as m } from "../../../../../../external/@floating-ui/react/dist/floating-ui.react.es.js";
|
|
2
|
+
import { cloneElement as n } from "react";
|
|
3
|
+
import { getElementRef as s } from "../../../../helpers/get-element-ref.es.js";
|
|
3
4
|
import { useDropdownContext as p } from "../dropdown-context.es.js";
|
|
4
|
-
const
|
|
5
|
-
const { refs:
|
|
6
|
-
return
|
|
5
|
+
const u = ({ children: e }) => {
|
|
6
|
+
const { refs: o, getReferenceProps: r } = p(), t = s(e), f = m([o.setReference, t]);
|
|
7
|
+
return n(
|
|
7
8
|
e,
|
|
8
|
-
|
|
9
|
+
r({
|
|
9
10
|
...e.props,
|
|
10
11
|
ref: f
|
|
11
12
|
})
|
|
12
13
|
);
|
|
13
14
|
};
|
|
14
15
|
export {
|
|
15
|
-
|
|
16
|
+
u as DropdownTrigger
|
|
16
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),f=require("../../../../helpers/get-element-ref.cjs.js"),g=require("../modal-context.cjs.js"),i=(...t)=>r=>{for(const e of t)e&&(typeof e=="function"?e(r):e.current=r)},o=({children:t})=>{const{getReferenceProps:r,reference:e}=g.useModalContext(),n=f.getElementRef(t),s=i(e,n);return c.cloneElement(t,r({...t.props,ref:s}))};o.displayName="Modal.Trigger";exports.ModalTrigger=o;
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { cloneElement as n } from "react";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
import { getElementRef as s } from "../../../../helpers/get-element-ref.es.js";
|
|
3
|
+
import { useModalContext as m } from "../modal-context.es.js";
|
|
4
|
+
const c = (...o) => (r) => {
|
|
5
|
+
for (const e of o)
|
|
6
|
+
e && (typeof e == "function" ? e(r) : e.current = r);
|
|
7
|
+
}, i = ({ children: o }) => {
|
|
8
|
+
const { getReferenceProps: r, reference: e } = m(), t = s(o), f = c(e, t);
|
|
9
|
+
return n(o, r({ ...o.props, ref: f }));
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
+
i.displayName = "Modal.Trigger";
|
|
11
12
|
export {
|
|
12
|
-
|
|
13
|
+
i as ModalTrigger
|
|
13
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("react/jsx-runtime"),m=require("../../../../../external/@floating-ui/react/dist/floating-ui.react.cjs.js"),p=require("../../../../../external/classnames/index.cjs.js"),t=require("react"),q=require("../../../helpers/get-element-ref.cjs.js"),x=require("../../base/icon/icon.cjs.js"),_=require("./overlay.cjs.js"),r=require("./overlay.module.scss.cjs.js"),R=require("../../../providers/label-provider/use-labels.cjs.js"),E=l=>{const{children:e,className:s}=l,{getLabel:c}=R.useLabels(),{getReferenceProps:i,reference:a,openWith:d,open:u,role:g,ariaHidden:f,contentId:v}=t.useContext(_.OverlayContext),y=t.isValidElement(e)?q.getElementRef(e):void 0,o=m.useMergeRefs([a,y]),n=g==="tooltip"&&!f?{"aria-describedby":u?v:void 0}:{};return t.isValidElement(e)?t.cloneElement(e,i({tabIndex:0,...n,label:e.type===x.Icon?c("tooltip.icon-trigger"):void 0,...e.props,ref:o})):b.jsx("div",{...i({ref:o,tabIndex:0,className:p.default(r.default["tedi-overlay__trigger"],r.default["tedi-overlay__trigger--text"],{[r.default["tedi-overlay__trigger--click"]]:d==="click"},s),...n}),children:e})};exports.OverlayTrigger=E;
|
|
@@ -1,37 +1,38 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { useMergeRefs as
|
|
3
|
-
import
|
|
4
|
-
import { useContext as
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
1
|
+
import { jsx as x } from "react/jsx-runtime";
|
|
2
|
+
import { useMergeRefs as y } from "../../../../../external/@floating-ui/react/dist/floating-ui.react.es.js";
|
|
3
|
+
import b from "../../../../../external/classnames/index.es.js";
|
|
4
|
+
import { useContext as _, isValidElement as s, cloneElement as u } from "react";
|
|
5
|
+
import { getElementRef as I } from "../../../helpers/get-element-ref.es.js";
|
|
6
|
+
import { Icon as R } from "../../base/icon/icon.es.js";
|
|
7
|
+
import { OverlayContext as h } from "./overlay.es.js";
|
|
7
8
|
import r from "./overlay.module.scss.es.js";
|
|
8
|
-
import { useLabels as
|
|
9
|
-
const
|
|
10
|
-
const { children: e, className:
|
|
11
|
-
"aria-describedby":
|
|
9
|
+
import { useLabels as E } from "../../../providers/label-provider/use-labels.es.js";
|
|
10
|
+
const T = (n) => {
|
|
11
|
+
const { children: e, className: l } = n, { getLabel: m } = E(), { getReferenceProps: t, reference: c, openWith: a, open: p, role: f, ariaHidden: d, contentId: g } = _(h), v = s(e) ? I(e) : void 0, o = y([c, v]), i = f === "tooltip" && !d ? {
|
|
12
|
+
"aria-describedby": p ? g : void 0
|
|
12
13
|
} : {};
|
|
13
|
-
return
|
|
14
|
+
return s(e) ? u(
|
|
14
15
|
e,
|
|
15
16
|
t({
|
|
16
|
-
ref: o,
|
|
17
17
|
tabIndex: 0,
|
|
18
18
|
...i,
|
|
19
|
-
label: e.type ===
|
|
20
|
-
...e.props
|
|
19
|
+
label: e.type === R ? m("tooltip.icon-trigger") : void 0,
|
|
20
|
+
...e.props,
|
|
21
|
+
ref: o
|
|
21
22
|
})
|
|
22
|
-
) : /* @__PURE__ */
|
|
23
|
+
) : /* @__PURE__ */ x(
|
|
23
24
|
"div",
|
|
24
25
|
{
|
|
25
26
|
...t({
|
|
26
27
|
ref: o,
|
|
27
28
|
tabIndex: 0,
|
|
28
|
-
className:
|
|
29
|
+
className: b(
|
|
29
30
|
r["tedi-overlay__trigger"],
|
|
30
31
|
r["tedi-overlay__trigger--text"],
|
|
31
32
|
{
|
|
32
|
-
[r["tedi-overlay__trigger--click"]]:
|
|
33
|
+
[r["tedi-overlay__trigger--click"]]: a === "click"
|
|
33
34
|
},
|
|
34
|
-
|
|
35
|
+
l
|
|
35
36
|
),
|
|
36
37
|
...i
|
|
37
38
|
}),
|
|
@@ -40,5 +41,5 @@ const j = (s) => {
|
|
|
40
41
|
);
|
|
41
42
|
};
|
|
42
43
|
export {
|
|
43
|
-
|
|
44
|
+
T as OverlayTrigger
|
|
44
45
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),n=t=>{const e=t;return Number.parseInt(r.version,10)>=19?e.props.ref:e.ref};exports.getElementRef=n;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ReactElement, Ref } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Reads a React element's ref in a version-safe way.
|
|
4
|
+
*
|
|
5
|
+
* React 19 moved `ref` onto `props` (an enumerable prop) and warns whenever the
|
|
6
|
+
* legacy `element.ref` getter is accessed. React 18 keeps the ref on the element
|
|
7
|
+
* itself. So read from `props.ref` on React 19+ and only fall back to
|
|
8
|
+
* `element.ref` on React 18 — avoiding both the deprecation warning and the
|
|
9
|
+
* lost ref.
|
|
10
|
+
*/
|
|
11
|
+
export declare const getElementRef: <T = unknown>(element: ReactElement) => Ref<T> | undefined;
|