se-design 0.0.107 → 0.0.109

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 (260) hide show
  1. package/dist/assets/icons/rounded-plus.svg +11 -0
  2. package/dist/assets/style.css +1 -1
  3. package/dist/components/Avatar/index.d.ts +10 -0
  4. package/dist/components/Button/index.d.ts +1 -1
  5. package/dist/components/CustomModal/index.d.ts +9 -0
  6. package/dist/components/Dropdown/index.d.ts +1 -0
  7. package/dist/components/LoadingModal/index.d.ts +5 -0
  8. package/dist/components/Spinner/index.d.ts +2 -0
  9. package/dist/components/index.d.ts +4 -0
  10. package/dist/index.js +70 -62
  11. package/dist/index.js.map +1 -1
  12. package/dist/index10.js +16 -30
  13. package/dist/index10.js.map +1 -1
  14. package/dist/index100.js +5 -0
  15. package/dist/index100.js.map +1 -0
  16. package/dist/index101.js +5 -0
  17. package/dist/index101.js.map +1 -0
  18. package/dist/index102.js +152 -0
  19. package/dist/index102.js.map +1 -0
  20. package/dist/index11.js +14 -29
  21. package/dist/index11.js.map +1 -1
  22. package/dist/index118.js +1233 -6
  23. package/dist/index118.js.map +1 -1
  24. package/dist/index119.js +7 -35
  25. package/dist/index119.js.map +1 -1
  26. package/dist/index12.js +6 -19
  27. package/dist/index12.js.map +1 -1
  28. package/dist/index120.js +10 -2
  29. package/dist/index120.js.map +1 -1
  30. package/dist/index121.js +4 -7
  31. package/dist/index121.js.map +1 -1
  32. package/dist/index122.js +165 -322
  33. package/dist/index122.js.map +1 -1
  34. package/dist/index123.js +11 -50
  35. package/dist/index123.js.map +1 -1
  36. package/dist/index124.js +6 -2
  37. package/dist/index124.js.map +1 -1
  38. package/dist/index125.js +5 -75
  39. package/dist/index125.js.map +1 -1
  40. package/dist/index126.js +37 -92
  41. package/dist/index126.js.map +1 -1
  42. package/dist/index127.js +2 -52
  43. package/dist/index127.js.map +1 -1
  44. package/dist/index128.js +7 -7
  45. package/dist/index128.js.map +1 -1
  46. package/dist/index129.js +326 -4
  47. package/dist/index129.js.map +1 -1
  48. package/dist/index13.js +30 -123
  49. package/dist/index13.js.map +1 -1
  50. package/dist/index130.js +47 -49
  51. package/dist/index130.js.map +1 -1
  52. package/dist/index131.js +2 -2
  53. package/dist/index132.js +76 -2
  54. package/dist/index132.js.map +1 -1
  55. package/dist/index133.js +96 -0
  56. package/dist/index133.js.map +1 -0
  57. package/dist/index134.js +55 -0
  58. package/dist/index134.js.map +1 -0
  59. package/dist/index135.js +11 -0
  60. package/dist/index135.js.map +1 -0
  61. package/dist/index136.js +8 -0
  62. package/dist/index136.js.map +1 -0
  63. package/dist/index137.js +55 -0
  64. package/dist/index137.js.map +1 -0
  65. package/dist/index138.js +5 -0
  66. package/dist/index138.js.map +1 -0
  67. package/dist/index139.js +5 -0
  68. package/dist/index139.js.map +1 -0
  69. package/dist/index14.js +30 -28
  70. package/dist/index14.js.map +1 -1
  71. package/dist/index15.js +19 -27
  72. package/dist/index15.js.map +1 -1
  73. package/dist/index16.js +116 -71
  74. package/dist/index16.js.map +1 -1
  75. package/dist/index17.js +28 -38
  76. package/dist/index17.js.map +1 -1
  77. package/dist/index18.js +26 -22
  78. package/dist/index18.js.map +1 -1
  79. package/dist/index19.js +77 -67
  80. package/dist/index19.js.map +1 -1
  81. package/dist/index20.js +36 -132
  82. package/dist/index20.js.map +1 -1
  83. package/dist/index21.js +20 -16
  84. package/dist/index21.js.map +1 -1
  85. package/dist/index22.js +67 -44
  86. package/dist/index22.js.map +1 -1
  87. package/dist/index23.js +133 -28
  88. package/dist/index23.js.map +1 -1
  89. package/dist/index24.js +15 -60
  90. package/dist/index24.js.map +1 -1
  91. package/dist/index25.js +44 -41
  92. package/dist/index25.js.map +1 -1
  93. package/dist/index26.js +28 -97
  94. package/dist/index26.js.map +1 -1
  95. package/dist/index27.js +61 -55
  96. package/dist/index27.js.map +1 -1
  97. package/dist/index28.js +42 -38
  98. package/dist/index28.js.map +1 -1
  99. package/dist/index29.js +95 -31
  100. package/dist/index29.js.map +1 -1
  101. package/dist/index3.js +2 -2
  102. package/dist/index3.js.map +1 -1
  103. package/dist/index30.js +58 -33
  104. package/dist/index30.js.map +1 -1
  105. package/dist/index31.js +36 -44
  106. package/dist/index31.js.map +1 -1
  107. package/dist/index32.js +35 -38
  108. package/dist/index32.js.map +1 -1
  109. package/dist/index33.js +29 -30
  110. package/dist/index33.js.map +1 -1
  111. package/dist/index34.js +44 -49
  112. package/dist/index34.js.map +1 -1
  113. package/dist/index35.js +36 -69
  114. package/dist/index35.js.map +1 -1
  115. package/dist/index36.js +27 -47
  116. package/dist/index36.js.map +1 -1
  117. package/dist/index37.js +48 -68
  118. package/dist/index37.js.map +1 -1
  119. package/dist/index38.js +67 -83
  120. package/dist/index38.js.map +1 -1
  121. package/dist/index39.js +48 -32
  122. package/dist/index39.js.map +1 -1
  123. package/dist/index4.js +79 -77
  124. package/dist/index4.js.map +1 -1
  125. package/dist/index40.js +74 -2
  126. package/dist/index40.js.map +1 -1
  127. package/dist/index41.js +87 -2
  128. package/dist/index41.js.map +1 -1
  129. package/dist/index42.js +38 -2
  130. package/dist/index42.js.map +1 -1
  131. package/dist/index43.js +29 -2
  132. package/dist/index43.js.map +1 -1
  133. package/dist/index44.js +1 -1
  134. package/dist/index44.js.map +1 -1
  135. package/dist/index45.js +1 -1
  136. package/dist/index45.js.map +1 -1
  137. package/dist/index46.js +1 -1
  138. package/dist/index46.js.map +1 -1
  139. package/dist/index47.js +1 -1
  140. package/dist/index47.js.map +1 -1
  141. package/dist/index48.js +1 -1
  142. package/dist/index48.js.map +1 -1
  143. package/dist/index49.js +1 -1
  144. package/dist/index49.js.map +1 -1
  145. package/dist/index5.js +1 -1
  146. package/dist/index50.js +1 -1
  147. package/dist/index50.js.map +1 -1
  148. package/dist/index51.js +1 -1
  149. package/dist/index51.js.map +1 -1
  150. package/dist/index52.js +1 -1
  151. package/dist/index52.js.map +1 -1
  152. package/dist/index53.js +1 -1
  153. package/dist/index53.js.map +1 -1
  154. package/dist/index54.js +1 -1
  155. package/dist/index54.js.map +1 -1
  156. package/dist/index55.js +2 -2
  157. package/dist/index55.js.map +1 -1
  158. package/dist/index56.js +1 -1
  159. package/dist/index56.js.map +1 -1
  160. package/dist/index57.js +1 -1
  161. package/dist/index57.js.map +1 -1
  162. package/dist/index58.js +1 -1
  163. package/dist/index58.js.map +1 -1
  164. package/dist/index59.js +2 -2
  165. package/dist/index59.js.map +1 -1
  166. package/dist/index60.js +1 -1
  167. package/dist/index60.js.map +1 -1
  168. package/dist/index61.js +2 -2
  169. package/dist/index61.js.map +1 -1
  170. package/dist/index62.js +1 -1
  171. package/dist/index62.js.map +1 -1
  172. package/dist/index63.js +1 -1
  173. package/dist/index63.js.map +1 -1
  174. package/dist/index64.js +1 -1
  175. package/dist/index64.js.map +1 -1
  176. package/dist/index65.js +2 -2
  177. package/dist/index65.js.map +1 -1
  178. package/dist/index66.js +1 -1
  179. package/dist/index66.js.map +1 -1
  180. package/dist/index67.js +1 -1
  181. package/dist/index67.js.map +1 -1
  182. package/dist/index68.js +1 -1
  183. package/dist/index68.js.map +1 -1
  184. package/dist/index69.js +1 -1
  185. package/dist/index69.js.map +1 -1
  186. package/dist/index70.js +1 -1
  187. package/dist/index70.js.map +1 -1
  188. package/dist/index71.js +1 -1
  189. package/dist/index71.js.map +1 -1
  190. package/dist/index72.js +1 -1
  191. package/dist/index72.js.map +1 -1
  192. package/dist/index73.js +1 -1
  193. package/dist/index73.js.map +1 -1
  194. package/dist/index74.js +1 -1
  195. package/dist/index74.js.map +1 -1
  196. package/dist/index75.js +1 -1
  197. package/dist/index75.js.map +1 -1
  198. package/dist/index76.js +1 -1
  199. package/dist/index76.js.map +1 -1
  200. package/dist/index77.js +1 -1
  201. package/dist/index77.js.map +1 -1
  202. package/dist/index78.js +2 -2
  203. package/dist/index78.js.map +1 -1
  204. package/dist/index79.js +2 -2
  205. package/dist/index79.js.map +1 -1
  206. package/dist/index80.js +1 -1
  207. package/dist/index80.js.map +1 -1
  208. package/dist/index81.js +1 -1
  209. package/dist/index81.js.map +1 -1
  210. package/dist/index82.js +2 -2
  211. package/dist/index82.js.map +1 -1
  212. package/dist/index83.js +2 -2
  213. package/dist/index83.js.map +1 -1
  214. package/dist/index84.js +2 -2
  215. package/dist/index84.js.map +1 -1
  216. package/dist/index85.js +1 -1
  217. package/dist/index85.js.map +1 -1
  218. package/dist/index86.js +1 -1
  219. package/dist/index86.js.map +1 -1
  220. package/dist/index87.js +2 -2
  221. package/dist/index87.js.map +1 -1
  222. package/dist/index88.js +1 -1
  223. package/dist/index88.js.map +1 -1
  224. package/dist/index89.js +1 -1
  225. package/dist/index89.js.map +1 -1
  226. package/dist/index90.js +1 -1
  227. package/dist/index90.js.map +1 -1
  228. package/dist/index91.js +1 -1
  229. package/dist/index91.js.map +1 -1
  230. package/dist/index92.js +2 -2
  231. package/dist/index92.js.map +1 -1
  232. package/dist/index93.js +1 -1
  233. package/dist/index93.js.map +1 -1
  234. package/dist/index94.js +2 -2
  235. package/dist/index94.js.map +1 -1
  236. package/dist/index95.js +1 -1
  237. package/dist/index95.js.map +1 -1
  238. package/dist/index96.js +2 -2
  239. package/dist/index96.js.map +1 -1
  240. package/dist/index97.js +2 -149
  241. package/dist/index97.js.map +1 -1
  242. package/dist/index98.js +5 -0
  243. package/dist/index98.js.map +1 -0
  244. package/dist/index99.js +5 -0
  245. package/dist/index99.js.map +1 -0
  246. package/package.json +1 -1
  247. package/dist/index111.js +0 -1236
  248. package/dist/index111.js.map +0 -1
  249. package/dist/index112.js +0 -13
  250. package/dist/index112.js.map +0 -1
  251. package/dist/index113.js +0 -13
  252. package/dist/index113.js.map +0 -1
  253. package/dist/index114.js +0 -8
  254. package/dist/index114.js.map +0 -1
  255. package/dist/index115.js +0 -173
  256. package/dist/index115.js.map +0 -1
  257. package/dist/index116.js +0 -14
  258. package/dist/index116.js.map +0 -1
  259. package/dist/index117.js +0 -9
  260. package/dist/index117.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index29.js","sources":["../src/components/Accordion/index.tsx"],"sourcesContent":["import React, { FC, useEffect, useState } from 'react';\nimport { Icon } from '../Icon';\n\nexport interface AccordionProps {\n title: string;\n titleClassName?: string;\n content: React.ReactNode;\n defaultOpen?: boolean;\n showSeparator?: boolean;\n overflow?: 'hidden' | 'visible' | 'scroll' | 'auto' | undefined | string;\n}\n\nexport const Accordion: FC<AccordionProps> = ({\n title,\n content,\n defaultOpen,\n overflow,\n titleClassName = '',\n showSeparator = true\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n useEffect(() => {\n setIsOpen(defaultOpen || false);\n }, [defaultOpen]);\n return (\n <div>\n <div className=\"flex items-center cursor-pointer max-w-[50vw]\" onClick={() => setIsOpen(!isOpen)}>\n <div className={`transform transition-transform duration-300 ${isOpen ? 'rotate-90' : ''}`}>\n <Icon name=\"rightSide\" />\n </div>\n <h4 className={`text-[#1B2636] font-inter text-[18px] font-semibold leading-[24px] ${titleClassName}`}>\n {title}\n </h4>\n </div>\n <div\n className={`\n overflow-${overflow || 'hidden'}\n transition-all\n duration-300\n ml-1\n mt-[1vw]\n ${isOpen ? 'max-h-[1000vh] opacity-100 visible h-auto' : 'max-h-0 opacity-0 invisible h-0'}`}\n >\n {content}\n </div>\n {showSeparator && <div className={`h-[1px] bg-[#E5E7EB] ${!isOpen ? 'block' : 'hidden'}`}></div>}\n </div>\n );\n};\n"],"names":["Accordion","title","content","defaultOpen","overflow","titleClassName","showSeparator","isOpen","setIsOpen","useState","useEffect","createElement","React","className","onClick","Icon","name"],"mappings":";;AAYO,MAAMA,IAAgCA,CAAC;AAAA,EAC5CC,OAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,aAAAA;AAAAA,EACAC,UAAAA;AAAAA,EACAC,gBAAAA,IAAiB;AAAA,EACjBC,eAAAA,IAAgB;AAClB,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK;AAC1CC,SAAAA,EAAU,MAAM;AACdF,IAAAA,EAAUL,KAAe,EAAK;AAAA,EAAA,GAC7B,CAACA,CAAW,CAAC,qBAEdQ,cACEC,OAAAA,MAAAA,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IAAKE,WAAU;AAAA,IAAgDC,SAASA,MAAMN,EAAU,CAACD,CAAM;AAAA,EAAA,GAC7FI,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKE,WAAW,+CAA+CN,IAAS,cAAc,EAAE;AAAA,EAAA,GACtFI,gBAAAA,EAAAA,cAACI,GAAI;AAAA,IAACC,MAAK;AAAA,EAAa,CAAA,CACrB,GACLJ,gBAAAA,EAAAD,cAAA,MAAA;AAAA,IAAIE,WAAW,sEAAsER,CAAc;AAAA,KAChGJ,CACC,CACD,GACLW,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IACEE,WAAW;AAAA,mBACAT,KAAY,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,UAK7BG,IAAS,8CAA8C,iCAAiC;AAAA,KAEzFL,CACE,GACJI,KAAiBM,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IAAKE,WAAW,wBAAyBN,IAAmB,WAAV,OAAkB;AAAA,EAAA,CAAS,CAC5F;AAET;"}
1
+ {"version":3,"file":"index29.js","sources":["../src/components/Widget/index.tsx"],"sourcesContent":["import React, { FC } from \"react\";\nimport { Map } from \"../../utils/common.types\";\nimport { Button } from \"../Button\";\nimport { Badge } from \"../Badge\";\nimport { Icon } from \"../Icon\";\nimport \"./style.scss\";\n\nexport interface WidgetProps {\n widgetClassName?: string;\n widgetType?: \"promotion\" | \"webinar\" | \"request-feature\" | \"general\";\n widgetTitle?: string;\n hasBadge?: boolean;\n webinarSpeaker?: string;\n badgeText?: string;\n widgetDescription?: string;\n webinarDateInfo?: string;\n hasImage?: boolean;\n widgetImage?: string;\n hasButtonCta?: boolean;\n buttonBgColor?: 'primary' | 'secondary';\n hasLinkCta?: boolean;\n ctaText?: string;\n onCtaClick?: () => void;\n onWidgetClick?: () => void;\n}\n\nconst className: Map = {\n widgetCtn: 'flex flex-col gap-[2px] align-center border border-[var(--color-gray-200)] rounded-[12px] w-[385px]',\n widgetImageCtn: 'cursor-pointer',\n descriptionCtn: 'p-4 flex flex-col',\n widgetTitle: 'text-[var(--color-gray-900)] mt-[4px] mb-[8px]',\n widgetDescription: 'text-[var(--color-gray-700)] mb-[4px]',\n widgetLinkCta: 'text-[var(--color-blue-500)] cursor-pointer hover:text-[var(--color-blue-600)]',\n widgetButtonCta: 'self-start',\n widgetBadge: 'w-fit',\n webinarInfoCtn: 'flex flex-col gap-2',\n webinarSpeaker: 'text-[var(--color-gray-700)]',\n webinarDate: 'text-[var(--color-gray-700)]',\n webinarDescriptionInfo: 'flex gap-2',\n webinarTimeInfo: 'flex gap-2',\n requestFeatureCtn: 'flex gap-[12px]',\n requestFeatureImageCtn: 'w-[48px] h-[48px] border border-[var(--color-gray-200)] rounded-[50%] flex items-center flex-shrink-0 bg-[var(--color-red-50)]',\n requestFeatureDescriptionCtn: 'flex flex-col',\n};\n\nexport const Widget: FC<WidgetProps> = ({\n widgetClassName = \"\",\n widgetType,\n widgetTitle,\n widgetDescription,\n widgetImage,\n hasImage = false,\n hasButtonCta = false,\n hasLinkCta = false,\n ctaText = \"\",\n hasBadge = false,\n badgeText = \"\",\n buttonBgColor = 'secondary',\n onCtaClick,\n onWidgetClick,\n webinarDateInfo,\n webinarSpeaker,\n}) => {\n\n const renderBadge = hasBadge && (\n <Badge\n label={badgeText}\n className={className.widgetBadge}\n bgColor=\"var(--color-yellow-50)\"\n textColor=\"var(--color-yellow-400)\"\n fontWeight=\"normal\"\n />\n );\n\n const renderCTA = (hasLinkCta || hasButtonCta) && (\n <React.Fragment>\n {hasLinkCta && <span className={className.widgetLinkCta}>{ctaText}</span>}\n {hasButtonCta && <Button type={buttonBgColor} size=\"md\" label={ctaText} className={`${className.widgetButtonCta} mt-[4px]`} onClick={onCtaClick} />}\n </React.Fragment>\n );\n\n const renderImage = hasImage && (\n <div className={`${className.widgetImageCtn} widget-image-ctn`}>\n <img src={widgetImage} alt=\"widget-image\"/>\n </div>\n );\n\n return (\n <div className={`${className.widgetCtn} ${widgetClassName} widget-ctn`} onClick={onWidgetClick}>\n {widgetType !== \"general\" && renderImage}\n <div className={className.descriptionCtn}>\n {widgetType !== \"general\" && renderBadge}\n {widgetType !== \"request-feature\" && <span className={`${className.widgetTitle} widget-title`}>{widgetTitle}</span>}\n\n {[\"promotion\", \"general\"].includes(widgetType!) && (\n <span className={`${className.widgetDescription} widget-description`}>{widgetDescription}</span>\n )}\n\n {widgetType === \"webinar\" && (\n <div className={className.webinarInfoCtn}>\n {webinarSpeaker && (\n <div className={`${className.webinarDescriptionInfo} align-baseline`}>\n <Icon name=\"people\" className=\"relative top-[2px]\" />\n <span className={className.webinarSpeaker}>{webinarSpeaker}</span>\n </div>\n )}\n {webinarDateInfo && (\n <div className={`${className.webinarTimeInfo} align-baseline mb-[4px]`}>\n <Icon name=\"clock\" className=\"relative top-[2px]\" />\n <span className={className.webinarDate}>{webinarDateInfo}</span>\n </div>\n )}\n </div>\n )}\n\n {widgetType === \"request-feature\" ? (\n <div className={className.requestFeatureCtn}>\n <div className={className.requestFeatureImageCtn} />\n <div className={className.requestFeatureDescriptionCtn}>\n <span className={`${className.widgetTitle} widget-title`}>{widgetTitle}</span>\n <span className={`${className.widgetDescription} widget-description`}>{widgetDescription}</span>\n {renderCTA}\n </div>\n </div>\n ) : (\n renderCTA\n )}\n </div>\n </div>\n );\n};\n\nexport default Widget;"],"names":["React__default","Button","Badge","Icon","className","widgetCtn","widgetImageCtn","descriptionCtn","widgetTitle","widgetDescription","widgetLinkCta","widgetButtonCta","widgetBadge","webinarInfoCtn","webinarSpeaker","webinarDate","webinarDescriptionInfo","webinarTimeInfo","requestFeatureCtn","requestFeatureImageCtn","requestFeatureDescriptionCtn","Widget","widgetClassName","widgetType","widgetImage","hasImage","hasButtonCta","hasLinkCta","ctaText","hasBadge","badgeText","buttonBgColor","onCtaClick","onWidgetClick","webinarDateInfo","renderBadge","createElement","label","bgColor","textColor","fontWeight","renderCTA","React","Fragment","type","size","onClick","renderImage","src","alt","includes","name"],"mappings":"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"}
package/dist/index3.js CHANGED
@@ -43,7 +43,7 @@ const t = "focus-visible:outline outline-2 outline-[var(--color-blue-400)] outli
43
43
  icon: r = "",
44
44
  iconPosition: c = "left",
45
45
  disabled: u = !1,
46
- customClassName: i = ""
46
+ className: i = ""
47
47
  } = v, m = b(v, [
48
48
  "type",
49
49
  "size",
@@ -51,7 +51,7 @@ const t = "focus-visible:outline outline-2 outline-[var(--color-blue-400)] outli
51
51
  "icon",
52
52
  "iconPosition",
53
53
  "disabled",
54
- "customClassName"
54
+ "className"
55
55
  ]);
56
56
  const p = e !== "link" ? g[a] : "";
57
57
  return /* @__PURE__ */ l.createElement("button", n({
@@ -1 +1 @@
1
- {"version":3,"file":"index3.js","sources":["../src/components/Button/index.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport { Map } from '../../utils/common.types';\nimport { Icon } from '../Icon';\n\nexport interface ButtonProps {\n /**\n * Type of the button\n */\n type?: 'primary' | 'secondary' | 'negative' | 'negative-secondary' | 'purchase' | 'purchase-secondary' | 'link';\n /**\n * Size of the button\n */\n size?: 'sm' | 'md' | 'smRow';\n /**\n * Button contents\n */\n label: string | '';\n /**\n * Icon name\n */\n icon?: string;\n /**\n * Icon position\n */\n iconPosition?: 'left' | 'right';\n /**\n * Disabled state\n */\n disabled?: boolean;\n /**\n * Optional click handler\n */\n onClick?: () => void;\n /**\n * Custom class name\n */\n customClassName?: string;\n}\n\nconst focusClass = 'focus-visible:outline outline-2 outline-[var(--color-blue-400)] outline-offset-2';\nconst disabledClassNames: Map = {\n primary: 'bg-[var(--color-gray-200)] text-[var(--color-gray-600)] pointer-events-none cursor-not-allowed',\n secondary:\n 'text-[var(--color-gray-600)] border border-[var(--color-gray-300)] pointer-events-none cursor-not-allowed',\n link: 'text-[var(--color-gray-600)] pointer-events-none cursor-not-allowed'\n};\nconst classNames: Map = {\n primary: `bg-[var(--color-blue-500)] text-[var(--color-white)] hover:bg-[var(--color-blue-600)] ${focusClass}`,\n secondary: `bg-[var(--color-white)] text-[var(--color-gray-800)] hover:bg-[var(--color-gray-50)] border border-[var(--color-gray-400)] hover:border-[var(--color-gray-500)] ${focusClass}`,\n purchase: `bg-[var(--color-green-500)] text-[var(--color-white)] hover:bg-[var(--color-green-700)] border border-[var(--color-green-300)] ${focusClass}`,\n 'purchase-secondary': `bg-[var(--color-green-50)] text-[var(--color-green-500)] hover:bg-[var(--color-green-400)] border border-[var(--color-green-500)] hover:border-[var(--color-green-700)] ${focusClass}`,\n negative: `bg-[var(--color-red-500)] text-[var(--color-white)] hover:bg-[var(--color-red-500)] border border-[var(--color-red-500)] hover:border-[var(--color-red-500)] ${focusClass}`,\n 'negative-secondary': `bg-[var(--color-red-50)] text-[var(--color-red-500)] hover:bg-[var(--color-red-50)] border border-[var(--color-red-500)] hover:border-[var(--color-red-500)] ${focusClass}`,\n link: `text-[var(--color-blue-500)] px-0 py-0 hover:text-[var(--color-blue-600)] ${focusClass}`,\n sm: 'px-3 py-1',\n md: 'px-4 py-2',\n smRow: 'px-3 py-0.5'\n};\n\nexport const Button: FC<ButtonProps> = ({\n type = 'primary',\n size = 'md',\n label = '',\n icon = '',\n iconPosition = 'left',\n disabled = false,\n customClassName = '',\n ...props\n}) => {\n const sizeClassName = type !== 'link' ? classNames[size] : '';\n\n return (\n <button\n type=\"button\"\n className={`rounded-[6px] text-base font-normal flex gap-1 items-center min-w-fit ${sizeClassName} ${disabled ? disabledClassNames[type] : classNames[type]} ${customClassName}`}\n {...props}\n >\n {icon && iconPosition === 'left' && <Icon name={icon} className=\"\" />}\n {label}\n {icon && iconPosition === 'right' && <Icon name={icon} className=\"\" />}\n </button>\n );\n};\n"],"names":["focusClass","disabledClassNames","primary","secondary","link","classNames","purchase","negative","sm","md","smRow","Button","_a","_b","type","size","label","icon","iconPosition","disabled","customClassName","props","sizeClassName","React","createElement","_extends","className","Icon","name"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAuCA,MAAMA,IAAa,oFACbC,IAA0B;AAAA,EAC9BC,SAAS;AAAA,EACTC,WACE;AAAA,EACFC,MAAM;AACR,GACMC,IAAkB;AAAA,EACtBH,SAAS,yFAAyFF,CAAU;AAAA,EAC5GG,WAAW,mKAAmKH,CAAU;AAAA,EACxLM,UAAU,kIAAkIN,CAAU;AAAA,EACtJ,sBAAsB,2KAA2KA,CAAU;AAAA,EAC3MO,UAAU,gKAAgKP,CAAU;AAAA,EACpL,sBAAsB,gKAAgKA,CAAU;AAAA,EAChMI,MAAM,8EAA8EJ,CAAU;AAAA,EAC9FQ,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,OAAO;AACT,GAEaC,IAA0BA,CAACC,MASlC;AATkC,MAAAC,IAAAD,GACtCE;AAAAA,UAAAA,IAAO;AAAA,IACPC,MAAAA,IAAO;AAAA,IACPC,OAAAA,IAAQ;AAAA,IACRC,MAAAA,IAAO;AAAA,IACPC,cAAAA,IAAe;AAAA,IACfC,UAAAA,IAAW;AAAA,IACXC,iBAAAA,IAAkB;AAAA,MAPoBP,GAQnCQ,IAAAA,EARmCR,GAQnCQ;AAAAA,IAPHP;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA;AAGA,QAAME,IAAgBR,MAAS,SAAST,EAAWU,CAAI,IAAI;AAGzDQ,SAAAA,gBAAAA,EAAAC,cAAA,UAAAC,EAAA;AAAA,IACEX,MAAK;AAAA,IACLY,WAAW,yEAAyEJ,CAAa,IAAIH,IAAWlB,EAAmBa,CAAI,IAAIT,EAAWS,CAAI,CAAC,IAAIM,CAAe;AAAA,EAAA,GAC1KC,CAAK,GAERJ,KAAQC,MAAiB,UAAUK,gBAAAA,EAAAC,cAACG,GAAI;AAAA,IAACC,MAAMX;AAAAA,IAAMS,WAAU;AAAA,EAAA,CAAI,GACnEV,GACAC,KAAQC,MAAiB,WAAWK,gBAAAA,EAAAC,cAACG,GAAI;AAAA,IAACC,MAAMX;AAAAA,IAAMS,WAAU;AAAA,EAAA,CAAI,CAC/D;AAEZ;"}
1
+ {"version":3,"file":"index3.js","sources":["../src/components/Button/index.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport { Map } from '../../utils/common.types';\nimport { Icon } from '../Icon';\n\nexport interface ButtonProps {\n /**\n * Type of the button\n */\n type?: 'primary' | 'secondary' | 'negative' | 'negative-secondary' | 'purchase' | 'purchase-secondary' | 'link';\n /**\n * Size of the button\n */\n size?: 'sm' | 'md' | 'smRow';\n /**\n * Button contents\n */\n label: string | '';\n /**\n * Icon name\n */\n icon?: string;\n /**\n * Icon position\n */\n iconPosition?: 'left' | 'right';\n /**\n * Disabled state\n */\n disabled?: boolean;\n /**\n * Optional click handler\n */\n onClick?: () => void;\n /**\n * Custom class name\n */\n className?: string;\n}\n\nconst focusClass = 'focus-visible:outline outline-2 outline-[var(--color-blue-400)] outline-offset-2';\nconst disabledClassNames: Map = {\n primary: 'bg-[var(--color-gray-200)] text-[var(--color-gray-600)] pointer-events-none cursor-not-allowed',\n secondary:\n 'text-[var(--color-gray-600)] border border-[var(--color-gray-300)] pointer-events-none cursor-not-allowed',\n link: 'text-[var(--color-gray-600)] pointer-events-none cursor-not-allowed'\n};\nconst classNames: Map = {\n primary: `bg-[var(--color-blue-500)] text-[var(--color-white)] hover:bg-[var(--color-blue-600)] ${focusClass}`,\n secondary: `bg-[var(--color-white)] text-[var(--color-gray-800)] hover:bg-[var(--color-gray-50)] border border-[var(--color-gray-400)] hover:border-[var(--color-gray-500)] ${focusClass}`,\n purchase: `bg-[var(--color-green-500)] text-[var(--color-white)] hover:bg-[var(--color-green-700)] border border-[var(--color-green-300)] ${focusClass}`,\n 'purchase-secondary': `bg-[var(--color-green-50)] text-[var(--color-green-500)] hover:bg-[var(--color-green-400)] border border-[var(--color-green-500)] hover:border-[var(--color-green-700)] ${focusClass}`,\n negative: `bg-[var(--color-red-500)] text-[var(--color-white)] hover:bg-[var(--color-red-500)] border border-[var(--color-red-500)] hover:border-[var(--color-red-500)] ${focusClass}`,\n 'negative-secondary': `bg-[var(--color-red-50)] text-[var(--color-red-500)] hover:bg-[var(--color-red-50)] border border-[var(--color-red-500)] hover:border-[var(--color-red-500)] ${focusClass}`,\n link: `text-[var(--color-blue-500)] px-0 py-0 hover:text-[var(--color-blue-600)] ${focusClass}`,\n sm: 'px-3 py-1',\n md: 'px-4 py-2',\n smRow: 'px-3 py-0.5'\n};\n\nexport const Button: FC<ButtonProps> = ({\n type = 'primary',\n size = 'md',\n label = '',\n icon = '',\n iconPosition = 'left',\n disabled = false,\n className = '',\n ...props\n}) => {\n const sizeClassName = type !== 'link' ? classNames[size] : '';\n\n return (\n <button\n type=\"button\"\n className={`rounded-[6px] text-base font-normal flex gap-1 items-center min-w-fit ${sizeClassName} ${disabled ? disabledClassNames[type] : classNames[type]} ${className}`}\n {...props}\n >\n {icon && iconPosition === 'left' && <Icon name={icon} className=\"\" />}\n {label}\n {icon && iconPosition === 'right' && <Icon name={icon} className=\"\" />}\n </button>\n );\n};\n"],"names":["focusClass","disabledClassNames","primary","secondary","link","classNames","purchase","negative","sm","md","smRow","Button","_a","_b","type","size","label","icon","iconPosition","disabled","className","props","sizeClassName","React","createElement","_extends","Icon","name"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAuCA,MAAMA,IAAa,oFACbC,IAA0B;AAAA,EAC9BC,SAAS;AAAA,EACTC,WACE;AAAA,EACFC,MAAM;AACR,GACMC,IAAkB;AAAA,EACtBH,SAAS,yFAAyFF,CAAU;AAAA,EAC5GG,WAAW,mKAAmKH,CAAU;AAAA,EACxLM,UAAU,kIAAkIN,CAAU;AAAA,EACtJ,sBAAsB,2KAA2KA,CAAU;AAAA,EAC3MO,UAAU,gKAAgKP,CAAU;AAAA,EACpL,sBAAsB,gKAAgKA,CAAU;AAAA,EAChMI,MAAM,8EAA8EJ,CAAU;AAAA,EAC9FQ,IAAI;AAAA,EACJC,IAAI;AAAA,EACJC,OAAO;AACT,GAEaC,IAA0BA,CAACC,MASlC;AATkC,MAAAC,IAAAD,GACtCE;AAAAA,UAAAA,IAAO;AAAA,IACPC,MAAAA,IAAO;AAAA,IACPC,OAAAA,IAAQ;AAAA,IACRC,MAAAA,IAAO;AAAA,IACPC,cAAAA,IAAe;AAAA,IACfC,UAAAA,IAAW;AAAA,IACXC,WAAAA,IAAY;AAAA,MAP0BP,GAQnCQ,IAAAA,EARmCR,GAQnCQ;AAAAA,IAPHP;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA;AAGA,QAAME,IAAgBR,MAAS,SAAST,EAAWU,CAAI,IAAI;AAGzDQ,SAAAA,gBAAAA,EAAAC,cAAA,UAAAC,EAAA;AAAA,IACEX,MAAK;AAAA,IACLM,WAAW,yEAAyEE,CAAa,IAAIH,IAAWlB,EAAmBa,CAAI,IAAIT,EAAWS,CAAI,CAAC,IAAIM,CAAS;AAAA,EAAA,GACpKC,CAAK,GAERJ,KAAQC,MAAiB,UAAUK,gBAAAA,EAAAC,cAACE,GAAI;AAAA,IAACC,MAAMV;AAAAA,IAAMG,WAAU;AAAA,EAAA,CAAI,GACnEJ,GACAC,KAAQC,MAAiB,WAAWK,gBAAAA,EAAAC,cAACE,GAAI;AAAA,IAACC,MAAMV;AAAAA,IAAMG,WAAU;AAAA,EAAA,CAAI,CAC/D;AAEZ;"}
package/dist/index30.js CHANGED
@@ -1,36 +1,61 @@
1
- import e, { useState as o, useEffect as i } from "react";
2
- import { Icon as m } from "./index4.js";
3
- const f = ({
4
- renderAccordionContents: a,
5
- renderAccordionSrcElement: c,
6
- defaultOpen: n,
7
- className: r = ""
8
- }) => {
9
- const [t, s] = o(!1);
10
- return i(() => {
11
- s(n || !1);
12
- }, [n]), /* @__PURE__ */ e.createElement("div", {
13
- className: `se-design-accordion ${r}`
14
- }, /* @__PURE__ */ e.createElement("div", {
15
- className: "flex items-center cursor-pointer",
16
- onClick: () => s(!t)
17
- }, /* @__PURE__ */ e.createElement("div", {
18
- className: `se-design-accordion-icon transform transition-transform duration-300 ${t ? "rotate-90" : ""}`
19
- }, /* @__PURE__ */ e.createElement(m, {
20
- name: "rightSide"
21
- })), /* @__PURE__ */ e.createElement("div", {
22
- className: "se-design-accordion-elements flex-1"
23
- }, /* @__PURE__ */ e.createElement("div", {
24
- className: "se-design-accordion-src-element"
25
- }, c({
26
- isOpen: t
27
- })), t && /* @__PURE__ */ e.createElement("div", {
28
- className: "se-design-accordion-content transition-all duration-300 mt-1"
29
- }, a({
30
- isOpen: t
31
- })))));
32
- };
1
+ var f = Object.defineProperty, E = Object.defineProperties;
2
+ var v = Object.getOwnPropertyDescriptors;
3
+ var i = Object.getOwnPropertySymbols;
4
+ var C = Object.prototype.hasOwnProperty, N = Object.prototype.propertyIsEnumerable;
5
+ var s = (e, a, t) => a in e ? f(e, a, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[a] = t, d = (e, a) => {
6
+ for (var t in a || (a = {}))
7
+ C.call(a, t) && s(e, t, a[t]);
8
+ if (i)
9
+ for (var t of i(a))
10
+ N.call(a, t) && s(e, t, a[t]);
11
+ return e;
12
+ }, m = (e, a) => E(e, v(a));
13
+ import r, { useRef as g } from "react";
14
+ function p(e) {
15
+ const {
16
+ label: a,
17
+ value: t,
18
+ checked: l,
19
+ disabled: h,
20
+ name: u,
21
+ onChange: o,
22
+ width: b,
23
+ radioLabelClassName: x = "",
24
+ radioContainerClassName: w = ""
25
+ } = e, c = g(null);
26
+ return /* @__PURE__ */ r.createElement("div", {
27
+ className: `flex items-start gap-2 cursor-pointer bg-[var(--color-white)] border ${l ? "border-[#1088E7]" : "border-[#C9D4E3]"} rounded-[6px] p-2 transition-colors duration-300 ${w}`,
28
+ onClick: () => {
29
+ var n;
30
+ return (n = c.current) == null ? void 0 : n.click();
31
+ },
32
+ style: {
33
+ width: b || "20vw"
34
+ }
35
+ }, /* @__PURE__ */ r.createElement("input", {
36
+ ref: c,
37
+ type: "radio",
38
+ id: t,
39
+ name: u,
40
+ value: t,
41
+ checked: l,
42
+ disabled: h,
43
+ className: "mt-1 h-4 w-4 cursor-pointer accent-[#1088E7] disabled:cursor-not-allowed disabled:opacity-50",
44
+ onChange: () => {
45
+ o && o(m(d({}, e), {
46
+ checked: !0
47
+ }));
48
+ }
49
+ }), /* @__PURE__ */ r.createElement("label", {
50
+ htmlFor: t,
51
+ className: `${e.helperLabel && "flex flex-col"} cursor-pointer`
52
+ }, /* @__PURE__ */ r.createElement("span", {
53
+ className: `text-sm text-[var(--color-gray-800)] ${x}`
54
+ }, a), e.helperLabel && /* @__PURE__ */ r.createElement("span", {
55
+ className: `text-xs text-[var(--color-gray-600)] ${e.maxWidth ? `max-w-[${e.maxWidth}]` : "max-w-[20vw]"} break-words whitespace-normal`
56
+ }, e.helperLabel)));
57
+ }
33
58
  export {
34
- f as CustomAccordion
59
+ p as Radio
35
60
  };
36
61
  //# sourceMappingURL=index30.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index30.js","sources":["../src/components/CustomAccordion/index.tsx"],"sourcesContent":["import React, { FC, useEffect, useState } from 'react';\nimport { Icon } from '../Icon';\n\nexport interface CustomAccordionProps {\n renderAccordionContents: (props: { isOpen: boolean }) => React.ReactNode;\n renderAccordionSrcElement: (props: { isOpen: boolean }) => React.ReactNode;\n defaultOpen?: boolean;\n className?: string;\n}\n\nexport const CustomAccordion: FC<CustomAccordionProps> = ({ renderAccordionContents, renderAccordionSrcElement, defaultOpen, className = '' }) => {\n const [isOpen, setIsOpen] = useState(false);\n useEffect(()=>{\n setIsOpen(defaultOpen || false)\n },[defaultOpen])\n\n return (\n <div className={`se-design-accordion ${className}`}>\n <div className='flex items-center cursor-pointer' onClick={() => setIsOpen(!isOpen)}>\n <div className={`se-design-accordion-icon transform transition-transform duration-300 ${isOpen ? 'rotate-90' : ''}`}>\n <Icon name=\"rightSide\" />\n </div>\n <div className='se-design-accordion-elements flex-1'>\n <div className='se-design-accordion-src-element'>{renderAccordionSrcElement({isOpen})}</div>\n {isOpen &&\n (<div className='se-design-accordion-content transition-all duration-300 mt-1'>\n {renderAccordionContents({isOpen})}\n </div>\n )}\n </div>\n </div>\n </div>\n );\n};\n"],"names":["CustomAccordion","renderAccordionContents","renderAccordionSrcElement","defaultOpen","className","isOpen","setIsOpen","useState","useEffect","React","createElement","onClick","Icon","name"],"mappings":";;AAUO,MAAMA,IAA4CA,CAAC;AAAA,EAAEC,yBAAAA;AAAAA,EAAyBC,2BAAAA;AAAAA,EAA2BC,aAAAA;AAAAA,EAAaC,WAAAA,IAAY;AAAG,MAAM;AAChJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK;AAC1CC,SAAAA,EAAU,MAAI;AACZF,IAAAA,EAAUH,KAAe,EAAK;AAAA,EAAA,GAC9B,CAACA,CAAW,CAAC,GAGbM,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAW,uBAAuBA,CAAS;AAAA,EAAA,GAC9CM,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,IAAmCO,SAASA,MAAML,EAAU,CAACD,CAAM;AAAA,EAAA,GAChFK,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKN,WAAW,wEAAwEC,IAAS,cAAc,EAAE;AAAA,EAAA,GAC/GK,gBAAAA,EAAAA,cAACE,GAAI;AAAA,IAACC,MAAK;AAAA,EAAa,CAAA,CACrB,GACLJ,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,EAAA,GACbM,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,KAAmCF,EAA0B;AAAA,IAACG,QAAAA;AAAAA,EAAO,CAAA,CAAO,GAC1FA,KACEI,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,KACbH,EAAwB;AAAA,IAACI,QAAAA;AAAAA,EAAAA,CAAO,CAC9B,CAEJ,CACF,CACF;AAET;"}
1
+ {"version":3,"file":"index30.js","sources":["../src/components/Radio/index.tsx"],"sourcesContent":["import React, { useRef } from 'react';\n\nexport interface RadioProps {\n label: string;\n value: string;\n checked: boolean;\n disabled: boolean;\n name: string;\n onChange?: (props: RadioProps) => void;\n helperLabel?: string;\n maxWidth?: string;\n width?: string;\n radioLabelClassName?: string;\n radioContainerClassName?: string;\n}\n\nexport function Radio(props: RadioProps) {\n const {\n label,\n value,\n checked,\n disabled,\n name,\n onChange,\n width,\n radioLabelClassName = '',\n radioContainerClassName = ''\n } = props;\n const radioRef = useRef<HTMLInputElement>(null);\n\n return (\n <div\n className={`flex items-start gap-2 cursor-pointer bg-[var(--color-white)] border ${checked ? 'border-[#1088E7]' : 'border-[#C9D4E3]'} rounded-[6px] p-2 transition-colors duration-300 ${radioContainerClassName}`}\n onClick={() => radioRef.current?.click()}\n style={{ width: width || '20vw' }}\n >\n <input\n ref={radioRef}\n type=\"radio\"\n id={value}\n name={name}\n value={value}\n checked={checked}\n disabled={disabled}\n className=\"mt-1 h-4 w-4 cursor-pointer accent-[#1088E7] disabled:cursor-not-allowed disabled:opacity-50\"\n onChange={() => {\n onChange && onChange({ ...props, checked: true });\n }}\n />\n <label htmlFor={value} className={`${props.helperLabel && 'flex flex-col'} cursor-pointer`}>\n <span className={`text-sm text-[var(--color-gray-800)] ${radioLabelClassName}`}>{label}</span>\n {props.helperLabel && (\n <span\n className={`text-xs text-[var(--color-gray-600)] ${props.maxWidth ? `max-w-[${props.maxWidth}]` : 'max-w-[20vw]'} break-words whitespace-normal`}\n >\n {props.helperLabel}\n </span>\n )}\n </label>\n </div>\n );\n}\n"],"names":["Radio","props","label","value","checked","disabled","name","onChange","width","radioLabelClassName","radioContainerClassName","radioRef","useRef","React","createElement","className","onClick","current","click","style","ref","type","id","__spreadProps","__spreadValues","htmlFor","helperLabel","maxWidth"],"mappings":";;;;;;;;;;;;;AAgBO,SAASA,EAAMC,GAAmB;AACjC,QAAA;AAAA,IACJC,OAAAA;AAAAA,IACAC,OAAAA;AAAAA,IACAC,SAAAA;AAAAA,IACAC,UAAAA;AAAAA,IACAC,MAAAA;AAAAA,IACAC,UAAAA;AAAAA,IACAC,OAAAA;AAAAA,IACAC,qBAAAA,IAAsB;AAAA,IACtBC,yBAAAA,IAA0B;AAAA,EAAA,IACxBT,GACEU,IAAWC,EAAyB,IAAI;AAG5CC,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IACEC,WAAW,wEAAwEX,IAAU,qBAAqB,kBAAkB,qDAAqDM,CAAuB;AAAA,IAChNM,SAASA,MAAML;;AAAAA,cAAAA,IAAAA,EAASM,YAATN,gBAAAA,EAAkBO;AAAAA;AAAAA,IACjCC,OAAO;AAAA,MAAEX,OAAOA,KAAS;AAAA,IAAA;AAAA,EAAO,GAEhCM,gBAAAA,EAAAA,cAAA,SAAA;AAAA,IACEM,KAAKT;AAAAA,IACLU,MAAK;AAAA,IACLC,IAAInB;AAAAA,IACJG,MAAAA;AAAAA,IACAH,OAAAA;AAAAA,IACAC,SAAAA;AAAAA,IACAC,UAAAA;AAAAA,IACAU,WAAU;AAAA,IACVR,UAAUA,MAAM;AACdA,MAAAA,KAAYA,EAASgB,EAAAC,EAAA,IAAKvB,IAAL;AAAA,QAAYG,SAAS;AAAA,MAAA,EAAM;AAAA,IAAA;AAAA,EAClD,CACD,GACDU,gBAAAA,EAAAA,cAAA,SAAA;AAAA,IAAOW,SAAStB;AAAAA,IAAOY,WAAW,GAAGd,EAAMyB,eAAe,eAAe;AAAA,EAAA,GACvEZ,gBAAAA,EAAAA,cAAA,QAAA;AAAA,IAAMC,WAAW,wCAAwCN,CAAmB;AAAA,EAAA,GAAKP,CAAY,GAC5FD,EAAMyB,eACLb,gBAAAA,EAAAC,cAAA,QAAA;AAAA,IACEC,WAAW,wCAAwCd,EAAM0B,WAAW,UAAU1B,EAAM0B,QAAQ,MAAM,cAAc;AAAA,EAAA,GAE/G1B,EAAMyB,WACH,CAEH,CACJ;AAET;"}
package/dist/index31.js CHANGED
@@ -1,50 +1,42 @@
1
- import c, { useState as p, useRef as y } from "react";
2
- /* empty css */
3
- import { Icon as E } from "./index4.js";
4
- function I({
5
- value: m,
6
- onChange: e,
7
- placeholder: o
8
- }) {
9
- const [a, l] = p([...m]), [i, r] = p(""), u = y(null), f = (t) => {
10
- if (t.key === "Enter" && i.trim()) {
11
- t.preventDefault();
12
- const s = [...a, i.trim()];
13
- l(s), r(""), e == null || e(s);
14
- } else if (t.key === "Backspace" && i === "" && a.length > 0) {
15
- const s = a.slice(0, -1);
16
- l(s), e == null || e(s);
1
+ var d = Object.defineProperty, m = Object.defineProperties;
2
+ var s = Object.getOwnPropertyDescriptors;
3
+ var u = Object.getOwnPropertySymbols;
4
+ var g = Object.prototype.hasOwnProperty, f = Object.prototype.propertyIsEnumerable;
5
+ var o = (n, a, e) => a in n ? d(n, a, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[a] = e, c = (n, a) => {
6
+ for (var e in a || (a = {}))
7
+ g.call(a, e) && o(n, e, a[e]);
8
+ if (u)
9
+ for (var e of u(a))
10
+ f.call(a, e) && o(n, e, a[e]);
11
+ return n;
12
+ }, l = (n, a) => m(n, s(a));
13
+ import i from "react";
14
+ import { Radio as h } from "./index30.js";
15
+ function t() {
16
+ return t = Object.assign ? Object.assign.bind() : function(n) {
17
+ for (var a = 1; a < arguments.length; a++) {
18
+ var e = arguments[a];
19
+ for (var r in e) ({}).hasOwnProperty.call(e, r) && (n[r] = e[r]);
17
20
  }
21
+ return n;
22
+ }, t.apply(null, arguments);
23
+ }
24
+ function b(n) {
25
+ const a = (e) => {
26
+ n.onRadioGroupChange(l(c({}, e), {
27
+ checked: !0
28
+ }));
18
29
  };
19
- return /* @__PURE__ */ c.createElement("div", {
20
- className: "input-with-tags-container",
21
- onClick: () => {
22
- var t;
23
- return (t = u.current) == null ? void 0 : t.focus();
24
- }
25
- }, a.map((t, s) => /* @__PURE__ */ c.createElement("span", {
26
- key: s,
27
- className: "tag-in-inputwithtags"
28
- }, t, /* @__PURE__ */ c.createElement("span", {
29
- className: "close-icon-in-inputwithtags",
30
- onClick: (w) => {
31
- w.stopPropagation();
32
- const n = a.filter((T, k) => k !== s);
33
- l(n), e == null || e(n);
34
- }
35
- }, /* @__PURE__ */ c.createElement(E, {
36
- name: "close"
37
- })))), /* @__PURE__ */ c.createElement("input", {
38
- className: "input-with-tags-input",
39
- ref: u,
40
- type: "text",
41
- value: i,
42
- onChange: (t) => r(t.target.value),
43
- onKeyDown: f,
44
- placeholder: o
45
- }));
30
+ return /* @__PURE__ */ i.createElement("div", {
31
+ className: "flex gap-2"
32
+ }, n.options.map((e) => /* @__PURE__ */ i.createElement(h, t({
33
+ key: e.value
34
+ }, e, {
35
+ onChange: a,
36
+ checked: e.value === n.value
37
+ }))));
46
38
  }
47
39
  export {
48
- I as InputWithTags
40
+ b as RadioGroup
49
41
  };
50
42
  //# sourceMappingURL=index31.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index31.js","sources":["../src/components/InputWithTags/index.tsx"],"sourcesContent":["import React, { useState, KeyboardEvent, useRef } from \"react\";\nimport './styles.scss';\nimport { Icon } from '../Icon';\nexport interface InputWithTagsProps {\n value: string[];\n onChange?: (tags: string[]) => void;\n placeholder?: string;\n}\n\nexport function InputWithTags({ value, onChange, placeholder }: InputWithTagsProps) {\n const [tags, setTags] = useState<string[]>([...value]);\n const [inputValue, setInputValue] = useState('');\n const inputRef = useRef<HTMLInputElement>(null);\n\n const handleKeyDown = (e: KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter' && inputValue.trim()) {\n e.preventDefault();\n const newTags = [...tags, inputValue.trim()];\n setTags(newTags);\n setInputValue(\"\");\n onChange?.(newTags);\n } else if (e.key === 'Backspace' && inputValue === \"\" && tags.length > 0) {\n // Remove the last tag when backspace is pressed on empty input\n const newTags = tags.slice(0, -1);\n setTags(newTags);\n onChange?.(newTags);\n }\n };\n\n return (\n <div className=\"input-with-tags-container\" onClick={() => inputRef.current?.focus()} >\n {tags.map((tag, index) => (\n <span key={index} className=\"tag-in-inputwithtags\">\n {tag} \n <span\n className=\"close-icon-in-inputwithtags\"\n onClick={(e) => {\n e.stopPropagation();\n const newTags = tags.filter((_, i) => i !== index);\n setTags(newTags);\n onChange?.(newTags);\n }}\n >\n <Icon name=\"close\" />\n </span>\n </span>\n ))}\n <input\n className=\"input-with-tags-input\"\n ref={inputRef}\n type=\"text\"\n value={inputValue}\n onChange={(e) => setInputValue(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n />\n </div>\n );\n}"],"names":["React__default","useState","useRef","Icon","InputWithTags","value","onChange","placeholder","tags","setTags","inputValue","setInputValue","inputRef","handleKeyDown","e","key","trim","preventDefault","newTags","length","slice","React","createElement","className","onClick","_a","current","focus","map","tag","index","stopPropagation","filter","_","i","name","ref","type","target","onKeyDown"],"mappings":"AASO,OAAAA,KAAA,YAAAC,GAAA,UAAAC,SAAA;AAAA,OAAA;AAAA,SAAA,QAAAC,SAAA;AAAA,SAASC,EAAc;AAAA,EAAEC,OAAAA;AAAAA,EAAOC,UAAAA;AAAAA,EAAUC,aAAAA;AAAgC,GAAG;AAC1E,QAAA,CAACC,GAAMC,CAAO,IAAIR,EAAmB,CAAC,GAAGI,CAAK,CAAC,GAC/C,CAACK,GAAYC,CAAa,IAAIV,EAAS,EAAE,GACzCW,IAAWV,EAAyB,IAAI,GAExCW,IAAgBA,CAACC,MAAuC;AAC1D,QAAIA,EAAEC,QAAQ,WAAWL,EAAWM,QAAQ;AACxCF,MAAAA,EAAEG,eAAe;AACjB,YAAMC,IAAU,CAAC,GAAGV,GAAME,EAAWM,MAAM;AAC3CP,MAAAA,EAAQS,CAAO,GACfP,EAAc,EAAE,GAChBL,KAAAA,QAAAA,EAAWY;AAAAA,IAAO,WACXJ,EAAEC,QAAQ,eAAeL,MAAe,MAAMF,EAAKW,SAAS,GAAG;AAEtE,YAAMD,IAAUV,EAAKY,MAAM,GAAG,EAAE;AAChCX,MAAAA,EAAQS,CAAO,GACfZ,KAAAA,QAAAA,EAAWY;AAAAA,IAAO;AAAA,EAE1B;AAGIG,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,IAA4BC,SAASA,MAAAA;AArBrD,UAAAC;AAqB2Db,cAAAA,IAAAA,EAASc,YAATd,gBAAAA,EAAkBe;AAAAA;AAAAA,EAAM,GAC7EnB,EAAKoB,IAAI,CAACC,GAAKC,MACZT,gBAAAA,EAAAC,cAAA,QAAA;AAAA,IAAMP,KAAKe;AAAAA,IAAOP,WAAU;AAAA,EACvBM,GAAAA,GACDP,gBAAAA,EAAAA,cAAA,QAAA;AAAA,IACAC,WAAU;AAAA,IACVC,SAAUV,CAAMA,MAAA;AACZA,MAAAA,EAAEiB,gBAAgB;AAClB,YAAMb,IAAUV,EAAKwB,OAAO,CAACC,GAAGC,MAAMA,MAAMJ,CAAK;AACjDrB,MAAAA,EAAQS,CAAO,GACfZ,KAAAA,QAAAA,EAAWY;AAAAA,IAAO;AAAA,EACtB,GAEII,gBAAAA,EAAAA,cAACnB,GAAI;AAAA,IAACgC,MAAK;AAAA,EAAS,CAAA,CAClB,CACJ,CACT,GACDd,gBAAAA,EAAAC,cAAA,SAAA;AAAA,IACIC,WAAU;AAAA,IACVa,KAAKxB;AAAAA,IACLyB,MAAK;AAAA,IACLhC,OAAOK;AAAAA,IACPJ,UAAWQ,CAAAA,MAAMH,EAAcG,EAAEwB,OAAOjC,KAAK;AAAA,IAC7CkC,WAAW1B;AAAAA,IACXN,aAAAA;AAAAA,EAAAA,CACH,CACA;AAEb;"}
1
+ {"version":3,"file":"index31.js","sources":["../src/components/RadioGroup/index.tsx"],"sourcesContent":["import React from 'react';\nimport { Radio, RadioProps } from '../Radio';\n\nexport interface RadioGroupProps {\n options: RadioProps[];\n onRadioGroupChange: (obj: RadioProps) => void;\n value?: string;\n}\n\nexport function RadioGroup(props: RadioGroupProps) {\n const handleRadioChange = (obj: RadioProps) => {\n props.onRadioGroupChange({ ...obj, checked: true });\n };\n return (\n <div className=\"flex gap-2\">\n {props.options.map((option) => (\n <Radio key={option.value} {...option} onChange={handleRadioChange} checked={option.value === props.value} />\n ))}\n </div>\n );\n}\n"],"names":["RadioGroup","props","handleRadioChange","obj","onRadioGroupChange","__spreadProps","__spreadValues","checked","React","createElement","className","options","map","option","Radio","_extends","key","value","onChange"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AASO,SAASA,EAAWC,GAAwB;AAC3CC,QAAAA,IAAoBA,CAACC,MAAoB;AAC7CF,IAAAA,EAAMG,mBAAmBC,EAAAC,EAAA,IAAKH,IAAL;AAAA,MAAUI,SAAS;AAAA,IAAA,EAAM;AAAA,EACpD;AAEEC,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAA,GACZT,EAAMU,QAAQC,IAAKC,OAClBJ,gBAAAA,EAAAA,cAACK,GAAKC,EAAA;AAAA,IAACC,KAAKH,EAAOI;AAAAA,KAAWJ,GAAM;AAAA,IAAEK,UAAUhB;AAAAA,IAAmBK,SAASM,EAAOI,UAAUhB,EAAMgB;AAAAA,EAAQ,CAAA,CAAA,CAC5G,CACE;AAET;"}
package/dist/index32.js CHANGED
@@ -1,41 +1,38 @@
1
- import e from "react";
2
- /* empty css */
3
- function f({
4
- value: n,
5
- onChange: i,
6
- disabled: r,
7
- maxLength: t,
8
- tag: m,
9
- error: a,
10
- errorMessage: o,
11
- label: c,
12
- placeholder: s,
13
- style: l,
14
- inputStyle: d
15
- }) {
16
- const p = m || "input";
17
- return /* @__PURE__ */ e.createElement("div", {
18
- className: "main-container",
19
- style: l
20
- }, c && /* @__PURE__ */ e.createElement("div", {
21
- className: "label-container"
22
- }, c), /* @__PURE__ */ e.createElement(p, {
23
- value: n,
24
- onChange: (E) => i(E.target.value),
25
- disabled: r,
26
- className: `${a ? "input-container-error" : "input-container-default"} ${r ? "input-container-disabled" : ""}`,
27
- maxlength: t || void 0,
28
- placeholder: s,
29
- style: d
30
- }), /* @__PURE__ */ e.createElement("div", {
31
- className: `${a ? "error-and-max-word" : "max-word-container"}`
32
- }, a && /* @__PURE__ */ e.createElement("div", {
33
- className: "error-message"
34
- }, o), t && /* @__PURE__ */ e.createElement("div", {
35
- className: "max-word"
36
- }, t && (n == null ? void 0 : n.length) + "/" + t)));
37
- }
1
+ import e, { useState as m, useEffect as c } from "react";
2
+ import { Icon as d } from "./index4.js";
3
+ const E = ({
4
+ title: i,
5
+ content: r,
6
+ defaultOpen: a,
7
+ overflow: o,
8
+ titleClassName: s = "",
9
+ showSeparator: l = !0
10
+ }) => {
11
+ const [t, n] = m(!1);
12
+ return c(() => {
13
+ n(a || !1);
14
+ }, [a]), /* @__PURE__ */ e.createElement("div", null, /* @__PURE__ */ e.createElement("div", {
15
+ className: "flex items-center cursor-pointer max-w-[50vw]",
16
+ onClick: () => n(!t)
17
+ }, /* @__PURE__ */ e.createElement("div", {
18
+ className: `transform transition-transform duration-300 ${t ? "rotate-90" : ""}`
19
+ }, /* @__PURE__ */ e.createElement(d, {
20
+ name: "rightSide"
21
+ })), /* @__PURE__ */ e.createElement("h4", {
22
+ className: `text-[#1B2636] font-inter text-[18px] font-semibold leading-[24px] ${s}`
23
+ }, i)), /* @__PURE__ */ e.createElement("div", {
24
+ className: `
25
+ overflow-${o || "hidden"}
26
+ transition-all
27
+ duration-300
28
+ ml-1
29
+ mt-[1vw]
30
+ ${t ? "max-h-[1000vh] opacity-100 visible h-auto" : "max-h-0 opacity-0 invisible h-0"}`
31
+ }, r), l && /* @__PURE__ */ e.createElement("div", {
32
+ className: `h-[1px] bg-[#E5E7EB] ${t ? "hidden" : "block"}`
33
+ }));
34
+ };
38
35
  export {
39
- f as Input
36
+ E as Accordion
40
37
  };
41
38
  //# sourceMappingURL=index32.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index32.js","sources":["../src/components/Input/index.tsx"],"sourcesContent":["import React from 'react';\nimport './style.scss';\n\nexport interface InputProps {\n value: string;\n disabled?: boolean;\n maxLength?: number | undefined;\n onChange: (value: string) => void;\n tag?: string;\n error?: boolean;\n errorMessage?: string;\n label?: string;\n placeholder?: string;\n style?: React.CSSProperties;\n inputStyle?: React.CSSProperties;\n}\n\nexport function Input({\n value,\n onChange,\n disabled,\n maxLength,\n tag,\n error,\n errorMessage,\n label,\n placeholder,\n style,\n inputStyle\n}: InputProps) {\n const Element = tag || 'input';\n\n return (\n <div className=\"main-container\" style={style}>\n {label && <div className=\"label-container\">{label}</div>}\n {React.createElement(Element, {\n value,\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => onChange(e.target.value),\n disabled,\n className: `${error ? 'input-container-error' : 'input-container-default'} ${disabled ? 'input-container-disabled' : ''}`,\n maxlength: maxLength ? maxLength : undefined,\n placeholder: placeholder,\n style: inputStyle\n })}\n <div className={`${error ? 'error-and-max-word' : 'max-word-container'}`}>\n {error && <div className=\"error-message\">{errorMessage}</div>}\n {maxLength && <div className=\"max-word\">{maxLength && value?.length + '/' + maxLength}</div>}\n </div>\n </div>\n );\n}\n"],"names":["React__default","Input","value","onChange","disabled","maxLength","tag","error","errorMessage","label","placeholder","style","inputStyle","Element","React","createElement","className","e","target","maxlength","undefined","length"],"mappings":"AAiBO,OAAAA,OAAA;AAAA,OAAA;AAAA,SAASC,EAAM;AAAA,EACpBC,OAAAA;AAAAA,EACAC,UAAAA;AAAAA,EACAC,UAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC,KAAAA;AAAAA,EACAC,OAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,EACAC,aAAAA;AAAAA,EACAC,OAAAA;AAAAA,EACAC,YAAAA;AACU,GAAG;AACb,QAAMC,IAAUP,KAAO;AAGrBQ,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,IAAiBL,OAAAA;AAAAA,EAC7BF,GAAAA,KAASM,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAmBP,GAAAA,CAAW,GACtDK,gBAAAA,EAAMC,cAAcF,GAAS;AAAA,IAC5BX,OAAAA;AAAAA,IACAC,UAAUA,CAACc,MAA2Cd,EAASc,EAAEC,OAAOhB,KAAK;AAAA,IAC7EE,UAAAA;AAAAA,IACAY,WAAW,GAAGT,IAAQ,0BAA0B,yBAAyB,IAAIH,IAAW,6BAA6B,EAAE;AAAA,IACvHe,WAAWd,KAAwBe;AAAAA,IACnCV,aAAAA;AAAAA,IACAC,OAAOC;AAAAA,EAAAA,CACR,GACDG,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKC,WAAW,GAAGT,IAAQ,uBAAuB,oBAAoB;AAAA,EACnEA,GAAAA,KAASQ,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,KAAiBR,CAAkB,GAC3DH,KAAaS,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKC,WAAU;AAAA,EAAA,GAAYX,MAAaH,KAAAA,gBAAAA,EAAOmB,UAAS,MAAMhB,CAAe,CACxF,CACF;AAET;"}
1
+ {"version":3,"file":"index32.js","sources":["../src/components/Accordion/index.tsx"],"sourcesContent":["import React, { FC, useEffect, useState } from 'react';\nimport { Icon } from '../Icon';\n\nexport interface AccordionProps {\n title: string;\n titleClassName?: string;\n content: React.ReactNode;\n defaultOpen?: boolean;\n showSeparator?: boolean;\n overflow?: 'hidden' | 'visible' | 'scroll' | 'auto' | undefined | string;\n}\n\nexport const Accordion: FC<AccordionProps> = ({\n title,\n content,\n defaultOpen,\n overflow,\n titleClassName = '',\n showSeparator = true\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n useEffect(() => {\n setIsOpen(defaultOpen || false);\n }, [defaultOpen]);\n return (\n <div>\n <div className=\"flex items-center cursor-pointer max-w-[50vw]\" onClick={() => setIsOpen(!isOpen)}>\n <div className={`transform transition-transform duration-300 ${isOpen ? 'rotate-90' : ''}`}>\n <Icon name=\"rightSide\" />\n </div>\n <h4 className={`text-[#1B2636] font-inter text-[18px] font-semibold leading-[24px] ${titleClassName}`}>\n {title}\n </h4>\n </div>\n <div\n className={`\n overflow-${overflow || 'hidden'}\n transition-all\n duration-300\n ml-1\n mt-[1vw]\n ${isOpen ? 'max-h-[1000vh] opacity-100 visible h-auto' : 'max-h-0 opacity-0 invisible h-0'}`}\n >\n {content}\n </div>\n {showSeparator && <div className={`h-[1px] bg-[#E5E7EB] ${!isOpen ? 'block' : 'hidden'}`}></div>}\n </div>\n );\n};\n"],"names":["Accordion","title","content","defaultOpen","overflow","titleClassName","showSeparator","isOpen","setIsOpen","useState","useEffect","createElement","React","className","onClick","Icon","name"],"mappings":";;AAYO,MAAMA,IAAgCA,CAAC;AAAA,EAC5CC,OAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,aAAAA;AAAAA,EACAC,UAAAA;AAAAA,EACAC,gBAAAA,IAAiB;AAAA,EACjBC,eAAAA,IAAgB;AAClB,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK;AAC1CC,SAAAA,EAAU,MAAM;AACdF,IAAAA,EAAUL,KAAe,EAAK;AAAA,EAAA,GAC7B,CAACA,CAAW,CAAC,qBAEdQ,cACEC,OAAAA,MAAAA,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IAAKE,WAAU;AAAA,IAAgDC,SAASA,MAAMN,EAAU,CAACD,CAAM;AAAA,EAAA,GAC7FI,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKE,WAAW,+CAA+CN,IAAS,cAAc,EAAE;AAAA,EAAA,GACtFI,gBAAAA,EAAAA,cAACI,GAAI;AAAA,IAACC,MAAK;AAAA,EAAa,CAAA,CACrB,GACLJ,gBAAAA,EAAAD,cAAA,MAAA;AAAA,IAAIE,WAAW,sEAAsER,CAAc;AAAA,KAChGJ,CACC,CACD,GACLW,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IACEE,WAAW;AAAA,mBACAT,KAAY,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,UAK7BG,IAAS,8CAA8C,iCAAiC;AAAA,KAEzFL,CACE,GACJI,KAAiBM,gBAAAA,EAAAD,cAAA,OAAA;AAAA,IAAKE,WAAW,wBAAyBN,IAAmB,WAAV,OAAkB;AAAA,EAAA,CAAS,CAC5F;AAET;"}
package/dist/index33.js CHANGED
@@ -1,37 +1,36 @@
1
- import e from "react";
2
- /* empty css */
3
- const r = {
4
- progressBarCtn: "flex items-center gap-2",
5
- progressBar: "flex-1 w-[70%] bg-[var(--color-gray-200)] h-[6px] rounded-[12px] overflow-hidden",
6
- progressBarProgress: "h-full rounded-[12px]",
7
- stepsCount: "steps-count"
8
- }, d = ({
9
- totalTasks: t = 0,
10
- completedTasks: o = 0,
11
- progressBarCtnClassName: n = "",
12
- needPercentageCompleted: c = !0,
13
- progressBarColor: s
1
+ import e, { useState as o, useEffect as i } from "react";
2
+ import { Icon as m } from "./index4.js";
3
+ const f = ({
4
+ renderAccordionContents: a,
5
+ renderAccordionSrcElement: c,
6
+ defaultOpen: n,
7
+ className: r = ""
14
8
  }) => {
15
- const a = t > 0 ? o / t * 100 : 0;
16
- return /* @__PURE__ */ e.createElement("div", {
17
- className: `${r.progressBarCtn} ${n} progress-bar-ctn`,
18
- style: {
19
- width: "100%"
20
- }
9
+ const [t, s] = o(!1);
10
+ return i(() => {
11
+ s(n || !1);
12
+ }, [n]), /* @__PURE__ */ e.createElement("div", {
13
+ className: `se-design-accordion ${r}`
21
14
  }, /* @__PURE__ */ e.createElement("div", {
22
- className: r.progressBar
15
+ className: "flex items-center cursor-pointer",
16
+ onClick: () => s(!t)
23
17
  }, /* @__PURE__ */ e.createElement("div", {
24
- className: r.progressBarProgress,
25
- style: {
26
- width: `${a}%`,
27
- background: `${s || "linear-gradient(to right, var(--color-green-500), var(--color-green-400))"}`,
28
- transition: "width 0.4s ease-in-out"
29
- }
30
- })), c && /* @__PURE__ */ e.createElement("div", {
31
- className: r.stepsCount
32
- }, `${Math.round(a)}% completed`));
18
+ className: `se-design-accordion-icon transform transition-transform duration-300 ${t ? "rotate-90" : ""}`
19
+ }, /* @__PURE__ */ e.createElement(m, {
20
+ name: "rightSide"
21
+ })), /* @__PURE__ */ e.createElement("div", {
22
+ className: "se-design-accordion-elements flex-1"
23
+ }, /* @__PURE__ */ e.createElement("div", {
24
+ className: "se-design-accordion-src-element"
25
+ }, c({
26
+ isOpen: t
27
+ })), t && /* @__PURE__ */ e.createElement("div", {
28
+ className: "se-design-accordion-content transition-all duration-300 mt-1"
29
+ }, a({
30
+ isOpen: t
31
+ })))));
33
32
  };
34
33
  export {
35
- d as ProgressBar
34
+ f as CustomAccordion
36
35
  };
37
36
  //# sourceMappingURL=index33.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index33.js","sources":["../src/components/ProgressBar/index.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport { Map } from '../../utils/common.types';\nimport './style.scss';\n\nexport interface ProgressBarProps {\n totalTasks: number;\n completedTasks: number;\n progressBarCtnClassName?: string;\n needPercentageCompleted?: boolean;\n progressBarColor?: string;\n}\n\nconst className: Map = {\n progressBarCtn: 'flex items-center gap-2',\n progressBar: 'flex-1 w-[70%] bg-[var(--color-gray-200)] h-[6px] rounded-[12px] overflow-hidden',\n progressBarProgress: 'h-full rounded-[12px]',\n stepsCount: 'steps-count'\n};\n\nexport const ProgressBar: FC<ProgressBarProps> = ({\n totalTasks = 0,\n completedTasks = 0,\n progressBarCtnClassName = '',\n needPercentageCompleted = true,\n progressBarColor\n}) => {\n const percentageComplete = totalTasks > 0 ? (completedTasks / totalTasks) * 100 : 0;\n return (\n <div\n className={`${className.progressBarCtn} ${progressBarCtnClassName} progress-bar-ctn`}\n style={{ width: '100%' }}\n >\n <div className={className.progressBar}>\n <div\n className={className.progressBarProgress}\n style={{\n width: `${percentageComplete}%`,\n background: `${progressBarColor ? progressBarColor : 'linear-gradient(to right, var(--color-green-500), var(--color-green-400))'}`,\n transition: 'width 0.4s ease-in-out'\n }}\n ></div>\n </div>\n {needPercentageCompleted && (\n <div className={className.stepsCount}>{`${Math.round(percentageComplete)}% completed`}</div>\n )}\n </div>\n );\n};\n"],"names":["React__default","className","progressBarCtn","progressBar","progressBarProgress","stepsCount","ProgressBar","totalTasks","completedTasks","progressBarCtnClassName","needPercentageCompleted","progressBarColor","percentageComplete","React","createElement","style","width","background","transition","Math","round"],"mappings":"AAYA,OAAAA,OAAA;AAAA,OAAA;AAAA,MAAMC,IAAiB;AAAA,EACrBC,gBAAgB;AAAA,EAChBC,aAAa;AAAA,EACbC,qBAAqB;AAAA,EACrBC,YAAY;AACd,GAEaC,IAAoCA,CAAC;AAAA,EAChDC,YAAAA,IAAa;AAAA,EACbC,gBAAAA,IAAiB;AAAA,EACjBC,yBAAAA,IAA0B;AAAA,EAC1BC,yBAAAA,IAA0B;AAAA,EAC1BC,kBAAAA;AACF,MAAM;AACJ,QAAMC,IAAqBL,IAAa,IAAKC,IAAiBD,IAAc,MAAM;AAEhFM,SAAAA,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IACEb,WAAW,GAAGA,EAAUC,cAAc,IAAIO,CAAuB;AAAA,IACjEM,OAAO;AAAA,MAAEC,OAAO;AAAA,IAAA;AAAA,EAAO,GAEvBF,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKb,WAAWA,EAAUE;AAAAA,EAAAA,GACxBW,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IACEb,WAAWA,EAAUG;AAAAA,IACrBW,OAAO;AAAA,MACLC,OAAO,GAAGJ,CAAkB;AAAA,MAC5BK,YAAY,GAAGN,KAAsC,2EAA2E;AAAA,MAChIO,YAAY;AAAA,IAAA;AAAA,EAEV,CAAA,CACH,GACJR,KACCG,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKb,WAAWA,EAAUI;AAAAA,EAAAA,GAAa,GAAGc,KAAKC,MAAMR,CAAkB,CAAC,aAAmB,CAE1F;AAET;"}
1
+ {"version":3,"file":"index33.js","sources":["../src/components/CustomAccordion/index.tsx"],"sourcesContent":["import React, { FC, useEffect, useState } from 'react';\nimport { Icon } from '../Icon';\n\nexport interface CustomAccordionProps {\n renderAccordionContents: (props: { isOpen: boolean }) => React.ReactNode;\n renderAccordionSrcElement: (props: { isOpen: boolean }) => React.ReactNode;\n defaultOpen?: boolean;\n className?: string;\n}\n\nexport const CustomAccordion: FC<CustomAccordionProps> = ({ renderAccordionContents, renderAccordionSrcElement, defaultOpen, className = '' }) => {\n const [isOpen, setIsOpen] = useState(false);\n useEffect(()=>{\n setIsOpen(defaultOpen || false)\n },[defaultOpen])\n\n return (\n <div className={`se-design-accordion ${className}`}>\n <div className='flex items-center cursor-pointer' onClick={() => setIsOpen(!isOpen)}>\n <div className={`se-design-accordion-icon transform transition-transform duration-300 ${isOpen ? 'rotate-90' : ''}`}>\n <Icon name=\"rightSide\" />\n </div>\n <div className='se-design-accordion-elements flex-1'>\n <div className='se-design-accordion-src-element'>{renderAccordionSrcElement({isOpen})}</div>\n {isOpen &&\n (<div className='se-design-accordion-content transition-all duration-300 mt-1'>\n {renderAccordionContents({isOpen})}\n </div>\n )}\n </div>\n </div>\n </div>\n );\n};\n"],"names":["CustomAccordion","renderAccordionContents","renderAccordionSrcElement","defaultOpen","className","isOpen","setIsOpen","useState","useEffect","React","createElement","onClick","Icon","name"],"mappings":";;AAUO,MAAMA,IAA4CA,CAAC;AAAA,EAAEC,yBAAAA;AAAAA,EAAyBC,2BAAAA;AAAAA,EAA2BC,aAAAA;AAAAA,EAAaC,WAAAA,IAAY;AAAG,MAAM;AAChJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK;AAC1CC,SAAAA,EAAU,MAAI;AACZF,IAAAA,EAAUH,KAAe,EAAK;AAAA,EAAA,GAC9B,CAACA,CAAW,CAAC,GAGbM,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAW,uBAAuBA,CAAS;AAAA,EAAA,GAC9CM,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,IAAmCO,SAASA,MAAML,EAAU,CAACD,CAAM;AAAA,EAAA,GAChFK,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKN,WAAW,wEAAwEC,IAAS,cAAc,EAAE;AAAA,EAAA,GAC/GK,gBAAAA,EAAAA,cAACE,GAAI;AAAA,IAACC,MAAK;AAAA,EAAa,CAAA,CACrB,GACLJ,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,EAAA,GACbM,gBAAAA,EAAAA,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,KAAmCF,EAA0B;AAAA,IAACG,QAAAA;AAAAA,EAAO,CAAA,CAAO,GAC1FA,KACEI,gBAAAA,EAAAC,cAAA,OAAA;AAAA,IAAKN,WAAU;AAAA,KACbH,EAAwB;AAAA,IAACI,QAAAA;AAAAA,EAAAA,CAAO,CAC9B,CAEJ,CACF,CACF;AAET;"}