@tedi-design-system/react 17.0.0-rc.3 → 17.0.0-rc.5
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/_virtual/index.cjs10.js +1 -1
- package/_virtual/index.cjs11.js +1 -1
- package/_virtual/index.cjs12.js +1 -1
- package/_virtual/index.cjs13.js +1 -1
- package/_virtual/index.cjs5.js +1 -1
- package/_virtual/index.cjs6.js +1 -1
- package/_virtual/index.cjs7.js +1 -1
- package/_virtual/index.cjs8.js +1 -1
- package/_virtual/index.cjs9.js +1 -1
- package/_virtual/index.es10.js +1 -1
- package/_virtual/index.es11.js +1 -1
- package/_virtual/index.es12.js +1 -1
- package/_virtual/index.es13.js +2 -4
- package/_virtual/index.es5.js +4 -2
- package/_virtual/index.es6.js +1 -1
- package/_virtual/index.es7.js +1 -1
- package/_virtual/index.es8.js +1 -1
- package/_virtual/index.es9.js +1 -1
- package/bundle-stats.html +1 -1
- package/external/@mui/system/colorManipulator.cjs.js +1 -1
- package/external/@mui/system/colorManipulator.es.js +2 -2
- package/external/@mui/system/createStyled.cjs.js +1 -1
- package/external/@mui/system/createStyled.es.js +6 -6
- package/external/@mui/system/useThemeWithoutDefault.cjs.js +1 -1
- package/external/@mui/system/useThemeWithoutDefault.es.js +1 -1
- package/external/toposort/index.cjs.js +1 -1
- package/external/toposort/index.es.js +1 -1
- package/index.css +1 -1
- package/package.json +1 -1
- package/src/tedi/components/form/textarea/textarea.cjs.js +1 -1
- package/src/tedi/components/form/textarea/textarea.d.ts +29 -0
- package/src/tedi/components/form/textarea/textarea.es.js +82 -36
- package/src/tedi/components/form/textarea/textarea.module.scss.cjs.js +1 -1
- package/src/tedi/components/form/textarea/textarea.module.scss.es.js +1 -0
- package/src/tedi/components/form/toggle/toggle.cjs.js +1 -0
- package/src/tedi/components/form/toggle/toggle.d.ts +92 -0
- package/src/tedi/components/form/toggle/toggle.es.js +79 -0
- package/src/tedi/components/form/toggle/toggle.module.scss.cjs.js +1 -0
- package/src/tedi/components/form/toggle/toggle.module.scss.es.js +19 -0
- package/src/tedi/index.d.ts +1 -0
- package/tedi.cjs.js +1 -1
- package/tedi.es.js +137 -135
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const L=require("react/jsx-runtime"),w=require("../../../../../external/classnames/index.cjs.js"),a=require("react"),O=require("../textfield/textfield.cjs.js"),d=require("./textarea.module.scss.cjs.js"),M=a.forwardRef((N,o)=>{const{className:_,helper:p=[],characterLimit:s,onChange:n,onChangeEvent:g,value:l,defaultValue:b,autoGrow:t=!1,minRows:u=3,maxRows:y=12,height:H="7.5rem",maxHeight:i,...q}=N,[T,F]=a.useState(b??""),c=a.useRef(null),[v,E]=a.useState("auto"),j=a.useCallback(e=>{!l&&!(n||g)&&F(e),n==null||n(e)},[l,n,g]),m=a.useMemo(()=>l??T,[l,T]),r=a.useCallback(()=>{if(!t||!c.current)return;const e=c.current,$=e.style.overflow;e.style.overflow="hidden";const f=window.getComputedStyle(e);let h=parseFloat(f.lineHeight);isNaN(h)&&(h=(parseFloat(f.fontSize)||16)*1.5);const S=parseFloat(f.paddingTop),A=parseFloat(f.paddingBottom),B=e.scrollHeight-S-A;let x=Math.ceil(B/h);x=Math.min(Math.max(x,u),y);const R=`${x*h+S+A}px`;e.style.height=R,E(R),e.style.overflow=$,e.style.overflowY=e.scrollHeight>e.clientHeight?"auto":"hidden"},[t,u,y]);a.useEffect(()=>{t&&requestAnimationFrame(()=>{r()})},[m,t,r]),a.useEffect(()=>{t&&c.current&&r()},[t,r]);const k=a.useCallback(e=>{o&&(typeof o=="function"?o(e):o.current=e),e!=null&&e.input&&e.input instanceof HTMLTextAreaElement&&(c.current=e.input,t&&setTimeout(r,0))},[o,t,r]),z=a.useMemo(()=>t?{rows:u,style:{...i?{maxHeight:i}:{},overflow:"hidden",height:v}}:{style:{height:H,...i?{maxHeight:i}:{},overflow:"auto"}},[t,u,i,H,v]),C=m.length,I=s?`${C}/${s}`:"",V=[...Array.isArray(p)?p:[p],...s?[{type:C>s?"error":"hint",text:I,position:"right",className:w.default(d.default["tedi-textarea__character-count"])}]:[]];return L.jsx(O.TextField,{...q,ref:k,"data-name":"textarea",inputClassName:w.default(d.default["tedi-textarea__input"],{[d.default["tedi-textarea__input--auto-grow"]]:t}),isTextArea:!0,className:w.default(d.default["tedi-textarea"],_),value:m,onChange:j,onChangeEvent:g,helper:V,input:z})});M.displayName="TextArea";exports.TextArea=M;
|
|
@@ -5,6 +5,35 @@ export interface TextAreaProps extends TextFieldProps {
|
|
|
5
5
|
* Maximum number of characters allowed in the textarea.
|
|
6
6
|
*/
|
|
7
7
|
characterLimit?: number;
|
|
8
|
+
/**
|
|
9
|
+
* Enable automatic height adjustment based on content.
|
|
10
|
+
* @default false
|
|
11
|
+
*/
|
|
12
|
+
autoGrow?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Minimum number of rows (only used when autoGrow = true).
|
|
15
|
+
* @default 3
|
|
16
|
+
*/
|
|
17
|
+
minRows?: number;
|
|
18
|
+
/**
|
|
19
|
+
* Maximum number of rows before scrolling (only used when autoGrow = true).
|
|
20
|
+
* @default 12
|
|
21
|
+
*/
|
|
22
|
+
maxRows?: number;
|
|
23
|
+
/**
|
|
24
|
+
* Fixed height for the textarea (e.g. '200px', '12rem', 240).
|
|
25
|
+
* Ignored when autoGrow = true.
|
|
26
|
+
*
|
|
27
|
+
* @default 7.5rem
|
|
28
|
+
*/
|
|
29
|
+
height?: string | number;
|
|
30
|
+
/**
|
|
31
|
+
* Maximum height of the textarea.
|
|
32
|
+
*
|
|
33
|
+
* - When `autoGrow` is enabled, this limits how tall the textarea can grow.
|
|
34
|
+
* - When `autoGrow` is disabled, this limits the fixed height.
|
|
35
|
+
*/
|
|
36
|
+
maxHeight?: string | number;
|
|
8
37
|
}
|
|
9
38
|
export declare const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<TextFieldForwardRef>>;
|
|
10
39
|
export default TextArea;
|
|
@@ -1,51 +1,97 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import { TextField as
|
|
5
|
-
import
|
|
6
|
-
const
|
|
1
|
+
import { jsx as q } from "react/jsx-runtime";
|
|
2
|
+
import w from "../../../../../external/classnames/index.es.js";
|
|
3
|
+
import a, { forwardRef as G, useRef as O, useEffect as R } from "react";
|
|
4
|
+
import { TextField as P } from "../textfield/textfield.es.js";
|
|
5
|
+
import p from "./textarea.module.scss.es.js";
|
|
6
|
+
const Y = G((S, r) => {
|
|
7
7
|
const {
|
|
8
|
-
className:
|
|
9
|
-
helper:
|
|
10
|
-
characterLimit:
|
|
11
|
-
onChange:
|
|
12
|
-
onChangeEvent:
|
|
13
|
-
value:
|
|
14
|
-
defaultValue:
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
8
|
+
className: F,
|
|
9
|
+
helper: f = [],
|
|
10
|
+
characterLimit: i,
|
|
11
|
+
onChange: s,
|
|
12
|
+
onChangeEvent: g,
|
|
13
|
+
value: l,
|
|
14
|
+
defaultValue: M,
|
|
15
|
+
autoGrow: e = !1,
|
|
16
|
+
minRows: c = 3,
|
|
17
|
+
maxRows: H = 12,
|
|
18
|
+
height: y = "7.5rem",
|
|
19
|
+
maxHeight: n,
|
|
20
|
+
...b
|
|
21
|
+
} = S, [v, k] = a.useState(M ?? ""), u = O(null), [C, z] = a.useState("auto"), E = a.useCallback(
|
|
22
|
+
(t) => {
|
|
23
|
+
!l && !(s || g) && k(t), s == null || s(t);
|
|
19
24
|
},
|
|
20
|
-
[
|
|
21
|
-
),
|
|
22
|
-
|
|
23
|
-
|
|
25
|
+
[l, s, g]
|
|
26
|
+
), x = a.useMemo(() => l ?? v, [l, v]), o = a.useCallback(() => {
|
|
27
|
+
if (!e || !u.current) return;
|
|
28
|
+
const t = u.current, L = t.style.overflow;
|
|
29
|
+
t.style.overflow = "hidden";
|
|
30
|
+
const h = window.getComputedStyle(t);
|
|
31
|
+
let m = parseFloat(h.lineHeight);
|
|
32
|
+
isNaN(m) && (m = (parseFloat(h.fontSize) || 16) * 1.5);
|
|
33
|
+
const N = parseFloat(h.paddingTop), _ = parseFloat(h.paddingBottom), j = t.scrollHeight - N - _;
|
|
34
|
+
let d = Math.ceil(j / m);
|
|
35
|
+
d = Math.min(Math.max(d, c), H);
|
|
36
|
+
const A = `${d * m + N + _}px`;
|
|
37
|
+
t.style.height = A, z(A), t.style.overflow = L, t.style.overflowY = t.scrollHeight > t.clientHeight ? "auto" : "hidden";
|
|
38
|
+
}, [e, c, H]);
|
|
39
|
+
R(() => {
|
|
40
|
+
e && requestAnimationFrame(() => {
|
|
41
|
+
o();
|
|
42
|
+
});
|
|
43
|
+
}, [x, e, o]), R(() => {
|
|
44
|
+
e && u.current && o();
|
|
45
|
+
}, [e, o]);
|
|
46
|
+
const I = a.useCallback(
|
|
47
|
+
(t) => {
|
|
48
|
+
r && (typeof r == "function" ? r(t) : r.current = t), t != null && t.input && t.input instanceof HTMLTextAreaElement && (u.current = t.input, e && setTimeout(o, 0));
|
|
49
|
+
},
|
|
50
|
+
[r, e, o]
|
|
51
|
+
), V = a.useMemo(() => e ? {
|
|
52
|
+
rows: c,
|
|
53
|
+
style: {
|
|
54
|
+
...n ? { maxHeight: n } : {},
|
|
55
|
+
overflow: "hidden",
|
|
56
|
+
height: C
|
|
57
|
+
}
|
|
58
|
+
} : {
|
|
59
|
+
style: {
|
|
60
|
+
height: y,
|
|
61
|
+
...n ? { maxHeight: n } : {},
|
|
62
|
+
overflow: "auto"
|
|
63
|
+
}
|
|
64
|
+
}, [e, c, n, y, C]), T = x.length, $ = i ? `${T}/${i}` : "", B = [
|
|
65
|
+
...Array.isArray(f) ? f : [f],
|
|
66
|
+
...i ? [
|
|
24
67
|
{
|
|
25
|
-
type:
|
|
26
|
-
text:
|
|
68
|
+
type: T > i ? "error" : "hint",
|
|
69
|
+
text: $,
|
|
27
70
|
position: "right",
|
|
28
|
-
className:
|
|
71
|
+
className: w(p["tedi-textarea__character-count"])
|
|
29
72
|
}
|
|
30
73
|
] : []
|
|
31
74
|
];
|
|
32
|
-
return /* @__PURE__ */
|
|
33
|
-
|
|
75
|
+
return /* @__PURE__ */ q(
|
|
76
|
+
P,
|
|
34
77
|
{
|
|
35
|
-
...
|
|
36
|
-
ref:
|
|
78
|
+
...b,
|
|
79
|
+
ref: I,
|
|
37
80
|
"data-name": "textarea",
|
|
38
|
-
inputClassName:
|
|
81
|
+
inputClassName: w(p["tedi-textarea__input"], {
|
|
82
|
+
[p["tedi-textarea__input--auto-grow"]]: e
|
|
83
|
+
}),
|
|
39
84
|
isTextArea: !0,
|
|
40
|
-
className:
|
|
41
|
-
value:
|
|
42
|
-
onChange:
|
|
43
|
-
onChangeEvent:
|
|
44
|
-
helper:
|
|
85
|
+
className: w(p["tedi-textarea"], F),
|
|
86
|
+
value: x,
|
|
87
|
+
onChange: E,
|
|
88
|
+
onChangeEvent: g,
|
|
89
|
+
helper: B,
|
|
90
|
+
input: V
|
|
45
91
|
}
|
|
46
92
|
);
|
|
47
93
|
});
|
|
48
|
-
|
|
94
|
+
Y.displayName = "TextArea";
|
|
49
95
|
export {
|
|
50
|
-
|
|
96
|
+
Y as TextArea
|
|
51
97
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t={"tedi-textarea__input":"tedi-textarea__input-8c740e37","tedi-textarea__input--auto-grow":"tedi-textarea__input--auto-grow-dddcdb8a","tedi-textarea__character-count":"tedi-textarea__character-count-c5b62b38"};exports.default=t;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),r=require("../../../../../external/classnames/index.cjs.js"),m=require("react"),R=require("../../base/icon/icon.cjs.js"),w=require("../../loaders/spinner/spinner.cjs.js"),P=require("../feedback-text/feedback-text.cjs.js"),M=require("../form-label/form-label.cjs.js"),e=require("./toggle.module.scss.cjs.js"),_=m.forwardRef((k,x)=>{const{id:o,label:l,hideLabel:j=!1,labelPosition:N="left",helper:a,className:y,checked:n,defaultChecked:g,onChange:d,size:C,color:q="primary",type:v="filled",icon:u,disabled:f=!1,isLoading:s=!1,tooltip:T,...$}=k,h=a?`${o}-helper`:void 0,[z,S]=m.useState(g??!1),i=typeof n<"u",c=i?n:z,p=C||(u?"large":"default"),L=b=>{s||(i||S(b.target.checked),d==null||d(b.target.checked))},F=r.default(e.default["tedi-toggle"],e.default[`tedi-toggle--${p}`],e.default[`tedi-toggle--${q}-${v}`],{[e.default["tedi-toggle--active"]]:c,[e.default["tedi-toggle--disabled"]]:f||s},y),I=r.default(e.default["tedi-toggle__control"],e.default[`tedi-toggle__control--label-${N}`]);return t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:I,children:[l&&t.jsx(M.FormLabel,{id:o,className:e.default["tedi-toggle__label"],hideLabel:j,label:l,tooltip:T}),t.jsxs("div",{className:F,children:[t.jsx("input",{...$,ref:x,id:o,type:"checkbox",role:"switch","aria-label":typeof l=="string"?l:void 0,"aria-describedby":h,className:e.default["tedi-toggle__input"],checked:i?c:void 0,defaultChecked:i?void 0:g,disabled:f||s,onChange:L}),t.jsx("span",{className:e.default["tedi-toggle__slider"],children:s?t.jsx(w.Spinner,{size:p==="large"?16:10,className:e.default["tedi-toggle__icon"]}):u?t.jsx(R.Icon,{name:c?"lock_open":"lock",size:16,color:"inherit"}):null})]})]}),a&&t.jsx(P.FeedbackText,{id:h,...a,className:r.default(e.default["tedi-toggle__helper"],a.className)})]})});_.displayName="Toggle";exports.Toggle=_;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { FeedbackTextProps } from '../feedback-text/feedback-text';
|
|
3
|
+
export interface ToggleProps {
|
|
4
|
+
/**
|
|
5
|
+
* Unique identifier for the toggle input.
|
|
6
|
+
* Required for accessibility and to link the label with the input.
|
|
7
|
+
*/
|
|
8
|
+
id: string;
|
|
9
|
+
/**
|
|
10
|
+
* Label text or element displayed next to the toggle.
|
|
11
|
+
* This is shown to users and should clearly describe what the toggle does.
|
|
12
|
+
*/
|
|
13
|
+
label: React.ReactNode;
|
|
14
|
+
/**
|
|
15
|
+
* Visually hides the label while keeping it accessible to screen readers.
|
|
16
|
+
* Useful when the toggle's purpose is clear from context (e.g., in a settings row).
|
|
17
|
+
* @default false
|
|
18
|
+
*/
|
|
19
|
+
hideLabel?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Position of the label relative to the toggle switch.
|
|
22
|
+
* @default right
|
|
23
|
+
*/
|
|
24
|
+
labelPosition?: 'left' | 'right';
|
|
25
|
+
/**
|
|
26
|
+
* Optional helper text displayed below the toggle.
|
|
27
|
+
* Can be used to provide additional context or validation messages.
|
|
28
|
+
*/
|
|
29
|
+
helper?: FeedbackTextProps;
|
|
30
|
+
/**
|
|
31
|
+
* Additional CSS class name(s) to apply to the toggle wrapper.
|
|
32
|
+
* Useful for custom styling or theming from parent components.
|
|
33
|
+
*/
|
|
34
|
+
className?: string;
|
|
35
|
+
/**
|
|
36
|
+
* Controlled state of the toggle.
|
|
37
|
+
* Use this together with `onChange` for full control over the checked state.
|
|
38
|
+
*/
|
|
39
|
+
checked?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Initial checked state for uncontrolled usage.
|
|
42
|
+
* Ignored if `checked` prop is provided.
|
|
43
|
+
*/
|
|
44
|
+
defaultChecked?: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Callback fired when the toggle state changes.
|
|
47
|
+
* @param value - The new checked state (`true` or `false`)
|
|
48
|
+
*/
|
|
49
|
+
onChange?(value: boolean): void;
|
|
50
|
+
/**
|
|
51
|
+
* Size of the toggle switch.
|
|
52
|
+
* @default default
|
|
53
|
+
*/
|
|
54
|
+
size?: 'default' | 'large';
|
|
55
|
+
/**
|
|
56
|
+
* Color variant of the toggle.
|
|
57
|
+
* - `primary`: Standard toggle (usually blue/brand color)
|
|
58
|
+
* - `colored`: Alternative accent color (e.g. for special settings)
|
|
59
|
+
* @default primary
|
|
60
|
+
*/
|
|
61
|
+
color?: 'primary' | 'colored';
|
|
62
|
+
/**
|
|
63
|
+
* Visual style variant of the toggle.
|
|
64
|
+
* @default filled
|
|
65
|
+
*/
|
|
66
|
+
type?: 'filled' | 'outlined';
|
|
67
|
+
/**
|
|
68
|
+
* Shows a lock icon inside the toggle knob.
|
|
69
|
+
* Typically used with `size="large"` to indicate secure/private settings.
|
|
70
|
+
* @default false
|
|
71
|
+
*/
|
|
72
|
+
icon?: boolean;
|
|
73
|
+
/**
|
|
74
|
+
* Disables the toggle, preventing user interaction.
|
|
75
|
+
* @default false
|
|
76
|
+
*/
|
|
77
|
+
disabled?: boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Shows a loading spinner inside the toggle instead of the icon or dot.
|
|
80
|
+
* Useful for async operations (e.g. saving settings).
|
|
81
|
+
* When `true`, `onChange` will not be triggered.
|
|
82
|
+
* @default false
|
|
83
|
+
*/
|
|
84
|
+
isLoading?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Tooltip content shown when hovering over the label.
|
|
87
|
+
* Useful for providing extra explanation without cluttering the UI.
|
|
88
|
+
*/
|
|
89
|
+
tooltip?: string;
|
|
90
|
+
}
|
|
91
|
+
export declare const Toggle: React.ForwardRefExoticComponent<ToggleProps & React.RefAttributes<HTMLInputElement>>;
|
|
92
|
+
export default Toggle;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { jsxs as c, Fragment as w, jsx as l } from "react/jsx-runtime";
|
|
2
|
+
import n from "../../../../../external/classnames/index.es.js";
|
|
3
|
+
import { forwardRef as P, useState as R } from "react";
|
|
4
|
+
import { Icon as q } from "../../base/icon/icon.es.js";
|
|
5
|
+
import { Spinner as A } from "../../loaders/spinner/spinner.es.js";
|
|
6
|
+
import { FeedbackText as B } from "../feedback-text/feedback-text.es.js";
|
|
7
|
+
import { FormLabel as D } from "../form-label/form-label.es.js";
|
|
8
|
+
import e from "./toggle.module.scss.es.js";
|
|
9
|
+
const E = P((k, N) => {
|
|
10
|
+
const {
|
|
11
|
+
id: a,
|
|
12
|
+
label: t,
|
|
13
|
+
hideLabel: u = !1,
|
|
14
|
+
labelPosition: C = "left",
|
|
15
|
+
helper: o,
|
|
16
|
+
className: y,
|
|
17
|
+
checked: g,
|
|
18
|
+
defaultChecked: m,
|
|
19
|
+
onChange: r,
|
|
20
|
+
size: v,
|
|
21
|
+
color: x = "primary",
|
|
22
|
+
type: z = "filled",
|
|
23
|
+
icon: p,
|
|
24
|
+
disabled: f = !1,
|
|
25
|
+
isLoading: i = !1,
|
|
26
|
+
tooltip: $,
|
|
27
|
+
...F
|
|
28
|
+
} = k, h = o ? `${a}-helper` : void 0, [I, L] = R(m ?? !1), s = typeof g < "u", d = s ? g : I, _ = v || (p ? "large" : "default"), S = (b) => {
|
|
29
|
+
i || (s || L(b.target.checked), r == null || r(b.target.checked));
|
|
30
|
+
}, T = n(
|
|
31
|
+
e["tedi-toggle"],
|
|
32
|
+
e[`tedi-toggle--${_}`],
|
|
33
|
+
e[`tedi-toggle--${x}-${z}`],
|
|
34
|
+
{
|
|
35
|
+
[e["tedi-toggle--active"]]: d,
|
|
36
|
+
[e["tedi-toggle--disabled"]]: f || i
|
|
37
|
+
},
|
|
38
|
+
y
|
|
39
|
+
), j = n(e["tedi-toggle__control"], e[`tedi-toggle__control--label-${C}`]);
|
|
40
|
+
return /* @__PURE__ */ c(w, { children: [
|
|
41
|
+
/* @__PURE__ */ c("div", { className: j, children: [
|
|
42
|
+
t && /* @__PURE__ */ l(
|
|
43
|
+
D,
|
|
44
|
+
{
|
|
45
|
+
id: a,
|
|
46
|
+
className: e["tedi-toggle__label"],
|
|
47
|
+
hideLabel: u,
|
|
48
|
+
label: t,
|
|
49
|
+
tooltip: $
|
|
50
|
+
}
|
|
51
|
+
),
|
|
52
|
+
/* @__PURE__ */ c("div", { className: T, children: [
|
|
53
|
+
/* @__PURE__ */ l(
|
|
54
|
+
"input",
|
|
55
|
+
{
|
|
56
|
+
...F,
|
|
57
|
+
ref: N,
|
|
58
|
+
id: a,
|
|
59
|
+
type: "checkbox",
|
|
60
|
+
role: "switch",
|
|
61
|
+
"aria-label": typeof t == "string" ? t : void 0,
|
|
62
|
+
"aria-describedby": h,
|
|
63
|
+
className: e["tedi-toggle__input"],
|
|
64
|
+
checked: s ? d : void 0,
|
|
65
|
+
defaultChecked: s ? void 0 : m,
|
|
66
|
+
disabled: f || i,
|
|
67
|
+
onChange: S
|
|
68
|
+
}
|
|
69
|
+
),
|
|
70
|
+
/* @__PURE__ */ l("span", { className: e["tedi-toggle__slider"], children: i ? /* @__PURE__ */ l(A, { size: _ === "large" ? 16 : 10, className: e["tedi-toggle__icon"] }) : p ? /* @__PURE__ */ l(q, { name: d ? "lock_open" : "lock", size: 16, color: "inherit" }) : null })
|
|
71
|
+
] })
|
|
72
|
+
] }),
|
|
73
|
+
o && /* @__PURE__ */ l(B, { id: h, ...o, className: n(e["tedi-toggle__helper"], o.className) })
|
|
74
|
+
] });
|
|
75
|
+
});
|
|
76
|
+
E.displayName = "Toggle";
|
|
77
|
+
export {
|
|
78
|
+
E as Toggle
|
|
79
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e={"tedi-toggle":"tedi-toggle-bf2092b8","tedi-toggle--default":"tedi-toggle--default-29bee46c","tedi-toggle__slider":"tedi-toggle__slider-99a4a0ae","tedi-toggle--large":"tedi-toggle--large-0b4cc552","tedi-toggle--primary-filled":"tedi-toggle--primary-filled-179ce9d5","tedi-toggle--primary-outlined":"tedi-toggle--primary-outlined-5740f18d","tedi-toggle--colored-filled":"tedi-toggle--colored-filled-0cf929c1","tedi-toggle--colored-outlined":"tedi-toggle--colored-outlined-1b147450","tedi-toggle__input":"tedi-toggle__input-1ef36755","tedi-toggle__icon":"tedi-toggle__icon-3602d8ca","tedi-toggle--disabled":"tedi-toggle--disabled-72cc5bec","tedi-toggle__control":"tedi-toggle__control-5202406f","tedi-toggle__control--label-left":"tedi-toggle__control--label-left-b0ce2b37","tedi-toggle__control--label-right":"tedi-toggle__control--label-right-0fff724d"};exports.default=e;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
const e = {
|
|
2
|
+
"tedi-toggle": "tedi-toggle-bf2092b8",
|
|
3
|
+
"tedi-toggle--default": "tedi-toggle--default-29bee46c",
|
|
4
|
+
"tedi-toggle__slider": "tedi-toggle__slider-99a4a0ae",
|
|
5
|
+
"tedi-toggle--large": "tedi-toggle--large-0b4cc552",
|
|
6
|
+
"tedi-toggle--primary-filled": "tedi-toggle--primary-filled-179ce9d5",
|
|
7
|
+
"tedi-toggle--primary-outlined": "tedi-toggle--primary-outlined-5740f18d",
|
|
8
|
+
"tedi-toggle--colored-filled": "tedi-toggle--colored-filled-0cf929c1",
|
|
9
|
+
"tedi-toggle--colored-outlined": "tedi-toggle--colored-outlined-1b147450",
|
|
10
|
+
"tedi-toggle__input": "tedi-toggle__input-1ef36755",
|
|
11
|
+
"tedi-toggle__icon": "tedi-toggle__icon-3602d8ca",
|
|
12
|
+
"tedi-toggle--disabled": "tedi-toggle--disabled-72cc5bec",
|
|
13
|
+
"tedi-toggle__control": "tedi-toggle__control-5202406f",
|
|
14
|
+
"tedi-toggle__control--label-left": "tedi-toggle__control--label-left-b0ce2b37",
|
|
15
|
+
"tedi-toggle__control--label-right": "tedi-toggle__control--label-right-0fff724d"
|
|
16
|
+
};
|
|
17
|
+
export {
|
|
18
|
+
e as default
|
|
19
|
+
};
|
package/src/tedi/index.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ export * from './components/navigation/link/link';
|
|
|
27
27
|
export * from './components/form/textfield/textfield';
|
|
28
28
|
export * from './components/form/textarea/textarea';
|
|
29
29
|
export * from './components/form/number-field/number-field';
|
|
30
|
+
export * from './components/form/toggle/toggle';
|
|
30
31
|
export * from './components/form/feedback-text/feedback-text';
|
|
31
32
|
export * from './components/form/search/search';
|
|
32
33
|
export * from './components/form/radio/radio';
|
package/tedi.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./src/tedi/components/base/typography/text/text.cjs.js"),u=require("./src/tedi/components/base/typography/heading/heading.cjs.js"),a=require("./src/tedi/components/base/icon/icon.cjs.js"),l=require("./src/tedi/components/content/label/label.cjs.js"),d=require("./src/tedi/components/content/section/section.cjs.js"),p=require("./src/tedi/components/content/heading-with-icon/heading-with-icon.cjs.js"),q=require("./src/tedi/components/content/truncate/truncate.cjs.js"),g=require("./src/tedi/components/content/text-group/text-group.cjs.js"),C=require("./src/tedi/components/loaders/spinner/spinner.cjs.js"),v=require("./src/tedi/components/tags/tag/tag.cjs.js"),S=require("./src/tedi/components/tags/status-badge/status-badge.cjs.js"),T=require("./src/tedi/components/buttons/closing-button/closing-button.cjs.js"),b=require("./src/tedi/components/buttons/button/button.cjs.js"),h=require("./src/tedi/components/buttons/info-button/info-button.cjs.js"),x=require("./src/tedi/components/buttons/floating-button/floating-button.cjs.js"),I=require("./src/tedi/components/buttons/button-group/button-group.cjs.js"),P=require("./src/tedi/components/buttons/collapse/collapse.cjs.js"),B=require("./src/tedi/components/notifications/alert/alert.cjs.js"),k=require("./src/tedi/components/notifications/toast/toast.cjs.js"),m=require("./src/tedi/components/navigation/hash-trigger/hash-trigger.cjs.js"),w=require("./src/tedi/components/navigation/link/link.cjs.js"),D=require("./src/tedi/components/form/textfield/textfield.cjs.js"),L=require("./src/tedi/components/form/textarea/textarea.cjs.js"),f=require("./src/tedi/components/form/number-field/number-field.cjs.js"),F=require("./src/tedi/components/form/feedback-text/feedback-text.cjs.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./src/tedi/components/base/typography/text/text.cjs.js"),u=require("./src/tedi/components/base/typography/heading/heading.cjs.js"),a=require("./src/tedi/components/base/icon/icon.cjs.js"),l=require("./src/tedi/components/content/label/label.cjs.js"),d=require("./src/tedi/components/content/section/section.cjs.js"),p=require("./src/tedi/components/content/heading-with-icon/heading-with-icon.cjs.js"),q=require("./src/tedi/components/content/truncate/truncate.cjs.js"),g=require("./src/tedi/components/content/text-group/text-group.cjs.js"),C=require("./src/tedi/components/loaders/spinner/spinner.cjs.js"),v=require("./src/tedi/components/tags/tag/tag.cjs.js"),S=require("./src/tedi/components/tags/status-badge/status-badge.cjs.js"),T=require("./src/tedi/components/buttons/closing-button/closing-button.cjs.js"),b=require("./src/tedi/components/buttons/button/button.cjs.js"),h=require("./src/tedi/components/buttons/info-button/info-button.cjs.js"),x=require("./src/tedi/components/buttons/floating-button/floating-button.cjs.js"),I=require("./src/tedi/components/buttons/button-group/button-group.cjs.js"),P=require("./src/tedi/components/buttons/collapse/collapse.cjs.js"),B=require("./src/tedi/components/notifications/alert/alert.cjs.js"),k=require("./src/tedi/components/notifications/toast/toast.cjs.js"),m=require("./src/tedi/components/navigation/hash-trigger/hash-trigger.cjs.js"),w=require("./src/tedi/components/navigation/link/link.cjs.js"),D=require("./src/tedi/components/form/textfield/textfield.cjs.js"),L=require("./src/tedi/components/form/textarea/textarea.cjs.js"),f=require("./src/tedi/components/form/number-field/number-field.cjs.js"),F=require("./src/tedi/components/form/toggle/toggle.cjs.js"),G=require("./src/tedi/components/form/feedback-text/feedback-text.cjs.js"),N=require("./src/tedi/components/form/search/search.cjs.js"),y=require("./src/tedi/components/form/radio/radio.cjs.js"),A=require("./src/tedi/components/form/file-upload/file-upload.cjs.js"),M=require("./src/tedi/components/form/file-dropzone/file-dropzone.cjs.js"),H=require("./src/tedi/components/form/select/select.cjs.js"),V=require("./src/tedi/components/form/checkbox/checkbox.cjs.js"),z=require("./src/tedi/components/misc/separator/separator.cjs.js"),R=require("./src/tedi/components/misc/print/print.cjs.js"),U=require("./src/tedi/components/misc/stretch-content/stretch-content.cjs.js"),W=require("./src/tedi/components/misc/scroll-visibility/scroll-visibility.cjs.js"),E=require("./src/tedi/components/misc/scroll-fade/scroll-fade.cjs.js"),j=require("./src/tedi/components/misc/affix/affix.cjs.js"),O=require("./src/tedi/components/misc/ellipsis/ellipsis.cjs.js"),J=require("./src/tedi/providers/style-provider/style-provider.cjs.js"),o=require("./src/tedi/providers/accessibility-provider/accessibility-provider.cjs.js"),K=require("./src/tedi/providers/accessibility-provider/use-declare-loader.cjs.js"),t=require("./src/tedi/providers/theme-provider/theme-provider.cjs.js"),i=require("./src/tedi/providers/printing-provider/printing-provider.cjs.js"),Q=require("./src/tedi/components/cards/card/card.cjs.js"),X=require("./src/tedi/components/cards/card/card-content/card-content.cjs.js"),Y=require("./src/tedi/components/cards/card/card-header/card-header.cjs.js"),Z=require("./src/tedi/components/cards/card/card-notification/card-notification.cjs.js"),_=require("./src/tedi/components/form/choice-group/choice-group.cjs.js"),$=require("./src/tedi/components/form/choice-group/choice-group-context.cjs.js"),ee=require("./src/tedi/components/form/choice-group/components/choice-group-item/choice-group-item.cjs.js"),re=require("./src/tedi/components/layout/grid/col.cjs.js"),oe=require("./src/tedi/components/overlays/dropdown/dropdown.cjs.js"),te=require("./src/tedi/components/overlays/dropdown/dropdown-content/dropdown-content.cjs.js"),n=require("./src/tedi/components/overlays/dropdown/dropdown-context.cjs.js"),ie=require("./src/tedi/components/overlays/dropdown/dropdown-item/dropdown-item.cjs.js"),ne=require("./src/tedi/components/overlays/dropdown/dropdown-trigger/dropdown-trigger.cjs.js"),s=require("./src/tedi/providers/label-provider/label-provider.cjs.js"),se=require("./src/tedi/components/content/list/list.cjs.js"),ce=require("./src/tedi/components/content/list/list-item.cjs.js"),ue=require("./src/tedi/components/overlays/popover/popover.cjs.js"),ae=require("./src/tedi/components/overlays/popover/popover-content.cjs.js"),le=require("./src/tedi/components/overlays/popover/popover-trigger.cjs.js"),de=require("./src/tedi/components/layout/grid/row.cjs.js"),pe=require("./src/tedi/components/layout/sidenav/sidenav.cjs.js"),qe=require("./src/tedi/components/layout/sidenav/components/sidenav-dropdown/sidenav-dropdown.cjs.js"),ge=require("./src/tedi/components/layout/sidenav/components/sidenav-item/sidenav-item.cjs.js"),Ce=require("./src/tedi/components/layout/sidenav/components/sidenav-mobile/sidenav-mobile.cjs.js"),ve=require("./src/tedi/components/layout/sidenav/components/sidenav-toggle/sidenav-toggle.cjs.js"),Se=require("./src/tedi/components/loaders/skeleton/skeleton.cjs.js"),Te=require("./src/tedi/components/loaders/skeleton/skeleton-block/skeleton-block.cjs.js"),be=require("./external/react-toastify/dist/index.cjs.js"),he=require("./src/tedi/components/overlays/tooltip/tooltip.cjs.js"),xe=require("./src/tedi/components/overlays/tooltip/tooltip-content.cjs.js"),Ie=require("./src/tedi/components/overlays/tooltip/tooltip-trigger.cjs.js"),Pe=require("./src/tedi/components/layout/vertical-spacing/vertical-spacing.cjs.js"),Be=require("./src/tedi/components/layout/vertical-spacing/vertical-spacing-item.cjs.js"),e=require("./src/tedi/helpers/hooks/use-breakpoint.cjs.js"),r=require("./src/tedi/providers/label-provider/labels-map.cjs.js"),ke=require("./src/tedi/helpers/hooks/use-breakpoint-props.cjs.js"),me=require("./src/tedi/helpers/hooks/use-element-size.cjs.js"),we=require("./src/tedi/helpers/hooks/use-file-upload.cjs.js"),De=require("./src/tedi/helpers/hooks/use-is-mounted.cjs.js"),Le=require("./src/tedi/helpers/hooks/use-is-touch-device.cjs.js"),fe=require("./src/tedi/providers/label-provider/use-labels.cjs.js"),Fe=require("./src/tedi/helpers/hooks/use-scroll.cjs.js"),Ge=require("./src/tedi/helpers/hooks/use-what-input.cjs.js");exports.Text=c.Text;exports.Heading=u.Heading;exports.Icon=a.Icon;exports.Label=l.Label;exports.Section=d.Section;exports.HeadingWithIcon=p.HeadingWithIcon;exports.Truncate=q.Truncate;exports.TextGroup=g.TextGroup;exports.Spinner=C.Spinner;exports.Tag=v.Tag;exports.StatusBadge=S.StatusBadge;exports.ClosingButton=T.ClosingButton;exports.Button=b.Button;exports.InfoButton=h.InfoButton;exports.FloatingButton=x.FloatingButton;exports.ButtonGroup=I.ButtonGroup;exports.Collapse=P.Collapse;exports.Alert=B.Alert;exports.sendNotification=k.sendNotification;exports.HashTrigger=m.HashTrigger;exports.Link=w.Link;exports.TextField=D.TextField;exports.TextArea=L.TextArea;exports.NumberField=f.NumberField;exports.Toggle=F.Toggle;exports.FeedbackText=G.FeedbackText;exports.Search=N.Search;exports.Radio=y.Radio;exports.FileUpload=A.FileUpload;exports.FileDropzone=M.FileDropzone;exports.Select=H.Select;exports.Checkbox=V.Checkbox;exports.Separator=z.Separator;exports.Print=R.Print;exports.StretchContent=U.StretchContent;exports.ScrollVisibility=W.ScrollVisibility;exports.ScrollFade=E.ScrollFade;exports.Affix=j.Affix;exports.Ellipsis=O.Ellipsis;exports.StyleProvider=J.StyleProvider;exports.AccessibilityContext=o.AccessibilityContext;exports.AccessibilityProvider=o.AccessibilityProvider;exports.useDeclareLoader=K.useDeclareLoader;exports.ThemeProvider=t.ThemeProvider;exports.useTheme=t.useTheme;exports.PrintingProvider=i.PrintingProvider;exports.usePrint=i.usePrint;exports.Card=Q.Card;exports.CardContent=X.CardContent;exports.CardHeader=Y.CardHeader;exports.CardNotification=Z.CardNotification;exports.ChoiceGroup=_.ChoiceGroup;exports.ChoiceGroupContext=$.ChoiceGroupContext;exports.ChoiceGroupItem=ee.ChoiceGroupItem;exports.Col=re.Col;exports.Dropdown=oe.Dropdown;exports.DropdownContent=te.DropdownContent;exports.DropdownContext=n.DropdownContext;exports.useDropdownContext=n.useDropdownContext;exports.DropdownItem=ie.DropdownItem;exports.DropdownTrigger=ne.DropdownTrigger;exports.LabelContext=s.LabelContext;exports.LabelProvider=s.LabelProvider;exports.List=se.List;exports.ListItem=ce.ListItem;exports.Popover=ue.Popover;exports.PopoverContent=ae.PopoverContent;exports.PopoverTrigger=le.PopoverTrigger;exports.Row=de.Row;exports.SideNav=pe.SideNav;exports.SideNavDropdown=qe.SideNavDropdown;exports.SideNavItem=ge.SideNavItem;exports.SideNavMobile=Ce.SideNavMobile;exports.SidenavToggle=ve.SidenavToggle;exports.Skeleton=Se.Skeleton;exports.SkeletonBlock=Te.SkeletonBlock;exports.ToastContainer=be.ToastContainer;exports.Tooltip=he.Tooltip;exports.TooltipContent=xe.TooltipContent;exports.TooltipTrigger=Ie.TooltipTrigger;exports.VerticalSpacing=Pe.VerticalSpacing;exports.VerticalSpacingItem=Be.VerticalSpacingItem;exports.breakpoints=e.breakpoints;exports.isBreakpointBelow=e.isBreakpointBelow;exports.useBreakpoint=e.default;exports.labelsMap=r.labelsMap;exports.validateLabelRecord=r.validateLabelRecord;exports.validateLabelValues=r.validateLabelValues;exports.useBreakpointProps=ke.useBreakpointProps;exports.useElementSize=me.useElementSize;exports.useFileUpload=we.useFileUpload;exports.useIsMounted=De.useIsMounted;exports.useIsTouchDevice=Le.useIsTouchDevice;exports.useLabels=fe.useLabels;exports.useScroll=Fe.useScroll;exports.useWhatInput=Ge.useWhatInput;
|