@xanui/ui 1.1.69 → 1.2.1

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 (150) hide show
  1. package/Autocomplete/index.cjs +7 -3
  2. package/Autocomplete/index.cjs.map +1 -1
  3. package/Autocomplete/index.d.ts +1 -0
  4. package/Autocomplete/index.js +7 -3
  5. package/Autocomplete/index.js.map +1 -1
  6. package/Avatar/index.cjs +1 -0
  7. package/Avatar/index.cjs.map +1 -1
  8. package/Avatar/index.js +1 -0
  9. package/Avatar/index.js.map +1 -1
  10. package/Badge/index.cjs +1 -0
  11. package/Badge/index.cjs.map +1 -1
  12. package/Badge/index.js +1 -0
  13. package/Badge/index.js.map +1 -1
  14. package/Box/index.cjs +1 -0
  15. package/Box/index.cjs.map +1 -1
  16. package/Box/index.js +1 -0
  17. package/Box/index.js.map +1 -1
  18. package/ButtonGroup/index.cjs +1 -0
  19. package/ButtonGroup/index.cjs.map +1 -1
  20. package/ButtonGroup/index.js +1 -0
  21. package/ButtonGroup/index.js.map +1 -1
  22. package/Chip/index.cjs +1 -0
  23. package/Chip/index.cjs.map +1 -1
  24. package/Chip/index.js +1 -0
  25. package/Chip/index.js.map +1 -1
  26. package/Collaps/index.cjs +1 -0
  27. package/Collaps/index.cjs.map +1 -1
  28. package/Collaps/index.js +1 -0
  29. package/Collaps/index.js.map +1 -1
  30. package/Container/index.cjs +1 -0
  31. package/Container/index.cjs.map +1 -1
  32. package/Container/index.js +1 -0
  33. package/Container/index.js.map +1 -1
  34. package/Datatable/SelectedBox.cjs +1 -0
  35. package/Datatable/SelectedBox.cjs.map +1 -1
  36. package/Datatable/SelectedBox.js +1 -0
  37. package/Datatable/SelectedBox.js.map +1 -1
  38. package/Datatable/Table.cjs.map +1 -1
  39. package/Datatable/Table.js.map +1 -1
  40. package/Divider/index.cjs +1 -0
  41. package/Divider/index.cjs.map +1 -1
  42. package/Divider/index.js +1 -0
  43. package/Divider/index.js.map +1 -1
  44. package/GridContainer/index.cjs +1 -0
  45. package/GridContainer/index.cjs.map +1 -1
  46. package/GridContainer/index.js +1 -0
  47. package/GridContainer/index.js.map +1 -1
  48. package/GridItem/index.cjs +1 -0
  49. package/GridItem/index.cjs.map +1 -1
  50. package/GridItem/index.js +1 -0
  51. package/GridItem/index.js.map +1 -1
  52. package/Image/index.cjs.map +1 -1
  53. package/Image/index.js.map +1 -1
  54. package/Label/index.cjs +1 -0
  55. package/Label/index.cjs.map +1 -1
  56. package/Label/index.js +1 -0
  57. package/Label/index.js.map +1 -1
  58. package/List/index.cjs +1 -0
  59. package/List/index.cjs.map +1 -1
  60. package/List/index.js +1 -0
  61. package/List/index.js.map +1 -1
  62. package/ListItem/index.cjs +1 -0
  63. package/ListItem/index.cjs.map +1 -1
  64. package/ListItem/index.js +1 -0
  65. package/ListItem/index.js.map +1 -1
  66. package/LoadingBox/index.cjs +1 -0
  67. package/LoadingBox/index.cjs.map +1 -1
  68. package/LoadingBox/index.js +1 -0
  69. package/LoadingBox/index.js.map +1 -1
  70. package/Option/index.cjs +1 -0
  71. package/Option/index.cjs.map +1 -1
  72. package/Option/index.js +1 -0
  73. package/Option/index.js.map +1 -1
  74. package/Paper/index.cjs +1 -0
  75. package/Paper/index.cjs.map +1 -1
  76. package/Paper/index.js +1 -0
  77. package/Paper/index.js.map +1 -1
  78. package/Radio/index.cjs +1 -0
  79. package/Radio/index.cjs.map +1 -1
  80. package/Radio/index.js +1 -0
  81. package/Radio/index.js.map +1 -1
  82. package/Scrollbar/index.cjs.map +1 -1
  83. package/Scrollbar/index.js.map +1 -1
  84. package/Select/index.cjs.map +1 -1
  85. package/Select/index.js.map +1 -1
  86. package/Skeleton/index.cjs +1 -0
  87. package/Skeleton/index.cjs.map +1 -1
  88. package/Skeleton/index.js +1 -0
  89. package/Skeleton/index.js.map +1 -1
  90. package/Stack/index.cjs +1 -0
  91. package/Stack/index.cjs.map +1 -1
  92. package/Stack/index.js +1 -0
  93. package/Stack/index.js.map +1 -1
  94. package/Switch/index.cjs.map +1 -1
  95. package/Switch/index.js.map +1 -1
  96. package/Tab/index.cjs.map +1 -1
  97. package/Tab/index.js.map +1 -1
  98. package/Table/index.cjs +1 -0
  99. package/Table/index.cjs.map +1 -1
  100. package/Table/index.js +1 -0
  101. package/Table/index.js.map +1 -1
  102. package/TableBody/index.cjs +1 -0
  103. package/TableBody/index.cjs.map +1 -1
  104. package/TableBody/index.js +1 -0
  105. package/TableBody/index.js.map +1 -1
  106. package/TableCell/index.cjs +1 -0
  107. package/TableCell/index.cjs.map +1 -1
  108. package/TableCell/index.js +1 -0
  109. package/TableCell/index.js.map +1 -1
  110. package/TableFooter/index.cjs +1 -0
  111. package/TableFooter/index.cjs.map +1 -1
  112. package/TableFooter/index.js +1 -0
  113. package/TableFooter/index.js.map +1 -1
  114. package/TableHead/index.cjs +1 -0
  115. package/TableHead/index.cjs.map +1 -1
  116. package/TableHead/index.js +1 -0
  117. package/TableHead/index.js.map +1 -1
  118. package/TablePagination/index.cjs.map +1 -1
  119. package/TablePagination/index.js.map +1 -1
  120. package/TableRow/index.cjs +1 -0
  121. package/TableRow/index.cjs.map +1 -1
  122. package/TableRow/index.js +1 -0
  123. package/TableRow/index.js.map +1 -1
  124. package/Tabs/index.cjs.map +1 -1
  125. package/Tabs/index.js.map +1 -1
  126. package/Text/index.cjs +1 -0
  127. package/Text/index.cjs.map +1 -1
  128. package/Text/index.js +1 -0
  129. package/Text/index.js.map +1 -1
  130. package/Toast/index.cjs.map +1 -1
  131. package/Toast/index.js.map +1 -1
  132. package/Tooltip/index.cjs.map +1 -1
  133. package/Tooltip/index.js.map +1 -1
  134. package/ViewBox/index.cjs +1 -0
  135. package/ViewBox/index.cjs.map +1 -1
  136. package/ViewBox/index.js +1 -0
  137. package/ViewBox/index.js.map +1 -1
  138. package/package.json +1 -1
  139. package/useBlurCss/index.cjs +1 -0
  140. package/useBlurCss/index.cjs.map +1 -1
  141. package/useBlurCss/index.js +1 -0
  142. package/useBlurCss/index.js.map +1 -1
  143. package/useContextMenu/index.cjs +1 -0
  144. package/useContextMenu/index.cjs.map +1 -1
  145. package/useContextMenu/index.js +1 -0
  146. package/useContextMenu/index.js.map +1 -1
  147. package/useCorner/index.cjs +1 -0
  148. package/useCorner/index.cjs.map +1 -1
  149. package/useCorner/index.js +1 -0
  150. package/useCorner/index.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/Scrollbar/index.tsx"],"sourcesContent":["\"use client\";\n\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 thumbSize?: number;\n thumbColor?: TagProps['color'];\n trackColor?: TagProps['color'];\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, thumbSize, thumbColor, trackColor, ...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 let sxr: any = {}\n\n if (thumbSize) {\n sxr['&::-webkit-scrollbar'] = {\n width: thumbSize,\n height: thumbSize,\n }\n }\n if (thumbColor) {\n sxr['&::-webkit-scrollbar-thumb'] = {\n backgroundColor: thumbColor,\n borderRadius: \"6px\",\n opacity: 0.6,\n }\n sxr['&::-webkit-scrollbar-thumb:hover'] = {\n backgroundColor: thumbColor,\n opacity: 0.0,\n }\n }\n\n if (trackColor) {\n sxr['&::-webkit-scrollbar-track'] = {\n backgroundColor: trackColor,\n borderRadius: \"6px\",\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 ...sxr,\n }}\n >\n {children}\n </Tag>\n )\n})\n\nexport default Scrollbar "],"names":[],"mappings":";;;;;;;;AAmBA;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;;;;;AAOI;AACA;;;;;AAKA;AACA;AACA;;;AAGA;AACA;;;;;AAMA;AACA;;;AAIR;AAeJ;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/Scrollbar/index.tsx"],"sourcesContent":["\"use client\";\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 thumbSize?: number;\n thumbColor?: TagProps['color'];\n trackColor?: TagProps['color'];\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, thumbSize, thumbColor, trackColor, ...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 let sxr: any = {}\n\n if (thumbSize) {\n sxr['&::-webkit-scrollbar'] = {\n width: thumbSize,\n height: thumbSize,\n }\n }\n if (thumbColor) {\n sxr['&::-webkit-scrollbar-thumb'] = {\n backgroundColor: thumbColor,\n borderRadius: \"6px\",\n opacity: 0.6,\n }\n sxr['&::-webkit-scrollbar-thumb:hover'] = {\n backgroundColor: thumbColor,\n opacity: 0.0,\n }\n }\n\n if (trackColor) {\n sxr['&::-webkit-scrollbar-track'] = {\n backgroundColor: trackColor,\n borderRadius: \"6px\",\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 ...sxr,\n }}\n >\n {children}\n </Tag>\n )\n})\n\nexport default Scrollbar "],"names":[],"mappings":";;;;;;;;AAkBA;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;;;;;AAOI;AACA;;;;;AAKA;AACA;AACA;;;AAGA;AACA;;;;;AAMA;AACA;;;AAIR;AAeJ;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/Scrollbar/index.tsx"],"sourcesContent":["\"use client\";\n\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 thumbSize?: number;\n thumbColor?: TagProps['color'];\n trackColor?: TagProps['color'];\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, thumbSize, thumbColor, trackColor, ...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 let sxr: any = {}\n\n if (thumbSize) {\n sxr['&::-webkit-scrollbar'] = {\n width: thumbSize,\n height: thumbSize,\n }\n }\n if (thumbColor) {\n sxr['&::-webkit-scrollbar-thumb'] = {\n backgroundColor: thumbColor,\n borderRadius: \"6px\",\n opacity: 0.6,\n }\n sxr['&::-webkit-scrollbar-thumb:hover'] = {\n backgroundColor: thumbColor,\n opacity: 0.0,\n }\n }\n\n if (trackColor) {\n sxr['&::-webkit-scrollbar-track'] = {\n backgroundColor: trackColor,\n borderRadius: \"6px\",\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 ...sxr,\n }}\n >\n {children}\n </Tag>\n )\n})\n\nexport default Scrollbar "],"names":[],"mappings":";;;;;;AAmBA;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;;;;;AAOI;AACA;;;;;AAKA;AACA;AACA;;;AAGA;AACA;;;;;AAMA;AACA;;;AAIR;AAeJ;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/Scrollbar/index.tsx"],"sourcesContent":["\"use client\";\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 thumbSize?: number;\n thumbColor?: TagProps['color'];\n trackColor?: TagProps['color'];\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, thumbSize, thumbColor, trackColor, ...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 let sxr: any = {}\n\n if (thumbSize) {\n sxr['&::-webkit-scrollbar'] = {\n width: thumbSize,\n height: thumbSize,\n }\n }\n if (thumbColor) {\n sxr['&::-webkit-scrollbar-thumb'] = {\n backgroundColor: thumbColor,\n borderRadius: \"6px\",\n opacity: 0.6,\n }\n sxr['&::-webkit-scrollbar-thumb:hover'] = {\n backgroundColor: thumbColor,\n opacity: 0.0,\n }\n }\n\n if (trackColor) {\n sxr['&::-webkit-scrollbar-track'] = {\n backgroundColor: trackColor,\n borderRadius: \"6px\",\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 ...sxr,\n }}\n >\n {children}\n </Tag>\n )\n})\n\nexport default Scrollbar "],"names":[],"mappings":";;;;;;AAkBA;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;;;;;AAOI;AACA;;;;;AAKA;AACA;AACA;;;AAGA;AACA;;;;;AAMA;AACA;;;AAIR;AAeJ;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/Select/index.tsx"],"sourcesContent":["\"use client\";\n\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 { useInterface, useMergeRefs } from '@xanui/core'\n\n\nexport type SelectProps = Omit<InputProps, \"onChange\" | \"value\" | \"children\" | \"slotProps\"> & {\n value?: string | number;\n onChange?: (value: string | number) => void;\n children: ReactElement<OptionProps> | ReactElement<OptionProps>[];\n\n refs?: {\n input?: React.Ref<any>;\n menu?: React.Ref<any>;\n list?: React.Ref<any>;\n };\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, error, helperText, name, refs, ...props }: SelectProps, ref: React.Ref<any>) => {\n let [{ slotProps, color, variant, ...inputProps }] = 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 mergeRefs = useMergeRefs(ref, conRef)\n const toggleMenu = () => setTarget(target ? null : conRef.current)\n\n return (\n <>\n <Input\n ref={mergeRefs}\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 error={error}\n helperText={helperText}\n name={name}\n {...slotProps?.input}\n {...inputProps}\n refs={{\n input: refs?.input,\n ...slotProps?.input?.refs\n }}\n slotProps={{\n rootContainer: {\n cursor: \"pointer\",\n userSelect: \"none\",\n ...(slotProps?.input?.slotProps?.container || {}),\n onClick: () => {\n if (!target) {\n toggleMenu()\n }\n },\n }\n }}\n />\n <Menu\n ref={refs?.menu}\n target={target}\n placement=\"bottom-left\"\n {...slotProps?.menu}\n slotProps={{\n ...slotProps?.menu?.slotProps,\n content: {\n mt: .5,\n ...slotProps?.menu?.content,\n width: conRef && (conRef?.current as any)?.clientWidth,\n }\n }}\n onClickOutside={(e) => {\n if ((conRef.current as any).contains(e.target)) return;\n toggleMenu()\n }}\n >\n <List\n ref={refs?.list}\n {...slotProps?.list}\n color={color}\n variant={variant === \"outline\" ? \"fill\" : variant}\n maxHeight={typeof window === \"undefined\" ? \"auto\" : window?.innerHeight - 50}\n overflow={\"auto\"}\n >\n {childs}\n </List>\n </Menu>\n </>\n )\n})\n\nexport default Select"],"names":[],"mappings":";;;;;;;;;;;;;;AA8BA;;AAAiC;;;;;AAK7B;;;;;AAKQ;AAAc;;AAEV;;;;;;AAMH;AACL;;AAEI;AACA;;AAER;;AAGA;AAEA;AAuBgB;;AAMY;;AAER;AAEP;;;AAiBG;AACJ;AAehB;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/Select/index.tsx"],"sourcesContent":["\"use client\";\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 { useInterface, useMergeRefs } from '@xanui/core'\n\n\nexport type SelectProps = Omit<InputProps, \"onChange\" | \"value\" | \"children\" | \"slotProps\"> & {\n value?: string | number;\n onChange?: (value: string | number) => void;\n children: ReactElement<OptionProps> | ReactElement<OptionProps>[];\n\n refs?: {\n input?: React.Ref<any>;\n menu?: React.Ref<any>;\n list?: React.Ref<any>;\n };\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, error, helperText, name, refs, ...props }: SelectProps, ref: React.Ref<any>) => {\n let [{ slotProps, color, variant, ...inputProps }] = 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 mergeRefs = useMergeRefs(ref, conRef)\n const toggleMenu = () => setTarget(target ? null : conRef.current)\n\n return (\n <>\n <Input\n ref={mergeRefs}\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 error={error}\n helperText={helperText}\n name={name}\n {...slotProps?.input}\n {...inputProps}\n refs={{\n input: refs?.input,\n ...slotProps?.input?.refs\n }}\n slotProps={{\n rootContainer: {\n cursor: \"pointer\",\n userSelect: \"none\",\n ...(slotProps?.input?.slotProps?.container || {}),\n onClick: () => {\n if (!target) {\n toggleMenu()\n }\n },\n }\n }}\n />\n <Menu\n ref={refs?.menu}\n target={target}\n placement=\"bottom-left\"\n {...slotProps?.menu}\n slotProps={{\n ...slotProps?.menu?.slotProps,\n content: {\n mt: .5,\n ...slotProps?.menu?.content,\n width: conRef && (conRef?.current as any)?.clientWidth,\n }\n }}\n onClickOutside={(e) => {\n if ((conRef.current as any).contains(e.target)) return;\n toggleMenu()\n }}\n >\n <List\n ref={refs?.list}\n {...slotProps?.list}\n color={color}\n variant={variant === \"outline\" ? \"fill\" : variant}\n maxHeight={typeof window === \"undefined\" ? \"auto\" : window?.innerHeight - 50}\n overflow={\"auto\"}\n >\n {childs}\n </List>\n </Menu>\n </>\n )\n})\n\nexport default Select"],"names":[],"mappings":";;;;;;;;;;;;;;AA6BA;;AAAiC;;;;;AAK7B;;;;;AAKQ;AAAc;;AAEV;;;;;;AAMH;AACL;;AAEI;AACA;;AAER;;AAGA;AAEA;AAuBgB;;AAMY;;AAER;AAEP;;;AAiBG;AACJ;AAehB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/Select/index.tsx"],"sourcesContent":["\"use client\";\n\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 { useInterface, useMergeRefs } from '@xanui/core'\n\n\nexport type SelectProps = Omit<InputProps, \"onChange\" | \"value\" | \"children\" | \"slotProps\"> & {\n value?: string | number;\n onChange?: (value: string | number) => void;\n children: ReactElement<OptionProps> | ReactElement<OptionProps>[];\n\n refs?: {\n input?: React.Ref<any>;\n menu?: React.Ref<any>;\n list?: React.Ref<any>;\n };\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, error, helperText, name, refs, ...props }: SelectProps, ref: React.Ref<any>) => {\n let [{ slotProps, color, variant, ...inputProps }] = 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 mergeRefs = useMergeRefs(ref, conRef)\n const toggleMenu = () => setTarget(target ? null : conRef.current)\n\n return (\n <>\n <Input\n ref={mergeRefs}\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 error={error}\n helperText={helperText}\n name={name}\n {...slotProps?.input}\n {...inputProps}\n refs={{\n input: refs?.input,\n ...slotProps?.input?.refs\n }}\n slotProps={{\n rootContainer: {\n cursor: \"pointer\",\n userSelect: \"none\",\n ...(slotProps?.input?.slotProps?.container || {}),\n onClick: () => {\n if (!target) {\n toggleMenu()\n }\n },\n }\n }}\n />\n <Menu\n ref={refs?.menu}\n target={target}\n placement=\"bottom-left\"\n {...slotProps?.menu}\n slotProps={{\n ...slotProps?.menu?.slotProps,\n content: {\n mt: .5,\n ...slotProps?.menu?.content,\n width: conRef && (conRef?.current as any)?.clientWidth,\n }\n }}\n onClickOutside={(e) => {\n if ((conRef.current as any).contains(e.target)) return;\n toggleMenu()\n }}\n >\n <List\n ref={refs?.list}\n {...slotProps?.list}\n color={color}\n variant={variant === \"outline\" ? \"fill\" : variant}\n maxHeight={typeof window === \"undefined\" ? \"auto\" : window?.innerHeight - 50}\n overflow={\"auto\"}\n >\n {childs}\n </List>\n </Menu>\n </>\n )\n})\n\nexport default Select"],"names":[],"mappings":";;;;;;;;;;;;AA8BA;;AAAiC;;;;;AAK7B;;;;;AAKQ;AAAc;;AAEV;;;;;;AAMH;AACL;;AAEI;AACA;;AAER;;AAGA;AAEA;AAuBgB;;AAMY;;AAER;AAEP;;;AAiBG;AACJ;AAehB;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/Select/index.tsx"],"sourcesContent":["\"use client\";\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 { useInterface, useMergeRefs } from '@xanui/core'\n\n\nexport type SelectProps = Omit<InputProps, \"onChange\" | \"value\" | \"children\" | \"slotProps\"> & {\n value?: string | number;\n onChange?: (value: string | number) => void;\n children: ReactElement<OptionProps> | ReactElement<OptionProps>[];\n\n refs?: {\n input?: React.Ref<any>;\n menu?: React.Ref<any>;\n list?: React.Ref<any>;\n };\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, error, helperText, name, refs, ...props }: SelectProps, ref: React.Ref<any>) => {\n let [{ slotProps, color, variant, ...inputProps }] = 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 mergeRefs = useMergeRefs(ref, conRef)\n const toggleMenu = () => setTarget(target ? null : conRef.current)\n\n return (\n <>\n <Input\n ref={mergeRefs}\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 error={error}\n helperText={helperText}\n name={name}\n {...slotProps?.input}\n {...inputProps}\n refs={{\n input: refs?.input,\n ...slotProps?.input?.refs\n }}\n slotProps={{\n rootContainer: {\n cursor: \"pointer\",\n userSelect: \"none\",\n ...(slotProps?.input?.slotProps?.container || {}),\n onClick: () => {\n if (!target) {\n toggleMenu()\n }\n },\n }\n }}\n />\n <Menu\n ref={refs?.menu}\n target={target}\n placement=\"bottom-left\"\n {...slotProps?.menu}\n slotProps={{\n ...slotProps?.menu?.slotProps,\n content: {\n mt: .5,\n ...slotProps?.menu?.content,\n width: conRef && (conRef?.current as any)?.clientWidth,\n }\n }}\n onClickOutside={(e) => {\n if ((conRef.current as any).contains(e.target)) return;\n toggleMenu()\n }}\n >\n <List\n ref={refs?.list}\n {...slotProps?.list}\n color={color}\n variant={variant === \"outline\" ? \"fill\" : variant}\n maxHeight={typeof window === \"undefined\" ? \"auto\" : window?.innerHeight - 50}\n overflow={\"auto\"}\n >\n {childs}\n </List>\n </Menu>\n </>\n )\n})\n\nexport default Select"],"names":[],"mappings":";;;;;;;;;;;;AA6BA;;AAAiC;;;;;AAK7B;;;;;AAKQ;AAAc;;AAEV;;;;;;AAMH;AACL;;AAEI;AACA;;AAER;;AAGA;AAEA;AAuBgB;;AAMY;;AAER;AAEP;;;AAiBG;AACJ;AAehB;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tslib = require('tslib');
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/Skeleton/index.tsx"],"sourcesContent":["import React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type SkeletonProps<T extends TagComponentType = \"div\"> = TagProps<T> & {\n animation?: 'pulse' | 'wave' | 'none';\n loading?: boolean;\n}\n\nconst Skeleton = React.forwardRef(<T extends TagComponentType = \"div\">({ children, loading, color, animation, ...props }: SkeletonProps<T>, ref: React.Ref<any>) => {\n\n if (!children) loading = true\n\n if (loading) {\n animation ??= 'pulse'\n color ??= \"default\"\n let sxr: any = {}\n switch (animation) {\n case 'pulse':\n sxr = {\n bgcolor: \"divider.primary\",\n width: \"100%\",\n animation: 'skpulse 1.5s infinite',\n \"@keyframes skpulse\": {\n '0%, 100%': {\n opacity: 1,\n },\n '50%': {\n opacity: 0.4,\n },\n }\n }\n break;\n case 'wave':\n sxr = {\n position: 'relative',\n overflow: 'hidden',\n bgcolor: \"divider.primary\",\n \"&::after\": {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n left: \"0%\",\n width: '100%',\n height: '100%',\n animation: 'skwave 2s infinite',\n background: `linear-gradient(90deg, transparent 0%, var(--color-divider-secondary) 50%, transparent 100%)`,\n },\n \"@keyframes skwave\": {\n '0%': { left: '-100%' },\n '100%': { left: '100%' }\n }\n }\n break;\n }\n return (\n <Tag\n {...props}\n baseClass='skeleton'\n ref={ref}\n sxr={sxr}\n />\n )\n }\n\n return children\n})\n\nexport default Skeleton\n\n"],"names":["__rest","_jsx","Tag"],"mappings":";;;;;;;AAQA,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,CAAqC,EAAmE,EAAE,GAAmB,KAAI;AAA5F,IAAA,IAAA,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAA,GAAA,EAA8B,EAAzB,KAAK,GAAAA,YAAA,CAAA,EAAA,EAA/C,CAAA,UAAA,EAAA,SAAA,EAAA,OAAA,EAAA,WAAA,CAAiD,CAAF;AAEnH,IAAA,IAAI,CAAC,QAAQ;QAAE,OAAO,GAAG,IAAI;IAE7B,IAAI,OAAO,EAAE;QACV,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAT,SAAS,IAAT,SAAS,GAAK,OAAO,CAAA;QACrB,KAAK,KAAA,IAAA,IAAL,KAAK,KAAA,MAAA,GAAL,KAAK,IAAL,KAAK,GAAK,SAAS,CAAA;QACnB,IAAI,GAAG,GAAQ,EAAE;QACjB,QAAQ,SAAS;AACd,YAAA,KAAK,OAAO;AACT,gBAAA,GAAG,GAAG;AACH,oBAAA,OAAO,EAAE,iBAAiB;AAC1B,oBAAA,KAAK,EAAE,MAAM;AACb,oBAAA,SAAS,EAAE,uBAAuB;AAClC,oBAAA,oBAAoB,EAAE;AACnB,wBAAA,UAAU,EAAE;AACT,4BAAA,OAAO,EAAE,CAAC;AACZ,yBAAA;AACD,wBAAA,KAAK,EAAE;AACJ,4BAAA,OAAO,EAAE,GAAG;AACd,yBAAA;AACH;iBACH;gBACD;AACH,YAAA,KAAK,MAAM;AACR,gBAAA,GAAG,GAAG;AACH,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,iBAAiB;AAC1B,oBAAA,UAAU,EAAE;AACT,wBAAA,OAAO,EAAE,IAAI;AACb,wBAAA,QAAQ,EAAE,UAAU;AACpB,wBAAA,GAAG,EAAE,CAAC;AACN,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,KAAK,EAAE,MAAM;AACb,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,SAAS,EAAE,oBAAoB;AAC/B,wBAAA,UAAU,EAAE,CAAA,4FAAA,CAA8F;AAC5G,qBAAA;AACD,oBAAA,mBAAmB,EAAE;AAClB,wBAAA,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AACvB,wBAAA,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM;AACxB;iBACH;gBACD;;AAEN,QAAA,QACGC,cAAA,CAACC,QAAG,oBACG,KAAK,EAAA,EACT,SAAS,EAAC,UAAU,EACpB,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EAAA,CAAA,CACT;IAER;AAEA,IAAA,OAAO,QAAQ;AAClB,CAAC;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/Skeleton/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type SkeletonProps<T extends TagComponentType = \"div\"> = TagProps<T> & {\n animation?: 'pulse' | 'wave' | 'none';\n loading?: boolean;\n}\n\nconst Skeleton = React.forwardRef(<T extends TagComponentType = \"div\">({ children, loading, color, animation, ...props }: SkeletonProps<T>, ref: React.Ref<any>) => {\n\n if (!children) loading = true\n\n if (loading) {\n animation ??= 'pulse'\n color ??= \"default\"\n let sxr: any = {}\n switch (animation) {\n case 'pulse':\n sxr = {\n bgcolor: \"divider.primary\",\n width: \"100%\",\n animation: 'skpulse 1.5s infinite',\n \"@keyframes skpulse\": {\n '0%, 100%': {\n opacity: 1,\n },\n '50%': {\n opacity: 0.4,\n },\n }\n }\n break;\n case 'wave':\n sxr = {\n position: 'relative',\n overflow: 'hidden',\n bgcolor: \"divider.primary\",\n \"&::after\": {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n left: \"0%\",\n width: '100%',\n height: '100%',\n animation: 'skwave 2s infinite',\n background: `linear-gradient(90deg, transparent 0%, var(--color-divider-secondary) 50%, transparent 100%)`,\n },\n \"@keyframes skwave\": {\n '0%': { left: '-100%' },\n '100%': { left: '100%' }\n }\n }\n break;\n }\n return (\n <Tag\n {...props}\n baseClass='skeleton'\n ref={ref}\n sxr={sxr}\n />\n )\n }\n\n return children\n})\n\nexport default Skeleton\n\n"],"names":[],"mappings":";;;;;;;;AASA;AAAuE;AAEpE;;;;;;;AAOM;AACG;AACG;AACA;AACA;AACA;AACG;AACG;AACF;AACD;AACG;AACF;AACH;;;AAGP;AACG;AACG;AACA;AACA;AACA;AACG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF;AACD;AACG;AACA;AACF;;;;AAIV;;AAUH;AACH;;"}
package/Skeleton/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { __rest } from 'tslib';
2
3
  import { jsx } from 'react/jsx-runtime';
3
4
  import React from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/Skeleton/index.tsx"],"sourcesContent":["import React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type SkeletonProps<T extends TagComponentType = \"div\"> = TagProps<T> & {\n animation?: 'pulse' | 'wave' | 'none';\n loading?: boolean;\n}\n\nconst Skeleton = React.forwardRef(<T extends TagComponentType = \"div\">({ children, loading, color, animation, ...props }: SkeletonProps<T>, ref: React.Ref<any>) => {\n\n if (!children) loading = true\n\n if (loading) {\n animation ??= 'pulse'\n color ??= \"default\"\n let sxr: any = {}\n switch (animation) {\n case 'pulse':\n sxr = {\n bgcolor: \"divider.primary\",\n width: \"100%\",\n animation: 'skpulse 1.5s infinite',\n \"@keyframes skpulse\": {\n '0%, 100%': {\n opacity: 1,\n },\n '50%': {\n opacity: 0.4,\n },\n }\n }\n break;\n case 'wave':\n sxr = {\n position: 'relative',\n overflow: 'hidden',\n bgcolor: \"divider.primary\",\n \"&::after\": {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n left: \"0%\",\n width: '100%',\n height: '100%',\n animation: 'skwave 2s infinite',\n background: `linear-gradient(90deg, transparent 0%, var(--color-divider-secondary) 50%, transparent 100%)`,\n },\n \"@keyframes skwave\": {\n '0%': { left: '-100%' },\n '100%': { left: '100%' }\n }\n }\n break;\n }\n return (\n <Tag\n {...props}\n baseClass='skeleton'\n ref={ref}\n sxr={sxr}\n />\n )\n }\n\n return children\n})\n\nexport default Skeleton\n\n"],"names":["_jsx"],"mappings":";;;;;AAQA,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,CAAqC,EAAmE,EAAE,GAAmB,KAAI;AAA5F,IAAA,IAAA,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAA,GAAA,EAA8B,EAAzB,KAAK,GAAA,MAAA,CAAA,EAAA,EAA/C,CAAA,UAAA,EAAA,SAAA,EAAA,OAAA,EAAA,WAAA,CAAiD,CAAF;AAEnH,IAAA,IAAI,CAAC,QAAQ;QAAE,OAAO,GAAG,IAAI;IAE7B,IAAI,OAAO,EAAE;QACV,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAT,SAAS,IAAT,SAAS,GAAK,OAAO,CAAA;QACrB,KAAK,KAAA,IAAA,IAAL,KAAK,KAAA,MAAA,GAAL,KAAK,IAAL,KAAK,GAAK,SAAS,CAAA;QACnB,IAAI,GAAG,GAAQ,EAAE;QACjB,QAAQ,SAAS;AACd,YAAA,KAAK,OAAO;AACT,gBAAA,GAAG,GAAG;AACH,oBAAA,OAAO,EAAE,iBAAiB;AAC1B,oBAAA,KAAK,EAAE,MAAM;AACb,oBAAA,SAAS,EAAE,uBAAuB;AAClC,oBAAA,oBAAoB,EAAE;AACnB,wBAAA,UAAU,EAAE;AACT,4BAAA,OAAO,EAAE,CAAC;AACZ,yBAAA;AACD,wBAAA,KAAK,EAAE;AACJ,4BAAA,OAAO,EAAE,GAAG;AACd,yBAAA;AACH;iBACH;gBACD;AACH,YAAA,KAAK,MAAM;AACR,gBAAA,GAAG,GAAG;AACH,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE,QAAQ;AAClB,oBAAA,OAAO,EAAE,iBAAiB;AAC1B,oBAAA,UAAU,EAAE;AACT,wBAAA,OAAO,EAAE,IAAI;AACb,wBAAA,QAAQ,EAAE,UAAU;AACpB,wBAAA,GAAG,EAAE,CAAC;AACN,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,KAAK,EAAE,MAAM;AACb,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,SAAS,EAAE,oBAAoB;AAC/B,wBAAA,UAAU,EAAE,CAAA,4FAAA,CAA8F;AAC5G,qBAAA;AACD,oBAAA,mBAAmB,EAAE;AAClB,wBAAA,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AACvB,wBAAA,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM;AACxB;iBACH;gBACD;;AAEN,QAAA,QACGA,GAAA,CAAC,GAAG,oBACG,KAAK,EAAA,EACT,SAAS,EAAC,UAAU,EACpB,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EAAA,CAAA,CACT;IAER;AAEA,IAAA,OAAO,QAAQ;AAClB,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/Skeleton/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type SkeletonProps<T extends TagComponentType = \"div\"> = TagProps<T> & {\n animation?: 'pulse' | 'wave' | 'none';\n loading?: boolean;\n}\n\nconst Skeleton = React.forwardRef(<T extends TagComponentType = \"div\">({ children, loading, color, animation, ...props }: SkeletonProps<T>, ref: React.Ref<any>) => {\n\n if (!children) loading = true\n\n if (loading) {\n animation ??= 'pulse'\n color ??= \"default\"\n let sxr: any = {}\n switch (animation) {\n case 'pulse':\n sxr = {\n bgcolor: \"divider.primary\",\n width: \"100%\",\n animation: 'skpulse 1.5s infinite',\n \"@keyframes skpulse\": {\n '0%, 100%': {\n opacity: 1,\n },\n '50%': {\n opacity: 0.4,\n },\n }\n }\n break;\n case 'wave':\n sxr = {\n position: 'relative',\n overflow: 'hidden',\n bgcolor: \"divider.primary\",\n \"&::after\": {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n left: \"0%\",\n width: '100%',\n height: '100%',\n animation: 'skwave 2s infinite',\n background: `linear-gradient(90deg, transparent 0%, var(--color-divider-secondary) 50%, transparent 100%)`,\n },\n \"@keyframes skwave\": {\n '0%': { left: '-100%' },\n '100%': { left: '100%' }\n }\n }\n break;\n }\n return (\n <Tag\n {...props}\n baseClass='skeleton'\n ref={ref}\n sxr={sxr}\n />\n )\n }\n\n return children\n})\n\nexport default Skeleton\n\n"],"names":[],"mappings":";;;;;;AASA;AAAuE;AAEpE;;;;;;;AAOM;AACG;AACG;AACA;AACA;AACA;AACG;AACG;AACF;AACD;AACG;AACF;AACH;;;AAGP;AACG;AACG;AACA;AACA;AACA;AACG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF;AACD;AACG;AACA;AACF;;;;AAIV;;AAUH;AACH;;"}
package/Stack/index.cjs CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tslib = require('tslib');
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","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":";;;;;;;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;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/Stack/index.tsx"],"sourcesContent":["\"use client\"\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":[],"mappings":";;;;;;;;AAMA;AAAoE;AAChE;AAIY;AACA;;AAMhB;;"}
package/Stack/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { __rest } from 'tslib';
2
3
  import { jsx } from 'react/jsx-runtime';
3
4
  import React from 'react';
@@ -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":["_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;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/Stack/index.tsx"],"sourcesContent":["\"use client\"\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":[],"mappings":";;;;;;AAMA;AAAoE;AAChE;AAIY;AACA;;AAMhB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\"use client\";\n\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":[],"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;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\"use client\";\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":[],"mappings":";;;;;;;;AAkBA;;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;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\"use client\";\n\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":[],"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;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/Switch/index.tsx"],"sourcesContent":["\"use client\";\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":[],"mappings":";;;;;;AAkBA;;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.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/Tab/index.tsx"],"sourcesContent":["\"use client\";\n\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":[],"mappings":";;;;;;;;;AAUA;AAAkE;AAC9D;AACA;AASJ;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/Tab/index.tsx"],"sourcesContent":["\"use client\";\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":[],"mappings":";;;;;;;;;AASA;AAAkE;AAC9D;AACA;AASJ;;"}
package/Tab/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/Tab/index.tsx"],"sourcesContent":["\"use client\";\n\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":[],"mappings":";;;;;;;AAUA;AAAkE;AAC9D;AACA;AASJ;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/Tab/index.tsx"],"sourcesContent":["\"use client\";\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":[],"mappings":";;;;;;;AASA;AAAkE;AAC9D;AACA;AASJ;;"}
package/Table/index.cjs CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tslib = require('tslib');
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","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: .4,\n medium: .8,\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\" ? \"text\" : \"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 px: 1,\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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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/Table/index.tsx"],"sourcesContent":["\"use client\"\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: .4,\n medium: .8,\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\" ? \"text\" : \"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 px: 1,\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":[],"mappings":";;;;;;;;;AAcA;;AAAsE;;;AAGlE;AAAe;AACf;AAAU;AACV;AAAW;AACX;AAAa;AACb;AAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;;;;;AAOI;AACI;AACI;AACH;;;AAGT;AACI;AAGQ;AACH;AAEG;AACH;AAEG;AACH;AAEG;AACH;;;AAIT;AACI;AACA;AACA;;;AAIA;;AAEJ;AACI;AACI;AACA;AACH;AACD;AACI;AACA;AACH;AACD;;AAGJ;AAGY;AACH;AAUW;AACA;AACI;AACH;AACJ;AAOG;AACH;AAEG;AACH;AAEG;;AAUxB;;"}
package/Table/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { __rest } from 'tslib';
2
3
  import { jsx } from 'react/jsx-runtime';
3
4
  import React from 'react';
@@ -1 +1 @@
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: .4,\n medium: .8,\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\" ? \"text\" : \"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 px: 1,\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
+ {"version":3,"file":"index.js","sources":["../../src/Table/index.tsx"],"sourcesContent":["\"use client\"\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: .4,\n medium: .8,\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\" ? \"text\" : \"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 px: 1,\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":[],"mappings":";;;;;;;AAcA;;AAAsE;;;AAGlE;AAAe;AACf;AAAU;AACV;AAAW;AACX;AAAa;AACb;AAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;;;;;AAOI;AACI;AACI;AACH;;;AAGT;AACI;AAGQ;AACH;AAEG;AACH;AAEG;AACH;AAEG;AACH;;;AAIT;AACI;AACA;AACA;;;AAIA;;AAEJ;AACI;AACI;AACA;AACH;AACD;AACI;AACA;AACH;AACD;;AAGJ;AAGY;AACH;AAUW;AACA;AACI;AACH;AACJ;AAOG;AACH;AAEG;AACH;AAEG;;AAUxB;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tslib = require('tslib');
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/TableBody/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableBodyProps<T extends TagComponentType = \"tbody\"> = TagProps<T>\n\nconst TableBody = React.forwardRef(<T extends TagComponentType = \"tbody\">({ children, ...rest }: TableBodyProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-body'\n component=\"tbody\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableBody"],"names":["__rest","_jsx","Tag"],"mappings":";;;;;;;AAMA,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAuC,EAAwC,EAAE,GAAmB,KAAI;AAAjE,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAA8B,EAAzB,IAAI,GAAAA,YAAA,CAAA,EAAA,EAAnB,YAAqB,CAAF;IACzF,QACIC,eAACC,QAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,IAAI,EAAA,EACR,SAAS,EAAC,YAAY,EACtB,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,GAAG,EAAA,QAAA,EACV,QAAQ,EAAA,CAAA,CAAO;AAEzB,CAAC;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/TableBody/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableBodyProps<T extends TagComponentType = \"tbody\"> = TagProps<T>\n\nconst TableBody = React.forwardRef(<T extends TagComponentType = \"tbody\">({ children, ...rest }: TableBodyProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-body'\n component=\"tbody\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableBody"],"names":[],"mappings":";;;;;;;;AAMA;AAA0E;;AAS1E;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { __rest } from 'tslib';
2
3
  import { jsx } from 'react/jsx-runtime';
3
4
  import React from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/TableBody/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableBodyProps<T extends TagComponentType = \"tbody\"> = TagProps<T>\n\nconst TableBody = React.forwardRef(<T extends TagComponentType = \"tbody\">({ children, ...rest }: TableBodyProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-body'\n component=\"tbody\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableBody"],"names":["_jsx"],"mappings":";;;;;AAMA,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAuC,EAAwC,EAAE,GAAmB,KAAI;AAAjE,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAA8B,EAAzB,IAAI,GAAA,MAAA,CAAA,EAAA,EAAnB,YAAqB,CAAF;IACzF,QACIA,IAAC,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,IAAI,EAAA,EACR,SAAS,EAAC,YAAY,EACtB,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,GAAG,EAAA,QAAA,EACV,QAAQ,EAAA,CAAA,CAAO;AAEzB,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/TableBody/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableBodyProps<T extends TagComponentType = \"tbody\"> = TagProps<T>\n\nconst TableBody = React.forwardRef(<T extends TagComponentType = \"tbody\">({ children, ...rest }: TableBodyProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-body'\n component=\"tbody\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableBody"],"names":[],"mappings":";;;;;;AAMA;AAA0E;;AAS1E;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tslib = require('tslib');
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/TableCell/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableColumnProps<T extends TagComponentType = \"td\"> = TagProps<T> & {\n th?: boolean\n}\n\nconst TableCell = React.forwardRef(<T extends TagComponentType = \"td\">({ children, th, ...rest }: TableColumnProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n sxr={{\n verticalAlign: \"inherit\",\n textAlign: \"left\",\n fontSize: \"inherit\",\n color: \"text.primary\",\n ...((rest as any)?.sx || {})\n }}\n baseClass='table-cell'\n component={th ? \"th\" : \"td\"} ref={ref}\n >\n {children}\n </Tag>\n )\n})\n\nexport default TableCell"],"names":["__rest","_jsx","Tag"],"mappings":";;;;;;;AAQA,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAoC,EAA8C,EAAE,GAAmB,KAAI;QAAvE,EAAE,QAAQ,EAAE,EAAE,EAAA,GAAA,EAAgC,EAA3B,IAAI,GAAAA,YAAA,CAAA,EAAA,EAAvB,kBAAyB,CAAF;AAC1F,IAAA,QACIC,cAAA,CAACC,QAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,IAAI,EAAA,EACR,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EACC,aAAa,EAAE,SAAS,EACxB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,cAAc,EAAA,GACjB,CAAC,IAAY,KAAA,IAAA,IAAZ,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJ,IAAI,CAAU,EAAE,KAAI,EAAE,EAAC,EAEhC,SAAS,EAAC,YAAY,EACtB,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,EAAA,QAAA,EAEpC,QAAQ,EAAA,CAAA,CACP;AAEd,CAAC;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/TableCell/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableColumnProps<T extends TagComponentType = \"td\"> = TagProps<T> & {\n th?: boolean\n}\n\nconst TableCell = React.forwardRef(<T extends TagComponentType = \"td\">({ children, th, ...rest }: TableColumnProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n sxr={{\n verticalAlign: \"inherit\",\n textAlign: \"left\",\n fontSize: \"inherit\",\n color: \"text.primary\",\n ...((rest as any)?.sx || {})\n }}\n baseClass='table-cell'\n component={th ? \"th\" : \"td\"} ref={ref}\n >\n {children}\n </Tag>\n )\n})\n\nexport default TableCell"],"names":[],"mappings":";;;;;;;;AAQA;;AACI;AAgBJ;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { __rest } from 'tslib';
2
3
  import { jsx } from 'react/jsx-runtime';
3
4
  import React from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/TableCell/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableColumnProps<T extends TagComponentType = \"td\"> = TagProps<T> & {\n th?: boolean\n}\n\nconst TableCell = React.forwardRef(<T extends TagComponentType = \"td\">({ children, th, ...rest }: TableColumnProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n sxr={{\n verticalAlign: \"inherit\",\n textAlign: \"left\",\n fontSize: \"inherit\",\n color: \"text.primary\",\n ...((rest as any)?.sx || {})\n }}\n baseClass='table-cell'\n component={th ? \"th\" : \"td\"} ref={ref}\n >\n {children}\n </Tag>\n )\n})\n\nexport default TableCell"],"names":["_jsx"],"mappings":";;;;;AAQA,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAoC,EAA8C,EAAE,GAAmB,KAAI;QAAvE,EAAE,QAAQ,EAAE,EAAE,EAAA,GAAA,EAAgC,EAA3B,IAAI,GAAA,MAAA,CAAA,EAAA,EAAvB,kBAAyB,CAAF;AAC1F,IAAA,QACIA,GAAA,CAAC,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,IAAI,EAAA,EACR,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EACC,aAAa,EAAE,SAAS,EACxB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,cAAc,EAAA,GACjB,CAAC,IAAY,KAAA,IAAA,IAAZ,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJ,IAAI,CAAU,EAAE,KAAI,EAAE,EAAC,EAEhC,SAAS,EAAC,YAAY,EACtB,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,EAAA,QAAA,EAEpC,QAAQ,EAAA,CAAA,CACP;AAEd,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/TableCell/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableColumnProps<T extends TagComponentType = \"td\"> = TagProps<T> & {\n th?: boolean\n}\n\nconst TableCell = React.forwardRef(<T extends TagComponentType = \"td\">({ children, th, ...rest }: TableColumnProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n sxr={{\n verticalAlign: \"inherit\",\n textAlign: \"left\",\n fontSize: \"inherit\",\n color: \"text.primary\",\n ...((rest as any)?.sx || {})\n }}\n baseClass='table-cell'\n component={th ? \"th\" : \"td\"} ref={ref}\n >\n {children}\n </Tag>\n )\n})\n\nexport default TableCell"],"names":[],"mappings":";;;;;;AAQA;;AACI;AAgBJ;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tslib = require('tslib');
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/TableFooter/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableFooterProps<T extends TagComponentType = \"tfoot\"> = TagProps<T>\n\nconst TableFooter = React.forwardRef(<T extends TagComponentType = \"tfoot\">({ children, ...rest }: TableFooterProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-footer'\n component=\"tfoot\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableFooter"],"names":["__rest","_jsx","Tag"],"mappings":";;;;;;;AAMA,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,CAAuC,EAA0C,EAAE,GAAmB,KAAI;AAAnE,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAAgC,EAA3B,IAAI,GAAAA,YAAA,CAAA,EAAA,EAAnB,YAAqB,CAAF;IAC3F,QACIC,eAACC,QAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,IAAI,EAAA,EACR,SAAS,EAAC,cAAc,EACxB,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,GAAG,EAAA,QAAA,EACV,QAAQ,EAAA,CAAA,CAAO;AAEzB,CAAC;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/TableFooter/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableFooterProps<T extends TagComponentType = \"tfoot\"> = TagProps<T>\n\nconst TableFooter = React.forwardRef(<T extends TagComponentType = \"tfoot\">({ children, ...rest }: TableFooterProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-footer'\n component=\"tfoot\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableFooter"],"names":[],"mappings":";;;;;;;;AAMA;AAA4E;;AAS5E;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { __rest } from 'tslib';
2
3
  import { jsx } from 'react/jsx-runtime';
3
4
  import React from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/TableFooter/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableFooterProps<T extends TagComponentType = \"tfoot\"> = TagProps<T>\n\nconst TableFooter = React.forwardRef(<T extends TagComponentType = \"tfoot\">({ children, ...rest }: TableFooterProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-footer'\n component=\"tfoot\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableFooter"],"names":["_jsx"],"mappings":";;;;;AAMA,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,CAAuC,EAA0C,EAAE,GAAmB,KAAI;AAAnE,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAAgC,EAA3B,IAAI,GAAA,MAAA,CAAA,EAAA,EAAnB,YAAqB,CAAF;IAC3F,QACIA,IAAC,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,IAAI,EAAA,EACR,SAAS,EAAC,cAAc,EACxB,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,GAAG,EAAA,QAAA,EACV,QAAQ,EAAA,CAAA,CAAO;AAEzB,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/TableFooter/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableFooterProps<T extends TagComponentType = \"tfoot\"> = TagProps<T>\n\nconst TableFooter = React.forwardRef(<T extends TagComponentType = \"tfoot\">({ children, ...rest }: TableFooterProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-footer'\n component=\"tfoot\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableFooter"],"names":[],"mappings":";;;;;;AAMA;AAA4E;;AAS5E;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tslib = require('tslib');
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/TableHead/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableHeadProps<T extends TagComponentType = \"thead\"> = TagProps<T>\n\nconst TableHead = React.forwardRef(<T extends TagComponentType = \"thead\">({ children, ...rest }: TableHeadProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-head'\n component=\"thead\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableHead "],"names":["__rest","_jsx","Tag"],"mappings":";;;;;;;AAMA,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAuC,EAAwC,EAAE,GAAmB,KAAI;AAAjE,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAA8B,EAAzB,IAAI,GAAAA,YAAA,CAAA,EAAA,EAAnB,YAAqB,CAAF;IACzF,QACIC,eAACC,QAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,IAAI,EAAA,EACR,SAAS,EAAC,YAAY,EACtB,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,GAAG,EAAA,QAAA,EACV,QAAQ,EAAA,CAAA,CAAO;AAEzB,CAAC;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/TableHead/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableHeadProps<T extends TagComponentType = \"thead\"> = TagProps<T>\n\nconst TableHead = React.forwardRef(<T extends TagComponentType = \"thead\">({ children, ...rest }: TableHeadProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-head'\n component=\"thead\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableHead "],"names":[],"mappings":";;;;;;;;AAMA;AAA0E;;AAS1E;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { __rest } from 'tslib';
2
3
  import { jsx } from 'react/jsx-runtime';
3
4
  import React from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/TableHead/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableHeadProps<T extends TagComponentType = \"thead\"> = TagProps<T>\n\nconst TableHead = React.forwardRef(<T extends TagComponentType = \"thead\">({ children, ...rest }: TableHeadProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-head'\n component=\"thead\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableHead "],"names":["_jsx"],"mappings":";;;;;AAMA,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAuC,EAAwC,EAAE,GAAmB,KAAI;AAAjE,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAA8B,EAAzB,IAAI,GAAA,MAAA,CAAA,EAAA,EAAnB,YAAqB,CAAF;IACzF,QACIA,IAAC,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,IAAI,EAAA,EACR,SAAS,EAAC,YAAY,EACtB,SAAS,EAAC,OAAO,EACjB,GAAG,EAAE,GAAG,EAAA,QAAA,EACV,QAAQ,EAAA,CAAA,CAAO;AAEzB,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/TableHead/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableHeadProps<T extends TagComponentType = \"thead\"> = TagProps<T>\n\nconst TableHead = React.forwardRef(<T extends TagComponentType = \"thead\">({ children, ...rest }: TableHeadProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n {...rest}\n baseClass='table-head'\n component=\"thead\"\n ref={ref}\n >{children}</Tag>\n )\n})\n\nexport default TableHead "],"names":[],"mappings":";;;;;;AAMA;AAA0E;;AAS1E;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/TablePagination/index.tsx"],"sourcesContent":["\"use client\";\n\nimport Text from '../Text'\nimport Select, { SelectProps } from '../Select'\nimport Option from '../Option'\nimport IconButton, { IconButtonProps } from '../IconButton'\nimport React, { useMemo } 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 TablePaginationState = { page: number, perpage: number, from: number, to: number }\nexport type TablePaginationProps = Omit<TagProps, \"children\" | \"onChange\"> & {\n page: number;\n total: number;\n perpage?: number;\n perpages?: number[];\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<UseColorTemplateType>;\n onChange?: (state: TablePaginationState) => void;\n\n slotProps?: {\n button?: Omit<IconButtonProps, \"children\" | \"color\" | \"variant\">;\n select?: Omit<SelectProps, \"value\" | \"onChange\" | \"children\">;\n }\n}\n\nconst TablePagination = React.forwardRef(({ page, total, perpage, 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 perpage = perpage || perpages[0] as number\n const isPerpage = perpages[0] && perpages.length >= 1\n\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, perpages, total])\n\n if (!chunks.length) {\n return <></>\n }\n\n const current = chunks[page] || chunks[1]\n const hasNext = !!chunks[page + 1]\n const hasPrev = !!chunks[page - 1]\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 width={(perpage.toString().length * 10) + 60}\n minWidth={\"auto\"}\n maxWidth={\"auto\"}\n value={perpage}\n onChange={(value: any) => {\n onChange && onChange({ page: 1, perpage: value, from: 1, to: Math.min(value, total) })\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 size={30}\n disabled={!hasPrev}\n onClick={() => {\n onChange && onChange(chunks[page - 1]);\n }}\n >\n <PrevIcon />\n </IconButton>\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n size={30}\n disabled={!hasNext}\n onClick={() => {\n onChange && onChange(chunks[page + 1]);\n }}\n >\n <NextIcon />\n </IconButton>\n </Tag>\n </Tag>\n )\n})\n\nexport default TablePagination"],"names":[],"mappings":";;;;;;;;;;;;;;AA4BA;AAA0C;;;;AAItC;AACA;AACA;AAGA;;;AAGI;AACI;AACA;AACA;;AAEJ;;AAGJ;AACI;;;;;AAOJ;AAIY;AACA;AACA;AACA;AACH;AAce;AACJ;AAQJ;AACA;AACA;AACA;AACH;;AAeG;;;AAmBpB;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/TablePagination/index.tsx"],"sourcesContent":["\"use client\";\nimport Text from '../Text'\nimport Select, { SelectProps } from '../Select'\nimport Option from '../Option'\nimport IconButton, { IconButtonProps } from '../IconButton'\nimport React, { useMemo } 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 TablePaginationState = { page: number, perpage: number, from: number, to: number }\nexport type TablePaginationProps = Omit<TagProps, \"children\" | \"onChange\"> & {\n page: number;\n total: number;\n perpage?: number;\n perpages?: number[];\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<UseColorTemplateType>;\n onChange?: (state: TablePaginationState) => void;\n\n slotProps?: {\n button?: Omit<IconButtonProps, \"children\" | \"color\" | \"variant\">;\n select?: Omit<SelectProps, \"value\" | \"onChange\" | \"children\">;\n }\n}\n\nconst TablePagination = React.forwardRef(({ page, total, perpage, 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 perpage = perpage || perpages[0] as number\n const isPerpage = perpages[0] && perpages.length >= 1\n\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, perpages, total])\n\n if (!chunks.length) {\n return <></>\n }\n\n const current = chunks[page] || chunks[1]\n const hasNext = !!chunks[page + 1]\n const hasPrev = !!chunks[page - 1]\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 width={(perpage.toString().length * 10) + 60}\n minWidth={\"auto\"}\n maxWidth={\"auto\"}\n value={perpage}\n onChange={(value: any) => {\n onChange && onChange({ page: 1, perpage: value, from: 1, to: Math.min(value, total) })\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 size={30}\n disabled={!hasPrev}\n onClick={() => {\n onChange && onChange(chunks[page - 1]);\n }}\n >\n <PrevIcon />\n </IconButton>\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n size={30}\n disabled={!hasNext}\n onClick={() => {\n onChange && onChange(chunks[page + 1]);\n }}\n >\n <NextIcon />\n </IconButton>\n </Tag>\n </Tag>\n )\n})\n\nexport default TablePagination"],"names":[],"mappings":";;;;;;;;;;;;;;AA2BA;AAA0C;;;;AAItC;AACA;AACA;AAGA;;;AAGI;AACI;AACA;AACA;;AAEJ;;AAGJ;AACI;;;;;AAOJ;AAIY;AACA;AACA;AACA;AACH;AAce;AACJ;AAQJ;AACA;AACA;AACA;AACH;;AAeG;;;AAmBpB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/TablePagination/index.tsx"],"sourcesContent":["\"use client\";\n\nimport Text from '../Text'\nimport Select, { SelectProps } from '../Select'\nimport Option from '../Option'\nimport IconButton, { IconButtonProps } from '../IconButton'\nimport React, { useMemo } 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 TablePaginationState = { page: number, perpage: number, from: number, to: number }\nexport type TablePaginationProps = Omit<TagProps, \"children\" | \"onChange\"> & {\n page: number;\n total: number;\n perpage?: number;\n perpages?: number[];\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<UseColorTemplateType>;\n onChange?: (state: TablePaginationState) => void;\n\n slotProps?: {\n button?: Omit<IconButtonProps, \"children\" | \"color\" | \"variant\">;\n select?: Omit<SelectProps, \"value\" | \"onChange\" | \"children\">;\n }\n}\n\nconst TablePagination = React.forwardRef(({ page, total, perpage, 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 perpage = perpage || perpages[0] as number\n const isPerpage = perpages[0] && perpages.length >= 1\n\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, perpages, total])\n\n if (!chunks.length) {\n return <></>\n }\n\n const current = chunks[page] || chunks[1]\n const hasNext = !!chunks[page + 1]\n const hasPrev = !!chunks[page - 1]\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 width={(perpage.toString().length * 10) + 60}\n minWidth={\"auto\"}\n maxWidth={\"auto\"}\n value={perpage}\n onChange={(value: any) => {\n onChange && onChange({ page: 1, perpage: value, from: 1, to: Math.min(value, total) })\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 size={30}\n disabled={!hasPrev}\n onClick={() => {\n onChange && onChange(chunks[page - 1]);\n }}\n >\n <PrevIcon />\n </IconButton>\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n size={30}\n disabled={!hasNext}\n onClick={() => {\n onChange && onChange(chunks[page + 1]);\n }}\n >\n <NextIcon />\n </IconButton>\n </Tag>\n </Tag>\n )\n})\n\nexport default TablePagination"],"names":[],"mappings":";;;;;;;;;;;;AA4BA;AAA0C;;;;AAItC;AACA;AACA;AAGA;;;AAGI;AACI;AACA;AACA;;AAEJ;;AAGJ;AACI;;;;;AAOJ;AAIY;AACA;AACA;AACA;AACH;AAce;AACJ;AAQJ;AACA;AACA;AACA;AACH;;AAeG;;;AAmBpB;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/TablePagination/index.tsx"],"sourcesContent":["\"use client\";\nimport Text from '../Text'\nimport Select, { SelectProps } from '../Select'\nimport Option from '../Option'\nimport IconButton, { IconButtonProps } from '../IconButton'\nimport React, { useMemo } 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 TablePaginationState = { page: number, perpage: number, from: number, to: number }\nexport type TablePaginationProps = Omit<TagProps, \"children\" | \"onChange\"> & {\n page: number;\n total: number;\n perpage?: number;\n perpages?: number[];\n color?: useBreakpointPropsType<UseColorTemplateColor>;\n variant?: useBreakpointPropsType<UseColorTemplateType>;\n onChange?: (state: TablePaginationState) => void;\n\n slotProps?: {\n button?: Omit<IconButtonProps, \"children\" | \"color\" | \"variant\">;\n select?: Omit<SelectProps, \"value\" | \"onChange\" | \"children\">;\n }\n}\n\nconst TablePagination = React.forwardRef(({ page, total, perpage, 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 perpage = perpage || perpages[0] as number\n const isPerpage = perpages[0] && perpages.length >= 1\n\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, perpages, total])\n\n if (!chunks.length) {\n return <></>\n }\n\n const current = chunks[page] || chunks[1]\n const hasNext = !!chunks[page + 1]\n const hasPrev = !!chunks[page - 1]\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 width={(perpage.toString().length * 10) + 60}\n minWidth={\"auto\"}\n maxWidth={\"auto\"}\n value={perpage}\n onChange={(value: any) => {\n onChange && onChange({ page: 1, perpage: value, from: 1, to: Math.min(value, total) })\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 size={30}\n disabled={!hasPrev}\n onClick={() => {\n onChange && onChange(chunks[page - 1]);\n }}\n >\n <PrevIcon />\n </IconButton>\n <IconButton\n {...slotProps?.button}\n color={color}\n variant={variant}\n size={30}\n disabled={!hasNext}\n onClick={() => {\n onChange && onChange(chunks[page + 1]);\n }}\n >\n <NextIcon />\n </IconButton>\n </Tag>\n </Tag>\n )\n})\n\nexport default TablePagination"],"names":[],"mappings":";;;;;;;;;;;;AA2BA;AAA0C;;;;AAItC;AACA;AACA;AAGA;;;AAGI;AACI;AACA;AACA;;AAEJ;;AAGJ;AACI;;;;;AAOJ;AAIY;AACA;AACA;AACA;AACH;AAce;AACJ;AAQJ;AACA;AACA;AACA;AACH;;AAeG;;;AAmBpB;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  'use strict';
2
3
 
3
4
  var tslib = require('tslib');
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/TableRow/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableRowProps<T extends TagComponentType = \"tr\"> = TagProps<T>\n\nconst TableRow = React.forwardRef(<T extends TagComponentType = \"tr\">({ children, ...rest }: TableRowProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n baseClass='table-row'\n verticalAlign=\"middle\"\n {...rest}\n component=\"tr\"\n ref={ref}>{children}</Tag>\n )\n})\n\nexport default TableRow"],"names":["__rest","_jsx","Tag"],"mappings":";;;;;;;AAMA,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,CAAoC,EAAuC,EAAE,GAAmB,KAAI;AAAhE,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAA6B,EAAxB,IAAI,GAAAA,YAAA,CAAA,EAAA,EAAnB,YAAqB,CAAF;IACrF,QACIC,cAAA,CAACC,QAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EACA,SAAS,EAAC,WAAW,EACrB,aAAa,EAAC,QAAQ,EAAA,EAClB,IAAI,EAAA,EACR,SAAS,EAAC,IAAI,EACd,GAAG,EAAE,GAAG,EAAA,QAAA,EAAG,QAAQ,EAAA,CAAA,CAAO;AAEtC,CAAC;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/TableRow/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableRowProps<T extends TagComponentType = \"tr\"> = TagProps<T>\n\nconst TableRow = React.forwardRef(<T extends TagComponentType = \"tr\">({ children, ...rest }: TableRowProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n baseClass='table-row'\n verticalAlign=\"middle\"\n {...rest}\n component=\"tr\"\n ref={ref}>{children}</Tag>\n )\n})\n\nexport default TableRow"],"names":[],"mappings":";;;;;;;;AAMA;AAAsE;;AAStE;;"}
package/TableRow/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { __rest } from 'tslib';
2
3
  import { jsx } from 'react/jsx-runtime';
3
4
  import React from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/TableRow/index.tsx"],"sourcesContent":["\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableRowProps<T extends TagComponentType = \"tr\"> = TagProps<T>\n\nconst TableRow = React.forwardRef(<T extends TagComponentType = \"tr\">({ children, ...rest }: TableRowProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n baseClass='table-row'\n verticalAlign=\"middle\"\n {...rest}\n component=\"tr\"\n ref={ref}>{children}</Tag>\n )\n})\n\nexport default TableRow"],"names":["_jsx"],"mappings":";;;;;AAMA,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,CAAoC,EAAuC,EAAE,GAAmB,KAAI;AAAhE,IAAA,IAAA,EAAE,QAAQ,EAAA,GAAA,EAA6B,EAAxB,IAAI,GAAA,MAAA,CAAA,EAAA,EAAnB,YAAqB,CAAF;IACrF,QACIA,GAAA,CAAC,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,EACA,SAAS,EAAC,WAAW,EACrB,aAAa,EAAC,QAAQ,EAAA,EAClB,IAAI,EAAA,EACR,SAAS,EAAC,IAAI,EACd,GAAG,EAAE,GAAG,EAAA,QAAA,EAAG,QAAQ,EAAA,CAAA,CAAO;AAEtC,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/TableRow/index.tsx"],"sourcesContent":["\"use client\"\nimport React from 'react';\nimport { Tag, TagProps, TagComponentType } from '@xanui/core';\n\nexport type TableRowProps<T extends TagComponentType = \"tr\"> = TagProps<T>\n\nconst TableRow = React.forwardRef(<T extends TagComponentType = \"tr\">({ children, ...rest }: TableRowProps<T>, ref: React.Ref<any>) => {\n return (\n <Tag\n baseClass='table-row'\n verticalAlign=\"middle\"\n {...rest}\n component=\"tr\"\n ref={ref}>{children}</Tag>\n )\n})\n\nexport default TableRow"],"names":[],"mappings":";;;;;;AAMA;AAAsE;;AAStE;;"}