@cck-ui/core 0.2.0 → 0.3.3

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 (225) hide show
  1. package/cjs/components/button/button-group/button-group.cjs +1 -1
  2. package/cjs/components/button/button-group/button-group.cjs.map +1 -1
  3. package/cjs/components/button/button-group/use-button-group.cjs +2 -1
  4. package/cjs/components/button/button-group/use-button-group.cjs.map +1 -1
  5. package/cjs/components/button/button-group-section/button-group-section.cjs +1 -1
  6. package/cjs/components/button/button-group-section/button-group-section.cjs.map +1 -1
  7. package/cjs/components/button/button.cjs +99 -68
  8. package/cjs/components/button/button.cjs.map +1 -1
  9. package/cjs/components/button/button.module.cjs.map +1 -1
  10. package/cjs/components/grid/col/col-custom.cjs +2 -3
  11. package/cjs/components/grid/col/col-custom.cjs.map +1 -1
  12. package/cjs/components/grid/col/col.cjs +31 -23
  13. package/cjs/components/grid/col/col.cjs.map +1 -1
  14. package/cjs/components/grid/grid-custom.cjs +2 -3
  15. package/cjs/components/grid/grid-custom.cjs.map +1 -1
  16. package/cjs/components/grid/grid.cjs +50 -38
  17. package/cjs/components/grid/grid.cjs.map +1 -1
  18. package/cjs/components/group/group.cjs +1 -1
  19. package/cjs/components/group/group.cjs.map +1 -1
  20. package/cjs/components/loader/loader.cjs +44 -36
  21. package/cjs/components/loader/loader.cjs.map +1 -1
  22. package/cjs/components/loader/loaders/bars.cjs +1 -1
  23. package/cjs/components/loader/loaders/bars.cjs.map +1 -1
  24. package/cjs/components/loader/loaders/dots.cjs +1 -1
  25. package/cjs/components/loader/loaders/dots.cjs.map +1 -1
  26. package/cjs/components/loader/loaders/oval.cjs +1 -1
  27. package/cjs/components/loader/loaders/oval.cjs.map +1 -1
  28. package/cjs/components/simple-grid/simple-grid-custom.cjs +2 -3
  29. package/cjs/components/simple-grid/simple-grid-custom.cjs.map +1 -1
  30. package/cjs/components/simple-grid/simple-grid.cjs +35 -30
  31. package/cjs/components/simple-grid/simple-grid.cjs.map +1 -1
  32. package/cjs/components/text/text.cjs +50 -43
  33. package/cjs/components/text/text.cjs.map +1 -1
  34. package/cjs/components/text/text.module.cjs.map +1 -1
  35. package/cjs/components/transition/get-transition-props/get-transition-props.cjs +17 -0
  36. package/cjs/components/transition/get-transition-props/get-transition-props.cjs.map +1 -0
  37. package/cjs/components/transition/get-transition-styles/get-transition-styles.cjs +37 -0
  38. package/cjs/components/transition/get-transition-styles/get-transition-styles.cjs.map +1 -0
  39. package/cjs/components/transition/index.cjs +14 -0
  40. package/cjs/components/transition/index.cjs.map +1 -0
  41. package/cjs/components/transition/transition.cjs +140 -0
  42. package/cjs/components/transition/transition.cjs.map +1 -0
  43. package/cjs/components/transition/transitions.cjs +220 -0
  44. package/cjs/components/transition/transitions.cjs.map +1 -0
  45. package/cjs/components/transition/use-transition.cjs +84 -0
  46. package/cjs/components/transition/use-transition.cjs.map +1 -0
  47. package/cjs/components/unstyled-button/unstyled-button.cjs +32 -22
  48. package/cjs/components/unstyled-button/unstyled-button.cjs.map +1 -1
  49. package/cjs/core/box/box.cjs +40 -46
  50. package/cjs/core/box/box.cjs.map +1 -1
  51. package/cjs/core/box/get-box-mod/get-box-mod.cjs.map +1 -1
  52. package/cjs/core/box/style-props/parse-style-props/parse-style-props.cjs +1 -1
  53. package/cjs/core/box/style-props/parse-style-props/parse-style-props.cjs.map +1 -1
  54. package/cjs/core/config-provider/baseline.cjs +1 -0
  55. package/cjs/core/config-provider/cck-css-variables/default-css-variables-resolver.cjs +138 -0
  56. package/cjs/core/config-provider/cck-css-variables/default-css-variables-resolver.cjs.map +1 -0
  57. package/cjs/core/config-provider/cck-css-variables/get-css-color-variables.cjs +64 -0
  58. package/cjs/core/config-provider/cck-css-variables/get-css-color-variables.cjs.map +1 -0
  59. package/cjs/core/config-provider/cck-css-variables/virtual-color/virtual-color.cjs +39 -0
  60. package/cjs/core/config-provider/cck-css-variables/virtual-color/virtual-color.cjs.map +1 -0
  61. package/cjs/core/config-provider/color-functions/colors-tuple/colors-tuple.cjs +10 -0
  62. package/cjs/core/config-provider/color-functions/colors-tuple/colors-tuple.cjs.map +1 -0
  63. package/cjs/core/config-provider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.cjs +22 -0
  64. package/cjs/core/config-provider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.cjs.map +1 -1
  65. package/cjs/core/config-provider/color-functions/get-contrast-color/get-contrast-color.cjs +39 -0
  66. package/cjs/core/config-provider/color-functions/get-contrast-color/get-contrast-color.cjs.map +1 -0
  67. package/cjs/core/config-provider/color-functions/parse-theme-color/parse-theme-color.cjs.map +1 -1
  68. package/cjs/core/config-provider/color-scheme-managers/is-cck-color-scheme.cjs +9 -0
  69. package/cjs/core/config-provider/color-scheme-managers/is-cck-color-scheme.cjs.map +1 -0
  70. package/cjs/core/config-provider/color-scheme-managers/local-storage-manager.cjs +40 -0
  71. package/cjs/core/config-provider/color-scheme-managers/local-storage-manager.cjs.map +1 -0
  72. package/cjs/core/config-provider/config-provider.cjs +65 -11
  73. package/cjs/core/config-provider/config-provider.cjs.map +1 -1
  74. package/cjs/core/config-provider/config-provider.context.cjs +5 -0
  75. package/cjs/core/config-provider/config-provider.context.cjs.map +1 -1
  76. package/cjs/core/config-provider/config-provider.types.cjs +1 -1
  77. package/cjs/core/config-provider/config-provider.types.cjs.map +1 -1
  78. package/cjs/core/config-provider/create-theme/create-theme.cjs +8 -0
  79. package/cjs/core/config-provider/create-theme/create-theme.cjs.map +1 -0
  80. package/cjs/core/config-provider/default-css-variables.cjs +1 -0
  81. package/cjs/core/config-provider/global.cjs +1 -0
  82. package/cjs/core/config-provider/index.cjs +18 -2
  83. package/cjs/core/config-provider/index.cjs.map +1 -1
  84. package/cjs/core/config-provider/merge-cck-theme/merge-cck-theme.cjs +35 -0
  85. package/cjs/core/config-provider/merge-cck-theme/merge-cck-theme.cjs.map +1 -0
  86. package/cjs/core/config-provider/use-cck-color-scheme/use-cck-color-scheme.cjs +84 -0
  87. package/cjs/core/config-provider/use-cck-color-scheme/use-cck-color-scheme.cjs.map +1 -0
  88. package/cjs/core/config-provider/use-cck-color-scheme/use-provider-color-scheme.cjs +59 -0
  89. package/cjs/core/config-provider/use-cck-color-scheme/use-provider-color-scheme.cjs.map +1 -0
  90. package/cjs/core/config-provider/use-respect-reduce-motion/use-respect-reduce-motion.cjs +14 -0
  91. package/cjs/core/config-provider/use-respect-reduce-motion/use-respect-reduce-motion.cjs.map +1 -0
  92. package/cjs/core/styles-api/use-styles/use-styles.cjs +1 -4
  93. package/cjs/core/styles-api/use-styles/use-styles.cjs.map +1 -1
  94. package/cjs/index.cjs +39 -17
  95. package/esm/components/button/button-group/button-group.mjs +1 -1
  96. package/esm/components/button/button-group/button-group.mjs.map +1 -1
  97. package/esm/components/button/button-group/use-button-group.mjs +2 -1
  98. package/esm/components/button/button-group/use-button-group.mjs.map +1 -1
  99. package/esm/components/button/button-group-section/button-group-section.mjs +1 -1
  100. package/esm/components/button/button-group-section/button-group-section.mjs.map +1 -1
  101. package/esm/components/button/button.mjs +100 -69
  102. package/esm/components/button/button.mjs.map +1 -1
  103. package/esm/components/button/button.module.mjs.map +1 -1
  104. package/esm/components/grid/col/col-custom.mjs +3 -4
  105. package/esm/components/grid/col/col-custom.mjs.map +1 -1
  106. package/esm/components/grid/col/col.mjs +32 -24
  107. package/esm/components/grid/col/col.mjs.map +1 -1
  108. package/esm/components/grid/grid-custom.mjs +3 -4
  109. package/esm/components/grid/grid-custom.mjs.map +1 -1
  110. package/esm/components/grid/grid.mjs +51 -39
  111. package/esm/components/grid/grid.mjs.map +1 -1
  112. package/esm/components/group/group.mjs +1 -1
  113. package/esm/components/group/group.mjs.map +1 -1
  114. package/esm/components/loader/loader.mjs +43 -35
  115. package/esm/components/loader/loader.mjs.map +1 -1
  116. package/esm/components/loader/loaders/bars.mjs +1 -1
  117. package/esm/components/loader/loaders/bars.mjs.map +1 -1
  118. package/esm/components/loader/loaders/dots.mjs +1 -1
  119. package/esm/components/loader/loaders/dots.mjs.map +1 -1
  120. package/esm/components/loader/loaders/oval.mjs +1 -1
  121. package/esm/components/loader/loaders/oval.mjs.map +1 -1
  122. package/esm/components/simple-grid/simple-grid-custom.mjs +3 -4
  123. package/esm/components/simple-grid/simple-grid-custom.mjs.map +1 -1
  124. package/esm/components/simple-grid/simple-grid.mjs +35 -30
  125. package/esm/components/simple-grid/simple-grid.mjs.map +1 -1
  126. package/esm/components/text/text.mjs +50 -43
  127. package/esm/components/text/text.mjs.map +1 -1
  128. package/esm/components/text/text.module.mjs.map +1 -1
  129. package/esm/components/transition/get-transition-props/get-transition-props.mjs +17 -0
  130. package/esm/components/transition/get-transition-props/get-transition-props.mjs.map +1 -0
  131. package/esm/components/transition/get-transition-styles/get-transition-styles.mjs +37 -0
  132. package/esm/components/transition/get-transition-styles/get-transition-styles.mjs.map +1 -0
  133. package/esm/components/transition/index.mjs +11 -0
  134. package/esm/components/transition/index.mjs.map +1 -0
  135. package/esm/components/transition/transition.mjs +140 -0
  136. package/esm/components/transition/transition.mjs.map +1 -0
  137. package/esm/components/transition/transitions.mjs +220 -0
  138. package/esm/components/transition/transitions.mjs.map +1 -0
  139. package/esm/components/transition/use-transition.mjs +84 -0
  140. package/esm/components/transition/use-transition.mjs.map +1 -0
  141. package/esm/components/unstyled-button/unstyled-button.mjs +33 -23
  142. package/esm/components/unstyled-button/unstyled-button.mjs.map +1 -1
  143. package/esm/core/box/box.mjs +41 -47
  144. package/esm/core/box/box.mjs.map +1 -1
  145. package/esm/core/box/get-box-mod/get-box-mod.mjs.map +1 -1
  146. package/esm/core/box/style-props/parse-style-props/parse-style-props.mjs +1 -1
  147. package/esm/core/box/style-props/parse-style-props/parse-style-props.mjs.map +1 -1
  148. package/esm/core/config-provider/baseline.mjs +1 -0
  149. package/esm/core/config-provider/cck-css-variables/default-css-variables-resolver.mjs +138 -0
  150. package/esm/core/config-provider/cck-css-variables/default-css-variables-resolver.mjs.map +1 -0
  151. package/esm/core/config-provider/cck-css-variables/get-css-color-variables.mjs +64 -0
  152. package/esm/core/config-provider/cck-css-variables/get-css-color-variables.mjs.map +1 -0
  153. package/esm/core/config-provider/cck-css-variables/virtual-color/virtual-color.mjs +38 -0
  154. package/esm/core/config-provider/cck-css-variables/virtual-color/virtual-color.mjs.map +1 -0
  155. package/esm/core/config-provider/color-functions/colors-tuple/colors-tuple.mjs +10 -0
  156. package/esm/core/config-provider/color-functions/colors-tuple/colors-tuple.mjs.map +1 -0
  157. package/esm/core/config-provider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs +22 -0
  158. package/esm/core/config-provider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs.map +1 -1
  159. package/esm/core/config-provider/color-functions/get-contrast-color/get-contrast-color.mjs +37 -0
  160. package/esm/core/config-provider/color-functions/get-contrast-color/get-contrast-color.mjs.map +1 -0
  161. package/esm/core/config-provider/color-functions/parse-theme-color/parse-theme-color.mjs.map +1 -1
  162. package/esm/core/config-provider/color-scheme-managers/is-cck-color-scheme.mjs +9 -0
  163. package/esm/core/config-provider/color-scheme-managers/is-cck-color-scheme.mjs.map +1 -0
  164. package/esm/core/config-provider/color-scheme-managers/local-storage-manager.mjs +40 -0
  165. package/esm/core/config-provider/color-scheme-managers/local-storage-manager.mjs.map +1 -0
  166. package/esm/core/config-provider/config-provider.context.mjs +7 -3
  167. package/esm/core/config-provider/config-provider.context.mjs.map +1 -1
  168. package/esm/core/config-provider/config-provider.mjs +66 -12
  169. package/esm/core/config-provider/config-provider.mjs.map +1 -1
  170. package/esm/core/config-provider/config-provider.types.mjs +1 -1
  171. package/esm/core/config-provider/config-provider.types.mjs.map +1 -1
  172. package/esm/core/config-provider/create-theme/create-theme.mjs +8 -0
  173. package/esm/core/config-provider/create-theme/create-theme.mjs.map +1 -0
  174. package/esm/core/config-provider/default-css-variables.mjs +1 -0
  175. package/esm/core/config-provider/global.mjs +1 -0
  176. package/esm/core/config-provider/index.mjs +10 -3
  177. package/esm/core/config-provider/index.mjs.map +1 -1
  178. package/esm/core/config-provider/merge-cck-theme/merge-cck-theme.mjs +32 -0
  179. package/esm/core/config-provider/merge-cck-theme/merge-cck-theme.mjs.map +1 -0
  180. package/esm/core/config-provider/use-cck-color-scheme/use-cck-color-scheme.mjs +84 -0
  181. package/esm/core/config-provider/use-cck-color-scheme/use-cck-color-scheme.mjs.map +1 -0
  182. package/esm/core/config-provider/use-cck-color-scheme/use-provider-color-scheme.mjs +59 -0
  183. package/esm/core/config-provider/use-cck-color-scheme/use-provider-color-scheme.mjs.map +1 -0
  184. package/esm/core/config-provider/use-respect-reduce-motion/use-respect-reduce-motion.mjs +14 -0
  185. package/esm/core/config-provider/use-respect-reduce-motion/use-respect-reduce-motion.mjs.map +1 -0
  186. package/esm/core/styles-api/use-styles/use-styles.mjs +2 -5
  187. package/esm/core/styles-api/use-styles/use-styles.mjs.map +1 -1
  188. package/esm/index.mjs +13 -3
  189. package/lib/components/button/button.types.d.ts +1 -11
  190. package/lib/components/index.d.ts +1 -0
  191. package/lib/components/text/text.types.d.ts +1 -1
  192. package/lib/components/transition/get-transition-props/get-transition-props.d.ts +5 -0
  193. package/lib/components/transition/get-transition-styles/get-transition-styles.d.ts +17 -0
  194. package/lib/components/transition/index.d.ts +8 -0
  195. package/lib/components/transition/transition.types.d.ts +66 -0
  196. package/lib/components/transition/transitions.d.ts +10 -0
  197. package/lib/components/transition/use-transition.d.ts +20 -0
  198. package/lib/core/box/style-props/parse-style-props/parse-style-props.d.ts +1 -1
  199. package/lib/core/config-provider/cck-css-variables/index.d.ts +3 -0
  200. package/lib/core/config-provider/cck-css-variables/virtual-color/virtual-color.d.ts +1 -1
  201. package/lib/core/config-provider/color-functions/index.d.ts +2 -1
  202. package/lib/core/config-provider/color-functions/parse-theme-color/parse-theme-color.d.ts +1 -1
  203. package/lib/core/config-provider/color-scheme-managers/index.d.ts +4 -0
  204. package/lib/core/config-provider/color-scheme-managers/is-cck-color-scheme.d.ts +2 -0
  205. package/lib/core/config-provider/color-scheme-managers/local-storage-manager.d.ts +5 -0
  206. package/lib/core/config-provider/color-scheme-managers/types.d.ts +30 -0
  207. package/lib/core/config-provider/config-provider.context.d.ts +4 -3
  208. package/lib/core/config-provider/config-provider.types.d.ts +10 -4
  209. package/lib/core/config-provider/create-theme/create-theme.d.ts +2 -0
  210. package/lib/core/config-provider/index.d.ts +3 -0
  211. package/lib/core/config-provider/merge-cck-theme/index.d.ts +1 -0
  212. package/lib/core/config-provider/merge-cck-theme/merge-cck-theme.d.ts +5 -0
  213. package/lib/core/config-provider/use-cck-color-scheme/index.d.ts +2 -0
  214. package/lib/core/config-provider/use-cck-color-scheme/use-cck-color-scheme.d.ts +10 -0
  215. package/lib/core/config-provider/use-cck-color-scheme/use-provider-color-scheme.d.ts +15 -0
  216. package/lib/core/config-provider/use-respect-reduce-motion/use-respect-reduce-motion.d.ts +7 -0
  217. package/package.json +3 -1
  218. package/styles/button.css +5 -9
  219. package/styles/button.layer.css +5 -9
  220. package/styles/default-css-variables.css +30 -30
  221. package/styles/default-css-variables.layer.css +30 -30
  222. package/styles/text.css +10 -0
  223. package/styles/text.layer.css +10 -0
  224. package/styles.css +1482 -232
  225. package/styles.layer.css +1483 -233
@@ -0,0 +1,17 @@
1
+ import { Properties } from 'csstype';
2
+ import { CTransition } from '../transitions';
3
+ declare const transitionStatuses: {
4
+ readonly entering: "in";
5
+ readonly entered: "in";
6
+ readonly exiting: "out";
7
+ readonly exited: "out";
8
+ readonly 'pre-exiting': "out";
9
+ readonly 'pre-entering': "out";
10
+ };
11
+ export declare function getTransitionStyles({ transition, state, duration, timingFunction, }: {
12
+ transition: CTransition;
13
+ state: keyof typeof transitionStatuses;
14
+ duration: number;
15
+ timingFunction: Properties['transitionTimingFunction'];
16
+ }): Properties;
17
+ export {};
@@ -0,0 +1,8 @@
1
+ import { SFCWithInstall } from '../../core';
2
+ import Transition from './transition.vue';
3
+ export { transitions as CCK_TRANSITIONS } from './transitions';
4
+ export type { CTransition as CckTransition } from './transitions';
5
+ export { getTransitionProps } from './get-transition-props/get-transition-props';
6
+ export declare const CTransition: SFCWithInstall<typeof Transition>;
7
+ export default CTransition;
8
+ export * from './transition.types';
@@ -0,0 +1,66 @@
1
+ import { CTransition } from './transitions';
2
+ export interface TransitionProps {
3
+ /**
4
+ * @description If set, the element is kept in the DOM when hidden.
5
+ */
6
+ keepMounted?: boolean;
7
+ /**
8
+ * @description Controls how the element is hidden when `keepMounted` is set:
9
+ * `'activity'`
10
+ * `'display-none'` - hidden with `display: none` styles
11
+ * @default 'activity'
12
+ */
13
+ keepMountedMode?: 'activity' | 'display-none';
14
+ /**
15
+ * @description Transition name or object
16
+ */
17
+ transition?: CTransition;
18
+ /**
19
+ * @description Transition duration in ms
20
+ * @default 250
21
+ */
22
+ duration?: number;
23
+ /**
24
+ * @description Exit transition duration in ms
25
+ * @default 250
26
+ */
27
+ exitDuration?: number;
28
+ /**
29
+ * @description Transition timing function
30
+ * @default theme.transitionTimingFunction
31
+ */
32
+ timingFunction?: string;
33
+ /**
34
+ * @description Determines whether component should be mounted to the DOM
35
+ */
36
+ mounted: boolean;
37
+ /**
38
+ * @description Called when exit transition ends
39
+ * @returns
40
+ */
41
+ onExited?: () => void;
42
+ /**
43
+ * @description Called when exit transition starts
44
+ * @returns
45
+ */
46
+ onExit?: () => void;
47
+ /**
48
+ * @description Called when enter transition starts
49
+ * @returns
50
+ */
51
+ onEnter?: () => void;
52
+ /**
53
+ * @description Called when enter transition ends
54
+ * @returns
55
+ */
56
+ onEntered?: () => void;
57
+ /**
58
+ * @description Delay in ms before enter transition starts
59
+ */
60
+ enterDelay?: number;
61
+ /**
62
+ * @description Delay in ms before exit transition starts
63
+ */
64
+ exitDelay?: number;
65
+ }
66
+ export type TransitionOverride = Partial<Omit<TransitionProps, 'mounted'>>;
@@ -0,0 +1,10 @@
1
+ import { Properties } from 'csstype';
2
+ export interface CTransitionStyles {
3
+ common?: Properties;
4
+ in: Properties;
5
+ out: Properties;
6
+ transitionProperty: Properties['transitionProperty'];
7
+ }
8
+ export type CTransitionName = 'fade' | 'fade-down' | 'fade-up' | 'fade-left' | 'fade-right' | 'skew-up' | 'skew-down' | 'rotate-right' | 'rotate-left' | 'slide-down' | 'slide-up' | 'slide-right' | 'slide-left' | 'scale-y' | 'scale-x' | 'scale' | 'pop' | 'pop-top-left' | 'pop-top-right' | 'pop-bottom-left' | 'pop-bottom-right';
9
+ export type CTransition = CTransitionName | CTransitionStyles;
10
+ export declare const transitions: Record<CTransitionName, CTransitionStyles>;
@@ -0,0 +1,20 @@
1
+ import { Ref } from 'vue';
2
+ export type TransitionStatus = 'entered' | 'exited' | 'entering' | 'exiting' | 'pre-entering' | 'pre-exiting';
3
+ interface UseTransitionOptions {
4
+ duration: number;
5
+ exitDuration: number;
6
+ timingFunction: string;
7
+ mounted: Ref<boolean>;
8
+ onEnter?: () => void;
9
+ onExit?: () => void;
10
+ onEntered?: () => void;
11
+ onExited?: () => void;
12
+ enterDelay?: number;
13
+ exitDelay?: number;
14
+ }
15
+ export declare function useTransition({ duration, exitDuration, timingFunction, mounted, onEnter, onEntered, onExit, onExited, enterDelay, exitDelay, }: UseTransitionOptions): {
16
+ transitionDuration: Ref<number, number>;
17
+ transitionStatus: Ref<TransitionStatus, TransitionStatus>;
18
+ transitionTimingFunction: string;
19
+ };
20
+ export {};
@@ -14,4 +14,4 @@ export interface ParseStylePropsResult {
14
14
  styles: Properties;
15
15
  media: Record<string, Properties>;
16
16
  }
17
- export declare function parseStyleProps({ data, styleProps, theme }: ParseStylePropsOptions): SortMediaQueriesResult;
17
+ export declare function parseStyleProps({ data, styleProps, theme, }: ParseStylePropsOptions): SortMediaQueriesResult;
@@ -0,0 +1,3 @@
1
+ export { defaultCssVariablesResolver } from './default-css-variables-resolver';
2
+ export { getCSSColorVariables } from './get-css-color-variables';
3
+ export { virtualColor, isVirtualColor } from './virtual-color/virtual-color';
@@ -10,6 +10,6 @@ type VirtualColor = CColorsTuple & {
10
10
  dark: CColor;
11
11
  light: CColor;
12
12
  };
13
- export declare function VirtualColor(input: VirtualColorInput): CColorsTuple;
13
+ export declare function virtualColor(input: VirtualColorInput): CColorsTuple;
14
14
  export declare function isVirtualColor(value: unknown): value is VirtualColor;
15
15
  export {};
@@ -1,4 +1,5 @@
1
- export type { VariantColorsResolverInput, VariantColorsResolverResult, VariantColorsResolver } from './default-variant-colors-resolver/default-variant-colors-resolver';
1
+ export type { VariantColorsResolverInput, VariantColorsResolverResult, VariantColorsResolver, } from './default-variant-colors-resolver/default-variant-colors-resolver';
2
+ export { colorsTuple } from './colors-tuple/colors-tuple';
2
3
  export { darken } from './darken/darken';
3
4
  export { defaultVariantColorsResolver } from './default-variant-colors-resolver/default-variant-colors-resolver';
4
5
  export { getGradient } from './get-gradient/get-gradient';
@@ -13,5 +13,5 @@ interface ParseThemeColorResult {
13
13
  isThemeColor: boolean;
14
14
  isLight: boolean;
15
15
  }
16
- export declare function parseThemeColor({ color, colorScheme, theme }: ParseThemeColorOptions): ParseThemeColorResult;
16
+ export declare function parseThemeColor({ color, colorScheme, theme, }: ParseThemeColorOptions): ParseThemeColorResult;
17
17
  export {};
@@ -0,0 +1,4 @@
1
+ export { localStorageColorSchemeManager } from './local-storage-manager';
2
+ export { isCckColorScheme } from './is-cck-color-scheme';
3
+ export type { LocalStorageColorSchemeManagerOptions } from './local-storage-manager';
4
+ export type { CColorSchemeManager } from './types';
@@ -0,0 +1,2 @@
1
+ import type { CColorScheme } from '../theme.types';
2
+ export declare function isCckColorScheme(value: unknown): value is CColorScheme;
@@ -0,0 +1,5 @@
1
+ import type { CColorSchemeManager } from './types';
2
+ export interface LocalStorageColorSchemeManagerOptions {
3
+ key?: string;
4
+ }
5
+ export declare function localStorageColorSchemeManager({ key, }?: LocalStorageColorSchemeManagerOptions): CColorSchemeManager;
@@ -0,0 +1,30 @@
1
+ import type { CColorScheme } from '../theme.types';
2
+ export interface CColorSchemeManager {
3
+ /**
4
+ * @description Function to retrieve color scheme value from external storage, for example window.localStorage
5
+ * @returns color scheme value
6
+ */
7
+ get: (defaultValue: CColorScheme) => CColorScheme;
8
+ /**
9
+ * @description Function to set color scheme value in external storage, for example window.localStorage
10
+ * @param value color scheme value to be saved
11
+ * @returns
12
+ */
13
+ set: (value: CColorScheme) => void;
14
+ /**
15
+ * Function to subscribe to color scheme changes triggered by external events
16
+ * @param onUpdate Function to trigger when color scheme is updated
17
+ * @returns
18
+ */
19
+ subscribe: (onUpdate: (colorScheme: CColorScheme) => void) => void;
20
+ /**
21
+ * Function to unsubscribe from color scheme changes triggered by external events
22
+ * @returns
23
+ */
24
+ unsubscribe: () => void;
25
+ /**
26
+ * @description Function to clear value from external storage
27
+ * @returns
28
+ */
29
+ clear: () => void;
30
+ }
@@ -1,11 +1,12 @@
1
1
  import { CColorScheme, CTheme } from './theme.types';
2
2
  import { ConvertCSSVariablesInput } from './convert-css-variables';
3
+ import { ComputedRef } from 'vue';
3
4
  export interface CStylesTransform {
4
5
  sx?: () => (sx: any) => string;
5
6
  styles?: () => (styles: any, payload: any) => Record<string, string>;
6
7
  }
7
- interface CContextValue {
8
- colorScheme: CColorScheme;
8
+ export interface CContextValue {
9
+ colorScheme: ComputedRef<CColorScheme>;
9
10
  setColorScheme: (colorScheme: CColorScheme) => void;
10
11
  clearColorScheme: () => void;
11
12
  getRootElement: () => HTMLElement | undefined;
@@ -18,6 +19,7 @@ interface CContextValue {
18
19
  stylesTransform?: CStylesTransform;
19
20
  env?: 'default' | 'test';
20
21
  }
22
+ export declare function useCckTheme(): ComputedRef<CTheme>;
21
23
  export declare function useConfigContext(): CContextValue;
22
24
  export declare function useCckCssVariablesResolver(): ((theme: CTheme) => ConvertCSSVariablesInput) | undefined;
23
25
  export declare function useCckClassNamesPrefix(): string;
@@ -27,4 +29,3 @@ export declare function useCckIsHeadless(): boolean | undefined;
27
29
  export declare function useCckSxTransform(): (() => (sx: any) => string) | undefined;
28
30
  export declare function useCckStylesTransform(): (() => (styles: any, payload: any) => Record<string, string>) | undefined;
29
31
  export declare function useCckEnv(): "default" | "test";
30
- export {};
@@ -1,12 +1,18 @@
1
- import { CStylesTransform } from './config-provider.context';
2
- import { CColorScheme, CThemeOverride } from './theme.types';
3
- export declare const CONFIG_KEY: unique symbol;
4
- export declare const THEME_KEY: unique symbol;
1
+ import { ComputedRef, InjectionKey } from 'vue';
2
+ import { CColorSchemeManager } from './color-scheme-managers/types';
3
+ import { CContextValue, CStylesTransform } from './config-provider.context';
4
+ import { CColorScheme, CTheme, CThemeOverride } from './theme.types';
5
+ export declare const CONFIG_KEY: InjectionKey<CContextValue>;
6
+ export declare const THEME_KEY: InjectionKey<ComputedRef<CTheme>>;
5
7
  export interface ConfigProviderProps {
6
8
  /**
7
9
  * @description Theme override object
8
10
  */
9
11
  theme?: CThemeOverride;
12
+ /**
13
+ * @description Used to retrieve/set color scheme value in external storage, by default was `window.localStorage`
14
+ */
15
+ colorSchemeManager?: CColorSchemeManager;
10
16
  /**
11
17
  * @description Default color scheme value used when `colorSchemeManager` cannot retrieve value from external storage
12
18
  */
@@ -0,0 +1,2 @@
1
+ import { CThemeOverride } from '../theme.types';
2
+ export declare function createTheme(theme: CThemeOverride): CThemeOverride;
@@ -1,9 +1,12 @@
1
1
  import { SFCWithInstall } from '../utils';
2
2
  import ConfigProvider from './config-provider.vue';
3
+ export * from './cck-css-variables';
3
4
  export * from './color-functions';
4
5
  export * from './config-provider.context';
5
6
  export * from './config-provider.types';
7
+ export * from './create-theme/create-theme';
6
8
  export * from './default-theme';
7
9
  export * from './theme.types';
10
+ export * from './use-cck-color-scheme';
8
11
  export declare const CckConfigProvider: SFCWithInstall<typeof ConfigProvider>;
9
12
  export default CckConfigProvider;
@@ -0,0 +1 @@
1
+ export { mergeCckTheme, validateCckTheme } from './merge-cck-theme';
@@ -0,0 +1,5 @@
1
+ import type { CTheme, CThemeOverride } from '../theme.types';
2
+ export declare const INVALID_PRIMARY_COLOR_ERROR = "[@cck-ui/core] ConfigProvider: Invalid theme.primaryColor, it accepts only key of theme.colors";
3
+ export declare const INVALID_PRIMARY_SHADE_ERROR = "[@cck-ui/core] ConfigProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";
4
+ export declare function validateCckTheme(theme: CTheme): asserts theme is CTheme;
5
+ export declare function mergeCckTheme(currentTheme: CTheme, themeOverride?: CThemeOverride): CTheme;
@@ -0,0 +1,2 @@
1
+ export { useCckColorScheme } from './use-cck-color-scheme';
2
+ export { useProviderColorScheme } from './use-provider-color-scheme';
@@ -0,0 +1,10 @@
1
+ import { CColorScheme } from '../theme.types';
2
+ export declare function useCckColorScheme({ keepTransition }?: {
3
+ keepTransition?: boolean;
4
+ }): {
5
+ colorScheme: import("vue").ComputedRef<CColorScheme>;
6
+ computedColorScheme: import("vue").ComputedRef<"dark" | "light">;
7
+ setColorScheme: (value: CColorScheme) => void;
8
+ clearColorScheme: () => void;
9
+ toggleColorScheme: () => void;
10
+ };
@@ -0,0 +1,15 @@
1
+ import { type ComputedRef } from 'vue';
2
+ import type { CColorSchemeManager } from '../color-scheme-managers';
3
+ import type { CColorScheme } from '../theme.types';
4
+ interface UseProviderColorSchemeOptions {
5
+ manager: CColorSchemeManager;
6
+ defaultColorScheme: CColorScheme;
7
+ forceColorScheme: 'light' | 'dark' | undefined;
8
+ getRootElement: () => HTMLElement | undefined;
9
+ }
10
+ export declare function useProviderColorScheme({ manager, defaultColorScheme, getRootElement, forceColorScheme, }: UseProviderColorSchemeOptions): {
11
+ colorScheme: ComputedRef<CColorScheme>;
12
+ setColorScheme: (scheme: CColorScheme) => void;
13
+ clearColorScheme: () => void;
14
+ };
15
+ export {};
@@ -0,0 +1,7 @@
1
+ import { MaybeRef } from 'vue';
2
+ interface UseRespectReduceMotionOptions {
3
+ respectReduceMotion: MaybeRef<boolean>;
4
+ getRootElement: () => HTMLElement | undefined;
5
+ }
6
+ export declare function useRespectReduceMotion({ respectReduceMotion, getRootElement, }: UseRespectReduceMotionOptions): void;
7
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cck-ui/core",
3
- "version": "0.2.0",
3
+ "version": "0.3.3",
4
4
  "description": "Vue component library focused on usability, accessibility and developer experience",
5
5
  "homepage": "https://cck-ui.jackatlas.xyz",
6
6
  "license": "ISC",
@@ -40,10 +40,12 @@
40
40
  },
41
41
  "dependencies": {
42
42
  "@ctrl/tinycolor": "^4.2.0",
43
+ "@vueuse/core": "^14.3.0",
43
44
  "clsx": "^2.1.1",
44
45
  "type-fest": "^5.7.0"
45
46
  },
46
47
  "devDependencies": {
48
+ "@cck-ui/hooks": "workspace:*",
47
49
  "@vue/shared": "^3.5.39",
48
50
  "csstype": "^3.2.3",
49
51
  "es-toolkit": "^1.49.0",
package/styles/button.css CHANGED
@@ -39,11 +39,9 @@
39
39
  display: inline-block;
40
40
  border-radius: var(--button-radius, var(--c-radius-default));
41
41
  font-size: var(--button-fz, var(--c-font-size-sm));
42
- background: var(--button-bg, var(--c-primary-color-filled));
43
- border-color: var(--button-bd, transparent);
44
- border-style: solid;
45
- border-width: rem(1px);
46
- color: var(--button-color, var(--c-color-white));
42
+ background: var(--button-bg, var(--c-color-default));
43
+ border: var(--button-bd, rem(1px) solid var(--c-color-default-border));
44
+ color: var(--button-color, var(--c-color-default-color));
47
45
  height: var(--button-height, var(--button-height-sm));
48
46
  padding-inline: var(--button-padding-x, var(--button-padding-x-sm));
49
47
  vertical-align: middle;
@@ -108,7 +106,7 @@
108
106
 
109
107
  @mixin hover {
110
108
  &:where(:not([data-loading], :disabled, [data-disabled])) {
111
- background-color: var(--button-hover, var(--c-primary-color-filled-hover));
109
+ background-color: var(--button-hover, var(--c-color-default-hover));
112
110
  color: var(--button-hover-color, var(--button-color));
113
111
  }
114
112
  }
@@ -254,9 +252,7 @@
254
252
  border-radius: var(--section-radius, var(--c-radius-default));
255
253
  font-size: var(--section-fz, var(--c-font-size-sm));
256
254
  background: var(--section-bg, var(--c-primary-color-filled));
257
- border-color: var(--section-bd, transparent);
258
- border-style: solid;
259
- border-width: rem(1px);
255
+ border: var(--section-bd, rem(1px) solid transparent);
260
256
  height: var(--section-height, var(--section-height-sm));
261
257
  padding-inline: var(--section-padding-x, var(--section-padding-x-sm));
262
258
  vertical-align: middle;
@@ -39,11 +39,9 @@
39
39
  display: inline-block;
40
40
  border-radius: var(--button-radius, var(--c-radius-default));
41
41
  font-size: var(--button-fz, var(--c-font-size-sm));
42
- background: var(--button-bg, var(--c-primary-color-filled));
43
- border-color: var(--button-bd, transparent);
44
- border-style: solid;
45
- border-width: rem(1px);
46
- color: var(--button-color, var(--c-color-white));
42
+ background: var(--button-bg, var(--c-color-default));
43
+ border: var(--button-bd, rem(1px) solid var(--c-color-default-border));
44
+ color: var(--button-color, var(--c-color-default-color));
47
45
  height: var(--button-height, var(--button-height-sm));
48
46
  padding-inline: var(--button-padding-x, var(--button-padding-x-sm));
49
47
  vertical-align: middle;
@@ -108,7 +106,7 @@
108
106
 
109
107
  @mixin hover {
110
108
  &:where(:not([data-loading], :disabled, [data-disabled])) {
111
- background-color: var(--button-hover, var(--c-primary-color-filled-hover));
109
+ background-color: var(--button-hover, var(--c-color-default-hover));
112
110
  color: var(--button-hover-color, var(--button-color));
113
111
  }
114
112
  }
@@ -254,9 +252,7 @@
254
252
  border-radius: var(--section-radius, var(--c-radius-default));
255
253
  font-size: var(--section-fz, var(--c-font-size-sm));
256
254
  background: var(--section-bg, var(--c-primary-color-filled));
257
- border-color: var(--section-bd, transparent);
258
- border-style: solid;
259
- border-width: rem(1px);
255
+ border: var(--section-bd, rem(1px) solid transparent);
260
256
  height: var(--section-height, var(--section-height-sm));
261
257
  padding-inline: var(--section-padding-x, var(--section-padding-x-sm));
262
258
  vertical-align: middle;