@shohojdhara/atomix 0.3.14 → 0.3.15

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 (173) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/build-tools/EXAMPLES.md +372 -0
  3. package/build-tools/README.md +242 -0
  4. package/build-tools/__tests__/error-handler.test.js +230 -0
  5. package/build-tools/__tests__/index.test.js +141 -0
  6. package/build-tools/__tests__/rollup-plugin.test.js +194 -0
  7. package/build-tools/__tests__/utils.test.js +161 -0
  8. package/build-tools/__tests__/vite-plugin.test.js +129 -0
  9. package/build-tools/__tests__/webpack-loader.test.js +190 -0
  10. package/build-tools/error-handler.js +308 -0
  11. package/build-tools/index.d.ts +43 -0
  12. package/build-tools/index.js +88 -0
  13. package/build-tools/package.json +67 -0
  14. package/build-tools/rollup-plugin.js +236 -0
  15. package/build-tools/types.d.ts +163 -0
  16. package/build-tools/utils.js +203 -0
  17. package/build-tools/vite-plugin.js +161 -0
  18. package/build-tools/webpack-loader.js +123 -0
  19. package/dist/atomix.css +203 -90
  20. package/dist/atomix.css.map +1 -1
  21. package/dist/atomix.min.css +3 -3
  22. package/dist/atomix.min.css.map +1 -1
  23. package/dist/build-tools/EXAMPLES.md +372 -0
  24. package/dist/build-tools/README.md +242 -0
  25. package/dist/build-tools/__tests__/error-handler.test.js +230 -0
  26. package/dist/build-tools/__tests__/index.test.js +141 -0
  27. package/dist/build-tools/__tests__/rollup-plugin.test.js +194 -0
  28. package/dist/build-tools/__tests__/utils.test.js +161 -0
  29. package/dist/build-tools/__tests__/vite-plugin.test.js +129 -0
  30. package/dist/build-tools/__tests__/webpack-loader.test.js +190 -0
  31. package/dist/build-tools/error-handler.js +308 -0
  32. package/dist/build-tools/index.d.ts +43 -0
  33. package/dist/build-tools/index.js +88 -0
  34. package/dist/build-tools/package.json +67 -0
  35. package/dist/build-tools/rollup-plugin.js +236 -0
  36. package/dist/build-tools/types.d.ts +163 -0
  37. package/dist/build-tools/utils.js +203 -0
  38. package/dist/build-tools/vite-plugin.js +161 -0
  39. package/dist/build-tools/webpack-loader.js +123 -0
  40. package/dist/charts.d.ts +1 -1
  41. package/dist/charts.js +86 -57
  42. package/dist/charts.js.map +1 -1
  43. package/dist/core.d.ts +1 -1
  44. package/dist/core.js +136 -112
  45. package/dist/core.js.map +1 -1
  46. package/dist/forms.d.ts +2 -5
  47. package/dist/forms.js +140 -128
  48. package/dist/forms.js.map +1 -1
  49. package/dist/heavy.d.ts +1 -1
  50. package/dist/heavy.js +136 -112
  51. package/dist/heavy.js.map +1 -1
  52. package/dist/index.d.ts +9 -61
  53. package/dist/index.esm.js +237 -286
  54. package/dist/index.esm.js.map +1 -1
  55. package/dist/index.js +250 -299
  56. package/dist/index.js.map +1 -1
  57. package/dist/index.min.js +1 -1
  58. package/dist/index.min.js.map +1 -1
  59. package/package.json +23 -8
  60. package/scripts/atomix-cli.js +170 -73
  61. package/scripts/cli/__tests__/README.md +81 -0
  62. package/scripts/cli/__tests__/basic.test.js +115 -0
  63. package/scripts/cli/__tests__/component-generator.test.js +332 -0
  64. package/scripts/cli/__tests__/integration.test.js +327 -0
  65. package/scripts/cli/__tests__/test-setup.js +133 -0
  66. package/scripts/cli/__tests__/token-manager.test.js +251 -0
  67. package/scripts/cli/__tests__/utils.test.js +161 -0
  68. package/scripts/cli/component-generator.js +253 -299
  69. package/scripts/cli/dependency-checker.js +355 -0
  70. package/scripts/cli/interactive-init.js +46 -5
  71. package/scripts/cli/template-manager.js +0 -2
  72. package/scripts/cli/templates/common-templates.js +636 -0
  73. package/scripts/cli/templates/composable-templates.js +148 -126
  74. package/scripts/cli/templates/index.js +23 -16
  75. package/scripts/cli/templates/project-templates.js +151 -23
  76. package/scripts/cli/templates/react-templates.js +280 -210
  77. package/scripts/cli/templates/scss-templates.js +90 -91
  78. package/scripts/cli/templates/testing-templates.js +206 -27
  79. package/scripts/cli/templates/testing-utils.js +278 -0
  80. package/scripts/cli/templates/types-templates.js +70 -56
  81. package/scripts/cli/theme-bridge.js +8 -2
  82. package/scripts/cli/token-manager.js +318 -206
  83. package/scripts/cli/utils.js +0 -1
  84. package/src/components/Accordion/Accordion.stories.tsx +369 -870
  85. package/src/components/AtomixGlass/AtomixGlass.tsx +80 -39
  86. package/src/components/AtomixGlass/AtomixGlassContainer.tsx +103 -81
  87. package/src/components/AtomixGlass/__snapshots__/AtomixGlass.test.tsx.snap +8 -7
  88. package/src/components/AtomixGlass/glass-utils.ts +2 -2
  89. package/src/components/AtomixGlass/shader-utils.ts +5 -0
  90. package/src/components/AtomixGlass/stories/Customization.stories.tsx +131 -0
  91. package/src/components/AtomixGlass/stories/Examples.stories.tsx +2957 -2853
  92. package/src/components/AtomixGlass/stories/Modes.stories.tsx +1 -1
  93. package/src/components/AtomixGlass/stories/Overview.stories.tsx +348 -0
  94. package/src/components/AtomixGlass/stories/Performance.stories.tsx +103 -0
  95. package/src/components/AtomixGlass/stories/Playground.stories.tsx +50 -35
  96. package/src/components/AtomixGlass/stories/{ShaderVariants.stories.tsx → Shaders.stories.tsx} +1 -1
  97. package/src/components/AtomixGlass/stories/shared-components.tsx +90 -190
  98. package/src/components/Avatar/Avatar.stories.tsx +213 -1
  99. package/src/components/Badge/Badge.stories.tsx +121 -362
  100. package/src/components/Block/Block.stories.tsx +21 -12
  101. package/src/components/Breadcrumb/Breadcrumb.stories.tsx +141 -23
  102. package/src/components/Button/Button.stories.tsx +463 -1126
  103. package/src/components/Button/Button.test.tsx +107 -0
  104. package/src/components/Button/Button.tsx +46 -50
  105. package/src/components/Button/ButtonGroup.stories.tsx +373 -217
  106. package/src/components/Callout/Callout.stories.tsx +289 -634
  107. package/src/components/Card/Card.stories.tsx +248 -68
  108. package/src/components/Chart/Chart.stories.tsx +150 -8
  109. package/src/components/ColorModeToggle/ColorModeToggle.stories.tsx +151 -69
  110. package/src/components/Countdown/Countdown.stories.tsx +115 -8
  111. package/src/components/DataTable/DataTable.stories.tsx +346 -146
  112. package/src/components/DatePicker/DatePicker.stories.tsx +325 -1066
  113. package/src/components/Dropdown/Dropdown.stories.tsx +153 -33
  114. package/src/components/EdgePanel/EdgePanel.stories.tsx +230 -21
  115. package/src/components/Footer/Footer.stories.tsx +392 -328
  116. package/src/components/Form/Checkbox.stories.tsx +140 -6
  117. package/src/components/Form/Checkbox.test.tsx +63 -0
  118. package/src/components/Form/Checkbox.tsx +87 -51
  119. package/src/components/Form/Form.stories.tsx +119 -20
  120. package/src/components/Form/FormGroup.stories.tsx +127 -4
  121. package/src/components/Form/Radio.stories.tsx +140 -5
  122. package/src/components/Form/Select.stories.tsx +140 -8
  123. package/src/components/Form/Textarea.stories.tsx +149 -6
  124. package/src/components/Hero/Hero.stories.tsx +333 -32
  125. package/src/components/List/List.stories.tsx +141 -3
  126. package/src/components/Modal/Modal.stories.tsx +181 -42
  127. package/src/components/Popover/Popover.stories.tsx +448 -98
  128. package/src/components/Progress/Progress.stories.tsx +167 -5
  129. package/src/components/River/River.stories.tsx +1 -1
  130. package/src/components/SectionIntro/SectionIntro.stories.tsx +240 -48
  131. package/src/components/Spinner/Spinner.stories.tsx +102 -8
  132. package/src/components/Steps/Steps.stories.tsx +172 -43
  133. package/src/components/Tabs/Tabs.stories.tsx +136 -10
  134. package/src/components/Testimonial/Testimonial.stories.tsx +120 -3
  135. package/src/components/Todo/Todo.stories.tsx +198 -9
  136. package/src/components/Toggle/Toggle.stories.tsx +126 -39
  137. package/src/components/Tooltip/Tooltip.stories.tsx +194 -104
  138. package/src/components/Upload/Upload.stories.tsx +113 -24
  139. package/src/lib/README.md +2 -2
  140. package/src/lib/__tests__/theme-tools.test.ts +193 -0
  141. package/src/lib/composables/index.ts +2 -2
  142. package/src/lib/composables/useAtomixGlass.ts +28 -56
  143. package/src/lib/composables/useChartExport.ts +2 -7
  144. package/src/lib/composables/useDataTable.ts +46 -29
  145. package/src/lib/constants/components.ts +9 -32
  146. package/src/lib/theme/devtools/CLI.ts +1 -1
  147. package/src/lib/types/components.ts +1 -1
  148. package/src/lib/utils/__tests__/csv.test.ts +45 -0
  149. package/src/lib/utils/csv.ts +17 -0
  150. package/src/lib/utils/dataTableExport.ts +1 -10
  151. package/src/styles/01-settings/_index.scss +2 -1
  152. package/src/styles/01-settings/_settings.accordion.scss +28 -7
  153. package/src/styles/01-settings/_settings.colors.scss +11 -11
  154. package/src/styles/01-settings/_settings.typography.scss +5 -5
  155. package/src/styles/02-tools/_tools.utility-api.scss +14 -0
  156. package/src/styles/06-components/_components.accordion.scss +56 -14
  157. package/src/styles/06-components/_components.checkbox.scss +23 -17
  158. package/src/styles/99-utilities/_index.scss +2 -0
  159. package/src/styles/99-utilities/_utilities.scss +3 -1
  160. package/src/styles/99-utilities/_utilities.text-gradient.scss +45 -0
  161. package/themes/dark-complementary/README.md +98 -0
  162. package/themes/dark-complementary/index.scss +158 -0
  163. package/themes/default-light/README.md +81 -0
  164. package/themes/default-light/index.scss +154 -0
  165. package/themes/high-contrast/README.md +105 -0
  166. package/themes/high-contrast/index.scss +172 -0
  167. package/themes/test-theme/README.md +38 -0
  168. package/themes/test-theme/index.scss +47 -0
  169. package/scripts/cli/templates-original-backup.js +0 -1655
  170. package/scripts/cli/templates_backup.js +0 -684
  171. package/src/components/AtomixGlass/stories/AtomixGlass.stories.tsx +0 -1438
  172. package/src/lib/composables/useButton.ts +0 -93
  173. package/src/lib/composables/useCheckbox.ts +0 -70
@@ -1,93 +0,0 @@
1
- import { ButtonProps } from '../types/components';
2
- import { BUTTON } from '../constants/components';
3
-
4
- /**
5
- * Button state and functionality
6
- * @param initialProps - Initial button properties
7
- * @returns Button state and methods
8
- */
9
- export function useButton(initialProps?: Partial<ButtonProps>) {
10
- // Default button properties
11
- const defaultProps: Partial<ButtonProps> = {
12
- variant: 'primary',
13
- size: 'md',
14
- disabled: false,
15
- rounded: false,
16
- loading: false,
17
- fullWidth: false,
18
- block: false,
19
- active: false,
20
- selected: false,
21
- ...initialProps,
22
- };
23
-
24
- /**
25
- * Generate button class based on properties
26
- * @param props - Button properties
27
- * @returns Class string
28
- */
29
- const generateButtonClass = (props: Partial<ButtonProps>): string => {
30
- const {
31
- variant = defaultProps.variant,
32
- size = defaultProps.size,
33
- disabled = defaultProps.disabled,
34
- rounded = defaultProps.rounded,
35
- iconOnly = false,
36
- glass = defaultProps.glass,
37
- loading = defaultProps.loading,
38
- fullWidth = defaultProps.fullWidth,
39
- block = defaultProps.block,
40
- active = defaultProps.active,
41
- selected = defaultProps.selected,
42
- className = '',
43
- } = props;
44
-
45
- const sizeClass = size === 'md' ? '' : `c-btn--${size}`;
46
- const iconOnlyClass = iconOnly ? 'c-btn--icon' : '';
47
- const roundedClass = rounded ? 'c-btn--rounded' : '';
48
- const disabledClass = disabled ? 'c-btn--disabled' : '';
49
- const glassClass = glass ? 'c-btn--glass' : '';
50
- const loadingClass = loading ? BUTTON.CLASSES.LOADING : '';
51
- const fullWidthClass = fullWidth ? BUTTON.CLASSES.FULL_WIDTH : '';
52
- const blockClass = block ? BUTTON.CLASSES.BLOCK : '';
53
- const activeClass = active ? BUTTON.CLASSES.ACTIVE : '';
54
- const selectedClass = selected ? BUTTON.CLASSES.SELECTED : '';
55
-
56
- return [
57
- BUTTON.BASE_CLASS,
58
- `c-btn--${variant}`,
59
- sizeClass,
60
- iconOnlyClass,
61
- roundedClass,
62
- disabledClass,
63
- glassClass,
64
- loadingClass,
65
- fullWidthClass,
66
- blockClass,
67
- activeClass,
68
- selectedClass,
69
- className,
70
- ]
71
- .filter(Boolean)
72
- .join(' ');
73
- };
74
-
75
- /**
76
- * Handle button click with disabled check
77
- * @param handler - Click handler function
78
- * @returns Function that respects disabled state
79
- */
80
- const handleClick = (handler?: (event: React.MouseEvent<HTMLButtonElement>) => void) => {
81
- return (event: React.MouseEvent<HTMLButtonElement>) => {
82
- if (!defaultProps.disabled && !defaultProps.loading && handler) {
83
- handler(event);
84
- }
85
- };
86
- };
87
-
88
- return {
89
- defaultProps,
90
- generateButtonClass,
91
- handleClick,
92
- };
93
- }
@@ -1,70 +0,0 @@
1
- import { useRef, useEffect } from 'react';
2
- import { CheckboxProps } from '../types/components';
3
-
4
- // Define checkbox class constants
5
- const CHECKBOX_CLASSES = {
6
- BASE: 'c-checkbox',
7
- INVALID: 'is-error',
8
- VALID: 'is-valid',
9
- DISABLED: 'is-disabled',
10
- MIXED: 'c-checkbox--mixed',
11
- };
12
-
13
- /**
14
- * Checkbox state and functionality
15
- * @param initialProps - Initial checkbox properties
16
- * @returns Checkbox state and methods
17
- */
18
- export function useCheckbox(initialProps?: Partial<CheckboxProps>) {
19
- // Default checkbox properties
20
- const defaultProps: Partial<CheckboxProps> = {
21
- disabled: false,
22
- invalid: false,
23
- valid: false,
24
- indeterminate: false,
25
- ...initialProps,
26
- };
27
-
28
- // Ref for the checkbox input element
29
- const checkboxRef = useRef<HTMLInputElement>(null);
30
-
31
- // Handle indeterminate state
32
- useEffect(() => {
33
- if (checkboxRef.current) {
34
- checkboxRef.current.indeterminate = Boolean(defaultProps.indeterminate);
35
- }
36
- }, [defaultProps.indeterminate]);
37
-
38
- /**
39
- * Generate checkbox class based on properties
40
- * @param props - Checkbox properties
41
- * @returns Class string
42
- */
43
- const generateCheckboxClass = (props: Partial<CheckboxProps>): string => {
44
- const {
45
- disabled = defaultProps.disabled,
46
- invalid = defaultProps.invalid,
47
- valid = defaultProps.valid,
48
- indeterminate = defaultProps.indeterminate,
49
- className = '',
50
- } = props;
51
-
52
- let validationClass = '';
53
- if (invalid) {
54
- validationClass = CHECKBOX_CLASSES.INVALID;
55
- } else if (valid) {
56
- validationClass = CHECKBOX_CLASSES.VALID;
57
- }
58
-
59
- const disabledClass = disabled ? CHECKBOX_CLASSES.DISABLED : '';
60
- const indeterminateClass = indeterminate ? CHECKBOX_CLASSES.MIXED : '';
61
-
62
- return `${CHECKBOX_CLASSES.BASE} ${validationClass} ${disabledClass} ${indeterminateClass} ${className}`.trim();
63
- };
64
-
65
- return {
66
- defaultProps,
67
- generateCheckboxClass,
68
- checkboxRef,
69
- };
70
- }