@shohojdhara/atomix 0.3.4 → 0.3.6

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 (237) hide show
  1. package/README.md +101 -199
  2. package/atomix.config.ts +241 -0
  3. package/dist/atomix.css +269 -189
  4. package/dist/atomix.css.map +1 -0
  5. package/dist/atomix.min.css +15179 -11
  6. package/dist/atomix.min.css.map +1 -0
  7. package/dist/charts.d.ts +1929 -0
  8. package/dist/charts.js +6477 -0
  9. package/dist/charts.js.map +1 -0
  10. package/dist/core.d.ts +1289 -0
  11. package/dist/core.js +3373 -0
  12. package/dist/core.js.map +1 -0
  13. package/dist/forms.d.ts +1085 -0
  14. package/dist/forms.js +2466 -0
  15. package/dist/forms.js.map +1 -0
  16. package/dist/heavy.d.ts +636 -0
  17. package/dist/heavy.js +4566 -0
  18. package/dist/heavy.js.map +1 -0
  19. package/dist/index.d.ts +5171 -4792
  20. package/dist/index.esm.js +6098 -4563
  21. package/dist/index.esm.js.map +1 -1
  22. package/dist/index.js +6291 -4747
  23. package/dist/index.js.map +1 -1
  24. package/dist/index.min.js +1 -1
  25. package/dist/index.min.js.map +1 -1
  26. package/dist/layout.d.ts +300 -0
  27. package/dist/layout.js +336 -0
  28. package/dist/layout.js.map +1 -0
  29. package/dist/theme.d.ts +2122 -0
  30. package/dist/theme.js +6084 -0
  31. package/dist/theme.js.map +1 -0
  32. package/package.json +59 -27
  33. package/scripts/atomix-cli.js +544 -16
  34. package/scripts/cli/__tests__/cli-commands.test.js +204 -0
  35. package/scripts/cli/__tests__/utils.test.js +201 -0
  36. package/scripts/cli/__tests__/vitest.config.js +26 -0
  37. package/scripts/cli/interactive-init.js +1 -1
  38. package/scripts/cli/token-manager.js +32 -7
  39. package/scripts/cli/utils.js +347 -0
  40. package/src/components/Accordion/Accordion.stories.tsx +50 -17
  41. package/src/components/Accordion/Accordion.tsx +5 -54
  42. package/src/components/Accordion/index.ts +1 -1
  43. package/src/components/AtomixGlass/AtomixGlass.tsx +65 -31
  44. package/src/components/AtomixGlass/AtomixGlassContainer.tsx +11 -4
  45. package/src/components/AtomixGlass/stories/AtomixGlass.stories.tsx +1 -32
  46. package/src/components/AtomixGlass/stories/Examples.stories.tsx +2 -2
  47. package/src/components/AtomixGlass/stories/shared-components.tsx +0 -31
  48. package/src/components/Avatar/Avatar.stories.tsx +7 -0
  49. package/src/components/Avatar/Avatar.tsx +3 -3
  50. package/src/components/Badge/Badge.stories.tsx +91 -13
  51. package/src/components/Badge/Badge.tsx +3 -3
  52. package/src/components/Block/Block.stories.tsx +7 -23
  53. package/src/components/Breadcrumb/Breadcrumb.stories.tsx +7 -0
  54. package/src/components/Breadcrumb/Breadcrumb.tsx +3 -3
  55. package/src/components/Button/Button.stories.tsx +141 -22
  56. package/src/components/Button/ButtonGroup.stories.tsx +315 -0
  57. package/src/components/Button/ButtonGroup.tsx +67 -0
  58. package/src/components/Button/index.ts +2 -0
  59. package/src/components/Callout/Callout.stories.tsx +8 -6
  60. package/src/components/Card/Card.stories.tsx +82 -28
  61. package/src/components/Card/ElevationCard.tsx +1 -1
  62. package/src/components/Chart/AnimatedChart.tsx +19 -18
  63. package/src/components/Chart/AreaChart.tsx +5 -2
  64. package/src/components/Chart/BarChart.tsx +1 -1
  65. package/src/components/Chart/BubbleChart.tsx +6 -6
  66. package/src/components/Chart/CandlestickChart.tsx +0 -1
  67. package/src/components/Chart/Chart.stories.tsx +5 -7
  68. package/src/components/Chart/Chart.tsx +0 -16
  69. package/src/components/Chart/ChartRenderer.tsx +1 -1
  70. package/src/components/Chart/ChartToolbar.tsx +1 -0
  71. package/src/components/Chart/DonutChart.tsx +0 -1
  72. package/src/components/Chart/FunnelChart.tsx +1 -2
  73. package/src/components/Chart/GaugeChart.tsx +0 -1
  74. package/src/components/Chart/HeatmapChart.tsx +0 -1
  75. package/src/components/Chart/LineChart.tsx +0 -1
  76. package/src/components/Chart/MultiAxisChart.tsx +0 -1
  77. package/src/components/Chart/PieChart.tsx +0 -1
  78. package/src/components/Chart/RadarChart.tsx +19 -13
  79. package/src/components/Chart/ScatterChart.tsx +3 -4
  80. package/src/components/Chart/TreemapChart.tsx +2 -1
  81. package/src/components/Chart/WaterfallChart.tsx +0 -2
  82. package/src/components/Chart/types.ts +12 -2
  83. package/src/components/Chart/utils.ts +4 -3
  84. package/src/components/ColorModeToggle/ColorModeToggle.stories.tsx +7 -0
  85. package/src/components/DataTable/DataTable.stories.tsx +23 -16
  86. package/src/components/DataTable/DataTable.tsx +3 -3
  87. package/src/components/DatePicker/DatePicker.stories.tsx +27 -19
  88. package/src/components/Dropdown/Dropdown.stories.tsx +11 -19
  89. package/src/components/Dropdown/Dropdown.tsx +12 -9
  90. package/src/components/EdgePanel/EdgePanel.stories.tsx +1 -0
  91. package/src/components/Footer/Footer.stories.tsx +8 -6
  92. package/src/components/Footer/FooterLink.tsx +9 -2
  93. package/src/components/Footer/FooterSection.tsx +3 -3
  94. package/src/components/Form/Checkbox.stories.tsx +7 -0
  95. package/src/components/Form/Checkbox.tsx +3 -3
  96. package/src/components/Form/Form.stories.tsx +7 -0
  97. package/src/components/Form/FormGroup.stories.tsx +9 -1
  98. package/src/components/Form/Input.stories.tsx +69 -16
  99. package/src/components/Form/Input.tsx +4 -2
  100. package/src/components/Form/Radio.stories.tsx +9 -1
  101. package/src/components/Form/Radio.tsx +3 -3
  102. package/src/components/Form/Select.stories.tsx +9 -1
  103. package/src/components/Form/Select.tsx +3 -3
  104. package/src/components/Form/Textarea.stories.tsx +10 -2
  105. package/src/components/Form/Textarea.tsx +4 -2
  106. package/src/components/Hero/Hero.stories.tsx +7 -0
  107. package/src/components/List/List.stories.tsx +10 -3
  108. package/src/components/List/List.tsx +3 -3
  109. package/src/components/List/ListGroup.tsx +3 -1
  110. package/src/components/Messages/Messages.stories.tsx +8 -7
  111. package/src/components/Modal/Modal.stories.tsx +17 -6
  112. package/src/components/Modal/Modal.tsx +3 -3
  113. package/src/components/Navigation/Menu/MegaMenu.tsx +9 -3
  114. package/src/components/Navigation/Menu/Menu.stories.tsx +7 -0
  115. package/src/components/Navigation/Menu/Menu.tsx +9 -3
  116. package/src/components/Navigation/Nav/Nav.stories.tsx +7 -0
  117. package/src/components/Navigation/Navbar/Navbar.stories.tsx +1 -0
  118. package/src/components/Navigation/SideMenu/SideMenu.stories.tsx +1 -1
  119. package/src/components/Pagination/Pagination.stories.tsx +188 -111
  120. package/src/components/Pagination/Pagination.tsx +88 -7
  121. package/src/components/PhotoViewer/PhotoViewer.stories.tsx +10 -5
  122. package/src/components/PhotoViewer/PhotoViewerImage.tsx +2 -2
  123. package/src/components/Popover/Popover.stories.tsx +191 -115
  124. package/src/components/Popover/Popover.tsx +4 -4
  125. package/src/components/ProductReview/ProductReview.stories.tsx +80 -58
  126. package/src/components/Progress/Progress.stories.tsx +79 -49
  127. package/src/components/Progress/Progress.tsx +6 -2
  128. package/src/components/Rating/Rating.stories.tsx +109 -84
  129. package/src/components/Rating/Rating.tsx +5 -2
  130. package/src/components/River/River.stories.tsx +194 -114
  131. package/src/components/SectionIntro/SectionIntro.stories.tsx +19 -9
  132. package/src/components/Slider/Slider.stories.tsx +7 -0
  133. package/src/components/Slider/Slider.tsx +10 -9
  134. package/src/components/Spinner/Spinner.stories.tsx +15 -11
  135. package/src/components/Spinner/Spinner.tsx +3 -3
  136. package/src/components/Steps/Steps.stories.tsx +132 -98
  137. package/src/components/Tabs/Tabs.stories.tsx +163 -112
  138. package/src/components/Tabs/Tabs.tsx +3 -3
  139. package/src/components/Testimonial/Testimonial.stories.tsx +114 -68
  140. package/src/components/Todo/Todo.stories.tsx +38 -12
  141. package/src/components/Toggle/Toggle.stories.tsx +61 -28
  142. package/src/components/Tooltip/Tooltip.stories.tsx +318 -200
  143. package/src/components/Tooltip/Tooltip.tsx +3 -3
  144. package/src/components/Upload/Upload.stories.tsx +122 -84
  145. package/src/components/VideoPlayer/VideoPlayer.stories.tsx +7 -24
  146. package/src/components/index.ts +6 -2
  147. package/src/layouts/MasonryGrid/MasonryGrid.tsx +2 -2
  148. package/src/lib/composables/useAtomixGlass.ts +2 -3
  149. package/src/lib/composables/useChartPerformance.ts +102 -78
  150. package/src/lib/composables/useChartScale.ts +10 -0
  151. package/src/lib/composables/useHero.ts +9 -2
  152. package/src/lib/composables/useHeroBackgroundSlider.ts +5 -3
  153. package/src/lib/composables/useNavbar.ts +0 -10
  154. package/src/lib/composables/useSideMenu.ts +1 -0
  155. package/src/lib/composables/useVideoPlayer.ts +3 -2
  156. package/src/lib/config/loader.ts +57 -14
  157. package/src/lib/constants/components.ts +10 -0
  158. package/src/lib/hooks/index.ts +0 -1
  159. package/src/lib/hooks/useComponentCustomization.ts +11 -15
  160. package/src/lib/hooks/usePerformanceMonitor.ts +149 -0
  161. package/src/lib/patterns/index.ts +2 -2
  162. package/src/lib/patterns/slots.tsx +2 -2
  163. package/src/lib/theme/README.md +174 -0
  164. package/src/lib/theme/adapters/index.ts +31 -0
  165. package/src/lib/theme/adapters/themeAdapter.ts +287 -0
  166. package/src/lib/theme/config/__tests__/configLoader.test.ts +207 -0
  167. package/src/lib/theme/config/configLoader.ts +254 -0
  168. package/src/lib/theme/config/loader.ts +37 -48
  169. package/src/lib/theme/config/types.ts +2 -2
  170. package/src/lib/theme/config/validator.ts +15 -91
  171. package/src/lib/theme/{constants.ts → constants/constants.ts} +0 -18
  172. package/src/lib/theme/constants/index.ts +8 -0
  173. package/src/lib/theme/core/ThemeRegistry.ts +19 -6
  174. package/src/lib/theme/core/__tests__/createTheme.test.ts +132 -0
  175. package/src/lib/theme/core/composeTheme.ts +155 -0
  176. package/src/lib/theme/core/createTheme.ts +94 -0
  177. package/src/lib/theme/{createTheme.ts → core/createThemeObject.ts} +10 -6
  178. package/src/lib/theme/core/index.ts +5 -19
  179. package/src/lib/theme/devtools/Comparator.tsx +346 -22
  180. package/src/lib/theme/devtools/IMPROVEMENTS.md +139 -38
  181. package/src/lib/theme/devtools/Inspector.tsx +335 -51
  182. package/src/lib/theme/devtools/LiveEditor.tsx +489 -112
  183. package/src/lib/theme/devtools/Preview.tsx +471 -221
  184. package/src/lib/theme/{core → devtools}/ThemeValidator.ts +6 -3
  185. package/src/lib/theme/devtools/index.ts +14 -4
  186. package/src/lib/theme/devtools/useHistory.ts +130 -0
  187. package/src/lib/theme/errors/index.ts +12 -0
  188. package/src/lib/theme/generators/cssFile.ts +79 -0
  189. package/src/lib/theme/generators/generateCSS.ts +89 -0
  190. package/src/lib/theme/{generateCSSVariables.ts → generators/generateCSSVariables.ts} +4 -14
  191. package/src/lib/theme/generators/index.ts +19 -0
  192. package/src/lib/theme/i18n/rtl.ts +7 -7
  193. package/src/lib/theme/index.ts +120 -15
  194. package/src/lib/theme/runtime/ThemeApplicator.ts +53 -95
  195. package/src/lib/theme/{ThemeContext.tsx → runtime/ThemeContext.tsx} +1 -1
  196. package/src/lib/theme/runtime/ThemeErrorBoundary.tsx +4 -4
  197. package/src/lib/theme/runtime/ThemeProvider.tsx +456 -179
  198. package/src/lib/theme/runtime/index.ts +1 -2
  199. package/src/lib/theme/runtime/useTheme.ts +1 -2
  200. package/src/lib/theme/test/testTheme.ts +385 -0
  201. package/src/lib/theme/tokens/index.ts +12 -0
  202. package/src/lib/theme/tokens/tokens.ts +721 -0
  203. package/src/lib/theme/types.ts +6 -42
  204. package/src/lib/theme/{utils.ts → utils/domUtils.ts} +2 -2
  205. package/src/lib/theme/utils/index.ts +11 -0
  206. package/src/lib/theme/utils/injectCSS.ts +90 -0
  207. package/src/lib/theme/utils/themeHelpers.ts +78 -0
  208. package/src/lib/theme/{themeUtils.ts → utils/themeUtils.ts} +1 -1
  209. package/src/lib/theme-tools.ts +8 -9
  210. package/src/lib/types/components.ts +93 -34
  211. package/src/lib/types/partProps.ts +0 -16
  212. package/src/lib/utils/componentUtils.ts +1 -1
  213. package/src/lib/utils/fontPreloader.ts +148 -0
  214. package/src/lib/utils/index.ts +11 -0
  215. package/src/lib/utils/memoryMonitor.ts +189 -0
  216. package/src/styles/01-settings/_settings.design-tokens.scss +4 -1
  217. package/src/styles/01-settings/_settings.fonts.scss +2 -5
  218. package/src/styles/02-tools/_tools.button.scss +66 -79
  219. package/src/styles/06-components/_components.atomix-glass.scss +13 -3
  220. package/src/styles/06-components/_components.navbar.scss +0 -6
  221. package/src/styles/06-components/_components.pagination.scss +88 -0
  222. package/scripts/build-themes.js +0 -208
  223. package/scripts/sync-theme-config.js +0 -309
  224. package/src/components/AtomixGlass/atomixGLass.old.tsx +0 -1263
  225. package/src/lib/theme/composeTheme.ts +0 -370
  226. package/src/lib/theme/core/ThemeCache.ts +0 -283
  227. package/src/lib/theme/core/ThemeEngine.test.ts +0 -146
  228. package/src/lib/theme/core/ThemeEngine.ts +0 -657
  229. package/src/lib/theme/createThemeFromConfig.ts +0 -132
  230. package/src/lib/theme/devtools/CLI.ts +0 -364
  231. package/src/lib/theme/runtime/ThemeManager.test.ts +0 -192
  232. package/src/lib/theme/runtime/ThemeManager.ts +0 -442
  233. package/src/styles/03-generic/_generated-root.css +0 -5
  234. package/src/themes/README.md +0 -442
  235. package/src/themes/themes.config.js +0 -35
  236. /package/src/lib/theme/{cssVariableMapper.ts → adapters/cssVariableMapper.ts} +0 -0
  237. /package/src/lib/theme/{errors.ts → errors/errors.ts} +0 -0
package/package.json CHANGED
@@ -1,9 +1,15 @@
1
1
  {
2
2
  "name": "@shohojdhara/atomix",
3
- "version": "0.3.4",
3
+ "version": "0.3.6",
4
4
  "description": "Atomix Design System - A modern component library for web applications",
5
5
  "type": "module",
6
- "sideEffects": false,
6
+ "sideEffects": [
7
+ "**/*.css",
8
+ "**/*.scss",
9
+ "**/*.sass",
10
+ "src/styles/**/*",
11
+ "src/lib/theme/**/*"
12
+ ],
7
13
  "main": "dist/index.js",
8
14
  "module": "dist/index.esm.js",
9
15
  "types": "dist/index.d.ts",
@@ -76,16 +82,34 @@
76
82
  "default": "./src/styles/99-utilities/_index.scss"
77
83
  },
78
84
  "./theme": {
79
- "types": "./dist/lib/theme/index.d.ts",
80
- "import": "./dist/lib/theme/index.js",
81
- "require": "./dist/lib/theme/index.js",
82
- "default": "./dist/lib/theme/index.js"
85
+ "types": "./dist/theme.d.ts",
86
+ "import": "./dist/theme.js",
87
+ "default": "./dist/theme.js"
88
+ },
89
+ "./charts": {
90
+ "types": "./dist/charts.d.ts",
91
+ "import": "./dist/charts.js",
92
+ "default": "./dist/charts.js"
93
+ },
94
+ "./forms": {
95
+ "types": "./dist/forms.d.ts",
96
+ "import": "./dist/forms.js",
97
+ "default": "./dist/forms.js"
83
98
  },
84
- "./config": {
85
- "types": "./dist/lib/config/index.d.ts",
86
- "import": "./dist/lib/config/index.js",
87
- "require": "./dist/lib/config/index.js",
88
- "default": "./dist/lib/config/index.js"
99
+ "./layout": {
100
+ "types": "./dist/layout.d.ts",
101
+ "import": "./dist/layout.js",
102
+ "default": "./dist/layout.js"
103
+ },
104
+ "./core": {
105
+ "types": "./dist/core.d.ts",
106
+ "import": "./dist/core.js",
107
+ "default": "./dist/core.js"
108
+ },
109
+ "./heavy": {
110
+ "types": "./dist/heavy.d.ts",
111
+ "import": "./dist/heavy.js",
112
+ "default": "./dist/heavy.js"
89
113
  },
90
114
  "./package.json": "./package.json"
91
115
  },
@@ -99,7 +123,8 @@
99
123
  "inquirer": "^9.2.0",
100
124
  "ora": "^6.3.0",
101
125
  "postcss": "^8.4.31",
102
- "sass": "^1.69.0"
126
+ "sass": "^1.69.0",
127
+ "ts-node": "^10.9.0"
103
128
  },
104
129
  "devDependencies": {
105
130
  "@arethetypeswrong/cli": "^0.15.0",
@@ -110,11 +135,14 @@
110
135
  "@babel/preset-typescript": "^7.23.0",
111
136
  "@babel/runtime-corejs3": "^7.23.0",
112
137
  "@changesets/cli": "^2.26.0",
138
+ "browserslist": "^4.23.0",
139
+ "@phosphor-icons/react": "2.1.10",
113
140
  "@rollup/plugin-babel": "^6.0.0",
114
141
  "@rollup/plugin-commonjs": "^25.0.0",
115
142
  "@rollup/plugin-node-resolve": "^15.0.0",
116
143
  "@rollup/plugin-terser": "^0.4.0",
117
144
  "@rollup/plugin-typescript": "^11.0.0",
145
+ "rollup-plugin-visualizer": "^5.12.0",
118
146
  "@storybook/addon-essentials": "^8.6.14",
119
147
  "@storybook/addon-interactions": "^8.6.14",
120
148
  "@storybook/addon-links": "^8.6.14",
@@ -142,7 +170,6 @@
142
170
  "@typescript-eslint/eslint-plugin": "^6.0.0",
143
171
  "@typescript-eslint/parser": "^6.0.0",
144
172
  "@vitejs/plugin-react": "^4.0.0",
145
- "@phosphor-icons/react": "2.1.10",
146
173
  "concurrently": "^8.0.0",
147
174
  "eslint": "^8.0.0",
148
175
  "eslint-plugin-import": "^2.29.0",
@@ -173,14 +200,22 @@
173
200
  },
174
201
  "scripts": {
175
202
  "dev": "storybook dev -p 6006",
176
- "build": "rollup -c && rollup -c rollup.styles.config.js && node scripts/build-themes.js",
177
- "build:styles": "rollup -c rollup.styles.config.js",
178
- "build:themes": "node scripts/build-themes.js",
203
+ "build": "npm run prebuild && npm run build:parallel",
204
+ "build:sequential": "rollup -c",
205
+ "build:js": "rollup -c rollup.config.build.js",
206
+ "build:types": "rollup -c rollup.config.types.js",
207
+ "build:styles": "rollup -c rollup.config.styles.js",
208
+ "build:themes": "rollup -c rollup/config/themes.js",
209
+ "build:parallel": "concurrently \"npm:build:js\" \"npm:build:types\" \"npm:build:styles\"",
210
+ "build:analyze": "ANALYZE=true rollup -c",
179
211
  "build:storybook": "storybook build",
180
212
  "test": "vitest",
181
213
  "test:coverage": "vitest --coverage",
182
- "lint": "eslint src --ext .ts,.tsx,.js,.jsx",
183
- "lint:fix": "eslint src --ext .ts,.tsx,.js,.jsx --fix",
214
+ "test:cli": "vitest run scripts/cli/__tests__",
215
+ "test:cli:watch": "vitest scripts/cli/__tests__",
216
+ "test:cli:coverage": "vitest run --coverage scripts/cli/__tests__",
217
+ "lint": "eslint src",
218
+ "lint:fix": "eslint src --fix",
184
219
  "prettier": "prettier --write 'src/**/*.{ts,tsx,js,jsx,json,css,scss}'",
185
220
  "clean": "rimraf dist",
186
221
  "clean:all": "rimraf dist && rimraf .storybook/dist && rimraf storybook-static",
@@ -188,27 +223,24 @@
188
223
  "changeset": "changeset",
189
224
  "typecheck": "tsc --noEmit",
190
225
  "attw": "attw --pack",
191
- "sync:config": "npx tsx scripts/sync-theme-config-ts.ts",
192
226
  "sync:tokens": "npx tsx scripts/generate-tokens.ts",
193
227
  "validate:config": "npx tsx scripts/validate-config-sync.ts",
194
- "prebuild": "npm run sync:config && npm run validate:config",
195
- "prebuild:with-tokens": "npm run sync:config && npm run sync:tokens && npm run validate:config",
228
+ "prebuild": "npm run validate:config",
229
+ "prebuild:with-tokens": "npm run sync:tokens && npm run validate:config",
230
+ "verify:build": "node scripts/verify-build.js",
231
+ "test:build": "node scripts/test-build.js",
196
232
  "prepublishOnly": "npm run clean && npm run build && npm run attw",
197
233
  "prepack": "echo 'Preparing package for publishing...'"
198
234
  },
199
235
  "files": [
200
236
  "dist/**/*",
201
- "dist/themes/**/*",
202
237
  "src/styles/**/*",
203
238
  "src/components/**/*",
204
239
  "src/lib/**/*",
205
240
  "src/layouts/**/*",
206
- "src/themes/**/*",
207
241
  "scripts/atomix-cli.js",
208
- "scripts/build-themes.js",
209
- "scripts/sync-theme-config.js",
210
242
  "scripts/cli/**/*",
211
- "theme.config.ts",
243
+ "atomix.config.ts",
212
244
  "README.md",
213
245
  "LICENSE",
214
246
  "CHANGELOG.md"
@@ -250,7 +282,7 @@
250
282
  },
251
283
  "engines": {
252
284
  "node": ">=18.0.0",
253
- "npm": ">=8.0.0"
285
+ "npm": ">=8.0.0 <11.0.0 || >=11.7.0"
254
286
  },
255
287
  "publishConfig": {
256
288
  "access": "public"