fictoan-react 2.0.0-beta.17 → 2.0.0-beta.19
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/dist/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/components/Accordion/Accordion.js +27 -0
- package/dist/components/Accordion/Accordion.js.map +1 -0
- package/dist/components/Badge/Badge.d.ts.map +1 -1
- package/dist/components/Badge/Badge.js +55 -0
- package/dist/components/Badge/Badge.js.map +1 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/Breadcrumbs.js +64 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.js.map +1 -0
- package/dist/components/Button/Button.js +28 -0
- package/dist/components/Button/Button.js.map +1 -0
- package/dist/components/ButtonGroup/ButtonGroup.js +27 -0
- package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -0
- package/dist/components/Callout/Callout.d.ts.map +1 -1
- package/dist/components/Callout/Callout.js +37 -0
- package/dist/components/Callout/Callout.js.map +1 -0
- package/dist/components/Card/Card.js +27 -0
- package/dist/components/Card/Card.js.map +1 -0
- package/dist/components/CodeBlock/CodeBlock.js +191 -0
- package/dist/components/CodeBlock/CodeBlock.js.map +1 -0
- package/dist/components/Divider/Divider.js +29 -0
- package/dist/components/Divider/Divider.js.map +1 -0
- package/dist/components/Drawer/Drawer.d.ts +3 -0
- package/dist/components/Drawer/Drawer.d.ts.map +1 -1
- package/dist/components/Drawer/Drawer.js +96 -0
- package/dist/components/Drawer/Drawer.js.map +1 -0
- package/dist/components/Element/Element.d.ts +6 -2
- package/dist/components/Element/Element.d.ts.map +1 -1
- package/dist/components/Element/Element.js +154 -0
- package/dist/components/Element/Element.js.map +1 -0
- package/dist/components/Element/Tags.js +31 -0
- package/dist/components/Element/Tags.js.map +1 -0
- package/dist/components/Element/constants.d.ts +21 -21
- package/dist/components/Element/constants.d.ts.map +1 -1
- package/dist/components/Element/constants.js +8 -0
- package/dist/components/Element/constants.js.map +1 -0
- package/dist/components/Form/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/components/Form/Checkbox/Checkbox.js +78 -0
- package/dist/components/Form/Checkbox/Checkbox.js.map +1 -0
- package/dist/components/Form/Checkbox/CheckboxAndSwitchGroup.d.ts.map +1 -1
- package/dist/components/Form/Checkbox/CheckboxAndSwitchGroup.js +177 -0
- package/dist/components/Form/Checkbox/CheckboxAndSwitchGroup.js.map +1 -0
- package/dist/components/Form/Checkbox/Switch.d.ts.map +1 -1
- package/dist/components/Form/Checkbox/Switch.js +79 -0
- package/dist/components/Form/Checkbox/Switch.js.map +1 -0
- package/dist/components/Form/FileUpload/FileUpload.d.ts.map +1 -1
- package/dist/components/Form/FileUpload/FileUpload.js +142 -0
- package/dist/components/Form/FileUpload/FileUpload.js.map +1 -0
- package/dist/components/Form/Form/Form.js +37 -0
- package/dist/components/Form/Form/Form.js.map +1 -0
- package/dist/components/Form/Form/FormGenerator.js +64 -0
- package/dist/components/Form/Form/FormGenerator.js.map +1 -0
- package/dist/components/Form/FormItem/FormItem.d.ts +16 -0
- package/dist/components/Form/FormItem/FormItem.d.ts.map +1 -1
- package/dist/components/Form/FormItem/FormItem.js +127 -0
- package/dist/components/Form/FormItem/FormItem.js.map +1 -0
- package/dist/components/Form/FormItemGroup/FormItemGroup.d.ts.map +1 -1
- package/dist/components/Form/FormItemGroup/FormItemGroup.js +42 -0
- package/dist/components/Form/FormItemGroup/FormItemGroup.js.map +1 -0
- package/dist/components/Form/InputField/InputField.d.ts.map +1 -1
- package/dist/components/Form/InputField/InputField.js +156 -0
- package/dist/components/Form/InputField/InputField.js.map +1 -0
- package/dist/components/Form/InputLabel/InputLabel.js +30 -0
- package/dist/components/Form/InputLabel/InputLabel.js.map +1 -0
- package/dist/components/Form/ListBox/ListBox.d.ts +1 -1
- package/dist/components/Form/ListBox/ListBox.d.ts.map +1 -1
- package/dist/components/Form/ListBox/ListBox.js +287 -0
- package/dist/components/Form/ListBox/ListBox.js.map +1 -0
- package/dist/components/Form/ListBox/constants.d.ts +1 -1
- package/dist/components/Form/ListBox/constants.d.ts.map +1 -1
- package/dist/components/Form/ListBox/listBoxUtils.js +49 -0
- package/dist/components/Form/ListBox/listBoxUtils.js.map +1 -0
- package/dist/components/Form/PinInputField/PinInputField.d.ts +6 -1
- package/dist/components/Form/PinInputField/PinInputField.d.ts.map +1 -1
- package/dist/components/Form/PinInputField/PinInputField.js +165 -0
- package/dist/components/Form/PinInputField/PinInputField.js.map +1 -0
- package/dist/components/Form/RadioButton/RadioButton.d.ts.map +1 -1
- package/dist/components/Form/RadioButton/RadioButton.js +82 -0
- package/dist/components/Form/RadioButton/RadioButton.js.map +1 -0
- package/dist/components/Form/RadioButton/RadioGroup.d.ts.map +1 -1
- package/dist/components/Form/RadioButton/RadioGroup.js +97 -0
- package/dist/components/Form/RadioButton/RadioGroup.js.map +1 -0
- package/dist/components/Form/RadioButton/RadioTabGroup.d.ts +1 -1
- package/dist/components/Form/RadioButton/RadioTabGroup.d.ts.map +1 -1
- package/dist/components/Form/RadioButton/RadioTabGroup.js +182 -0
- package/dist/components/Form/RadioButton/RadioTabGroup.js.map +1 -0
- package/dist/components/Form/Range/Range.js +376 -0
- package/dist/components/Form/Range/Range.js.map +1 -0
- package/dist/components/Form/Select/Select.d.ts +1 -1
- package/dist/components/Form/Select/Select.d.ts.map +1 -1
- package/dist/components/Form/Select/Select.js +83 -0
- package/dist/components/Form/Select/Select.js.map +1 -0
- package/dist/components/Form/TextArea/TextArea.d.ts.map +1 -1
- package/dist/components/Form/TextArea/TextArea.js +111 -0
- package/dist/components/Form/TextArea/TextArea.js.map +1 -0
- package/dist/components/Meter/Meter.d.ts.map +1 -1
- package/dist/components/Meter/Meter.js +105 -0
- package/dist/components/Meter/Meter.js.map +1 -0
- package/dist/components/Modal/Modal.d.ts.map +1 -1
- package/dist/components/Modal/Modal.js +76 -0
- package/dist/components/Modal/Modal.js.map +1 -0
- package/dist/components/Notification/NotificationItem/NotificationItem.d.ts.map +1 -1
- package/dist/components/Notification/NotificationItem/NotificationItem.js +70 -0
- package/dist/components/Notification/NotificationItem/NotificationItem.js.map +1 -0
- package/dist/components/Notification/NotificationsProvider/NotificationsProvider.d.ts.map +1 -1
- package/dist/components/Notification/NotificationsProvider/NotificationsProvider.js +88 -0
- package/dist/components/Notification/NotificationsProvider/NotificationsProvider.js.map +1 -0
- package/dist/components/Notification/NotificationsWrapper/NotificationsWrapper.d.ts.map +1 -1
- package/dist/components/Notification/NotificationsWrapper/NotificationsWrapper.js +35 -0
- package/dist/components/Notification/NotificationsWrapper/NotificationsWrapper.js.map +1 -0
- package/dist/components/OptionCard/OptionCard.js +150 -0
- package/dist/components/OptionCard/OptionCard.js.map +1 -0
- package/dist/components/Pagination/Pagination.d.ts +1 -1
- package/dist/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/components/Pagination/Pagination.js +207 -0
- package/dist/components/Pagination/Pagination.js.map +1 -0
- package/dist/components/Pagination/usePagination.js +35 -0
- package/dist/components/Pagination/usePagination.js.map +1 -0
- package/dist/components/Portion/Portion.d.ts +1 -0
- package/dist/components/Portion/Portion.d.ts.map +1 -1
- package/dist/components/Portion/Portion.js +35 -0
- package/dist/components/Portion/Portion.js.map +1 -0
- package/dist/components/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.js +60 -0
- package/dist/components/ProgressBar/ProgressBar.js.map +1 -0
- package/dist/components/Row/Row.d.ts +1 -0
- package/dist/components/Row/Row.d.ts.map +1 -1
- package/dist/components/Row/Row.js +40 -0
- package/dist/components/Row/Row.js.map +1 -0
- package/dist/components/Sidebar/ContentWrapper/ContentWrapper.js +23 -0
- package/dist/components/Sidebar/ContentWrapper/ContentWrapper.js.map +1 -0
- package/dist/components/Sidebar/SidebarFooter/SidebarFooter.js +25 -0
- package/dist/components/Sidebar/SidebarFooter/SidebarFooter.js.map +1 -0
- package/dist/components/Sidebar/SidebarHeader/SidebarHeader.js +25 -0
- package/dist/components/Sidebar/SidebarHeader/SidebarHeader.js.map +1 -0
- package/dist/components/Sidebar/SidebarItem/SidebarItem.js +30 -0
- package/dist/components/Sidebar/SidebarItem/SidebarItem.js.map +1 -0
- package/dist/components/Sidebar/SidebarItemsGroup/SidebarItemsGroup.js +29 -0
- package/dist/components/Sidebar/SidebarItemsGroup/SidebarItemsGroup.js.map +1 -0
- package/dist/components/Sidebar/SidebarWrapper/SidebarWrapper.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarWrapper/SidebarWrapper.js +35 -0
- package/dist/components/Sidebar/SidebarWrapper/SidebarWrapper.js.map +1 -0
- package/dist/components/Skeleton/Skeleton.d.ts.map +1 -1
- package/dist/components/Skeleton/Skeleton.js +82 -0
- package/dist/components/Skeleton/Skeleton.js.map +1 -0
- package/dist/components/Spinner/Spinner.js +33 -0
- package/dist/components/Spinner/Spinner.js.map +1 -0
- package/dist/components/Table/Table.d.ts +0 -1
- package/dist/components/Table/Table.d.ts.map +1 -1
- package/dist/components/Table/Table.js +40 -0
- package/dist/components/Table/Table.js.map +1 -0
- package/dist/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/components/Tabs/Tabs.js +106 -0
- package/dist/components/Tabs/Tabs.js.map +1 -0
- package/dist/components/ThemeProvider/ThemeProvider.d.ts +6 -0
- package/dist/components/ThemeProvider/ThemeProvider.d.ts.map +1 -1
- package/dist/components/ThemeProvider/ThemeProvider.js +52 -0
- package/dist/components/ThemeProvider/ThemeProvider.js.map +1 -0
- package/dist/components/Toast/ToastItem/ToastItem.js +47 -0
- package/dist/components/Toast/ToastItem/ToastItem.js.map +1 -0
- package/dist/components/Toast/ToastsProvider/ToastsProvider.d.ts.map +1 -1
- package/dist/components/Toast/ToastsProvider/ToastsProvider.js +45 -0
- package/dist/components/Toast/ToastsProvider/ToastsProvider.js.map +1 -0
- package/dist/components/Toast/ToastsWrapper/ToastsWrapper.d.ts.map +1 -1
- package/dist/components/Toast/ToastsWrapper/ToastsWrapper.js +28 -0
- package/dist/components/Toast/ToastsWrapper/ToastsWrapper.js.map +1 -0
- package/dist/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +62 -0
- package/dist/components/Tooltip/Tooltip.js.map +1 -0
- package/dist/components/Typography/Heading.js +30 -0
- package/dist/components/Typography/Heading.js.map +1 -0
- package/dist/components/Typography/Text.js +15 -0
- package/dist/components/Typography/Text.js.map +1 -0
- package/dist/components/index.js +124 -75
- package/dist/components/index.js.map +1 -1
- package/dist/fictoan-schema.json +2066 -0
- package/dist/hooks/UseClickOutside.js +17 -0
- package/dist/hooks/UseClickOutside.js.map +1 -0
- package/dist/hooks/UseViewTransition.d.ts +2 -0
- package/dist/hooks/UseViewTransition.d.ts.map +1 -0
- package/dist/hooks/UseViewTransition.js +17 -0
- package/dist/hooks/UseViewTransition.js.map +1 -0
- package/dist/index.css +6 -10661
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +145 -152
- package/dist/index.js.map +1 -1
- package/dist/scripts/generateSchema.d.ts +2 -0
- package/dist/scripts/generateSchema.d.ts.map +1 -0
- package/dist/scripts/schema-meta.d.ts +12 -0
- package/dist/scripts/schema-meta.d.ts.map +1 -0
- package/dist/styles/colours.js +55 -0
- package/dist/styles/colours.js.map +1 -0
- package/dist/utils/classNames.d.ts +1 -1
- package/dist/utils/classNames.d.ts.map +1 -1
- package/dist/utils/classNames.js +6 -0
- package/dist/utils/classNames.js.map +1 -0
- package/dist/utils/propSeparation.js +77 -0
- package/dist/utils/propSeparation.js.map +1 -0
- package/package.json +24 -19
- package/dist/Accordion-CeGNgNW8.js +0 -4254
- package/dist/Accordion-CeGNgNW8.js.map +0 -1
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as l } from "react/jsx-runtime";
|
|
3
|
+
import m from "react";
|
|
4
|
+
/* empty css */
|
|
5
|
+
import { Element as s } from "../Element/Element.js";
|
|
6
|
+
const p = m.forwardRef(
|
|
7
|
+
({ kind: r, height: a, label: o, ...t }, i) => {
|
|
8
|
+
let e = [];
|
|
9
|
+
return r && e.push(r), /* @__PURE__ */ l(
|
|
10
|
+
s,
|
|
11
|
+
{
|
|
12
|
+
as: "hr",
|
|
13
|
+
"data-hrule": !0,
|
|
14
|
+
ref: i,
|
|
15
|
+
classNames: e,
|
|
16
|
+
role: "separator",
|
|
17
|
+
"aria-orientation": "horizontal",
|
|
18
|
+
"aria-label": o,
|
|
19
|
+
...t,
|
|
20
|
+
style: a ? { height: a } : void 0
|
|
21
|
+
}
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
p.displayName = "Divider";
|
|
26
|
+
export {
|
|
27
|
+
p as Divider
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=Divider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Divider.js","sources":["../../../src/components/Divider/Divider.tsx"],"sourcesContent":["// REACT CORE ==========================================================================================================\nimport React from \"react\";\n\n// LOCAL COMPONENTS ====================================================================================================\nimport { CommonAndHTMLProps } from \"../Element/constants\";\nimport { Element } from \"$element\";\n\n// STYLES ==============================================================================================================\nimport \"./divider.css\";\n\n// prettier-ignore\nexport interface DividerCustomProps {\n kind ? : \"primary\" | \"secondary\" | \"tertiary\";\n height ? : string;\n label ? : string;\n}\n\nexport type DividerElementType = HTMLHRElement;\nexport type DividerProps = Omit<CommonAndHTMLProps<DividerElementType>, keyof DividerCustomProps> & DividerCustomProps;\n\n// COMPONENT ///////////////////////////////////////////////////////////////////////////////////////////////////////////\nexport const Divider = React.forwardRef(\n (\n {kind, height, label, ...props} : DividerProps, ref : React.Ref<DividerElementType>) => {\n let classNames = [];\n\n if (kind) {\n classNames.push(kind);\n }\n\n return (\n <Element<DividerElementType>\n as=\"hr\"\n data-hrule\n ref={ref}\n classNames={classNames}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n aria-label={label}\n {...props}\n style={height ? {height : height} : undefined}\n />\n );\n },\n);\nDivider.displayName = \"Divider\";\n"],"names":["Divider","React","kind","height","label","props","ref","classNames","jsx","Element"],"mappings":";;;;AAqBO,MAAMA,IAAUC,EAAM;AAAA,EACzB,CACI,EAAC,MAAAC,GAAM,QAAAC,GAAQ,OAAAC,GAAO,GAAGC,EAAA,GAAuBC,MAAwC;AACxF,QAAIC,IAAa,CAAA;AAEjB,WAAIL,KACAK,EAAW,KAAKL,CAAI,GAIpB,gBAAAM;AAAA,MAACC;AAAA,MAAA;AAAA,QACG,IAAG;AAAA,QACH,cAAU;AAAA,QACV,KAAAH;AAAA,QACA,YAAAC;AAAA,QACA,MAAK;AAAA,QACL,oBAAiB;AAAA,QACjB,cAAYH;AAAA,QACX,GAAGC;AAAA,QACJ,OAAOF,IAAS,EAAC,QAAAA,MAAmB;AAAA,MAAA;AAAA,IAAA;AAAA,EAGhD;AACJ;AACAH,EAAQ,cAAc;"}
|
|
@@ -10,6 +10,9 @@ export interface DrawerCustomProps {
|
|
|
10
10
|
isDismissible?: boolean;
|
|
11
11
|
showOverlay?: boolean;
|
|
12
12
|
blurOverlay?: boolean;
|
|
13
|
+
/** @deprecated Click-outside-to-close is governed by `isDismissible` via the
|
|
14
|
+
* popover API: when dismissible, both ESC and backdrop click close the
|
|
15
|
+
* drawer. Splitting the two is no longer supported. */
|
|
13
16
|
closeOnClickOutside?: boolean;
|
|
14
17
|
label?: string;
|
|
15
18
|
description?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAKxE,OAAO,cAAc,CAAC;AAEtB,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAsB,MAAM,CAAC;IAC/B,MAAoB,CAAC,EAAG,OAAO,CAAC;IAChC,OAAoB,CAAC,EAAG,MAAM,IAAI,CAAC;IACnC,QAAoB,CAAC,EAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC5D,IAAoB,CAAC,EAAG,YAAY,CAAC;IACrC,aAAoB,CAAC,EAAG,OAAO,CAAC;IAChC,WAAoB,CAAC,EAAG,OAAO,CAAC;IAChC,WAAoB,CAAC,EAAG,OAAO,CAAC;IAChC;;4DAEwD;IACxD,mBAAoB,CAAC,EAAG,OAAO,CAAC;IAChC,KAAoB,CAAC,EAAG,MAAM,CAAC;IAC/B,WAAoB,CAAC,EAAG,MAAM,CAAC;IAC/B,MAAoB,CAAC,EAAG,MAAM,CAAC;CAClC;AAED,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAC/C,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,iBAAiB,CAAC,GAAG,iBAAiB,CAAC;AAGnH,eAAO,MAAM,MAAM,8JAmHlB,CAAC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as n, jsx as m } from "react/jsx-runtime";
|
|
3
|
+
import L, { useRef as P, useEffect as u } from "react";
|
|
4
|
+
import { Div as $ } from "../Element/Tags.js";
|
|
5
|
+
/* empty css */
|
|
6
|
+
import { Element as C } from "../Element/Element.js";
|
|
7
|
+
const S = L.forwardRef(
|
|
8
|
+
({
|
|
9
|
+
id: f,
|
|
10
|
+
children: v,
|
|
11
|
+
isOpen: r = !1,
|
|
12
|
+
onClose: t,
|
|
13
|
+
position: w = "right",
|
|
14
|
+
size: p = "medium",
|
|
15
|
+
padding: g = "micro",
|
|
16
|
+
bgColor: h,
|
|
17
|
+
bgColour: b,
|
|
18
|
+
isDismissible: d = !0,
|
|
19
|
+
showOverlay: y = !0,
|
|
20
|
+
blurOverlay: E = !1,
|
|
21
|
+
closeOnClickOutside: T,
|
|
22
|
+
zIndex: l,
|
|
23
|
+
label: N,
|
|
24
|
+
description: a,
|
|
25
|
+
classNames: R = [],
|
|
26
|
+
...k
|
|
27
|
+
}, x) => {
|
|
28
|
+
const s = `${f}`, c = a ? `${s}-description` : void 0, D = P(null), o = x || D, j = [
|
|
29
|
+
"drawer",
|
|
30
|
+
w,
|
|
31
|
+
p,
|
|
32
|
+
...y ? ["with-overlay"] : [],
|
|
33
|
+
...E ? ["blur-overlay"] : [],
|
|
34
|
+
...R
|
|
35
|
+
];
|
|
36
|
+
return u(() => {
|
|
37
|
+
const e = o.current;
|
|
38
|
+
e && (r && !e.matches(":popover-open") ? (e.showPopover(), e.focus()) : !r && e.matches(":popover-open") && e.hidePopover());
|
|
39
|
+
}, [r, o]), u(() => {
|
|
40
|
+
const e = o.current;
|
|
41
|
+
if (!e) return;
|
|
42
|
+
const i = (I) => {
|
|
43
|
+
I.newState === "closed" && r && t && t();
|
|
44
|
+
};
|
|
45
|
+
return e.addEventListener("toggle", i), () => e.removeEventListener("toggle", i);
|
|
46
|
+
}, [r, t, o]), /* @__PURE__ */ n(
|
|
47
|
+
C,
|
|
48
|
+
{
|
|
49
|
+
as: "div",
|
|
50
|
+
id: s,
|
|
51
|
+
"data-drawer": !0,
|
|
52
|
+
ref: o,
|
|
53
|
+
classNames: j,
|
|
54
|
+
popover: d ? "auto" : "manual",
|
|
55
|
+
role: "dialog",
|
|
56
|
+
"aria-modal": "true",
|
|
57
|
+
"aria-label": N || "Drawer",
|
|
58
|
+
"aria-describedby": c,
|
|
59
|
+
tabIndex: -1,
|
|
60
|
+
style: l !== void 0 ? { zIndex: l } : void 0,
|
|
61
|
+
...k,
|
|
62
|
+
children: [
|
|
63
|
+
d && t && /* @__PURE__ */ m(
|
|
64
|
+
"button",
|
|
65
|
+
{
|
|
66
|
+
type: "button",
|
|
67
|
+
className: "drawer-dismiss-button",
|
|
68
|
+
onClick: t,
|
|
69
|
+
"aria-label": "Close drawer",
|
|
70
|
+
children: "×"
|
|
71
|
+
}
|
|
72
|
+
),
|
|
73
|
+
/* @__PURE__ */ n(
|
|
74
|
+
$,
|
|
75
|
+
{
|
|
76
|
+
className: "drawer-content",
|
|
77
|
+
role: "document",
|
|
78
|
+
padding: g,
|
|
79
|
+
bgColor: h,
|
|
80
|
+
bgColour: b,
|
|
81
|
+
children: [
|
|
82
|
+
a && /* @__PURE__ */ m("div", { id: c, className: "sr-only", children: a }),
|
|
83
|
+
v
|
|
84
|
+
]
|
|
85
|
+
}
|
|
86
|
+
)
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
|
+
);
|
|
92
|
+
S.displayName = "Drawer";
|
|
93
|
+
export {
|
|
94
|
+
S as Drawer
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=Drawer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Drawer.js","sources":["../../../src/components/Drawer/Drawer.tsx"],"sourcesContent":["// REACT CORE ==========================================================================================================\nimport React, { useEffect, useRef } from \"react\";\n\n// LOCAL COMPONENTS ====================================================================================================\nimport { CommonAndHTMLProps, SpacingTypes } from \"../Element/constants\";\nimport { Div } from \"$tags\";\nimport { Element } from \"$element\";\n\n// STYLES ==============================================================================================================\nimport \"./drawer.css\";\n\nexport interface DrawerCustomProps {\n id : string;\n isOpen ? : boolean;\n onClose ? : () => void;\n position ? : \"top\" | \"right\" | \"bottom\" | \"left\";\n size ? : SpacingTypes;\n isDismissible ? : boolean;\n showOverlay ? : boolean;\n blurOverlay ? : boolean;\n /** @deprecated Click-outside-to-close is governed by `isDismissible` via the\n * popover API: when dismissible, both ESC and backdrop click close the\n * drawer. Splitting the two is no longer supported. */\n closeOnClickOutside ? : boolean;\n label ? : string;\n description ? : string;\n zIndex ? : number;\n}\n\nexport type DrawerElementType = HTMLDivElement;\nexport type DrawerProps = Omit<CommonAndHTMLProps<DrawerElementType>, keyof DrawerCustomProps> & DrawerCustomProps;\n\n// COMPONENT ///////////////////////////////////////////////////////////////////////////////////////////////////////////\nexport const Drawer = React.forwardRef(\n (\n {\n id,\n children,\n isOpen = false,\n onClose,\n position = \"right\",\n size = \"medium\",\n padding = \"micro\",\n bgColor,\n bgColour,\n isDismissible = true,\n showOverlay = true,\n blurOverlay = false,\n closeOnClickOutside : _closeOnClickOutside,\n zIndex,\n label,\n description,\n classNames = [],\n ...props\n } : DrawerProps,\n ref : React.Ref<DrawerElementType>,\n ) => {\n const drawerId = `${id}`;\n const descriptionId = description ? `${drawerId}-description` : undefined;\n const drawerRef = useRef<HTMLDivElement>(null);\n const effectiveRef = (ref as React.MutableRefObject<HTMLDivElement | null>) || drawerRef;\n\n const drawerClasses : string[] = [\n \"drawer\",\n position,\n size,\n ...(showOverlay ? [ \"with-overlay\" ] : []),\n ...(blurOverlay ? [ \"blur-overlay\" ] : []),\n ...classNames,\n ];\n\n // Sync isOpen prop to popover state. The popover API handles backdrop\n // click and ESC dismissal natively; we only call showPopover/hidePopover.\n useEffect(() => {\n const drawer = effectiveRef.current;\n if (!drawer) return;\n\n if (isOpen && !drawer.matches(\":popover-open\")) {\n drawer.showPopover();\n // Focus the dismiss button or the drawer itself for keyboard users.\n drawer.focus();\n } else if (!isOpen && drawer.matches(\":popover-open\")) {\n drawer.hidePopover();\n }\n }, [ isOpen, effectiveRef ]);\n\n // When the popover closes externally (ESC, backdrop click), keep React\n // state in sync by firing onClose.\n useEffect(() => {\n const drawer = effectiveRef.current;\n if (!drawer) return;\n\n const handleToggle = (e : Event) => {\n const toggleEvent = e as ToggleEvent;\n if (toggleEvent.newState === \"closed\" && isOpen && onClose) {\n onClose();\n }\n };\n\n drawer.addEventListener(\"toggle\", handleToggle);\n return () => drawer.removeEventListener(\"toggle\", handleToggle);\n }, [ isOpen, onClose, effectiveRef ]);\n\n return (\n <Element<DrawerElementType>\n as=\"div\"\n id={drawerId}\n data-drawer\n ref={effectiveRef}\n classNames={drawerClasses}\n popover={isDismissible ? \"auto\" : \"manual\"}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={label || \"Drawer\"}\n aria-describedby={descriptionId}\n tabIndex={-1}\n style={zIndex !== undefined ? { zIndex } : undefined}\n {...props}\n >\n {isDismissible && onClose && (\n <button\n type=\"button\"\n className=\"drawer-dismiss-button\"\n onClick={onClose}\n aria-label=\"Close drawer\"\n >\n ×\n </button>\n )}\n\n <Div\n className=\"drawer-content\"\n role=\"document\"\n padding={padding}\n bgColor={bgColor}\n bgColour={bgColour}\n >\n {description && (\n <div id={descriptionId} className=\"sr-only\">\n {description}\n </div>\n )}\n\n {children}\n </Div>\n </Element>\n );\n },\n);\nDrawer.displayName = \"Drawer\";\n"],"names":["Drawer","React","id","children","isOpen","onClose","position","size","padding","bgColor","bgColour","isDismissible","showOverlay","blurOverlay","_closeOnClickOutside","zIndex","label","description","classNames","props","ref","drawerId","descriptionId","drawerRef","useRef","effectiveRef","drawerClasses","useEffect","drawer","handleToggle","e","jsxs","Element","jsx","Div"],"mappings":";;;;;AAiCO,MAAMA,IAASC,EAAM;AAAA,EACxB,CACI;AAAA,IACI,IAAAC;AAAA,IACA,UAAAC;AAAA,IACA,QAAAC,IAAS;AAAA,IACT,SAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,MAAAC,IAAO;AAAA,IACP,SAAAC,IAAU;AAAA,IACV,SAAAC;AAAA,IACA,UAAAC;AAAA,IACA,eAAAC,IAAgB;AAAA,IAChB,aAAAC,IAAc;AAAA,IACd,aAAAC,IAAc;AAAA,IACd,qBAAsBC;AAAA,IACtB,QAAAC;AAAA,IACA,OAAAC;AAAA,IACA,aAAAC;AAAA,IACA,YAAAC,IAAa,CAAA;AAAA,IACb,GAAGC;AAAA,EAAA,GAEPC,MACC;AACD,UAAMC,IAAgB,GAAGnB,CAAE,IACrBoB,IAAgBL,IAAc,GAAGI,CAAQ,iBAAiB,QAC1DE,IAAgBC,EAAuB,IAAI,GAC3CC,IAAiBL,KAAyDG,GAE1EG,IAA2B;AAAA,MAC7B;AAAA,MACApB;AAAA,MACAC;AAAA,MACA,GAAIK,IAAc,CAAE,cAAe,IAAI,CAAA;AAAA,MACvC,GAAIC,IAAc,CAAE,cAAe,IAAI,CAAA;AAAA,MACvC,GAAGK;AAAA,IAAA;AAKP,WAAAS,EAAU,MAAM;AACZ,YAAMC,IAASH,EAAa;AAC5B,MAAKG,MAEDxB,KAAU,CAACwB,EAAO,QAAQ,eAAe,KACzCA,EAAO,YAAA,GAEPA,EAAO,MAAA,KACA,CAACxB,KAAUwB,EAAO,QAAQ,eAAe,KAChDA,EAAO,YAAA;AAAA,IAEf,GAAG,CAAExB,GAAQqB,CAAa,CAAC,GAI3BE,EAAU,MAAM;AACZ,YAAMC,IAASH,EAAa;AAC5B,UAAI,CAACG,EAAQ;AAEb,YAAMC,IAAe,CAACC,MAAc;AAEhC,QADoBA,EACJ,aAAa,YAAY1B,KAAUC,KAC/CA,EAAA;AAAA,MAER;AAEA,aAAAuB,EAAO,iBAAiB,UAAUC,CAAY,GACvC,MAAMD,EAAO,oBAAoB,UAAUC,CAAY;AAAA,IAClE,GAAG,CAAEzB,GAAQC,GAASoB,CAAa,CAAC,GAGhC,gBAAAM;AAAA,MAACC;AAAA,MAAA;AAAA,QACG,IAAG;AAAA,QACH,IAAIX;AAAA,QACJ,eAAW;AAAA,QACX,KAAKI;AAAA,QACL,YAAYC;AAAA,QACZ,SAASf,IAAgB,SAAS;AAAA,QAClC,MAAK;AAAA,QACL,cAAW;AAAA,QACX,cAAYK,KAAS;AAAA,QACrB,oBAAkBM;AAAA,QAClB,UAAU;AAAA,QACV,OAAOP,MAAW,SAAY,EAAE,QAAAA,MAAW;AAAA,QAC1C,GAAGI;AAAA,QAEH,UAAA;AAAA,UAAAR,KAAiBN,KACd,gBAAA4B;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,MAAK;AAAA,cACL,WAAU;AAAA,cACV,SAAS5B;AAAA,cACT,cAAW;AAAA,cACd,UAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAKL,gBAAA0B;AAAA,YAACG;AAAA,YAAA;AAAA,cACG,WAAU;AAAA,cACV,MAAK;AAAA,cACL,SAAA1B;AAAA,cACA,SAAAC;AAAA,cACA,UAAAC;AAAA,cAEC,UAAA;AAAA,gBAAAO,uBACI,OAAA,EAAI,IAAIK,GAAe,WAAU,WAC7B,UAAAL,GACL;AAAA,gBAGHd;AAAA,cAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QACL;AAAA,MAAA;AAAA,IAAA;AAAA,EAGZ;AACJ;AACAH,EAAO,cAAc;"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ElementProps } from './constants';
|
|
3
3
|
|
|
4
|
-
export declare const Element: <K extends
|
|
5
|
-
|
|
4
|
+
export declare const Element: <K extends HTMLElement = HTMLElement>(props: ElementProps<K> & {
|
|
5
|
+
role?: string;
|
|
6
|
+
ariaLabel?: string;
|
|
7
|
+
tabIndex?: number;
|
|
8
|
+
onKeyDown?: React.KeyboardEventHandler<K>;
|
|
9
|
+
ref?: React.Ref<K>;
|
|
6
10
|
}) => React.ReactElement;
|
|
7
11
|
//# sourceMappingURL=Element.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Element.d.ts","sourceRoot":"","sources":["../../../src/components/Element/Element.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"Element.d.ts","sourceRoot":"","sources":["../../../src/components/Element/Element.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAgB3C,eAAO,MAAM,OAAO,EA4Kf,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EACrC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG;IACrB,IAAU,CAAC,EAAG,MAAM,CAAC;IACrB,SAAU,CAAC,EAAG,MAAM,CAAC;IACrB,QAAU,CAAC,EAAG,MAAM,CAAC;IACrB,SAAU,CAAC,EAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAC5C,GAAU,CAAC,EAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC9B,KACA,KAAK,CAAC,YAAY,CAAC"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as ut } from "react/jsx-runtime";
|
|
3
|
+
import Ct from "react";
|
|
4
|
+
import { createClassName as Ot } from "../../utils/classNames.js";
|
|
5
|
+
const Tt = /* @__PURE__ */ new Set([
|
|
6
|
+
"none",
|
|
7
|
+
"nano",
|
|
8
|
+
"micro",
|
|
9
|
+
"tiny",
|
|
10
|
+
"small",
|
|
11
|
+
"medium",
|
|
12
|
+
"large",
|
|
13
|
+
"huge"
|
|
14
|
+
]), wt = (o) => Tt.has(o), kt = Ct.forwardRef(
|
|
15
|
+
({
|
|
16
|
+
as: o = "div",
|
|
17
|
+
role: k,
|
|
18
|
+
ariaLabel: x,
|
|
19
|
+
tabIndex: z,
|
|
20
|
+
onKeyDown: N,
|
|
21
|
+
...L
|
|
22
|
+
}, R) => {
|
|
23
|
+
const {
|
|
24
|
+
classNames: S = [],
|
|
25
|
+
bgColor: e,
|
|
26
|
+
bgColour: n,
|
|
27
|
+
bgOpacity: l,
|
|
28
|
+
borderColor: r,
|
|
29
|
+
borderColour: d,
|
|
30
|
+
borderOpacity: s,
|
|
31
|
+
className: v,
|
|
32
|
+
columns: a,
|
|
33
|
+
fillColor: g,
|
|
34
|
+
fillColour: p,
|
|
35
|
+
gap: B,
|
|
36
|
+
hideOnDesktop: P,
|
|
37
|
+
hideOnMobile: E,
|
|
38
|
+
hideOnTabletLandscape: F,
|
|
39
|
+
hideOnTabletPortrait: I,
|
|
40
|
+
horizontalMargin: M,
|
|
41
|
+
horizontalPadding: A,
|
|
42
|
+
horizontallyCenterThis: j,
|
|
43
|
+
horizontallyCentreThis: D,
|
|
44
|
+
inheritFormSpacing: G,
|
|
45
|
+
isClickable: H,
|
|
46
|
+
isFullHeight: K,
|
|
47
|
+
isFullWidth: V,
|
|
48
|
+
layoutAsFlexbox: W,
|
|
49
|
+
layoutAsGrid: _,
|
|
50
|
+
listVertically: q,
|
|
51
|
+
listHorizontally: J,
|
|
52
|
+
marginLeft: Q,
|
|
53
|
+
marginBottom: U,
|
|
54
|
+
margin: X,
|
|
55
|
+
marginRight: Y,
|
|
56
|
+
marginTop: Z,
|
|
57
|
+
opacity: m,
|
|
58
|
+
paddingBottom: tt,
|
|
59
|
+
paddingLeft: it,
|
|
60
|
+
padding: ot,
|
|
61
|
+
paddingRight: at,
|
|
62
|
+
paddingTop: et,
|
|
63
|
+
pushItemsToEnds: nt,
|
|
64
|
+
shadow: h,
|
|
65
|
+
shape: c,
|
|
66
|
+
showOnlyOnDesktop: lt,
|
|
67
|
+
showOnlyOnMobile: rt,
|
|
68
|
+
showOnlyOnTabletLandscape: dt,
|
|
69
|
+
showOnlyOnTabletPortrait: st,
|
|
70
|
+
size: y,
|
|
71
|
+
strokeColor: b,
|
|
72
|
+
strokeColour: $,
|
|
73
|
+
textColor: f,
|
|
74
|
+
textColour: u,
|
|
75
|
+
verticalMargin: gt,
|
|
76
|
+
verticalPadding: pt,
|
|
77
|
+
verticallyCenterItems: mt,
|
|
78
|
+
verticallyCentreItems: ht,
|
|
79
|
+
weight: C,
|
|
80
|
+
style: ct,
|
|
81
|
+
...yt
|
|
82
|
+
} = L, O = [], T = {}, i = (t, bt, $t) => {
|
|
83
|
+
t && (wt(t) ? O.push(bt(t)) : $t.forEach((ft) => {
|
|
84
|
+
T[ft] = t;
|
|
85
|
+
}));
|
|
86
|
+
};
|
|
87
|
+
i(B, (t) => `gap-${t}`, ["gap"]), i(X, (t) => `margin-all-${t}`, ["margin"]), i(Z, (t) => `margin-top-${t}`, ["marginTop"]), i(Y, (t) => `margin-right-${t}`, ["marginRight"]), i(U, (t) => `margin-bottom-${t}`, ["marginBottom"]), i(Q, (t) => `margin-left-${t}`, ["marginLeft"]), i(M, (t) => `margin-right-${t} margin-left-${t}`, ["marginLeft", "marginRight"]), i(gt, (t) => `margin-top-${t} margin-bottom-${t}`, ["marginTop", "marginBottom"]), i(ot, (t) => `padding-all-${t}`, ["padding"]), i(et, (t) => `padding-top-${t}`, ["paddingTop"]), i(at, (t) => `padding-right-${t}`, ["paddingRight"]), i(tt, (t) => `padding-bottom-${t}`, ["paddingBottom"]), i(it, (t) => `padding-left-${t}`, ["paddingLeft"]), i(A, (t) => `padding-right-${t} padding-left-${t}`, ["paddingLeft", "paddingRight"]), i(pt, (t) => `padding-top-${t} padding-bottom-${t}`, ["paddingTop", "paddingBottom"]);
|
|
88
|
+
const w = {
|
|
89
|
+
...ct,
|
|
90
|
+
...l && { "--bg-opacity": Number(l) / 100 },
|
|
91
|
+
...s && { "--border-opacity": Number(s) / 100 },
|
|
92
|
+
...a && { gridTemplateColumns: `repeat(${a}, 1fr)` },
|
|
93
|
+
...T
|
|
94
|
+
};
|
|
95
|
+
return /* @__PURE__ */ ut(
|
|
96
|
+
o,
|
|
97
|
+
{
|
|
98
|
+
ref: R,
|
|
99
|
+
role: k,
|
|
100
|
+
"aria-label": x,
|
|
101
|
+
tabIndex: z,
|
|
102
|
+
onKeyDown: N,
|
|
103
|
+
...yt,
|
|
104
|
+
"data-form-spaced": G || void 0,
|
|
105
|
+
style: Object.keys(w).length > 0 ? w : void 0,
|
|
106
|
+
className: Ot(
|
|
107
|
+
[
|
|
108
|
+
v,
|
|
109
|
+
e && `bg-${e}`,
|
|
110
|
+
n && `bg-${n}`,
|
|
111
|
+
r && `border-${r}`,
|
|
112
|
+
d && `border-${d}`,
|
|
113
|
+
g && `fill-${g}`,
|
|
114
|
+
p && `fill-${p}`,
|
|
115
|
+
P && "hide-on-desktop",
|
|
116
|
+
E && "hide-on-mobile",
|
|
117
|
+
F && "hide-on-tablet-landscape",
|
|
118
|
+
I && "hide-on-tablet-portrait",
|
|
119
|
+
j && "horizontally-centre-this",
|
|
120
|
+
D && "horizontally-centre-this",
|
|
121
|
+
H && "is-clickable",
|
|
122
|
+
K && "full-height",
|
|
123
|
+
V && "full-width",
|
|
124
|
+
W && "layout-flexbox",
|
|
125
|
+
(_ || a) && "layout-grid",
|
|
126
|
+
q && "list-vertically",
|
|
127
|
+
J && "list-horizontally",
|
|
128
|
+
m && `opacity-${m}`,
|
|
129
|
+
nt && "push-to-ends",
|
|
130
|
+
h && `shadow-${h}`,
|
|
131
|
+
c && `shape-${c}`,
|
|
132
|
+
lt && "show-only-on-desktop",
|
|
133
|
+
rt && "show-only-on-mobile",
|
|
134
|
+
dt && "show-only-on-tablet-landscape",
|
|
135
|
+
st && "show-only-on-tablet-portrait",
|
|
136
|
+
y && `size-${y}`,
|
|
137
|
+
b && `stroke-${b}`,
|
|
138
|
+
$ && `stroke-${$}`,
|
|
139
|
+
f && `text-${f}`,
|
|
140
|
+
u && `text-${u}`,
|
|
141
|
+
mt && "vertically-centre-items",
|
|
142
|
+
ht && "vertically-centre-items",
|
|
143
|
+
C && `weight-${C}`
|
|
144
|
+
].concat(O, S)
|
|
145
|
+
)
|
|
146
|
+
}
|
|
147
|
+
);
|
|
148
|
+
}
|
|
149
|
+
);
|
|
150
|
+
kt.displayName = "Element";
|
|
151
|
+
export {
|
|
152
|
+
kt as Element
|
|
153
|
+
};
|
|
154
|
+
//# sourceMappingURL=Element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Element.js","sources":["../../../src/components/Element/Element.tsx"],"sourcesContent":["// REACT CORE ==========================================================================================================\nimport React from \"react\";\n\n// UTILS ===============================================================================================================\nimport { createClassName } from \"$utils/classNames\";\n\n// OTHER ===============================================================================================================\nimport { ElementProps } from \"./constants\";\n\n// Spacing props accept a scale token OR an arbitrary CSS length. Tokens map to a\n// utility class (stays in @layer fictoan, overridable); anything else is treated\n// as a raw length and applied via inline style.\nconst SPACING_TOKENS = new Set<string>([\n \"none\", \"nano\", \"micro\", \"tiny\", \"small\", \"medium\", \"large\", \"huge\",\n]);\nconst isSpacingToken = (value: string): boolean => SPACING_TOKENS.has(value);\n\n// COMPONENT ///////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Internally typed against HTMLElement (the underlying forwardRef call can\n// only carry one ref type). The exported cast below re-types `Element` as a\n// generic component so `<Element<HTMLButtonElement>>` actually flows a button-\n// typed ref through to consumers — `forwardRef` strips the generic K from the\n// outer signature without this cast.\nexport const Element = React.forwardRef(\n <K extends HTMLElement>(\n {\n as : Component = \"div\",\n role,\n ariaLabel,\n tabIndex,\n onKeyDown,\n ...props\n }: ElementProps<K> & {\n role ? : string;\n ariaLabel ? : string;\n tabIndex ? : number;\n onKeyDown ? : (event: React.KeyboardEvent) => void;\n }, ref: React.Ref<HTMLElement>\n ) => {\n const {\n classNames = [],\n bgColor,\n bgColour,\n bgOpacity,\n borderColor,\n borderColour,\n borderOpacity,\n className,\n columns,\n fillColor,\n fillColour,\n gap,\n hideOnDesktop,\n hideOnMobile,\n hideOnTabletLandscape,\n hideOnTabletPortrait,\n horizontalMargin,\n horizontalPadding,\n horizontallyCenterThis,\n horizontallyCentreThis,\n inheritFormSpacing,\n isClickable,\n isFullHeight,\n isFullWidth,\n layoutAsFlexbox,\n layoutAsGrid,\n listVertically,\n listHorizontally,\n marginLeft,\n marginBottom,\n margin,\n marginRight,\n marginTop,\n opacity,\n paddingBottom,\n paddingLeft,\n padding,\n paddingRight,\n paddingTop,\n pushItemsToEnds,\n shadow,\n shape,\n showOnlyOnDesktop,\n showOnlyOnMobile,\n showOnlyOnTabletLandscape,\n showOnlyOnTabletPortrait,\n size,\n strokeColor,\n strokeColour,\n textColor,\n textColour,\n verticalMargin,\n verticalPadding,\n verticallyCenterItems,\n verticallyCentreItems,\n weight,\n style,\n ...minimalProps\n } = props;\n\n // Spacing props: a scale token emits a utility class; any other string is\n // treated as a raw CSS length and applied via inline style.\n const spacingClasses: string[] = [];\n const spacingStyle: Record<string, string> = {};\n const applySpacing = (\n value : string | undefined,\n tokenClass : (token: string) => string,\n cssProps : string[],\n ) => {\n if (!value) return;\n if (isSpacingToken(value)) {\n spacingClasses.push(tokenClass(value));\n } else {\n cssProps.forEach((prop) => { spacingStyle[prop] = value; });\n }\n };\n\n applySpacing(gap, (t) => `gap-${t}`, [\"gap\"]);\n applySpacing(margin, (t) => `margin-all-${t}`, [\"margin\"]);\n applySpacing(marginTop, (t) => `margin-top-${t}`, [\"marginTop\"]);\n applySpacing(marginRight, (t) => `margin-right-${t}`, [\"marginRight\"]);\n applySpacing(marginBottom, (t) => `margin-bottom-${t}`, [\"marginBottom\"]);\n applySpacing(marginLeft, (t) => `margin-left-${t}`, [\"marginLeft\"]);\n applySpacing(horizontalMargin, (t) => `margin-right-${t} margin-left-${t}`, [\"marginLeft\", \"marginRight\"]);\n applySpacing(verticalMargin, (t) => `margin-top-${t} margin-bottom-${t}`, [\"marginTop\", \"marginBottom\"]);\n applySpacing(padding, (t) => `padding-all-${t}`, [\"padding\"]);\n applySpacing(paddingTop, (t) => `padding-top-${t}`, [\"paddingTop\"]);\n applySpacing(paddingRight, (t) => `padding-right-${t}`, [\"paddingRight\"]);\n applySpacing(paddingBottom, (t) => `padding-bottom-${t}`, [\"paddingBottom\"]);\n applySpacing(paddingLeft, (t) => `padding-left-${t}`, [\"paddingLeft\"]);\n applySpacing(horizontalPadding, (t) => `padding-right-${t} padding-left-${t}`, [\"paddingLeft\", \"paddingRight\"]);\n applySpacing(verticalPadding, (t) => `padding-top-${t} padding-bottom-${t}`, [\"paddingTop\", \"paddingBottom\"]);\n\n // Build style object: user style + opacity custom properties + arbitrary spacing\n const computedStyle = {\n ...style,\n ...(bgOpacity && { \"--bg-opacity\": Number(bgOpacity) / 100 }),\n ...(borderOpacity && { \"--border-opacity\": Number(borderOpacity) / 100 }),\n ...(columns && { gridTemplateColumns: `repeat(${columns}, 1fr)` }),\n ...spacingStyle,\n } as React.CSSProperties;\n\n return (\n <Component\n ref={ref}\n role={role}\n aria-label={ariaLabel}\n tabIndex={tabIndex}\n onKeyDown={onKeyDown}\n {...minimalProps}\n data-form-spaced={inheritFormSpacing || undefined}\n style={Object.keys(computedStyle).length > 0 ? computedStyle : undefined}\n className={createClassName(\n [\n className,\n bgColor && `bg-${bgColor}`,\n bgColour && `bg-${bgColour}`,\n borderColor && `border-${borderColor}`,\n borderColour && `border-${borderColour}`,\n fillColor && `fill-${fillColor}`,\n fillColour && `fill-${fillColour}`,\n hideOnDesktop && \"hide-on-desktop\",\n hideOnMobile && \"hide-on-mobile\",\n hideOnTabletLandscape && \"hide-on-tablet-landscape\",\n hideOnTabletPortrait && \"hide-on-tablet-portrait\",\n horizontallyCenterThis && \"horizontally-centre-this\",\n horizontallyCentreThis && \"horizontally-centre-this\",\n isClickable && \"is-clickable\",\n isFullHeight && \"full-height\",\n isFullWidth && \"full-width\",\n layoutAsFlexbox && \"layout-flexbox\",\n (layoutAsGrid || columns) && \"layout-grid\",\n listVertically && \"list-vertically\",\n listHorizontally && \"list-horizontally\",\n opacity && `opacity-${opacity}`,\n pushItemsToEnds && \"push-to-ends\",\n shadow && `shadow-${shadow}`,\n shape && `shape-${shape}`,\n showOnlyOnDesktop && \"show-only-on-desktop\",\n showOnlyOnMobile && \"show-only-on-mobile\",\n showOnlyOnTabletLandscape && \"show-only-on-tablet-landscape\",\n showOnlyOnTabletPortrait && \"show-only-on-tablet-portrait\",\n size && `size-${size}`,\n strokeColor && `stroke-${strokeColor}`,\n strokeColour && `stroke-${strokeColour}`,\n textColor && `text-${textColor}`,\n textColour && `text-${textColour}`,\n verticallyCenterItems && \"vertically-centre-items\",\n verticallyCentreItems && \"vertically-centre-items\",\n weight && `weight-${weight}`,\n ].concat(spacingClasses, classNames),\n )}\n />\n );\n },\n) as <K extends HTMLElement = HTMLElement>(\n props: ElementProps<K> & {\n role ? : string;\n ariaLabel ? : string;\n tabIndex ? : number;\n onKeyDown ? : React.KeyboardEventHandler<K>;\n ref ? : React.Ref<K>;\n },\n) => React.ReactElement;\n(Element as any).displayName = \"Element\";\n"],"names":["SPACING_TOKENS","isSpacingToken","value","Element","React","Component","role","ariaLabel","tabIndex","onKeyDown","props","ref","classNames","bgColor","bgColour","bgOpacity","borderColor","borderColour","borderOpacity","className","columns","fillColor","fillColour","gap","hideOnDesktop","hideOnMobile","hideOnTabletLandscape","hideOnTabletPortrait","horizontalMargin","horizontalPadding","horizontallyCenterThis","horizontallyCentreThis","inheritFormSpacing","isClickable","isFullHeight","isFullWidth","layoutAsFlexbox","layoutAsGrid","listVertically","listHorizontally","marginLeft","marginBottom","margin","marginRight","marginTop","opacity","paddingBottom","paddingLeft","padding","paddingRight","paddingTop","pushItemsToEnds","shadow","shape","showOnlyOnDesktop","showOnlyOnMobile","showOnlyOnTabletLandscape","showOnlyOnTabletPortrait","size","strokeColor","strokeColour","textColor","textColour","verticalMargin","verticalPadding","verticallyCenterItems","verticallyCentreItems","weight","style","minimalProps","spacingClasses","spacingStyle","applySpacing","tokenClass","cssProps","prop","computedStyle","jsx","createClassName"],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as a } from "react/jsx-runtime";
|
|
3
|
+
import i from "react";
|
|
4
|
+
import { Element as f } from "./Element.js";
|
|
5
|
+
const e = (o, r) => i.forwardRef(
|
|
6
|
+
(t, s) => {
|
|
7
|
+
const n = { ...r, ...t };
|
|
8
|
+
if (o === "a" && "external" in n) {
|
|
9
|
+
const { external: c } = n;
|
|
10
|
+
c && (n.target = "_blank", n.rel = "noopener noreferrer");
|
|
11
|
+
}
|
|
12
|
+
return /* @__PURE__ */ a(f, { as: o, ref: s, ...n });
|
|
13
|
+
}
|
|
14
|
+
), d = e("article"), v = e("aside"), x = e("body"), y = e("div"), b = e("footer"), h = e("header"), k = e("main"), u = e("nav"), A = e("section"), E = e("span"), H = e("a", {
|
|
15
|
+
rel: "noopener noreferrer"
|
|
16
|
+
// Default props for Hyperlink
|
|
17
|
+
});
|
|
18
|
+
export {
|
|
19
|
+
d as Article,
|
|
20
|
+
v as Aside,
|
|
21
|
+
x as Body,
|
|
22
|
+
y as Div,
|
|
23
|
+
b as Footer,
|
|
24
|
+
h as Header,
|
|
25
|
+
H as Hyperlink,
|
|
26
|
+
k as Main,
|
|
27
|
+
u as Nav,
|
|
28
|
+
A as Section,
|
|
29
|
+
E as Span
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=Tags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tags.js","sources":["../../../src/components/Element/Tags.tsx"],"sourcesContent":["// REACT CORE ==========================================================================================================\nimport React from \"react\";\n\n// OTHER ===============================================================================================================\nimport { Element } from \"./Element\";\nimport { ElementProps } from \"./constants\";\n\ninterface HyperlinkCustomProps {\n href : string;\n target ? : \"_blank\" | \"_self\" | \"_parent\" | \"_top\";\n rel ? : string;\n isExternal ? : boolean;\n}\n\n// Helper type for components that might have custom props\ntype CustomProps<T extends React.ElementType, P = {}> = ElementProps<{}> &\n React.HTMLAttributes<HTMLElement> & P;\n\nconst createComponentWithElement = <T extends React.ElementType, P = {}>(\n tagName : T,\n defaultProps? : Partial<P>,\n) => {\n return React.forwardRef<HTMLElement, CustomProps<T, P>>(\n (props, ref) => {\n // Merge default props with provided props\n const finalProps = {...defaultProps, ...props};\n\n // Handle external links for Hyperlink component\n if (tagName === \"a\" && \"external\" in finalProps) {\n const {external, ...restProps} = finalProps;\n if (external) {\n finalProps.target = \"_blank\";\n finalProps.rel = \"noopener noreferrer\";\n }\n }\n\n return <Element as={tagName} ref={ref} {...finalProps} />;\n },\n );\n};\n\nexport const Article = createComponentWithElement(\"article\");\nexport const Aside = createComponentWithElement(\"aside\");\nexport const Body = createComponentWithElement(\"body\");\nexport const Div = createComponentWithElement(\"div\");\nexport const Footer = createComponentWithElement(\"footer\");\nexport const Header = createComponentWithElement(\"header\");\nexport const Main = createComponentWithElement(\"main\");\nexport const Nav = createComponentWithElement(\"nav\");\nexport const Section = createComponentWithElement(\"section\");\nexport const Span = createComponentWithElement(\"span\");\nexport const Hyperlink = createComponentWithElement<\"a\", HyperlinkCustomProps>(\"a\", {\n rel : \"noopener noreferrer\", // Default props for Hyperlink\n});\n"],"names":["createComponentWithElement","tagName","defaultProps","React","props","ref","finalProps","external","Element","Article","Aside","Body","Div","Footer","Header","Main","Nav","Section","Span","Hyperlink"],"mappings":";;;AAkBA,MAAMA,IAA6B,CAC/BC,GACAC,MAEOC,EAAM;AAAA,EACT,CAACC,GAAOC,MAAQ;AAEZ,UAAMC,IAAa,EAAC,GAAGJ,GAAc,GAAGE,EAAA;AAGxC,QAAIH,MAAY,OAAO,cAAcK,GAAY;AAC7C,YAAM,EAAC,UAAAC,EAAsB,IAAID;AACjC,MAAIC,MACAD,EAAW,SAAS,UACpBA,EAAW,MAAM;AAAA,IAEzB;AAEA,6BAAQE,GAAA,EAAQ,IAAIP,GAAS,KAAAI,GAAW,GAAGC,GAAY;AAAA,EAC3D;AAAA,GAIKG,IAAUT,EAA2B,SAAS,GAC9CU,IAAQV,EAA2B,OAAO,GAC1CW,IAAOX,EAA2B,MAAM,GACxCY,IAAMZ,EAA2B,KAAK,GACtCa,IAASb,EAA2B,QAAQ,GAC5Cc,IAASd,EAA2B,QAAQ,GAC5Ce,IAAOf,EAA2B,MAAM,GACxCgB,IAAMhB,EAA2B,KAAK,GACtCiB,IAAUjB,EAA2B,SAAS,GAC9CkB,IAAOlB,EAA2B,MAAM,GACxCmB,IAAYnB,EAAsD,KAAK;AAAA,EAChF,KAAM;AAAA;AACV,CAAC;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ElementType,
|
|
1
|
+
import { ElementType, HTMLProps } from 'react';
|
|
2
2
|
import { OklchColourName } from '../../styles/colours';
|
|
3
3
|
|
|
4
4
|
export declare const BasicColours: readonly ["transparent", "black", "white"];
|
|
@@ -10,6 +10,7 @@ type OpacityLevel = 0 | 5 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90;
|
|
|
10
10
|
type CustomColours = "hue" | "tint" | "shade" | "analogue" | "accent";
|
|
11
11
|
export type EmphasisTypes = "primary" | "secondary" | "tertiary" | "custom";
|
|
12
12
|
export type SpacingTypes = "none" | "nano" | "micro" | "tiny" | "small" | "medium" | "large" | "huge";
|
|
13
|
+
export type SpacingOrLength = SpacingTypes | (string & {});
|
|
13
14
|
export type ShadowTypes = "none" | "mild" | "hard" | "soft";
|
|
14
15
|
export type ShapeTypes = "rounded" | "curved";
|
|
15
16
|
export type OpacityTypes = "0" | "5" | "10" | "20" | "30" | "40" | "50" | "60" | "70" | "80" | "90";
|
|
@@ -33,25 +34,25 @@ export interface CommonProps {
|
|
|
33
34
|
shape?: ShapeTypes;
|
|
34
35
|
opacity?: OpacityTypes;
|
|
35
36
|
layoutAsFlexbox?: boolean;
|
|
36
|
-
|
|
37
|
-
|
|
37
|
+
listVertically?: boolean;
|
|
38
|
+
listHorizontally?: boolean;
|
|
38
39
|
layoutAsGrid?: boolean;
|
|
39
|
-
columns?:
|
|
40
|
-
gap?:
|
|
41
|
-
margin?:
|
|
42
|
-
horizontalMargin?:
|
|
43
|
-
verticalMargin?:
|
|
44
|
-
marginTop?:
|
|
45
|
-
marginRight?:
|
|
46
|
-
marginBottom?:
|
|
47
|
-
marginLeft?:
|
|
48
|
-
padding?:
|
|
49
|
-
horizontalPadding?:
|
|
50
|
-
verticalPadding?:
|
|
51
|
-
paddingTop?:
|
|
52
|
-
paddingRight?:
|
|
53
|
-
paddingBottom?:
|
|
54
|
-
paddingLeft?:
|
|
40
|
+
columns?: number;
|
|
41
|
+
gap?: SpacingOrLength;
|
|
42
|
+
margin?: SpacingOrLength;
|
|
43
|
+
horizontalMargin?: SpacingOrLength;
|
|
44
|
+
verticalMargin?: SpacingOrLength;
|
|
45
|
+
marginTop?: SpacingOrLength;
|
|
46
|
+
marginRight?: SpacingOrLength;
|
|
47
|
+
marginBottom?: SpacingOrLength;
|
|
48
|
+
marginLeft?: SpacingOrLength;
|
|
49
|
+
padding?: SpacingOrLength;
|
|
50
|
+
horizontalPadding?: SpacingOrLength;
|
|
51
|
+
verticalPadding?: SpacingOrLength;
|
|
52
|
+
paddingTop?: SpacingOrLength;
|
|
53
|
+
paddingRight?: SpacingOrLength;
|
|
54
|
+
paddingBottom?: SpacingOrLength;
|
|
55
|
+
paddingLeft?: SpacingOrLength;
|
|
55
56
|
horizontallyCentreThis?: boolean;
|
|
56
57
|
horizontallyCenterThis?: boolean;
|
|
57
58
|
verticallyCentreItems?: boolean;
|
|
@@ -74,12 +75,11 @@ export interface CommonProps {
|
|
|
74
75
|
}
|
|
75
76
|
export interface CommonAndHTMLProps<T extends {}> extends CommonProps, Omit<HTMLProps<T>, "as" | "size" | "ref" | "shape"> {
|
|
76
77
|
}
|
|
77
|
-
export type FlexibleEventHandler<T, V =
|
|
78
|
+
export type FlexibleEventHandler<T, V = unknown> = ((event: T) => void) | ((value: V) => void);
|
|
78
79
|
export interface ElementProps<T extends {}> extends CommonProps, Omit<HTMLProps<T>, "as" | "ref" | "shape"> {
|
|
79
80
|
as?: ElementType;
|
|
80
81
|
className?: string;
|
|
81
82
|
ariaLabel?: string;
|
|
82
|
-
onChange?: FlexibleEventHandler<FormEvent<T>, any>;
|
|
83
83
|
}
|
|
84
84
|
export {};
|
|
85
85
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/components/Element/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/components/Element/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../src/components/Element/constants.ts"],"sourcesContent":["// REACT CORE ==========================================================================================================\nimport { ElementType, HTMLProps } from \"react\";\n\n// STYLES ==============================================================================================================\nimport { oklchColourDefinitions, type OklchColourName } from \"../../styles/colours\";\n\n// Basic colours without hue/chroma (not part of OKLCH definitions)\nexport const BasicColours = [ \"transparent\", \"black\", \"white\" ] as const;\ntype BasicColoursType = typeof BasicColours[number];\n\n// Combined list of all available colours\nexport const FictoanColours = [ ...Object.keys(oklchColourDefinitions), ...BasicColours ] as const;\n\ntype Luminance = \"dark\" | \"light\";\ntype ShadeLevel = 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90;\ntype OpacityLevel = 0 | 5 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90;\ntype CustomColours = \"hue\" | \"tint\" | \"shade\" | \"analogue\" | \"accent\";\n\n// prettier-ignore\nexport type EmphasisTypes = \"primary\" | \"secondary\" | \"tertiary\" | \"custom\";\nexport type SpacingTypes = \"none\" | \"nano\" | \"micro\" | \"tiny\" | \"small\" | \"medium\" | \"large\" | \"huge\";\n// A spacing prop accepts a scale token (preferred — emits a utility class) OR any CSS\n// length string (e.g. \"4px\", \"20vw\", \"calc(100% - 8px)\") which is applied via inline style.\n// The `& {}` keeps autocomplete suggesting the tokens while still allowing any string.\nexport type SpacingOrLength = SpacingTypes | (string & {});\nexport type ShadowTypes = \"none\" | \"mild\" | \"hard\" | \"soft\";\nexport type ShapeTypes = \"rounded\" | \"curved\";\nexport type OpacityTypes = \"0\" | \"5\" | \"10\" | \"20\" | \"30\" | \"40\" | \"50\" | \"60\" | \"70\" | \"80\" | \"90\";\nexport type WeightTypes = \"100\" | \"200\" | \"300\" | \"400\" | \"500\" | \"600\" | \"700\" | \"800\" | \"900\";\nexport type ButtonVariantTypes = \"success\" | \"warning\" | \"danger\";\n\nexport type ColourPropTypes =\n | `${OklchColourName}-${Luminance}${ShadeLevel}`\n | `${OklchColourName}-${Luminance}${ShadeLevel}-opacity${OpacityLevel}`\n | `${OklchColourName}-opacity${OpacityLevel}`\n | `${BasicColoursType}-opacity${OpacityLevel}`\n | OklchColourName\n | BasicColoursType\n | CustomColours\n | \"\";\n\nexport interface CommonProps {\n bgColor ? : ColourPropTypes;\n bgColour ? : ColourPropTypes;\n bgOpacity ? : OpacityTypes;\n textColor ? : ColourPropTypes;\n textColour ? : ColourPropTypes;\n borderColor ? : ColourPropTypes;\n borderColour ? : ColourPropTypes;\n borderOpacity ? : OpacityTypes;\n fillColor ? : ColourPropTypes;\n fillColour ? : ColourPropTypes;\n strokeColor ? : ColourPropTypes;\n strokeColour ? : ColourPropTypes;\n shadow ? : ShadowTypes;\n shape ? : ShapeTypes;\n opacity ? : OpacityTypes;\n // Flexbox -----------------------------------------------------------------\n layoutAsFlexbox ? : boolean;\n listVertically ? : boolean;\n listHorizontally ? : boolean;\n // Grid --------------------------------------------------------------------\n layoutAsGrid ? : boolean;\n columns ? : number;\n // Common ------------------------------------------------------------------\n gap ? : SpacingOrLength;\n // Margin ------------------------------------------------------------------\n margin ? : SpacingOrLength;\n horizontalMargin ? : SpacingOrLength;\n verticalMargin ? : SpacingOrLength;\n marginTop ? : SpacingOrLength;\n marginRight ? : SpacingOrLength;\n marginBottom ? : SpacingOrLength;\n marginLeft ? : SpacingOrLength;\n // Padding -----------------------------------------------------------------\n padding ? : SpacingOrLength;\n horizontalPadding ? : SpacingOrLength;\n verticalPadding ? : SpacingOrLength;\n paddingTop ? : SpacingOrLength;\n paddingRight ? : SpacingOrLength;\n paddingBottom ? : SpacingOrLength;\n paddingLeft ? : SpacingOrLength;\n horizontallyCentreThis ? : boolean;\n horizontallyCenterThis ? : boolean;\n verticallyCentreItems ? : boolean;\n verticallyCenterItems ? : boolean;\n pushItemsToEnds ? : boolean;\n isClickable ? : boolean;\n isFullWidth ? : boolean;\n isFullHeight ? : boolean;\n inheritFormSpacing ? : boolean;\n hideOnMobile ? : boolean;\n showOnlyOnMobile ? : boolean;\n hideOnTabletPortrait ? : boolean;\n showOnlyOnTabletPortrait ? : boolean;\n hideOnTabletLandscape ? : boolean;\n showOnlyOnTabletLandscape ? : boolean;\n hideOnDesktop ? : boolean;\n showOnlyOnDesktop ? : boolean;\n weight ? : WeightTypes;\n classNames ? : string[];\n}\n\nexport interface CommonAndHTMLProps<T extends {}>\n extends CommonProps, Omit<HTMLProps<T>, \"as\" | \"size\" | \"ref\" | \"shape\"> {}\n\n// Fictoan has two different types of event handlers, one for standard events and one for direct values\n// This generic event handler type is a union of the two\nexport type FlexibleEventHandler<T, V = unknown> =\n | ((event : T) => void)\n | ((value : V) => void);\n\nexport interface ElementProps<T extends {}> extends CommonProps, Omit<HTMLProps<T>, \"as\" | \"ref\" | \"shape\"> {\n as ? : ElementType;\n className ? : string;\n ariaLabel ? : string;\n}\n"],"names":["BasicColours","FictoanColours","oklchColourDefinitions"],"mappings":";AAOO,MAAMA,IAAe,CAAE,eAAe,SAAS,OAAQ,GAIjDC,IAAiB,CAAE,GAAG,OAAO,KAAKC,CAAsB,GAAG,GAAGF,CAAa;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/components/Form/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAOpE,OAAO,gBAAgB,CAAC;AAIxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AACnD,MAAM,MAAM,aAAa,GAAG,qBAAqB,GAAG,WAAW,GAAG;IAC9D,EAAe,CAAC,EAAG,MAAM,CAAC;IAC1B,IAAe,CAAC,EAAG,MAAM,CAAC;IAC1B,OAAe,CAAC,EAAG,OAAO,CAAC;IAC3B,cAAe,CAAC,EAAG,OAAO,CAAC;IAC3B,QAAe,CAAC,EAAG,OAAO,CAAC;IAC3B,QAAe,CAAC,EAAG,OAAO,CAAC;IAC3B,QAAe,CAAC,EAAG,CAAC,OAAO,EAAG,OAAO,KAAK,IAAI,CAAC;IAC/C,IAAe,CAAC,EAAG,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAC1D,QAAe,CAAC,EAAG,MAAM,CAAC;IAC1B,SAAe,CAAC,EAAG,MAAM,CAAC;IAC1B,UAAe,CAAC,EAAG,OAAO,CAAC;CAC9B,CAAC;AAKF,eAAO,MAAM,QAAQ;SAhBE,MAAM;WACN,MAAM;cACN,OAAO;qBACP,OAAO;eACP,OAAO;eACP,OAAO;eACP,CAAC,OAAO,EAAG,OAAO,KAAK,IAAI;WAC3B,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;eACtC,MAAM;gBACN,MAAM;iBACN,OAAO;
|
|
1
|
+
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/components/Form/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAOpE,OAAO,gBAAgB,CAAC;AAIxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AACnD,MAAM,MAAM,aAAa,GAAG,qBAAqB,GAAG,WAAW,GAAG;IAC9D,EAAe,CAAC,EAAG,MAAM,CAAC;IAC1B,IAAe,CAAC,EAAG,MAAM,CAAC;IAC1B,OAAe,CAAC,EAAG,OAAO,CAAC;IAC3B,cAAe,CAAC,EAAG,OAAO,CAAC;IAC3B,QAAe,CAAC,EAAG,OAAO,CAAC;IAC3B,QAAe,CAAC,EAAG,OAAO,CAAC;IAC3B,QAAe,CAAC,EAAG,CAAC,OAAO,EAAG,OAAO,KAAK,IAAI,CAAC;IAC/C,IAAe,CAAC,EAAG,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAC1D,QAAe,CAAC,EAAG,MAAM,CAAC;IAC1B,SAAe,CAAC,EAAG,MAAM,CAAC;IAC1B,UAAe,CAAC,EAAG,OAAO,CAAC;CAC9B,CAAC;AAKF,eAAO,MAAM,QAAQ;SAhBE,MAAM;WACN,MAAM;cACN,OAAO;qBACP,OAAO;eACP,OAAO;eACP,OAAO;eACP,CAAC,OAAO,EAAG,OAAO,KAAK,IAAI;WAC3B,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;eACtC,MAAM;gBACN,MAAM;iBACN,OAAO;0CA4E7B,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as B, jsx as d } from "react/jsx-runtime";
|
|
3
|
+
import p, { useMemo as R } from "react";
|
|
4
|
+
import { separateWrapperProps as $ } from "../../../utils/propSeparation.js";
|
|
5
|
+
/* empty css */
|
|
6
|
+
import { deriveAriaIds as A, FormItem as E } from "../FormItem/FormItem.js";
|
|
7
|
+
import { Element as n } from "../../Element/Element.js";
|
|
8
|
+
const F = p.forwardRef(
|
|
9
|
+
({
|
|
10
|
+
id: o,
|
|
11
|
+
name: m,
|
|
12
|
+
label: f,
|
|
13
|
+
hideLabel: l,
|
|
14
|
+
helpText: s,
|
|
15
|
+
errorText: r,
|
|
16
|
+
onChange: a,
|
|
17
|
+
checked: b,
|
|
18
|
+
defaultChecked: h,
|
|
19
|
+
disabled: k,
|
|
20
|
+
required: c,
|
|
21
|
+
size: i = "medium",
|
|
22
|
+
labelFirst: t,
|
|
23
|
+
...u
|
|
24
|
+
}, v) => {
|
|
25
|
+
const x = R(() => m || o, [m, o]), I = (w) => {
|
|
26
|
+
a == null || a(w.target.checked);
|
|
27
|
+
}, { wrapperProps: y, inputProps: N } = $(u), P = p.useId(), e = o || `checkbox-${P.replace(/:/g, "")}`, { describedBy: j } = A(e, s, r);
|
|
28
|
+
return /* @__PURE__ */ B(
|
|
29
|
+
E,
|
|
30
|
+
{
|
|
31
|
+
label: f,
|
|
32
|
+
hideLabel: l,
|
|
33
|
+
htmlFor: e,
|
|
34
|
+
helpText: s,
|
|
35
|
+
errorText: r,
|
|
36
|
+
required: c,
|
|
37
|
+
size: i,
|
|
38
|
+
labelFirst: t,
|
|
39
|
+
...y,
|
|
40
|
+
children: [
|
|
41
|
+
/* @__PURE__ */ d(
|
|
42
|
+
n,
|
|
43
|
+
{
|
|
44
|
+
as: "input",
|
|
45
|
+
type: "checkbox",
|
|
46
|
+
ref: v,
|
|
47
|
+
id: e,
|
|
48
|
+
name: x,
|
|
49
|
+
checked: b,
|
|
50
|
+
defaultChecked: h,
|
|
51
|
+
disabled: k,
|
|
52
|
+
required: c,
|
|
53
|
+
"aria-invalid": !!r || void 0,
|
|
54
|
+
"aria-required": c,
|
|
55
|
+
"aria-describedby": j,
|
|
56
|
+
onChange: I,
|
|
57
|
+
...N
|
|
58
|
+
}
|
|
59
|
+
),
|
|
60
|
+
/* @__PURE__ */ d(
|
|
61
|
+
n,
|
|
62
|
+
{
|
|
63
|
+
as: t ? "label" : "div",
|
|
64
|
+
htmlFor: t ? e : void 0,
|
|
65
|
+
"data-checkbox": !0,
|
|
66
|
+
className: `size-${i}`
|
|
67
|
+
}
|
|
68
|
+
)
|
|
69
|
+
]
|
|
70
|
+
}
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
);
|
|
74
|
+
F.displayName = "Checkbox";
|
|
75
|
+
export {
|
|
76
|
+
F as Checkbox
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=Checkbox.js.map
|