@xanui/ui 1.1.14 → 1.1.16
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/Accordion/index.js +18 -3
- package/Accordion/index.js.map +1 -1
- package/Accordion/index.mjs +15 -2
- package/Accordion/index.mjs.map +1 -1
- package/Alert/index.js +24 -5
- package/Alert/index.js.map +1 -1
- package/Alert/index.mjs +19 -2
- package/Alert/index.mjs.map +1 -1
- package/Avatar/index.js +13 -2
- package/Avatar/index.js.map +1 -1
- package/Avatar/index.mjs +11 -2
- package/Avatar/index.mjs.map +1 -1
- package/Badge/index.js +12 -2
- package/Badge/index.js.map +1 -1
- package/Badge/index.mjs +10 -2
- package/Badge/index.mjs.map +1 -1
- package/Box/index.js +12 -2
- package/Box/index.js.map +1 -1
- package/Box/index.mjs +10 -2
- package/Box/index.mjs.map +1 -1
- package/Button/index.js +17 -4
- package/Button/index.js.map +1 -1
- package/Button/index.mjs +13 -2
- package/Button/index.mjs.map +1 -1
- package/ButtonGroup/index.js +12 -2
- package/ButtonGroup/index.js.map +1 -1
- package/ButtonGroup/index.mjs +10 -2
- package/ButtonGroup/index.mjs.map +1 -1
- package/Calendar/index.js +35 -16
- package/Calendar/index.js.map +1 -1
- package/Calendar/index.mjs +19 -2
- package/Calendar/index.mjs.map +1 -1
- package/CalendarInput/index.js +23 -4
- package/CalendarInput/index.js.map +1 -1
- package/CalendarInput/index.mjs +19 -2
- package/CalendarInput/index.mjs.map +1 -1
- package/Checkbox/index.js +16 -2
- package/Checkbox/index.js.map +1 -1
- package/Checkbox/index.mjs +14 -2
- package/Checkbox/index.mjs.map +1 -1
- package/Chip/index.js +14 -3
- package/Chip/index.js.map +1 -1
- package/Chip/index.mjs +11 -2
- package/Chip/index.mjs.map +1 -1
- package/CircleProgress/index.js +13 -2
- package/CircleProgress/index.js.map +1 -1
- package/CircleProgress/index.mjs +11 -2
- package/CircleProgress/index.mjs.map +1 -1
- package/ClickOutside/index.js +13 -2
- package/ClickOutside/index.js.map +1 -1
- package/ClickOutside/index.mjs +11 -2
- package/ClickOutside/index.mjs.map +1 -1
- package/Collaps/index.js +12 -2
- package/Collaps/index.js.map +1 -1
- package/Collaps/index.mjs +10 -2
- package/Collaps/index.mjs.map +1 -1
- package/Container/index.js +12 -2
- package/Container/index.js.map +1 -1
- package/Container/index.mjs +10 -2
- package/Container/index.mjs.map +1 -1
- package/Datatable/FilterBox.js +22 -7
- package/Datatable/FilterBox.js.map +1 -1
- package/Datatable/FilterBox.mjs +15 -2
- package/Datatable/FilterBox.mjs.map +1 -1
- package/Datatable/Row.js +25 -7
- package/Datatable/Row.js.map +1 -1
- package/Datatable/Row.mjs +18 -2
- package/Datatable/Row.mjs.map +1 -1
- package/Datatable/SelectedBox.js +15 -4
- package/Datatable/SelectedBox.js.map +1 -1
- package/Datatable/SelectedBox.mjs +11 -2
- package/Datatable/SelectedBox.mjs.map +1 -1
- package/Datatable/Table.js +16 -4
- package/Datatable/Table.js.map +1 -1
- package/Datatable/Table.mjs +12 -2
- package/Datatable/Table.mjs.map +1 -1
- package/Datatable/TableHead.js +19 -5
- package/Datatable/TableHead.js.map +1 -1
- package/Datatable/TableHead.mjs +14 -2
- package/Datatable/TableHead.mjs.map +1 -1
- package/Datatable/index.js +20 -4
- package/Datatable/index.js.map +1 -1
- package/Datatable/index.mjs +16 -2
- package/Datatable/index.mjs.map +1 -1
- package/Divider/index.js +12 -2
- package/Divider/index.js.map +1 -1
- package/Divider/index.mjs +10 -2
- package/Divider/index.mjs.map +1 -1
- package/Drawer/index.js +16 -4
- package/Drawer/index.js.map +1 -1
- package/Drawer/index.mjs +12 -2
- package/Drawer/index.mjs.map +1 -1
- package/Form/index.js +13 -2
- package/Form/index.js.map +1 -1
- package/Form/index.mjs +11 -2
- package/Form/index.mjs.map +1 -1
- package/GridContainer/index.js +12 -2
- package/GridContainer/index.js.map +1 -1
- package/GridContainer/index.mjs +10 -2
- package/GridContainer/index.mjs.map +1 -1
- package/GridItem/index.js +12 -2
- package/GridItem/index.js.map +1 -1
- package/GridItem/index.mjs +10 -2
- package/GridItem/index.mjs.map +1 -1
- package/IconButton/index.js +22 -5
- package/IconButton/index.js.map +1 -1
- package/IconButton/index.mjs +19 -4
- package/IconButton/index.mjs.map +1 -1
- package/Image/index.js +13 -2
- package/Image/index.js.map +1 -1
- package/Image/index.mjs +11 -2
- package/Image/index.mjs.map +1 -1
- package/Input/index.js +16 -4
- package/Input/index.js.map +1 -1
- package/Input/index.mjs +13 -3
- package/Input/index.mjs.map +1 -1
- package/Label/index.js +12 -2
- package/Label/index.js.map +1 -1
- package/Label/index.mjs +10 -2
- package/Label/index.mjs.map +1 -1
- package/Layer/index.js +17 -4
- package/Layer/index.js.map +1 -1
- package/Layer/index.mjs +13 -2
- package/Layer/index.mjs.map +1 -1
- package/LineProgress/index.js +13 -2
- package/LineProgress/index.js.map +1 -1
- package/LineProgress/index.mjs +11 -2
- package/LineProgress/index.mjs.map +1 -1
- package/List/index.js +12 -2
- package/List/index.js.map +1 -1
- package/List/index.mjs +10 -2
- package/List/index.mjs.map +1 -1
- package/ListItem/index.js +14 -3
- package/ListItem/index.js.map +1 -1
- package/ListItem/index.mjs +11 -2
- package/ListItem/index.mjs.map +1 -1
- package/LoadingBox/index.js +14 -3
- package/LoadingBox/index.js.map +1 -1
- package/LoadingBox/index.mjs +11 -2
- package/LoadingBox/index.mjs.map +1 -1
- package/Menu/index.js +16 -3
- package/Menu/index.js.map +1 -1
- package/Menu/index.mjs +13 -2
- package/Menu/index.mjs.map +1 -1
- package/Modal/index.js +15 -3
- package/Modal/index.js.map +1 -1
- package/Modal/index.mjs +12 -2
- package/Modal/index.mjs.map +1 -1
- package/NoSSR/index.js +10 -2
- package/NoSSR/index.js.map +1 -1
- package/NoSSR/index.mjs +8 -2
- package/NoSSR/index.mjs.map +1 -1
- package/Option/index.js +13 -3
- package/Option/index.js.map +1 -1
- package/Option/index.mjs +10 -2
- package/Option/index.mjs.map +1 -1
- package/Paper/index.js +12 -2
- package/Paper/index.js.map +1 -1
- package/Paper/index.mjs +10 -2
- package/Paper/index.mjs.map +1 -1
- package/Portal/index.js +13 -2
- package/Portal/index.js.map +1 -1
- package/Portal/index.mjs +11 -2
- package/Portal/index.mjs.map +1 -1
- package/Radio/index.js +15 -3
- package/Radio/index.js.map +1 -1
- package/Radio/index.mjs +12 -2
- package/Radio/index.mjs.map +1 -1
- package/Scrollbar/index.js +13 -2
- package/Scrollbar/index.js.map +1 -1
- package/Scrollbar/index.mjs +11 -2
- package/Scrollbar/index.mjs.map +1 -1
- package/Select/index.js +22 -5
- package/Select/index.js.map +1 -1
- package/Select/index.mjs +17 -2
- package/Select/index.mjs.map +1 -1
- package/Stack/index.js +12 -2
- package/Stack/index.js.map +1 -1
- package/Stack/index.mjs +10 -2
- package/Stack/index.mjs.map +1 -1
- package/Switch/index.js +13 -2
- package/Switch/index.js.map +1 -1
- package/Switch/index.mjs +11 -2
- package/Switch/index.mjs.map +1 -1
- package/Tab/index.js +15 -3
- package/Tab/index.js.map +1 -1
- package/Tab/index.mjs +12 -2
- package/Tab/index.mjs.map +1 -1
- package/Table/index.js +14 -3
- package/Table/index.js.map +1 -1
- package/Table/index.mjs +11 -2
- package/Table/index.mjs.map +1 -1
- package/TableBody/index.js +12 -2
- package/TableBody/index.js.map +1 -1
- package/TableBody/index.mjs +10 -2
- package/TableBody/index.mjs.map +1 -1
- package/TableCell/index.js +12 -2
- package/TableCell/index.js.map +1 -1
- package/TableCell/index.mjs +10 -2
- package/TableCell/index.mjs.map +1 -1
- package/TableFooter/index.js +12 -2
- package/TableFooter/index.js.map +1 -1
- package/TableFooter/index.mjs +10 -2
- package/TableFooter/index.mjs.map +1 -1
- package/TableHead/index.js +12 -2
- package/TableHead/index.js.map +1 -1
- package/TableHead/index.mjs +10 -2
- package/TableHead/index.mjs.map +1 -1
- package/TablePagination/index.d.ts +8 -7
- package/TablePagination/index.js +23 -6
- package/TablePagination/index.js.map +1 -1
- package/TablePagination/index.mjs +17 -2
- package/TablePagination/index.mjs.map +1 -1
- package/TableRow/index.js +12 -2
- package/TableRow/index.js.map +1 -1
- package/TableRow/index.mjs +10 -2
- package/TableRow/index.mjs.map +1 -1
- package/Tabs/index.js +26 -13
- package/Tabs/index.js.map +1 -1
- package/Tabs/index.mjs +24 -13
- package/Tabs/index.mjs.map +1 -1
- package/Text/index.js +12 -2
- package/Text/index.js.map +1 -1
- package/Text/index.mjs +10 -2
- package/Text/index.mjs.map +1 -1
- package/Toast/index.js +18 -4
- package/Toast/index.js.map +1 -1
- package/Toast/index.mjs +14 -2
- package/Toast/index.mjs.map +1 -1
- package/Tooltip/index.js +14 -3
- package/Tooltip/index.js.map +1 -1
- package/Tooltip/index.mjs +11 -2
- package/Tooltip/index.mjs.map +1 -1
- package/ViewBox/index.js +14 -3
- package/ViewBox/index.js.map +1 -1
- package/ViewBox/index.mjs +11 -2
- package/ViewBox/index.mjs.map +1 -1
- package/index.js +116 -1
- package/index.js.map +1 -1
- package/index.mjs +56 -1
- package/index.mjs.map +1 -1
- package/package.json +3 -12
- package/readme.md +104 -104
- package/useAlert/index.js +19 -5
- package/useAlert/index.js.map +1 -1
- package/useAlert/index.mjs +14 -2
- package/useAlert/index.mjs.map +1 -1
- package/useBlurCss/index.js +10 -2
- package/useBlurCss/index.js.map +1 -1
- package/useBlurCss/index.mjs +8 -2
- package/useBlurCss/index.mjs.map +1 -1
- package/useCorner/index.js +7 -2
- package/useCorner/index.js.map +1 -1
- package/useCorner/index.mjs +4 -1
- package/useCorner/index.mjs.map +1 -1
- package/useLayer/index.js +14 -3
- package/useLayer/index.js.map +1 -1
- package/useLayer/index.mjs +11 -2
- package/useLayer/index.mjs.map +1 -1
- package/useModal/index.js +14 -3
- package/useModal/index.js.map +1 -1
- package/useModal/index.mjs +11 -2
- package/useModal/index.mjs.map +1 -1
package/Portal/index.mjs
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { useMemo, useEffect } from 'react';
|
|
4
|
+
import ReactDOM from 'react-dom';
|
|
5
|
+
import { useTheme, ThemeProvider } from '@xanui/core';
|
|
6
|
+
|
|
7
|
+
const Portal = ({ children, appendTo, container }) => {
|
|
2
8
|
const theme = useTheme();
|
|
3
9
|
appendTo = appendTo || document.body;
|
|
4
10
|
const c = useMemo(() => {
|
|
@@ -13,4 +19,7 @@ import {jsx}from'react/jsx-runtime';import {useMemo,useEffect}from'react';import
|
|
|
13
19
|
};
|
|
14
20
|
}, []);
|
|
15
21
|
return ReactDOM.createPortal(jsx(ThemeProvider, { theme: theme.name, children: children }), c);
|
|
16
|
-
};
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export { Portal as default };
|
|
25
|
+
//# sourceMappingURL=index.mjs.map
|
package/Portal/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/Portal/index.tsx"],"sourcesContent":["\nimport React, { useEffect, useMemo } from 'react'\nimport ReactDOM from 'react-dom';\nimport { useTheme, ThemeProvider } from '@xanui/core';\nexport type PortalProps = {\n children?: React.ReactNode;\n appendTo?: HTMLElement;\n container?: HTMLElement;\n}\n\nconst Portal = ({ children, appendTo, container }: PortalProps) => {\n const theme = useTheme()\n appendTo = appendTo || document.body\n\n const c = useMemo(() => {\n let _con: HTMLElement = container || document.createElement(\"div\");\n appendTo.appendChild(_con);\n _con.className = \"xui-portal\"\n return _con\n }, [])\n\n useEffect(() => {\n return () => {\n (appendTo as any).removeChild(c);\n }\n }, [])\n\n return ReactDOM.createPortal(\n <ThemeProvider theme={theme.name}>\n {children}\n </ThemeProvider>,\n c,\n );\n}\n\nexport default Portal"],"names":[
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/Portal/index.tsx"],"sourcesContent":["\"use client\";\r\nimport React, { useEffect, useMemo } from 'react'\r\nimport ReactDOM from 'react-dom';\r\nimport { useTheme, ThemeProvider } from '@xanui/core';\r\nexport type PortalProps = {\r\n children?: React.ReactNode;\r\n appendTo?: HTMLElement;\r\n container?: HTMLElement;\r\n}\r\n\r\nconst Portal = ({ children, appendTo, container }: PortalProps) => {\r\n const theme = useTheme()\r\n appendTo = appendTo || document.body\r\n\r\n const c = useMemo(() => {\r\n let _con: HTMLElement = container || document.createElement(\"div\");\r\n appendTo.appendChild(_con);\r\n _con.className = \"xui-portal\"\r\n return _con\r\n }, [])\r\n\r\n useEffect(() => {\r\n return () => {\r\n (appendTo as any).removeChild(c);\r\n }\r\n }, [])\r\n\r\n return ReactDOM.createPortal(\r\n <ThemeProvider theme={theme.name}>\r\n {children}\r\n </ThemeProvider>,\r\n c,\r\n );\r\n}\r\n\r\nexport default Portal"],"names":[],"mappings":";;;;;;AAUA;AACI;AACA;AAEA;;AAEI;AACA;AACA;;;AAIA;AACK;AACL;;AAGJ;AAMJ;;"}
|
package/Radio/index.js
CHANGED
|
@@ -1,4 +1,16 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var React = require('react');
|
|
5
|
+
var core = require('@xanui/core');
|
|
6
|
+
var CheckIcon = require('@xanui/icons/RadioButtonChecked');
|
|
7
|
+
var UnCheckIcon = require('@xanui/icons/RadioButtonUnchecked');
|
|
8
|
+
var index = require('../Checkbox/index.js');
|
|
9
|
+
|
|
10
|
+
const Radio = React.forwardRef((props, ref) => {
|
|
2
11
|
let [rest] = core.useInterface("Radio", props, {});
|
|
3
|
-
return jsxRuntime.jsx(index
|
|
4
|
-
});
|
|
12
|
+
return jsxRuntime.jsx(index, Object.assign({ checkIcon: jsxRuntime.jsx(CheckIcon, {}), uncheckIcon: jsxRuntime.jsx(UnCheckIcon, {}) }, rest, { type: "radio", ref: ref, classNames: ['radio', ...((rest === null || rest === void 0 ? void 0 : rest.classNames) || [])] }));
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
module.exports = Radio;
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
package/Radio/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/Radio/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { useInterface } from '@xanui/core';\nimport CheckIcon from '@xanui/icons/RadioButtonChecked'\nimport UnCheckIcon from '@xanui/icons/RadioButtonUnchecked'\nimport Checkbox, { CheckboxProps } from '../Checkbox';\n\nexport type RadioProps = CheckboxProps\nconst Radio = React.forwardRef((props: RadioProps, ref?: React.Ref<any>) => {\n let [rest] = useInterface<any>(\"Radio\", props, {})\n return <Checkbox\n checkIcon={<CheckIcon />}\n uncheckIcon={<UnCheckIcon />}\n {...rest}\n type=\"radio\"\n ref={ref}\n classNames={['radio', ...(rest?.classNames || [])]}\n />\n})\n\nexport default Radio\n"],"names":["useInterface","_jsx","Checkbox"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/Radio/index.tsx"],"sourcesContent":["\r\nimport React from 'react';\r\nimport { useInterface } from '@xanui/core';\r\nimport CheckIcon from '@xanui/icons/RadioButtonChecked'\r\nimport UnCheckIcon from '@xanui/icons/RadioButtonUnchecked'\r\nimport Checkbox, { CheckboxProps } from '../Checkbox';\r\n\r\nexport type RadioProps = CheckboxProps\r\nconst Radio = React.forwardRef((props: RadioProps, ref?: React.Ref<any>) => {\r\n let [rest] = useInterface<any>(\"Radio\", props, {})\r\n return <Checkbox\r\n checkIcon={<CheckIcon />}\r\n uncheckIcon={<UnCheckIcon />}\r\n {...rest}\r\n type=\"radio\"\r\n ref={ref}\r\n classNames={['radio', ...(rest?.classNames || [])]}\r\n />\r\n})\r\n\r\nexport default Radio\r\n"],"names":["useInterface","_jsx","Checkbox"],"mappings":";;;;;;;;;AAQA,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,KAAiB,EAAE,GAAoB,KAAI;AACvE,IAAA,IAAI,CAAC,IAAI,CAAC,GAAGA,iBAAY,CAAM,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC;IAClD,OAAOC,cAAA,CAACC,KAAQ,EAAA,MAAA,CAAA,MAAA,CAAA,EACZ,SAAS,EAAED,cAAA,CAAC,SAAS,KAAG,EACxB,WAAW,EAAEA,cAAA,CAAC,WAAW,KAAG,EAAA,EACxB,IAAI,IACR,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,CAAC,OAAO,EAAE,IAAI,CAAA,IAAI,aAAJ,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJ,IAAI,CAAE,UAAU,KAAI,EAAE,CAAC,CAAC,EAAA,CAAA,CACpD;AACN,CAAC;;;;"}
|
package/Radio/index.mjs
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
|
-
import {jsx}from'react/jsx-runtime';
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { useInterface } from '@xanui/core';
|
|
4
|
+
import CheckIcon from '@xanui/icons/RadioButtonChecked';
|
|
5
|
+
import UnCheckIcon from '@xanui/icons/RadioButtonUnchecked';
|
|
6
|
+
import Checkbox from '../Checkbox/index.mjs';
|
|
7
|
+
|
|
8
|
+
const Radio = React.forwardRef((props, ref) => {
|
|
2
9
|
let [rest] = useInterface("Radio", props, {});
|
|
3
10
|
return jsx(Checkbox, Object.assign({ checkIcon: jsx(CheckIcon, {}), uncheckIcon: jsx(UnCheckIcon, {}) }, rest, { type: "radio", ref: ref, classNames: ['radio', ...((rest === null || rest === void 0 ? void 0 : rest.classNames) || [])] }));
|
|
4
|
-
});
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
export { Radio as default };
|
|
14
|
+
//# sourceMappingURL=index.mjs.map
|
package/Radio/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/Radio/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { useInterface } from '@xanui/core';\nimport CheckIcon from '@xanui/icons/RadioButtonChecked'\nimport UnCheckIcon from '@xanui/icons/RadioButtonUnchecked'\nimport Checkbox, { CheckboxProps } from '../Checkbox';\n\nexport type RadioProps = CheckboxProps\nconst Radio = React.forwardRef((props: RadioProps, ref?: React.Ref<any>) => {\n let [rest] = useInterface<any>(\"Radio\", props, {})\n return <Checkbox\n checkIcon={<CheckIcon />}\n uncheckIcon={<UnCheckIcon />}\n {...rest}\n type=\"radio\"\n ref={ref}\n classNames={['radio', ...(rest?.classNames || [])]}\n />\n})\n\nexport default Radio\n"],"names":["_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/Radio/index.tsx"],"sourcesContent":["\r\nimport React from 'react';\r\nimport { useInterface } from '@xanui/core';\r\nimport CheckIcon from '@xanui/icons/RadioButtonChecked'\r\nimport UnCheckIcon from '@xanui/icons/RadioButtonUnchecked'\r\nimport Checkbox, { CheckboxProps } from '../Checkbox';\r\n\r\nexport type RadioProps = CheckboxProps\r\nconst Radio = React.forwardRef((props: RadioProps, ref?: React.Ref<any>) => {\r\n let [rest] = useInterface<any>(\"Radio\", props, {})\r\n return <Checkbox\r\n checkIcon={<CheckIcon />}\r\n uncheckIcon={<UnCheckIcon />}\r\n {...rest}\r\n type=\"radio\"\r\n ref={ref}\r\n classNames={['radio', ...(rest?.classNames || [])]}\r\n />\r\n})\r\n\r\nexport default Radio\r\n"],"names":["_jsx"],"mappings":";;;;;;;AAQA,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,KAAiB,EAAE,GAAoB,KAAI;AACvE,IAAA,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,CAAM,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC;IAClD,OAAOA,GAAA,CAAC,QAAQ,EAAA,MAAA,CAAA,MAAA,CAAA,EACZ,SAAS,EAAEA,GAAA,CAAC,SAAS,KAAG,EACxB,WAAW,EAAEA,GAAA,CAAC,WAAW,KAAG,EAAA,EACxB,IAAI,IACR,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,CAAC,OAAO,EAAE,IAAI,CAAA,IAAI,aAAJ,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJ,IAAI,CAAE,UAAU,KAAI,EAAE,CAAC,CAAC,EAAA,CAAA,CACpD;AACN,CAAC;;;;"}
|
package/Scrollbar/index.js
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var tslib = require('tslib');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var core = require('@xanui/core');
|
|
7
|
+
var React = require('react');
|
|
8
|
+
|
|
9
|
+
const Scrollbar = React.forwardRef((_a, ref) => {
|
|
2
10
|
var { children } = _a, rest = tslib.__rest(_a, ["children"]);
|
|
3
11
|
let [_b] = core.useInterface("Scrollbar", rest, {}), { onScroll, onScrollEnd } = _b, props = tslib.__rest(_b, ["onScroll", "onScrollEnd"]);
|
|
4
12
|
const innerRef = React.useRef(null);
|
|
@@ -45,4 +53,7 @@
|
|
|
45
53
|
width: "100%",
|
|
46
54
|
overflow: "auto",
|
|
47
55
|
}, children: children })));
|
|
48
|
-
});
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
module.exports = Scrollbar;
|
|
59
|
+
//# sourceMappingURL=index.js.map
|
package/Scrollbar/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/Scrollbar/index.tsx"],"sourcesContent":["\nimport { Tag, TagComponentType, TagProps, useInterface } from '@xanui/core';\nimport React, { ReactNode, UIEvent, useImperativeHandle, useRef } from 'react'\n\nexport type ScrollbarProps<T extends TagComponentType = \"div\"> = TagProps<T> & {\n children?: ReactNode;\n onScrollEnd?: (e: UIEvent<HTMLDivElement>) => void;\n}\n\nexport type ScrollbarHandle = {\n scrollTo: (pos: number) => void;\n scrollToBottom: () => void;\n scrollToTop: () => void;\n};\n\nconst Scrollbar = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...rest }: ScrollbarProps<T>, ref: React.Ref<ScrollbarHandle>) => {\n let [{ onScroll, onScrollEnd, ...props }] = useInterface<any>(\"Scrollbar\", rest, {})\n const innerRef = useRef<HTMLDivElement>(null);\n\n useImperativeHandle(ref, () => ({\n scrollTo(pos: number) {\n innerRef.current?.scrollTo({\n top: pos,\n behavior: \"smooth\"\n });\n },\n scrollToBottom() {\n if (!innerRef.current) return;\n const ele = innerRef.current;\n ele.scrollTo({\n top: ele.scrollHeight,\n behavior: \"smooth\"\n });\n },\n scrollToTop() {\n innerRef.current?.scrollTo({\n top: 0,\n behavior: \"smooth\"\n });\n }\n }));\n\n if (onScroll || onScrollEnd) {\n props.onScroll = (e: UIEvent<HTMLDivElement>) => {\n if (onScrollEnd) {\n const ele: any = e.target\n const scrollTop = ele.scrollTop\n const scrollHeight = ele.scrollHeight\n const clientHeight = ele.clientHeight\n const isScrollDown = scrollHeight - scrollTop <= clientHeight + 1\n isScrollDown && onScrollEnd(e)\n }\n onScroll && onScroll(e)\n }\n }\n\n return (\n <Tag\n {...props}\n ref={innerRef}\n baseClass='scrollbar'\n sxr={{\n height: \"100%\",\n width: \"100%\",\n overflow: \"auto\",\n }}\n >\n {children}\n </Tag>\n )\n})\n\nexport default Scrollbar "],"names":[
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/Scrollbar/index.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { Tag, TagComponentType, TagProps, useInterface } from '@xanui/core';\r\nimport React, { ReactNode, UIEvent, useImperativeHandle, useRef } from 'react'\r\n\r\nexport type ScrollbarProps<T extends TagComponentType = \"div\"> = TagProps<T> & {\r\n children?: ReactNode;\r\n onScrollEnd?: (e: UIEvent<HTMLDivElement>) => void;\r\n}\r\n\r\nexport type ScrollbarHandle = {\r\n scrollTo: (pos: number) => void;\r\n scrollToBottom: () => void;\r\n scrollToTop: () => void;\r\n};\r\n\r\nconst Scrollbar = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...rest }: ScrollbarProps<T>, ref: React.Ref<ScrollbarHandle>) => {\r\n let [{ onScroll, onScrollEnd, ...props }] = useInterface<any>(\"Scrollbar\", rest, {})\r\n const innerRef = useRef<HTMLDivElement>(null);\r\n\r\n useImperativeHandle(ref, () => ({\r\n scrollTo(pos: number) {\r\n innerRef.current?.scrollTo({\r\n top: pos,\r\n behavior: \"smooth\"\r\n });\r\n },\r\n scrollToBottom() {\r\n if (!innerRef.current) return;\r\n const ele = innerRef.current;\r\n ele.scrollTo({\r\n top: ele.scrollHeight,\r\n behavior: \"smooth\"\r\n });\r\n },\r\n scrollToTop() {\r\n innerRef.current?.scrollTo({\r\n top: 0,\r\n behavior: \"smooth\"\r\n });\r\n }\r\n }));\r\n\r\n if (onScroll || onScrollEnd) {\r\n props.onScroll = (e: UIEvent<HTMLDivElement>) => {\r\n if (onScrollEnd) {\r\n const ele: any = e.target\r\n const scrollTop = ele.scrollTop\r\n const scrollHeight = ele.scrollHeight\r\n const clientHeight = ele.clientHeight\r\n const isScrollDown = scrollHeight - scrollTop <= clientHeight + 1\r\n isScrollDown && onScrollEnd(e)\r\n }\r\n onScroll && onScroll(e)\r\n }\r\n }\r\n\r\n return (\r\n <Tag\r\n {...props}\r\n ref={innerRef}\r\n baseClass='scrollbar'\r\n sxr={{\r\n height: \"100%\",\r\n width: \"100%\",\r\n overflow: \"auto\",\r\n }}\r\n >\r\n {children}\r\n </Tag>\r\n )\r\n})\r\n\r\nexport default Scrollbar "],"names":[],"mappings":";;;;;;;;AAgBA;AAAwE;;AAEpE;AAEA;AACI;;AACI;AACI;AACA;AACH;;;;;AAID;;;AAGI;AACH;;;;AAGD;AACI;AACA;AACH;;AAER;AAED;AACI;;AAEQ;AACA;AACA;AACA;;AAEA;;AAEJ;AACJ;;AAGJ;AAMY;AACA;AACA;;AAMhB;;"}
|
package/Scrollbar/index.mjs
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { __rest } from 'tslib';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
import { useInterface, Tag } from '@xanui/core';
|
|
5
|
+
import React, { useRef, useImperativeHandle } from 'react';
|
|
6
|
+
|
|
7
|
+
const Scrollbar = React.forwardRef((_a, ref) => {
|
|
2
8
|
var { children } = _a, rest = __rest(_a, ["children"]);
|
|
3
9
|
let [_b] = useInterface("Scrollbar", rest, {}), { onScroll, onScrollEnd } = _b, props = __rest(_b, ["onScroll", "onScrollEnd"]);
|
|
4
10
|
const innerRef = useRef(null);
|
|
@@ -45,4 +51,7 @@ import {__rest}from'tslib';import {jsx}from'react/jsx-runtime';import {useInterf
|
|
|
45
51
|
width: "100%",
|
|
46
52
|
overflow: "auto",
|
|
47
53
|
}, children: children })));
|
|
48
|
-
});
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
export { Scrollbar as default };
|
|
57
|
+
//# sourceMappingURL=index.mjs.map
|
package/Scrollbar/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/Scrollbar/index.tsx"],"sourcesContent":["\nimport { Tag, TagComponentType, TagProps, useInterface } from '@xanui/core';\nimport React, { ReactNode, UIEvent, useImperativeHandle, useRef } from 'react'\n\nexport type ScrollbarProps<T extends TagComponentType = \"div\"> = TagProps<T> & {\n children?: ReactNode;\n onScrollEnd?: (e: UIEvent<HTMLDivElement>) => void;\n}\n\nexport type ScrollbarHandle = {\n scrollTo: (pos: number) => void;\n scrollToBottom: () => void;\n scrollToTop: () => void;\n};\n\nconst Scrollbar = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...rest }: ScrollbarProps<T>, ref: React.Ref<ScrollbarHandle>) => {\n let [{ onScroll, onScrollEnd, ...props }] = useInterface<any>(\"Scrollbar\", rest, {})\n const innerRef = useRef<HTMLDivElement>(null);\n\n useImperativeHandle(ref, () => ({\n scrollTo(pos: number) {\n innerRef.current?.scrollTo({\n top: pos,\n behavior: \"smooth\"\n });\n },\n scrollToBottom() {\n if (!innerRef.current) return;\n const ele = innerRef.current;\n ele.scrollTo({\n top: ele.scrollHeight,\n behavior: \"smooth\"\n });\n },\n scrollToTop() {\n innerRef.current?.scrollTo({\n top: 0,\n behavior: \"smooth\"\n });\n }\n }));\n\n if (onScroll || onScrollEnd) {\n props.onScroll = (e: UIEvent<HTMLDivElement>) => {\n if (onScrollEnd) {\n const ele: any = e.target\n const scrollTop = ele.scrollTop\n const scrollHeight = ele.scrollHeight\n const clientHeight = ele.clientHeight\n const isScrollDown = scrollHeight - scrollTop <= clientHeight + 1\n isScrollDown && onScrollEnd(e)\n }\n onScroll && onScroll(e)\n }\n }\n\n return (\n <Tag\n {...props}\n ref={innerRef}\n baseClass='scrollbar'\n sxr={{\n height: \"100%\",\n width: \"100%\",\n overflow: \"auto\",\n }}\n >\n {children}\n </Tag>\n )\n})\n\nexport default Scrollbar "],"names":[
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/Scrollbar/index.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { Tag, TagComponentType, TagProps, useInterface } from '@xanui/core';\r\nimport React, { ReactNode, UIEvent, useImperativeHandle, useRef } from 'react'\r\n\r\nexport type ScrollbarProps<T extends TagComponentType = \"div\"> = TagProps<T> & {\r\n children?: ReactNode;\r\n onScrollEnd?: (e: UIEvent<HTMLDivElement>) => void;\r\n}\r\n\r\nexport type ScrollbarHandle = {\r\n scrollTo: (pos: number) => void;\r\n scrollToBottom: () => void;\r\n scrollToTop: () => void;\r\n};\r\n\r\nconst Scrollbar = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...rest }: ScrollbarProps<T>, ref: React.Ref<ScrollbarHandle>) => {\r\n let [{ onScroll, onScrollEnd, ...props }] = useInterface<any>(\"Scrollbar\", rest, {})\r\n const innerRef = useRef<HTMLDivElement>(null);\r\n\r\n useImperativeHandle(ref, () => ({\r\n scrollTo(pos: number) {\r\n innerRef.current?.scrollTo({\r\n top: pos,\r\n behavior: \"smooth\"\r\n });\r\n },\r\n scrollToBottom() {\r\n if (!innerRef.current) return;\r\n const ele = innerRef.current;\r\n ele.scrollTo({\r\n top: ele.scrollHeight,\r\n behavior: \"smooth\"\r\n });\r\n },\r\n scrollToTop() {\r\n innerRef.current?.scrollTo({\r\n top: 0,\r\n behavior: \"smooth\"\r\n });\r\n }\r\n }));\r\n\r\n if (onScroll || onScrollEnd) {\r\n props.onScroll = (e: UIEvent<HTMLDivElement>) => {\r\n if (onScrollEnd) {\r\n const ele: any = e.target\r\n const scrollTop = ele.scrollTop\r\n const scrollHeight = ele.scrollHeight\r\n const clientHeight = ele.clientHeight\r\n const isScrollDown = scrollHeight - scrollTop <= clientHeight + 1\r\n isScrollDown && onScrollEnd(e)\r\n }\r\n onScroll && onScroll(e)\r\n }\r\n }\r\n\r\n return (\r\n <Tag\r\n {...props}\r\n ref={innerRef}\r\n baseClass='scrollbar'\r\n sxr={{\r\n height: \"100%\",\r\n width: \"100%\",\r\n overflow: \"auto\",\r\n }}\r\n >\r\n {children}\r\n </Tag>\r\n )\r\n})\r\n\r\nexport default Scrollbar "],"names":[],"mappings":";;;;;;AAgBA;AAAwE;;AAEpE;AAEA;AACI;;AACI;AACI;AACA;AACH;;;;;AAID;;;AAGI;AACH;;;;AAGD;AACI;AACA;AACH;;AAER;AAED;AACI;;AAEQ;AACA;AACA;AACA;;AAEA;;AAEJ;AACJ;;AAGJ;AAMY;AACA;AACA;;AAMhB;;"}
|
package/Select/index.js
CHANGED
|
@@ -1,4 +1,18 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var tslib = require('tslib');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var index = require('../Input/index.js');
|
|
8
|
+
var index$3 = require('../List/index.js');
|
|
9
|
+
var index$2 = require('../Menu/index.js');
|
|
10
|
+
var index$1 = require('../Stack/index.js');
|
|
11
|
+
var DownIcon = require('@xanui/icons/KeyboardArrowDown');
|
|
12
|
+
var UpIcon = require('@xanui/icons/KeyboardArrowUp');
|
|
13
|
+
var core = require('@xanui/core');
|
|
14
|
+
|
|
15
|
+
const Select = React.forwardRef((_a, ref) => {
|
|
2
16
|
var _b, _c, _d, _e;
|
|
3
17
|
var { onChange, value, children } = _a, props = tslib.__rest(_a, ["onChange", "value", "children"]);
|
|
4
18
|
let [{ slotProps, color, variant, placeholder }] = core.useInterface("Select", props, {});
|
|
@@ -27,9 +41,12 @@
|
|
|
27
41
|
};
|
|
28
42
|
}, [children, value]);
|
|
29
43
|
const toggleMenu = () => setTarget(target ? null : conRef.current);
|
|
30
|
-
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(index
|
|
44
|
+
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(index, Object.assign({ color: color, variant: variant === "soft" ? "fill" : variant, endIcon: jsxRuntime.jsxs(index$1, { flexDirection: "row", component: "span", children: [" ", (target ? jsxRuntime.jsx(UpIcon, {}) : jsxRuntime.jsx(DownIcon, {}))] }), readOnly: true, value: typeof selectedProps.children === 'string' ? selectedProps.children : value, cursor: "pointer", userSelect: "none", startIcon: selectedProps.startIcon, focused: !!target, placeholder: placeholder }, slotProps === null || slotProps === void 0 ? void 0 : slotProps.input, { slotProps: {
|
|
31
45
|
container: Object.assign(Object.assign({ cursor: "pointer", userSelect: "none" }, (((_c = (_b = slotProps === null || slotProps === void 0 ? void 0 : slotProps.input) === null || _b === void 0 ? void 0 : _b.slotProps) === null || _c === void 0 ? void 0 : _c.container) || {})), { onClick: toggleMenu })
|
|
32
|
-
}, containerRef: conRef, ref: ref })), jsxRuntime.jsx(index$2
|
|
46
|
+
}, containerRef: conRef, ref: ref })), jsxRuntime.jsx(index$2, Object.assign({ target: target, placement: "bottom" }, slotProps === null || slotProps === void 0 ? void 0 : slotProps.menu, { slotProps: {
|
|
33
47
|
content: Object.assign({ mt: .5, width: conRef && ((_d = conRef === null || conRef === void 0 ? void 0 : conRef.current) === null || _d === void 0 ? void 0 : _d.clientWidth) }, (_e = slotProps === null || slotProps === void 0 ? void 0 : slotProps.menu) === null || _e === void 0 ? void 0 : _e.content)
|
|
34
|
-
}, onClickOutside: toggleMenu, children: jsxRuntime.jsx(index$3
|
|
35
|
-
});
|
|
48
|
+
}, onClickOutside: toggleMenu, children: jsxRuntime.jsx(index$3, Object.assign({}, slotProps === null || slotProps === void 0 ? void 0 : slotProps.list, { color: color, variant: variant, children: childs })) }))] }));
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
module.exports = Select;
|
|
52
|
+
//# sourceMappingURL=index.js.map
|
package/Select/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/Select/index.tsx"],"sourcesContent":["\nimport React, { ReactElement, useMemo, cloneElement, useState, Children, useRef } from 'react'\nimport Input, { InputProps } from '../Input'\nimport List, { ListProps } from '../List'\nimport Menu, { MenuProps } from '../Menu'\nimport Stack from '../Stack'\nimport { OptionProps } from '../Option'\nimport DownIcon from '@xanui/icons/KeyboardArrowDown';\nimport UpIcon from '@xanui/icons/KeyboardArrowUp';\nimport { UseColorTemplateColor, UseColorTemplateType, useInterface, useBreakpointPropsType } from '@xanui/core'\n\n\nexport type SelectProps = {\n value?: string | number;\n onChange?: (value: string | number) => void;\n children: ReactElement<OptionProps> | ReactElement<OptionProps>[];\n placeholder?: useBreakpointPropsType<string>;\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<UseColorTemplateType>;\n slotProps?: {\n menu?: Omit<MenuProps, 'children' | 'target'>;\n input?: Omit<InputProps, \"onChange\" | \"value\">;\n list?: Omit<ListProps, \"children\">\n }\n}\n\nconst Select = React.forwardRef(({ onChange, value, children, ...props }: SelectProps, ref: React.Ref<any>) => {\n let [{ slotProps, color, variant, placeholder }] = useInterface<any>(\"Select\", props, {})\n color ??= \"brand\"\n variant ??= \"fill\"\n const [target, setTarget] = useState<any>()\n const conRef = useRef(null)\n const { childs, selectedProps } = useMemo(() => {\n let sProps: any = {}\n const c = Children.map(children, (child: any) => {\n let selected = child.props.value === value\n if (selected) sProps = child.props\n return cloneElement(child, {\n value: undefined,\n selected,\n onClick: () => {\n setTarget(null)\n onChange && onChange(child.props.value)\n }\n })\n })\n return {\n childs: c,\n selectedProps: sProps as OptionProps\n }\n }, [children, value])\n\n const toggleMenu = () => setTarget(target ? null : conRef.current)\n\n return (\n <>\n <Input\n color={color}\n variant={variant === \"soft\" ? \"fill\" : variant}\n endIcon={<Stack flexDirection=\"row\" component=\"span\" > {(target ? <UpIcon /> : <DownIcon />)}</Stack>}\n readOnly\n value={typeof selectedProps.children === 'string' ? selectedProps.children : value}\n cursor=\"pointer\"\n userSelect=\"none\"\n startIcon={selectedProps.startIcon}\n focused={!!target}\n placeholder={placeholder}\n {...slotProps?.input}\n slotProps={{\n container: {\n cursor: \"pointer\",\n userSelect: \"none\",\n ...(slotProps?.input?.slotProps?.container || {}),\n onClick: toggleMenu,\n }\n }}\n containerRef={conRef}\n ref={ref}\n />\n <Menu\n target={target}\n placement=\"bottom\"\n {...slotProps?.menu}\n slotProps={{\n content: {\n mt: .5,\n width: conRef && (conRef?.current as any)?.clientWidth,\n ...slotProps?.menu?.content\n }\n }}\n onClickOutside={toggleMenu}\n >\n <List\n {...slotProps?.list}\n color={color}\n variant={variant}\n >\n {childs}\n </List>\n </Menu>\n </>\n )\n})\n\nexport default Select"],"names":[
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/Select/index.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React, { ReactElement, useMemo, cloneElement, useState, Children, useRef } from 'react'\r\nimport Input, { InputProps } from '../Input'\r\nimport List, { ListProps } from '../List'\r\nimport Menu, { MenuProps } from '../Menu'\r\nimport Stack from '../Stack'\r\nimport { OptionProps } from '../Option'\r\nimport DownIcon from '@xanui/icons/KeyboardArrowDown';\r\nimport UpIcon from '@xanui/icons/KeyboardArrowUp';\r\nimport { UseColorTemplateColor, UseColorTemplateType, useInterface, useBreakpointPropsType } from '@xanui/core'\r\n\r\n\r\nexport type SelectProps = {\r\n value?: string | number;\r\n onChange?: (value: string | number) => void;\r\n children: ReactElement<OptionProps> | ReactElement<OptionProps>[];\r\n placeholder?: useBreakpointPropsType<string>;\r\n color?: useBreakpointPropsType<UseColorTemplateColor>;\r\n variant?: useBreakpointPropsType<UseColorTemplateType>;\r\n slotProps?: {\r\n menu?: Omit<MenuProps, 'children' | 'target'>;\r\n input?: Omit<InputProps, \"onChange\" | \"value\">;\r\n list?: Omit<ListProps, \"children\">\r\n }\r\n}\r\n\r\nconst Select = React.forwardRef(({ onChange, value, children, ...props }: SelectProps, ref: React.Ref<any>) => {\r\n let [{ slotProps, color, variant, placeholder }] = useInterface<any>(\"Select\", props, {})\r\n color ??= \"brand\"\r\n variant ??= \"fill\"\r\n const [target, setTarget] = useState<any>()\r\n const conRef = useRef(null)\r\n const { childs, selectedProps } = useMemo(() => {\r\n let sProps: any = {}\r\n const c = Children.map(children, (child: any) => {\r\n let selected = child.props.value === value\r\n if (selected) sProps = child.props\r\n return cloneElement(child, {\r\n value: undefined,\r\n selected,\r\n onClick: () => {\r\n setTarget(null)\r\n onChange && onChange(child.props.value)\r\n }\r\n })\r\n })\r\n return {\r\n childs: c,\r\n selectedProps: sProps as OptionProps\r\n }\r\n }, [children, value])\r\n\r\n const toggleMenu = () => setTarget(target ? null : conRef.current)\r\n\r\n return (\r\n <>\r\n <Input\r\n color={color}\r\n variant={variant === \"soft\" ? \"fill\" : variant}\r\n endIcon={<Stack flexDirection=\"row\" component=\"span\" > {(target ? <UpIcon /> : <DownIcon />)}</Stack>}\r\n readOnly\r\n value={typeof selectedProps.children === 'string' ? selectedProps.children : value}\r\n cursor=\"pointer\"\r\n userSelect=\"none\"\r\n startIcon={selectedProps.startIcon}\r\n focused={!!target}\r\n placeholder={placeholder}\r\n {...slotProps?.input}\r\n slotProps={{\r\n container: {\r\n cursor: \"pointer\",\r\n userSelect: \"none\",\r\n ...(slotProps?.input?.slotProps?.container || {}),\r\n onClick: toggleMenu,\r\n }\r\n }}\r\n containerRef={conRef}\r\n ref={ref}\r\n />\r\n <Menu\r\n target={target}\r\n placement=\"bottom\"\r\n {...slotProps?.menu}\r\n slotProps={{\r\n content: {\r\n mt: .5,\r\n width: conRef && (conRef?.current as any)?.clientWidth,\r\n ...slotProps?.menu?.content\r\n }\r\n }}\r\n onClickOutside={toggleMenu}\r\n >\r\n <List\r\n {...slotProps?.list}\r\n color={color}\r\n variant={variant}\r\n >\r\n {childs}\r\n </List>\r\n </Menu>\r\n </>\r\n )\r\n})\r\n\r\nexport default Select"],"names":[],"mappings":";;;;;;;;;;;;;;AA2BA;;;;;;;AAKI;;;;;AAKQ;AAAc;;AAEV;;;;;;AAMH;AACL;;AAEI;AACA;;AAER;AAEA;;AAiBgB;AAMH;AASG;AAKH;AAajB;;"}
|
package/Select/index.mjs
CHANGED
|
@@ -1,4 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { __rest } from 'tslib';
|
|
3
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
4
|
+
import React, { useState, useRef, useMemo, Children, cloneElement } from 'react';
|
|
5
|
+
import Input from '../Input/index.mjs';
|
|
6
|
+
import List from '../List/index.mjs';
|
|
7
|
+
import Menu from '../Menu/index.mjs';
|
|
8
|
+
import Stack from '../Stack/index.mjs';
|
|
9
|
+
import DownIcon from '@xanui/icons/KeyboardArrowDown';
|
|
10
|
+
import UpIcon from '@xanui/icons/KeyboardArrowUp';
|
|
11
|
+
import { useInterface } from '@xanui/core';
|
|
12
|
+
|
|
13
|
+
const Select = React.forwardRef((_a, ref) => {
|
|
2
14
|
var _b, _c, _d, _e;
|
|
3
15
|
var { onChange, value, children } = _a, props = __rest(_a, ["onChange", "value", "children"]);
|
|
4
16
|
let [{ slotProps, color, variant, placeholder }] = useInterface("Select", props, {});
|
|
@@ -32,4 +44,7 @@ import {__rest}from'tslib';import {jsxs,Fragment,jsx}from'react/jsx-runtime';imp
|
|
|
32
44
|
}, containerRef: conRef, ref: ref })), jsx(Menu, Object.assign({ target: target, placement: "bottom" }, slotProps === null || slotProps === void 0 ? void 0 : slotProps.menu, { slotProps: {
|
|
33
45
|
content: Object.assign({ mt: .5, width: conRef && ((_d = conRef === null || conRef === void 0 ? void 0 : conRef.current) === null || _d === void 0 ? void 0 : _d.clientWidth) }, (_e = slotProps === null || slotProps === void 0 ? void 0 : slotProps.menu) === null || _e === void 0 ? void 0 : _e.content)
|
|
34
46
|
}, onClickOutside: toggleMenu, children: jsx(List, Object.assign({}, slotProps === null || slotProps === void 0 ? void 0 : slotProps.list, { color: color, variant: variant, children: childs })) }))] }));
|
|
35
|
-
});
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
export { Select as default };
|
|
50
|
+
//# sourceMappingURL=index.mjs.map
|
package/Select/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/Select/index.tsx"],"sourcesContent":["\nimport React, { ReactElement, useMemo, cloneElement, useState, Children, useRef } from 'react'\nimport Input, { InputProps } from '../Input'\nimport List, { ListProps } from '../List'\nimport Menu, { MenuProps } from '../Menu'\nimport Stack from '../Stack'\nimport { OptionProps } from '../Option'\nimport DownIcon from '@xanui/icons/KeyboardArrowDown';\nimport UpIcon from '@xanui/icons/KeyboardArrowUp';\nimport { UseColorTemplateColor, UseColorTemplateType, useInterface, useBreakpointPropsType } from '@xanui/core'\n\n\nexport type SelectProps = {\n value?: string | number;\n onChange?: (value: string | number) => void;\n children: ReactElement<OptionProps> | ReactElement<OptionProps>[];\n placeholder?: useBreakpointPropsType<string>;\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<UseColorTemplateType>;\n slotProps?: {\n menu?: Omit<MenuProps, 'children' | 'target'>;\n input?: Omit<InputProps, \"onChange\" | \"value\">;\n list?: Omit<ListProps, \"children\">\n }\n}\n\nconst Select = React.forwardRef(({ onChange, value, children, ...props }: SelectProps, ref: React.Ref<any>) => {\n let [{ slotProps, color, variant, placeholder }] = useInterface<any>(\"Select\", props, {})\n color ??= \"brand\"\n variant ??= \"fill\"\n const [target, setTarget] = useState<any>()\n const conRef = useRef(null)\n const { childs, selectedProps } = useMemo(() => {\n let sProps: any = {}\n const c = Children.map(children, (child: any) => {\n let selected = child.props.value === value\n if (selected) sProps = child.props\n return cloneElement(child, {\n value: undefined,\n selected,\n onClick: () => {\n setTarget(null)\n onChange && onChange(child.props.value)\n }\n })\n })\n return {\n childs: c,\n selectedProps: sProps as OptionProps\n }\n }, [children, value])\n\n const toggleMenu = () => setTarget(target ? null : conRef.current)\n\n return (\n <>\n <Input\n color={color}\n variant={variant === \"soft\" ? \"fill\" : variant}\n endIcon={<Stack flexDirection=\"row\" component=\"span\" > {(target ? <UpIcon /> : <DownIcon />)}</Stack>}\n readOnly\n value={typeof selectedProps.children === 'string' ? selectedProps.children : value}\n cursor=\"pointer\"\n userSelect=\"none\"\n startIcon={selectedProps.startIcon}\n focused={!!target}\n placeholder={placeholder}\n {...slotProps?.input}\n slotProps={{\n container: {\n cursor: \"pointer\",\n userSelect: \"none\",\n ...(slotProps?.input?.slotProps?.container || {}),\n onClick: toggleMenu,\n }\n }}\n containerRef={conRef}\n ref={ref}\n />\n <Menu\n target={target}\n placement=\"bottom\"\n {...slotProps?.menu}\n slotProps={{\n content: {\n mt: .5,\n width: conRef && (conRef?.current as any)?.clientWidth,\n ...slotProps?.menu?.content\n }\n }}\n onClickOutside={toggleMenu}\n >\n <List\n {...slotProps?.list}\n color={color}\n variant={variant}\n >\n {childs}\n </List>\n </Menu>\n </>\n )\n})\n\nexport default Select"],"names":[
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/Select/index.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React, { ReactElement, useMemo, cloneElement, useState, Children, useRef } from 'react'\r\nimport Input, { InputProps } from '../Input'\r\nimport List, { ListProps } from '../List'\r\nimport Menu, { MenuProps } from '../Menu'\r\nimport Stack from '../Stack'\r\nimport { OptionProps } from '../Option'\r\nimport DownIcon from '@xanui/icons/KeyboardArrowDown';\r\nimport UpIcon from '@xanui/icons/KeyboardArrowUp';\r\nimport { UseColorTemplateColor, UseColorTemplateType, useInterface, useBreakpointPropsType } from '@xanui/core'\r\n\r\n\r\nexport type SelectProps = {\r\n value?: string | number;\r\n onChange?: (value: string | number) => void;\r\n children: ReactElement<OptionProps> | ReactElement<OptionProps>[];\r\n placeholder?: useBreakpointPropsType<string>;\r\n color?: useBreakpointPropsType<UseColorTemplateColor>;\r\n variant?: useBreakpointPropsType<UseColorTemplateType>;\r\n slotProps?: {\r\n menu?: Omit<MenuProps, 'children' | 'target'>;\r\n input?: Omit<InputProps, \"onChange\" | \"value\">;\r\n list?: Omit<ListProps, \"children\">\r\n }\r\n}\r\n\r\nconst Select = React.forwardRef(({ onChange, value, children, ...props }: SelectProps, ref: React.Ref<any>) => {\r\n let [{ slotProps, color, variant, placeholder }] = useInterface<any>(\"Select\", props, {})\r\n color ??= \"brand\"\r\n variant ??= \"fill\"\r\n const [target, setTarget] = useState<any>()\r\n const conRef = useRef(null)\r\n const { childs, selectedProps } = useMemo(() => {\r\n let sProps: any = {}\r\n const c = Children.map(children, (child: any) => {\r\n let selected = child.props.value === value\r\n if (selected) sProps = child.props\r\n return cloneElement(child, {\r\n value: undefined,\r\n selected,\r\n onClick: () => {\r\n setTarget(null)\r\n onChange && onChange(child.props.value)\r\n }\r\n })\r\n })\r\n return {\r\n childs: c,\r\n selectedProps: sProps as OptionProps\r\n }\r\n }, [children, value])\r\n\r\n const toggleMenu = () => setTarget(target ? null : conRef.current)\r\n\r\n return (\r\n <>\r\n <Input\r\n color={color}\r\n variant={variant === \"soft\" ? \"fill\" : variant}\r\n endIcon={<Stack flexDirection=\"row\" component=\"span\" > {(target ? <UpIcon /> : <DownIcon />)}</Stack>}\r\n readOnly\r\n value={typeof selectedProps.children === 'string' ? selectedProps.children : value}\r\n cursor=\"pointer\"\r\n userSelect=\"none\"\r\n startIcon={selectedProps.startIcon}\r\n focused={!!target}\r\n placeholder={placeholder}\r\n {...slotProps?.input}\r\n slotProps={{\r\n container: {\r\n cursor: \"pointer\",\r\n userSelect: \"none\",\r\n ...(slotProps?.input?.slotProps?.container || {}),\r\n onClick: toggleMenu,\r\n }\r\n }}\r\n containerRef={conRef}\r\n ref={ref}\r\n />\r\n <Menu\r\n target={target}\r\n placement=\"bottom\"\r\n {...slotProps?.menu}\r\n slotProps={{\r\n content: {\r\n mt: .5,\r\n width: conRef && (conRef?.current as any)?.clientWidth,\r\n ...slotProps?.menu?.content\r\n }\r\n }}\r\n onClickOutside={toggleMenu}\r\n >\r\n <List\r\n {...slotProps?.list}\r\n color={color}\r\n variant={variant}\r\n >\r\n {childs}\r\n </List>\r\n </Menu>\r\n </>\r\n )\r\n})\r\n\r\nexport default Select"],"names":[],"mappings":";;;;;;;;;;;;AA2BA;;;;;;;AAKI;;;;;AAKQ;AAAc;;AAEV;;;;;;AAMH;AACL;;AAEI;AACA;;AAER;AAEA;;AAiBgB;AAMH;AASG;AAKH;AAajB;;"}
|
package/Stack/index.js
CHANGED
|
@@ -1,7 +1,17 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var tslib = require('tslib');
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var core = require('@xanui/core');
|
|
7
|
+
|
|
8
|
+
const Stack = React.forwardRef((_a, ref) => {
|
|
2
9
|
var { children } = _a, props = tslib.__rest(_a, ["children"]);
|
|
3
10
|
return (jsxRuntime.jsx(core.Tag, Object.assign({}, props, { sxr: {
|
|
4
11
|
display: "flex",
|
|
5
12
|
flexDirection: "column",
|
|
6
13
|
}, baseClass: 'stack', ref: ref, children: children })));
|
|
7
|
-
});
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
module.exports = Stack;
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
package/Stack/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/Stack/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type StackProps<T extends TagComponentType = \"div\"> = TagProps<T>\n\nconst Stack = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...props }: StackProps<T>, ref?: React.Ref<any>) => {\n return (\n <Tag\n {...props}\n sxr={{\n display: \"flex\",\n flexDirection: \"column\",\n }}\n baseClass='stack'\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default Stack\n"],"names":["__rest","_jsx","Tag"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/Stack/index.tsx"],"sourcesContent":["\r\nimport React from 'react';\r\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\r\n\r\nexport type StackProps<T extends TagComponentType = \"div\"> = TagProps<T>\r\n\r\nconst Stack = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...props }: StackProps<T>, ref?: React.Ref<any>) => {\r\n return (\r\n <Tag\r\n {...props}\r\n sxr={{\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n }}\r\n baseClass='stack'\r\n ref={ref}\r\n >{children}</Tag>\r\n )\r\n})\r\n\r\nexport default Stack\r\n"],"names":["__rest","_jsx","Tag"],"mappings":";;;;;;;AAMA,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,CAAqC,EAAqC,EAAE,GAAoB,KAAI;AAA/D,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAA2B,EAAtB,KAAK,GAAAA,YAAA,CAAA,EAAA,EAApB,YAAsB,CAAF;AACpF,IAAA,QACIC,cAAA,CAACC,QAAG,oBACI,KAAK,EAAA,EACT,GAAG,EAAE;AACD,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;SAC1B,EACD,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,GAAG,EAAA,QAAA,EACV,QAAQ,EAAA,CAAA,CAAO;AAEzB,CAAC;;;;"}
|
package/Stack/index.mjs
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
|
-
import {__rest
|
|
1
|
+
import { __rest } from 'tslib';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { Tag } from '@xanui/core';
|
|
5
|
+
|
|
6
|
+
const Stack = React.forwardRef((_a, ref) => {
|
|
2
7
|
var { children } = _a, props = __rest(_a, ["children"]);
|
|
3
8
|
return (jsx(Tag, Object.assign({}, props, { sxr: {
|
|
4
9
|
display: "flex",
|
|
5
10
|
flexDirection: "column",
|
|
6
11
|
}, baseClass: 'stack', ref: ref, children: children })));
|
|
7
|
-
});
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
export { Stack as default };
|
|
15
|
+
//# sourceMappingURL=index.mjs.map
|
package/Stack/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/Stack/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type StackProps<T extends TagComponentType = \"div\"> = TagProps<T>\n\nconst Stack = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...props }: StackProps<T>, ref?: React.Ref<any>) => {\n return (\n <Tag\n {...props}\n sxr={{\n display: \"flex\",\n flexDirection: \"column\",\n }}\n baseClass='stack'\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default Stack\n"],"names":["_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/Stack/index.tsx"],"sourcesContent":["\r\nimport React from 'react';\r\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\r\n\r\nexport type StackProps<T extends TagComponentType = \"div\"> = TagProps<T>\r\n\r\nconst Stack = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...props }: StackProps<T>, ref?: React.Ref<any>) => {\r\n return (\r\n <Tag\r\n {...props}\r\n sxr={{\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n }}\r\n baseClass='stack'\r\n ref={ref}\r\n >{children}</Tag>\r\n )\r\n})\r\n\r\nexport default Stack\r\n"],"names":["_jsx"],"mappings":";;;;;AAMA,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,CAAqC,EAAqC,EAAE,GAAoB,KAAI;AAA/D,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAA2B,EAAtB,KAAK,GAAA,MAAA,CAAA,EAAA,EAApB,YAAsB,CAAF;AACpF,IAAA,QACIA,GAAA,CAAC,GAAG,oBACI,KAAK,EAAA,EACT,GAAG,EAAE;AACD,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;SAC1B,EACD,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,GAAG,EAAA,QAAA,EACV,QAAQ,EAAA,CAAA,CAAO;AAEzB,CAAC;;;;"}
|
package/Switch/index.js
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var tslib = require('tslib');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var core = require('@xanui/core');
|
|
8
|
+
|
|
9
|
+
const Switch = React.forwardRef((props, ref) => {
|
|
2
10
|
var _a, _b;
|
|
3
11
|
let [_c] = core.useInterface("Switch", props, {}), { size, checked, color, disabled, icon, onChange, trackSize, slotProps } = _c, rest = tslib.__rest(_c, ["size", "checked", "color", "disabled", "icon", "onChange", "trackSize", "slotProps"]);
|
|
4
12
|
const _p = {};
|
|
@@ -65,4 +73,7 @@
|
|
|
65
73
|
}, children: icon })), jsxRuntime.jsx(core.Tag, Object.assign({}, rest, { component: 'input', ref: ref, type: "radio", readOnly: true, checked: checked, sxr: {
|
|
66
74
|
display: "none!important"
|
|
67
75
|
} }))] }));
|
|
68
|
-
});
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
module.exports = Switch;
|
|
79
|
+
//# sourceMappingURL=index.js.map
|
package/Switch/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\nimport React, { ReactElement, useState } from 'react';\nimport { Tag, TagProps, useBreakpointProps, UseColorTemplateColor, useInterface, useBreakpointPropsType } from '@xanui/core';\n\n\nexport type SwitchProps = Omit<TagProps<\"input\">, \"color\" | \"size\" | \"component\" | \"type\" | \"checked\"> & {\n checked?: boolean;\n size?: useBreakpointPropsType<number | \"small\" | \"medium\" | \"large\">;\n color?: useBreakpointPropsType<Omit<UseColorTemplateColor, \"default\">>;\n disabled?: useBreakpointPropsType<boolean>;\n trackSize?: useBreakpointPropsType<number>;\n icon?: useBreakpointPropsType<ReactElement>;\n slotProps?: {\n thumb?: Omit<TagProps, 'children'>;\n track?: Omit<TagProps, 'children'>;\n }\n}\n\nconst Switch = React.forwardRef((props: SwitchProps, ref?: React.Ref<any>) => {\n let [{ size, checked, color, disabled, icon, onChange, trackSize, slotProps, ...rest }] = useInterface<any>(\"Switch\", props, {})\n const _p: any = {}\n if (size) _p.size = size\n if (color) _p.color = color\n if (disabled) _p.disabled = disabled\n if (trackSize) _p.trackSize = trackSize\n if (icon) _p.icon = icon\n const p: any = useBreakpointProps(_p)\n size = p.size ?? \"medium\"\n color = p.color ?? \"brand\"\n disabled = p.disabled\n trackSize = p.trackSize\n icon = p.icon\n\n const [c, set] = useState(false)\n checked ??= c\n\n onChange = onChange || (() => set(!c));\n\n let sizes: any = {\n small: 32,\n medium: 48,\n large: 60\n }\n let _size = sizes[size as any] || size\n\n let height = (_size / 2)\n trackSize ??= height + 4\n let isNormalSize = (height + 4) === trackSize\n let transform = checked ? \"92%\" : \"8%\"\n if (!isNormalSize) {\n transform = checked ? \"100%\" : \"-10%\"\n }\n\n return (\n <Tag\n disabled={disabled}\n sxr={{\n width: _size,\n height: height,\n position: \"relative\",\n cursor: \"pointer\",\n display: \"inline-block\"\n }}\n onClick={onChange}\n >\n <Tag\n {...slotProps?.track}\n baseClass='switch-track-bar'\n sxr={{\n width: _size,\n height: trackSize,\n borderRadius: height,\n position: 'absolute',\n top: \"50%\",\n transform: \"translateY(-50%)\",\n bgcolor: checked ? color : \"divider\",\n\n }}\n >\n </Tag>\n <Tag\n {...slotProps?.thumb}\n baseClass='switch-thumb'\n sxr={{\n transition: \"all .25s\",\n width: height,\n height: height,\n radius: height,\n bgcolor: \"#FFFFFF\",\n position: \"absolute\",\n top: \"50%\",\n border: isNormalSize ? 0 : 1,\n left: 0,\n transform: `translate(${transform}, -50%)`,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\"\n }}\n >\n {\n icon\n }\n </Tag>\n <Tag\n {...rest}\n component='input'\n ref={ref}\n type=\"radio\"\n readOnly\n checked={checked}\n sxr={{\n display: \"none!important\"\n }}\n />\n </Tag>\n )\n})\n\nexport default Switch\n"],"names":[
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React, { ReactElement, useState } from 'react';\r\nimport { Tag, TagProps, useBreakpointProps, UseColorTemplateColor, useInterface, useBreakpointPropsType } from '@xanui/core';\r\n\r\n\r\nexport type SwitchProps = Omit<TagProps<\"input\">, \"color\" | \"size\" | \"component\" | \"type\" | \"checked\"> & {\r\n checked?: boolean;\r\n size?: useBreakpointPropsType<number | \"small\" | \"medium\" | \"large\">;\r\n color?: useBreakpointPropsType<Omit<UseColorTemplateColor, \"default\">>;\r\n disabled?: useBreakpointPropsType<boolean>;\r\n trackSize?: useBreakpointPropsType<number>;\r\n icon?: useBreakpointPropsType<ReactElement>;\r\n slotProps?: {\r\n thumb?: Omit<TagProps, 'children'>;\r\n track?: Omit<TagProps, 'children'>;\r\n }\r\n}\r\n\r\nconst Switch = React.forwardRef((props: SwitchProps, ref?: React.Ref<any>) => {\r\n let [{ size, checked, color, disabled, icon, onChange, trackSize, slotProps, ...rest }] = useInterface<any>(\"Switch\", props, {})\r\n const _p: any = {}\r\n if (size) _p.size = size\r\n if (color) _p.color = color\r\n if (disabled) _p.disabled = disabled\r\n if (trackSize) _p.trackSize = trackSize\r\n if (icon) _p.icon = icon\r\n const p: any = useBreakpointProps(_p)\r\n size = p.size ?? \"medium\"\r\n color = p.color ?? \"brand\"\r\n disabled = p.disabled\r\n trackSize = p.trackSize\r\n icon = p.icon\r\n\r\n const [c, set] = useState(false)\r\n checked ??= c\r\n\r\n onChange = onChange || (() => set(!c));\r\n\r\n let sizes: any = {\r\n small: 32,\r\n medium: 48,\r\n large: 60\r\n }\r\n let _size = sizes[size as any] || size\r\n\r\n let height = (_size / 2)\r\n trackSize ??= height + 4\r\n let isNormalSize = (height + 4) === trackSize\r\n let transform = checked ? \"92%\" : \"8%\"\r\n if (!isNormalSize) {\r\n transform = checked ? \"100%\" : \"-10%\"\r\n }\r\n\r\n return (\r\n <Tag\r\n disabled={disabled}\r\n sxr={{\r\n width: _size,\r\n height: height,\r\n position: \"relative\",\r\n cursor: \"pointer\",\r\n display: \"inline-block\"\r\n }}\r\n onClick={onChange}\r\n >\r\n <Tag\r\n {...slotProps?.track}\r\n baseClass='switch-track-bar'\r\n sxr={{\r\n width: _size,\r\n height: trackSize,\r\n borderRadius: height,\r\n position: 'absolute',\r\n top: \"50%\",\r\n transform: \"translateY(-50%)\",\r\n bgcolor: checked ? color : \"divider\",\r\n\r\n }}\r\n >\r\n </Tag>\r\n <Tag\r\n {...slotProps?.thumb}\r\n baseClass='switch-thumb'\r\n sxr={{\r\n transition: \"all .25s\",\r\n width: height,\r\n height: height,\r\n radius: height,\r\n bgcolor: \"#FFFFFF\",\r\n position: \"absolute\",\r\n top: \"50%\",\r\n border: isNormalSize ? 0 : 1,\r\n left: 0,\r\n transform: `translate(${transform}, -50%)`,\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\"\r\n }}\r\n >\r\n {\r\n icon\r\n }\r\n </Tag>\r\n <Tag\r\n {...rest}\r\n component='input'\r\n ref={ref}\r\n type=\"radio\"\r\n readOnly\r\n checked={checked}\r\n sxr={{\r\n display: \"none!important\"\r\n }}\r\n />\r\n </Tag>\r\n )\r\n})\r\n\r\nexport default Switch\r\n"],"names":[],"mappings":";;;;;;;;AAmBA;;AACI;;AAEA;AAAU;AACV;AAAW;AACX;AAAc;AACd;AAAe;AACf;AAAU;AACV;AACA;AACA;AACA;AACA;AACA;;;AAKA;AAEA;AACI;AACA;AACA;;;AAIJ;;;;;;;;AAYY;AACA;AACA;AACA;AACA;;AAQI;AACA;AACA;AACA;AACA;AACA;;AAGH;AAOG;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAeA;;AAKpB;;"}
|
package/Switch/index.mjs
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { __rest } from 'tslib';
|
|
3
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
4
|
+
import React, { useState } from 'react';
|
|
5
|
+
import { useInterface, useBreakpointProps, Tag } from '@xanui/core';
|
|
6
|
+
|
|
7
|
+
const Switch = React.forwardRef((props, ref) => {
|
|
2
8
|
var _a, _b;
|
|
3
9
|
let [_c] = useInterface("Switch", props, {}), { size, checked, color, disabled, icon, onChange, trackSize, slotProps } = _c, rest = __rest(_c, ["size", "checked", "color", "disabled", "icon", "onChange", "trackSize", "slotProps"]);
|
|
4
10
|
const _p = {};
|
|
@@ -65,4 +71,7 @@ import {__rest}from'tslib';import {jsxs,jsx}from'react/jsx-runtime';import React
|
|
|
65
71
|
}, children: icon })), jsx(Tag, Object.assign({}, rest, { component: 'input', ref: ref, type: "radio", readOnly: true, checked: checked, sxr: {
|
|
66
72
|
display: "none!important"
|
|
67
73
|
} }))] }));
|
|
68
|
-
});
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
export { Switch as default };
|
|
77
|
+
//# sourceMappingURL=index.mjs.map
|
package/Switch/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\nimport React, { ReactElement, useState } from 'react';\nimport { Tag, TagProps, useBreakpointProps, UseColorTemplateColor, useInterface, useBreakpointPropsType } from '@xanui/core';\n\n\nexport type SwitchProps = Omit<TagProps<\"input\">, \"color\" | \"size\" | \"component\" | \"type\" | \"checked\"> & {\n checked?: boolean;\n size?: useBreakpointPropsType<number | \"small\" | \"medium\" | \"large\">;\n color?: useBreakpointPropsType<Omit<UseColorTemplateColor, \"default\">>;\n disabled?: useBreakpointPropsType<boolean>;\n trackSize?: useBreakpointPropsType<number>;\n icon?: useBreakpointPropsType<ReactElement>;\n slotProps?: {\n thumb?: Omit<TagProps, 'children'>;\n track?: Omit<TagProps, 'children'>;\n }\n}\n\nconst Switch = React.forwardRef((props: SwitchProps, ref?: React.Ref<any>) => {\n let [{ size, checked, color, disabled, icon, onChange, trackSize, slotProps, ...rest }] = useInterface<any>(\"Switch\", props, {})\n const _p: any = {}\n if (size) _p.size = size\n if (color) _p.color = color\n if (disabled) _p.disabled = disabled\n if (trackSize) _p.trackSize = trackSize\n if (icon) _p.icon = icon\n const p: any = useBreakpointProps(_p)\n size = p.size ?? \"medium\"\n color = p.color ?? \"brand\"\n disabled = p.disabled\n trackSize = p.trackSize\n icon = p.icon\n\n const [c, set] = useState(false)\n checked ??= c\n\n onChange = onChange || (() => set(!c));\n\n let sizes: any = {\n small: 32,\n medium: 48,\n large: 60\n }\n let _size = sizes[size as any] || size\n\n let height = (_size / 2)\n trackSize ??= height + 4\n let isNormalSize = (height + 4) === trackSize\n let transform = checked ? \"92%\" : \"8%\"\n if (!isNormalSize) {\n transform = checked ? \"100%\" : \"-10%\"\n }\n\n return (\n <Tag\n disabled={disabled}\n sxr={{\n width: _size,\n height: height,\n position: \"relative\",\n cursor: \"pointer\",\n display: \"inline-block\"\n }}\n onClick={onChange}\n >\n <Tag\n {...slotProps?.track}\n baseClass='switch-track-bar'\n sxr={{\n width: _size,\n height: trackSize,\n borderRadius: height,\n position: 'absolute',\n top: \"50%\",\n transform: \"translateY(-50%)\",\n bgcolor: checked ? color : \"divider\",\n\n }}\n >\n </Tag>\n <Tag\n {...slotProps?.thumb}\n baseClass='switch-thumb'\n sxr={{\n transition: \"all .25s\",\n width: height,\n height: height,\n radius: height,\n bgcolor: \"#FFFFFF\",\n position: \"absolute\",\n top: \"50%\",\n border: isNormalSize ? 0 : 1,\n left: 0,\n transform: `translate(${transform}, -50%)`,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\"\n }}\n >\n {\n icon\n }\n </Tag>\n <Tag\n {...rest}\n component='input'\n ref={ref}\n type=\"radio\"\n readOnly\n checked={checked}\n sxr={{\n display: \"none!important\"\n }}\n />\n </Tag>\n )\n})\n\nexport default Switch\n"],"names":[
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React, { ReactElement, useState } from 'react';\r\nimport { Tag, TagProps, useBreakpointProps, UseColorTemplateColor, useInterface, useBreakpointPropsType } from '@xanui/core';\r\n\r\n\r\nexport type SwitchProps = Omit<TagProps<\"input\">, \"color\" | \"size\" | \"component\" | \"type\" | \"checked\"> & {\r\n checked?: boolean;\r\n size?: useBreakpointPropsType<number | \"small\" | \"medium\" | \"large\">;\r\n color?: useBreakpointPropsType<Omit<UseColorTemplateColor, \"default\">>;\r\n disabled?: useBreakpointPropsType<boolean>;\r\n trackSize?: useBreakpointPropsType<number>;\r\n icon?: useBreakpointPropsType<ReactElement>;\r\n slotProps?: {\r\n thumb?: Omit<TagProps, 'children'>;\r\n track?: Omit<TagProps, 'children'>;\r\n }\r\n}\r\n\r\nconst Switch = React.forwardRef((props: SwitchProps, ref?: React.Ref<any>) => {\r\n let [{ size, checked, color, disabled, icon, onChange, trackSize, slotProps, ...rest }] = useInterface<any>(\"Switch\", props, {})\r\n const _p: any = {}\r\n if (size) _p.size = size\r\n if (color) _p.color = color\r\n if (disabled) _p.disabled = disabled\r\n if (trackSize) _p.trackSize = trackSize\r\n if (icon) _p.icon = icon\r\n const p: any = useBreakpointProps(_p)\r\n size = p.size ?? \"medium\"\r\n color = p.color ?? \"brand\"\r\n disabled = p.disabled\r\n trackSize = p.trackSize\r\n icon = p.icon\r\n\r\n const [c, set] = useState(false)\r\n checked ??= c\r\n\r\n onChange = onChange || (() => set(!c));\r\n\r\n let sizes: any = {\r\n small: 32,\r\n medium: 48,\r\n large: 60\r\n }\r\n let _size = sizes[size as any] || size\r\n\r\n let height = (_size / 2)\r\n trackSize ??= height + 4\r\n let isNormalSize = (height + 4) === trackSize\r\n let transform = checked ? \"92%\" : \"8%\"\r\n if (!isNormalSize) {\r\n transform = checked ? \"100%\" : \"-10%\"\r\n }\r\n\r\n return (\r\n <Tag\r\n disabled={disabled}\r\n sxr={{\r\n width: _size,\r\n height: height,\r\n position: \"relative\",\r\n cursor: \"pointer\",\r\n display: \"inline-block\"\r\n }}\r\n onClick={onChange}\r\n >\r\n <Tag\r\n {...slotProps?.track}\r\n baseClass='switch-track-bar'\r\n sxr={{\r\n width: _size,\r\n height: trackSize,\r\n borderRadius: height,\r\n position: 'absolute',\r\n top: \"50%\",\r\n transform: \"translateY(-50%)\",\r\n bgcolor: checked ? color : \"divider\",\r\n\r\n }}\r\n >\r\n </Tag>\r\n <Tag\r\n {...slotProps?.thumb}\r\n baseClass='switch-thumb'\r\n sxr={{\r\n transition: \"all .25s\",\r\n width: height,\r\n height: height,\r\n radius: height,\r\n bgcolor: \"#FFFFFF\",\r\n position: \"absolute\",\r\n top: \"50%\",\r\n border: isNormalSize ? 0 : 1,\r\n left: 0,\r\n transform: `translate(${transform}, -50%)`,\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\"\r\n }}\r\n >\r\n {\r\n icon\r\n }\r\n </Tag>\r\n <Tag\r\n {...rest}\r\n component='input'\r\n ref={ref}\r\n type=\"radio\"\r\n readOnly\r\n checked={checked}\r\n sxr={{\r\n display: \"none!important\"\r\n }}\r\n />\r\n </Tag>\r\n )\r\n})\r\n\r\nexport default Switch\r\n"],"names":[],"mappings":";;;;;;AAmBA;;AACI;;AAEA;AAAU;AACV;AAAW;AACX;AAAc;AACd;AAAe;AACf;AAAU;AACV;AACA;AACA;AACA;AACA;AACA;;;AAKA;AAEA;AACI;AACA;AACA;;;AAIJ;;;;;;;;AAYY;AACA;AACA;AACA;AACA;;AAQI;AACA;AACA;AACA;AACA;AACA;;AAGH;AAOG;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAeA;;AAKpB;;"}
|
package/Tab/index.js
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var tslib = require('tslib');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var core = require('@xanui/core');
|
|
8
|
+
var index = require('../Button/index.js');
|
|
9
|
+
|
|
10
|
+
const Tab = React.forwardRef((_a, ref) => {
|
|
2
11
|
var { children } = _a, props = tslib.__rest(_a, ["children"]);
|
|
3
12
|
let [_props] = core.useInterface("Tab", props, {});
|
|
4
|
-
return (jsxRuntime.jsx(index
|
|
5
|
-
});
|
|
13
|
+
return (jsxRuntime.jsx(index, Object.assign({}, _props, { classNames: ["tab", ...((_props === null || _props === void 0 ? void 0 : _props.classNames) || [])], ref: ref, children: children })));
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
module.exports = Tab;
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
package/Tab/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/Tab/index.tsx"],"sourcesContent":["\nimport React from 'react'\nimport { TagComponentType, useInterface } from '@xanui/core';\nimport Button, { ButtonProps } from '../Button';\n\nexport type TabProps<T extends TagComponentType = \"button\"> = ButtonProps<T> & {\n value?: string | number\n}\n\nconst Tab = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...props }: TabProps<T>, ref: React.Ref<any>) => {\n let [_props] = useInterface<any>(\"Tab\", props, {})\n return (\n <Button\n {..._props}\n classNames={[\"tab\", ...(_props?.classNames || [])]}\n ref={ref}\n >\n {children}\n </Button>\n )\n})\n\nexport default Tab"],"names":[
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/Tab/index.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React from 'react'\r\nimport { TagComponentType, useInterface } from '@xanui/core';\r\nimport Button, { ButtonProps } from '../Button';\r\n\r\nexport type TabProps<T extends TagComponentType = \"button\"> = ButtonProps<T> & {\r\n value?: string | number\r\n}\r\n\r\nconst Tab = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...props }: TabProps<T>, ref: React.Ref<any>) => {\r\n let [_props] = useInterface<any>(\"Tab\", props, {})\r\n return (\r\n <Button\r\n {..._props}\r\n classNames={[\"tab\", ...(_props?.classNames || [])]}\r\n ref={ref}\r\n >\r\n {children}\r\n </Button>\r\n )\r\n})\r\n\r\nexport default Tab"],"names":[],"mappings":";;;;;;;;;AAUA;AAAkE;AAC9D;AACA;AASJ;;"}
|
package/Tab/index.mjs
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { __rest } from 'tslib';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
import React from 'react';
|
|
5
|
+
import { useInterface } from '@xanui/core';
|
|
6
|
+
import Button from '../Button/index.mjs';
|
|
7
|
+
|
|
8
|
+
const Tab = React.forwardRef((_a, ref) => {
|
|
2
9
|
var { children } = _a, props = __rest(_a, ["children"]);
|
|
3
10
|
let [_props] = useInterface("Tab", props, {});
|
|
4
11
|
return (jsx(Button, Object.assign({}, _props, { classNames: ["tab", ...((_props === null || _props === void 0 ? void 0 : _props.classNames) || [])], ref: ref, children: children })));
|
|
5
|
-
});
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
export { Tab as default };
|
|
15
|
+
//# sourceMappingURL=index.mjs.map
|
package/Tab/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/Tab/index.tsx"],"sourcesContent":["\nimport React from 'react'\nimport { TagComponentType, useInterface } from '@xanui/core';\nimport Button, { ButtonProps } from '../Button';\n\nexport type TabProps<T extends TagComponentType = \"button\"> = ButtonProps<T> & {\n value?: string | number\n}\n\nconst Tab = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...props }: TabProps<T>, ref: React.Ref<any>) => {\n let [_props] = useInterface<any>(\"Tab\", props, {})\n return (\n <Button\n {..._props}\n classNames={[\"tab\", ...(_props?.classNames || [])]}\n ref={ref}\n >\n {children}\n </Button>\n )\n})\n\nexport default Tab"],"names":[
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/Tab/index.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport React from 'react'\r\nimport { TagComponentType, useInterface } from '@xanui/core';\r\nimport Button, { ButtonProps } from '../Button';\r\n\r\nexport type TabProps<T extends TagComponentType = \"button\"> = ButtonProps<T> & {\r\n value?: string | number\r\n}\r\n\r\nconst Tab = React.forwardRef(<T extends TagComponentType = \"div\">({ children, ...props }: TabProps<T>, ref: React.Ref<any>) => {\r\n let [_props] = useInterface<any>(\"Tab\", props, {})\r\n return (\r\n <Button\r\n {..._props}\r\n classNames={[\"tab\", ...(_props?.classNames || [])]}\r\n ref={ref}\r\n >\r\n {children}\r\n </Button>\r\n )\r\n})\r\n\r\nexport default Tab"],"names":[],"mappings":";;;;;;;AAUA;AAAkE;AAC9D;AACA;AASJ;;"}
|