se-design 0.0.93 → 0.0.94

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 (175) hide show
  1. package/dist/assets/style.css +1 -0
  2. package/dist/components/Button/Button.stories.d.ts +26 -0
  3. package/dist/components/Button/index.d.ts +33 -0
  4. package/dist/components/Icon/Icon.d.ts +4 -0
  5. package/dist/components/Icon/Icon.stories.d.ts +7 -0
  6. package/dist/components/Icon/Icon.types.d.ts +4 -0
  7. package/dist/components/MenuItem/index.d.ts +8 -0
  8. package/dist/components/MenuList/index.d.ts +7 -0
  9. package/dist/components/Modal/Modal.d.ts +13 -0
  10. package/dist/components/Modal/Modal.stories.d.ts +13 -0
  11. package/dist/components/SplitButton/SplitButton.d.ts +19 -0
  12. package/dist/components/SplitButton/SplitButton.stories.d.ts +14 -0
  13. package/dist/components/Tag/Tag.d.ts +7 -0
  14. package/dist/components/Toggle/Toggle.d.ts +4 -0
  15. package/dist/components/Toggle/Toggle.types.d.ts +14 -0
  16. package/dist/components/Tooltip/Tooltip.d.ts +19 -0
  17. package/dist/components/index.d.ts +9 -0
  18. package/dist/index.cjs +2 -0
  19. package/dist/index.cjs.map +1 -0
  20. package/dist/index.d.ts +1 -0
  21. package/dist/index.js +22 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/index10.cjs +2 -0
  24. package/dist/index10.cjs.map +1 -0
  25. package/dist/index10.js +18 -0
  26. package/dist/index10.js.map +1 -0
  27. package/dist/index11.cjs +2 -0
  28. package/dist/index11.cjs.map +1 -0
  29. package/dist/index11.js +7 -0
  30. package/dist/index11.js.map +1 -0
  31. package/dist/index12.cjs +2 -0
  32. package/dist/index12.cjs.map +1 -0
  33. package/dist/index12.js +9 -0
  34. package/dist/index12.js.map +1 -0
  35. package/dist/index13.cjs +2 -0
  36. package/dist/index13.cjs.map +1 -0
  37. package/dist/index13.js +158 -0
  38. package/dist/index13.js.map +1 -0
  39. package/dist/index14.cjs +2 -0
  40. package/dist/index14.cjs.map +1 -0
  41. package/dist/index14.js +10 -0
  42. package/dist/index14.js.map +1 -0
  43. package/dist/index15.cjs +2 -0
  44. package/dist/index15.cjs.map +1 -0
  45. package/dist/index15.js +5 -0
  46. package/dist/index15.js.map +1 -0
  47. package/dist/index16.cjs +10 -0
  48. package/dist/index16.cjs.map +1 -0
  49. package/dist/index16.js +29 -0
  50. package/dist/index16.js.map +1 -0
  51. package/dist/index17.cjs +23 -0
  52. package/dist/index17.cjs.map +1 -0
  53. package/dist/index17.js +609 -0
  54. package/dist/index17.js.map +1 -0
  55. package/dist/index18.cjs +2 -0
  56. package/dist/index18.cjs.map +1 -0
  57. package/dist/index18.js +13 -0
  58. package/dist/index18.js.map +1 -0
  59. package/dist/index19.cjs +2 -0
  60. package/dist/index19.cjs.map +1 -0
  61. package/dist/index19.js +13 -0
  62. package/dist/index19.js.map +1 -0
  63. package/dist/index20.cjs +2 -0
  64. package/dist/index20.cjs.map +1 -0
  65. package/dist/index20.js +8 -0
  66. package/dist/index20.js.map +1 -0
  67. package/dist/index21.cjs +2 -0
  68. package/dist/index21.cjs.map +1 -0
  69. package/dist/index21.js +173 -0
  70. package/dist/index21.js.map +1 -0
  71. package/dist/index22.cjs +2 -0
  72. package/dist/index22.cjs.map +1 -0
  73. package/dist/index22.js +14 -0
  74. package/dist/index22.js.map +1 -0
  75. package/dist/index23.cjs +2 -0
  76. package/dist/index23.cjs.map +1 -0
  77. package/dist/index23.js +5 -0
  78. package/dist/index23.js.map +1 -0
  79. package/dist/index24.cjs +2 -0
  80. package/dist/index24.cjs.map +1 -0
  81. package/dist/index24.js +5 -0
  82. package/dist/index24.js.map +1 -0
  83. package/dist/index25.cjs +2 -0
  84. package/dist/index25.cjs.map +1 -0
  85. package/dist/index25.js +9 -0
  86. package/dist/index25.js.map +1 -0
  87. package/dist/index26.cjs +2 -0
  88. package/dist/index26.cjs.map +1 -0
  89. package/dist/index26.js +9 -0
  90. package/dist/index26.js.map +1 -0
  91. package/dist/index27.cjs +6 -0
  92. package/dist/index27.cjs.map +1 -0
  93. package/dist/index27.js +41 -0
  94. package/dist/index27.js.map +1 -0
  95. package/dist/index28.cjs +2 -0
  96. package/dist/index28.cjs.map +1 -0
  97. package/dist/index28.js +5 -0
  98. package/dist/index28.js.map +1 -0
  99. package/dist/index29.cjs +2 -0
  100. package/dist/index29.cjs.map +1 -0
  101. package/dist/index29.js +11 -0
  102. package/dist/index29.js.map +1 -0
  103. package/dist/index3.cjs +2 -0
  104. package/dist/index3.cjs.map +1 -0
  105. package/dist/index3.js +36 -0
  106. package/dist/index3.js.map +1 -0
  107. package/dist/index30.cjs +3 -0
  108. package/dist/index30.cjs.map +1 -0
  109. package/dist/index30.js +330 -0
  110. package/dist/index30.js.map +1 -0
  111. package/dist/index31.cjs +2 -0
  112. package/dist/index31.cjs.map +1 -0
  113. package/dist/index31.js +53 -0
  114. package/dist/index31.js.map +1 -0
  115. package/dist/index32.cjs +2 -0
  116. package/dist/index32.cjs.map +1 -0
  117. package/dist/index32.js +5 -0
  118. package/dist/index32.js.map +1 -0
  119. package/dist/index33.cjs +9 -0
  120. package/dist/index33.cjs.map +1 -0
  121. package/dist/index33.js +79 -0
  122. package/dist/index33.js.map +1 -0
  123. package/dist/index34.cjs +9 -0
  124. package/dist/index34.cjs.map +1 -0
  125. package/dist/index34.js +96 -0
  126. package/dist/index34.js.map +1 -0
  127. package/dist/index35.cjs +6 -0
  128. package/dist/index35.cjs.map +1 -0
  129. package/dist/index35.js +55 -0
  130. package/dist/index35.js.map +1 -0
  131. package/dist/index36.cjs +2 -0
  132. package/dist/index36.cjs.map +1 -0
  133. package/dist/index36.js +11 -0
  134. package/dist/index36.js.map +1 -0
  135. package/dist/index37.cjs +2 -0
  136. package/dist/index37.cjs.map +1 -0
  137. package/dist/index37.js +8 -0
  138. package/dist/index37.js.map +1 -0
  139. package/dist/index38.cjs +2 -0
  140. package/dist/index38.cjs.map +1 -0
  141. package/dist/index38.js +55 -0
  142. package/dist/index38.js.map +1 -0
  143. package/dist/index39.cjs +2 -0
  144. package/dist/index39.cjs.map +1 -0
  145. package/dist/index39.js +5 -0
  146. package/dist/index39.js.map +1 -0
  147. package/dist/index4.cjs +2 -0
  148. package/dist/index4.cjs.map +1 -0
  149. package/dist/index4.js +11 -0
  150. package/dist/index4.js.map +1 -0
  151. package/dist/index40.cjs +2 -0
  152. package/dist/index40.cjs.map +1 -0
  153. package/dist/index40.js +5 -0
  154. package/dist/index40.js.map +1 -0
  155. package/dist/index5.cjs +2 -0
  156. package/dist/index5.cjs.map +1 -0
  157. package/dist/index5.js +40 -0
  158. package/dist/index5.js.map +1 -0
  159. package/dist/index6.cjs +5 -0
  160. package/dist/index6.cjs.map +1 -0
  161. package/dist/index6.js +43 -0
  162. package/dist/index6.js.map +1 -0
  163. package/dist/index7.cjs +2 -0
  164. package/dist/index7.cjs.map +1 -0
  165. package/dist/index7.js +6 -0
  166. package/dist/index7.js.map +1 -0
  167. package/dist/index8.cjs +2 -0
  168. package/dist/index8.cjs.map +1 -0
  169. package/dist/index8.js +26 -0
  170. package/dist/index8.js.map +1 -0
  171. package/dist/index9.cjs +5 -0
  172. package/dist/index9.cjs.map +1 -0
  173. package/dist/index9.js +34 -0
  174. package/dist/index9.js.map +1 -0
  175. package/package.json +4 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index7.cjs","sources":["../src/components/Tag/Tag.tsx"],"sourcesContent":["import { FC } from 'react';\n\ntype TagProps = {\n label: string;\n};\n\nexport const Tag: FC<TagProps> = ({ label }) => {\n return (\n <span className=\"inline-block px-1.5 py-1 text-xs font-bold rounded-sm bg-yellow-400 uppercase leading-4\">\n {label}\n </span>\n );\n};\n"],"names":["Tag","label","jsx"],"mappings":"iHAMaA,EAAoB,CAAC,CAAE,MAAAC,KAE/BC,EAAAA,kBAAAA,IAAA,OAAA,CAAK,UAAU,0FACb,SACHD,CAAA,CAAA"}
package/dist/index7.js ADDED
@@ -0,0 +1,6 @@
1
+ import { j as s } from "./index12.js";
2
+ const o = ({ label: e }) => /* @__PURE__ */ s.jsx("span", { className: "inline-block px-1.5 py-1 text-xs font-bold rounded-sm bg-yellow-400 uppercase leading-4", children: e });
3
+ export {
4
+ o as Tag
5
+ };
6
+ //# sourceMappingURL=index7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index7.js","sources":["../src/components/Tag/Tag.tsx"],"sourcesContent":["import { FC } from 'react';\n\ntype TagProps = {\n label: string;\n};\n\nexport const Tag: FC<TagProps> = ({ label }) => {\n return (\n <span className=\"inline-block px-1.5 py-1 text-xs font-bold rounded-sm bg-yellow-400 uppercase leading-4\">\n {label}\n </span>\n );\n};\n"],"names":["Tag","label","jsx"],"mappings":";AAMO,MAAMA,IAAoB,CAAC,EAAE,OAAAC,QAE/BC,gBAAAA,EAAAA,IAAA,QAAA,EAAK,WAAU,2FACb,UACHD,EAAA,CAAA;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index12.cjs"),s=require("./index3.cjs"),u=n=>{const{title:t,content:i,successButtonType:c,cancelButtonType:l,successButtonText:o,cancelButtonText:x,cancelAction:r,successAction:a}=n;return e.jsxRuntimeExports.jsx("div",{className:"fixed inset-0 flex items-start justify-center z-50 backdrop-brightness-50",children:e.jsxRuntimeExports.jsxs("div",{className:"flex flex-col gap-3 bg-white rounded shadow-lg p-8 mt-14 w-[500px]",children:[t&&e.jsxRuntimeExports.jsx("div",{className:"text-lg font-semibold",children:t}),e.jsxRuntimeExports.jsx("p",{className:"leading-normal",children:i}),e.jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-end gap-4 pt-2",children:[e.jsxRuntimeExports.jsx(s.Button,{type:l,onClick:r,label:x}),e.jsxRuntimeExports.jsx(s.Button,{type:c,onClick:a,label:o})]})]})})};exports.Modal=u;
2
+ //# sourceMappingURL=index8.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index8.cjs","sources":["../src/components/Modal/Modal.tsx"],"sourcesContent":["import { FC } from 'react';\nimport { Button } from '../Button';\n\nexport interface ModalProps {\n title?: string;\n content: string;\n successButtonText: string;\n cancelButtonText: string;\n successButtonType: 'primary' | 'secondary' | 'negative' | 'negative-secondary';\n cancelButtonType: 'primary' | 'secondary' | 'negative' | 'negative-secondary';\n cancelAction?: () => void;\n successAction?: () => void;\n}\n\nexport const Modal: FC<ModalProps> = (props) => {\n const {\n title,\n content,\n successButtonType,\n cancelButtonType,\n successButtonText,\n cancelButtonText,\n cancelAction,\n successAction\n } = props;\n\n return (\n <div className=\"fixed inset-0 flex items-start justify-center z-50 backdrop-brightness-50\">\n <div className=\"flex flex-col gap-3 bg-white rounded shadow-lg p-8 mt-14 w-[500px]\">\n {title && <div className=\"text-lg font-semibold\">{title}</div>}\n <p className=\"leading-normal\">{content}</p>\n <div className=\"flex items-center justify-end gap-4 pt-2\">\n <Button type={cancelButtonType} onClick={cancelAction} label={cancelButtonText} />\n <Button type={successButtonType} onClick={successAction} label={successButtonText} />\n </div>\n </div>\n </div>\n );\n};\n"],"names":["Modal","props","title","content","successButtonType","cancelButtonType","successButtonText","cancelButtonText","cancelAction","successAction","jsxs","jsx","Button"],"mappings":"2IAcaA,EAAyBC,GAAU,CACxC,KAAA,CACJ,MAAAC,EACA,QAAAC,EACA,kBAAAC,EACA,iBAAAC,EACA,kBAAAC,EACA,iBAAAC,EACA,aAAAC,EACA,cAAAC,CACE,EAAAR,EAEJ,+BACG,MAAI,CAAA,UAAU,4EACb,SAACS,EAAA,kBAAA,KAAA,MAAA,CAAI,UAAU,qEACZ,SAAA,CAAAR,GAAUS,EAAA,kBAAA,IAAA,MAAA,CAAI,UAAU,wBAAyB,SAAMT,EAAA,EACvDS,EAAA,kBAAA,IAAA,IAAA,CAAE,UAAU,iBAAkB,SAAQR,EAAA,EACvCO,EAAAA,kBAAAA,KAAC,MAAI,CAAA,UAAU,2CACb,SAAA,CAAAC,wBAACC,EAAAA,QAAO,KAAMP,EAAkB,QAASG,EAAc,MAAOD,EAAkB,0BAC/EK,EAAAA,OAAO,CAAA,KAAMR,EAAmB,QAASK,EAAe,MAAOH,EAAmB,CAAA,EACrF,CAAA,CACF,CAAA,CACF,CAAA,CAEJ"}
package/dist/index8.js ADDED
@@ -0,0 +1,26 @@
1
+ import { j as e } from "./index12.js";
2
+ import { Button as s } from "./index3.js";
3
+ const p = (c) => {
4
+ const {
5
+ title: t,
6
+ content: n,
7
+ successButtonType: l,
8
+ cancelButtonType: i,
9
+ successButtonText: o,
10
+ cancelButtonText: a,
11
+ cancelAction: r,
12
+ successAction: x
13
+ } = c;
14
+ return /* @__PURE__ */ e.jsx("div", { className: "fixed inset-0 flex items-start justify-center z-50 backdrop-brightness-50", children: /* @__PURE__ */ e.jsxs("div", { className: "flex flex-col gap-3 bg-white rounded shadow-lg p-8 mt-14 w-[500px]", children: [
15
+ t && /* @__PURE__ */ e.jsx("div", { className: "text-lg font-semibold", children: t }),
16
+ /* @__PURE__ */ e.jsx("p", { className: "leading-normal", children: n }),
17
+ /* @__PURE__ */ e.jsxs("div", { className: "flex items-center justify-end gap-4 pt-2", children: [
18
+ /* @__PURE__ */ e.jsx(s, { type: i, onClick: r, label: a }),
19
+ /* @__PURE__ */ e.jsx(s, { type: l, onClick: x, label: o })
20
+ ] })
21
+ ] }) });
22
+ };
23
+ export {
24
+ p as Modal
25
+ };
26
+ //# sourceMappingURL=index8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index8.js","sources":["../src/components/Modal/Modal.tsx"],"sourcesContent":["import { FC } from 'react';\nimport { Button } from '../Button';\n\nexport interface ModalProps {\n title?: string;\n content: string;\n successButtonText: string;\n cancelButtonText: string;\n successButtonType: 'primary' | 'secondary' | 'negative' | 'negative-secondary';\n cancelButtonType: 'primary' | 'secondary' | 'negative' | 'negative-secondary';\n cancelAction?: () => void;\n successAction?: () => void;\n}\n\nexport const Modal: FC<ModalProps> = (props) => {\n const {\n title,\n content,\n successButtonType,\n cancelButtonType,\n successButtonText,\n cancelButtonText,\n cancelAction,\n successAction\n } = props;\n\n return (\n <div className=\"fixed inset-0 flex items-start justify-center z-50 backdrop-brightness-50\">\n <div className=\"flex flex-col gap-3 bg-white rounded shadow-lg p-8 mt-14 w-[500px]\">\n {title && <div className=\"text-lg font-semibold\">{title}</div>}\n <p className=\"leading-normal\">{content}</p>\n <div className=\"flex items-center justify-end gap-4 pt-2\">\n <Button type={cancelButtonType} onClick={cancelAction} label={cancelButtonText} />\n <Button type={successButtonType} onClick={successAction} label={successButtonText} />\n </div>\n </div>\n </div>\n );\n};\n"],"names":["Modal","props","title","content","successButtonType","cancelButtonType","successButtonText","cancelButtonText","cancelAction","successAction","jsxs","jsx","Button"],"mappings":";;AAca,MAAAA,IAAwB,CAACC,MAAU;AACxC,QAAA;AAAA,IACJ,OAAAC;AAAA,IACA,SAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,eAAAC;AAAA,EACE,IAAAR;AAEJ,+BACG,OAAI,EAAA,WAAU,6EACb,UAACS,gBAAAA,EAAA,KAAA,OAAA,EAAI,WAAU,sEACZ,UAAA;AAAA,IAAAR,KAAUS,gBAAAA,EAAA,IAAA,OAAA,EAAI,WAAU,yBAAyB,UAAMT,GAAA;AAAA,IACvDS,gBAAAA,EAAA,IAAA,KAAA,EAAE,WAAU,kBAAkB,UAAQR,GAAA;AAAA,IACvCO,gBAAAA,EAAAA,KAAC,OAAI,EAAA,WAAU,4CACb,UAAA;AAAA,MAAAC,gBAAAA,MAACC,KAAO,MAAMP,GAAkB,SAASG,GAAc,OAAOD,GAAkB;AAAA,4BAC/EK,GAAO,EAAA,MAAMR,GAAmB,SAASK,GAAe,OAAOH,GAAmB;AAAA,IAAA,GACrF;AAAA,EAAA,EACF,CAAA,EACF,CAAA;AAEJ;"}
@@ -0,0 +1,5 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index12.cjs"),s=require("react"),d=({content:l,tooltipSrc:a,position:t="bottom-center",displayOn:o="hover"})=>{const[c,f]=s.useState(o==="always-on"),r=s.useRef(null);s.useEffect(()=>{const e=r.current;e&&(t=="bottom-center"?(e.setAttribute("style","left: 50%;transform: translateX(-50%);"),e.classList.add("before:left-[calc(50%-7px)]"),e.classList.add("before:top-[-7px]")):t=="bottom-left"?(e.classList.add("before:left-[calc(10%-7px)]"),e.classList.add("before:top-[-7px]")):t=="bottom-right"?(e.setAttribute("style","right: 0;"),e.classList.add("before:right-[calc(10%+7px)]"),e.classList.add("before:top-[-7px]")):t=="left"?(e.setAttribute("style","right: calc(100% + 10px);top:0;"),e.classList.add("before:right-[-6px]"),e.classList.add("before:top-0px")):t=="right"&&(e.setAttribute("style","left: calc(100% + 10px);top:0;"),e.classList.add("before:left-[-6px]"),e.classList.add("before:top-0px")),o=="hover"&&e.classList.add("group-hover:visible"))},[l]),s.useEffect(()=>{const e=r.current;e&&(c?e.classList.remove("invisible"):e.classList.add("invisible"))},[c]);const n=()=>{o=="click"&&f(e=>!e)};return i.jsxRuntimeExports.jsxs("div",{className:"group relative",onClick:n,children:[i.jsxRuntimeExports.jsx("div",{className:"cursor-pointer",id:"tooltip-trigger",children:a}),i.jsxRuntimeExports.jsx("div",{ref:r,id:"tooltip-content",className:`flex justify-center px-3 py-2 min-w-24 max-w-60
2
+ absolute top-[calc(100%+8px)] w-max bg-gray-800 text-white text-xs rounded-[3px]
3
+ before:content-[' '] before:w-3.5 before:h-3.5 before:bg-gray-800 before:inline-block
4
+ before:absolute before:rounded-tl-sm before:rotate-45`,children:l})]})};exports.Tooltip=d;
5
+ //# sourceMappingURL=index9.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index9.cjs","sources":["../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import { useEffect, useState, useRef } from \"react\";\n\nexport interface TooltipProps {\n /**\n * Tooltip contents\n */\n content: string;\n /**\n * Tooltip position\n */\n position?: \"bottom-center\" | \"bottom-left\" | \"bottom-right\" | \"left\" | \"right\";\n /**\n * Display tooltip on Hover, Click or Always\n */\n displayOn?: 'hover' | 'click' | 'always-on';\n /**\n * Tooltip trigger contents\n */\n tooltipSrc?: React.ReactNode;\n}\n\nexport const Tooltip = ({ content, tooltipSrc, position = 'bottom-center', displayOn = 'hover' }: TooltipProps) => {\n const [displayTooltip, setDisplayTooltip] = useState(displayOn === 'always-on');\n const tooltipContentRef = useRef<HTMLDivElement>(null);;\n\n useEffect(() => {\n const tooltipContent = tooltipContentRef.current;\n\n if(!tooltipContent) {\n return\n }\n \n if(position == 'bottom-center') {\n tooltipContent.setAttribute(\"style\", `left: 50%;transform: translateX(-50%);`);\n tooltipContent.classList.add(`before:left-[calc(50%-7px)]`);\n tooltipContent.classList.add(`before:top-[-7px]`);\n } else if(position == 'bottom-left') {\n tooltipContent.classList.add(`before:left-[calc(10%-7px)]`);\n tooltipContent.classList.add(`before:top-[-7px]`);\n } else if(position == 'bottom-right') {\n tooltipContent.setAttribute(\"style\", `right: 0;`);\n tooltipContent.classList.add(`before:right-[calc(10%+7px)]`);\n tooltipContent.classList.add(`before:top-[-7px]`);\n } else if(position == 'left') {\n tooltipContent.setAttribute(\"style\", `right: calc(100% + 10px);top:0;`);\n tooltipContent.classList.add(`before:right-[-6px]`);\n tooltipContent.classList.add(`before:top-0px`);\n } else if(position == 'right') {\n tooltipContent.setAttribute(\"style\", `left: calc(100% + 10px);top:0;`);\n tooltipContent.classList.add(`before:left-[-6px]`);\n tooltipContent.classList.add(`before:top-0px`);\n }\n\n if(displayOn == 'hover') {\n tooltipContent.classList.add(`group-hover:visible`);\n }\n }, [content]);\n\n useEffect(() => {\n const tooltipContent = tooltipContentRef.current;\n\n if(!tooltipContent) {\n return;\n }\n if(displayTooltip) {\n tooltipContent.classList.remove(`invisible`);\n } else {\n tooltipContent.classList.add(`invisible`);\n }\n }, [displayTooltip])\n\n const onTooltipSrcClick = () => {\n if(displayOn == 'click') {\n setDisplayTooltip((displayTooltip) => !displayTooltip)\n }\n }\n\n return (\n <div className=\"group relative\" onClick={onTooltipSrcClick}>\n <div className=\"cursor-pointer\" id=\"tooltip-trigger\">\n {tooltipSrc}\n </div>\n <div\n ref={tooltipContentRef}\n id=\"tooltip-content\"\n className=\"flex justify-center px-3 py-2 min-w-24 max-w-60\n absolute top-[calc(100%+8px)] w-max bg-gray-800 text-white text-xs rounded-[3px]\n before:content-[' '] before:w-3.5 before:h-3.5 before:bg-gray-800 before:inline-block\n before:absolute before:rounded-tl-sm before:rotate-45\"\n >\n {content}\n </div>\n </div>\n );\n};\n"],"names":["Tooltip","content","tooltipSrc","position","displayOn","displayTooltip","setDisplayTooltip","useState","tooltipContentRef","useRef","useEffect","tooltipContent","onTooltipSrcClick","jsxs","jsx"],"mappings":"oIAqBaA,EAAU,CAAC,CAAE,QAAAC,EAAS,WAAAC,EAAY,SAAAC,EAAW,gBAAiB,UAAAC,EAAY,WAA4B,CACjH,KAAM,CAACC,EAAgBC,CAAiB,EAAIC,EAAAA,SAASH,IAAc,WAAW,EACxEI,EAAoBC,SAAuB,IAAI,EAErDC,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAiBH,EAAkB,QAErCG,IAIDR,GAAY,iBACEQ,EAAA,aAAa,QAAS,wCAAwC,EAC9DA,EAAA,UAAU,IAAI,6BAA6B,EAC3CA,EAAA,UAAU,IAAI,mBAAmB,GACxCR,GAAY,eACLQ,EAAA,UAAU,IAAI,6BAA6B,EAC3CA,EAAA,UAAU,IAAI,mBAAmB,GACxCR,GAAY,gBACLQ,EAAA,aAAa,QAAS,WAAW,EACjCA,EAAA,UAAU,IAAI,8BAA8B,EAC5CA,EAAA,UAAU,IAAI,mBAAmB,GACxCR,GAAY,QACLQ,EAAA,aAAa,QAAS,iCAAiC,EACvDA,EAAA,UAAU,IAAI,qBAAqB,EACnCA,EAAA,UAAU,IAAI,gBAAgB,GACrCR,GAAY,UACLQ,EAAA,aAAa,QAAS,gCAAgC,EACtDA,EAAA,UAAU,IAAI,oBAAoB,EAClCA,EAAA,UAAU,IAAI,gBAAgB,GAG5CP,GAAa,SACCO,EAAA,UAAU,IAAI,qBAAqB,EACpD,EACC,CAACV,CAAO,CAAC,EAEZS,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAiBH,EAAkB,QAErCG,IAGDN,EACcM,EAAA,UAAU,OAAO,WAAW,EAE5BA,EAAA,UAAU,IAAI,WAAW,EAC1C,EACC,CAACN,CAAc,CAAC,EAEnB,MAAMO,EAAoB,IAAM,CAC3BR,GAAa,SACIE,EAACD,GAAmB,CAACA,CAAc,CACvD,EAGF,OACGQ,EAAAA,kBAAAA,KAAA,MAAA,CAAI,UAAU,iBAAiB,QAASD,EACvC,SAAA,CAAAE,wBAAC,MAAI,CAAA,UAAU,iBAAiB,GAAG,kBAChC,SACHZ,EAAA,EACAY,EAAA,kBAAA,IAAC,MAAA,CACC,IAAKN,EACL,GAAG,kBACH,UAAU;AAAA;AAAA;AAAA,iEAKT,SAAAP,CAAA,CACH,CACF,CAAA,CAAA,CAEJ"}
package/dist/index9.js ADDED
@@ -0,0 +1,34 @@
1
+ import { j as r } from "./index12.js";
2
+ import { useState as p, useRef as d, useEffect as a } from "react";
3
+ const u = ({ content: l, tooltipSrc: c, position: t = "bottom-center", displayOn: s = "hover" }) => {
4
+ const [i, f] = p(s === "always-on"), o = d(null);
5
+ a(() => {
6
+ const e = o.current;
7
+ e && (t == "bottom-center" ? (e.setAttribute("style", "left: 50%;transform: translateX(-50%);"), e.classList.add("before:left-[calc(50%-7px)]"), e.classList.add("before:top-[-7px]")) : t == "bottom-left" ? (e.classList.add("before:left-[calc(10%-7px)]"), e.classList.add("before:top-[-7px]")) : t == "bottom-right" ? (e.setAttribute("style", "right: 0;"), e.classList.add("before:right-[calc(10%+7px)]"), e.classList.add("before:top-[-7px]")) : t == "left" ? (e.setAttribute("style", "right: calc(100% + 10px);top:0;"), e.classList.add("before:right-[-6px]"), e.classList.add("before:top-0px")) : t == "right" && (e.setAttribute("style", "left: calc(100% + 10px);top:0;"), e.classList.add("before:left-[-6px]"), e.classList.add("before:top-0px")), s == "hover" && e.classList.add("group-hover:visible"));
8
+ }, [l]), a(() => {
9
+ const e = o.current;
10
+ e && (i ? e.classList.remove("invisible") : e.classList.add("invisible"));
11
+ }, [i]);
12
+ const n = () => {
13
+ s == "click" && f((e) => !e);
14
+ };
15
+ return /* @__PURE__ */ r.jsxs("div", { className: "group relative", onClick: n, children: [
16
+ /* @__PURE__ */ r.jsx("div", { className: "cursor-pointer", id: "tooltip-trigger", children: c }),
17
+ /* @__PURE__ */ r.jsx(
18
+ "div",
19
+ {
20
+ ref: o,
21
+ id: "tooltip-content",
22
+ className: `flex justify-center px-3 py-2 min-w-24 max-w-60
23
+ absolute top-[calc(100%+8px)] w-max bg-gray-800 text-white text-xs rounded-[3px]
24
+ before:content-[' '] before:w-3.5 before:h-3.5 before:bg-gray-800 before:inline-block
25
+ before:absolute before:rounded-tl-sm before:rotate-45`,
26
+ children: l
27
+ }
28
+ )
29
+ ] });
30
+ };
31
+ export {
32
+ u as Tooltip
33
+ };
34
+ //# sourceMappingURL=index9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index9.js","sources":["../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import { useEffect, useState, useRef } from \"react\";\n\nexport interface TooltipProps {\n /**\n * Tooltip contents\n */\n content: string;\n /**\n * Tooltip position\n */\n position?: \"bottom-center\" | \"bottom-left\" | \"bottom-right\" | \"left\" | \"right\";\n /**\n * Display tooltip on Hover, Click or Always\n */\n displayOn?: 'hover' | 'click' | 'always-on';\n /**\n * Tooltip trigger contents\n */\n tooltipSrc?: React.ReactNode;\n}\n\nexport const Tooltip = ({ content, tooltipSrc, position = 'bottom-center', displayOn = 'hover' }: TooltipProps) => {\n const [displayTooltip, setDisplayTooltip] = useState(displayOn === 'always-on');\n const tooltipContentRef = useRef<HTMLDivElement>(null);;\n\n useEffect(() => {\n const tooltipContent = tooltipContentRef.current;\n\n if(!tooltipContent) {\n return\n }\n \n if(position == 'bottom-center') {\n tooltipContent.setAttribute(\"style\", `left: 50%;transform: translateX(-50%);`);\n tooltipContent.classList.add(`before:left-[calc(50%-7px)]`);\n tooltipContent.classList.add(`before:top-[-7px]`);\n } else if(position == 'bottom-left') {\n tooltipContent.classList.add(`before:left-[calc(10%-7px)]`);\n tooltipContent.classList.add(`before:top-[-7px]`);\n } else if(position == 'bottom-right') {\n tooltipContent.setAttribute(\"style\", `right: 0;`);\n tooltipContent.classList.add(`before:right-[calc(10%+7px)]`);\n tooltipContent.classList.add(`before:top-[-7px]`);\n } else if(position == 'left') {\n tooltipContent.setAttribute(\"style\", `right: calc(100% + 10px);top:0;`);\n tooltipContent.classList.add(`before:right-[-6px]`);\n tooltipContent.classList.add(`before:top-0px`);\n } else if(position == 'right') {\n tooltipContent.setAttribute(\"style\", `left: calc(100% + 10px);top:0;`);\n tooltipContent.classList.add(`before:left-[-6px]`);\n tooltipContent.classList.add(`before:top-0px`);\n }\n\n if(displayOn == 'hover') {\n tooltipContent.classList.add(`group-hover:visible`);\n }\n }, [content]);\n\n useEffect(() => {\n const tooltipContent = tooltipContentRef.current;\n\n if(!tooltipContent) {\n return;\n }\n if(displayTooltip) {\n tooltipContent.classList.remove(`invisible`);\n } else {\n tooltipContent.classList.add(`invisible`);\n }\n }, [displayTooltip])\n\n const onTooltipSrcClick = () => {\n if(displayOn == 'click') {\n setDisplayTooltip((displayTooltip) => !displayTooltip)\n }\n }\n\n return (\n <div className=\"group relative\" onClick={onTooltipSrcClick}>\n <div className=\"cursor-pointer\" id=\"tooltip-trigger\">\n {tooltipSrc}\n </div>\n <div\n ref={tooltipContentRef}\n id=\"tooltip-content\"\n className=\"flex justify-center px-3 py-2 min-w-24 max-w-60\n absolute top-[calc(100%+8px)] w-max bg-gray-800 text-white text-xs rounded-[3px]\n before:content-[' '] before:w-3.5 before:h-3.5 before:bg-gray-800 before:inline-block\n before:absolute before:rounded-tl-sm before:rotate-45\"\n >\n {content}\n </div>\n </div>\n );\n};\n"],"names":["Tooltip","content","tooltipSrc","position","displayOn","displayTooltip","setDisplayTooltip","useState","tooltipContentRef","useRef","useEffect","tooltipContent","onTooltipSrcClick","jsxs","jsx"],"mappings":";;AAqBa,MAAAA,IAAU,CAAC,EAAE,SAAAC,GAAS,YAAAC,GAAY,UAAAC,IAAW,iBAAiB,WAAAC,IAAY,cAA4B;AACjH,QAAM,CAACC,GAAgBC,CAAiB,IAAIC,EAASH,MAAc,WAAW,GACxEI,IAAoBC,EAAuB,IAAI;AAErD,EAAAC,EAAU,MAAM;AACd,UAAMC,IAAiBH,EAAkB;AAEzC,IAAIG,MAIDR,KAAY,mBACEQ,EAAA,aAAa,SAAS,wCAAwC,GAC9DA,EAAA,UAAU,IAAI,6BAA6B,GAC3CA,EAAA,UAAU,IAAI,mBAAmB,KACxCR,KAAY,iBACLQ,EAAA,UAAU,IAAI,6BAA6B,GAC3CA,EAAA,UAAU,IAAI,mBAAmB,KACxCR,KAAY,kBACLQ,EAAA,aAAa,SAAS,WAAW,GACjCA,EAAA,UAAU,IAAI,8BAA8B,GAC5CA,EAAA,UAAU,IAAI,mBAAmB,KACxCR,KAAY,UACLQ,EAAA,aAAa,SAAS,iCAAiC,GACvDA,EAAA,UAAU,IAAI,qBAAqB,GACnCA,EAAA,UAAU,IAAI,gBAAgB,KACrCR,KAAY,YACLQ,EAAA,aAAa,SAAS,gCAAgC,GACtDA,EAAA,UAAU,IAAI,oBAAoB,GAClCA,EAAA,UAAU,IAAI,gBAAgB,IAG5CP,KAAa,WACCO,EAAA,UAAU,IAAI,qBAAqB;AAAA,EACpD,GACC,CAACV,CAAO,CAAC,GAEZS,EAAU,MAAM;AACd,UAAMC,IAAiBH,EAAkB;AAEzC,IAAIG,MAGDN,IACcM,EAAA,UAAU,OAAO,WAAW,IAE5BA,EAAA,UAAU,IAAI,WAAW;AAAA,EAC1C,GACC,CAACN,CAAc,CAAC;AAEnB,QAAMO,IAAoB,MAAM;AAC9B,IAAGR,KAAa,WACIE,EAAA,CAACD,MAAmB,CAACA,CAAc;AAAA,EACvD;AAGF,SACGQ,gBAAAA,EAAAA,KAAA,OAAA,EAAI,WAAU,kBAAiB,SAASD,GACvC,UAAA;AAAA,IAAAE,gBAAAA,MAAC,OAAI,EAAA,WAAU,kBAAiB,IAAG,mBAChC,UACHZ,GAAA;AAAA,IACAY,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAKN;AAAA,QACL,IAAG;AAAA,QACH,WAAU;AAAA;AAAA;AAAA;AAAA,QAKT,UAAAP;AAAA,MAAA;AAAA,IACH;AAAA,EACF,EAAA,CAAA;AAEJ;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "se-design",
3
- "version": "0.0.93",
3
+ "version": "0.0.94",
4
4
  "type": "module",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.js",
@@ -30,6 +30,9 @@
30
30
  "react": ">=16.9.0",
31
31
  "react-dom": ">=16.9.0"
32
32
  },
33
+ "publishConfig": {
34
+ "access": "public"
35
+ },
33
36
  "devDependencies": {
34
37
  "@chromatic-com/storybook": "^1.6.1",
35
38
  "@storybook/addon-essentials": "^8.2.7",