@xanui/ui 1.1.5 → 1.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/Accordion/index.d.ts +5 -5
  2. package/Accordion/index.js +1 -2
  3. package/Accordion/index.js.map +1 -1
  4. package/Accordion/index.mjs +1 -2
  5. package/Accordion/index.mjs.map +1 -1
  6. package/Alert/index.d.ts +3 -3
  7. package/Alert/index.js +5 -6
  8. package/Alert/index.js.map +1 -1
  9. package/Alert/index.mjs +5 -6
  10. package/Alert/index.mjs.map +1 -1
  11. package/Badge/index.d.ts +2 -2
  12. package/Badge/index.js +1 -2
  13. package/Badge/index.js.map +1 -1
  14. package/Badge/index.mjs +1 -2
  15. package/Badge/index.mjs.map +1 -1
  16. package/Button/index.d.ts +3 -3
  17. package/Button/index.js +11 -12
  18. package/Button/index.js.map +1 -1
  19. package/Button/index.mjs +12 -13
  20. package/Button/index.mjs.map +1 -1
  21. package/ButtonGroup/index.d.ts +3 -3
  22. package/ButtonGroup/index.js +16 -15
  23. package/ButtonGroup/index.js.map +1 -1
  24. package/ButtonGroup/index.mjs +17 -16
  25. package/ButtonGroup/index.mjs.map +1 -1
  26. package/Calendar/index.d.ts +2 -2
  27. package/Calendar/index.js.map +1 -1
  28. package/Calendar/index.mjs.map +1 -1
  29. package/Checkbox/index.d.ts +2 -2
  30. package/Checkbox/index.js.map +1 -1
  31. package/Checkbox/index.mjs.map +1 -1
  32. package/Chip/index.d.ts +3 -3
  33. package/Chip/index.js +15 -9
  34. package/Chip/index.js.map +1 -1
  35. package/Chip/index.mjs +15 -9
  36. package/Chip/index.mjs.map +1 -1
  37. package/CircleProgress/index.d.ts +4 -4
  38. package/CircleProgress/index.js +3 -3
  39. package/CircleProgress/index.js.map +1 -1
  40. package/CircleProgress/index.mjs +3 -3
  41. package/CircleProgress/index.mjs.map +1 -1
  42. package/ClickOutside/index.d.ts +3 -3
  43. package/ClickOutside/index.js +4 -3
  44. package/ClickOutside/index.js.map +1 -1
  45. package/ClickOutside/index.mjs +4 -3
  46. package/ClickOutside/index.mjs.map +1 -1
  47. package/Datatable/SelectedBox.js +1 -1
  48. package/Datatable/SelectedBox.js.map +1 -1
  49. package/Datatable/SelectedBox.mjs +1 -1
  50. package/Datatable/SelectedBox.mjs.map +1 -1
  51. package/Datatable/Table.js +1 -1
  52. package/Datatable/Table.js.map +1 -1
  53. package/Datatable/Table.mjs +1 -1
  54. package/Datatable/Table.mjs.map +1 -1
  55. package/Divider/index.d.ts +2 -2
  56. package/Divider/index.js.map +1 -1
  57. package/Divider/index.mjs.map +1 -1
  58. package/Drawer/index.d.ts +3 -1
  59. package/Drawer/index.js +9 -11
  60. package/Drawer/index.js.map +1 -1
  61. package/Drawer/index.mjs +9 -11
  62. package/Drawer/index.mjs.map +1 -1
  63. package/IconButton/index.d.ts +3 -3
  64. package/IconButton/index.js +3 -3
  65. package/IconButton/index.js.map +1 -1
  66. package/IconButton/index.mjs +3 -3
  67. package/IconButton/index.mjs.map +1 -1
  68. package/Input/index.d.ts +2 -2
  69. package/Input/index.js +6 -6
  70. package/Input/index.js.map +1 -1
  71. package/Input/index.mjs +6 -6
  72. package/Input/index.mjs.map +1 -1
  73. package/Label/index.js +5 -1
  74. package/Label/index.js.map +1 -1
  75. package/Label/index.mjs +5 -1
  76. package/Label/index.mjs.map +1 -1
  77. package/Layer/index.d.ts +3 -1
  78. package/Layer/index.js +2 -2
  79. package/Layer/index.js.map +1 -1
  80. package/Layer/index.mjs +2 -2
  81. package/Layer/index.mjs.map +1 -1
  82. package/LineProgress/index.d.ts +2 -2
  83. package/LineProgress/index.js +1 -1
  84. package/LineProgress/index.js.map +1 -1
  85. package/LineProgress/index.mjs +1 -1
  86. package/LineProgress/index.mjs.map +1 -1
  87. package/List/index.d.ts +5 -5
  88. package/List/index.js +12 -14
  89. package/List/index.js.map +1 -1
  90. package/List/index.mjs +12 -14
  91. package/List/index.mjs.map +1 -1
  92. package/LoadingBox/index.d.ts +2 -2
  93. package/LoadingBox/index.js +4 -5
  94. package/LoadingBox/index.js.map +1 -1
  95. package/LoadingBox/index.mjs +4 -5
  96. package/LoadingBox/index.mjs.map +1 -1
  97. package/Menu/index.js +9 -9
  98. package/Menu/index.js.map +1 -1
  99. package/Menu/index.mjs +10 -10
  100. package/Menu/index.mjs.map +1 -1
  101. package/Portal/index.d.ts +4 -3
  102. package/Portal/index.js +4 -11
  103. package/Portal/index.js.map +1 -1
  104. package/Portal/index.mjs +4 -11
  105. package/Portal/index.mjs.map +1 -1
  106. package/Scrollbar/index.d.ts +1 -4
  107. package/Scrollbar/index.js +0 -16
  108. package/Scrollbar/index.js.map +1 -1
  109. package/Scrollbar/index.mjs +1 -17
  110. package/Scrollbar/index.mjs.map +1 -1
  111. package/Select/index.d.ts +3 -3
  112. package/Select/index.js +1 -1
  113. package/Select/index.js.map +1 -1
  114. package/Select/index.mjs +1 -1
  115. package/Select/index.mjs.map +1 -1
  116. package/Switch/index.d.ts +2 -2
  117. package/Switch/index.js.map +1 -1
  118. package/Switch/index.mjs.map +1 -1
  119. package/Table/index.d.ts +3 -3
  120. package/Table/index.js +5 -5
  121. package/Table/index.js.map +1 -1
  122. package/Table/index.mjs +5 -5
  123. package/Table/index.mjs.map +1 -1
  124. package/TablePagination/index.d.ts +3 -3
  125. package/TablePagination/index.js.map +1 -1
  126. package/TablePagination/index.mjs.map +1 -1
  127. package/Tabs/index.d.ts +3 -3
  128. package/Tabs/index.js +7 -7
  129. package/Tabs/index.js.map +1 -1
  130. package/Tabs/index.mjs +7 -7
  131. package/Tabs/index.mjs.map +1 -1
  132. package/Toast/index.d.ts +3 -3
  133. package/Toast/index.js.map +1 -1
  134. package/Toast/index.mjs.map +1 -1
  135. package/Tooltip/index.d.ts +3 -3
  136. package/Tooltip/index.js +3 -3
  137. package/Tooltip/index.js.map +1 -1
  138. package/Tooltip/index.mjs +3 -3
  139. package/Tooltip/index.mjs.map +1 -1
  140. package/package.json +4 -4
package/Select/index.js CHANGED
@@ -27,7 +27,7 @@
27
27
  };
28
28
  }, [children, value]);
29
29
  const toggleMenu = () => setTarget(target ? null : conRef.current);
30
- return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(index.default, Object.assign({ color: color, variant: variant === "alpha" ? "fill" : variant, endIcon: jsxRuntime.jsxs(index$1.default, { 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: {
30
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(index.default, Object.assign({ color: color, variant: variant === "soft" ? "fill" : variant, endIcon: jsxRuntime.jsxs(index$1.default, { 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
31
  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
32
  }, containerRef: conRef, ref: ref })), jsxRuntime.jsx(index$2.default, Object.assign({ target: target, placement: "bottom" }, slotProps === null || slotProps === void 0 ? void 0 : slotProps.menu, { slotProps: {
33
33
  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)
@@ -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 { ColorTemplateColors, ColorTemplateType, 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<ColorTemplateColors>;\n variant?: useBreakpointPropsType<ColorTemplateType>;\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 === \"alpha\" ? \"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":["__rest","useInterface","useState","useRef","useMemo","Children","cloneElement","_jsxs","_jsx","Input","Stack","Menu","List"],"mappings":"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"}
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":["__rest","useInterface","useState","useRef","useMemo","Children","cloneElement","_jsxs","_jsx","Input","Stack","Menu","List"],"mappings":"8aA0BA,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,EAAoD,EAAE,GAAmB,KAAI;;QAA7E,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,OAAyB,EAApB,KAAK,GAAAA,YAAA,CAAA,EAAA,EAArC,CAAA,UAAA,EAAA,OAAA,EAAA,UAAA,CAAuC,CAAF;IAClE,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,GAAGC,iBAAY,CAAM,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;IACzF,KAAK,KAAA,IAAA,IAAL,KAAK,KAAA,MAAA,GAAL,KAAK,IAAL,KAAK,GAAK,OAAO,CAAA;IACjB,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAP,OAAO,IAAP,OAAO,GAAK,MAAM,CAAA;IAClB,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAGC,cAAQ,EAAO;AAC3C,IAAA,MAAM,MAAM,GAAGC,YAAM,CAAC,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAGC,aAAO,CAAC,MAAK;QAC3C,IAAI,MAAM,GAAQ,EAAE;QACpB,MAAM,CAAC,GAAGC,cAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAU,KAAI;YAC5C,IAAI,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK;AAC1C,YAAA,IAAI,QAAQ;AAAE,gBAAA,MAAM,GAAG,KAAK,CAAC,KAAK;YAClC,OAAOC,kBAAY,CAAC,KAAK,EAAE;AACvB,gBAAA,KAAK,EAAE,SAAS;gBAChB,QAAQ;gBACR,OAAO,EAAE,MAAK;oBACV,SAAS,CAAC,IAAI,CAAC;oBACf,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC3C;AACH,aAAA,CAAC;AACN,QAAA,CAAC,CAAC;QACF,OAAO;AACH,YAAA,MAAM,EAAE,CAAC;AACT,YAAA,aAAa,EAAE;SAClB;AACL,IAAA,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAErB,IAAA,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC;IAElE,QACIC,kDACIC,cAAA,CAACC,aAAK,kBACF,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,MAAM,GAAG,OAAO,EAC9C,OAAO,EAAEF,gBAACG,eAAK,EAAA,EAAC,aAAa,EAAC,KAAK,EAAC,SAAS,EAAC,MAAM,EAAA,QAAA,EAAA,CAAA,GAAA,GAAK,MAAM,GAAGF,cAAA,CAAC,MAAM,EAAA,EAAA,CAAG,GAAGA,cAAA,CAAC,QAAQ,EAAA,EAAA,CAAG,EAAC,EAAA,CAAS,EACrG,QAAQ,EAAA,IAAA,EACR,KAAK,EAAE,OAAO,aAAa,CAAC,QAAQ,KAAK,QAAQ,GAAG,aAAa,CAAC,QAAQ,GAAG,KAAK,EAClF,MAAM,EAAC,SAAS,EAChB,UAAU,EAAC,MAAM,EACjB,SAAS,EAAE,aAAa,CAAC,SAAS,EAClC,OAAO,EAAE,CAAC,CAAC,MAAM,EACjB,WAAW,EAAE,WAAW,EAAA,EACpB,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,KAAK,EAAA,EACpB,SAAS,EAAE;AACP,oBAAA,SAAS,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EACL,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,EAAA,GACd,CAAA,CAAA,EAAA,GAAA,MAAA,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,SAAS,KAAI,EAAE,EAAC,EAAA,EACjD,OAAO,EAAE,UAAU,EAAA;AAE1B,iBAAA,EACD,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,GAAG,EAAA,CAAA,CACV,EACFA,cAAA,CAACG,eAAI,EAAA,MAAA,CAAA,MAAA,CAAA,EACD,MAAM,EAAE,MAAM,EACd,SAAS,EAAC,QAAQ,EAAA,EACd,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,IAAI,EAAA,EACnB,SAAS,EAAE;AACP,oBAAA,OAAO,EAAA,MAAA,CAAA,MAAA,CAAA,EACH,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,MAAM,KAAI,CAAA,EAAA,GAAC,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,MAAA,GAAA,MAAA,GAAN,MAAM,CAAE,OAAe,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,WAAW,CAAA,EAAA,EACnD,MAAA,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,OAAO;AAElC,iBAAA,EACD,cAAc,EAAE,UAAU,EAAA,QAAA,EAE1BH,cAAA,CAACI,eAAI,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACG,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,IAAI,EAAA,EACnB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAAA,QAAA,EAEf,MAAM,EAAA,CAAA,CACJ,EAAA,CAAA,CACJ,CAAA,EAAA,CACR;AAEX,CAAC"}
package/Select/index.mjs CHANGED
@@ -27,7 +27,7 @@ import {__rest}from'tslib';import {jsxs,Fragment,jsx}from'react/jsx-runtime';imp
27
27
  };
28
28
  }, [children, value]);
29
29
  const toggleMenu = () => setTarget(target ? null : conRef.current);
30
- return (jsxs(Fragment, { children: [jsx(Input, Object.assign({ color: color, variant: variant === "alpha" ? "fill" : variant, endIcon: jsxs(Stack, { flexDirection: "row", component: "span", children: [" ", (target ? jsx(UpIcon, {}) : 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: {
30
+ return (jsxs(Fragment, { children: [jsx(Input, Object.assign({ color: color, variant: variant === "soft" ? "fill" : variant, endIcon: jsxs(Stack, { flexDirection: "row", component: "span", children: [" ", (target ? jsx(UpIcon, {}) : 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
31
  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
32
  }, containerRef: conRef, ref: ref })), jsx(Menu, Object.assign({ target: target, placement: "bottom" }, slotProps === null || slotProps === void 0 ? void 0 : slotProps.menu, { slotProps: {
33
33
  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)
@@ -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 { ColorTemplateColors, ColorTemplateType, 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<ColorTemplateColors>;\n variant?: useBreakpointPropsType<ColorTemplateType>;\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 === \"alpha\" ? \"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":["_jsxs","_jsx"],"mappings":"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"}
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":["_jsxs","_jsx"],"mappings":"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"}
package/Switch/index.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  import React, { ReactElement } from 'react';
2
- import { TagProps, useBreakpointPropsType, ColorTemplateColors } from '@xanui/core';
2
+ import { TagProps, useBreakpointPropsType, UseColorTemplateColor } from '@xanui/core';
3
3
 
4
4
  type SwitchProps = Omit<TagProps<"input">, "color" | "size" | "component" | "type" | "checked"> & {
5
5
  checked?: boolean;
6
6
  size?: useBreakpointPropsType<number | "small" | "medium" | "large">;
7
- color?: useBreakpointPropsType<Omit<ColorTemplateColors, "default">>;
7
+ color?: useBreakpointPropsType<Omit<UseColorTemplateColor, "default">>;
8
8
  disabled?: useBreakpointPropsType<boolean>;
9
9
  trackSize?: useBreakpointPropsType<number>;
10
10
  icon?: useBreakpointPropsType<ReactElement>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\nimport React, { ReactElement, useState } from 'react';\nimport { Tag, TagProps, useBreakpointProps, ColorTemplateColors, 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<ColorTemplateColors, \"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":["useInterface","__rest","useBreakpointProps","useState","_jsxs","Tag","_jsx"],"mappings":"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"}
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":["useInterface","__rest","useBreakpointProps","useState","_jsxs","Tag","_jsx"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\nimport React, { ReactElement, useState } from 'react';\nimport { Tag, TagProps, useBreakpointProps, ColorTemplateColors, 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<ColorTemplateColors, \"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":["_jsxs","_jsx"],"mappings":"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"}
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":["_jsxs","_jsx"],"mappings":"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"}
package/Table/index.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  import React from 'react';
2
- import { TagComponentType, TagProps, useBreakpointPropsType, ColorTemplateColors, ColorTemplateType } from '@xanui/core';
2
+ import { TagComponentType, TagProps, useBreakpointPropsType, UseColorTemplateColor, UseColorTemplateType } from '@xanui/core';
3
3
 
4
4
  type TableProps<T extends TagComponentType = "table"> = Omit<TagProps<T>, "color" | "size"> & {
5
5
  evenColor?: useBreakpointPropsType<boolean>;
6
6
  size?: useBreakpointPropsType<"small" | "medium" | "large" | number>;
7
- color?: useBreakpointPropsType<ColorTemplateColors>;
8
- variant?: useBreakpointPropsType<Omit<ColorTemplateType, "outline">>;
7
+ color?: useBreakpointPropsType<UseColorTemplateColor>;
8
+ variant?: useBreakpointPropsType<Omit<UseColorTemplateType, "outline">>;
9
9
  borderType?: useBreakpointPropsType<"box" | "line" | "none">;
10
10
  };
11
11
  declare const Table: React.ForwardRefExoticComponent<Omit<TableProps<TagComponentType>, "ref"> & React.RefAttributes<any>>;
package/Table/index.js CHANGED
@@ -20,12 +20,12 @@
20
20
  variant = (_d = p.variant) !== null && _d !== void 0 ? _d : "fill";
21
21
  borderType = (_e = p.borderType) !== null && _e !== void 0 ? _e : "line";
22
22
  const main = core.useColorTemplate(color, variant);
23
- const alpha = core.useColorTemplate(color, "alpha");
23
+ const soft = core.useColorTemplate(color, "soft");
24
24
  let sx = {};
25
25
  if (evenColor) {
26
26
  sx = {
27
27
  "& tbody tr:nth-child(even)": {
28
- bgcolor: alpha.bgcolor
28
+ bgcolor: soft.primary.bgcolor
29
29
  }
30
30
  };
31
31
  }
@@ -63,15 +63,15 @@
63
63
  return (jsxRuntime.jsx(index.default, { style: {
64
64
  overflowY: "hidden"
65
65
  }, children: jsxRuntime.jsx(core.Tag, Object.assign({}, rest, { baseClass: 'table', sxr: Object.assign(Object.assign({ color: "text.primary", fontSize: size === "small" ? "button" : "text", width: "100%", "& thead, & tfoot": {
66
- bgcolor: main.bgcolor,
66
+ bgcolor: main.primary.bgcolor,
67
67
  "& th": {
68
- color: main.color
68
+ color: main.primary.color
69
69
  }
70
70
  }, "& td, & th": Object.assign({ p: _size }, border[borderType]), "& tr:last-child td": {
71
71
  borderBottom: 0
72
72
  }, "& tr:first-child th": {
73
73
  borderTop: 0
74
74
  }, "& tbody tr:hover": {
75
- bgcolor: alpha.bgcolor
75
+ bgcolor: soft.primary.bgcolor
76
76
  } }, sx), (rest.sx || {})), component: "table", ref: ref, children: children })) }));
77
77
  });exports.default=Table;//# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/Table/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType, ColorTemplateColors, useInterface, useColorTemplate, ColorTemplateType, useBreakpointProps, useBreakpointPropsType } from '@xanui/core';\nimport Scrollbar from '../Scrollbar';\n\n\nexport type TableProps<T extends TagComponentType = \"table\"> = Omit<TagProps<T>, \"color\" | \"size\"> & {\n evenColor?: useBreakpointPropsType<boolean>;\n size?: useBreakpointPropsType<\"small\" | \"medium\" | \"large\" | number>;\n color?: useBreakpointPropsType<ColorTemplateColors>;\n variant?: useBreakpointPropsType<Omit<ColorTemplateType, \"outline\">>;\n borderType?: useBreakpointPropsType<\"box\" | \"line\" | \"none\">;\n}\n\nconst Table = React.forwardRef(<T extends TagComponentType = \"table\">({ children, ...props }: TableProps<T>, ref: React.Ref<any>) => {\n let [{ evenColor, size, color, variant, borderType, ...rest }] = useInterface<any>(\"Table\", props, {})\n const _p: any = {}\n if (evenColor) _p.evenColor = evenColor\n if (size) _p.size = size\n if (color) _p.color = color\n if (variant) _p.variant = variant\n if (borderType) _p.borderType = borderType\n const p: any = useBreakpointProps(_p)\n evenColor = p.evenColor\n size = p.size ?? \"medium\"\n color = p.color ?? 'default'\n variant = p.variant ?? \"fill\"\n borderType = p.borderType ?? \"line\"\n\n const main = useColorTemplate(color, variant)\n const alpha = useColorTemplate(color, \"alpha\")\n\n let sx: any = {}\n if (evenColor) {\n sx = {\n \"& tbody tr:nth-child(even)\": {\n bgcolor: alpha.bgcolor\n }\n }\n }\n if (borderType === 'box') {\n sx = {\n ...sx,\n \"& tr:last-child td\": {\n borderBottom: 0\n },\n \"& tr:first-child th\": {\n borderTop: 0\n },\n \"& tr td:first-child, & tr th:first-child\": {\n borderLeft: 0\n },\n \"& tr td:last-child, & tr th:last-child\": {\n borderRight: 0\n },\n }\n }\n let _size = size\n let sizes: any = {\n small: .5,\n medium: 1,\n large: 2\n }\n\n if (typeof size === 'string' && sizes[size]) {\n _size = sizes[size]\n }\n let border: any = {\n line: {\n borderBottom: \"1px solid\",\n borderColor: \"divider\",\n },\n box: {\n border: \"1px solid\",\n borderColor: \"divider\",\n },\n none: {}\n }\n\n return (\n <Scrollbar\n style={{\n overflowY: \"hidden\"\n }}\n >\n <Tag\n {...rest}\n baseClass='table'\n sxr={{\n color: \"text.primary\",\n fontSize: size === \"small\" ? \"button\" : \"text\",\n width: \"100%\",\n \"& thead, & tfoot\": {\n bgcolor: main.bgcolor,\n \"& th\": {\n color: main.color\n }\n },\n \"& td, & th\": {\n p: _size,\n ...border[borderType],\n },\n \"& tr:last-child td\": {\n borderBottom: 0\n },\n \"& tr:first-child th\": {\n borderTop: 0\n },\n \"& tbody tr:hover\": {\n bgcolor: alpha.bgcolor\n },\n ...sx,\n ...((rest as any).sx || {})\n }}\n component=\"table\"\n ref={ref}\n >{children}</Tag>\n </Scrollbar>\n )\n})\n\nexport default Table"],"names":["__rest","useInterface","useBreakpointProps","useColorTemplate","_jsx","Scrollbar","Tag"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/Table/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType, UseColorTemplateColor, useInterface, useColorTemplate, UseColorTemplateType, useBreakpointProps, useBreakpointPropsType } from '@xanui/core';\nimport Scrollbar from '../Scrollbar';\n\n\nexport type TableProps<T extends TagComponentType = \"table\"> = Omit<TagProps<T>, \"color\" | \"size\"> & {\n evenColor?: useBreakpointPropsType<boolean>;\n size?: useBreakpointPropsType<\"small\" | \"medium\" | \"large\" | number>;\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<Omit<UseColorTemplateType, \"outline\">>;\n borderType?: useBreakpointPropsType<\"box\" | \"line\" | \"none\">;\n}\n\nconst Table = React.forwardRef(<T extends TagComponentType = \"table\">({ children, ...props }: TableProps<T>, ref: React.Ref<any>) => {\n let [{ evenColor, size, color, variant, borderType, ...rest }] = useInterface<any>(\"Table\", props, {})\n const _p: any = {}\n if (evenColor) _p.evenColor = evenColor\n if (size) _p.size = size\n if (color) _p.color = color\n if (variant) _p.variant = variant\n if (borderType) _p.borderType = borderType\n const p: any = useBreakpointProps(_p)\n evenColor = p.evenColor\n size = p.size ?? \"medium\"\n color = p.color ?? 'default'\n variant = p.variant ?? \"fill\"\n borderType = p.borderType ?? \"line\"\n\n const main = useColorTemplate(color, variant)\n const soft = useColorTemplate(color, \"soft\")\n\n let sx: any = {}\n if (evenColor) {\n sx = {\n \"& tbody tr:nth-child(even)\": {\n bgcolor: soft.primary.bgcolor\n }\n }\n }\n if (borderType === 'box') {\n sx = {\n ...sx,\n \"& tr:last-child td\": {\n borderBottom: 0\n },\n \"& tr:first-child th\": {\n borderTop: 0\n },\n \"& tr td:first-child, & tr th:first-child\": {\n borderLeft: 0\n },\n \"& tr td:last-child, & tr th:last-child\": {\n borderRight: 0\n },\n }\n }\n let _size = size\n let sizes: any = {\n small: .5,\n medium: 1,\n large: 2\n }\n\n if (typeof size === 'string' && sizes[size]) {\n _size = sizes[size]\n }\n let border: any = {\n line: {\n borderBottom: \"1px solid\",\n borderColor: \"divider\",\n },\n box: {\n border: \"1px solid\",\n borderColor: \"divider\",\n },\n none: {}\n }\n\n return (\n <Scrollbar\n style={{\n overflowY: \"hidden\"\n }}\n >\n <Tag\n {...rest}\n baseClass='table'\n sxr={{\n color: \"text.primary\",\n fontSize: size === \"small\" ? \"button\" : \"text\",\n width: \"100%\",\n \"& thead, & tfoot\": {\n bgcolor: main.primary.bgcolor,\n \"& th\": {\n color: main.primary.color\n }\n },\n \"& td, & th\": {\n p: _size,\n ...border[borderType],\n },\n \"& tr:last-child td\": {\n borderBottom: 0\n },\n \"& tr:first-child th\": {\n borderTop: 0\n },\n \"& tbody tr:hover\": {\n bgcolor: soft.primary.bgcolor\n },\n ...sx,\n ...((rest as any).sx || {})\n }}\n component=\"table\"\n ref={ref}\n >{children}</Tag>\n </Scrollbar>\n )\n})\n\nexport default Table"],"names":["__rest","useInterface","useBreakpointProps","useColorTemplate","_jsx","Scrollbar","Tag"],"mappings":"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"}
package/Table/index.mjs CHANGED
@@ -20,12 +20,12 @@ import {__rest}from'tslib';import {jsx}from'react/jsx-runtime';import React from
20
20
  variant = (_d = p.variant) !== null && _d !== void 0 ? _d : "fill";
21
21
  borderType = (_e = p.borderType) !== null && _e !== void 0 ? _e : "line";
22
22
  const main = useColorTemplate(color, variant);
23
- const alpha = useColorTemplate(color, "alpha");
23
+ const soft = useColorTemplate(color, "soft");
24
24
  let sx = {};
25
25
  if (evenColor) {
26
26
  sx = {
27
27
  "& tbody tr:nth-child(even)": {
28
- bgcolor: alpha.bgcolor
28
+ bgcolor: soft.primary.bgcolor
29
29
  }
30
30
  };
31
31
  }
@@ -63,15 +63,15 @@ import {__rest}from'tslib';import {jsx}from'react/jsx-runtime';import React from
63
63
  return (jsx(Scrollbar, { style: {
64
64
  overflowY: "hidden"
65
65
  }, children: jsx(Tag, Object.assign({}, rest, { baseClass: 'table', sxr: Object.assign(Object.assign({ color: "text.primary", fontSize: size === "small" ? "button" : "text", width: "100%", "& thead, & tfoot": {
66
- bgcolor: main.bgcolor,
66
+ bgcolor: main.primary.bgcolor,
67
67
  "& th": {
68
- color: main.color
68
+ color: main.primary.color
69
69
  }
70
70
  }, "& td, & th": Object.assign({ p: _size }, border[borderType]), "& tr:last-child td": {
71
71
  borderBottom: 0
72
72
  }, "& tr:first-child th": {
73
73
  borderTop: 0
74
74
  }, "& tbody tr:hover": {
75
- bgcolor: alpha.bgcolor
75
+ bgcolor: soft.primary.bgcolor
76
76
  } }, sx), (rest.sx || {})), component: "table", ref: ref, children: children })) }));
77
77
  });export{Table as default};//# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/Table/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType, ColorTemplateColors, useInterface, useColorTemplate, ColorTemplateType, useBreakpointProps, useBreakpointPropsType } from '@xanui/core';\nimport Scrollbar from '../Scrollbar';\n\n\nexport type TableProps<T extends TagComponentType = \"table\"> = Omit<TagProps<T>, \"color\" | \"size\"> & {\n evenColor?: useBreakpointPropsType<boolean>;\n size?: useBreakpointPropsType<\"small\" | \"medium\" | \"large\" | number>;\n color?: useBreakpointPropsType<ColorTemplateColors>;\n variant?: useBreakpointPropsType<Omit<ColorTemplateType, \"outline\">>;\n borderType?: useBreakpointPropsType<\"box\" | \"line\" | \"none\">;\n}\n\nconst Table = React.forwardRef(<T extends TagComponentType = \"table\">({ children, ...props }: TableProps<T>, ref: React.Ref<any>) => {\n let [{ evenColor, size, color, variant, borderType, ...rest }] = useInterface<any>(\"Table\", props, {})\n const _p: any = {}\n if (evenColor) _p.evenColor = evenColor\n if (size) _p.size = size\n if (color) _p.color = color\n if (variant) _p.variant = variant\n if (borderType) _p.borderType = borderType\n const p: any = useBreakpointProps(_p)\n evenColor = p.evenColor\n size = p.size ?? \"medium\"\n color = p.color ?? 'default'\n variant = p.variant ?? \"fill\"\n borderType = p.borderType ?? \"line\"\n\n const main = useColorTemplate(color, variant)\n const alpha = useColorTemplate(color, \"alpha\")\n\n let sx: any = {}\n if (evenColor) {\n sx = {\n \"& tbody tr:nth-child(even)\": {\n bgcolor: alpha.bgcolor\n }\n }\n }\n if (borderType === 'box') {\n sx = {\n ...sx,\n \"& tr:last-child td\": {\n borderBottom: 0\n },\n \"& tr:first-child th\": {\n borderTop: 0\n },\n \"& tr td:first-child, & tr th:first-child\": {\n borderLeft: 0\n },\n \"& tr td:last-child, & tr th:last-child\": {\n borderRight: 0\n },\n }\n }\n let _size = size\n let sizes: any = {\n small: .5,\n medium: 1,\n large: 2\n }\n\n if (typeof size === 'string' && sizes[size]) {\n _size = sizes[size]\n }\n let border: any = {\n line: {\n borderBottom: \"1px solid\",\n borderColor: \"divider\",\n },\n box: {\n border: \"1px solid\",\n borderColor: \"divider\",\n },\n none: {}\n }\n\n return (\n <Scrollbar\n style={{\n overflowY: \"hidden\"\n }}\n >\n <Tag\n {...rest}\n baseClass='table'\n sxr={{\n color: \"text.primary\",\n fontSize: size === \"small\" ? \"button\" : \"text\",\n width: \"100%\",\n \"& thead, & tfoot\": {\n bgcolor: main.bgcolor,\n \"& th\": {\n color: main.color\n }\n },\n \"& td, & th\": {\n p: _size,\n ...border[borderType],\n },\n \"& tr:last-child td\": {\n borderBottom: 0\n },\n \"& tr:first-child th\": {\n borderTop: 0\n },\n \"& tbody tr:hover\": {\n bgcolor: alpha.bgcolor\n },\n ...sx,\n ...((rest as any).sx || {})\n }}\n component=\"table\"\n ref={ref}\n >{children}</Tag>\n </Scrollbar>\n )\n})\n\nexport default Table"],"names":["_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/Table/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType, UseColorTemplateColor, useInterface, useColorTemplate, UseColorTemplateType, useBreakpointProps, useBreakpointPropsType } from '@xanui/core';\nimport Scrollbar from '../Scrollbar';\n\n\nexport type TableProps<T extends TagComponentType = \"table\"> = Omit<TagProps<T>, \"color\" | \"size\"> & {\n evenColor?: useBreakpointPropsType<boolean>;\n size?: useBreakpointPropsType<\"small\" | \"medium\" | \"large\" | number>;\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<Omit<UseColorTemplateType, \"outline\">>;\n borderType?: useBreakpointPropsType<\"box\" | \"line\" | \"none\">;\n}\n\nconst Table = React.forwardRef(<T extends TagComponentType = \"table\">({ children, ...props }: TableProps<T>, ref: React.Ref<any>) => {\n let [{ evenColor, size, color, variant, borderType, ...rest }] = useInterface<any>(\"Table\", props, {})\n const _p: any = {}\n if (evenColor) _p.evenColor = evenColor\n if (size) _p.size = size\n if (color) _p.color = color\n if (variant) _p.variant = variant\n if (borderType) _p.borderType = borderType\n const p: any = useBreakpointProps(_p)\n evenColor = p.evenColor\n size = p.size ?? \"medium\"\n color = p.color ?? 'default'\n variant = p.variant ?? \"fill\"\n borderType = p.borderType ?? \"line\"\n\n const main = useColorTemplate(color, variant)\n const soft = useColorTemplate(color, \"soft\")\n\n let sx: any = {}\n if (evenColor) {\n sx = {\n \"& tbody tr:nth-child(even)\": {\n bgcolor: soft.primary.bgcolor\n }\n }\n }\n if (borderType === 'box') {\n sx = {\n ...sx,\n \"& tr:last-child td\": {\n borderBottom: 0\n },\n \"& tr:first-child th\": {\n borderTop: 0\n },\n \"& tr td:first-child, & tr th:first-child\": {\n borderLeft: 0\n },\n \"& tr td:last-child, & tr th:last-child\": {\n borderRight: 0\n },\n }\n }\n let _size = size\n let sizes: any = {\n small: .5,\n medium: 1,\n large: 2\n }\n\n if (typeof size === 'string' && sizes[size]) {\n _size = sizes[size]\n }\n let border: any = {\n line: {\n borderBottom: \"1px solid\",\n borderColor: \"divider\",\n },\n box: {\n border: \"1px solid\",\n borderColor: \"divider\",\n },\n none: {}\n }\n\n return (\n <Scrollbar\n style={{\n overflowY: \"hidden\"\n }}\n >\n <Tag\n {...rest}\n baseClass='table'\n sxr={{\n color: \"text.primary\",\n fontSize: size === \"small\" ? \"button\" : \"text\",\n width: \"100%\",\n \"& thead, & tfoot\": {\n bgcolor: main.primary.bgcolor,\n \"& th\": {\n color: main.primary.color\n }\n },\n \"& td, & th\": {\n p: _size,\n ...border[borderType],\n },\n \"& tr:last-child td\": {\n borderBottom: 0\n },\n \"& tr:first-child th\": {\n borderTop: 0\n },\n \"& tbody tr:hover\": {\n bgcolor: soft.primary.bgcolor\n },\n ...sx,\n ...((rest as any).sx || {})\n }}\n component=\"table\"\n ref={ref}\n >{children}</Tag>\n </Scrollbar>\n )\n})\n\nexport default Table"],"names":["_jsx"],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  import { SelectProps } from '../Select/index.js';
2
2
  import { IconButtonProps } from '../IconButton/index.js';
3
3
  import React from 'react';
4
- import { TagProps, useBreakpointPropsType, ColorTemplateColors, ColorTemplateType } from '@xanui/core';
4
+ import { TagProps, useBreakpointPropsType, UseColorTemplateColor, UseColorTemplateType } from '@xanui/core';
5
5
 
6
6
  type TablePaginationProps = Omit<TagProps, "children"> & {
7
7
  page: number;
8
8
  total: number;
9
9
  perpages?: number[];
10
- color?: useBreakpointPropsType<ColorTemplateColors>;
11
- variant?: useBreakpointPropsType<ColorTemplateType>;
10
+ color?: useBreakpointPropsType<UseColorTemplateColor>;
11
+ variant?: useBreakpointPropsType<UseColorTemplateType>;
12
12
  onChange?: (state: {
13
13
  page: number;
14
14
  perpage: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/TablePagination/index.tsx"],"sourcesContent":["import Text from '../Text'\nimport Select, { SelectProps } from '../Select'\nimport Option from '../Option'\nimport IconButton, { IconButtonProps } from '../IconButton'\nimport React, { useMemo, useState } from 'react'\nimport PrevIcon from '@xanui/icons/KeyboardArrowLeft'\nimport NextIcon from '@xanui/icons/KeyboardArrowRight'\nimport { TagProps, Tag, useInterface, ColorTemplateColors, ColorTemplateType, useBreakpointPropsType } from '@xanui/core';\n\n\nexport type TablePaginationProps = Omit<TagProps, \"children\"> & {\n page: number;\n total: number;\n perpages?: number[];\n color?: useBreakpointPropsType<ColorTemplateColors>;\n variant?: useBreakpointPropsType<ColorTemplateType>;\n onChange?: (state: { page: number, perpage: number, from: number, to: number }) => void;\n\n slotProps?: {\n button?: Omit<IconButtonProps, \"children\" | \"color\" | \"variant\">;\n select?: Omit<SelectProps, \"value\" | \"onChange\">;\n }\n}\n\nconst TablePagination = React.forwardRef(({ page, total, onChange, ...rest }: TablePaginationProps, ref: React.Ref<any>) => {\n let [{ perpages, color, variant, slotProps, ...props }] = useInterface<any>(\"TablePagination\", rest, {})\n color ??= \"default\"\n variant ??= \"fill\"\n perpages ??= [30, 50, 100]\n const [perpage, setPerpage] = useState(perpages[0] || 10)\n const isPerpage = perpages[0] && perpages.length >= 1\n\n const chunks = useMemo(() => {\n const chunks: any = [];\n let _page = 1;\n for (let from = 0; from < total; from += perpage) {\n const to = Math.min(from + perpage, total)\n chunks[_page] = { from: from + 1, to, page: _page, perpage }\n _page++\n }\n return chunks\n }, [perpage, total])\n\n if (!chunks.length) {\n return <></>\n }\n\n const current = chunks[page] || chunks[1]\n const next = chunks[page + 1]\n const prev = chunks[page - 1]\n if (!chunks[page]) {\n console.error(`Indvalid page`)\n }\n\n return (\n <Tag\n {...props}\n sxr={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: 1,\n alignItems: \"center\"\n }}\n baseClass='table-pagination'\n ref={ref}\n >\n {\n isPerpage && <Tag baseClass='table-pagination-perpage' flexBox flexRow gap={1} alignItems=\"center\">\n <Text fontSize=\"button\">PER PAGE</Text>\n <Select\n {...slotProps?.select}\n slotProps={{\n ...slotProps?.select?.slotProps,\n input: {\n ...slotProps?.select?.slotProps?.input,\n slotProps: {\n container: {\n minWidth: \"auto\"\n }\n },\n width: perpage.toString().length * 10,\n size: \"small\",\n },\n }}\n value={perpage}\n onChange={(value: any) => {\n setPerpage(value);\n onChange && onChange(current)\n }}\n >\n {perpages.map((p: number) => <Option key={p} value={p}>{p}</Option>)}\n </Select>\n </Tag>\n }\n <Tag\n sxr={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: 1,\n alignItems: 'center'\n }}\n >\n <Text fontSize=\"button\">{current?.from}-{current.to}</Text>\n <Text color=\"text.secondary\">of</Text>\n <Text fontSize=\"button\">{total}</Text>\n </Tag>\n <Tag baseClass='table-pagination-navigation' flexBox flexRow gap={.4} >\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n\n size={30}\n disabled={!prev}\n onClick={() => {\n (onChange && prev) && onChange(prev)\n }}\n >\n <PrevIcon />\n </IconButton>\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n size={30}\n disabled={!next}\n onClick={() => {\n (onChange && next) && onChange(next)\n }}\n >\n <NextIcon />\n </IconButton>\n </Tag>\n </Tag>\n )\n})\n\nexport default TablePagination"],"names":["__rest","useInterface","useState","useMemo","_jsx","_jsxs","Tag","Text","Select","Option","IconButton","PrevIcon","NextIcon"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/TablePagination/index.tsx"],"sourcesContent":["import Text from '../Text'\nimport Select, { SelectProps } from '../Select'\nimport Option from '../Option'\nimport IconButton, { IconButtonProps } from '../IconButton'\nimport React, { useMemo, useState } from 'react'\nimport PrevIcon from '@xanui/icons/KeyboardArrowLeft'\nimport NextIcon from '@xanui/icons/KeyboardArrowRight'\nimport { TagProps, Tag, useInterface, UseColorTemplateColor, UseColorTemplateType, useBreakpointPropsType } from '@xanui/core';\n\n\nexport type TablePaginationProps = Omit<TagProps, \"children\"> & {\n page: number;\n total: number;\n perpages?: number[];\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<UseColorTemplateType>;\n onChange?: (state: { page: number, perpage: number, from: number, to: number }) => void;\n\n slotProps?: {\n button?: Omit<IconButtonProps, \"children\" | \"color\" | \"variant\">;\n select?: Omit<SelectProps, \"value\" | \"onChange\">;\n }\n}\n\nconst TablePagination = React.forwardRef(({ page, total, onChange, ...rest }: TablePaginationProps, ref: React.Ref<any>) => {\n let [{ perpages, color, variant, slotProps, ...props }] = useInterface<any>(\"TablePagination\", rest, {})\n color ??= \"default\"\n variant ??= \"fill\"\n perpages ??= [30, 50, 100]\n const [perpage, setPerpage] = useState(perpages[0] || 10)\n const isPerpage = perpages[0] && perpages.length >= 1\n\n const chunks = useMemo(() => {\n const chunks: any = [];\n let _page = 1;\n for (let from = 0; from < total; from += perpage) {\n const to = Math.min(from + perpage, total)\n chunks[_page] = { from: from + 1, to, page: _page, perpage }\n _page++\n }\n return chunks\n }, [perpage, total])\n\n if (!chunks.length) {\n return <></>\n }\n\n const current = chunks[page] || chunks[1]\n const next = chunks[page + 1]\n const prev = chunks[page - 1]\n if (!chunks[page]) {\n console.error(`Indvalid page`)\n }\n\n return (\n <Tag\n {...props}\n sxr={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: 1,\n alignItems: \"center\"\n }}\n baseClass='table-pagination'\n ref={ref}\n >\n {\n isPerpage && <Tag baseClass='table-pagination-perpage' flexBox flexRow gap={1} alignItems=\"center\">\n <Text fontSize=\"button\">PER PAGE</Text>\n <Select\n {...slotProps?.select}\n slotProps={{\n ...slotProps?.select?.slotProps,\n input: {\n ...slotProps?.select?.slotProps?.input,\n slotProps: {\n container: {\n minWidth: \"auto\"\n }\n },\n width: perpage.toString().length * 10,\n size: \"small\",\n },\n }}\n value={perpage}\n onChange={(value: any) => {\n setPerpage(value);\n onChange && onChange(current)\n }}\n >\n {perpages.map((p: number) => <Option key={p} value={p}>{p}</Option>)}\n </Select>\n </Tag>\n }\n <Tag\n sxr={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: 1,\n alignItems: 'center'\n }}\n >\n <Text fontSize=\"button\">{current?.from}-{current.to}</Text>\n <Text color=\"text.secondary\">of</Text>\n <Text fontSize=\"button\">{total}</Text>\n </Tag>\n <Tag baseClass='table-pagination-navigation' flexBox flexRow gap={.4} >\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n\n size={30}\n disabled={!prev}\n onClick={() => {\n (onChange && prev) && onChange(prev)\n }}\n >\n <PrevIcon />\n </IconButton>\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n size={30}\n disabled={!next}\n onClick={() => {\n (onChange && next) && onChange(next)\n }}\n >\n <NextIcon />\n </IconButton>\n </Tag>\n </Tag>\n )\n})\n\nexport default TablePagination"],"names":["__rest","useInterface","useState","useMemo","_jsx","_jsxs","Tag","Text","Select","Option","IconButton","PrevIcon","NextIcon"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/TablePagination/index.tsx"],"sourcesContent":["import Text from '../Text'\nimport Select, { SelectProps } from '../Select'\nimport Option from '../Option'\nimport IconButton, { IconButtonProps } from '../IconButton'\nimport React, { useMemo, useState } from 'react'\nimport PrevIcon from '@xanui/icons/KeyboardArrowLeft'\nimport NextIcon from '@xanui/icons/KeyboardArrowRight'\nimport { TagProps, Tag, useInterface, ColorTemplateColors, ColorTemplateType, useBreakpointPropsType } from '@xanui/core';\n\n\nexport type TablePaginationProps = Omit<TagProps, \"children\"> & {\n page: number;\n total: number;\n perpages?: number[];\n color?: useBreakpointPropsType<ColorTemplateColors>;\n variant?: useBreakpointPropsType<ColorTemplateType>;\n onChange?: (state: { page: number, perpage: number, from: number, to: number }) => void;\n\n slotProps?: {\n button?: Omit<IconButtonProps, \"children\" | \"color\" | \"variant\">;\n select?: Omit<SelectProps, \"value\" | \"onChange\">;\n }\n}\n\nconst TablePagination = React.forwardRef(({ page, total, onChange, ...rest }: TablePaginationProps, ref: React.Ref<any>) => {\n let [{ perpages, color, variant, slotProps, ...props }] = useInterface<any>(\"TablePagination\", rest, {})\n color ??= \"default\"\n variant ??= \"fill\"\n perpages ??= [30, 50, 100]\n const [perpage, setPerpage] = useState(perpages[0] || 10)\n const isPerpage = perpages[0] && perpages.length >= 1\n\n const chunks = useMemo(() => {\n const chunks: any = [];\n let _page = 1;\n for (let from = 0; from < total; from += perpage) {\n const to = Math.min(from + perpage, total)\n chunks[_page] = { from: from + 1, to, page: _page, perpage }\n _page++\n }\n return chunks\n }, [perpage, total])\n\n if (!chunks.length) {\n return <></>\n }\n\n const current = chunks[page] || chunks[1]\n const next = chunks[page + 1]\n const prev = chunks[page - 1]\n if (!chunks[page]) {\n console.error(`Indvalid page`)\n }\n\n return (\n <Tag\n {...props}\n sxr={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: 1,\n alignItems: \"center\"\n }}\n baseClass='table-pagination'\n ref={ref}\n >\n {\n isPerpage && <Tag baseClass='table-pagination-perpage' flexBox flexRow gap={1} alignItems=\"center\">\n <Text fontSize=\"button\">PER PAGE</Text>\n <Select\n {...slotProps?.select}\n slotProps={{\n ...slotProps?.select?.slotProps,\n input: {\n ...slotProps?.select?.slotProps?.input,\n slotProps: {\n container: {\n minWidth: \"auto\"\n }\n },\n width: perpage.toString().length * 10,\n size: \"small\",\n },\n }}\n value={perpage}\n onChange={(value: any) => {\n setPerpage(value);\n onChange && onChange(current)\n }}\n >\n {perpages.map((p: number) => <Option key={p} value={p}>{p}</Option>)}\n </Select>\n </Tag>\n }\n <Tag\n sxr={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: 1,\n alignItems: 'center'\n }}\n >\n <Text fontSize=\"button\">{current?.from}-{current.to}</Text>\n <Text color=\"text.secondary\">of</Text>\n <Text fontSize=\"button\">{total}</Text>\n </Tag>\n <Tag baseClass='table-pagination-navigation' flexBox flexRow gap={.4} >\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n\n size={30}\n disabled={!prev}\n onClick={() => {\n (onChange && prev) && onChange(prev)\n }}\n >\n <PrevIcon />\n </IconButton>\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n size={30}\n disabled={!next}\n onClick={() => {\n (onChange && next) && onChange(next)\n }}\n >\n <NextIcon />\n </IconButton>\n </Tag>\n </Tag>\n )\n})\n\nexport default TablePagination"],"names":["_jsx","_jsxs","PrevIcon","NextIcon"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/TablePagination/index.tsx"],"sourcesContent":["import Text from '../Text'\nimport Select, { SelectProps } from '../Select'\nimport Option from '../Option'\nimport IconButton, { IconButtonProps } from '../IconButton'\nimport React, { useMemo, useState } from 'react'\nimport PrevIcon from '@xanui/icons/KeyboardArrowLeft'\nimport NextIcon from '@xanui/icons/KeyboardArrowRight'\nimport { TagProps, Tag, useInterface, UseColorTemplateColor, UseColorTemplateType, useBreakpointPropsType } from '@xanui/core';\n\n\nexport type TablePaginationProps = Omit<TagProps, \"children\"> & {\n page: number;\n total: number;\n perpages?: number[];\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<UseColorTemplateType>;\n onChange?: (state: { page: number, perpage: number, from: number, to: number }) => void;\n\n slotProps?: {\n button?: Omit<IconButtonProps, \"children\" | \"color\" | \"variant\">;\n select?: Omit<SelectProps, \"value\" | \"onChange\">;\n }\n}\n\nconst TablePagination = React.forwardRef(({ page, total, onChange, ...rest }: TablePaginationProps, ref: React.Ref<any>) => {\n let [{ perpages, color, variant, slotProps, ...props }] = useInterface<any>(\"TablePagination\", rest, {})\n color ??= \"default\"\n variant ??= \"fill\"\n perpages ??= [30, 50, 100]\n const [perpage, setPerpage] = useState(perpages[0] || 10)\n const isPerpage = perpages[0] && perpages.length >= 1\n\n const chunks = useMemo(() => {\n const chunks: any = [];\n let _page = 1;\n for (let from = 0; from < total; from += perpage) {\n const to = Math.min(from + perpage, total)\n chunks[_page] = { from: from + 1, to, page: _page, perpage }\n _page++\n }\n return chunks\n }, [perpage, total])\n\n if (!chunks.length) {\n return <></>\n }\n\n const current = chunks[page] || chunks[1]\n const next = chunks[page + 1]\n const prev = chunks[page - 1]\n if (!chunks[page]) {\n console.error(`Indvalid page`)\n }\n\n return (\n <Tag\n {...props}\n sxr={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: 1,\n alignItems: \"center\"\n }}\n baseClass='table-pagination'\n ref={ref}\n >\n {\n isPerpage && <Tag baseClass='table-pagination-perpage' flexBox flexRow gap={1} alignItems=\"center\">\n <Text fontSize=\"button\">PER PAGE</Text>\n <Select\n {...slotProps?.select}\n slotProps={{\n ...slotProps?.select?.slotProps,\n input: {\n ...slotProps?.select?.slotProps?.input,\n slotProps: {\n container: {\n minWidth: \"auto\"\n }\n },\n width: perpage.toString().length * 10,\n size: \"small\",\n },\n }}\n value={perpage}\n onChange={(value: any) => {\n setPerpage(value);\n onChange && onChange(current)\n }}\n >\n {perpages.map((p: number) => <Option key={p} value={p}>{p}</Option>)}\n </Select>\n </Tag>\n }\n <Tag\n sxr={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: 1,\n alignItems: 'center'\n }}\n >\n <Text fontSize=\"button\">{current?.from}-{current.to}</Text>\n <Text color=\"text.secondary\">of</Text>\n <Text fontSize=\"button\">{total}</Text>\n </Tag>\n <Tag baseClass='table-pagination-navigation' flexBox flexRow gap={.4} >\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n\n size={30}\n disabled={!prev}\n onClick={() => {\n (onChange && prev) && onChange(prev)\n }}\n >\n <PrevIcon />\n </IconButton>\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n size={30}\n disabled={!next}\n onClick={() => {\n (onChange && next) && onChange(next)\n }}\n >\n <NextIcon />\n </IconButton>\n </Tag>\n </Tag>\n )\n})\n\nexport default TablePagination"],"names":["_jsx","_jsxs","PrevIcon","NextIcon"],"mappings":"6cAwBA,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,EAAwD,EAAE,GAAmB,KAAI;;QAAjF,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,OAAiC,EAA5B,IAAI,GAAA,MAAA,CAAA,EAAA,EAAhC,CAAA,MAAA,EAAA,OAAA,EAAA,UAAA,CAAkC,CAAF;IACtE,IAAI,CAAA,EAAA,CAAA,GAAsD,YAAY,CAAM,iBAAiB,EAAE,IAAI,EAAE,EAAE,CAAC,EAAnG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAA,GAAA,EAAY,EAAP,KAAK,GAAA,MAAA,CAAA,EAAA,EAA/C,CAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,CAAiD,CAAkD;IACxG,KAAK,KAAA,IAAA,IAAL,KAAK,KAAA,MAAA,GAAL,KAAK,IAAL,KAAK,GAAK,SAAS,CAAA;IACnB,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAP,OAAO,IAAP,OAAO,GAAK,MAAM,CAAA;AAClB,IAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,MAAA,GAAR,QAAQ,IAAR,QAAQ,GAAK,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;AAC1B,IAAA,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACzD,IAAA,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC;AAErD,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAK;QACxB,MAAM,MAAM,GAAQ,EAAE;QACtB,IAAI,KAAK,GAAG,CAAC;AACb,QAAA,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,OAAO,EAAE;AAC9C,YAAA,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,OAAO,EAAE,KAAK,CAAC;AAC1C,YAAA,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;AAC5D,YAAA,KAAK,EAAE;QACX;AACA,QAAA,OAAO,MAAM;AACjB,IAAA,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAEpB,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAChB,QAAA,OAAOA,iBAAK;IAChB;IAEA,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;AAC7B,IAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;AACf,QAAA,OAAO,CAAC,KAAK,CAAC,CAAA,aAAA,CAAe,CAAC;IAClC;AAEA,IAAA,QACIC,IAAA,CAAC,GAAG,oBACI,KAAK,EAAA,EACT,GAAG,EAAE;AACD,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,GAAG,EAAE,CAAC;AACN,YAAA,UAAU,EAAE;AACf,SAAA,EACD,SAAS,EAAC,kBAAkB,EAC5B,GAAG,EAAE,GAAG,EAAA,QAAA,EAAA,CAGJ,SAAS,IAAIA,KAAC,GAAG,EAAA,EAAC,SAAS,EAAC,0BAA0B,EAAC,OAAO,EAAA,IAAA,EAAC,OAAO,QAAC,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,EAAA,QAAA,EAAA,CAC9FD,GAAA,CAAC,IAAI,EAAA,EAAC,QAAQ,EAAC,QAAQ,EAAA,QAAA,EAAA,UAAA,EAAA,CAAgB,EACvCA,GAAA,CAAC,MAAM,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACC,SAAS,aAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,MAAM,EAAA,EACrB,SAAS,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACF,CAAA,EAAA,GAAA,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,SAAS,CAAA,EAAA,EAC/B,KAAK,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACE,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,aAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,SAAS,0CAAE,KAAK,CAAA,EAAA,EACtC,SAAS,EAAE;AACP,oCAAA,SAAS,EAAE;AACP,wCAAA,QAAQ,EAAE;AACb;iCACJ,EACD,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,EAAE,EACrC,IAAI,EAAE,OAAO,EAAA,CAAA,EAAA,CAAA,EAGrB,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,CAAC,KAAU,KAAI;4BACrB,UAAU,CAAC,KAAK,CAAC;AACjB,4BAAA,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC;AACjC,wBAAA,CAAC,EAAA,QAAA,EAEA,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAS,KAAKA,GAAA,CAAC,MAAM,EAAA,EAAS,KAAK,EAAE,CAAC,EAAA,QAAA,EAAG,CAAC,EAAA,EAAf,CAAC,CAAwB,CAAC,EAAA,CAAA,CAC/D,CAAA,EAAA,CACP,EAEVC,IAAA,CAAC,GAAG,EAAA,EACA,GAAG,EAAE;AACD,oBAAA,OAAO,EAAE,MAAM;AACf,oBAAA,aAAa,EAAE,KAAK;AACpB,oBAAA,GAAG,EAAE,CAAC;AACN,oBAAA,UAAU,EAAE;AACf,iBAAA,EAAA,QAAA,EAAA,CAEDA,KAAC,IAAI,EAAA,EAAC,QAAQ,EAAC,QAAQ,aAAE,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,IAAI,OAAG,OAAO,CAAC,EAAE,CAAA,EAAA,CAAQ,EAC3DD,GAAA,CAAC,IAAI,IAAC,KAAK,EAAC,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAU,EACtCA,IAAC,IAAI,EAAA,EAAC,QAAQ,EAAC,QAAQ,EAAA,QAAA,EAAE,KAAK,GAAQ,CAAA,EAAA,CACpC,EACNC,KAAC,GAAG,EAAA,EAAC,SAAS,EAAC,6BAA6B,EAAC,OAAO,QAAC,OAAO,EAAA,IAAA,EAAC,GAAG,EAAE,EAAE,EAAA,QAAA,EAAA,CAChED,GAAA,CAAC,UAAU,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACH,SAAS,aAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,MAAM,EAAA,EACrB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAEhB,IAAI,EAAE,EAAE,EACR,QAAQ,EAAE,CAAC,IAAI,EACf,OAAO,EAAE,MAAK;4BACV,CAAC,QAAQ,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC;AACxC,wBAAA,CAAC,YAEDA,GAAA,CAACE,qBAAQ,EAAA,EAAA,CAAG,EAAA,CAAA,CACH,EACbF,GAAA,CAAC,UAAU,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACH,SAAS,aAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,MAAM,EAAA,EACrB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,EAAE,EACR,QAAQ,EAAE,CAAC,IAAI,EACf,OAAO,EAAE,MAAK;4BACV,CAAC,QAAQ,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC;wBACxC,CAAC,EAAA,QAAA,EAEDA,IAACG,sBAAQ,EAAA,EAAA,CAAG,IACH,CAAA,EAAA,CACX,CAAA,EAAA,CAAA,CACJ;AAEd,CAAC"}
package/Tabs/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import React, { ReactElement } from 'react';
2
2
  import { TabProps } from '../Tab/index.js';
3
- import { TagProps, useBreakpointPropsType, ColorTemplateColors } from '@xanui/core';
3
+ import { TagProps, useBreakpointPropsType, UseColorTemplateColor } from '@xanui/core';
4
4
  import { ButtonProps } from '../Button/index.js';
5
5
 
6
6
  type ValueType = string | number;
@@ -8,8 +8,8 @@ type TabsProps = Omit<TagProps, 'onChange'> & {
8
8
  children: ReactElement<TabProps> | ReactElement<TabProps>[];
9
9
  value?: ValueType;
10
10
  onChange?: (value: ValueType) => void;
11
- variant?: useBreakpointPropsType<"start-line" | "end-line" | "fill" | "outline" | "text" | "alpha">;
12
- color?: useBreakpointPropsType<ColorTemplateColors>;
11
+ variant?: useBreakpointPropsType<"start-line" | "end-line" | "fill" | "outline" | "text" | "soft">;
12
+ color?: useBreakpointPropsType<UseColorTemplateColor>;
13
13
  verticle?: useBreakpointPropsType<boolean>;
14
14
  disableTransition?: useBreakpointPropsType<boolean>;
15
15
  indicatorSize?: useBreakpointPropsType<number>;
package/Tabs/index.js CHANGED
@@ -53,7 +53,7 @@ const Tabs = React.forwardRef((_a, ref) => {
53
53
  }
54
54
  };
55
55
  }
56
- else if (variant === 'alpha' && selected) {
56
+ else if (variant === 'soft' && selected) {
57
57
  btnProps = {
58
58
  sx: {
59
59
  bgcolor: "transparent!importnat",
@@ -63,7 +63,7 @@ const Tabs = React.forwardRef((_a, ref) => {
63
63
  // delete child.props.value
64
64
  return React.cloneElement(child, Object.assign(Object.assign(Object.assign({ corner: "square", value: undefined, onClick: () => {
65
65
  onChange && onChange(child.props.value);
66
- }, border: 1, borderColor: "transparent" }, slotProps === null || slotProps === void 0 ? void 0 : slotProps.button), btnProps), { color: selected ? color : "default", variant: "text", classNames: [child.props.classNames, { "tab-selected": selected }] }));
66
+ }, border: "1px solid", borderColor: "transparent" }, slotProps === null || slotProps === void 0 ? void 0 : slotProps.button), btnProps), { color: selected ? color : "default", variant: "text", classNames: [child.props.classNames, { "tab-selected": selected }] }));
67
67
  });
68
68
  return info;
69
69
  }, [children, onChange, value, variant, color, verticle]);
@@ -86,7 +86,7 @@ const Tabs = React.forwardRef((_a, ref) => {
86
86
  height: (rect === null || rect === void 0 ? void 0 : rect.height) || 0,
87
87
  }
88
88
  };
89
- if (["fill", "alpha", "outline"].includes(variant)) {
89
+ if (["fill", "soft", "outline"].includes(variant)) {
90
90
  anim.from.width = prevRect === null || prevRect === void 0 ? void 0 : prevRect.width;
91
91
  anim.to.width = rect === null || rect === void 0 ? void 0 : rect.width;
92
92
  }
@@ -102,7 +102,7 @@ const Tabs = React.forwardRef((_a, ref) => {
102
102
  width: (rect === null || rect === void 0 ? void 0 : rect.width) || 0,
103
103
  },
104
104
  };
105
- if (["fill", "alpha", "outline"].includes(variant)) {
105
+ if (["fill", "soft", "outline"].includes(variant)) {
106
106
  anim.from.height = (prevRect === null || prevRect === void 0 ? void 0 : prevRect.height) || 0;
107
107
  anim.to.height = (rect === null || rect === void 0 ? void 0 : rect.height) || 0;
108
108
  }
@@ -151,15 +151,15 @@ const Tabs = React.forwardRef((_a, ref) => {
151
151
  case "outline":
152
152
  _indicatorProps = {
153
153
  top: 0,
154
- border: 1,
154
+ border: "1px solid",
155
155
  borderColor: color,
156
156
  bgcolor: "transparent"
157
157
  };
158
158
  break;
159
- case "alpha":
159
+ case "soft":
160
160
  _indicatorProps = {
161
161
  top: 0,
162
- bgcolor: `${color}.alpha`
162
+ bgcolor: `${color}.soft.primary`
163
163
  };
164
164
  break;
165
165
  case "text":