se-design 0.0.120 → 0.0.122

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 (262) hide show
  1. package/dist/assets/icons/sort-asc.svg +4 -0
  2. package/dist/assets/icons/sort-desc.svg +4 -0
  3. package/dist/assets/style.css +1 -1
  4. package/dist/components/Banner/index.d.ts +1 -0
  5. package/dist/components/Dropdown/index.d.ts +5 -1
  6. package/dist/components/DropdownWithInputTags/index.d.ts +24 -0
  7. package/dist/components/InputWithTags/index.d.ts +2 -1
  8. package/dist/components/index.d.ts +1 -0
  9. package/dist/index.js +42 -40
  10. package/dist/index.js.map +1 -1
  11. package/dist/index10.js +1 -1
  12. package/dist/index10.js.map +1 -1
  13. package/dist/index100.js +1 -1
  14. package/dist/index100.js.map +1 -1
  15. package/dist/index101.js +1 -1
  16. package/dist/index101.js.map +1 -1
  17. package/dist/index102.js +1 -1
  18. package/dist/index102.js.map +1 -1
  19. package/dist/index103.js +1 -1
  20. package/dist/index103.js.map +1 -1
  21. package/dist/index104.js +1 -1
  22. package/dist/index104.js.map +1 -1
  23. package/dist/index105.js +1 -1
  24. package/dist/index105.js.map +1 -1
  25. package/dist/index106.js +1 -1
  26. package/dist/index106.js.map +1 -1
  27. package/dist/index107.js +1 -1
  28. package/dist/index107.js.map +1 -1
  29. package/dist/index108.js +1 -1
  30. package/dist/index108.js.map +1 -1
  31. package/dist/index109.js +1 -1
  32. package/dist/index109.js.map +1 -1
  33. package/dist/index11.js +1 -1
  34. package/dist/index11.js.map +1 -1
  35. package/dist/index110.js +1 -1
  36. package/dist/index110.js.map +1 -1
  37. package/dist/index111.js +1 -1
  38. package/dist/index111.js.map +1 -1
  39. package/dist/index112.js +1 -1
  40. package/dist/index112.js.map +1 -1
  41. package/dist/index113.js +1 -1
  42. package/dist/index113.js.map +1 -1
  43. package/dist/index114.js +2 -2
  44. package/dist/index114.js.map +1 -1
  45. package/dist/index115.js +2 -2
  46. package/dist/index115.js.map +1 -1
  47. package/dist/index116.js +2 -2
  48. package/dist/index116.js.map +1 -1
  49. package/dist/index117.js +1 -1
  50. package/dist/index117.js.map +1 -1
  51. package/dist/index118.js +1 -1
  52. package/dist/index118.js.map +1 -1
  53. package/dist/index119.js +2 -2
  54. package/dist/index119.js.map +1 -1
  55. package/dist/index120.js +1 -1
  56. package/dist/index120.js.map +1 -1
  57. package/dist/index121.js +1 -1
  58. package/dist/index121.js.map +1 -1
  59. package/dist/index122.js +2 -2
  60. package/dist/index122.js.map +1 -1
  61. package/dist/index123.js +1 -1
  62. package/dist/index123.js.map +1 -1
  63. package/dist/index124.js +2 -2
  64. package/dist/index124.js.map +1 -1
  65. package/dist/index125.js +2 -149
  66. package/dist/index125.js.map +1 -1
  67. package/dist/index126.js +5 -0
  68. package/dist/index126.js.map +1 -0
  69. package/dist/index127.js +5 -0
  70. package/dist/index127.js.map +1 -0
  71. package/dist/index128.js +152 -0
  72. package/dist/index128.js.map +1 -0
  73. package/dist/{index136.js → index140.js} +1 -1
  74. package/dist/{index136.js.map → index140.js.map} +1 -1
  75. package/dist/index148.js +1233 -5
  76. package/dist/index148.js.map +1 -1
  77. package/dist/index150.js +10 -11
  78. package/dist/index150.js.map +1 -1
  79. package/dist/index151.js +8 -4
  80. package/dist/index151.js.map +1 -1
  81. package/dist/index152.js +4 -5
  82. package/dist/index152.js.map +1 -1
  83. package/dist/index153.js +168 -36
  84. package/dist/index153.js.map +1 -1
  85. package/dist/index154.js +11 -2
  86. package/dist/index154.js.map +1 -1
  87. package/dist/index155.js +5 -7
  88. package/dist/index155.js.map +1 -1
  89. package/dist/index156.js +5 -326
  90. package/dist/index156.js.map +1 -1
  91. package/dist/index157.js +36 -48
  92. package/dist/index157.js.map +1 -1
  93. package/dist/index158.js +2 -2
  94. package/dist/index159.js +7 -75
  95. package/dist/index159.js.map +1 -1
  96. package/dist/index160.js +308 -74
  97. package/dist/index160.js.map +1 -1
  98. package/dist/index161.js +45 -47
  99. package/dist/index161.js.map +1 -1
  100. package/dist/index162.js +2 -8
  101. package/dist/index162.js.map +1 -1
  102. package/dist/index163.js +75 -4
  103. package/dist/index163.js.map +1 -1
  104. package/dist/index164.js +89 -48
  105. package/dist/index164.js.map +1 -1
  106. package/dist/index165.js +52 -2
  107. package/dist/index165.js.map +1 -1
  108. package/dist/index166.js +8 -2
  109. package/dist/index166.js.map +1 -1
  110. package/dist/index167.js +8 -0
  111. package/dist/index167.js.map +1 -0
  112. package/dist/index168.js +55 -0
  113. package/dist/index168.js.map +1 -0
  114. package/dist/index169.js +5 -0
  115. package/dist/index169.js.map +1 -0
  116. package/dist/index170.js +5 -0
  117. package/dist/index170.js.map +1 -0
  118. package/dist/index23.js +99 -57
  119. package/dist/index23.js.map +1 -1
  120. package/dist/index28.js +35 -29
  121. package/dist/index28.js.map +1 -1
  122. package/dist/index35.js +13 -12
  123. package/dist/index35.js.map +1 -1
  124. package/dist/index36.js +158 -37
  125. package/dist/index36.js.map +1 -1
  126. package/dist/index37.js +36 -84
  127. package/dist/index37.js.map +1 -1
  128. package/dist/index38.js +83 -31
  129. package/dist/index38.js.map +1 -1
  130. package/dist/index39.js +28 -47
  131. package/dist/index39.js.map +1 -1
  132. package/dist/index40.js +48 -66
  133. package/dist/index40.js.map +1 -1
  134. package/dist/index41.js +64 -61
  135. package/dist/index41.js.map +1 -1
  136. package/dist/index42.js +63 -103
  137. package/dist/index42.js.map +1 -1
  138. package/dist/index43.js +104 -83
  139. package/dist/index43.js.map +1 -1
  140. package/dist/index44.js +84 -35
  141. package/dist/index44.js.map +1 -1
  142. package/dist/index45.js +34 -26
  143. package/dist/index45.js.map +1 -1
  144. package/dist/index46.js +28 -28
  145. package/dist/index46.js.map +1 -1
  146. package/dist/index47.js +28 -41
  147. package/dist/index47.js.map +1 -1
  148. package/dist/index48.js +41 -290
  149. package/dist/index48.js.map +1 -1
  150. package/dist/index49.js +292 -2
  151. package/dist/index49.js.map +1 -1
  152. package/dist/index5.js +97 -93
  153. package/dist/index5.js.map +1 -1
  154. package/dist/index50.js +1 -1
  155. package/dist/index50.js.map +1 -1
  156. package/dist/index51.js +1 -1
  157. package/dist/index51.js.map +1 -1
  158. package/dist/index52.js +1 -1
  159. package/dist/index52.js.map +1 -1
  160. package/dist/index53.js +1 -1
  161. package/dist/index53.js.map +1 -1
  162. package/dist/index54.js +1 -1
  163. package/dist/index54.js.map +1 -1
  164. package/dist/index55.js +1 -1
  165. package/dist/index55.js.map +1 -1
  166. package/dist/index56.js +1 -1
  167. package/dist/index56.js.map +1 -1
  168. package/dist/index57.js +1 -1
  169. package/dist/index57.js.map +1 -1
  170. package/dist/index58.js +1 -1
  171. package/dist/index58.js.map +1 -1
  172. package/dist/index59.js +1 -1
  173. package/dist/index59.js.map +1 -1
  174. package/dist/index60.js +1 -1
  175. package/dist/index60.js.map +1 -1
  176. package/dist/index61.js +1 -1
  177. package/dist/index61.js.map +1 -1
  178. package/dist/index62.js +1 -1
  179. package/dist/index62.js.map +1 -1
  180. package/dist/index63.js +1 -1
  181. package/dist/index63.js.map +1 -1
  182. package/dist/index64.js +1 -1
  183. package/dist/index64.js.map +1 -1
  184. package/dist/index65.js +1 -1
  185. package/dist/index65.js.map +1 -1
  186. package/dist/index66.js +1 -1
  187. package/dist/index66.js.map +1 -1
  188. package/dist/index67.js +1 -1
  189. package/dist/index67.js.map +1 -1
  190. package/dist/index68.js +2 -2
  191. package/dist/index68.js.map +1 -1
  192. package/dist/index69.js +2 -2
  193. package/dist/index69.js.map +1 -1
  194. package/dist/index70.js +1 -1
  195. package/dist/index70.js.map +1 -1
  196. package/dist/index71.js +1 -1
  197. package/dist/index71.js.map +1 -1
  198. package/dist/index72.js +2 -2
  199. package/dist/index72.js.map +1 -1
  200. package/dist/index73.js +2 -2
  201. package/dist/index73.js.map +1 -1
  202. package/dist/index74.js +1 -1
  203. package/dist/index74.js.map +1 -1
  204. package/dist/index75.js +1 -1
  205. package/dist/index75.js.map +1 -1
  206. package/dist/index76.js +1 -1
  207. package/dist/index76.js.map +1 -1
  208. package/dist/index77.js +2 -2
  209. package/dist/index77.js.map +1 -1
  210. package/dist/index78.js +1 -1
  211. package/dist/index78.js.map +1 -1
  212. package/dist/index79.js +2 -2
  213. package/dist/index79.js.map +1 -1
  214. package/dist/index80.js +1 -1
  215. package/dist/index80.js.map +1 -1
  216. package/dist/index81.js +1 -1
  217. package/dist/index81.js.map +1 -1
  218. package/dist/index82.js +1 -1
  219. package/dist/index82.js.map +1 -1
  220. package/dist/index83.js +2 -2
  221. package/dist/index83.js.map +1 -1
  222. package/dist/index84.js +2 -2
  223. package/dist/index84.js.map +1 -1
  224. package/dist/index85.js +1 -1
  225. package/dist/index85.js.map +1 -1
  226. package/dist/index86.js +1 -1
  227. package/dist/index86.js.map +1 -1
  228. package/dist/index87.js +1 -1
  229. package/dist/index87.js.map +1 -1
  230. package/dist/index88.js +1 -1
  231. package/dist/index88.js.map +1 -1
  232. package/dist/index89.js +1 -1
  233. package/dist/index89.js.map +1 -1
  234. package/dist/index90.js +2 -2
  235. package/dist/index90.js.map +1 -1
  236. package/dist/index91.js +2 -2
  237. package/dist/index91.js.map +1 -1
  238. package/dist/index92.js +1 -1
  239. package/dist/index92.js.map +1 -1
  240. package/dist/index93.js +1 -1
  241. package/dist/index93.js.map +1 -1
  242. package/dist/index94.js +2 -2
  243. package/dist/index94.js.map +1 -1
  244. package/dist/index95.js +1 -1
  245. package/dist/index95.js.map +1 -1
  246. package/dist/index96.js +2 -2
  247. package/dist/index96.js.map +1 -1
  248. package/dist/index97.js +2 -2
  249. package/dist/index97.js.map +1 -1
  250. package/dist/index98.js +2 -2
  251. package/dist/index98.js.map +1 -1
  252. package/dist/index99.js +2 -2
  253. package/dist/index99.js.map +1 -1
  254. package/package.json +1 -1
  255. package/dist/index144.js +0 -1236
  256. package/dist/index144.js.map +0 -1
  257. package/dist/index146.js +0 -13
  258. package/dist/index146.js.map +0 -1
  259. package/dist/index147.js +0 -13
  260. package/dist/index147.js.map +0 -1
  261. package/dist/index149.js +0 -173
  262. package/dist/index149.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index44.js","sources":["../src/components/CircularProgressBar/index.tsx"],"sourcesContent":["import React from 'react';\n\ninterface CircularProgressBarProps {\n progress: number;\n backgroundColor?: string;\n progressColor?: string;\n size?: number;\n strokeWidth?: number;\n}\n\nexport const CircularProgressBar = ({\n progress,\n backgroundColor = '#E8E8E8',\n progressColor = '#0066FF',\n size = 40,\n strokeWidth = 4\n}: CircularProgressBarProps) => {\n const radius = (size - strokeWidth) / 2;\n const circumference = radius * 2 * Math.PI;\n const strokeDashoffset = circumference - (progress / 100) * circumference;\n\n return (\n <svg width={size} height={size} style={{ transform: 'rotate(-90deg)' }}>\n {/* Background circle */}\n <circle cx={size / 2} cy={size / 2} r={radius} stroke={backgroundColor} strokeWidth={strokeWidth} fill=\"none\" />\n {/* Progress circle */}\n <circle\n cx={size / 2}\n cy={size / 2}\n r={radius}\n stroke={progressColor}\n strokeWidth={strokeWidth}\n strokeDasharray={circumference}\n strokeDashoffset={strokeDashoffset}\n fill=\"none\"\n strokeLinecap=\"round\"\n style={{ transition: 'stroke-dashoffset 0.3s ease' }}\n />\n </svg>\n );\n};\n"],"names":["CircularProgressBar","progress","backgroundColor","progressColor","size","strokeWidth","radius","circumference","Math","PI","strokeDashoffset","React","createElement","width","height","style","transform","cx","cy","r","stroke","fill","strokeDasharray","strokeLinecap","transition"],"mappings":";AAUO,MAAMA,IAAsBA,CAAC;AAAA,EAClCC,UAAAA;AAAAA,EACAC,iBAAAA,IAAkB;AAAA,EAClBC,eAAAA,IAAgB;AAAA,EAChBC,MAAAA,IAAO;AAAA,EACPC,aAAAA,IAAc;AACU,MAAM;AACxBC,QAAAA,KAAUF,IAAOC,KAAe,GAChCE,IAAgBD,IAAS,IAAIE,KAAKC,IAClCC,IAAmBH,IAAiBN,IAAW,MAAOM;AAG1DI,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,OAAOT;AAAAA,IAAMU,QAAQV;AAAAA,IAAMW,OAAO;AAAA,MAAEC,WAAW;AAAA,IAAA;AAAA,EAAiB,GAEnEJ,gBAAAA,EAAAA,cAAA,UAAA;AAAA,IAAQK,IAAIb,IAAO;AAAA,IAAGc,IAAId,IAAO;AAAA,IAAGe,GAAGb;AAAAA,IAAQc,QAAQlB;AAAAA,IAAiBG,aAAAA;AAAAA,IAA0BgB,MAAK;AAAA,EAAA,CAAQ,GAE/GT,gBAAAA,EAAAA,cAAA,UAAA;AAAA,IACEK,IAAIb,IAAO;AAAA,IACXc,IAAId,IAAO;AAAA,IACXe,GAAGb;AAAAA,IACHc,QAAQjB;AAAAA,IACRE,aAAAA;AAAAA,IACAiB,iBAAiBf;AAAAA,IACjBG,kBAAAA;AAAAA,IACAW,MAAK;AAAA,IACLE,eAAc;AAAA,IACdR,OAAO;AAAA,MAAES,YAAY;AAAA,IAAA;AAAA,EAA8B,CACpD,CACE;AAET;"}
1
+ {"version":3,"file":"index44.js","sources":["../src/components/PhoneInput/index.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport './style.scss';\nimport countriesInfoJson from './countriesInfo.json';\nimport { Icon } from '../Icon';\n\nexport interface PhoneInputProps {\n onCountrycodeChange: (countryCode: string) => void;\n onNumberChange: (number: string) => void;\n error?: boolean;\n errorMessage?: string;\n value?: {\n countryCode: string;\n number: string;\n };\n}\n\nexport const PhoneInput: React.FC<PhoneInputProps> = ({\n onCountrycodeChange,\n onNumberChange,\n error,\n errorMessage,\n value\n}) => {\n const [countryCode, setCountryCode] = useState(value?.countryCode || countriesInfoJson[0].dial_code);\n const [displaySelectCountryCode, setDisplaySelectCountryCode] = useState(false);\n const [countriesInfo, setCountriesInfo] = useState(countriesInfoJson);\n const [searchValue, setSearchValue] = useState('');\n const [enteredNumber, setEnteredNumber] = useState('');\n const containerRef = useRef<HTMLDivElement>(null);\n\n const countryInfo = countriesInfoJson.find((country) => country.dial_code === countryCode);\n\n const handleCountryCodeSelect = (country: string) => {\n if (country) {\n setCountryCode(country);\n onCountrycodeChange(country);\n }\n setDisplaySelectCountryCode(false);\n };\n\n const handleCountryCodeSearch = (event: React.ChangeEvent<HTMLInputElement>) => {\n const searchValue = event.target.value;\n setSearchValue(searchValue);\n const filteredCountries = countriesInfoJson.filter(\n (country) =>\n country.name.toLowerCase().includes(searchValue.toLowerCase()) ||\n country.dial_code.toLowerCase().includes(searchValue.toLowerCase()) ||\n country.code.toLowerCase().includes(searchValue.toLowerCase())\n );\n setCountriesInfo(filteredCountries);\n };\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (containerRef.current && !containerRef.current.contains(event.target as Node)) {\n setDisplaySelectCountryCode(false);\n }\n };\n document.addEventListener('mousedown', handleClickOutside);\n return () => document.removeEventListener('mousedown', handleClickOutside);\n }, []);\n\n useEffect(() => {\n if (value) {\n setCountryCode(value.countryCode);\n setEnteredNumber(value.number);\n }\n }, [value]);\n\n const handleEnteredNumberChange = (value: string) => {\n const numericValue = value.replace(/\\D/g, ''); // Remove non-numeric characters\n console.log('numericValue', numericValue);\n setEnteredNumber(numericValue);\n onNumberChange(numericValue);\n };\n\n return (\n <div className=\"phone-input-container-se-design-main-container\">\n <div className={`phone-input-container-se-design-main ${error ? 'error' : ''}`} ref={containerRef}>\n <div className=\"phone-input-container-se-design\">\n <div\n className=\"phone-input-container-se-design-country-code\"\n onClick={() => {\n setDisplaySelectCountryCode(!displaySelectCountryCode);\n }}\n >\n <img\n src={`https://flagcdn.com/${countryInfo?.code.toLowerCase()}.svg`}\n alt={countryInfo?.name}\n width=\"16\"\n />\n {countryInfo?.dial_code}\n <Icon name=\"chevron\" className={!displaySelectCountryCode ? '' : 'rotate-180'} />\n </div>\n <span className=\"divider\" />\n <input\n type=\"tel\"\n placeholder=\"Enter phone number\"\n className=\"phone-input-container-se-design-phone-number-input\"\n onChange={(event) => handleEnteredNumberChange(event.target.value)}\n value={enteredNumber}\n pattern=\"[0-9]*\"\n />\n </div>\n\n {displaySelectCountryCode && (\n <div className=\"phone-input-container-se-design-country-code-list\">\n <div className=\"search-input-wrapper\">\n <Icon name=\"search\" className=\"search-icon\" />\n <input\n type=\"text\"\n placeholder=\"Search\"\n className=\"phone-input-container-se-design-country-code-list-item-input\"\n onChange={handleCountryCodeSearch}\n value={searchValue}\n />\n </div>\n {countriesInfo.length > 0 ? (\n countriesInfo.map((country) => (\n <div\n key={country.code}\n className=\"phone-input-container-se-design-country-code-list-item\"\n onClick={() => handleCountryCodeSelect(country.dial_code)}\n >\n <img src={`https://flagcdn.com/${country.code.toLowerCase()}.svg`} alt={country.name} width=\"16\" />\n <span>{country.name}</span>\n <span>({country.dial_code})</span>\n </div>\n ))\n ) : (\n <div className=\"phone-input-container-se-design-country-code-list-item-no-resuts\">No results found</div>\n )}\n </div>\n )}\n </div>\n {error && <div className=\"error-message\">{errorMessage}</div>}\n </div>\n );\n};\n"],"names":["PhoneInput","onCountrycodeChange","onNumberChange","error","errorMessage","value","countryCode","setCountryCode","useState","countriesInfoJson","dial_code","displaySelectCountryCode","setDisplaySelectCountryCode","countriesInfo","setCountriesInfo","searchValue","setSearchValue","enteredNumber","setEnteredNumber","containerRef","useRef","countryInfo","find","country","handleCountryCodeSelect","handleCountryCodeSearch","event","target","filteredCountries","filter","name","toLowerCase","includes","code","useEffect","handleClickOutside","current","contains","addEventListener","document","removeEventListener","number","handleEnteredNumberChange","numericValue","replace","log","React","createElement","className","ref","onClick","src","alt","width","Icon","type","placeholder","onChange","pattern","length","map","key"],"mappings":";;;;AAgBO,MAAMA,IAAwCA,CAAC;AAAA,EACpDC,qBAAAA;AAAAA,EACAC,gBAAAA;AAAAA,EACAC,OAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AACF,MAAM;AACE,QAAA,CAACC,GAAaC,CAAc,IAAIC,GAASH,KAAAA,gBAAAA,EAAOC,gBAAeG,EAAkB,CAAC,EAAEC,SAAS,GAC7F,CAACC,GAA0BC,CAA2B,IAAIJ,EAAS,EAAK,GACxE,CAACK,GAAeC,CAAgB,IAAIN,EAASC,CAAiB,GAC9D,CAACM,GAAaC,CAAc,IAAIR,EAAS,EAAE,GAC3C,CAACS,GAAeC,CAAgB,IAAIV,EAAS,EAAE,GAC/CW,IAAeC,EAAuB,IAAI,GAE1CC,IAAcZ,EAAkBa,KAAMC,CAAYA,MAAAA,EAAQb,cAAcJ,CAAW,GAEnFkB,IAA0BA,CAACD,MAAoB;AACnD,IAAIA,MACFhB,EAAegB,CAAO,GACtBtB,EAAoBsB,CAAO,IAE7BX,EAA4B,EAAK;AAAA,EACnC,GAEMa,IAA0BA,CAACC,MAA+C;AACxEX,UAAAA,IAAcW,EAAMC,OAAOtB;AACjCW,IAAAA,EAAeD,CAAW;AAC1B,UAAMa,IAAoBnB,EAAkBoB,OACzCN,CAAAA,MACCA,EAAQO,KAAKC,YAAY,EAAEC,SAASjB,EAAYgB,YAAY,CAAC,KAC7DR,EAAQb,UAAUqB,YAAY,EAAEC,SAASjB,EAAYgB,YAAa,CAAA,KAClER,EAAQU,KAAKF,YAAAA,EAAcC,SAASjB,EAAYgB,YAAa,CAAA,CACjE;AACAjB,IAAAA,EAAiBc,CAAiB;AAAA,EACpC;AAEAM,EAAAA,EAAU,MAAM;AACRC,UAAAA,IAAqBA,CAACT,MAAsB;AAC5CP,MAAAA,EAAaiB,WAAW,CAACjB,EAAaiB,QAAQC,SAASX,EAAMC,MAAc,KAC7Ef,EAA4B,EAAK;AAAA,IAErC;AACS0B,oBAAAA,iBAAiB,aAAaH,CAAkB,GAClD,MAAMI,SAASC,oBAAoB,aAAaL,CAAkB;AAAA,EAC3E,GAAG,EAAE,GAELD,EAAU,MAAM;AACd,IAAI7B,MACFE,EAAeF,EAAMC,WAAW,GAChCY,EAAiBb,EAAMoC,MAAM;AAAA,EAC/B,GACC,CAACpC,CAAK,CAAC;AAEJqC,QAAAA,IAA4BA,CAACrC,MAAkB;AACnD,UAAMsC,IAAetC,EAAMuC,QAAQ,OAAO,EAAE;AACpCC,YAAAA,IAAI,gBAAgBF,CAAY,GACxCzB,EAAiByB,CAAY,GAC7BzC,EAAeyC,CAAY;AAAA,EAC7B;AAGEG,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAA,GACbD,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKC,WAAW,wCAAwC7C,IAAQ,UAAU,EAAE;AAAA,IAAI8C,KAAK9B;AAAAA,EAAAA,GACnF4B,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAA,GACbD,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IACEC,WAAU;AAAA,IACVE,SAASA,MAAM;AACbtC,MAAAA,EAA4B,CAACD,CAAwB;AAAA,IAAA;AAAA,EACvD,GAEAoC,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IACEI,KAAK,uBAAuB9B,KAAAA,gBAAAA,EAAaY,KAAKF,aAAa;AAAA,IAC3DqB,KAAK/B,KAAAA,gBAAAA,EAAaS;AAAAA,IAClBuB,OAAM;AAAA,EACP,CAAA,GACAhC,KAAAA,gBAAAA,EAAaX,WACdoC,gBAAAA,EAAAC,cAACO,GAAI;AAAA,IAACxB,MAAK;AAAA,IAAUkB,WAAYrC,IAAgC,eAAL;AAAA,EAAoB,CAAA,CAC7E,GACLmC,gBAAAA,EAAAC,cAAA,QAAA;AAAA,IAAMC,WAAU;AAAA,EAAA,CAAW,GAC3BD,gBAAAA,EAAAA,cAAA,SAAA;AAAA,IACEQ,MAAK;AAAA,IACLC,aAAY;AAAA,IACZR,WAAU;AAAA,IACVS,UAAW/B,CAAAA,MAAUgB,EAA0BhB,EAAMC,OAAOtB,KAAK;AAAA,IACjEA,OAAOY;AAAAA,IACPyC,SAAQ;AAAA,EACT,CAAA,CACE,GAEJ/C,KACCmC,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAA,GACbD,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAA,GACbD,gBAAAA,EAAAA,cAACO,GAAI;AAAA,IAACxB,MAAK;AAAA,IAASkB,WAAU;AAAA,EAAA,CAAe,GAC7CD,gBAAAA,EAAAA,cAAA,SAAA;AAAA,IACEQ,MAAK;AAAA,IACLC,aAAY;AAAA,IACZR,WAAU;AAAA,IACVS,UAAUhC;AAAAA,IACVpB,OAAOU;AAAAA,EACR,CAAA,CACE,GACJF,EAAc8C,SAAS,IACtB9C,EAAc+C,IAAKrC,CAAAA,MACjBwB,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IACEc,KAAKtC,EAAQU;AAAAA,IACbe,WAAU;AAAA,IACVE,SAASA,MAAM1B,EAAwBD,EAAQb,SAAS;AAAA,EAAA,GAExDqC,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKI,KAAK,uBAAuB5B,EAAQU,KAAKF,YAAa,CAAA;AAAA,IAAQqB,KAAK7B,EAAQO;AAAAA,IAAMuB,OAAM;AAAA,EAAA,CAAM,GAClGN,gBAAAA,EAAAA,cAAA,QAAA,MAAOxB,EAAQO,IAAW,GAC1BiB,gBAAAA,EAAAA,cAAM,QAAA,MAAA,KAAExB,EAAQb,WAAU,GAAO,CAC9B,CACN,IAEDqC,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAA,GAAmE,kBAAqB,CAEtG,CAEJ,GACJ7C,KAAS2C,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAe,GAAE5C,CAAkB,CACzD;AAET;"}
package/dist/index45.js CHANGED
@@ -1,33 +1,41 @@
1
- import f from "react";
2
- const p = ({
3
- size: r = 40,
4
- text: e,
5
- textColor: s = "var(--color-white)",
6
- backgroundColor: c = "var(--color-gray-400)",
7
- className: n = "",
8
- onClick: o
1
+ import o from "react";
2
+ const m = ({
3
+ progress: a,
4
+ backgroundColor: n = "#E8E8E8",
5
+ progressColor: s = "#0066FF",
6
+ size: e = 40,
7
+ strokeWidth: r = 4
9
8
  }) => {
10
- var t, a, i, l;
11
- const u = (l = (i = (a = (t = e == null ? void 0 : e.split(" ")) == null ? void 0 : t.map((d) => d[0])) == null ? void 0 : a.join("")) == null ? void 0 : i.toUpperCase()) == null ? void 0 : l.slice(0, 3);
12
- return /* @__PURE__ */ f.createElement("div", {
13
- className: `
14
- se-design-avatar
15
- flex items-center justify-center
16
- rounded-full font-medium
17
- ${o ? "cursor-pointer" : "cursor-default"}
18
- ${n}
19
- `,
20
- onClick: o,
9
+ const t = (e - r) / 2, c = t * 2 * Math.PI, l = c - a / 100 * c;
10
+ return /* @__PURE__ */ o.createElement("svg", {
11
+ width: e,
12
+ height: e,
21
13
  style: {
22
- width: r,
23
- height: r,
24
- backgroundColor: c,
25
- color: s,
26
- fontSize: `${r * 0.4}px`
14
+ transform: "rotate(-90deg)"
27
15
  }
28
- }, u);
16
+ }, /* @__PURE__ */ o.createElement("circle", {
17
+ cx: e / 2,
18
+ cy: e / 2,
19
+ r: t,
20
+ stroke: n,
21
+ strokeWidth: r,
22
+ fill: "none"
23
+ }), /* @__PURE__ */ o.createElement("circle", {
24
+ cx: e / 2,
25
+ cy: e / 2,
26
+ r: t,
27
+ stroke: s,
28
+ strokeWidth: r,
29
+ strokeDasharray: c,
30
+ strokeDashoffset: l,
31
+ fill: "none",
32
+ strokeLinecap: "round",
33
+ style: {
34
+ transition: "stroke-dashoffset 0.3s ease"
35
+ }
36
+ }));
29
37
  };
30
38
  export {
31
- p as Avatar
39
+ m as CircularProgressBar
32
40
  };
33
41
  //# sourceMappingURL=index45.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index45.js","sources":["../src/components/Avatar/index.tsx"],"sourcesContent":["import React, { FC } from 'react';\n\nexport type AvatarProps = {\n size?: number;\n text: string;\n textColor?: string;\n backgroundColor?: string;\n className?: string;\n onClick?: () => void;\n};\n\nexport const Avatar: FC<AvatarProps> = ({\n size = 40,\n text,\n textColor = 'var(--color-white)',\n backgroundColor = 'var(--color-gray-400)',\n className = '',\n onClick\n}) => {\n const initials = text\n ?.split(' ')\n ?.map((word) => word[0])\n ?.join('')\n ?.toUpperCase()\n ?.slice(0, 3);\n\n return (\n <div\n className={`\n se-design-avatar \n flex items-center justify-center \n rounded-full font-medium\n ${onClick ? 'cursor-pointer' : 'cursor-default'}\n ${className}\n `}\n onClick={onClick}\n style={{\n width: size,\n height: size,\n backgroundColor: backgroundColor,\n color: textColor,\n fontSize: `${size * 0.4}px`\n }}\n >\n {initials}\n </div>\n );\n};\n"],"names":["Avatar","size","text","textColor","backgroundColor","className","onClick","initials","split","map","word","join","toUpperCase","slice","React","createElement","style","width","height","color","fontSize"],"mappings":";AAWO,MAAMA,IAA0BA,CAAC;AAAA,EACtCC,MAAAA,IAAO;AAAA,EACPC,MAAAA;AAAAA,EACAC,WAAAA,IAAY;AAAA,EACZC,iBAAAA,IAAkB;AAAA,EAClBC,WAAAA,IAAY;AAAA,EACZC,SAAAA;AACF,MAAM;;AACJ,QAAMC,KAAWL,KAAAA,KAAAA,KAAAA,IAAAA,KAAAA,gBAAAA,EACbM,MAAM,SADON,gBAAAA,EAEbO,IAAKC,OAASA,EAAK,CAAC,OAFPR,gBAAAA,EAGbS,KAAK,QAHQT,gBAAAA,EAIbU,kBAJaV,gBAAAA,EAKbW,MAAM,GAAG;AAGXC,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IACEV,WAAW;AAAA;AAAA;AAAA;AAAA,UAIPC,IAAU,mBAAmB,gBAAgB;AAAA,UAC7CD,CAAS;AAAA;AAAA,IAEbC,SAAAA;AAAAA,IACAU,OAAO;AAAA,MACLC,OAAOhB;AAAAA,MACPiB,QAAQjB;AAAAA,MACRG,iBAAAA;AAAAA,MACAe,OAAOhB;AAAAA,MACPiB,UAAU,GAAGnB,IAAO,GAAG;AAAA,IAAA;AAAA,KAGxBM,CACE;AAET;"}
1
+ {"version":3,"file":"index45.js","sources":["../src/components/CircularProgressBar/index.tsx"],"sourcesContent":["import React from 'react';\n\ninterface CircularProgressBarProps {\n progress: number;\n backgroundColor?: string;\n progressColor?: string;\n size?: number;\n strokeWidth?: number;\n}\n\nexport const CircularProgressBar = ({\n progress,\n backgroundColor = '#E8E8E8',\n progressColor = '#0066FF',\n size = 40,\n strokeWidth = 4\n}: CircularProgressBarProps) => {\n const radius = (size - strokeWidth) / 2;\n const circumference = radius * 2 * Math.PI;\n const strokeDashoffset = circumference - (progress / 100) * circumference;\n\n return (\n <svg width={size} height={size} style={{ transform: 'rotate(-90deg)' }}>\n {/* Background circle */}\n <circle cx={size / 2} cy={size / 2} r={radius} stroke={backgroundColor} strokeWidth={strokeWidth} fill=\"none\" />\n {/* Progress circle */}\n <circle\n cx={size / 2}\n cy={size / 2}\n r={radius}\n stroke={progressColor}\n strokeWidth={strokeWidth}\n strokeDasharray={circumference}\n strokeDashoffset={strokeDashoffset}\n fill=\"none\"\n strokeLinecap=\"round\"\n style={{ transition: 'stroke-dashoffset 0.3s ease' }}\n />\n </svg>\n );\n};\n"],"names":["CircularProgressBar","progress","backgroundColor","progressColor","size","strokeWidth","radius","circumference","Math","PI","strokeDashoffset","React","createElement","width","height","style","transform","cx","cy","r","stroke","fill","strokeDasharray","strokeLinecap","transition"],"mappings":";AAUO,MAAMA,IAAsBA,CAAC;AAAA,EAClCC,UAAAA;AAAAA,EACAC,iBAAAA,IAAkB;AAAA,EAClBC,eAAAA,IAAgB;AAAA,EAChBC,MAAAA,IAAO;AAAA,EACPC,aAAAA,IAAc;AACU,MAAM;AACxBC,QAAAA,KAAUF,IAAOC,KAAe,GAChCE,IAAgBD,IAAS,IAAIE,KAAKC,IAClCC,IAAmBH,IAAiBN,IAAW,MAAOM;AAG1DI,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,OAAOT;AAAAA,IAAMU,QAAQV;AAAAA,IAAMW,OAAO;AAAA,MAAEC,WAAW;AAAA,IAAA;AAAA,EAAiB,GAEnEJ,gBAAAA,EAAAA,cAAA,UAAA;AAAA,IAAQK,IAAIb,IAAO;AAAA,IAAGc,IAAId,IAAO;AAAA,IAAGe,GAAGb;AAAAA,IAAQc,QAAQlB;AAAAA,IAAiBG,aAAAA;AAAAA,IAA0BgB,MAAK;AAAA,EAAA,CAAQ,GAE/GT,gBAAAA,EAAAA,cAAA,UAAA;AAAA,IACEK,IAAIb,IAAO;AAAA,IACXc,IAAId,IAAO;AAAA,IACXe,GAAGb;AAAAA,IACHc,QAAQjB;AAAAA,IACRE,aAAAA;AAAAA,IACAiB,iBAAiBf;AAAAA,IACjBG,kBAAAA;AAAAA,IACAW,MAAK;AAAA,IACLE,eAAc;AAAA,IACdR,OAAO;AAAA,MAAES,YAAY;AAAA,IAAA;AAAA,EAA8B,CACpD,CACE;AAET;"}
package/dist/index46.js CHANGED
@@ -1,33 +1,33 @@
1
- import e, { useState as y, useEffect as E } from "react";
2
- const k = ({
3
- defaultActiveNavigationItem: l,
4
- navigationItems: c,
5
- onNavigationItemChange: s
1
+ import f from "react";
2
+ const p = ({
3
+ size: r = 40,
4
+ text: e,
5
+ textColor: s = "var(--color-white)",
6
+ backgroundColor: c = "var(--color-gray-400)",
7
+ className: n = "",
8
+ onClick: o
6
9
  }) => {
7
- const x = l || (c[0] ? c[0].id : ""), [d, o] = y(x);
8
- E(() => {
9
- o(l || "");
10
- }, [l]);
11
- const f = (r) => {
12
- o(r == null ? void 0 : r.id), s == null || s(r == null ? void 0 : r.id);
13
- }, u = (r, b) => r.id === b;
14
- return /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement("div", {
15
- className: "se-design-navigation-bar flex items-center gap-4"
16
- }, c.map((r) => {
17
- const b = d === r.id, p = r.disabled;
18
- return /* @__PURE__ */ e.createElement("div", {
19
- key: r.label,
20
- onClick: () => !p && f(r),
21
- className: `text-base ${p ? "text-[var(--color-gray-400)] cursor-not-allowed" : b ? "text-[var(--color-gray-900)] font-bold hover:cursor-pointer" : "text-[var(--color-gray-700)] font-normal hover:text-[var(--color-gray-900)] cursor-pointer"}`
22
- }, r.label);
23
- })), /* @__PURE__ */ e.createElement("div", {
24
- className: "se-design-navigation-bar-content"
25
- }, c.map((r) => /* @__PURE__ */ e.createElement("div", {
26
- key: r.id,
27
- className: `navigation-item-content ${u(r, d) ? "block" : "hidden"}`
28
- }, u(r, d) && (r == null ? void 0 : r.renderNavigationItemContent) && (r == null ? void 0 : r.renderNavigationItemContent(r))))));
10
+ var t, a, i, l;
11
+ const u = (l = (i = (a = (t = e == null ? void 0 : e.split(" ")) == null ? void 0 : t.map((d) => d[0])) == null ? void 0 : a.join("")) == null ? void 0 : i.toUpperCase()) == null ? void 0 : l.slice(0, 3);
12
+ return /* @__PURE__ */ f.createElement("div", {
13
+ className: `
14
+ se-design-avatar
15
+ flex items-center justify-center
16
+ rounded-full font-medium
17
+ ${o ? "cursor-pointer" : "cursor-default"}
18
+ ${n}
19
+ `,
20
+ onClick: o,
21
+ style: {
22
+ width: r,
23
+ height: r,
24
+ backgroundColor: c,
25
+ color: s,
26
+ fontSize: `${r * 0.4}px`
27
+ }
28
+ }, u);
29
29
  };
30
30
  export {
31
- k as NavigationBar
31
+ p as Avatar
32
32
  };
33
33
  //# sourceMappingURL=index46.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index46.js","sources":["../src/components/NavigationBar/index.tsx"],"sourcesContent":["import React, { FC, ReactNode, useState, useEffect } from 'react';\n\ninterface NavigationItemProps {\n label: string;\n id: string;\n disabled?: boolean;\n renderNavigationItemContent?: (navigationItem: NavigationItemProps) => ReactNode;\n}\n\ninterface NavigationBarProps {\n defaultActiveNavigationItem?: string;\n navigationItems: NavigationItemProps[];\n onNavigationItemChange?: (navigationItemId: string) => void;\n}\n\nexport const NavigationBar: FC<NavigationBarProps> = ({\n defaultActiveNavigationItem,\n navigationItems,\n onNavigationItemChange\n}) => {\n const defaultNavigationItemId = defaultActiveNavigationItem || (navigationItems[0] ? navigationItems[0].id : '');\n const [activeNavigationItem, setActiveNavigationItem] = useState(defaultNavigationItemId);\n\n useEffect(() => {\n setActiveNavigationItem(defaultActiveNavigationItem || '');\n }, [defaultActiveNavigationItem]);\n\n const handleNavigationItemClick = (navigationItem: NavigationItemProps) => {\n setActiveNavigationItem(navigationItem?.id);\n onNavigationItemChange?.(navigationItem?.id);\n };\n\n const isNavigationItemActive = (navigationItem: NavigationItemProps, activeNavigationItem: string) => {\n return navigationItem.id === activeNavigationItem;\n };\n\n return (\n <>\n <div className=\"se-design-navigation-bar flex items-center gap-4\">\n {navigationItems.map((navigationItem) => {\n const isActive = activeNavigationItem === navigationItem.id;\n const isDisabled = navigationItem.disabled;\n return (\n <div\n key={navigationItem.label}\n onClick={() => !isDisabled && handleNavigationItemClick(navigationItem)}\n className={`text-base ${\n isDisabled\n ? 'text-[var(--color-gray-400)] cursor-not-allowed'\n : isActive\n ? 'text-[var(--color-gray-900)] font-bold hover:cursor-pointer'\n : 'text-[var(--color-gray-700)] font-normal hover:text-[var(--color-gray-900)] cursor-pointer'\n }`}\n >\n {navigationItem.label}\n </div>\n );\n })}\n </div>\n\n <div className=\"se-design-navigation-bar-content\">\n {navigationItems.map((navigationItem) => (\n <div\n key={navigationItem.id}\n className={`navigation-item-content ${isNavigationItemActive(navigationItem, activeNavigationItem) ? 'block' : 'hidden'}`}\n >\n {isNavigationItemActive(navigationItem, activeNavigationItem) &&\n navigationItem?.renderNavigationItemContent &&\n navigationItem?.renderNavigationItemContent(navigationItem)}\n </div>\n ))}\n </div>\n </>\n );\n};\n"],"names":["NavigationBar","defaultActiveNavigationItem","navigationItems","onNavigationItemChange","defaultNavigationItemId","id","activeNavigationItem","setActiveNavigationItem","useState","useEffect","handleNavigationItemClick","navigationItem","isNavigationItemActive","createElement","React","Fragment","className","map","isActive","isDisabled","disabled","key","label","onClick","renderNavigationItemContent"],"mappings":";AAeO,MAAMA,IAAwCA,CAAC;AAAA,EACpDC,6BAAAA;AAAAA,EACAC,iBAAAA;AAAAA,EACAC,wBAAAA;AACF,MAAM;AACEC,QAAAA,IAA0BH,MAAgCC,EAAgB,CAAC,IAAIA,EAAgB,CAAC,EAAEG,KAAK,KACvG,CAACC,GAAsBC,CAAuB,IAAIC,EAASJ,CAAuB;AAExFK,EAAAA,EAAU,MAAM;AACdF,IAAAA,EAAwBN,KAA+B,EAAE;AAAA,EAAA,GACxD,CAACA,CAA2B,CAAC;AAE1BS,QAAAA,IAA4BA,CAACC,MAAwC;AACzEJ,IAAAA,EAAwBI,KAAAA,gBAAAA,EAAgBN,EAAE,GAC1CF,KAAAA,QAAAA,EAAyBQ,KAAAA,gBAAAA,EAAgBN;AAAAA,EAC3C,GAEMO,IAAyBA,CAACD,GAAqCL,MAC5DK,EAAeN,OAAOC;AAG/B,2BACEO,cAAAC,EAAAC,UAAA,MACED,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IAAKG,WAAU;AAAA,EAAA,GACZd,EAAgBe,IAAKN,CAAmBA,MAAA;AACjCO,UAAAA,IAAWZ,MAAyBK,EAAeN,IACnDc,IAAaR,EAAeS;AAEhCN,WAAAA,gBAAAA,EAAAD,cAAA,OAAA;AAAA,MACEQ,KAAKV,EAAeW;AAAAA,MACpBC,SAASA,MAAM,CAACJ,KAAcT,EAA0BC,CAAc;AAAA,MACtEK,WAAW,aACTG,IACI,oDACAD,IACE,gEACA,4FAA4F;AAAA,IAAA,GAGnGP,EAAeW,KACb;AAAA,EAER,CAAA,CACE,GAELR,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IAAKG,WAAU;AAAA,EAAA,GACZd,EAAgBe,IAAKN,CACpBG,MAAAA,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IACEQ,KAAKV,EAAeN;AAAAA,IACpBW,WAAW,2BAA2BJ,EAAuBD,GAAgBL,CAAoB,IAAI,UAAU,QAAQ;AAAA,EAEtHM,GAAAA,EAAuBD,GAAgBL,CAAoB,MAC1DK,KAAAA,gBAAAA,EAAgBa,iCAChBb,KAAAA,gBAAAA,EAAgBa,4BAA4Bb,GAC3C,CACN,CACE,CACL;AAEN;"}
1
+ {"version":3,"file":"index46.js","sources":["../src/components/Avatar/index.tsx"],"sourcesContent":["import React, { FC } from 'react';\n\nexport type AvatarProps = {\n size?: number;\n text: string;\n textColor?: string;\n backgroundColor?: string;\n className?: string;\n onClick?: () => void;\n};\n\nexport const Avatar: FC<AvatarProps> = ({\n size = 40,\n text,\n textColor = 'var(--color-white)',\n backgroundColor = 'var(--color-gray-400)',\n className = '',\n onClick\n}) => {\n const initials = text\n ?.split(' ')\n ?.map((word) => word[0])\n ?.join('')\n ?.toUpperCase()\n ?.slice(0, 3);\n\n return (\n <div\n className={`\n se-design-avatar \n flex items-center justify-center \n rounded-full font-medium\n ${onClick ? 'cursor-pointer' : 'cursor-default'}\n ${className}\n `}\n onClick={onClick}\n style={{\n width: size,\n height: size,\n backgroundColor: backgroundColor,\n color: textColor,\n fontSize: `${size * 0.4}px`\n }}\n >\n {initials}\n </div>\n );\n};\n"],"names":["Avatar","size","text","textColor","backgroundColor","className","onClick","initials","split","map","word","join","toUpperCase","slice","React","createElement","style","width","height","color","fontSize"],"mappings":";AAWO,MAAMA,IAA0BA,CAAC;AAAA,EACtCC,MAAAA,IAAO;AAAA,EACPC,MAAAA;AAAAA,EACAC,WAAAA,IAAY;AAAA,EACZC,iBAAAA,IAAkB;AAAA,EAClBC,WAAAA,IAAY;AAAA,EACZC,SAAAA;AACF,MAAM;;AACJ,QAAMC,KAAWL,KAAAA,KAAAA,KAAAA,IAAAA,KAAAA,gBAAAA,EACbM,MAAM,SADON,gBAAAA,EAEbO,IAAKC,OAASA,EAAK,CAAC,OAFPR,gBAAAA,EAGbS,KAAK,QAHQT,gBAAAA,EAIbU,kBAJaV,gBAAAA,EAKbW,MAAM,GAAG;AAGXC,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IACEV,WAAW;AAAA;AAAA;AAAA;AAAA,UAIPC,IAAU,mBAAmB,gBAAgB;AAAA,UAC7CD,CAAS;AAAA;AAAA,IAEbC,SAAAA;AAAAA,IACAU,OAAO;AAAA,MACLC,OAAOhB;AAAAA,MACPiB,QAAQjB;AAAAA,MACRG,iBAAAA;AAAAA,MACAe,OAAOhB;AAAAA,MACPiB,UAAU,GAAGnB,IAAO,GAAG;AAAA,IAAA;AAAA,KAGxBM,CACE;AAET;"}
package/dist/index47.js CHANGED
@@ -1,46 +1,33 @@
1
- import a, { useState as x } from "react";
2
- import { Icon as f } from "./index5.js";
3
- const w = ({
4
- crumbs: t,
5
- onCrumbClick: l,
6
- className: g
1
+ import e, { useState as y, useEffect as E } from "react";
2
+ const k = ({
3
+ defaultActiveNavigationItem: l,
4
+ navigationItems: c,
5
+ onNavigationItemChange: s
7
6
  }) => {
8
- const [o, i] = x(!1), s = (t == null ? void 0 : t.length) > 3, n = s ? t == null ? void 0 : t.slice(-2) : t, d = s ? t == null ? void 0 : t.slice(0, -2) : [];
9
- return /* @__PURE__ */ a.createElement("div", {
10
- className: `se-design-breadcrumbs flex items-center ${g}`,
11
- "aria-label": "Breadcrumb"
12
- }, s && /* @__PURE__ */ a.createElement("div", {
13
- className: "relative"
14
- }, /* @__PURE__ */ a.createElement("div", {
15
- onClick: () => i(!o),
16
- className: "p-1 hover:bg-gray-100 rounded-full"
17
- }, /* @__PURE__ */ a.createElement(f, {
18
- name: "kebab-menu"
19
- })), o && /* @__PURE__ */ a.createElement("div", {
20
- className: "se-design-breadcrumbs-dropdown absolute top-full left-0 mt-1 w-48 bg-white shadow-lg rounded-md py-1 z-10"
21
- }, d == null ? void 0 : d.map((e) => /* @__PURE__ */ a.createElement("p", {
22
- key: e == null ? void 0 : e.id,
23
- onClick: () => {
24
- l == null || l(e), i(!1);
25
- },
26
- className: "w-full text-left px-4 py-2 text-xl text-gray-500 cursor-pointer hover:bg-gray-100"
27
- }, e == null ? void 0 : e.label)))), /* @__PURE__ */ a.createElement("div", {
28
- className: "se-design-breadcrumbs-list inline-flex items-center"
29
- }, n == null ? void 0 : n.map((e, p) => /* @__PURE__ */ a.createElement("div", {
30
- key: e == null ? void 0 : e.id,
31
- className: "se-design-breadcrumbs-item inline-flex items-center w-fit"
32
- }, (p > 0 || s) && /* @__PURE__ */ a.createElement(f, {
33
- name: "chevron",
34
- rotation: "270"
35
- }), /* @__PURE__ */ a.createElement("p", {
36
- onClick: () => l == null ? void 0 : l(e),
37
- className: `
38
- inline-flex items-center w-fit text-xl
39
- ${p === (n == null ? void 0 : n.length) - 1 ? "text-black font-medium cursor-default" : "text-gray-500 hover:text-gray-700 cursor-pointer"}
40
- `
41
- }, e == null ? void 0 : e.label)))));
7
+ const x = l || (c[0] ? c[0].id : ""), [d, o] = y(x);
8
+ E(() => {
9
+ o(l || "");
10
+ }, [l]);
11
+ const f = (r) => {
12
+ o(r == null ? void 0 : r.id), s == null || s(r == null ? void 0 : r.id);
13
+ }, u = (r, b) => r.id === b;
14
+ return /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement("div", {
15
+ className: "se-design-navigation-bar flex items-center gap-4"
16
+ }, c.map((r) => {
17
+ const b = d === r.id, p = r.disabled;
18
+ return /* @__PURE__ */ e.createElement("div", {
19
+ key: r.label,
20
+ onClick: () => !p && f(r),
21
+ className: `text-base ${p ? "text-[var(--color-gray-400)] cursor-not-allowed" : b ? "text-[var(--color-gray-900)] font-bold hover:cursor-pointer" : "text-[var(--color-gray-700)] font-normal hover:text-[var(--color-gray-900)] cursor-pointer"}`
22
+ }, r.label);
23
+ })), /* @__PURE__ */ e.createElement("div", {
24
+ className: "se-design-navigation-bar-content"
25
+ }, c.map((r) => /* @__PURE__ */ e.createElement("div", {
26
+ key: r.id,
27
+ className: `navigation-item-content ${u(r, d) ? "block" : "hidden"}`
28
+ }, u(r, d) && (r == null ? void 0 : r.renderNavigationItemContent) && (r == null ? void 0 : r.renderNavigationItemContent(r))))));
42
29
  };
43
30
  export {
44
- w as BreadCrumbs
31
+ k as NavigationBar
45
32
  };
46
33
  //# sourceMappingURL=index47.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index47.js","sources":["../src/components/BreadCrumbs/index.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Icon } from '../Icon';\n\ninterface Crumb {\n id: string | number;\n label: string;\n}\n\ninterface BreadCrumbsProps {\n crumbs: Crumb[];\n onCrumbClick?: (crumb: Crumb) => void;\n className?: any;\n}\n\nexport const BreadCrumbs: React.FC<BreadCrumbsProps> = ({ crumbs, onCrumbClick, className }) => {\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n\n const shouldShowDropdown = crumbs?.length > 3;\n const visibleCrumbs = shouldShowDropdown ? crumbs?.slice(-2) : crumbs;\n const dropdownCrumbs = shouldShowDropdown ? crumbs?.slice(0, -2) : [];\n\n return (\n <div className={`se-design-breadcrumbs flex items-center ${className}`} aria-label=\"Breadcrumb\">\n {shouldShowDropdown && (\n <div className=\"relative\">\n <div onClick={() => setIsDropdownOpen(!isDropdownOpen)} className=\"p-1 hover:bg-gray-100 rounded-full\">\n <Icon name=\"kebab-menu\" />\n </div>\n\n {isDropdownOpen && (\n <div className=\"se-design-breadcrumbs-dropdown absolute top-full left-0 mt-1 w-48 bg-white shadow-lg rounded-md py-1 z-10\">\n {dropdownCrumbs?.map((crumb) => (\n <p\n key={crumb?.id}\n onClick={() => {\n onCrumbClick?.(crumb);\n setIsDropdownOpen(false);\n }}\n className=\"w-full text-left px-4 py-2 text-xl text-gray-500 cursor-pointer hover:bg-gray-100\"\n >\n {crumb?.label}\n </p>\n ))}\n </div>\n )}\n </div>\n )}\n\n <div className=\"se-design-breadcrumbs-list inline-flex items-center\">\n {visibleCrumbs?.map((crumb, index) => (\n <div key={crumb?.id} className=\"se-design-breadcrumbs-item inline-flex items-center w-fit\">\n {(index > 0 || shouldShowDropdown) && <Icon name=\"chevron\" rotation={\"270\"} />}\n <p\n onClick={() => onCrumbClick?.(crumb)}\n className={`\n inline-flex items-center w-fit text-xl\n ${\n index === visibleCrumbs?.length - 1\n ? 'text-black font-medium cursor-default'\n : 'text-gray-500 hover:text-gray-700 cursor-pointer'\n }\n `}\n >\n {crumb?.label}\n </p>\n </div>\n ))}\n </div>\n </div>\n );\n};\n"],"names":["BreadCrumbs","crumbs","onCrumbClick","className","isDropdownOpen","setIsDropdownOpen","useState","shouldShowDropdown","length","visibleCrumbs","slice","dropdownCrumbs","React","createElement","onClick","Icon","name","map","crumb","key","id","label","index","rotation"],"mappings":";;AAcO,MAAMA,IAA0CA,CAAC;AAAA,EAAEC,QAAAA;AAAAA,EAAQC,cAAAA;AAAAA,EAAcC,WAAAA;AAAU,MAAM;AAC9F,QAAM,CAACC,GAAgBC,CAAiB,IAAIC,EAAS,EAAK,GAEpDC,KAAqBN,KAAAA,gBAAAA,EAAQO,UAAS,GACtCC,IAAgBF,IAAqBN,KAAAA,gBAAAA,EAAQS,MAAM,MAAMT,GACzDU,IAAiBJ,IAAqBN,KAAAA,gBAAAA,EAAQS,MAAM,GAAG,MAAM,CAAE;AAGnEE,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKV,WAAW,2CAA2CA,CAAS;AAAA,IAAI,cAAW;AAAA,EAChFI,GAAAA,KACCM,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKV,WAAU;AAAA,EAAA,GACbU,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKC,SAASA,MAAMT,EAAkB,CAACD,CAAc;AAAA,IAAGD,WAAU;AAAA,EAAA,GAChEU,gBAAAA,EAAAA,cAACE,GAAI;AAAA,IAACC,MAAK;AAAA,EAAc,CAAA,CACtB,GAEJZ,KACCQ,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKV,WAAU;AAAA,EAAA,GACZQ,KAAAA,gBAAAA,EAAgBM,IAAKC,CACpBN,MAAAA,gBAAAA,EAAAC,cAAA,KAAA;AAAA,IACEM,KAAKD,KAAAA,gBAAAA,EAAOE;AAAAA,IACZN,SAASA,MAAM;AACbZ,MAAAA,KAAAA,QAAAA,EAAegB,IACfb,EAAkB,EAAK;AAAA,IACzB;AAAA,IACAF,WAAU;AAAA,EAAA,GAETe,KAAAA,gBAAAA,EAAOG,KACP,EAEF,CAEJ,GAGPR,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKV,WAAU;AAAA,EAAA,GACZM,KAAAA,gBAAAA,EAAeQ,IAAI,CAACC,GAAOI,MAC1BV,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKM,KAAKD,KAAAA,gBAAAA,EAAOE;AAAAA,IAAIjB,WAAU;AAAA,EAAA,IAC3BmB,IAAQ,KAAKf,MAAuBK,gBAAAA,EAAAC,cAACE,GAAI;AAAA,IAACC,MAAK;AAAA,IAAUO,UAAU;AAAA,EAAA,CAAQ,GAC7EV,gBAAAA,EAAAA,cAAA,KAAA;AAAA,IACEC,SAASA,MAAMZ,KAAAA,gBAAAA,EAAegB;AAAAA,IAC9Bf,WAAW;AAAA;AAAA,kBAGPmB,OAAUb,KAAAA,gBAAAA,EAAeD,UAAS,IAC9B,0CACA,kDAAkD;AAAA;AAAA,KAIzDU,KAAAA,gBAAAA,EAAOG,KACP,CACA,EAEJ,CACF;AAET;"}
1
+ {"version":3,"file":"index47.js","sources":["../src/components/NavigationBar/index.tsx"],"sourcesContent":["import React, { FC, ReactNode, useState, useEffect } from 'react';\n\ninterface NavigationItemProps {\n label: string;\n id: string;\n disabled?: boolean;\n renderNavigationItemContent?: (navigationItem: NavigationItemProps) => ReactNode;\n}\n\ninterface NavigationBarProps {\n defaultActiveNavigationItem?: string;\n navigationItems: NavigationItemProps[];\n onNavigationItemChange?: (navigationItemId: string) => void;\n}\n\nexport const NavigationBar: FC<NavigationBarProps> = ({\n defaultActiveNavigationItem,\n navigationItems,\n onNavigationItemChange\n}) => {\n const defaultNavigationItemId = defaultActiveNavigationItem || (navigationItems[0] ? navigationItems[0].id : '');\n const [activeNavigationItem, setActiveNavigationItem] = useState(defaultNavigationItemId);\n\n useEffect(() => {\n setActiveNavigationItem(defaultActiveNavigationItem || '');\n }, [defaultActiveNavigationItem]);\n\n const handleNavigationItemClick = (navigationItem: NavigationItemProps) => {\n setActiveNavigationItem(navigationItem?.id);\n onNavigationItemChange?.(navigationItem?.id);\n };\n\n const isNavigationItemActive = (navigationItem: NavigationItemProps, activeNavigationItem: string) => {\n return navigationItem.id === activeNavigationItem;\n };\n\n return (\n <>\n <div className=\"se-design-navigation-bar flex items-center gap-4\">\n {navigationItems.map((navigationItem) => {\n const isActive = activeNavigationItem === navigationItem.id;\n const isDisabled = navigationItem.disabled;\n return (\n <div\n key={navigationItem.label}\n onClick={() => !isDisabled && handleNavigationItemClick(navigationItem)}\n className={`text-base ${\n isDisabled\n ? 'text-[var(--color-gray-400)] cursor-not-allowed'\n : isActive\n ? 'text-[var(--color-gray-900)] font-bold hover:cursor-pointer'\n : 'text-[var(--color-gray-700)] font-normal hover:text-[var(--color-gray-900)] cursor-pointer'\n }`}\n >\n {navigationItem.label}\n </div>\n );\n })}\n </div>\n\n <div className=\"se-design-navigation-bar-content\">\n {navigationItems.map((navigationItem) => (\n <div\n key={navigationItem.id}\n className={`navigation-item-content ${isNavigationItemActive(navigationItem, activeNavigationItem) ? 'block' : 'hidden'}`}\n >\n {isNavigationItemActive(navigationItem, activeNavigationItem) &&\n navigationItem?.renderNavigationItemContent &&\n navigationItem?.renderNavigationItemContent(navigationItem)}\n </div>\n ))}\n </div>\n </>\n );\n};\n"],"names":["NavigationBar","defaultActiveNavigationItem","navigationItems","onNavigationItemChange","defaultNavigationItemId","id","activeNavigationItem","setActiveNavigationItem","useState","useEffect","handleNavigationItemClick","navigationItem","isNavigationItemActive","createElement","React","Fragment","className","map","isActive","isDisabled","disabled","key","label","onClick","renderNavigationItemContent"],"mappings":";AAeO,MAAMA,IAAwCA,CAAC;AAAA,EACpDC,6BAAAA;AAAAA,EACAC,iBAAAA;AAAAA,EACAC,wBAAAA;AACF,MAAM;AACEC,QAAAA,IAA0BH,MAAgCC,EAAgB,CAAC,IAAIA,EAAgB,CAAC,EAAEG,KAAK,KACvG,CAACC,GAAsBC,CAAuB,IAAIC,EAASJ,CAAuB;AAExFK,EAAAA,EAAU,MAAM;AACdF,IAAAA,EAAwBN,KAA+B,EAAE;AAAA,EAAA,GACxD,CAACA,CAA2B,CAAC;AAE1BS,QAAAA,IAA4BA,CAACC,MAAwC;AACzEJ,IAAAA,EAAwBI,KAAAA,gBAAAA,EAAgBN,EAAE,GAC1CF,KAAAA,QAAAA,EAAyBQ,KAAAA,gBAAAA,EAAgBN;AAAAA,EAC3C,GAEMO,IAAyBA,CAACD,GAAqCL,MAC5DK,EAAeN,OAAOC;AAG/B,2BACEO,cAAAC,EAAAC,UAAA,MACED,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IAAKG,WAAU;AAAA,EAAA,GACZd,EAAgBe,IAAKN,CAAmBA,MAAA;AACjCO,UAAAA,IAAWZ,MAAyBK,EAAeN,IACnDc,IAAaR,EAAeS;AAEhCN,WAAAA,gBAAAA,EAAAD,cAAA,OAAA;AAAA,MACEQ,KAAKV,EAAeW;AAAAA,MACpBC,SAASA,MAAM,CAACJ,KAAcT,EAA0BC,CAAc;AAAA,MACtEK,WAAW,aACTG,IACI,oDACAD,IACE,gEACA,4FAA4F;AAAA,IAAA,GAGnGP,EAAeW,KACb;AAAA,EAER,CAAA,CACE,GAELR,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IAAKG,WAAU;AAAA,EAAA,GACZd,EAAgBe,IAAKN,CACpBG,MAAAA,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IACEQ,KAAKV,EAAeN;AAAAA,IACpBW,WAAW,2BAA2BJ,EAAuBD,GAAgBL,CAAoB,IAAI,UAAU,QAAQ;AAAA,EAEtHM,GAAAA,EAAuBD,GAAgBL,CAAoB,MAC1DK,KAAAA,gBAAAA,EAAgBa,iCAChBb,KAAAA,gBAAAA,EAAgBa,4BAA4Bb,GAC3C,CACN,CACE,CACL;AAEN;"}