@shohojdhara/atomix 0.1.16 → 0.1.17

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 (695) hide show
  1. package/dist/css/atomix.css +1 -2
  2. package/dist/js/194.js +1 -2
  3. package/dist/js/atomix.react.esm.js +1 -2
  4. package/dist/js/atomix.react.umd.js +1 -2
  5. package/dist/js/chunks/esm/{202.ff48d27672233280e021.js → 202.82aa7b3244e53c9edb72.js} +1 -2
  6. package/dist/js/chunks/esm/{308.f873332126eba90e5c62.js → 308.27e1e4005705ae320432.js} +1 -2
  7. package/dist/js/chunks/esm/{54.4db919e5e4e5cc6d7c72.js → 54.ece1fd6964f98d4d994f.js} +1 -2
  8. package/dist/js/chunks/esm/{619.afc5a718eff77fa423b5.js → 619.ebeb0298432a066ac05c.js} +1 -2
  9. package/dist/js/chunks/esm/{690.a9e968c7497d61e56cdc.js → 690.c5f412cc979b55740359.js} +1 -2
  10. package/dist/js/chunks/esm/{894.f1091a4a8758c26d29e4.js → 894.3604ddc9367d75191198.js} +1 -2
  11. package/dist/js/chunks/esm/{897.561a50f7d043d42169da.js → 897.a4aab2fad9401693eb12.js} +1 -2
  12. package/dist/js/chunks/umd/{202.dac7605cc555b6bda542.js → 202.5017dd0403d696bf1644.js} +1 -2
  13. package/dist/js/chunks/umd/{308.6709979849dcbdb90c9b.js → 308.4bc14b9d7b16b6ee0ab8.js} +1 -2
  14. package/dist/js/chunks/umd/{54.403470e1f7d0ef4424a7.js → 54.7fdfb4a031989470a70d.js} +1 -2
  15. package/dist/js/chunks/umd/{619.fa05ea98c10270eb64c5.js → 619.84a0c35ecee695250085.js} +1 -2
  16. package/dist/js/chunks/umd/{690.aa7054d1c53e5402c2d6.js → 690.d7041094a34a4a434be2.js} +1 -2
  17. package/dist/js/chunks/umd/{894.3e1eaf0a2aadf4434390.js → 894.c127ee4e9513c22ee97d.js} +1 -2
  18. package/dist/js/chunks/umd/{897.554ea37be4453698c167.js → 897.26932ac837a39fc91907.js} +1 -2
  19. package/dist/types/components/Badge/index.d.ts +3 -3
  20. package/dist/types/components/PhotoViewer/PhotoViewer.d.ts +2 -2
  21. package/dist/types/components/PhotoViewer/PhotoViewerHeader.d.ts +2 -2
  22. package/dist/types/components/Tab/index.d.ts +2 -2
  23. package/dist/types/components/Toggle/index.d.ts +2 -2
  24. package/dist/types/components/Tooltip/index.d.ts +3 -3
  25. package/dist/types/lib/composables/useDatePicker.d.ts +1 -1
  26. package/dist/types/lib/composables/useDropdown.d.ts +1 -1
  27. package/dist/types/lib/composables/useModal.d.ts +1 -1
  28. package/dist/types/lib/composables/usePhotoViewer.d.ts +1 -1
  29. package/dist/types/lib/composables/useRating.d.ts +1 -1
  30. package/package.json +58 -41
  31. package/NPM_PUBLISHING.md +0 -221
  32. package/dist/css/atomix.css.map +0 -1
  33. package/dist/js/194.js.map +0 -1
  34. package/dist/js/atomix.react.esm.js.map +0 -1
  35. package/dist/js/atomix.react.umd.js.map +0 -1
  36. package/dist/js/chunks/esm/202.ff48d27672233280e021.js.map +0 -1
  37. package/dist/js/chunks/esm/308.f873332126eba90e5c62.js.map +0 -1
  38. package/dist/js/chunks/esm/54.4db919e5e4e5cc6d7c72.js.map +0 -1
  39. package/dist/js/chunks/esm/619.afc5a718eff77fa423b5.js.map +0 -1
  40. package/dist/js/chunks/esm/690.a9e968c7497d61e56cdc.js.map +0 -1
  41. package/dist/js/chunks/esm/894.f1091a4a8758c26d29e4.js.map +0 -1
  42. package/dist/js/chunks/esm/897.561a50f7d043d42169da.js.map +0 -1
  43. package/dist/js/chunks/umd/202.dac7605cc555b6bda542.js.map +0 -1
  44. package/dist/js/chunks/umd/308.6709979849dcbdb90c9b.js.map +0 -1
  45. package/dist/js/chunks/umd/54.403470e1f7d0ef4424a7.js.map +0 -1
  46. package/dist/js/chunks/umd/619.fa05ea98c10270eb64c5.js.map +0 -1
  47. package/dist/js/chunks/umd/690.aa7054d1c53e5402c2d6.js.map +0 -1
  48. package/dist/js/chunks/umd/894.3e1eaf0a2aadf4434390.js.map +0 -1
  49. package/dist/js/chunks/umd/897.554ea37be4453698c167.js.map +0 -1
  50. package/src/Introduction.mdx +0 -46
  51. package/src/assets/fonts/BigCaslon/BigCaslon-Alternatives.eot +0 -0
  52. package/src/assets/fonts/BigCaslon/BigCaslon-Alternatives.ttf +0 -0
  53. package/src/assets/fonts/BigCaslon/BigCaslon-Alternatives.woff +0 -0
  54. package/src/assets/fonts/BigCaslon/BigCaslon-Alternatives.woff2 +0 -0
  55. package/src/assets/fonts/BigCaslon/BigCaslon-Expert.eot +0 -0
  56. package/src/assets/fonts/BigCaslon/BigCaslon-Expert.ttf +0 -0
  57. package/src/assets/fonts/BigCaslon/BigCaslon-Expert.woff +0 -0
  58. package/src/assets/fonts/BigCaslon/BigCaslon-Expert.woff2 +0 -0
  59. package/src/assets/fonts/BigCaslon/BigCaslon-ItalicSwash.eot +0 -0
  60. package/src/assets/fonts/BigCaslon/BigCaslon-ItalicSwash.ttf +0 -0
  61. package/src/assets/fonts/BigCaslon/BigCaslon-ItalicSwash.woff +0 -0
  62. package/src/assets/fonts/BigCaslon/BigCaslon-ItalicSwash.woff2 +0 -0
  63. package/src/assets/fonts/BigCaslon/BigCaslon-SmallCaps.eot +0 -0
  64. package/src/assets/fonts/BigCaslon/BigCaslon-SmallCaps.ttf +0 -0
  65. package/src/assets/fonts/BigCaslon/BigCaslon-SmallCaps.woff +0 -0
  66. package/src/assets/fonts/BigCaslon/BigCaslon-SmallCaps.woff2 +0 -0
  67. package/src/assets/fonts/BigCaslon/BigCaslonFB-Black.eot +0 -0
  68. package/src/assets/fonts/BigCaslon/BigCaslonFB-Black.ttf +0 -0
  69. package/src/assets/fonts/BigCaslon/BigCaslonFB-Black.woff +0 -0
  70. package/src/assets/fonts/BigCaslon/BigCaslonFB-Black.woff2 +0 -0
  71. package/src/assets/fonts/BigCaslon/BigCaslonFB-BlackItalic.eot +0 -0
  72. package/src/assets/fonts/BigCaslon/BigCaslonFB-BlackItalic.ttf +0 -0
  73. package/src/assets/fonts/BigCaslon/BigCaslonFB-BlackItalic.woff +0 -0
  74. package/src/assets/fonts/BigCaslon/BigCaslonFB-BlackItalic.woff2 +0 -0
  75. package/src/assets/fonts/BigCaslon/BigCaslonFB-Bold.eot +0 -0
  76. package/src/assets/fonts/BigCaslon/BigCaslonFB-Bold.ttf +0 -0
  77. package/src/assets/fonts/BigCaslon/BigCaslonFB-Bold.woff +0 -0
  78. package/src/assets/fonts/BigCaslon/BigCaslonFB-Bold.woff2 +0 -0
  79. package/src/assets/fonts/BigCaslon/BigCaslonFB-BoldItalic.eot +0 -0
  80. package/src/assets/fonts/BigCaslon/BigCaslonFB-BoldItalic.ttf +0 -0
  81. package/src/assets/fonts/BigCaslon/BigCaslonFB-BoldItalic.woff +0 -0
  82. package/src/assets/fonts/BigCaslon/BigCaslonFB-BoldItalic.woff2 +0 -0
  83. package/src/assets/fonts/BigCaslon/BigCaslonFB-Italic.eot +0 -0
  84. package/src/assets/fonts/BigCaslon/BigCaslonFB-Italic.ttf +0 -0
  85. package/src/assets/fonts/BigCaslon/BigCaslonFB-Italic.woff +0 -0
  86. package/src/assets/fonts/BigCaslon/BigCaslonFB-Italic.woff2 +0 -0
  87. package/src/assets/fonts/BigCaslon/BigCaslonFB-Regular.eot +0 -0
  88. package/src/assets/fonts/BigCaslon/BigCaslonFB-Regular.ttf +0 -0
  89. package/src/assets/fonts/BigCaslon/BigCaslonFB-Regular.woff +0 -0
  90. package/src/assets/fonts/BigCaslon/BigCaslonFB-Regular.woff2 +0 -0
  91. package/src/assets/fonts/FilsonPro/FilsonPro-Black.eot +0 -0
  92. package/src/assets/fonts/FilsonPro/FilsonPro-Black.ttf +0 -0
  93. package/src/assets/fonts/FilsonPro/FilsonPro-Black.woff +0 -0
  94. package/src/assets/fonts/FilsonPro/FilsonPro-Black.woff2 +0 -0
  95. package/src/assets/fonts/FilsonPro/FilsonPro-BlackItalic.eot +0 -0
  96. package/src/assets/fonts/FilsonPro/FilsonPro-BlackItalic.ttf +0 -0
  97. package/src/assets/fonts/FilsonPro/FilsonPro-BlackItalic.woff +0 -0
  98. package/src/assets/fonts/FilsonPro/FilsonPro-BlackItalic.woff2 +0 -0
  99. package/src/assets/fonts/FilsonPro/FilsonPro-Bold.eot +0 -0
  100. package/src/assets/fonts/FilsonPro/FilsonPro-Bold.ttf +0 -0
  101. package/src/assets/fonts/FilsonPro/FilsonPro-Bold.woff +0 -0
  102. package/src/assets/fonts/FilsonPro/FilsonPro-Bold.woff2 +0 -0
  103. package/src/assets/fonts/FilsonPro/FilsonPro-BoldItalic.eot +0 -0
  104. package/src/assets/fonts/FilsonPro/FilsonPro-BoldItalic.ttf +0 -0
  105. package/src/assets/fonts/FilsonPro/FilsonPro-BoldItalic.woff +0 -0
  106. package/src/assets/fonts/FilsonPro/FilsonPro-BoldItalic.woff2 +0 -0
  107. package/src/assets/fonts/FilsonPro/FilsonPro-Book.eot +0 -0
  108. package/src/assets/fonts/FilsonPro/FilsonPro-Book.ttf +0 -0
  109. package/src/assets/fonts/FilsonPro/FilsonPro-Book.woff +0 -0
  110. package/src/assets/fonts/FilsonPro/FilsonPro-Book.woff2 +0 -0
  111. package/src/assets/fonts/FilsonPro/FilsonPro-BookItalic.eot +0 -0
  112. package/src/assets/fonts/FilsonPro/FilsonPro-BookItalic.ttf +0 -0
  113. package/src/assets/fonts/FilsonPro/FilsonPro-BookItalic.woff +0 -0
  114. package/src/assets/fonts/FilsonPro/FilsonPro-BookItalic.woff2 +0 -0
  115. package/src/assets/fonts/FilsonPro/FilsonPro-Heavy.eot +0 -0
  116. package/src/assets/fonts/FilsonPro/FilsonPro-Heavy.ttf +0 -0
  117. package/src/assets/fonts/FilsonPro/FilsonPro-Heavy.woff +0 -0
  118. package/src/assets/fonts/FilsonPro/FilsonPro-Heavy.woff2 +0 -0
  119. package/src/assets/fonts/FilsonPro/FilsonPro-HeavyItalic.eot +0 -0
  120. package/src/assets/fonts/FilsonPro/FilsonPro-HeavyItalic.ttf +0 -0
  121. package/src/assets/fonts/FilsonPro/FilsonPro-HeavyItalic.woff +0 -0
  122. package/src/assets/fonts/FilsonPro/FilsonPro-HeavyItalic.woff2 +0 -0
  123. package/src/assets/fonts/FilsonPro/FilsonPro-Light.eot +0 -0
  124. package/src/assets/fonts/FilsonPro/FilsonPro-Light.ttf +0 -0
  125. package/src/assets/fonts/FilsonPro/FilsonPro-Light.woff +0 -0
  126. package/src/assets/fonts/FilsonPro/FilsonPro-Light.woff2 +0 -0
  127. package/src/assets/fonts/FilsonPro/FilsonPro-LightItalic.eot +0 -0
  128. package/src/assets/fonts/FilsonPro/FilsonPro-LightItalic.ttf +0 -0
  129. package/src/assets/fonts/FilsonPro/FilsonPro-LightItalic.woff +0 -0
  130. package/src/assets/fonts/FilsonPro/FilsonPro-LightItalic.woff2 +0 -0
  131. package/src/assets/fonts/FilsonPro/FilsonPro-Medium.eot +0 -0
  132. package/src/assets/fonts/FilsonPro/FilsonPro-Medium.ttf +0 -0
  133. package/src/assets/fonts/FilsonPro/FilsonPro-Medium.woff +0 -0
  134. package/src/assets/fonts/FilsonPro/FilsonPro-Medium.woff2 +0 -0
  135. package/src/assets/fonts/FilsonPro/FilsonPro-MediumItalic.eot +0 -0
  136. package/src/assets/fonts/FilsonPro/FilsonPro-MediumItalic.ttf +0 -0
  137. package/src/assets/fonts/FilsonPro/FilsonPro-MediumItalic.woff +0 -0
  138. package/src/assets/fonts/FilsonPro/FilsonPro-MediumItalic.woff2 +0 -0
  139. package/src/assets/fonts/FilsonPro/FilsonPro-Regular.eot +0 -0
  140. package/src/assets/fonts/FilsonPro/FilsonPro-Regular.ttf +0 -0
  141. package/src/assets/fonts/FilsonPro/FilsonPro-Regular.woff +0 -0
  142. package/src/assets/fonts/FilsonPro/FilsonPro-Regular.woff2 +0 -0
  143. package/src/assets/fonts/FilsonPro/FilsonPro-RegularItalic.eot +0 -0
  144. package/src/assets/fonts/FilsonPro/FilsonPro-RegularItalic.ttf +0 -0
  145. package/src/assets/fonts/FilsonPro/FilsonPro-RegularItalic.woff +0 -0
  146. package/src/assets/fonts/FilsonPro/FilsonPro-RegularItalic.woff2 +0 -0
  147. package/src/assets/fonts/FilsonPro/FilsonPro-Thin.eot +0 -0
  148. package/src/assets/fonts/FilsonPro/FilsonPro-Thin.ttf +0 -0
  149. package/src/assets/fonts/FilsonPro/FilsonPro-Thin.woff +0 -0
  150. package/src/assets/fonts/FilsonPro/FilsonPro-Thin.woff2 +0 -0
  151. package/src/assets/fonts/FilsonPro/FilsonPro-ThinItalic.eot +0 -0
  152. package/src/assets/fonts/FilsonPro/FilsonPro-ThinItalic.ttf +0 -0
  153. package/src/assets/fonts/FilsonPro/FilsonPro-ThinItalic.woff +0 -0
  154. package/src/assets/fonts/FilsonPro/FilsonPro-ThinItalic.woff2 +0 -0
  155. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Bold.eot +0 -0
  156. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Bold.ttf +0 -0
  157. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Bold.woff +0 -0
  158. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Bold.woff2 +0 -0
  159. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-BoldItalic.eot +0 -0
  160. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-BoldItalic.ttf +0 -0
  161. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-BoldItalic.woff +0 -0
  162. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-BoldItalic.woff2 +0 -0
  163. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-CondensedBlack.eot +0 -0
  164. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-CondensedBlack.ttf +0 -0
  165. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-CondensedBlack.woff +0 -0
  166. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-CondensedBlack.woff2 +0 -0
  167. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-CondensedBold.eot +0 -0
  168. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-CondensedBold.ttf +0 -0
  169. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-CondensedBold.woff +0 -0
  170. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-CondensedBold.woff2 +0 -0
  171. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Italic.eot +0 -0
  172. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Italic.ttf +0 -0
  173. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Italic.woff +0 -0
  174. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Italic.woff2 +0 -0
  175. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Light.eot +0 -0
  176. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Light.ttf +0 -0
  177. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Light.woff +0 -0
  178. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Light.woff2 +0 -0
  179. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-LightItalic.eot +0 -0
  180. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-LightItalic.ttf +0 -0
  181. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-LightItalic.woff +0 -0
  182. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-LightItalic.woff2 +0 -0
  183. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Medium.eot +0 -0
  184. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Medium.ttf +0 -0
  185. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Medium.woff +0 -0
  186. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Medium.woff2 +0 -0
  187. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-MediumItalic.eot +0 -0
  188. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-MediumItalic.ttf +0 -0
  189. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-MediumItalic.woff +0 -0
  190. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-MediumItalic.woff2 +0 -0
  191. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Thin.eot +0 -0
  192. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Thin.ttf +0 -0
  193. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Thin.woff +0 -0
  194. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-Thin.woff2 +0 -0
  195. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-ThinItalic.eot +0 -0
  196. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-ThinItalic.ttf +0 -0
  197. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-ThinItalic.woff +0 -0
  198. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-ThinItalic.woff2 +0 -0
  199. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-UltraLight.eot +0 -0
  200. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-UltraLight.ttf +0 -0
  201. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-UltraLight.woff +0 -0
  202. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-UltraLight.woff2 +0 -0
  203. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-UltraLightItalic.eot +0 -0
  204. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-UltraLightItalic.ttf +0 -0
  205. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-UltraLightItalic.woff +0 -0
  206. package/src/assets/fonts/HelveticaNeue/HelveticaNeue-UltraLightItalic.woff2 +0 -0
  207. package/src/assets/fonts/HelveticaNeue/HelveticaNeue.eot +0 -0
  208. package/src/assets/fonts/HelveticaNeue/HelveticaNeue.ttf +0 -0
  209. package/src/assets/fonts/HelveticaNeue/HelveticaNeue.woff +0 -0
  210. package/src/assets/fonts/HelveticaNeue/HelveticaNeue.woff2 +0 -0
  211. package/src/assets/fonts/HelveticaNeue/demo.html +0 -569
  212. package/src/assets/fonts/HelveticaNeue/stylesheet.css +0 -168
  213. package/src/assets/fonts/Lato/Lato-Black.eot +0 -0
  214. package/src/assets/fonts/Lato/Lato-Black.ttf +0 -0
  215. package/src/assets/fonts/Lato/Lato-Black.woff +0 -0
  216. package/src/assets/fonts/Lato/Lato-Black.woff2 +0 -0
  217. package/src/assets/fonts/Lato/Lato-Bold.eot +0 -0
  218. package/src/assets/fonts/Lato/Lato-Bold.ttf +0 -0
  219. package/src/assets/fonts/Lato/Lato-Bold.woff +0 -0
  220. package/src/assets/fonts/Lato/Lato-Bold.woff2 +0 -0
  221. package/src/assets/fonts/Lato/Lato-Light.eot +0 -0
  222. package/src/assets/fonts/Lato/Lato-Light.ttf +0 -0
  223. package/src/assets/fonts/Lato/Lato-Light.woff +0 -0
  224. package/src/assets/fonts/Lato/Lato-Light.woff2 +0 -0
  225. package/src/assets/fonts/Lato/Lato-Regular.eot +0 -0
  226. package/src/assets/fonts/Lato/Lato-Regular.ttf +0 -0
  227. package/src/assets/fonts/Lato/Lato-Regular.woff +0 -0
  228. package/src/assets/fonts/Lato/Lato-Regular.woff2 +0 -0
  229. package/src/assets/fonts/Lux-Icons.woff2 +0 -0
  230. package/src/assets/fonts/MaterialIcons-Regular.eot +0 -0
  231. package/src/assets/fonts/MaterialIcons-Regular.ttf +0 -0
  232. package/src/assets/fonts/MaterialIcons-Regular.woff +0 -0
  233. package/src/assets/fonts/MaterialIcons-Regular.woff2 +0 -0
  234. package/src/assets/fonts/OpenSans-Regular.ttf +0 -0
  235. package/src/assets/fonts/Roboto-Regular.ttf +0 -0
  236. package/src/assets/images/logo-transparent.png +0 -0
  237. package/src/assets/svgs/atomix-logo.svg +0 -9
  238. package/src/components/Accordion/Accordion.stories.tsx +0 -258
  239. package/src/components/Accordion/Accordion.tsx +0 -121
  240. package/src/components/Accordion/index.ts +0 -3
  241. package/src/components/Accordion/scripts/accordionInteractions.ts +0 -70
  242. package/src/components/Accordion/scripts/bundle.ts +0 -24
  243. package/src/components/Accordion/scripts/constants.ts +0 -11
  244. package/src/components/Accordion/scripts/index.ts +0 -212
  245. package/src/components/AtomixLogo/AtomixLogo.tsx +0 -36
  246. package/src/components/AtomixLogo/index.ts +0 -3
  247. package/src/components/AtomixLogo.tsx +0 -46
  248. package/src/components/Avatar/Avatar.stories.tsx +0 -260
  249. package/src/components/Avatar/Avatar.tsx +0 -71
  250. package/src/components/Avatar/AvatarGroup.tsx +0 -73
  251. package/src/components/Avatar/index.ts +0 -3
  252. package/src/components/Avatar/scripts/index.ts +0 -502
  253. package/src/components/Badge/Badge.stories.tsx +0 -344
  254. package/src/components/Badge/Badge.tsx +0 -37
  255. package/src/components/Badge/index.ts +0 -3
  256. package/src/components/Breadcrumb/Breadcrumb.stories.tsx +0 -108
  257. package/src/components/Breadcrumb/Breadcrumb.tsx +0 -105
  258. package/src/components/Breadcrumb/index.ts +0 -3
  259. package/src/components/Breadcrumb/scripts/breadcrumb.ts +0 -206
  260. package/src/components/Breadcrumb/scripts/demo.html +0 -246
  261. package/src/components/Breadcrumb/scripts/index.ts +0 -5
  262. package/src/components/Breadcrumb/scripts/types.ts +0 -69
  263. package/src/components/Button/Button.stories.tsx +0 -289
  264. package/src/components/Button/Button.tsx +0 -57
  265. package/src/components/Button/index.ts +0 -3
  266. package/src/components/Button/scripts/buttonInteractions.ts +0 -73
  267. package/src/components/Button/scripts/index.ts +0 -1
  268. package/src/components/Callout/Callout.stories.tsx +0 -502
  269. package/src/components/Callout/Callout.tsx +0 -78
  270. package/src/components/Callout/index.ts +0 -1
  271. package/src/components/Callout/scripts/CalloutInteractions.ts +0 -340
  272. package/src/components/Callout/scripts/bundle.ts +0 -18
  273. package/src/components/Callout/scripts/index.ts +0 -126
  274. package/src/components/Card/Card.stories.tsx +0 -107
  275. package/src/components/Card/Card.tsx +0 -92
  276. package/src/components/Card/ElevationCard.tsx +0 -51
  277. package/src/components/Card/index.ts +0 -15
  278. package/src/components/Card/scripts/bundle.ts +0 -30
  279. package/src/components/Card/scripts/cardInteractions.ts +0 -171
  280. package/src/components/Card/scripts/demo.html +0 -322
  281. package/src/components/Card/scripts/index.ts +0 -319
  282. package/src/components/ColorModeToggle/ColorModeToggle.stories.tsx +0 -43
  283. package/src/components/ColorModeToggle/ColorModeToggle.tsx +0 -88
  284. package/src/components/ColorModeToggle/index.ts +0 -2
  285. package/src/components/Countdown/Countdown.stories.tsx +0 -43
  286. package/src/components/Countdown/Countdown.tsx +0 -82
  287. package/src/components/Countdown/index.ts +0 -2
  288. package/src/components/Countdown/scripts/index.ts +0 -233
  289. package/src/components/DataTable/DataTable.stories.tsx +0 -244
  290. package/src/components/DataTable/DataTable.tsx +0 -213
  291. package/src/components/DataTable/index.ts +0 -3
  292. package/src/components/DataTable/scripts/bundle.ts +0 -15
  293. package/src/components/DataTable/scripts/index.ts +0 -763
  294. package/src/components/DatePicker/DatePicker.stories.tsx +0 -377
  295. package/src/components/DatePicker/DatePicker.tsx +0 -463
  296. package/src/components/DatePicker/index.ts +0 -4
  297. package/src/components/DatePicker/readme.md +0 -106
  298. package/src/components/DatePicker/scripts/bundle.ts +0 -34
  299. package/src/components/DatePicker/scripts/componentInteractions.ts +0 -200
  300. package/src/components/DatePicker/scripts/index.ts +0 -887
  301. package/src/components/DatePicker/types.ts +0 -167
  302. package/src/components/DatePicker/utils.ts +0 -152
  303. package/src/components/Dropdown/Dropdown.stories.tsx +0 -329
  304. package/src/components/Dropdown/Dropdown.tsx +0 -333
  305. package/src/components/Dropdown/index.ts +0 -19
  306. package/src/components/Dropdown/readme.md +0 -151
  307. package/src/components/Dropdown/scripts/bundle.ts +0 -24
  308. package/src/components/Dropdown/scripts/componentInteractions.ts +0 -31
  309. package/src/components/Dropdown/scripts/index.ts +0 -607
  310. package/src/components/EdgePanel/EdgePanel.stories.tsx +0 -183
  311. package/src/components/EdgePanel/EdgePanel.tsx +0 -79
  312. package/src/components/EdgePanel/index.ts +0 -1
  313. package/src/components/EdgePanel/scripts/bundle.ts +0 -30
  314. package/src/components/EdgePanel/scripts/edgePanelInteractions.ts +0 -206
  315. package/src/components/EdgePanel/scripts/index.ts +0 -415
  316. package/src/components/Form/Checkbox.stories.tsx +0 -77
  317. package/src/components/Form/Checkbox.tsx +0 -63
  318. package/src/components/Form/Form.stories.tsx +0 -565
  319. package/src/components/Form/Form.tsx +0 -46
  320. package/src/components/Form/FormGroup.stories.tsx +0 -180
  321. package/src/components/Form/FormGroup.tsx +0 -55
  322. package/src/components/Form/Input.stories.tsx +0 -107
  323. package/src/components/Form/Input.tsx +0 -77
  324. package/src/components/Form/Radio.stories.tsx +0 -108
  325. package/src/components/Form/Radio.tsx +0 -60
  326. package/src/components/Form/Select.stories.tsx +0 -152
  327. package/src/components/Form/Select.tsx +0 -193
  328. package/src/components/Form/Textarea.stories.tsx +0 -119
  329. package/src/components/Form/Textarea.tsx +0 -69
  330. package/src/components/Form/index.ts +0 -7
  331. package/src/components/Hero/Hero.stories.tsx +0 -295
  332. package/src/components/Hero/Hero.tsx +0 -185
  333. package/src/components/Hero/index.ts +0 -6
  334. package/src/components/Hero/scripts/bundle.ts +0 -33
  335. package/src/components/Hero/scripts/heroInteractions.ts +0 -135
  336. package/src/components/Hero/scripts/index.ts +0 -145
  337. package/src/components/Icon/Icon.tsx +0 -89
  338. package/src/components/Icon/index.ts +0 -2
  339. package/src/components/List/List.stories.tsx +0 -125
  340. package/src/components/List/List.tsx +0 -39
  341. package/src/components/List/ListGroup.tsx +0 -34
  342. package/src/components/List/index.ts +0 -2
  343. package/src/components/Messages/Messages.stories.tsx +0 -160
  344. package/src/components/Messages/Messages.tsx +0 -167
  345. package/src/components/Messages/index.ts +0 -3
  346. package/src/components/Messages/scripts/bundle.ts +0 -52
  347. package/src/components/Messages/scripts/componentInteractions.ts +0 -137
  348. package/src/components/Messages/scripts/index.ts +0 -372
  349. package/src/components/Modal/Modal.stories.tsx +0 -264
  350. package/src/components/Modal/Modal.tsx +0 -197
  351. package/src/components/Modal/README.md +0 -169
  352. package/src/components/Modal/index.ts +0 -1
  353. package/src/components/Modal/scripts/bundle.ts +0 -23
  354. package/src/components/Modal/scripts/index.ts +0 -362
  355. package/src/components/Modal/scripts/modalInteractions.ts +0 -139
  356. package/src/components/Navbar/MegaMenu.tsx +0 -116
  357. package/src/components/Navbar/Menu.tsx +0 -122
  358. package/src/components/Navbar/Nav.tsx +0 -35
  359. package/src/components/Navbar/NavDropdown.tsx +0 -108
  360. package/src/components/Navbar/NavItem.tsx +0 -128
  361. package/src/components/Navbar/Navbar.stories.tsx +0 -458
  362. package/src/components/Navbar/Navbar.tsx +0 -124
  363. package/src/components/Navbar/index.ts +0 -6
  364. package/src/components/Pagination/Pagination.stories.tsx +0 -193
  365. package/src/components/Pagination/Pagination.tsx +0 -172
  366. package/src/components/Pagination/index.ts +0 -1
  367. package/src/components/Pagination/scripts/bundle.ts +0 -15
  368. package/src/components/Pagination/scripts/index.ts +0 -310
  369. package/src/components/PhotoViewer/PhotoViewer.stories.tsx +0 -160
  370. package/src/components/PhotoViewer/PhotoViewer.tsx +0 -263
  371. package/src/components/PhotoViewer/PhotoViewerHeader.tsx +0 -183
  372. package/src/components/PhotoViewer/PhotoViewerImage.tsx +0 -171
  373. package/src/components/PhotoViewer/PhotoViewerInfo.tsx +0 -57
  374. package/src/components/PhotoViewer/PhotoViewerNavigation.tsx +0 -82
  375. package/src/components/PhotoViewer/PhotoViewerThumbnails.tsx +0 -52
  376. package/src/components/PhotoViewer/README.md +0 -358
  377. package/src/components/PhotoViewer/examples/ImageGallery.tsx +0 -200
  378. package/src/components/PhotoViewer/examples/SimpleGallery.tsx +0 -71
  379. package/src/components/PhotoViewer/examples/index.ts +0 -2
  380. package/src/components/PhotoViewer/index.ts +0 -14
  381. package/src/components/PhotoViewer/scripts/PhotoViewerInteractions.ts +0 -243
  382. package/src/components/PhotoViewer/scripts/bundle.ts +0 -81
  383. package/src/components/PhotoViewer/scripts/index.ts +0 -903
  384. package/src/components/Popover/Popover.stories.tsx +0 -144
  385. package/src/components/Popover/Popover.tsx +0 -137
  386. package/src/components/Popover/index.ts +0 -5
  387. package/src/components/Popover/readme.md +0 -120
  388. package/src/components/Popover/scripts/bundle.ts +0 -12
  389. package/src/components/Popover/scripts/componentInteractions.ts +0 -311
  390. package/src/components/Popover/scripts/index.ts +0 -331
  391. package/src/components/ProductReview/ProductReview.stories.tsx +0 -86
  392. package/src/components/ProductReview/ProductReview.tsx +0 -173
  393. package/src/components/ProductReview/index.ts +0 -3
  394. package/src/components/ProductReview/scripts/bundle.ts +0 -3
  395. package/src/components/ProductReview/scripts/componentInteractions.ts +0 -129
  396. package/src/components/ProductReview/scripts/index.ts +0 -3
  397. package/src/components/Progress/Progress.stories.tsx +0 -75
  398. package/src/components/Progress/Progress.tsx +0 -43
  399. package/src/components/Progress/index.ts +0 -1
  400. package/src/components/Progress/scripts/bundle.ts +0 -12
  401. package/src/components/Progress/scripts/componentInteractions.ts +0 -95
  402. package/src/components/Progress/scripts/index.ts +0 -178
  403. package/src/components/Rating/Rating.stories.tsx +0 -122
  404. package/src/components/Rating/Rating.tsx +0 -267
  405. package/src/components/Rating/index.ts +0 -6
  406. package/src/components/Rating/scripts/bundle.ts +0 -34
  407. package/src/components/Rating/scripts/index.d.ts +0 -12
  408. package/src/components/Rating/scripts/index.ts +0 -331
  409. package/src/components/Rating/scripts/ratingInteractions.ts +0 -157
  410. package/src/components/River/River.stories.tsx +0 -184
  411. package/src/components/River/River.tsx +0 -172
  412. package/src/components/River/examples.html +0 -223
  413. package/src/components/River/index.ts +0 -2
  414. package/src/components/River/scripts/index.ts +0 -138
  415. package/src/components/SectionIntro/SectionIntro.stories.tsx +0 -142
  416. package/src/components/SectionIntro/SectionIntro.tsx +0 -203
  417. package/src/components/SectionIntro/index.ts +0 -3
  418. package/src/components/SectionIntro/scripts/bundle.ts +0 -9
  419. package/src/components/SectionIntro/scripts/componentInteractions.ts +0 -37
  420. package/src/components/SectionIntro/scripts/index.ts +0 -149
  421. package/src/components/Spinner/Spinner.stories.tsx +0 -68
  422. package/src/components/Spinner/Spinner.tsx +0 -31
  423. package/src/components/Spinner/index.ts +0 -2
  424. package/src/components/Steps/Steps.stories.tsx +0 -162
  425. package/src/components/Steps/Steps.tsx +0 -154
  426. package/src/components/Steps/index.ts +0 -3
  427. package/src/components/Steps/scripts/index.ts +0 -159
  428. package/src/components/Tab/Tab.stories.tsx +0 -121
  429. package/src/components/Tab/Tab.tsx +0 -135
  430. package/src/components/Tab/index.ts +0 -2
  431. package/src/components/Tab/scripts/index.ts +0 -200
  432. package/src/components/Testimonial/Testimonial.stories.tsx +0 -177
  433. package/src/components/Testimonial/Testimonial.tsx +0 -149
  434. package/src/components/Testimonial/index.ts +0 -3
  435. package/src/components/Testimonial/scripts/index.ts +0 -96
  436. package/src/components/Todo/Todo.stories.tsx +0 -172
  437. package/src/components/Todo/Todo.tsx +0 -169
  438. package/src/components/Todo/index.ts +0 -1
  439. package/src/components/Todo/scripts/bundle.ts +0 -14
  440. package/src/components/Todo/scripts/index.ts +0 -516
  441. package/src/components/Todo/scripts/todoInteractions.ts +0 -118
  442. package/src/components/Todo/scripts/types.ts +0 -19
  443. package/src/components/Toggle/Toggle.stories.tsx +0 -50
  444. package/src/components/Toggle/Toggle.tsx +0 -114
  445. package/src/components/Toggle/index.ts +0 -2
  446. package/src/components/Toggle/scripts/bundle.ts +0 -14
  447. package/src/components/Toggle/scripts/index.ts +0 -114
  448. package/src/components/Toggle/scripts/toggleInteractions.ts +0 -80
  449. package/src/components/Tooltip/Tooltip.stories.tsx +0 -108
  450. package/src/components/Tooltip/Tooltip.tsx +0 -95
  451. package/src/components/Tooltip/index.ts +0 -3
  452. package/src/components/Tooltip/scripts/bundle.ts +0 -1
  453. package/src/components/Tooltip/scripts/index.ts +0 -392
  454. package/src/components/Tooltip/scripts/tooltipInteractions.ts +0 -165
  455. package/src/components/Upload/Upload.stories.tsx +0 -227
  456. package/src/components/Upload/Upload.tsx +0 -407
  457. package/src/components/Upload/index.ts +0 -3
  458. package/src/components/Upload/scripts/index.ts +0 -452
  459. package/src/components/index.ts +0 -118
  460. package/src/design-tokens/BoxShadow/BoxShadow.stories.tsx +0 -112
  461. package/src/design-tokens/Colors/colors.scss +0 -118
  462. package/src/design-tokens/Colors/colors.stories.tsx +0 -326
  463. package/src/design-tokens/Spacing/Spacing.scss +0 -60
  464. package/src/design-tokens/Spacing/Spacing.stories.tsx +0 -114
  465. package/src/design-tokens/Typography/Typography.scss +0 -177
  466. package/src/design-tokens/Typography/Typography.stories.tsx +0 -170
  467. package/src/docs/atomix-component-guidelines.mdx +0 -942
  468. package/src/docs/atomix-roadmap.mdx +0 -325
  469. package/src/docs/implementation-guide.mdx +0 -506
  470. package/src/htmlComponentsEntry.ts +0 -318
  471. package/src/index.ts +0 -21
  472. package/src/layouts/Grid/Container.tsx +0 -60
  473. package/src/layouts/Grid/Grid.stories.tsx +0 -522
  474. package/src/layouts/Grid/Grid.tsx +0 -74
  475. package/src/layouts/Grid/GridCol.tsx +0 -157
  476. package/src/layouts/Grid/README.md +0 -108
  477. package/src/layouts/Grid/Row.tsx +0 -75
  478. package/src/layouts/Grid/index.ts +0 -8
  479. package/src/layouts/MasonryGrid/MasonryGrid.stories.tsx +0 -381
  480. package/src/layouts/MasonryGrid/MasonryGrid.tsx +0 -408
  481. package/src/layouts/MasonryGrid/MasonryGridItem.tsx +0 -50
  482. package/src/layouts/MasonryGrid/README.md +0 -117
  483. package/src/layouts/MasonryGrid/index.ts +0 -4
  484. package/src/layouts/index.ts +0 -10
  485. package/src/lib/README.md +0 -89
  486. package/src/lib/composables/index.ts +0 -44
  487. package/src/lib/composables/useAccordion.ts +0 -120
  488. package/src/lib/composables/useBadge.ts +0 -42
  489. package/src/lib/composables/useBreadcrumb.ts +0 -80
  490. package/src/lib/composables/useButton.ts +0 -59
  491. package/src/lib/composables/useCallout.ts +0 -55
  492. package/src/lib/composables/useCard.ts +0 -133
  493. package/src/lib/composables/useCheckbox.ts +0 -70
  494. package/src/lib/composables/useDataTable.ts +0 -204
  495. package/src/lib/composables/useDatePicker.ts +0 -538
  496. package/src/lib/composables/useDropdown.ts +0 -257
  497. package/src/lib/composables/useEdgePanel.ts +0 -258
  498. package/src/lib/composables/useForm.ts +0 -65
  499. package/src/lib/composables/useFormGroup.ts +0 -52
  500. package/src/lib/composables/useHero.ts +0 -252
  501. package/src/lib/composables/useInput.ts +0 -59
  502. package/src/lib/composables/useMessages.ts +0 -79
  503. package/src/lib/composables/useModal.ts +0 -107
  504. package/src/lib/composables/useNavbar.ts +0 -277
  505. package/src/lib/composables/usePagination.ts +0 -108
  506. package/src/lib/composables/usePhotoViewer.ts +0 -857
  507. package/src/lib/composables/usePopover.ts +0 -348
  508. package/src/lib/composables/useProgress.ts +0 -77
  509. package/src/lib/composables/useRadio.ts +0 -47
  510. package/src/lib/composables/useRating.ts +0 -162
  511. package/src/lib/composables/useRiver.ts +0 -208
  512. package/src/lib/composables/useSelect.ts +0 -53
  513. package/src/lib/composables/useSpinner.ts +0 -42
  514. package/src/lib/composables/useTextarea.ts +0 -56
  515. package/src/lib/composables/useTodo.ts +0 -146
  516. package/src/lib/constants/components.ts +0 -977
  517. package/src/lib/constants/index.ts +0 -4
  518. package/src/lib/index.ts +0 -11
  519. package/src/lib/types/components.ts +0 -2368
  520. package/src/lib/types/index.ts +0 -2
  521. package/src/lib/utils/dom.ts +0 -45
  522. package/src/lib/utils/icons.ts +0 -66
  523. package/src/lib/utils/index.ts +0 -7
  524. package/src/lib/utils/useForkRef.ts +0 -37
  525. package/src/styles/01-settings/_index.scss +0 -64
  526. package/src/styles/01-settings/_settings.accordion.scss +0 -29
  527. package/src/styles/01-settings/_settings.animations.scss +0 -2
  528. package/src/styles/01-settings/_settings.avatar-group.scss +0 -20
  529. package/src/styles/01-settings/_settings.avatar.scss +0 -46
  530. package/src/styles/01-settings/_settings.badge.scss +0 -12
  531. package/src/styles/01-settings/_settings.border-radius.scss +0 -11
  532. package/src/styles/01-settings/_settings.border.scss +0 -14
  533. package/src/styles/01-settings/_settings.box-shadow.scss +0 -16
  534. package/src/styles/01-settings/_settings.breadcrumb.scss +0 -19
  535. package/src/styles/01-settings/_settings.breakpoints.scss +0 -8
  536. package/src/styles/01-settings/_settings.btn-group.scss +0 -1
  537. package/src/styles/01-settings/_settings.button.scss +0 -67
  538. package/src/styles/01-settings/_settings.callout.scss +0 -41
  539. package/src/styles/01-settings/_settings.card.scss +0 -39
  540. package/src/styles/01-settings/_settings.checkbox-group.scss +0 -3
  541. package/src/styles/01-settings/_settings.checkbox.scss +0 -21
  542. package/src/styles/01-settings/_settings.color-mode.scss +0 -5
  543. package/src/styles/01-settings/_settings.colors.scss +0 -269
  544. package/src/styles/01-settings/_settings.config.scss +0 -6
  545. package/src/styles/01-settings/_settings.countdown.scss +0 -15
  546. package/src/styles/01-settings/_settings.data-table.scss +0 -52
  547. package/src/styles/01-settings/_settings.datepicker.scss +0 -46
  548. package/src/styles/01-settings/_settings.dropdown.scss +0 -38
  549. package/src/styles/01-settings/_settings.edge-panel.scss +0 -17
  550. package/src/styles/01-settings/_settings.fonts.scss +0 -15
  551. package/src/styles/01-settings/_settings.form-group.scss +0 -11
  552. package/src/styles/01-settings/_settings.form.scss +0 -3
  553. package/src/styles/01-settings/_settings.grid.scss +0 -15
  554. package/src/styles/01-settings/_settings.hero.scss +0 -30
  555. package/src/styles/01-settings/_settings.input.scss +0 -38
  556. package/src/styles/01-settings/_settings.link.scss +0 -12
  557. package/src/styles/01-settings/_settings.list-group.scss +0 -14
  558. package/src/styles/01-settings/_settings.list.scss +0 -10
  559. package/src/styles/01-settings/_settings.maps.scss +0 -283
  560. package/src/styles/01-settings/_settings.masonry-grid.scss +0 -17
  561. package/src/styles/01-settings/_settings.menu.scss +0 -38
  562. package/src/styles/01-settings/_settings.messages.scss +0 -77
  563. package/src/styles/01-settings/_settings.modal.scss +0 -31
  564. package/src/styles/01-settings/_settings.nav.scss +0 -18
  565. package/src/styles/01-settings/_settings.navbar.scss +0 -19
  566. package/src/styles/01-settings/_settings.pagination.scss +0 -29
  567. package/src/styles/01-settings/_settings.photoviewer.scss +0 -35
  568. package/src/styles/01-settings/_settings.popover.scss +0 -13
  569. package/src/styles/01-settings/_settings.position.scss +0 -7
  570. package/src/styles/01-settings/_settings.progress.scss +0 -18
  571. package/src/styles/01-settings/_settings.rating.scss +0 -8
  572. package/src/styles/01-settings/_settings.river.scss +0 -34
  573. package/src/styles/01-settings/_settings.sectionintro.scss +0 -22
  574. package/src/styles/01-settings/_settings.select.scss +0 -32
  575. package/src/styles/01-settings/_settings.side-menu.scss +0 -16
  576. package/src/styles/01-settings/_settings.skeleton.scss +0 -14
  577. package/src/styles/01-settings/_settings.spacing.scss +0 -39
  578. package/src/styles/01-settings/_settings.spinner.scss +0 -13
  579. package/src/styles/01-settings/_settings.steps.scss +0 -26
  580. package/src/styles/01-settings/_settings.tabs.scss +0 -28
  581. package/src/styles/01-settings/_settings.testimonials.scss +0 -20
  582. package/src/styles/01-settings/_settings.todo.scss +0 -50
  583. package/src/styles/01-settings/_settings.toggle.scss +0 -34
  584. package/src/styles/01-settings/_settings.tooltip.scss +0 -19
  585. package/src/styles/01-settings/_settings.typography.scss +0 -76
  586. package/src/styles/01-settings/_settings.upload.scss +0 -77
  587. package/src/styles/01-settings/_settings.z-layers.scss +0 -9
  588. package/src/styles/02-tools/_index.scss +0 -20
  589. package/src/styles/02-tools/_tools.animations.scss +0 -19
  590. package/src/styles/02-tools/_tools.border-radius.scss +0 -79
  591. package/src/styles/02-tools/_tools.breakpoints.scss +0 -49
  592. package/src/styles/02-tools/_tools.button.scss +0 -91
  593. package/src/styles/02-tools/_tools.clearfix.scss +0 -10
  594. package/src/styles/02-tools/_tools.color-functions.scss +0 -28
  595. package/src/styles/02-tools/_tools.color-mode.scss +0 -22
  596. package/src/styles/02-tools/_tools.event.scss +0 -22
  597. package/src/styles/02-tools/_tools.grid.scss +0 -76
  598. package/src/styles/02-tools/_tools.hidden-visually.scss +0 -32
  599. package/src/styles/02-tools/_tools.hidden.scss +0 -2
  600. package/src/styles/02-tools/_tools.map-loop.scss +0 -31
  601. package/src/styles/02-tools/_tools.media-queries.scss +0 -67
  602. package/src/styles/02-tools/_tools.object-fit.scss +0 -4
  603. package/src/styles/02-tools/_tools.placeholder.scss +0 -18
  604. package/src/styles/02-tools/_tools.rem.scss +0 -5
  605. package/src/styles/02-tools/_tools.size.scss +0 -8
  606. package/src/styles/02-tools/_tools.spacing.scss +0 -166
  607. package/src/styles/02-tools/_tools.to-rgb.scss +0 -9
  608. package/src/styles/02-tools/_tools.transition.scss +0 -50
  609. package/src/styles/02-tools/_tools.utilities.scss +0 -14
  610. package/src/styles/02-tools/_tools.utility-api.scss +0 -129
  611. package/src/styles/03-generic/_generic.fonts.scss +0 -25
  612. package/src/styles/03-generic/_generic.reset.scss +0 -397
  613. package/src/styles/03-generic/_generic.root.scss +0 -184
  614. package/src/styles/03-generic/_generic.selection.scss +0 -15
  615. package/src/styles/03-generic/_index.scss +0 -5
  616. package/src/styles/04-elements/_elements.all.scss +0 -16
  617. package/src/styles/04-elements/_elements.body.scss +0 -16
  618. package/src/styles/04-elements/_elements.heading.scss +0 -38
  619. package/src/styles/04-elements/_elements.html.scss +0 -9
  620. package/src/styles/04-elements/_elements.links.scss +0 -12
  621. package/src/styles/04-elements/_index.scss +0 -6
  622. package/src/styles/05-objects/_index.scss +0 -4
  623. package/src/styles/05-objects/_objects.container.scss +0 -35
  624. package/src/styles/05-objects/_objects.grid.scss +0 -25
  625. package/src/styles/05-objects/_objects.masonry-grid.scss +0 -90
  626. package/src/styles/06-components/_components.accordion.scss +0 -103
  627. package/src/styles/06-components/_components.avatar-group.scss +0 -84
  628. package/src/styles/06-components/_components.avatar.scss +0 -100
  629. package/src/styles/06-components/_components.badge.scss +0 -62
  630. package/src/styles/06-components/_components.breadcrumb.scss +0 -81
  631. package/src/styles/06-components/_components.btn-group.scss +0 -35
  632. package/src/styles/06-components/_components.button.scss +0 -126
  633. package/src/styles/06-components/_components.callout.scss +0 -266
  634. package/src/styles/06-components/_components.card.scss +0 -152
  635. package/src/styles/06-components/_components.checkbox-group.scss +0 -18
  636. package/src/styles/06-components/_components.checkbox.scss +0 -142
  637. package/src/styles/06-components/_components.color-mode-toggle.scss +0 -36
  638. package/src/styles/06-components/_components.countdown.scss +0 -64
  639. package/src/styles/06-components/_components.data-table.scss +0 -179
  640. package/src/styles/06-components/_components.datepicker.scss +0 -524
  641. package/src/styles/06-components/_components.dropdown.scss +0 -249
  642. package/src/styles/06-components/_components.edge-panel.scss +0 -309
  643. package/src/styles/06-components/_components.form-group.scss +0 -77
  644. package/src/styles/06-components/_components.form.scss +0 -21
  645. package/src/styles/06-components/_components.hero.scss +0 -151
  646. package/src/styles/06-components/_components.icon.scss +0 -80
  647. package/src/styles/06-components/_components.image-gallery.scss +0 -70
  648. package/src/styles/06-components/_components.input.scss +0 -105
  649. package/src/styles/06-components/_components.list-group.scss +0 -62
  650. package/src/styles/06-components/_components.list.scss +0 -57
  651. package/src/styles/06-components/_components.menu.scss +0 -234
  652. package/src/styles/06-components/_components.messages.scss +0 -319
  653. package/src/styles/06-components/_components.modal.scss +0 -154
  654. package/src/styles/06-components/_components.nav.scss +0 -127
  655. package/src/styles/06-components/_components.navbar.scss +0 -234
  656. package/src/styles/06-components/_components.pagination.scss +0 -154
  657. package/src/styles/06-components/_components.photoviewer.scss +0 -873
  658. package/src/styles/06-components/_components.popover.scss +0 -99
  659. package/src/styles/06-components/_components.product-review.scss +0 -128
  660. package/src/styles/06-components/_components.progress.scss +0 -46
  661. package/src/styles/06-components/_components.rating.scss +0 -160
  662. package/src/styles/06-components/_components.river.scss +0 -214
  663. package/src/styles/06-components/_components.sectionintro.scss +0 -170
  664. package/src/styles/06-components/_components.select.scss +0 -126
  665. package/src/styles/06-components/_components.side-menu.scss +0 -108
  666. package/src/styles/06-components/_components.skeleton.scss +0 -56
  667. package/src/styles/06-components/_components.spinner.scss +0 -47
  668. package/src/styles/06-components/_components.steps.scss +0 -100
  669. package/src/styles/06-components/_components.tabs.scss +0 -119
  670. package/src/styles/06-components/_components.testimonials.scss +0 -68
  671. package/src/styles/06-components/_components.todo.scss +0 -163
  672. package/src/styles/06-components/_components.toggle.scss +0 -100
  673. package/src/styles/06-components/_components.tooltip.scss +0 -137
  674. package/src/styles/06-components/_components.upload.scss +0 -260
  675. package/src/styles/06-components/_index.scss +0 -49
  676. package/src/styles/99-utilities/_index.scss +0 -21
  677. package/src/styles/99-utilities/_utilities.background.scss +0 -28
  678. package/src/styles/99-utilities/_utilities.border.scss +0 -157
  679. package/src/styles/99-utilities/_utilities.clearfix.scss +0 -5
  680. package/src/styles/99-utilities/_utilities.display.scss +0 -12
  681. package/src/styles/99-utilities/_utilities.flex.scss +0 -109
  682. package/src/styles/99-utilities/_utilities.link.scss +0 -79
  683. package/src/styles/99-utilities/_utilities.object-fit.scss +0 -17
  684. package/src/styles/99-utilities/_utilities.opacity.scss +0 -16
  685. package/src/styles/99-utilities/_utilities.overflow.scss +0 -20
  686. package/src/styles/99-utilities/_utilities.position.scss +0 -40
  687. package/src/styles/99-utilities/_utilities.scss +0 -42
  688. package/src/styles/99-utilities/_utilities.shadow.scss +0 -19
  689. package/src/styles/99-utilities/_utilities.sizes.scss +0 -81
  690. package/src/styles/99-utilities/_utilities.spacing.scss +0 -153
  691. package/src/styles/99-utilities/_utilities.text.scss +0 -87
  692. package/src/styles/99-utilities/_utilities.visibility.scss +0 -13
  693. package/src/styles/99-utilities/_utilities.visually-hidden.scss +0 -5
  694. package/src/styles/99-utilities/_utilities.z-index.scss +0 -11
  695. package/src/styles/index.scss +0 -12
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/esm/202.ff48d27672233280e021.js","mappings":"qLAwBA,MAAMA,EAAgC,CACpCC,YAAa,EACbC,UAAU,GAMZ,MAAMC,EACIC,SACAC,SACAC,QACAC,OACAN,YAORO,WAAAA,CAAYJ,EAA4BE,EAAU,CAAC,GACjDG,KAAKL,SAAWA,GAAYM,EAAAA,GAAMC,UAAUD,MAC5CD,KAAKJ,SACiB,iBAAbD,EACHQ,SAASC,cAA2BT,GACpCA,EACNK,KAAKH,QAAU,IAAKN,KAAoBM,GACxCG,KAAKF,OAAS,KACdE,KAAKR,YAAcQ,KAAKH,QAAQL,aAAe,EAC/CQ,KAAKK,aACP,CAKQA,WAAAA,GACDL,KAAKJ,WAEVI,KAAKM,sBAGDN,KAAKH,QAAQJ,WAAaO,KAAKJ,SAASW,UAAUC,SAASP,EAAAA,GAAMQ,QAAQC,WAC3EV,KAAKJ,SAASW,UAAUI,IAAIV,EAAAA,GAAMQ,QAAQC,UAG5CV,KAAKY,UAAUZ,KAAKR,aACtB,CAKQc,mBAAAA,GACDN,KAAKJ,WAEVI,KAAKF,OAASE,KAAKJ,SAASiB,iBAA8BZ,EAAAA,GAAMC,UAAUY,MAC5E,CAMOF,SAAAA,CAAUG,GACVf,KAAKF,QAAUiB,GAAQ,GAAcf,KAAKF,OAAOkB,OAArBD,IAGjCf,KAAKF,OAAOmB,SAAQ,CAACC,EAAMC,KACjBJ,EAAJI,GAEFD,EAAKX,UAAUI,IAAIV,EAAAA,GAAMQ,QAAQW,QACjCF,EAAKX,UAAUI,IAAIV,EAAAA,GAAMQ,QAAQY,YACxBF,IAAMJ,GAEfG,EAAKX,UAAUI,IAAIV,EAAAA,GAAMQ,QAAQW,QACjCF,EAAKX,UAAUe,OAAOrB,EAAAA,GAAMQ,QAAQY,aAGpCH,EAAKX,UAAUe,OAAOrB,EAAAA,GAAMQ,QAAQW,QACpCF,EAAKX,UAAUe,OAAOrB,EAAAA,GAAMQ,QAAQY,WACtC,IAGFrB,KAAKR,YAAcuB,EACrB,CAKOQ,IAAAA,IACmBvB,KAAKF,QAAQkB,QAAU,GAAK,EAAhDhB,KAAKR,aACPQ,KAAKY,UAAUZ,KAAKR,YAAc,EAEtC,CAKOgC,QAAAA,GACDxB,KAAKR,YAAc,GACrBQ,KAAKY,UAAUZ,KAAKR,YAAc,EAEtC,CAKOiC,OAAAA,GACL,EAUG,SAASC,EAAgB/B,EAAWM,EAAAA,GAAMC,UAAUD,MAAOJ,EAAU,CAAC,GAC3E,MAAM8B,EAAkC,GAClCC,EAAgBzB,SAASU,iBAA8BlB,GAE7D,OAAKiC,EAAcZ,QAEnBY,EAAcX,SAASY,IACrB,IACE,MAAMC,EAAW,IAAIpC,EAAMmC,EAAShC,GACpC8B,EAAeI,KAAKD,EACtB,CAAE,MAAOE,GAET,KAGKL,GAX2BA,CAYpC,CAEA,S","sources":["webpack://@shohojdhara/atomix/./src/components/Steps/scripts/index.ts"],"sourcesContent":["import { STEPS } from '../../../lib/constants/components';\n\n/**\n * Interface for Steps options\n */\ninterface StepsOptions {\n activeIndex?: number;\n vertical?: boolean;\n [key: string]: any;\n}\n\n/**\n * Interface for Steps instance\n */\ninterface StepsInstance {\n setActive: (index: number) => void;\n next: () => void;\n previous: () => void;\n destroy: () => void;\n}\n\n/**\n * Default options for the Steps component\n */\nconst DEFAULT_OPTIONS: StepsOptions = {\n activeIndex: 0,\n vertical: false\n};\n\n/**\n * Class representing a Steps component\n */\nclass Steps implements StepsInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private options: StepsOptions;\n private $items: NodeListOf<HTMLElement> | null;\n private activeIndex: number;\n\n /**\n * Creates an instance of Steps\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || STEPS.SELECTORS.STEPS;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as StepsOptions;\n this.$items = null;\n this.activeIndex = this.options.activeIndex || 0;\n this._initialize();\n }\n\n /**\n * Initialize the steps component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n this._initializeElements();\n \n // Set vertical mode if specified\n if (this.options.vertical && !this.$element.classList.contains(STEPS.CLASSES.VERTICAL)) {\n this.$element.classList.add(STEPS.CLASSES.VERTICAL);\n }\n \n this.setActive(this.activeIndex);\n }\n\n /**\n * Initialize DOM elements\n */\n private _initializeElements(): void {\n if (!this.$element) return;\n \n this.$items = this.$element.querySelectorAll<HTMLElement>(STEPS.SELECTORS.ITEM);\n }\n\n /**\n * Sets the active step\n * @param index - The index of the step to make active\n */\n public setActive(index: number): void {\n if (!this.$items || index < 0 || index >= this.$items.length) return;\n \n // Update all items\n this.$items.forEach((item, i) => {\n if (i < index) {\n // Steps before active are completed\n item.classList.add(STEPS.CLASSES.ACTIVE);\n item.classList.add(STEPS.CLASSES.COMPLETED);\n } else if (i === index) {\n // Current step is active but not completed\n item.classList.add(STEPS.CLASSES.ACTIVE);\n item.classList.remove(STEPS.CLASSES.COMPLETED);\n } else {\n // Future steps are neither active nor completed\n item.classList.remove(STEPS.CLASSES.ACTIVE);\n item.classList.remove(STEPS.CLASSES.COMPLETED);\n }\n });\n \n this.activeIndex = index;\n }\n\n /**\n * Moves to the next step\n */\n public next(): void {\n if (this.activeIndex < (this.$items?.length || 0) - 1) {\n this.setActive(this.activeIndex + 1);\n }\n }\n\n /**\n * Moves to the previous step\n */\n public previous(): void {\n if (this.activeIndex > 0) {\n this.setActive(this.activeIndex - 1);\n }\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n // No specific cleanup needed for steps component\n }\n}\n\n/**\n * Initialize all steps in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {StepsInstance[]} Array of Steps instances\n */\nexport function initializeSteps(selector = STEPS.SELECTORS.STEPS, options = {}): StepsInstance[] {\n const stepsInstances: StepsInstance[] = [];\n const stepsElements = document.querySelectorAll<HTMLElement>(selector);\n\n if (!stepsElements.length) return stepsInstances;\n\n stepsElements.forEach((element) => {\n try {\n const instance = new Steps(element, options);\n stepsInstances.push(instance);\n } catch (error) {\n console.error('Error initializing steps:', error);\n }\n });\n\n return stepsInstances;\n}\n\nexport default Steps; "],"names":["DEFAULT_OPTIONS","activeIndex","vertical","Steps","selector","$element","options","$items","constructor","this","STEPS","SELECTORS","document","querySelector","_initialize","_initializeElements","classList","contains","CLASSES","VERTICAL","add","setActive","querySelectorAll","ITEM","index","length","forEach","item","i","ACTIVE","COMPLETED","remove","next","previous","destroy","initializeSteps","stepsInstances","stepsElements","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/esm/308.f873332126eba90e5c62.js","mappings":"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","sources":["webpack://@shohojdhara/atomix/./src/components/Upload/scripts/index.ts"],"sourcesContent":["import { UPLOAD } from '../../../lib/constants/components';\n\n/**\n * Interface for Upload options\n */\ninterface UploadOptions {\n disabled?: boolean;\n maxSizeInMB?: number;\n acceptedFileTypes?: string[];\n multiple?: boolean;\n onFileSelect?: (files: File[]) => void;\n onFileUpload?: (file: File, progress: number) => void;\n onFileUploadComplete?: (file: File) => void;\n onFileUploadError?: (file: File, error: string) => void;\n [key: string]: any;\n}\n\n/**\n * Interface for Upload instance\n */\ninterface UploadInstance {\n setStatus: (status: 'idle' | 'loading' | 'success' | 'error', message?: string) => void;\n setProgress: (percentage: number, timeLeft?: string) => void;\n setFile: (file: File | null) => void;\n disable: () => void;\n enable: () => void;\n destroy: () => void;\n}\n\n/**\n * Default options for the Upload component\n */\nconst DEFAULT_OPTIONS: UploadOptions = {\n disabled: false,\n maxSizeInMB: 5,\n acceptedFileTypes: ['application/pdf', 'application/vnd.ms-excel', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'image/jpeg', 'image/png'],\n multiple: false\n};\n\n/**\n * Class representing an Upload component\n */\nclass Upload implements UploadInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private $input: HTMLInputElement | null;\n private $button: HTMLButtonElement | null;\n private $loader: HTMLElement | null;\n private $loaderTitle: HTMLElement | null;\n private $loaderProgress: HTMLElement | null;\n private $loaderClose: HTMLButtonElement | null;\n private options: UploadOptions;\n private currentFile: File | null;\n private dragCounter: number;\n\n /**\n * Creates an instance of Upload\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || UPLOAD.SELECTORS.UPLOAD;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as UploadOptions;\n this.$input = null;\n this.$button = null;\n this.$loader = null;\n this.$loaderTitle = null;\n this.$loaderProgress = null;\n this.$loaderClose = null;\n this.currentFile = null;\n this.dragCounter = 0;\n this._initialize();\n }\n\n /**\n * Initialize the upload component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n // Create a hidden file input element\n this._createHiddenInput();\n\n // Get references to elements\n this.$button = this.$element.querySelector<HTMLButtonElement>(UPLOAD.SELECTORS.BUTTON);\n this.$loader = this.$element.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER);\n this.$loaderTitle = this.$element?.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER_TITLE);\n this.$loaderProgress = this.$element?.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER_PROGRESS);\n this.$loaderClose = this.$element?.querySelector<HTMLButtonElement>(UPLOAD.SELECTORS.LOADER_CLOSE);\n\n // Apply disabled state if specified\n if (this.options.disabled) {\n this.disable();\n }\n\n // Set up event listeners\n this._setupEventListeners();\n }\n\n /**\n * Creates a hidden file input element and appends it to the element\n */\n private _createHiddenInput(): void {\n if (!this.$element) return;\n\n // Create input element\n const input = document.createElement('input');\n input.type = 'file';\n input.style.display = 'none';\n input.accept = this.options.acceptedFileTypes?.join(',') || '';\n input.multiple = !!this.options.multiple;\n \n // Append to element\n this.$element.appendChild(input);\n this.$input = input;\n }\n\n /**\n * Set up all event listeners\n */\n private _setupEventListeners(): void {\n if (!this.$element || !this.$input || !this.$button) return;\n\n // Button click handler\n this.$button.addEventListener('click', this._handleButtonClick.bind(this));\n\n // Input change handler\n this.$input.addEventListener('change', this._handleFileSelect.bind(this));\n\n // Drag and drop handlers\n this.$element.addEventListener('dragenter', this._handleDragEnter.bind(this));\n this.$element.addEventListener('dragleave', this._handleDragLeave.bind(this));\n this.$element.addEventListener('dragover', this._handleDragOver.bind(this));\n this.$element.addEventListener('drop', this._handleDrop.bind(this));\n\n // Close button handler\n if (this.$loaderClose) {\n this.$loaderClose.addEventListener('click', this._handleClose.bind(this));\n }\n }\n\n /**\n * Handle button click\n */\n private _handleButtonClick(event: MouseEvent): void {\n event.preventDefault();\n if (this.$input && !this.options.disabled) {\n this.$input.click();\n }\n }\n\n /**\n * Handle file selection from the input element\n */\n private _handleFileSelect(event: Event): void {\n if (!this.$input?.files?.length) return;\n \n const files = Array.from(this.$input.files);\n this._processFiles(files);\n }\n\n /**\n * Handle drag enter event\n */\n private _handleDragEnter(event: DragEvent): void {\n event.preventDefault();\n if (this.options.disabled) return;\n \n this.dragCounter++;\n if (this.dragCounter === 1) {\n this.$element?.classList.add(UPLOAD.CLASSES.DRAGGING);\n }\n }\n\n /**\n * Handle drag leave event\n */\n private _handleDragLeave(event: DragEvent): void {\n event.preventDefault();\n if (this.options.disabled) return;\n \n this.dragCounter--;\n if (this.dragCounter === 0) {\n this.$element?.classList.remove(UPLOAD.CLASSES.DRAGGING);\n }\n }\n\n /**\n * Handle drag over event\n */\n private _handleDragOver(event: DragEvent): void {\n event.preventDefault();\n if (this.options.disabled) return;\n }\n\n /**\n * Handle drop event\n */\n private _handleDrop(event: DragEvent): void {\n event.preventDefault();\n if (this.options.disabled) return;\n \n this.dragCounter = 0;\n this.$element?.classList.remove(UPLOAD.CLASSES.DRAGGING);\n \n if (!event.dataTransfer?.files.length) return;\n \n const files = Array.from(event.dataTransfer.files);\n this._processFiles(files);\n }\n\n /**\n * Handle close button click\n */\n private _handleClose(event: MouseEvent): void {\n event.preventDefault();\n \n // Reset state\n this.setStatus('idle');\n this.setFile(null);\n \n // Reset input\n if (this.$input) {\n this.$input.value = '';\n }\n }\n\n /**\n * Process the selected files\n */\n private _processFiles(files: File[]): void {\n if (!files.length) return;\n \n // If multiple is not allowed, take only the first file\n const filesToProcess = this.options.multiple ? files : [files[0]];\n \n // Validate files\n const validFiles = filesToProcess.filter(file => this._validateFile(file));\n \n // Notify about file selection\n if (validFiles.length && this.options.onFileSelect) {\n this.options.onFileSelect(validFiles);\n }\n \n // Process the first valid file\n if (validFiles.length) {\n this.setFile(validFiles[0]);\n this._simulateUpload(validFiles[0]);\n }\n }\n\n /**\n * Validate a file based on size and type\n */\n private _validateFile(file: File): boolean {\n const maxSizeInBytes = (this.options.maxSizeInMB || 5) * 1024 * 1024;\n \n // Check file size\n if (file.size > maxSizeInBytes) {\n this.setStatus('error', `File too large. Maximum size is ${this.options.maxSizeInMB}MB.`);\n return false;\n }\n \n // Check file type if acceptedFileTypes is provided\n if (this.options.acceptedFileTypes?.length) {\n const isAcceptedType = this.options.acceptedFileTypes.some(type => {\n // Handle wildcards like image/*\n if (type.endsWith('/*')) {\n const mainType = type.split('/')[0];\n return file.type.startsWith(`${mainType}/`);\n }\n return file.type === type;\n });\n \n if (!isAcceptedType) {\n this.setStatus('error', 'File type not supported.');\n return false;\n }\n }\n \n return true;\n }\n\n /**\n * Simulate a file upload process\n * In a real implementation, this would be replaced with actual upload logic\n */\n private _simulateUpload(file: File): void {\n this.setStatus('loading');\n let progress = 0;\n \n const interval = setInterval(() => {\n progress += 5;\n \n if (progress < 100) {\n this.setProgress(progress, `${Math.ceil((100 - progress) / 5)} seconds left`);\n \n if (this.options.onFileUpload) {\n this.options.onFileUpload(file, progress);\n }\n } else {\n clearInterval(interval);\n this.setStatus('success', 'Upload successful');\n \n if (this.options.onFileUploadComplete) {\n this.options.onFileUploadComplete(file);\n }\n }\n }, 500);\n }\n\n /**\n * Set current file\n */\n public setFile(file: File | null): void {\n this.currentFile = file;\n \n if (file && this.$loaderTitle) {\n this.$loaderTitle.textContent = file.name;\n }\n }\n\n /**\n * Set upload progress\n */\n public setProgress(percentage: number, timeLeft?: string): void {\n if (!this.$element || !this.$loaderProgress) return;\n \n // Set percentage as CSS variable\n this.$element.style.setProperty(UPLOAD.ATTRIBUTES.PERCENTAGE, percentage.toString());\n \n // Update the loader elements if they exist\n const $par = this.$element.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER_PAR);\n const $time = this.$element.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER_TIME);\n \n if ($par) {\n $par.textContent = `${percentage}%`;\n }\n \n if ($time && timeLeft) {\n $time.textContent = timeLeft;\n }\n }\n\n /**\n * Set upload status\n */\n public setStatus(status: 'idle' | 'loading' | 'success' | 'error', message?: string): void {\n if (!this.$element) return;\n \n // Remove all status classes\n this.$element.classList.remove(\n UPLOAD.CLASSES.LOADING,\n UPLOAD.CLASSES.SUCCESS,\n UPLOAD.CLASSES.ERROR\n );\n \n // Add appropriate class based on status\n switch (status) {\n case 'loading':\n this.$element.classList.add(UPLOAD.CLASSES.LOADING);\n break;\n case 'success':\n this.$element.classList.add(UPLOAD.CLASSES.SUCCESS);\n break;\n case 'error':\n this.$element.classList.add(UPLOAD.CLASSES.ERROR);\n break;\n }\n \n // Update message if provided and loader exists\n if (message && this.$loaderProgress) {\n this.$loaderProgress.textContent = message;\n }\n }\n\n /**\n * Disable the upload component\n */\n public disable(): void {\n if (!this.$element || !this.$button) return;\n \n this.$element.classList.add(UPLOAD.CLASSES.DISABLED);\n this.$button.disabled = true;\n this.options.disabled = true;\n }\n\n /**\n * Enable the upload component\n */\n public enable(): void {\n if (!this.$element || !this.$button) return;\n \n this.$element.classList.remove(UPLOAD.CLASSES.DISABLED);\n this.$button.disabled = false;\n this.options.disabled = false;\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n if (!this.$element || !this.$input || !this.$button) return;\n \n // Remove event listeners\n this.$button.removeEventListener('click', this._handleButtonClick.bind(this));\n this.$input.removeEventListener('change', this._handleFileSelect.bind(this));\n this.$element.removeEventListener('dragenter', this._handleDragEnter.bind(this));\n this.$element.removeEventListener('dragleave', this._handleDragLeave.bind(this));\n this.$element.removeEventListener('dragover', this._handleDragOver.bind(this));\n this.$element.removeEventListener('drop', this._handleDrop.bind(this));\n \n if (this.$loaderClose) {\n this.$loaderClose.removeEventListener('click', this._handleClose.bind(this));\n }\n \n // Remove input element\n if (this.$input.parentNode) {\n this.$input.parentNode.removeChild(this.$input);\n }\n }\n}\n\n/**\n * Initialize all upload components in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {UploadInstance[]} Array of Upload instances\n */\nexport function initializeUploads(selector = UPLOAD.SELECTORS.UPLOAD, options = {}): UploadInstance[] {\n const uploadInstances: UploadInstance[] = [];\n const uploadElements = document.querySelectorAll<HTMLElement>(typeof selector === 'string' ? selector : UPLOAD.SELECTORS.UPLOAD);\n\n if (!uploadElements.length) return uploadInstances;\n\n uploadElements.forEach((element) => {\n try {\n const instance = new Upload(element, options);\n uploadInstances.push(instance);\n } catch (error) {\n console.error('Error initializing upload:', error);\n }\n });\n\n return uploadInstances;\n}\n\nexport default Upload; "],"names":["DEFAULT_OPTIONS","disabled","maxSizeInMB","acceptedFileTypes","multiple","Upload","selector","$element","$input","$button","$loader","$loaderTitle","$loaderProgress","$loaderClose","options","currentFile","dragCounter","constructor","this","UPLOAD","SELECTORS","document","querySelector","_initialize","_createHiddenInput","BUTTON","LOADER","LOADER_TITLE","LOADER_PROGRESS","LOADER_CLOSE","disable","_setupEventListeners","input","createElement","type","style","display","accept","join","appendChild","addEventListener","_handleButtonClick","bind","_handleFileSelect","_handleDragEnter","_handleDragLeave","_handleDragOver","_handleDrop","_handleClose","event","preventDefault","click","files","length","Array","from","_processFiles","classList","add","CLASSES","DRAGGING","remove","dataTransfer","setStatus","setFile","value","validFiles","filter","file","_validateFile","onFileSelect","_simulateUpload","size","some","endsWith","mainType","split","startsWith","progress","interval","setInterval","setProgress","Math","ceil","onFileUpload","clearInterval","onFileUploadComplete","textContent","name","percentage","timeLeft","setProperty","ATTRIBUTES","PERCENTAGE","$par","LOADER_PAR","$time","LOADER_TIME","status","message","LOADING","SUCCESS","ERROR","DISABLED","enable","destroy","removeEventListener","parentNode","removeChild","initializeUploads","uploadInstances","uploadElements","querySelectorAll","forEach","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/esm/54.4db919e5e4e5cc6d7c72.js","mappings":"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","sources":["webpack://@shohojdhara/atomix/./src/components/Tab/scripts/index.ts"],"sourcesContent":["import { TAB } from '../../../lib/constants/components';\n\n/**\n * Interface for Tab options\n */\ninterface TabOptions {\n navItems: string;\n navBtn: string;\n panels: string;\n panelBodys: string;\n activeClass: string;\n activeIndex: number;\n [key: string]: any;\n}\n\n/**\n * Interface for Tab instance\n */\ninterface TabInstance {\n destroy: () => void;\n}\n\n/**\n * Default options for the tab component\n */\nconst DEFAULT_OPTIONS = {\n navItems: TAB.SELECTORS.NAV_ITEMS,\n navBtn: TAB.SELECTORS.NAV_BTN,\n panels: TAB.SELECTORS.PANELS,\n panelBodys: TAB.SELECTORS.PANEL_BODIES,\n activeClass: TAB.CLASSES.ACTIVE,\n activeIndex: TAB.DEFAULTS.ACTIVE_INDEX\n};\n\n/**\n * Class representing a Tab component\n */\nclass Tab implements TabInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private options: TabOptions;\n private $navItems: NodeListOf<HTMLElement> | null;\n private $panels: NodeListOf<HTMLElement> | null;\n private $panelBodys: NodeListOf<HTMLElement> | null;\n\n /**\n * Creates an instance of Tab\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || TAB.SELECTORS.TAB;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as TabOptions;\n this.$navItems = null;\n this.$panels = null;\n this.$panelBodys = null;\n this._initialize();\n }\n\n /**\n * Initialize the tab component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n this._initializeElements();\n this._showTab(this.options.activeIndex);\n this._bindEvents();\n }\n\n /**\n * Initialize DOM elements\n */\n private _initializeElements(): void {\n if (!this.$element) return;\n \n this.$navItems = this.$element.querySelectorAll<HTMLElement>(this.options.navItems);\n this.$panels = this.$element.querySelectorAll<HTMLElement>(this.options.panels);\n this.$panelBodys = this.$element.querySelectorAll<HTMLElement>(this.options.panelBodys);\n }\n\n /**\n * Bind event listeners\n */\n private _bindEvents(): void {\n if (!this.$navItems) return;\n \n this.$navItems.forEach((item) => {\n const btn = item.querySelector<HTMLElement>(this.options.navBtn);\n if (btn) {\n btn.addEventListener('click', () => this._handleTabClick(btn));\n }\n });\n }\n\n /**\n * Handle tab click event\n * @param btn - The clicked tab button\n */\n private _handleTabClick(btn: HTMLElement): void {\n const tabIndex = btn.dataset.tabindex;\n if (tabIndex === undefined) return;\n \n this._hideAllTabs();\n this._showTab(tabIndex);\n }\n\n /**\n * Hide all tabs\n */\n private _hideAllTabs(): void {\n if (!this.$panels || !this.$navItems) return;\n \n this.$panels.forEach((panel) => {\n panel.style.height = '0px';\n panel.classList.remove(this.options.activeClass);\n panel.style.opacity = '0';\n });\n\n this.$navItems.forEach((item) => {\n const btn = item.querySelector<HTMLElement>(this.options.navBtn);\n if (btn) {\n btn.classList.remove(this.options.activeClass);\n }\n });\n }\n\n /**\n * Show tab at specified index\n * @param index - The index of tab to show\n */\n private _showTab(index: number | string): void {\n if (!this.$panels || !this.$navItems || !this.$panelBodys) return;\n \n this.$panels.forEach((panel, pIndex) => {\n if (panel.dataset.tabindex == index.toString()) {\n const panelBody = this.$panelBodys?.[pIndex];\n if (panelBody) {\n panel.classList.add(this.options.activeClass);\n requestAnimationFrame(() => {\n panel.style.height = `${panelBody.clientHeight}px`;\n panel.style.opacity = '1';\n });\n }\n }\n });\n\n this.$navItems.forEach((navItem, nIndex) => {\n const btn = navItem.querySelector<HTMLElement>(this.options.navBtn);\n if (btn && btn.dataset.tabindex == index.toString()) {\n btn.classList.add(this.options.activeClass);\n }\n });\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n if (!this.$element || !this.$navItems) return;\n\n this.$navItems.forEach((item) => {\n const btn = item.querySelector<HTMLElement>(this.options.navBtn);\n if (btn) {\n // Need to recreate the bound function to remove it correctly\n btn.removeEventListener('click', () => this._handleTabClick(btn));\n }\n });\n }\n}\n\n/**\n * Initialize all tabs in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {TabInstance[]} Array of Tab instances\n */\nexport function initializeTabs(selector = TAB.SELECTORS.TAB, options = {}): TabInstance[] {\n const tabInstances: TabInstance[] = [];\n const tabElements = document.querySelectorAll<HTMLElement>(selector);\n\n if (!tabElements.length) return tabInstances;\n\n tabElements.forEach((element) => {\n try {\n const instance = new Tab(element, options);\n tabInstances.push(instance);\n } catch (error) {\n console.error('Error initializing tab:', error);\n }\n });\n\n return tabInstances;\n}\n\nexport default Tab; "],"names":["DEFAULT_OPTIONS","navItems","TAB","SELECTORS","NAV_ITEMS","navBtn","NAV_BTN","panels","PANELS","panelBodys","PANEL_BODIES","activeClass","CLASSES","ACTIVE","activeIndex","DEFAULTS","ACTIVE_INDEX","Tab","selector","$element","options","$navItems","$panels","$panelBodys","constructor","this","document","querySelector","_initialize","_initializeElements","_showTab","_bindEvents","querySelectorAll","forEach","item","btn","addEventListener","_handleTabClick","tabIndex","dataset","tabindex","undefined","_hideAllTabs","panel","style","height","classList","remove","opacity","index","pIndex","panelBody","add","requestAnimationFrame","clientHeight","navItem","nIndex","destroy","removeEventListener","initializeTabs","tabInstances","tabElements","length","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/esm/619.afc5a718eff77fa423b5.js","mappings":"sLA0BA,MAAMA,EAAgC,CACpCC,QAAQ,EACRC,UAAU,EACVC,SAAS,EACTC,aAAa,GAMf,MAAMC,EACIC,SACAC,QAORC,WAAAA,CAAYC,EAAsBF,EAAU,CAAC,GAC3CG,KAAKJ,SAAWG,EAChBC,KAAKH,QAAU,IAAKP,KAAoBO,GACxCG,KAAKC,MACP,CAKAA,IAAAA,GACMD,KAAKH,QAAQK,cACfF,KAAKJ,SAASO,MAAMC,YAClBC,EAAAA,GAAMC,WAAWC,cACjBP,KAAKH,QAAQK,cAKbF,KAAKH,QAAQW,oBACfR,KAAKS,sBAET,CAKQA,oBAAAA,GACN,IAAKT,KAAKJ,WAAaI,KAAKH,QAAQW,mBAAoB,OAGxD,IAAIE,EAAMV,KAAKJ,SAASe,cAAcN,EAAAA,GAAMO,UAAUC,IAEtD,IAAKH,EAAK,CAERA,EAAMI,SAASC,cAAc,OAC7BL,EAAIM,UAAYX,EAAAA,GAAMO,UAAUC,GAAGI,QAAQ,IAAK,IAGhD,MAAMC,EAAWJ,SAASC,cAAc,OAOxC,GANAG,EAASC,IAAMnB,KAAKH,QAAQW,mBAC5BU,EAASE,IAAM,aACfF,EAASF,UAAYX,EAAAA,GAAMO,UAAUS,SAASJ,QAAQ,IAAK,IAC3DP,EAAIY,YAAYJ,GAGZlB,KAAKH,QAAQH,YAAa,CAC5B,MAAM6B,EAAWT,SAASC,cAAc,OACxCQ,EAASP,UAAYX,EAAAA,GAAMO,UAAUY,QAAQP,QAAQ,IAAK,IAC1DP,EAAIY,YAAYC,EAClB,CAGIvB,KAAKJ,SAAS6B,WAChBzB,KAAKJ,SAAS8B,aAAahB,EAAKV,KAAKJ,SAAS6B,YAE9CzB,KAAKJ,SAAS0B,YAAYZ,EAE9B,CACF,CAKAiB,OAAAA,GACE,EAUG,SAASC,EAAiBC,EAAWxB,EAAAA,GAAMO,UAAUP,MAAOR,EAAU,CAAC,GAC5E,MAAMiC,EAAkC,GAClCC,EAAgBjB,SAASkB,iBAAkD,iBAAbH,EAAwBA,EAAWxB,EAAAA,GAAMO,UAAUP,OAEvH,OAAK0B,EAAcE,QAEnBF,EAAcG,SAASnC,IACrB,IACE,MAAMoC,EAAW,IAAIxC,EAAMI,EAASF,GACpCiC,EAAeM,KAAKD,EACtB,CAAE,MAAOE,GAET,KAGKP,GAX2BA,CAYpC,CAEA,S","sources":["webpack://@shohojdhara/atomix/./src/components/River/scripts/index.ts"],"sourcesContent":["import { RIVER } from '../../../lib/constants/components';\n\n/**\n * Interface for River options\n */\ninterface RiverOptions {\n center?: boolean;\n breakout?: boolean;\n reverse?: boolean;\n backgroundImageSrc?: string;\n showOverlay?: boolean;\n contentWidth?: string;\n [key: string]: any;\n}\n\n/**\n * Interface for River instance\n */\ninterface RiverInstance {\n init(): void;\n destroy(): void;\n}\n\n/**\n * Default options for the River component\n */\nconst DEFAULT_OPTIONS: RiverOptions = {\n center: false,\n breakout: false,\n reverse: false,\n showOverlay: true\n};\n\n/**\n * Class representing a River component\n */\nclass River implements RiverInstance {\n private $element: HTMLElement;\n private options: RiverOptions;\n\n /**\n * Creates an instance of River\n * @param element - The river element\n * @param options - Custom options to override defaults\n */\n constructor(element: HTMLElement, options = {}) {\n this.$element = element;\n this.options = { ...DEFAULT_OPTIONS, ...options };\n this.init();\n }\n\n /**\n * Initialize the river component\n */\n init(): void {\n if (this.options.contentWidth) {\n this.$element.style.setProperty(\n RIVER.ATTRIBUTES.CONTENT_WIDTH,\n this.options.contentWidth\n );\n }\n\n // Add background image if provided\n if (this.options.backgroundImageSrc) {\n this.setupBackgroundImage();\n }\n }\n\n /**\n * Setup background image\n */\n private setupBackgroundImage(): void {\n if (!this.$element || !this.options.backgroundImageSrc) return;\n\n // Check if background already exists\n let $bg = this.$element.querySelector(RIVER.SELECTORS.BG);\n \n if (!$bg) {\n // Create background container\n $bg = document.createElement('div');\n $bg.className = RIVER.SELECTORS.BG.replace('.', '');\n \n // Create background image\n const $bgImage = document.createElement('img');\n $bgImage.src = this.options.backgroundImageSrc;\n $bgImage.alt = 'Background';\n $bgImage.className = RIVER.SELECTORS.BG_IMAGE.replace('.', '');\n $bg.appendChild($bgImage);\n \n // Create overlay if needed\n if (this.options.showOverlay) {\n const $overlay = document.createElement('div');\n $overlay.className = RIVER.SELECTORS.OVERLAY.replace('.', '');\n $bg.appendChild($overlay);\n }\n \n // Add background to the element (as first child)\n if (this.$element.firstChild) {\n this.$element.insertBefore($bg, this.$element.firstChild);\n } else {\n this.$element.appendChild($bg);\n }\n }\n }\n\n /**\n * Clean up component\n */\n destroy(): void {\n // Remove any event listeners or cleanup here\n }\n}\n\n/**\n * Initialize all river components in the document\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n * @returns Array of River instances\n */\nexport function initializeRivers(selector = RIVER.SELECTORS.RIVER, options = {}): RiverInstance[] {\n const riverInstances: RiverInstance[] = [];\n const riverElements = document.querySelectorAll<HTMLElement>(typeof selector === 'string' ? selector : RIVER.SELECTORS.RIVER);\n\n if (!riverElements.length) return riverInstances;\n\n riverElements.forEach((element) => {\n try {\n const instance = new River(element, options);\n riverInstances.push(instance);\n } catch (error) {\n console.error('Error initializing river:', error);\n }\n });\n\n return riverInstances;\n}\n\nexport default River; "],"names":["DEFAULT_OPTIONS","center","breakout","reverse","showOverlay","River","$element","options","constructor","element","this","init","contentWidth","style","setProperty","RIVER","ATTRIBUTES","CONTENT_WIDTH","backgroundImageSrc","setupBackgroundImage","$bg","querySelector","SELECTORS","BG","document","createElement","className","replace","$bgImage","src","alt","BG_IMAGE","appendChild","$overlay","OVERLAY","firstChild","insertBefore","destroy","initializeRivers","selector","riverInstances","riverElements","querySelectorAll","length","forEach","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/esm/690.a9e968c7497d61e56cdc.js","mappings":"6LAwBA,MAAMA,EAAuC,CAC3CC,UAAW,OACXC,aAAa,EACbC,KAAM,KACNC,UAAU,GAMZ,MAAMC,EACIC,SACAC,SACAC,QAORC,WAAAA,CAAYH,EAA4BE,EAAU,CAAC,GACjDE,KAAKJ,SAAWA,GAAYK,EAAAA,GAAcC,UAAUD,cACpDD,KAAKH,SACiB,iBAAbD,EACHO,SAASC,cAA2BR,GACpCA,EACNI,KAAKF,QAAU,IAAKR,KAAoBQ,GACxCE,KAAKK,aACP,CAKQA,WAAAA,GACN,GAAKL,KAAKH,WAGqB,WAA3BG,KAAKF,QAAQP,WAA2BS,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAcO,QAAQC,SACjGT,KAAKH,SAASS,UAAUI,IAAIT,EAAAA,GAAcO,QAAQC,QAI1B,OAAtBT,KAAKF,QAAQL,MAAkBO,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAcO,QAAQG,OAEzD,OAAtBX,KAAKF,QAAQL,MAAkBO,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAcO,QAAQI,QAC/FZ,KAAKH,SAASS,UAAUI,IAAIT,EAAAA,GAAcO,QAAQI,OAFlDZ,KAAKH,SAASS,UAAUI,IAAIT,EAAAA,GAAcO,QAAQG,OAMhDX,KAAKF,QAAQe,oBAAoB,CACnC,IAAIC,EAAYd,KAAKH,SAASO,cAAc,uBAG5C,IAAKU,EAAW,CACdA,EAAYX,SAASY,cAAc,OACnCD,EAAUE,UAAY,qBAEtB,MAAMC,EAAad,SAASY,cAAc,OAQ1C,GAPAE,EAAWD,UAAY,2BACvBC,EAAWC,IAAMlB,KAAKF,QAAQe,mBAC9BI,EAAWE,IAAM,aAEjBL,EAAUM,YAAYH,GAGlBjB,KAAKF,QAAQN,YAAa,CAC5B,MAAM6B,EAAiBlB,SAASY,cAAc,OAC9CM,EAAeL,UAAY,0BAC3BF,EAAUM,YAAYC,EACxB,CAGArB,KAAKH,SAASyB,aAAaR,EAAWd,KAAKH,SAAS0B,WACtD,CACF,CACF,CAKOC,OAAAA,GACL,GAAKxB,KAAKH,WAGVG,KAAKH,SAASS,UAAUmB,OAAOxB,EAAAA,GAAcO,QAAQC,QAGrDT,KAAKH,SAASS,UAAUmB,OAAOxB,EAAAA,GAAcO,QAAQG,OACrDX,KAAKH,SAASS,UAAUmB,OAAOxB,EAAAA,GAAcO,QAAQI,OAGjDZ,KAAKF,QAAQe,oBAAoB,CACnC,MAAMC,EAAYd,KAAKH,SAASO,cAAc,uBAC1CU,GACFd,KAAKH,SAAS6B,YAAYZ,EAE9B,CACF,EASK,SAASa,EAAwB/B,EAAWK,EAAAA,GAAcC,UAAUD,cAAeH,EAAU,CAAC,GACnG,MAAM8B,EAAgD,GAChDC,EAAuB1B,SAAS2B,iBAAkD,iBAAblC,EAAwBA,EAAWK,EAAAA,GAAcC,UAAUD,eAEtI,OAAK4B,EAAqBE,QAE1BF,EAAqBG,SAASC,IAC5B,IACE,MAAMC,EAAW,IAAIvC,EAAasC,EAASnC,GAC3C8B,EAAsBO,KAAKD,EAC7B,CAAE,MAAOE,GAET,KAGKR,GAXkCA,CAY3C,CAEA,S","sources":["webpack://@shohojdhara/atomix/./src/components/SectionIntro/scripts/index.ts"],"sourcesContent":["import { SECTION_INTRO } from '../../../lib/constants/components';\n\n/**\n * Interface for SectionIntro options\n */\ninterface SectionIntroOptions {\n alignment?: 'left' | 'center' | 'right';\n backgroundImageSrc?: string;\n showOverlay?: boolean;\n size?: 'sm' | 'md' | 'lg';\n skeleton?: boolean;\n [key: string]: any;\n}\n\n/**\n * Interface for SectionIntro instance\n */\ninterface SectionIntroInstance {\n destroy: () => void;\n}\n\n/**\n * Default options for the SectionIntro component\n */\nconst DEFAULT_OPTIONS: SectionIntroOptions = {\n alignment: 'left',\n showOverlay: false,\n size: 'md',\n skeleton: false\n};\n\n/**\n * Class representing a SectionIntro component\n */\nclass SectionIntro implements SectionIntroInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private options: SectionIntroOptions;\n\n /**\n * Creates an instance of SectionIntro\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || SECTION_INTRO.SELECTORS.SECTION_INTRO;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as SectionIntroOptions;\n this._initialize();\n }\n\n /**\n * Initialize the section intro component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n // Apply alignment classes if needed\n if (this.options.alignment === 'center' && !this.$element.classList.contains(SECTION_INTRO.CLASSES.CENTER)) {\n this.$element.classList.add(SECTION_INTRO.CLASSES.CENTER);\n }\n\n // Apply size classes if specified\n if (this.options.size === 'sm' && !this.$element.classList.contains(SECTION_INTRO.CLASSES.SMALL)) {\n this.$element.classList.add(SECTION_INTRO.CLASSES.SMALL);\n } else if (this.options.size === 'lg' && !this.$element.classList.contains(SECTION_INTRO.CLASSES.LARGE)) {\n this.$element.classList.add(SECTION_INTRO.CLASSES.LARGE);\n }\n\n // Add background image if provided\n if (this.options.backgroundImageSrc) {\n let bgElement = this.$element.querySelector('.c-sectionintro__bg');\n \n // Create background element if it doesn't exist\n if (!bgElement) {\n bgElement = document.createElement('div');\n bgElement.className = 'c-sectionintro__bg';\n \n const imgElement = document.createElement('img');\n imgElement.className = 'c-sectionintro__bg-image';\n imgElement.src = this.options.backgroundImageSrc;\n imgElement.alt = 'Background';\n \n bgElement.appendChild(imgElement);\n \n // Add overlay if needed\n if (this.options.showOverlay) {\n const overlayElement = document.createElement('div');\n overlayElement.className = 'c-sectionintro__overlay';\n bgElement.appendChild(overlayElement);\n }\n \n // Insert at the beginning of the element\n this.$element.insertBefore(bgElement, this.$element.firstChild);\n }\n }\n }\n\n /**\n * Clean up event listeners and remove added elements\n */\n public destroy(): void {\n if (!this.$element) return;\n \n // Remove alignment classes\n this.$element.classList.remove(SECTION_INTRO.CLASSES.CENTER);\n \n // Remove size classes\n this.$element.classList.remove(SECTION_INTRO.CLASSES.SMALL);\n this.$element.classList.remove(SECTION_INTRO.CLASSES.LARGE);\n \n // Remove background if it was dynamically added\n if (this.options.backgroundImageSrc) {\n const bgElement = this.$element.querySelector('.c-sectionintro__bg');\n if (bgElement) {\n this.$element.removeChild(bgElement);\n }\n }\n }\n}\n\n/**\n * Initialize all section intros in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {SectionIntroInstance[]} Array of SectionIntro instances\n */\nexport function initializeSectionIntros(selector = SECTION_INTRO.SELECTORS.SECTION_INTRO, options = {}): SectionIntroInstance[] {\n const sectionIntroInstances: SectionIntroInstance[] = [];\n const sectionIntroElements = document.querySelectorAll<HTMLElement>(typeof selector === 'string' ? selector : SECTION_INTRO.SELECTORS.SECTION_INTRO);\n\n if (!sectionIntroElements.length) return sectionIntroInstances;\n\n sectionIntroElements.forEach((element) => {\n try {\n const instance = new SectionIntro(element, options);\n sectionIntroInstances.push(instance);\n } catch (error) {\n console.error('Error initializing section intro:', error);\n }\n });\n\n return sectionIntroInstances;\n}\n\nexport default SectionIntro;\n"],"names":["DEFAULT_OPTIONS","alignment","showOverlay","size","skeleton","SectionIntro","selector","$element","options","constructor","this","SECTION_INTRO","SELECTORS","document","querySelector","_initialize","classList","contains","CLASSES","CENTER","add","SMALL","LARGE","backgroundImageSrc","bgElement","createElement","className","imgElement","src","alt","appendChild","overlayElement","insertBefore","firstChild","destroy","remove","removeChild","initializeSectionIntros","sectionIntroInstances","sectionIntroElements","querySelectorAll","length","forEach","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/esm/894.f1091a4a8758c26d29e4.js","mappings":"4LAqBA,MAAMA,EAAsC,CAC1CC,KAAM,GACNC,UAAU,GAMZ,MAAMC,EACIC,SACAC,SACAC,QAORC,WAAAA,CAAYH,EAA4BE,EAAU,CAAC,GACjDE,KAAKJ,SAAWA,GAAYK,EAAAA,GAAYC,UAAUD,YAClDD,KAAKH,SACiB,iBAAbD,EACHO,SAASC,cAA2BR,GACpCA,EACNI,KAAKF,QAAU,IAAKN,KAAoBM,GACxCE,KAAKK,aACP,CAKQA,WAAAA,GACDL,KAAKH,WAGgB,OAAtBG,KAAKF,QAAQL,MAAkBO,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAYO,QAAQC,OAEvD,OAAtBT,KAAKF,QAAQL,MAAkBO,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAYO,QAAQE,QAC7FV,KAAKH,SAASS,UAAUK,IAAIV,EAAAA,GAAYO,QAAQE,OAFhDV,KAAKH,SAASS,UAAUK,IAAIV,EAAAA,GAAYO,QAAQC,OAIpD,CAKOG,OAAAA,GACL,EAUG,SAASC,EAAuBjB,EAAWK,EAAAA,GAAYC,UAAUD,YAAaH,EAAU,CAAC,GAC9F,MAAMgB,EAA8C,GAC9CC,EAAsBZ,SAASa,iBAAkD,iBAAbpB,EAAwBA,EAAWK,EAAAA,GAAYC,UAAUD,aAEnI,OAAKc,EAAoBE,QAEzBF,EAAoBG,SAASC,IAC3B,IACE,MAAMC,EAAW,IAAIzB,EAAYwB,EAASrB,GAC1CgB,EAAqBO,KAAKD,EAC5B,CAAE,MAAOE,GAET,KAGKR,GAXiCA,CAY1C,CAEA,S","sources":["webpack://@shohojdhara/atomix/./src/components/Testimonial/scripts/index.ts"],"sourcesContent":["import { TESTIMONIAL } from '../../../lib/constants/components';\n\n/**\n * Interface for Testimonial options\n */\ninterface TestimonialOptions {\n size?: 'sm' | 'lg' | '';\n skeleton?: boolean;\n [key: string]: any;\n}\n\n/**\n * Interface for Testimonial instance\n */\ninterface TestimonialInstance {\n destroy: () => void;\n}\n\n/**\n * Default options for the Testimonial component\n */\nconst DEFAULT_OPTIONS: TestimonialOptions = {\n size: '',\n skeleton: false\n};\n\n/**\n * Class representing a Testimonial component\n */\nclass Testimonial implements TestimonialInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private options: TestimonialOptions;\n\n /**\n * Creates an instance of Testimonial\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || TESTIMONIAL.SELECTORS.TESTIMONIAL;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as TestimonialOptions;\n this._initialize();\n }\n\n /**\n * Initialize the testimonial component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n // Apply size classes if specified\n if (this.options.size === 'sm' && !this.$element.classList.contains(TESTIMONIAL.CLASSES.SMALL)) {\n this.$element.classList.add(TESTIMONIAL.CLASSES.SMALL);\n } else if (this.options.size === 'lg' && !this.$element.classList.contains(TESTIMONIAL.CLASSES.LARGE)) {\n this.$element.classList.add(TESTIMONIAL.CLASSES.LARGE);\n }\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n // No specific cleanup needed for testimonial component\n }\n}\n\n/**\n * Initialize all testimonials in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {TestimonialInstance[]} Array of Testimonial instances\n */\nexport function initializeTestimonials(selector = TESTIMONIAL.SELECTORS.TESTIMONIAL, options = {}): TestimonialInstance[] {\n const testimonialInstances: TestimonialInstance[] = [];\n const testimonialElements = document.querySelectorAll<HTMLElement>(typeof selector === 'string' ? selector : TESTIMONIAL.SELECTORS.TESTIMONIAL);\n\n if (!testimonialElements.length) return testimonialInstances;\n\n testimonialElements.forEach((element) => {\n try {\n const instance = new Testimonial(element, options);\n testimonialInstances.push(instance);\n } catch (error) {\n console.error('Error initializing testimonial:', error);\n }\n });\n\n return testimonialInstances;\n}\n\nexport default Testimonial; "],"names":["DEFAULT_OPTIONS","size","skeleton","Testimonial","selector","$element","options","constructor","this","TESTIMONIAL","SELECTORS","document","querySelector","_initialize","classList","contains","CLASSES","SMALL","LARGE","add","destroy","initializeTestimonials","testimonialInstances","testimonialElements","querySelectorAll","length","forEach","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/esm/897.561a50f7d043d42169da.js","mappings":"sLAcA,MAAMA,EACIC,QACAC,KAMRC,WAAAA,CAAYF,GACVG,KAAKH,QAAUA,EACfG,KAAKF,MAAO,EACZE,KAAKC,aACP,CAKQA,WAAAA,GACND,KAAKE,cAEDF,KAAKH,QAAQM,UAAUC,SAASC,EAAAA,GAAOC,QAAQC,SACjDP,KAAKF,MAAO,EAEhB,CAKQI,WAAAA,GACNF,KAAKH,QAAQW,iBAAiB,QAASR,KAAKS,cAAcC,KAAKV,MACjE,CAKQS,aAAAA,GACDT,KAAKF,KAGRE,KAAKW,UAFLX,KAAKY,QAIT,CAKOA,MAAAA,GACLZ,KAAKH,QAAQM,UAAUU,IAAIR,EAAAA,GAAOC,QAAQC,OAC1CP,KAAKF,MAAO,EAGZE,KAAKH,QAAQiB,cAAc,IAAIC,YAAY,YAAa,CACtDC,SAAS,IAEb,CAKOL,OAAAA,GACLX,KAAKH,QAAQM,UAAUc,OAAOZ,EAAAA,GAAOC,QAAQC,OAC7CP,KAAKF,MAAO,EAGZE,KAAKH,QAAQiB,cAAc,IAAIC,YAAY,aAAc,CACvDC,SAAS,IAEb,CAKOE,OAAAA,GACLlB,KAAKH,QAAQsB,oBAAoB,QAASnB,KAAKS,cACjD,EAOK,SAASW,IACd,MAAMC,EAAoC,GACpCC,EAAiBC,SAASC,iBAA8BnB,EAAAA,GAAOoB,UAAUpB,QAE/E,OAAKiB,EAAeI,QAEpBJ,EAAeK,SAAS9B,IACtB,IACE,MAAM+B,EAAW,IAAIhC,EAAOC,GAC5BwB,EAAgBQ,KAAKD,EACvB,CAAE,MAAOE,GAET,KAGKT,GAX4BA,CAYrC,CAEA,S","sources":["webpack://@shohojdhara/atomix/./src/components/Toggle/scripts/index.ts"],"sourcesContent":["import { TOGGLE } from '../../../lib/constants/components';\n\n/**\n * Interface for Toggle instance\n */\ninterface ToggleInstance {\n turnOn: () => void;\n turnOff: () => void;\n destroy: () => void;\n}\n\n/**\n * Class representing a Toggle component\n */\nclass Toggle implements ToggleInstance {\n private element: HTMLElement;\n private isOn: boolean;\n\n /**\n * Creates an instance of Toggle\n * @param element - The toggle container element\n */\n constructor(element: HTMLElement) {\n this.element = element;\n this.isOn = false;\n this._initialize();\n }\n\n /**\n * Initialize the toggle component\n */\n private _initialize(): void {\n this._bindEvents();\n // Check if toggle should be initially on\n if (this.element.classList.contains(TOGGLE.CLASSES.IS_ON)) {\n this.isOn = true;\n }\n }\n\n /**\n * Bind event listeners\n */\n private _bindEvents(): void {\n this.element.addEventListener('click', this._handleToggle.bind(this));\n }\n\n /**\n * Handle toggle click\n */\n private _handleToggle(): void {\n if (!this.isOn) {\n this.turnOn();\n } else {\n this.turnOff();\n }\n }\n\n /**\n * Turn on the toggle\n */\n public turnOn(): void {\n this.element.classList.add(TOGGLE.CLASSES.IS_ON);\n this.isOn = true;\n \n // Dispatch custom event\n this.element.dispatchEvent(new CustomEvent('toggle:on', { \n bubbles: true \n }));\n }\n\n /**\n * Turn off the toggle\n */\n public turnOff(): void {\n this.element.classList.remove(TOGGLE.CLASSES.IS_ON);\n this.isOn = false;\n \n // Dispatch custom event\n this.element.dispatchEvent(new CustomEvent('toggle:off', { \n bubbles: true \n }));\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n this.element.removeEventListener('click', this._handleToggle);\n }\n}\n\n/**\n * Initialize all toggles in the document\n * @returns Array of toggle instances\n */\nexport function initializeToggles(): ToggleInstance[] {\n const toggleInstances: ToggleInstance[] = [];\n const toggleElements = document.querySelectorAll<HTMLElement>(TOGGLE.SELECTORS.TOGGLE);\n\n if (!toggleElements.length) return toggleInstances;\n\n toggleElements.forEach((element) => {\n try {\n const instance = new Toggle(element);\n toggleInstances.push(instance);\n } catch (error) {\n console.error('Error initializing toggle:', error);\n }\n });\n\n return toggleInstances;\n}\n\nexport default Toggle; "],"names":["Toggle","element","isOn","constructor","this","_initialize","_bindEvents","classList","contains","TOGGLE","CLASSES","IS_ON","addEventListener","_handleToggle","bind","turnOff","turnOn","add","dispatchEvent","CustomEvent","bubbles","remove","destroy","removeEventListener","initializeToggles","toggleInstances","toggleElements","document","querySelectorAll","SELECTORS","length","forEach","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/umd/202.dac7605cc555b6bda542.js","mappings":"gKAwBA,MAAMA,EAAgC,CACpCC,YAAa,EACbC,UAAU,GAMZ,MAAMC,EACIC,SACAC,SACAC,QACAC,OACAN,YAORO,WAAAA,CAAYJ,EAA4BE,EAAU,CAAC,GACjDG,KAAKL,SAAWA,GAAYM,EAAAA,GAAMC,UAAUD,MAC5CD,KAAKJ,SACiB,iBAAbD,EACHQ,SAASC,cAA2BT,GACpCA,EACNK,KAAKH,QAAU,IAAKN,KAAoBM,GACxCG,KAAKF,OAAS,KACdE,KAAKR,YAAcQ,KAAKH,QAAQL,aAAe,EAC/CQ,KAAKK,aACP,CAKQA,WAAAA,GACDL,KAAKJ,WAEVI,KAAKM,sBAGDN,KAAKH,QAAQJ,WAAaO,KAAKJ,SAASW,UAAUC,SAASP,EAAAA,GAAMQ,QAAQC,WAC3EV,KAAKJ,SAASW,UAAUI,IAAIV,EAAAA,GAAMQ,QAAQC,UAG5CV,KAAKY,UAAUZ,KAAKR,aACtB,CAKQc,mBAAAA,GACDN,KAAKJ,WAEVI,KAAKF,OAASE,KAAKJ,SAASiB,iBAA8BZ,EAAAA,GAAMC,UAAUY,MAC5E,CAMOF,SAAAA,CAAUG,GACVf,KAAKF,QAAUiB,GAAQ,GAAcf,KAAKF,OAAOkB,OAArBD,IAGjCf,KAAKF,OAAOmB,SAAQ,CAACC,EAAMC,KACjBJ,EAAJI,GAEFD,EAAKX,UAAUI,IAAIV,EAAAA,GAAMQ,QAAQW,QACjCF,EAAKX,UAAUI,IAAIV,EAAAA,GAAMQ,QAAQY,YACxBF,IAAMJ,GAEfG,EAAKX,UAAUI,IAAIV,EAAAA,GAAMQ,QAAQW,QACjCF,EAAKX,UAAUe,OAAOrB,EAAAA,GAAMQ,QAAQY,aAGpCH,EAAKX,UAAUe,OAAOrB,EAAAA,GAAMQ,QAAQW,QACpCF,EAAKX,UAAUe,OAAOrB,EAAAA,GAAMQ,QAAQY,WACtC,IAGFrB,KAAKR,YAAcuB,EACrB,CAKOQ,IAAAA,IACmBvB,KAAKF,QAAQkB,QAAU,GAAK,EAAhDhB,KAAKR,aACPQ,KAAKY,UAAUZ,KAAKR,YAAc,EAEtC,CAKOgC,QAAAA,GACDxB,KAAKR,YAAc,GACrBQ,KAAKY,UAAUZ,KAAKR,YAAc,EAEtC,CAKOiC,OAAAA,GACL,EAUG,SAASC,EAAgB/B,EAAWM,EAAAA,GAAMC,UAAUD,MAAOJ,EAAU,CAAC,GAC3E,MAAM8B,EAAkC,GAClCC,EAAgBzB,SAASU,iBAA8BlB,GAE7D,OAAKiC,EAAcZ,QAEnBY,EAAcX,SAASY,IACrB,IACE,MAAMC,EAAW,IAAIpC,EAAMmC,EAAShC,GACpC8B,EAAeI,KAAKD,EACtB,CAAE,MAAOE,GAET,KAGKL,GAX2BA,CAYpC,CAEA,S","sources":["webpack://Atomix/./src/components/Steps/scripts/index.ts"],"sourcesContent":["import { STEPS } from '../../../lib/constants/components';\n\n/**\n * Interface for Steps options\n */\ninterface StepsOptions {\n activeIndex?: number;\n vertical?: boolean;\n [key: string]: any;\n}\n\n/**\n * Interface for Steps instance\n */\ninterface StepsInstance {\n setActive: (index: number) => void;\n next: () => void;\n previous: () => void;\n destroy: () => void;\n}\n\n/**\n * Default options for the Steps component\n */\nconst DEFAULT_OPTIONS: StepsOptions = {\n activeIndex: 0,\n vertical: false\n};\n\n/**\n * Class representing a Steps component\n */\nclass Steps implements StepsInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private options: StepsOptions;\n private $items: NodeListOf<HTMLElement> | null;\n private activeIndex: number;\n\n /**\n * Creates an instance of Steps\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || STEPS.SELECTORS.STEPS;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as StepsOptions;\n this.$items = null;\n this.activeIndex = this.options.activeIndex || 0;\n this._initialize();\n }\n\n /**\n * Initialize the steps component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n this._initializeElements();\n \n // Set vertical mode if specified\n if (this.options.vertical && !this.$element.classList.contains(STEPS.CLASSES.VERTICAL)) {\n this.$element.classList.add(STEPS.CLASSES.VERTICAL);\n }\n \n this.setActive(this.activeIndex);\n }\n\n /**\n * Initialize DOM elements\n */\n private _initializeElements(): void {\n if (!this.$element) return;\n \n this.$items = this.$element.querySelectorAll<HTMLElement>(STEPS.SELECTORS.ITEM);\n }\n\n /**\n * Sets the active step\n * @param index - The index of the step to make active\n */\n public setActive(index: number): void {\n if (!this.$items || index < 0 || index >= this.$items.length) return;\n \n // Update all items\n this.$items.forEach((item, i) => {\n if (i < index) {\n // Steps before active are completed\n item.classList.add(STEPS.CLASSES.ACTIVE);\n item.classList.add(STEPS.CLASSES.COMPLETED);\n } else if (i === index) {\n // Current step is active but not completed\n item.classList.add(STEPS.CLASSES.ACTIVE);\n item.classList.remove(STEPS.CLASSES.COMPLETED);\n } else {\n // Future steps are neither active nor completed\n item.classList.remove(STEPS.CLASSES.ACTIVE);\n item.classList.remove(STEPS.CLASSES.COMPLETED);\n }\n });\n \n this.activeIndex = index;\n }\n\n /**\n * Moves to the next step\n */\n public next(): void {\n if (this.activeIndex < (this.$items?.length || 0) - 1) {\n this.setActive(this.activeIndex + 1);\n }\n }\n\n /**\n * Moves to the previous step\n */\n public previous(): void {\n if (this.activeIndex > 0) {\n this.setActive(this.activeIndex - 1);\n }\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n // No specific cleanup needed for steps component\n }\n}\n\n/**\n * Initialize all steps in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {StepsInstance[]} Array of Steps instances\n */\nexport function initializeSteps(selector = STEPS.SELECTORS.STEPS, options = {}): StepsInstance[] {\n const stepsInstances: StepsInstance[] = [];\n const stepsElements = document.querySelectorAll<HTMLElement>(selector);\n\n if (!stepsElements.length) return stepsInstances;\n\n stepsElements.forEach((element) => {\n try {\n const instance = new Steps(element, options);\n stepsInstances.push(instance);\n } catch (error) {\n console.error('Error initializing steps:', error);\n }\n });\n\n return stepsInstances;\n}\n\nexport default Steps; "],"names":["DEFAULT_OPTIONS","activeIndex","vertical","Steps","selector","$element","options","$items","constructor","this","STEPS","SELECTORS","document","querySelector","_initialize","_initializeElements","classList","contains","CLASSES","VERTICAL","add","setActive","querySelectorAll","ITEM","index","length","forEach","item","i","ACTIVE","COMPLETED","remove","next","previous","destroy","initializeSteps","stepsInstances","stepsElements","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/umd/308.6709979849dcbdb90c9b.js","mappings":"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","sources":["webpack://Atomix/./src/components/Upload/scripts/index.ts"],"sourcesContent":["import { UPLOAD } from '../../../lib/constants/components';\n\n/**\n * Interface for Upload options\n */\ninterface UploadOptions {\n disabled?: boolean;\n maxSizeInMB?: number;\n acceptedFileTypes?: string[];\n multiple?: boolean;\n onFileSelect?: (files: File[]) => void;\n onFileUpload?: (file: File, progress: number) => void;\n onFileUploadComplete?: (file: File) => void;\n onFileUploadError?: (file: File, error: string) => void;\n [key: string]: any;\n}\n\n/**\n * Interface for Upload instance\n */\ninterface UploadInstance {\n setStatus: (status: 'idle' | 'loading' | 'success' | 'error', message?: string) => void;\n setProgress: (percentage: number, timeLeft?: string) => void;\n setFile: (file: File | null) => void;\n disable: () => void;\n enable: () => void;\n destroy: () => void;\n}\n\n/**\n * Default options for the Upload component\n */\nconst DEFAULT_OPTIONS: UploadOptions = {\n disabled: false,\n maxSizeInMB: 5,\n acceptedFileTypes: ['application/pdf', 'application/vnd.ms-excel', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'image/jpeg', 'image/png'],\n multiple: false\n};\n\n/**\n * Class representing an Upload component\n */\nclass Upload implements UploadInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private $input: HTMLInputElement | null;\n private $button: HTMLButtonElement | null;\n private $loader: HTMLElement | null;\n private $loaderTitle: HTMLElement | null;\n private $loaderProgress: HTMLElement | null;\n private $loaderClose: HTMLButtonElement | null;\n private options: UploadOptions;\n private currentFile: File | null;\n private dragCounter: number;\n\n /**\n * Creates an instance of Upload\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || UPLOAD.SELECTORS.UPLOAD;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as UploadOptions;\n this.$input = null;\n this.$button = null;\n this.$loader = null;\n this.$loaderTitle = null;\n this.$loaderProgress = null;\n this.$loaderClose = null;\n this.currentFile = null;\n this.dragCounter = 0;\n this._initialize();\n }\n\n /**\n * Initialize the upload component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n // Create a hidden file input element\n this._createHiddenInput();\n\n // Get references to elements\n this.$button = this.$element.querySelector<HTMLButtonElement>(UPLOAD.SELECTORS.BUTTON);\n this.$loader = this.$element.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER);\n this.$loaderTitle = this.$element?.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER_TITLE);\n this.$loaderProgress = this.$element?.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER_PROGRESS);\n this.$loaderClose = this.$element?.querySelector<HTMLButtonElement>(UPLOAD.SELECTORS.LOADER_CLOSE);\n\n // Apply disabled state if specified\n if (this.options.disabled) {\n this.disable();\n }\n\n // Set up event listeners\n this._setupEventListeners();\n }\n\n /**\n * Creates a hidden file input element and appends it to the element\n */\n private _createHiddenInput(): void {\n if (!this.$element) return;\n\n // Create input element\n const input = document.createElement('input');\n input.type = 'file';\n input.style.display = 'none';\n input.accept = this.options.acceptedFileTypes?.join(',') || '';\n input.multiple = !!this.options.multiple;\n \n // Append to element\n this.$element.appendChild(input);\n this.$input = input;\n }\n\n /**\n * Set up all event listeners\n */\n private _setupEventListeners(): void {\n if (!this.$element || !this.$input || !this.$button) return;\n\n // Button click handler\n this.$button.addEventListener('click', this._handleButtonClick.bind(this));\n\n // Input change handler\n this.$input.addEventListener('change', this._handleFileSelect.bind(this));\n\n // Drag and drop handlers\n this.$element.addEventListener('dragenter', this._handleDragEnter.bind(this));\n this.$element.addEventListener('dragleave', this._handleDragLeave.bind(this));\n this.$element.addEventListener('dragover', this._handleDragOver.bind(this));\n this.$element.addEventListener('drop', this._handleDrop.bind(this));\n\n // Close button handler\n if (this.$loaderClose) {\n this.$loaderClose.addEventListener('click', this._handleClose.bind(this));\n }\n }\n\n /**\n * Handle button click\n */\n private _handleButtonClick(event: MouseEvent): void {\n event.preventDefault();\n if (this.$input && !this.options.disabled) {\n this.$input.click();\n }\n }\n\n /**\n * Handle file selection from the input element\n */\n private _handleFileSelect(event: Event): void {\n if (!this.$input?.files?.length) return;\n \n const files = Array.from(this.$input.files);\n this._processFiles(files);\n }\n\n /**\n * Handle drag enter event\n */\n private _handleDragEnter(event: DragEvent): void {\n event.preventDefault();\n if (this.options.disabled) return;\n \n this.dragCounter++;\n if (this.dragCounter === 1) {\n this.$element?.classList.add(UPLOAD.CLASSES.DRAGGING);\n }\n }\n\n /**\n * Handle drag leave event\n */\n private _handleDragLeave(event: DragEvent): void {\n event.preventDefault();\n if (this.options.disabled) return;\n \n this.dragCounter--;\n if (this.dragCounter === 0) {\n this.$element?.classList.remove(UPLOAD.CLASSES.DRAGGING);\n }\n }\n\n /**\n * Handle drag over event\n */\n private _handleDragOver(event: DragEvent): void {\n event.preventDefault();\n if (this.options.disabled) return;\n }\n\n /**\n * Handle drop event\n */\n private _handleDrop(event: DragEvent): void {\n event.preventDefault();\n if (this.options.disabled) return;\n \n this.dragCounter = 0;\n this.$element?.classList.remove(UPLOAD.CLASSES.DRAGGING);\n \n if (!event.dataTransfer?.files.length) return;\n \n const files = Array.from(event.dataTransfer.files);\n this._processFiles(files);\n }\n\n /**\n * Handle close button click\n */\n private _handleClose(event: MouseEvent): void {\n event.preventDefault();\n \n // Reset state\n this.setStatus('idle');\n this.setFile(null);\n \n // Reset input\n if (this.$input) {\n this.$input.value = '';\n }\n }\n\n /**\n * Process the selected files\n */\n private _processFiles(files: File[]): void {\n if (!files.length) return;\n \n // If multiple is not allowed, take only the first file\n const filesToProcess = this.options.multiple ? files : [files[0]];\n \n // Validate files\n const validFiles = filesToProcess.filter(file => this._validateFile(file));\n \n // Notify about file selection\n if (validFiles.length && this.options.onFileSelect) {\n this.options.onFileSelect(validFiles);\n }\n \n // Process the first valid file\n if (validFiles.length) {\n this.setFile(validFiles[0]);\n this._simulateUpload(validFiles[0]);\n }\n }\n\n /**\n * Validate a file based on size and type\n */\n private _validateFile(file: File): boolean {\n const maxSizeInBytes = (this.options.maxSizeInMB || 5) * 1024 * 1024;\n \n // Check file size\n if (file.size > maxSizeInBytes) {\n this.setStatus('error', `File too large. Maximum size is ${this.options.maxSizeInMB}MB.`);\n return false;\n }\n \n // Check file type if acceptedFileTypes is provided\n if (this.options.acceptedFileTypes?.length) {\n const isAcceptedType = this.options.acceptedFileTypes.some(type => {\n // Handle wildcards like image/*\n if (type.endsWith('/*')) {\n const mainType = type.split('/')[0];\n return file.type.startsWith(`${mainType}/`);\n }\n return file.type === type;\n });\n \n if (!isAcceptedType) {\n this.setStatus('error', 'File type not supported.');\n return false;\n }\n }\n \n return true;\n }\n\n /**\n * Simulate a file upload process\n * In a real implementation, this would be replaced with actual upload logic\n */\n private _simulateUpload(file: File): void {\n this.setStatus('loading');\n let progress = 0;\n \n const interval = setInterval(() => {\n progress += 5;\n \n if (progress < 100) {\n this.setProgress(progress, `${Math.ceil((100 - progress) / 5)} seconds left`);\n \n if (this.options.onFileUpload) {\n this.options.onFileUpload(file, progress);\n }\n } else {\n clearInterval(interval);\n this.setStatus('success', 'Upload successful');\n \n if (this.options.onFileUploadComplete) {\n this.options.onFileUploadComplete(file);\n }\n }\n }, 500);\n }\n\n /**\n * Set current file\n */\n public setFile(file: File | null): void {\n this.currentFile = file;\n \n if (file && this.$loaderTitle) {\n this.$loaderTitle.textContent = file.name;\n }\n }\n\n /**\n * Set upload progress\n */\n public setProgress(percentage: number, timeLeft?: string): void {\n if (!this.$element || !this.$loaderProgress) return;\n \n // Set percentage as CSS variable\n this.$element.style.setProperty(UPLOAD.ATTRIBUTES.PERCENTAGE, percentage.toString());\n \n // Update the loader elements if they exist\n const $par = this.$element.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER_PAR);\n const $time = this.$element.querySelector<HTMLElement>(UPLOAD.SELECTORS.LOADER_TIME);\n \n if ($par) {\n $par.textContent = `${percentage}%`;\n }\n \n if ($time && timeLeft) {\n $time.textContent = timeLeft;\n }\n }\n\n /**\n * Set upload status\n */\n public setStatus(status: 'idle' | 'loading' | 'success' | 'error', message?: string): void {\n if (!this.$element) return;\n \n // Remove all status classes\n this.$element.classList.remove(\n UPLOAD.CLASSES.LOADING,\n UPLOAD.CLASSES.SUCCESS,\n UPLOAD.CLASSES.ERROR\n );\n \n // Add appropriate class based on status\n switch (status) {\n case 'loading':\n this.$element.classList.add(UPLOAD.CLASSES.LOADING);\n break;\n case 'success':\n this.$element.classList.add(UPLOAD.CLASSES.SUCCESS);\n break;\n case 'error':\n this.$element.classList.add(UPLOAD.CLASSES.ERROR);\n break;\n }\n \n // Update message if provided and loader exists\n if (message && this.$loaderProgress) {\n this.$loaderProgress.textContent = message;\n }\n }\n\n /**\n * Disable the upload component\n */\n public disable(): void {\n if (!this.$element || !this.$button) return;\n \n this.$element.classList.add(UPLOAD.CLASSES.DISABLED);\n this.$button.disabled = true;\n this.options.disabled = true;\n }\n\n /**\n * Enable the upload component\n */\n public enable(): void {\n if (!this.$element || !this.$button) return;\n \n this.$element.classList.remove(UPLOAD.CLASSES.DISABLED);\n this.$button.disabled = false;\n this.options.disabled = false;\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n if (!this.$element || !this.$input || !this.$button) return;\n \n // Remove event listeners\n this.$button.removeEventListener('click', this._handleButtonClick.bind(this));\n this.$input.removeEventListener('change', this._handleFileSelect.bind(this));\n this.$element.removeEventListener('dragenter', this._handleDragEnter.bind(this));\n this.$element.removeEventListener('dragleave', this._handleDragLeave.bind(this));\n this.$element.removeEventListener('dragover', this._handleDragOver.bind(this));\n this.$element.removeEventListener('drop', this._handleDrop.bind(this));\n \n if (this.$loaderClose) {\n this.$loaderClose.removeEventListener('click', this._handleClose.bind(this));\n }\n \n // Remove input element\n if (this.$input.parentNode) {\n this.$input.parentNode.removeChild(this.$input);\n }\n }\n}\n\n/**\n * Initialize all upload components in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {UploadInstance[]} Array of Upload instances\n */\nexport function initializeUploads(selector = UPLOAD.SELECTORS.UPLOAD, options = {}): UploadInstance[] {\n const uploadInstances: UploadInstance[] = [];\n const uploadElements = document.querySelectorAll<HTMLElement>(typeof selector === 'string' ? selector : UPLOAD.SELECTORS.UPLOAD);\n\n if (!uploadElements.length) return uploadInstances;\n\n uploadElements.forEach((element) => {\n try {\n const instance = new Upload(element, options);\n uploadInstances.push(instance);\n } catch (error) {\n console.error('Error initializing upload:', error);\n }\n });\n\n return uploadInstances;\n}\n\nexport default Upload; "],"names":["DEFAULT_OPTIONS","disabled","maxSizeInMB","acceptedFileTypes","multiple","Upload","selector","$element","$input","$button","$loader","$loaderTitle","$loaderProgress","$loaderClose","options","currentFile","dragCounter","constructor","this","UPLOAD","SELECTORS","document","querySelector","_initialize","_createHiddenInput","BUTTON","LOADER","LOADER_TITLE","LOADER_PROGRESS","LOADER_CLOSE","disable","_setupEventListeners","input","createElement","type","style","display","accept","join","appendChild","addEventListener","_handleButtonClick","bind","_handleFileSelect","_handleDragEnter","_handleDragLeave","_handleDragOver","_handleDrop","_handleClose","event","preventDefault","click","files","length","Array","from","_processFiles","classList","add","CLASSES","DRAGGING","remove","dataTransfer","setStatus","setFile","value","validFiles","filter","file","_validateFile","onFileSelect","_simulateUpload","size","some","endsWith","mainType","split","startsWith","progress","interval","setInterval","setProgress","Math","ceil","onFileUpload","clearInterval","onFileUploadComplete","textContent","name","percentage","timeLeft","setProperty","ATTRIBUTES","PERCENTAGE","$par","LOADER_PAR","$time","LOADER_TIME","status","message","LOADING","SUCCESS","ERROR","DISABLED","enable","destroy","removeEventListener","parentNode","removeChild","initializeUploads","uploadInstances","uploadElements","querySelectorAll","forEach","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/umd/54.403470e1f7d0ef4424a7.js","mappings":"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","sources":["webpack://Atomix/./src/components/Tab/scripts/index.ts"],"sourcesContent":["import { TAB } from '../../../lib/constants/components';\n\n/**\n * Interface for Tab options\n */\ninterface TabOptions {\n navItems: string;\n navBtn: string;\n panels: string;\n panelBodys: string;\n activeClass: string;\n activeIndex: number;\n [key: string]: any;\n}\n\n/**\n * Interface for Tab instance\n */\ninterface TabInstance {\n destroy: () => void;\n}\n\n/**\n * Default options for the tab component\n */\nconst DEFAULT_OPTIONS = {\n navItems: TAB.SELECTORS.NAV_ITEMS,\n navBtn: TAB.SELECTORS.NAV_BTN,\n panels: TAB.SELECTORS.PANELS,\n panelBodys: TAB.SELECTORS.PANEL_BODIES,\n activeClass: TAB.CLASSES.ACTIVE,\n activeIndex: TAB.DEFAULTS.ACTIVE_INDEX\n};\n\n/**\n * Class representing a Tab component\n */\nclass Tab implements TabInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private options: TabOptions;\n private $navItems: NodeListOf<HTMLElement> | null;\n private $panels: NodeListOf<HTMLElement> | null;\n private $panelBodys: NodeListOf<HTMLElement> | null;\n\n /**\n * Creates an instance of Tab\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || TAB.SELECTORS.TAB;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as TabOptions;\n this.$navItems = null;\n this.$panels = null;\n this.$panelBodys = null;\n this._initialize();\n }\n\n /**\n * Initialize the tab component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n this._initializeElements();\n this._showTab(this.options.activeIndex);\n this._bindEvents();\n }\n\n /**\n * Initialize DOM elements\n */\n private _initializeElements(): void {\n if (!this.$element) return;\n \n this.$navItems = this.$element.querySelectorAll<HTMLElement>(this.options.navItems);\n this.$panels = this.$element.querySelectorAll<HTMLElement>(this.options.panels);\n this.$panelBodys = this.$element.querySelectorAll<HTMLElement>(this.options.panelBodys);\n }\n\n /**\n * Bind event listeners\n */\n private _bindEvents(): void {\n if (!this.$navItems) return;\n \n this.$navItems.forEach((item) => {\n const btn = item.querySelector<HTMLElement>(this.options.navBtn);\n if (btn) {\n btn.addEventListener('click', () => this._handleTabClick(btn));\n }\n });\n }\n\n /**\n * Handle tab click event\n * @param btn - The clicked tab button\n */\n private _handleTabClick(btn: HTMLElement): void {\n const tabIndex = btn.dataset.tabindex;\n if (tabIndex === undefined) return;\n \n this._hideAllTabs();\n this._showTab(tabIndex);\n }\n\n /**\n * Hide all tabs\n */\n private _hideAllTabs(): void {\n if (!this.$panels || !this.$navItems) return;\n \n this.$panels.forEach((panel) => {\n panel.style.height = '0px';\n panel.classList.remove(this.options.activeClass);\n panel.style.opacity = '0';\n });\n\n this.$navItems.forEach((item) => {\n const btn = item.querySelector<HTMLElement>(this.options.navBtn);\n if (btn) {\n btn.classList.remove(this.options.activeClass);\n }\n });\n }\n\n /**\n * Show tab at specified index\n * @param index - The index of tab to show\n */\n private _showTab(index: number | string): void {\n if (!this.$panels || !this.$navItems || !this.$panelBodys) return;\n \n this.$panels.forEach((panel, pIndex) => {\n if (panel.dataset.tabindex == index.toString()) {\n const panelBody = this.$panelBodys?.[pIndex];\n if (panelBody) {\n panel.classList.add(this.options.activeClass);\n requestAnimationFrame(() => {\n panel.style.height = `${panelBody.clientHeight}px`;\n panel.style.opacity = '1';\n });\n }\n }\n });\n\n this.$navItems.forEach((navItem, nIndex) => {\n const btn = navItem.querySelector<HTMLElement>(this.options.navBtn);\n if (btn && btn.dataset.tabindex == index.toString()) {\n btn.classList.add(this.options.activeClass);\n }\n });\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n if (!this.$element || !this.$navItems) return;\n\n this.$navItems.forEach((item) => {\n const btn = item.querySelector<HTMLElement>(this.options.navBtn);\n if (btn) {\n // Need to recreate the bound function to remove it correctly\n btn.removeEventListener('click', () => this._handleTabClick(btn));\n }\n });\n }\n}\n\n/**\n * Initialize all tabs in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {TabInstance[]} Array of Tab instances\n */\nexport function initializeTabs(selector = TAB.SELECTORS.TAB, options = {}): TabInstance[] {\n const tabInstances: TabInstance[] = [];\n const tabElements = document.querySelectorAll<HTMLElement>(selector);\n\n if (!tabElements.length) return tabInstances;\n\n tabElements.forEach((element) => {\n try {\n const instance = new Tab(element, options);\n tabInstances.push(instance);\n } catch (error) {\n console.error('Error initializing tab:', error);\n }\n });\n\n return tabInstances;\n}\n\nexport default Tab; "],"names":["DEFAULT_OPTIONS","navItems","TAB","SELECTORS","NAV_ITEMS","navBtn","NAV_BTN","panels","PANELS","panelBodys","PANEL_BODIES","activeClass","CLASSES","ACTIVE","activeIndex","DEFAULTS","ACTIVE_INDEX","Tab","selector","$element","options","$navItems","$panels","$panelBodys","constructor","this","document","querySelector","_initialize","_initializeElements","_showTab","_bindEvents","querySelectorAll","forEach","item","btn","addEventListener","_handleTabClick","tabIndex","dataset","tabindex","undefined","_hideAllTabs","panel","style","height","classList","remove","opacity","index","pIndex","panelBody","add","requestAnimationFrame","clientHeight","navItem","nIndex","destroy","removeEventListener","initializeTabs","tabInstances","tabElements","length","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/umd/619.fa05ea98c10270eb64c5.js","mappings":"iKA0BA,MAAMA,EAAgC,CACpCC,QAAQ,EACRC,UAAU,EACVC,SAAS,EACTC,aAAa,GAMf,MAAMC,EACIC,SACAC,QAORC,WAAAA,CAAYC,EAAsBF,EAAU,CAAC,GAC3CG,KAAKJ,SAAWG,EAChBC,KAAKH,QAAU,IAAKP,KAAoBO,GACxCG,KAAKC,MACP,CAKAA,IAAAA,GACMD,KAAKH,QAAQK,cACfF,KAAKJ,SAASO,MAAMC,YAClBC,EAAAA,GAAMC,WAAWC,cACjBP,KAAKH,QAAQK,cAKbF,KAAKH,QAAQW,oBACfR,KAAKS,sBAET,CAKQA,oBAAAA,GACN,IAAKT,KAAKJ,WAAaI,KAAKH,QAAQW,mBAAoB,OAGxD,IAAIE,EAAMV,KAAKJ,SAASe,cAAcN,EAAAA,GAAMO,UAAUC,IAEtD,IAAKH,EAAK,CAERA,EAAMI,SAASC,cAAc,OAC7BL,EAAIM,UAAYX,EAAAA,GAAMO,UAAUC,GAAGI,QAAQ,IAAK,IAGhD,MAAMC,EAAWJ,SAASC,cAAc,OAOxC,GANAG,EAASC,IAAMnB,KAAKH,QAAQW,mBAC5BU,EAASE,IAAM,aACfF,EAASF,UAAYX,EAAAA,GAAMO,UAAUS,SAASJ,QAAQ,IAAK,IAC3DP,EAAIY,YAAYJ,GAGZlB,KAAKH,QAAQH,YAAa,CAC5B,MAAM6B,EAAWT,SAASC,cAAc,OACxCQ,EAASP,UAAYX,EAAAA,GAAMO,UAAUY,QAAQP,QAAQ,IAAK,IAC1DP,EAAIY,YAAYC,EAClB,CAGIvB,KAAKJ,SAAS6B,WAChBzB,KAAKJ,SAAS8B,aAAahB,EAAKV,KAAKJ,SAAS6B,YAE9CzB,KAAKJ,SAAS0B,YAAYZ,EAE9B,CACF,CAKAiB,OAAAA,GACE,EAUG,SAASC,EAAiBC,EAAWxB,EAAAA,GAAMO,UAAUP,MAAOR,EAAU,CAAC,GAC5E,MAAMiC,EAAkC,GAClCC,EAAgBjB,SAASkB,iBAAkD,iBAAbH,EAAwBA,EAAWxB,EAAAA,GAAMO,UAAUP,OAEvH,OAAK0B,EAAcE,QAEnBF,EAAcG,SAASnC,IACrB,IACE,MAAMoC,EAAW,IAAIxC,EAAMI,EAASF,GACpCiC,EAAeM,KAAKD,EACtB,CAAE,MAAOE,GAET,KAGKP,GAX2BA,CAYpC,CAEA,S","sources":["webpack://Atomix/./src/components/River/scripts/index.ts"],"sourcesContent":["import { RIVER } from '../../../lib/constants/components';\n\n/**\n * Interface for River options\n */\ninterface RiverOptions {\n center?: boolean;\n breakout?: boolean;\n reverse?: boolean;\n backgroundImageSrc?: string;\n showOverlay?: boolean;\n contentWidth?: string;\n [key: string]: any;\n}\n\n/**\n * Interface for River instance\n */\ninterface RiverInstance {\n init(): void;\n destroy(): void;\n}\n\n/**\n * Default options for the River component\n */\nconst DEFAULT_OPTIONS: RiverOptions = {\n center: false,\n breakout: false,\n reverse: false,\n showOverlay: true\n};\n\n/**\n * Class representing a River component\n */\nclass River implements RiverInstance {\n private $element: HTMLElement;\n private options: RiverOptions;\n\n /**\n * Creates an instance of River\n * @param element - The river element\n * @param options - Custom options to override defaults\n */\n constructor(element: HTMLElement, options = {}) {\n this.$element = element;\n this.options = { ...DEFAULT_OPTIONS, ...options };\n this.init();\n }\n\n /**\n * Initialize the river component\n */\n init(): void {\n if (this.options.contentWidth) {\n this.$element.style.setProperty(\n RIVER.ATTRIBUTES.CONTENT_WIDTH,\n this.options.contentWidth\n );\n }\n\n // Add background image if provided\n if (this.options.backgroundImageSrc) {\n this.setupBackgroundImage();\n }\n }\n\n /**\n * Setup background image\n */\n private setupBackgroundImage(): void {\n if (!this.$element || !this.options.backgroundImageSrc) return;\n\n // Check if background already exists\n let $bg = this.$element.querySelector(RIVER.SELECTORS.BG);\n \n if (!$bg) {\n // Create background container\n $bg = document.createElement('div');\n $bg.className = RIVER.SELECTORS.BG.replace('.', '');\n \n // Create background image\n const $bgImage = document.createElement('img');\n $bgImage.src = this.options.backgroundImageSrc;\n $bgImage.alt = 'Background';\n $bgImage.className = RIVER.SELECTORS.BG_IMAGE.replace('.', '');\n $bg.appendChild($bgImage);\n \n // Create overlay if needed\n if (this.options.showOverlay) {\n const $overlay = document.createElement('div');\n $overlay.className = RIVER.SELECTORS.OVERLAY.replace('.', '');\n $bg.appendChild($overlay);\n }\n \n // Add background to the element (as first child)\n if (this.$element.firstChild) {\n this.$element.insertBefore($bg, this.$element.firstChild);\n } else {\n this.$element.appendChild($bg);\n }\n }\n }\n\n /**\n * Clean up component\n */\n destroy(): void {\n // Remove any event listeners or cleanup here\n }\n}\n\n/**\n * Initialize all river components in the document\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n * @returns Array of River instances\n */\nexport function initializeRivers(selector = RIVER.SELECTORS.RIVER, options = {}): RiverInstance[] {\n const riverInstances: RiverInstance[] = [];\n const riverElements = document.querySelectorAll<HTMLElement>(typeof selector === 'string' ? selector : RIVER.SELECTORS.RIVER);\n\n if (!riverElements.length) return riverInstances;\n\n riverElements.forEach((element) => {\n try {\n const instance = new River(element, options);\n riverInstances.push(instance);\n } catch (error) {\n console.error('Error initializing river:', error);\n }\n });\n\n return riverInstances;\n}\n\nexport default River; "],"names":["DEFAULT_OPTIONS","center","breakout","reverse","showOverlay","River","$element","options","constructor","element","this","init","contentWidth","style","setProperty","RIVER","ATTRIBUTES","CONTENT_WIDTH","backgroundImageSrc","setupBackgroundImage","$bg","querySelector","SELECTORS","BG","document","createElement","className","replace","$bgImage","src","alt","BG_IMAGE","appendChild","$overlay","OVERLAY","firstChild","insertBefore","destroy","initializeRivers","selector","riverInstances","riverElements","querySelectorAll","length","forEach","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/umd/690.aa7054d1c53e5402c2d6.js","mappings":"wKAwBA,MAAMA,EAAuC,CAC3CC,UAAW,OACXC,aAAa,EACbC,KAAM,KACNC,UAAU,GAMZ,MAAMC,EACIC,SACAC,SACAC,QAORC,WAAAA,CAAYH,EAA4BE,EAAU,CAAC,GACjDE,KAAKJ,SAAWA,GAAYK,EAAAA,GAAcC,UAAUD,cACpDD,KAAKH,SACiB,iBAAbD,EACHO,SAASC,cAA2BR,GACpCA,EACNI,KAAKF,QAAU,IAAKR,KAAoBQ,GACxCE,KAAKK,aACP,CAKQA,WAAAA,GACN,GAAKL,KAAKH,WAGqB,WAA3BG,KAAKF,QAAQP,WAA2BS,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAcO,QAAQC,SACjGT,KAAKH,SAASS,UAAUI,IAAIT,EAAAA,GAAcO,QAAQC,QAI1B,OAAtBT,KAAKF,QAAQL,MAAkBO,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAcO,QAAQG,OAEzD,OAAtBX,KAAKF,QAAQL,MAAkBO,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAcO,QAAQI,QAC/FZ,KAAKH,SAASS,UAAUI,IAAIT,EAAAA,GAAcO,QAAQI,OAFlDZ,KAAKH,SAASS,UAAUI,IAAIT,EAAAA,GAAcO,QAAQG,OAMhDX,KAAKF,QAAQe,oBAAoB,CACnC,IAAIC,EAAYd,KAAKH,SAASO,cAAc,uBAG5C,IAAKU,EAAW,CACdA,EAAYX,SAASY,cAAc,OACnCD,EAAUE,UAAY,qBAEtB,MAAMC,EAAad,SAASY,cAAc,OAQ1C,GAPAE,EAAWD,UAAY,2BACvBC,EAAWC,IAAMlB,KAAKF,QAAQe,mBAC9BI,EAAWE,IAAM,aAEjBL,EAAUM,YAAYH,GAGlBjB,KAAKF,QAAQN,YAAa,CAC5B,MAAM6B,EAAiBlB,SAASY,cAAc,OAC9CM,EAAeL,UAAY,0BAC3BF,EAAUM,YAAYC,EACxB,CAGArB,KAAKH,SAASyB,aAAaR,EAAWd,KAAKH,SAAS0B,WACtD,CACF,CACF,CAKOC,OAAAA,GACL,GAAKxB,KAAKH,WAGVG,KAAKH,SAASS,UAAUmB,OAAOxB,EAAAA,GAAcO,QAAQC,QAGrDT,KAAKH,SAASS,UAAUmB,OAAOxB,EAAAA,GAAcO,QAAQG,OACrDX,KAAKH,SAASS,UAAUmB,OAAOxB,EAAAA,GAAcO,QAAQI,OAGjDZ,KAAKF,QAAQe,oBAAoB,CACnC,MAAMC,EAAYd,KAAKH,SAASO,cAAc,uBAC1CU,GACFd,KAAKH,SAAS6B,YAAYZ,EAE9B,CACF,EASK,SAASa,EAAwB/B,EAAWK,EAAAA,GAAcC,UAAUD,cAAeH,EAAU,CAAC,GACnG,MAAM8B,EAAgD,GAChDC,EAAuB1B,SAAS2B,iBAAkD,iBAAblC,EAAwBA,EAAWK,EAAAA,GAAcC,UAAUD,eAEtI,OAAK4B,EAAqBE,QAE1BF,EAAqBG,SAASC,IAC5B,IACE,MAAMC,EAAW,IAAIvC,EAAasC,EAASnC,GAC3C8B,EAAsBO,KAAKD,EAC7B,CAAE,MAAOE,GAET,KAGKR,GAXkCA,CAY3C,CAEA,S","sources":["webpack://Atomix/./src/components/SectionIntro/scripts/index.ts"],"sourcesContent":["import { SECTION_INTRO } from '../../../lib/constants/components';\n\n/**\n * Interface for SectionIntro options\n */\ninterface SectionIntroOptions {\n alignment?: 'left' | 'center' | 'right';\n backgroundImageSrc?: string;\n showOverlay?: boolean;\n size?: 'sm' | 'md' | 'lg';\n skeleton?: boolean;\n [key: string]: any;\n}\n\n/**\n * Interface for SectionIntro instance\n */\ninterface SectionIntroInstance {\n destroy: () => void;\n}\n\n/**\n * Default options for the SectionIntro component\n */\nconst DEFAULT_OPTIONS: SectionIntroOptions = {\n alignment: 'left',\n showOverlay: false,\n size: 'md',\n skeleton: false\n};\n\n/**\n * Class representing a SectionIntro component\n */\nclass SectionIntro implements SectionIntroInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private options: SectionIntroOptions;\n\n /**\n * Creates an instance of SectionIntro\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || SECTION_INTRO.SELECTORS.SECTION_INTRO;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as SectionIntroOptions;\n this._initialize();\n }\n\n /**\n * Initialize the section intro component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n // Apply alignment classes if needed\n if (this.options.alignment === 'center' && !this.$element.classList.contains(SECTION_INTRO.CLASSES.CENTER)) {\n this.$element.classList.add(SECTION_INTRO.CLASSES.CENTER);\n }\n\n // Apply size classes if specified\n if (this.options.size === 'sm' && !this.$element.classList.contains(SECTION_INTRO.CLASSES.SMALL)) {\n this.$element.classList.add(SECTION_INTRO.CLASSES.SMALL);\n } else if (this.options.size === 'lg' && !this.$element.classList.contains(SECTION_INTRO.CLASSES.LARGE)) {\n this.$element.classList.add(SECTION_INTRO.CLASSES.LARGE);\n }\n\n // Add background image if provided\n if (this.options.backgroundImageSrc) {\n let bgElement = this.$element.querySelector('.c-sectionintro__bg');\n \n // Create background element if it doesn't exist\n if (!bgElement) {\n bgElement = document.createElement('div');\n bgElement.className = 'c-sectionintro__bg';\n \n const imgElement = document.createElement('img');\n imgElement.className = 'c-sectionintro__bg-image';\n imgElement.src = this.options.backgroundImageSrc;\n imgElement.alt = 'Background';\n \n bgElement.appendChild(imgElement);\n \n // Add overlay if needed\n if (this.options.showOverlay) {\n const overlayElement = document.createElement('div');\n overlayElement.className = 'c-sectionintro__overlay';\n bgElement.appendChild(overlayElement);\n }\n \n // Insert at the beginning of the element\n this.$element.insertBefore(bgElement, this.$element.firstChild);\n }\n }\n }\n\n /**\n * Clean up event listeners and remove added elements\n */\n public destroy(): void {\n if (!this.$element) return;\n \n // Remove alignment classes\n this.$element.classList.remove(SECTION_INTRO.CLASSES.CENTER);\n \n // Remove size classes\n this.$element.classList.remove(SECTION_INTRO.CLASSES.SMALL);\n this.$element.classList.remove(SECTION_INTRO.CLASSES.LARGE);\n \n // Remove background if it was dynamically added\n if (this.options.backgroundImageSrc) {\n const bgElement = this.$element.querySelector('.c-sectionintro__bg');\n if (bgElement) {\n this.$element.removeChild(bgElement);\n }\n }\n }\n}\n\n/**\n * Initialize all section intros in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {SectionIntroInstance[]} Array of SectionIntro instances\n */\nexport function initializeSectionIntros(selector = SECTION_INTRO.SELECTORS.SECTION_INTRO, options = {}): SectionIntroInstance[] {\n const sectionIntroInstances: SectionIntroInstance[] = [];\n const sectionIntroElements = document.querySelectorAll<HTMLElement>(typeof selector === 'string' ? selector : SECTION_INTRO.SELECTORS.SECTION_INTRO);\n\n if (!sectionIntroElements.length) return sectionIntroInstances;\n\n sectionIntroElements.forEach((element) => {\n try {\n const instance = new SectionIntro(element, options);\n sectionIntroInstances.push(instance);\n } catch (error) {\n console.error('Error initializing section intro:', error);\n }\n });\n\n return sectionIntroInstances;\n}\n\nexport default SectionIntro;\n"],"names":["DEFAULT_OPTIONS","alignment","showOverlay","size","skeleton","SectionIntro","selector","$element","options","constructor","this","SECTION_INTRO","SELECTORS","document","querySelector","_initialize","classList","contains","CLASSES","CENTER","add","SMALL","LARGE","backgroundImageSrc","bgElement","createElement","className","imgElement","src","alt","appendChild","overlayElement","insertBefore","firstChild","destroy","remove","removeChild","initializeSectionIntros","sectionIntroInstances","sectionIntroElements","querySelectorAll","length","forEach","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/umd/894.3e1eaf0a2aadf4434390.js","mappings":"uKAqBA,MAAMA,EAAsC,CAC1CC,KAAM,GACNC,UAAU,GAMZ,MAAMC,EACIC,SACAC,SACAC,QAORC,WAAAA,CAAYH,EAA4BE,EAAU,CAAC,GACjDE,KAAKJ,SAAWA,GAAYK,EAAAA,GAAYC,UAAUD,YAClDD,KAAKH,SACiB,iBAAbD,EACHO,SAASC,cAA2BR,GACpCA,EACNI,KAAKF,QAAU,IAAKN,KAAoBM,GACxCE,KAAKK,aACP,CAKQA,WAAAA,GACDL,KAAKH,WAGgB,OAAtBG,KAAKF,QAAQL,MAAkBO,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAYO,QAAQC,OAEvD,OAAtBT,KAAKF,QAAQL,MAAkBO,KAAKH,SAASS,UAAUC,SAASN,EAAAA,GAAYO,QAAQE,QAC7FV,KAAKH,SAASS,UAAUK,IAAIV,EAAAA,GAAYO,QAAQE,OAFhDV,KAAKH,SAASS,UAAUK,IAAIV,EAAAA,GAAYO,QAAQC,OAIpD,CAKOG,OAAAA,GACL,EAUG,SAASC,EAAuBjB,EAAWK,EAAAA,GAAYC,UAAUD,YAAaH,EAAU,CAAC,GAC9F,MAAMgB,EAA8C,GAC9CC,EAAsBZ,SAASa,iBAAkD,iBAAbpB,EAAwBA,EAAWK,EAAAA,GAAYC,UAAUD,aAEnI,OAAKc,EAAoBE,QAEzBF,EAAoBG,SAASC,IAC3B,IACE,MAAMC,EAAW,IAAIzB,EAAYwB,EAASrB,GAC1CgB,EAAqBO,KAAKD,EAC5B,CAAE,MAAOE,GAET,KAGKR,GAXiCA,CAY1C,CAEA,S","sources":["webpack://Atomix/./src/components/Testimonial/scripts/index.ts"],"sourcesContent":["import { TESTIMONIAL } from '../../../lib/constants/components';\n\n/**\n * Interface for Testimonial options\n */\ninterface TestimonialOptions {\n size?: 'sm' | 'lg' | '';\n skeleton?: boolean;\n [key: string]: any;\n}\n\n/**\n * Interface for Testimonial instance\n */\ninterface TestimonialInstance {\n destroy: () => void;\n}\n\n/**\n * Default options for the Testimonial component\n */\nconst DEFAULT_OPTIONS: TestimonialOptions = {\n size: '',\n skeleton: false\n};\n\n/**\n * Class representing a Testimonial component\n */\nclass Testimonial implements TestimonialInstance {\n private selector: string | Element;\n private $element: HTMLElement | null;\n private options: TestimonialOptions;\n\n /**\n * Creates an instance of Testimonial\n * @param selector - CSS selector string or DOM Element\n * @param options - Custom options to override defaults\n */\n constructor(selector: string | Element, options = {}) {\n this.selector = selector || TESTIMONIAL.SELECTORS.TESTIMONIAL;\n this.$element =\n typeof selector === 'string'\n ? document.querySelector<HTMLElement>(selector)\n : selector as HTMLElement;\n this.options = { ...DEFAULT_OPTIONS, ...options } as TestimonialOptions;\n this._initialize();\n }\n\n /**\n * Initialize the testimonial component\n */\n private _initialize(): void {\n if (!this.$element) return;\n\n // Apply size classes if specified\n if (this.options.size === 'sm' && !this.$element.classList.contains(TESTIMONIAL.CLASSES.SMALL)) {\n this.$element.classList.add(TESTIMONIAL.CLASSES.SMALL);\n } else if (this.options.size === 'lg' && !this.$element.classList.contains(TESTIMONIAL.CLASSES.LARGE)) {\n this.$element.classList.add(TESTIMONIAL.CLASSES.LARGE);\n }\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n // No specific cleanup needed for testimonial component\n }\n}\n\n/**\n * Initialize all testimonials in the document\n * @param {string|Element} selector - CSS selector string or DOM Element\n * @param {Object} options - Custom options to override defaults\n * @returns {TestimonialInstance[]} Array of Testimonial instances\n */\nexport function initializeTestimonials(selector = TESTIMONIAL.SELECTORS.TESTIMONIAL, options = {}): TestimonialInstance[] {\n const testimonialInstances: TestimonialInstance[] = [];\n const testimonialElements = document.querySelectorAll<HTMLElement>(typeof selector === 'string' ? selector : TESTIMONIAL.SELECTORS.TESTIMONIAL);\n\n if (!testimonialElements.length) return testimonialInstances;\n\n testimonialElements.forEach((element) => {\n try {\n const instance = new Testimonial(element, options);\n testimonialInstances.push(instance);\n } catch (error) {\n console.error('Error initializing testimonial:', error);\n }\n });\n\n return testimonialInstances;\n}\n\nexport default Testimonial; "],"names":["DEFAULT_OPTIONS","size","skeleton","Testimonial","selector","$element","options","constructor","this","TESTIMONIAL","SELECTORS","document","querySelector","_initialize","classList","contains","CLASSES","SMALL","LARGE","add","destroy","initializeTestimonials","testimonialInstances","testimonialElements","querySelectorAll","length","forEach","element","instance","push","error"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/chunks/umd/897.554ea37be4453698c167.js","mappings":"iKAcA,MAAMA,EACIC,QACAC,KAMRC,WAAAA,CAAYF,GACVG,KAAKH,QAAUA,EACfG,KAAKF,MAAO,EACZE,KAAKC,aACP,CAKQA,WAAAA,GACND,KAAKE,cAEDF,KAAKH,QAAQM,UAAUC,SAASC,EAAAA,GAAOC,QAAQC,SACjDP,KAAKF,MAAO,EAEhB,CAKQI,WAAAA,GACNF,KAAKH,QAAQW,iBAAiB,QAASR,KAAKS,cAAcC,KAAKV,MACjE,CAKQS,aAAAA,GACDT,KAAKF,KAGRE,KAAKW,UAFLX,KAAKY,QAIT,CAKOA,MAAAA,GACLZ,KAAKH,QAAQM,UAAUU,IAAIR,EAAAA,GAAOC,QAAQC,OAC1CP,KAAKF,MAAO,EAGZE,KAAKH,QAAQiB,cAAc,IAAIC,YAAY,YAAa,CACtDC,SAAS,IAEb,CAKOL,OAAAA,GACLX,KAAKH,QAAQM,UAAUc,OAAOZ,EAAAA,GAAOC,QAAQC,OAC7CP,KAAKF,MAAO,EAGZE,KAAKH,QAAQiB,cAAc,IAAIC,YAAY,aAAc,CACvDC,SAAS,IAEb,CAKOE,OAAAA,GACLlB,KAAKH,QAAQsB,oBAAoB,QAASnB,KAAKS,cACjD,EAOK,SAASW,IACd,MAAMC,EAAoC,GACpCC,EAAiBC,SAASC,iBAA8BnB,EAAAA,GAAOoB,UAAUpB,QAE/E,OAAKiB,EAAeI,QAEpBJ,EAAeK,SAAS9B,IACtB,IACE,MAAM+B,EAAW,IAAIhC,EAAOC,GAC5BwB,EAAgBQ,KAAKD,EACvB,CAAE,MAAOE,GAET,KAGKT,GAX4BA,CAYrC,CAEA,S","sources":["webpack://Atomix/./src/components/Toggle/scripts/index.ts"],"sourcesContent":["import { TOGGLE } from '../../../lib/constants/components';\n\n/**\n * Interface for Toggle instance\n */\ninterface ToggleInstance {\n turnOn: () => void;\n turnOff: () => void;\n destroy: () => void;\n}\n\n/**\n * Class representing a Toggle component\n */\nclass Toggle implements ToggleInstance {\n private element: HTMLElement;\n private isOn: boolean;\n\n /**\n * Creates an instance of Toggle\n * @param element - The toggle container element\n */\n constructor(element: HTMLElement) {\n this.element = element;\n this.isOn = false;\n this._initialize();\n }\n\n /**\n * Initialize the toggle component\n */\n private _initialize(): void {\n this._bindEvents();\n // Check if toggle should be initially on\n if (this.element.classList.contains(TOGGLE.CLASSES.IS_ON)) {\n this.isOn = true;\n }\n }\n\n /**\n * Bind event listeners\n */\n private _bindEvents(): void {\n this.element.addEventListener('click', this._handleToggle.bind(this));\n }\n\n /**\n * Handle toggle click\n */\n private _handleToggle(): void {\n if (!this.isOn) {\n this.turnOn();\n } else {\n this.turnOff();\n }\n }\n\n /**\n * Turn on the toggle\n */\n public turnOn(): void {\n this.element.classList.add(TOGGLE.CLASSES.IS_ON);\n this.isOn = true;\n \n // Dispatch custom event\n this.element.dispatchEvent(new CustomEvent('toggle:on', { \n bubbles: true \n }));\n }\n\n /**\n * Turn off the toggle\n */\n public turnOff(): void {\n this.element.classList.remove(TOGGLE.CLASSES.IS_ON);\n this.isOn = false;\n \n // Dispatch custom event\n this.element.dispatchEvent(new CustomEvent('toggle:off', { \n bubbles: true \n }));\n }\n\n /**\n * Clean up event listeners\n */\n public destroy(): void {\n this.element.removeEventListener('click', this._handleToggle);\n }\n}\n\n/**\n * Initialize all toggles in the document\n * @returns Array of toggle instances\n */\nexport function initializeToggles(): ToggleInstance[] {\n const toggleInstances: ToggleInstance[] = [];\n const toggleElements = document.querySelectorAll<HTMLElement>(TOGGLE.SELECTORS.TOGGLE);\n\n if (!toggleElements.length) return toggleInstances;\n\n toggleElements.forEach((element) => {\n try {\n const instance = new Toggle(element);\n toggleInstances.push(instance);\n } catch (error) {\n console.error('Error initializing toggle:', error);\n }\n });\n\n return toggleInstances;\n}\n\nexport default Toggle; "],"names":["Toggle","element","isOn","constructor","this","_initialize","_bindEvents","classList","contains","TOGGLE","CLASSES","IS_ON","addEventListener","_handleToggle","bind","turnOff","turnOn","add","dispatchEvent","CustomEvent","bubbles","remove","destroy","removeEventListener","initializeToggles","toggleInstances","toggleElements","document","querySelectorAll","SELECTORS","length","forEach","instance","push","error"],"sourceRoot":""}
@@ -1,46 +0,0 @@
1
- # Welcome to Atomix Design System
2
-
3
- Atomix is a comprehensive design system built to provide a consistent and efficient way to build user interfaces. It offers a collection of pre-built, reusable components, design tokens, and guidelines to help developers and designers work together seamlessly.
4
-
5
- ## Purpose
6
-
7
- The goal of Atomix is to accelerate development, ensure consistency across applications, and maintain a high level of quality in our user interfaces. By using Atomix, you can focus on building features rather than reinventing common UI patterns.
8
-
9
- ## Getting Started
10
-
11
- To start using the Atomix Design System in your project, follow these steps:
12
-
13
- 1. **Installation:** (Assuming you use npm or yarn)
14
- ```bash
15
- npm install @your-package-name/atomix # or yarn add @your-package-name/atomix
16
- ```
17
- (Note: Replace `@your-package-name/atomix` with the actual package name if it's published)
18
-
19
- 2. **Usage:**
20
- Import components and styles into your project as needed.
21
-
22
- ```javascript
23
- import { Button } from '@your-package-name/atomix';
24
- import '@your-package-name/atomix/dist/styles.css'; // Assuming you have a main CSS file
25
-
26
- function MyComponent() {
27
- return (
28
- <Button variant="primary">Click Me</Button>
29
- );
30
- }
31
- ```
32
- (Note: Adjust import paths based on your package structure)
33
-
34
- ## Explore Components
35
-
36
- Navigate through the sidebar to explore the various components available in the Atomix Design System. Each component's story provides examples, documentation, and controls to experiment with its props.
37
-
38
- ## Documentation & Guidelines
39
-
40
- For more in-depth information, refer to the following documents in the repository:
41
-
42
- * [Component Guidelines](?path=/docs/docs-atomix-component-guidelines--docs)
43
- * [Implementation Guide](?path=/docs/docs-implementation-guide--docs)
44
- * [Roadmap](?path=/docs/docs-atomix-roadmap--docs)
45
-
46
- We hope you enjoy using Atomix! If you have any questions or feedback, please don't hesitate to reach out.