@xanui/core 1.2.43 → 1.2.45

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 (167) hide show
  1. package/AppRoot/AppRootProvider.cjs +20 -0
  2. package/AppRoot/AppRootProvider.cjs.map +1 -0
  3. package/AppRoot/AppRootProvider.js +7 -10
  4. package/AppRoot/AppRootProvider.js.map +1 -1
  5. package/AppRoot/Renderar.cjs +89 -0
  6. package/AppRoot/Renderar.cjs.map +1 -0
  7. package/AppRoot/Renderar.d.ts +1 -0
  8. package/AppRoot/Renderar.js +52 -20
  9. package/AppRoot/Renderar.js.map +1 -1
  10. package/AppRoot/index.cjs +45 -0
  11. package/AppRoot/index.cjs.map +1 -0
  12. package/AppRoot/index.js +25 -24
  13. package/AppRoot/index.js.map +1 -1
  14. package/Document/index.cjs +21 -0
  15. package/Document/index.cjs.map +1 -0
  16. package/Document/index.d.ts +7 -1
  17. package/Document/index.js +8 -11
  18. package/Document/index.js.map +1 -1
  19. package/Iframe/index.cjs +45 -0
  20. package/Iframe/{index.mjs.map → index.cjs.map} +1 -1
  21. package/Iframe/index.js +23 -25
  22. package/Iframe/index.js.map +1 -1
  23. package/Tag/ServerStyleTag.cjs +13 -0
  24. package/Tag/{ServerStyleTag.mjs.map → ServerStyleTag.cjs.map} +1 -1
  25. package/Tag/ServerStyleTag.js +3 -5
  26. package/Tag/ServerStyleTag.js.map +1 -1
  27. package/Tag/{cssPropList.mjs → cssPropList.cjs} +4 -2
  28. package/Tag/cssPropList.cjs.map +1 -0
  29. package/Tag/cssPropList.js +1 -3
  30. package/Tag/cssPropList.js.map +1 -1
  31. package/Tag/index.cjs +40 -0
  32. package/Tag/{index.mjs.map → index.cjs.map} +1 -1
  33. package/Tag/index.js +10 -31
  34. package/Tag/index.js.map +1 -1
  35. package/Tag/{useTagProps.mjs → useTagProps.cjs} +18 -16
  36. package/Tag/useTagProps.cjs.map +1 -0
  37. package/Tag/useTagProps.js +15 -17
  38. package/Tag/useTagProps.js.map +1 -1
  39. package/Transition/index.cjs +29 -0
  40. package/Transition/{index.mjs.map → index.cjs.map} +1 -1
  41. package/Transition/index.js +13 -15
  42. package/Transition/index.js.map +1 -1
  43. package/breakpoint/BreakpointProvider.cjs +49 -0
  44. package/breakpoint/BreakpointProvider.cjs.map +1 -0
  45. package/breakpoint/BreakpointProvider.js +27 -24
  46. package/breakpoint/BreakpointProvider.js.map +1 -1
  47. package/breakpoint/useBreakpoint.cjs +24 -0
  48. package/breakpoint/{useBreakpoint.mjs.map → useBreakpoint.cjs.map} +1 -1
  49. package/breakpoint/useBreakpoint.js +7 -9
  50. package/breakpoint/useBreakpoint.js.map +1 -1
  51. package/breakpoint/{useBreakpointProps.mjs → useBreakpointProps.cjs} +8 -6
  52. package/breakpoint/useBreakpointProps.cjs.map +1 -0
  53. package/breakpoint/useBreakpointProps.js +5 -7
  54. package/breakpoint/useBreakpointProps.js.map +1 -1
  55. package/css/CSSCacheProvider.cjs +34 -0
  56. package/css/{CSSCacheProvider.mjs.map → CSSCacheProvider.cjs.map} +1 -1
  57. package/css/CSSCacheProvider.js +10 -15
  58. package/css/CSSCacheProvider.js.map +1 -1
  59. package/css/{aliases.mjs → aliases.cjs} +4 -2
  60. package/css/aliases.cjs.map +1 -0
  61. package/css/aliases.js +1 -3
  62. package/css/aliases.js.map +1 -1
  63. package/css/{getProps.mjs → getProps.cjs} +4 -2
  64. package/css/{getProps.mjs.map → getProps.cjs.map} +1 -1
  65. package/css/getProps.js +1 -3
  66. package/css/getProps.js.map +1 -1
  67. package/css/{getValue.mjs → getValue.cjs} +4 -2
  68. package/css/{getValue.mjs.map → getValue.cjs.map} +1 -1
  69. package/css/getValue.js +1 -3
  70. package/css/getValue.js.map +1 -1
  71. package/css/{index.mjs → index.cjs} +15 -7
  72. package/css/index.cjs.map +1 -0
  73. package/css/index.js +6 -14
  74. package/css/index.js.map +1 -1
  75. package/hooks/{useAnimation.mjs → useAnimation.cjs} +16 -11
  76. package/hooks/{useAnimation.mjs.map → useAnimation.cjs.map} +1 -1
  77. package/hooks/useAnimation.js +10 -15
  78. package/hooks/useAnimation.js.map +1 -1
  79. package/hooks/{useColorTemplate.mjs → useColorTemplate.cjs} +4 -2
  80. package/hooks/{useColorTemplate.mjs.map → useColorTemplate.cjs.map} +1 -1
  81. package/hooks/useColorTemplate.js +1 -3
  82. package/hooks/useColorTemplate.js.map +1 -1
  83. package/hooks/useInterface.cjs +19 -0
  84. package/hooks/useInterface.cjs.map +1 -0
  85. package/hooks/useInterface.js +7 -9
  86. package/hooks/useInterface.js.map +1 -1
  87. package/hooks/{useMergeRefs.mjs → useMergeRefs.cjs} +6 -4
  88. package/hooks/{useMergeRefs.mjs.map → useMergeRefs.cjs.map} +1 -1
  89. package/hooks/useMergeRefs.js +3 -5
  90. package/hooks/useMergeRefs.js.map +1 -1
  91. package/hooks/usePortal.cjs +69 -0
  92. package/hooks/usePortal.cjs.map +1 -0
  93. package/hooks/usePortal.js +29 -32
  94. package/hooks/usePortal.js.map +1 -1
  95. package/hooks/useTransition/{index.mjs → index.cjs} +29 -27
  96. package/hooks/useTransition/index.cjs.map +1 -0
  97. package/hooks/useTransition/index.js +26 -28
  98. package/hooks/useTransition/index.js.map +1 -1
  99. package/hooks/useTransition/{variants.mjs → variants.cjs} +17 -2
  100. package/hooks/useTransition/{variants.mjs.map → variants.cjs.map} +1 -1
  101. package/hooks/useTransition/variants.js +1 -16
  102. package/hooks/useTransition/variants.js.map +1 -1
  103. package/index.cjs +64 -0
  104. package/index.cjs.map +1 -0
  105. package/index.js +25 -63
  106. package/index.js.map +1 -1
  107. package/package.json +4 -11
  108. package/theme/{ThemeCssVars.mjs → ThemeCssVars.cjs} +4 -2
  109. package/theme/{ThemeCssVars.mjs.map → ThemeCssVars.cjs.map} +1 -1
  110. package/theme/ThemeCssVars.js +1 -3
  111. package/theme/ThemeCssVars.js.map +1 -1
  112. package/theme/{ThemeDefaultOptions.mjs → ThemeDefaultOptions.cjs} +11 -5
  113. package/theme/{ThemeDefaultOptions.mjs.map → ThemeDefaultOptions.cjs.map} +1 -1
  114. package/theme/ThemeDefaultOptions.js +4 -10
  115. package/theme/ThemeDefaultOptions.js.map +1 -1
  116. package/theme/{ThemeProvider.mjs → ThemeProvider.cjs} +52 -31
  117. package/theme/ThemeProvider.cjs.map +1 -0
  118. package/theme/ThemeProvider.js +30 -51
  119. package/theme/ThemeProvider.js.map +1 -1
  120. package/theme/{core.mjs → core.cjs} +12 -6
  121. package/theme/core.cjs.map +1 -0
  122. package/theme/core.js +5 -11
  123. package/theme/core.js.map +1 -1
  124. package/theme/createTheme.cjs +27 -0
  125. package/theme/{createTheme.mjs.map → createTheme.cjs.map} +1 -1
  126. package/theme/createTheme.js +10 -12
  127. package/theme/createTheme.js.map +1 -1
  128. package/theme/{createThemeSwitcher.mjs → createThemeSwitcher.cjs} +8 -6
  129. package/theme/{createThemeSwitcher.mjs.map → createThemeSwitcher.cjs.map} +1 -1
  130. package/theme/createThemeSwitcher.js +5 -7
  131. package/theme/createThemeSwitcher.js.map +1 -1
  132. package/theme/index.cjs +15 -0
  133. package/theme/{index.mjs.map → index.cjs.map} +1 -1
  134. package/theme/index.js +6 -11
  135. package/theme/index.js.map +1 -1
  136. package/AppRoot/AppRootProvider.mjs +0 -17
  137. package/AppRoot/AppRootProvider.mjs.map +0 -1
  138. package/AppRoot/Renderar.mjs +0 -51
  139. package/AppRoot/Renderar.mjs.map +0 -1
  140. package/AppRoot/index.mjs +0 -40
  141. package/AppRoot/index.mjs.map +0 -1
  142. package/Document/index.mjs +0 -18
  143. package/Document/index.mjs.map +0 -1
  144. package/Iframe/index.mjs +0 -43
  145. package/Tag/ServerStyleTag.mjs +0 -11
  146. package/Tag/cssPropList.mjs.map +0 -1
  147. package/Tag/index.mjs +0 -19
  148. package/Tag/useTagProps.mjs.map +0 -1
  149. package/Transition/index.mjs +0 -27
  150. package/breakpoint/BreakpointProvider.mjs +0 -40
  151. package/breakpoint/BreakpointProvider.mjs.map +0 -1
  152. package/breakpoint/useBreakpoint.mjs +0 -22
  153. package/breakpoint/useBreakpointProps.mjs.map +0 -1
  154. package/css/CSSCacheProvider.mjs +0 -29
  155. package/css/aliases.mjs.map +0 -1
  156. package/css/index.mjs.map +0 -1
  157. package/hooks/useInterface.mjs +0 -17
  158. package/hooks/useInterface.mjs.map +0 -1
  159. package/hooks/usePortal.mjs +0 -68
  160. package/hooks/usePortal.mjs.map +0 -1
  161. package/hooks/useTransition/index.mjs.map +0 -1
  162. package/index.mjs +0 -26
  163. package/index.mjs.map +0 -1
  164. package/theme/ThemeProvider.mjs.map +0 -1
  165. package/theme/core.mjs.map +0 -1
  166. package/theme/createTheme.mjs +0 -25
  167. package/theme/index.mjs +0 -10
@@ -1 +0,0 @@
1
- {"version":3,"file":"ThemeProvider.mjs","sources":["../../src/theme/ThemeProvider.tsx"],"sourcesContent":["\"use client\";\r\nimport * as React from \"react\"\r\nimport { ThemeOptions } from \"./types\"\r\nimport Tag from \"../Tag\"\r\nimport { TagComponentType, TagProps } from \"../Tag/types\"\r\nimport { ThemeContex, ThemeFactory } from \"./core\"\r\nimport ThemeCssVars from \"./ThemeCssVars\"\r\nimport { css } from \"../css\"\r\nimport { createDefaultThemes } from \"./ThemeDefaultOptions\"\r\nimport ServerStyleTag from \"../Tag/ServerStyleTag\"\r\nimport { useDocument } from \"../Document\";\r\nimport { themeRootClass } from \".\";\r\nimport { useCSSCacheId } from \"../css/CSSCacheProvider\";\r\n\r\nexport type ThemeProviderProps<T extends TagComponentType = 'div'> = TagProps<T> & {\r\n theme: string;\r\n isRoot?: boolean;\r\n noScrollbarCss?: boolean;\r\n}\r\n\r\ncreateDefaultThemes()\r\n\r\nconst ThemeProvider = <T extends TagComponentType = 'div'>({ children, theme, isRoot, noScrollbarCss, ...props }: ThemeProviderProps<T>) => {\r\n let THEME = ThemeFactory.get(theme) as ThemeOptions\r\n if (!THEME) {\r\n console.error(`ThemeProvider: The theme '${theme}' is not defined. Please make sure to use a valid theme name.`)\r\n THEME = ThemeFactory.get(\"light\") as ThemeOptions\r\n }\r\n const doc = useDocument();\r\n const cacheId = useCSSCacheId()\r\n\r\n const themeGlobalStyle: any = React.useMemo(() => {\r\n const root_cls = `.xui-${theme}-theme-root`\r\n let gkeys = Object.keys(THEME.globalStyle || {})\r\n let gstyles: any = {}\r\n gkeys.forEach((key) => {\r\n gstyles[`${root_cls} ${key}`] = THEME.globalStyle[key as any]\r\n })\r\n\r\n return css({\r\n \"@global\": {\r\n ...gstyles,\r\n [root_cls]: ThemeCssVars(THEME)\r\n }\r\n }, {\r\n injectStyle: typeof window !== 'undefined',\r\n container: doc,\r\n cacheId\r\n })\r\n }, [theme, doc])\r\n\r\n const resetCss = React.useMemo(() => {\r\n if (!isRoot) return\r\n return css({\r\n \"@global\": {\r\n \"*\": {\r\n m: 0,\r\n p: 0,\r\n outline: \"none\",\r\n boxSizing: \"border-box\",\r\n verticalAlign: \"baseline\",\r\n },\r\n \"html, body\": {\r\n minHeight: \"100%\",\r\n \"-webkit-font-smoothing\": \"antialiased\",\r\n \"-moz-osx-font-smoothing\": \"grayscale\",\r\n } as any,\r\n \"img, picture, video, canvas, svg\": {\r\n maxWidth: \"100%\",\r\n display: \"block\"\r\n },\r\n \"input, button, textarea, select\": {\r\n font: \"inherit\"\r\n },\r\n \"table\": {\r\n borderCollapse: \"collapse\",\r\n borderSpacing: 0,\r\n },\r\n \"ol, ul\": {\r\n listStyle: \"none\",\r\n padding: 0,\r\n margin: 0,\r\n },\r\n \"a\": {\r\n display: \"inline-block\",\r\n color: \"inherit\",\r\n textDecoration: \"none\",\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n textDecoration: \"underline\"\r\n }\r\n },\r\n \"p, h1, h2, h3, h4, h5, h6\": {\r\n overflowWrap: \"break-word\",\r\n },\r\n }\r\n }, {\r\n injectStyle: typeof window !== 'undefined',\r\n container: doc,\r\n cacheId\r\n })\r\n }, [])\r\n\r\n const scrollbarCss: any = React.useMemo(() => {\r\n if (noScrollbarCss) return;\r\n const cls = (cls: string) => `${themeRootClass(theme)} ${cls}`\r\n let thumbSize = 6\r\n let thumbColor = \"var(--color-text-secondary)\"\r\n let trackColor = \"transparent\"\r\n\r\n return css({\r\n \"@global\": {\r\n [cls('*::-webkit-scrollbar')]: {\r\n width: thumbSize,\r\n height: thumbSize,\r\n },\r\n [cls(\"*::-webkit-scrollbar-thumb\")]: {\r\n backgroundColor: thumbColor,\r\n borderRadius: \"6px\",\r\n opacity: 0.6,\r\n },\r\n [cls(\"*::-webkit-scrollbar-thumb:hover\")]: {\r\n backgroundColor: thumbColor,\r\n opacity: 0.0,\r\n },\r\n [cls(\"*::-webkit-scrollbar-track\")]: {\r\n backgroundColor: trackColor,\r\n borderRadius: \"6px\",\r\n },\r\n }\r\n }, {\r\n injectStyle: typeof window !== 'undefined',\r\n container: doc,\r\n cacheId\r\n }) as any\r\n }, [noScrollbarCss, theme])\r\n\r\n return (\r\n <ThemeContex.Provider value={theme}>\r\n {\r\n isRoot && <>\r\n <ServerStyleTag factory={resetCss as any} />\r\n {\r\n !noScrollbarCss && <ServerStyleTag factory={scrollbarCss} />\r\n }\r\n </>\r\n }\r\n <ServerStyleTag factory={themeGlobalStyle} />\r\n <Tag\r\n minHeight=\"100%\"\r\n bgcolor=\"background.primary\"\r\n color=\"text.primary\"\r\n fontSize=\"text\"\r\n fontWeight=\"text\"\r\n lineHeight=\"text\"\r\n fontFamily={`system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif`}\r\n {...props}\r\n sxr={{\r\n \"& a\": {\r\n color: \"brand.primary\",\r\n },\r\n }}\r\n baseClass={`${theme}-theme-root`}\r\n direction={THEME.rtl ? \"rtl\" : \"ltr\"}\r\n >\r\n {children}\r\n </Tag>\r\n </ThemeContex.Provider>\r\n )\r\n}\r\n\r\nexport default ThemeProvider"],"names":[],"mappings":";;;;;;;;;;;;;;AAoBA;AAEA;AAA2D;;;AAGrD;AACA;;AAEH;AACA;AAEA;AACG;AACA;;AAEA;AACG;AACH;AAEA;;;AAMG;AACA;;AAEF;AACJ;AAEA;AACG;;AACA;AACG;AACG;AACG;AACA;AACA;AACA;AACA;AACF;AACD;AACG;AACA;AACA;AACK;AACR;AACG;AACA;AACF;AACD;AACG;AACF;AACD;AACG;AACA;AACF;AACD;AACG;AACA;AACA;AACF;AACD;AACG;AACA;AACA;AACA;AACA;AACG;AACF;AACH;AACD;AACG;AACF;AACH;;AAED;AACA;;AAEF;;AAGJ;AACG;;AACA;;;;AAKA;AACG;AACG;AACG;AACA;AACF;AACD;AACG;AACA;AACA;AACF;AACD;AACG;AACA;AACF;AACD;AACG;AACA;AACF;AACH;;AAED;AACA;;AAEF;AACJ;AAEA;AAqBY;AACG;AACF;;AAShB;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"core.mjs","sources":["../../src/theme/core.ts"],"sourcesContent":["import React from \"react\"\r\nimport { ObjectType, ThemeOptions } from \"./types\"\r\n\r\nexport const ThemeFactory = new Map<string, ThemeOptions>()\r\nexport const ThemeContex = React.createContext(\"light\")\r\nexport const getTheme = (theme: string) => ThemeFactory.get(theme)\r\nexport const useTheme = (): ThemeOptions => {\r\n const theme = ThemeFactory.get(React.useContext(ThemeContex)) as any\r\n if (!theme) {\r\n console.error(\"Theme not found, returning light theme as fallback\")\r\n return ThemeFactory.get(\"light\") as any\r\n }\r\n return theme\r\n}\r\n\r\nexport const mergeObject = (a: ObjectType, b: ObjectType) => {\r\n a = { ...a }\r\n b = { ...b }\r\n for (const key in b) {\r\n const v = (b as any)[key]\r\n if (typeof v === 'object' && !Array.isArray(v) && !React.isValidElement(v)) {\r\n a[key] = mergeObject(a[key], b[key])\r\n } else {\r\n a[key] = v\r\n }\r\n }\r\n return a\r\n}\r\n"],"names":["React"],"mappings":";;AAGO,MAAM,YAAY,GAAG,IAAI,GAAG;AAC5B,MAAM,WAAW,GAAGA,cAAK,CAAC,aAAa,CAAC,OAAO;AAC/C,MAAM,QAAQ,GAAG,CAAC,KAAa,KAAK,YAAY,CAAC,GAAG,CAAC,KAAK;AAC1D,MAAM,QAAQ,GAAG,MAAmB;AACxC,IAAA,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAACA,cAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAQ;IACpE,IAAI,CAAC,KAAK,EAAE;AACT,QAAA,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC;AACnE,QAAA,OAAO,YAAY,CAAC,GAAG,CAAC,OAAO,CAAQ;IAC1C;AACA,IAAA,OAAO,KAAK;AACf;MAEa,WAAW,GAAG,CAAC,CAAa,EAAE,CAAa,KAAI;IACzD,CAAC,GAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAQ,CAAC,CAAE;IACZ,CAAC,GAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAQ,CAAC,CAAE;AACZ,IAAA,KAAK,MAAM,GAAG,IAAI,CAAC,EAAE;AAClB,QAAA,MAAM,CAAC,GAAI,CAAS,CAAC,GAAG,CAAC;QACzB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAACA,cAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;AACzE,YAAA,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QACvC;aAAO;AACJ,YAAA,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QACb;IACH;AACA,IAAA,OAAO,CAAC;AACX;;;;"}
@@ -1,25 +0,0 @@
1
- import { ThemeFactory, mergeObject } from './core.mjs';
2
- import { breakpoints, alpha } from '../css/index.mjs';
3
- import { lightThemeOptions } from './ThemeDefaultOptions.mjs';
4
-
5
- const createTheme = (name, options) => {
6
- if (ThemeFactory.has(name)) {
7
- console.error(`createTheme: The theme '${name}' is already defined. Please choose a different name for the theme.`);
8
- return ThemeFactory.get(name);
9
- }
10
- let theme = mergeObject(lightThemeOptions, Object.assign(Object.assign({}, options), { name, breakpoints: breakpoints }));
11
- // add alpha colors
12
- for (let color in theme.colors) {
13
- const c = theme.colors[color];
14
- const is_common = color === 'divider' || color === 'background' || color === 'text';
15
- c.soft = {
16
- primary: is_common ? alpha(c.primary, 0.60) : alpha(c.primary, 0.08),
17
- secondary: is_common ? alpha(c.primary, 0.90) : alpha(c.primary, 0.12)
18
- };
19
- }
20
- ThemeFactory.set(name, theme);
21
- return theme;
22
- };
23
-
24
- export { createTheme };
25
- //# sourceMappingURL=createTheme.mjs.map
package/theme/index.mjs DELETED
@@ -1,10 +0,0 @@
1
- export { getTheme, useTheme } from './core.mjs';
2
- import '../css/getValue.mjs';
3
- import 'oncss';
4
- export { default as ThemeProvider } from './ThemeProvider.mjs';
5
- import 'react-state-bucket';
6
-
7
- const themeRootClass = (theme) => `.xui-${theme}-theme-root`;
8
-
9
- export { themeRootClass };
10
- //# sourceMappingURL=index.mjs.map