bromcom-ui 2.11.1-rc.9-3 → 2.11.1-rc.9-4

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 (183) hide show
  1. package/dist/bromcom-ui/bromcom-ui.css +1 -1
  2. package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
  3. package/dist/bromcom-ui/{p-3cdfd8eb.entry.js → p-082b9695.entry.js} +1 -1
  4. package/dist/bromcom-ui/{p-14ed8029.entry.js → p-0da8ad9f.entry.js} +1 -1
  5. package/dist/bromcom-ui/{p-7fd22a35.entry.js → p-0ef4f5ec.entry.js} +1 -1
  6. package/dist/bromcom-ui/p-15199f10.entry.js +5 -0
  7. package/dist/bromcom-ui/{p-0eacfbb2.entry.js → p-198cccb5.entry.js} +1 -1
  8. package/dist/bromcom-ui/p-222203a4.entry.js +16 -0
  9. package/dist/bromcom-ui/{p-adcb30bc.entry.js → p-2ab3e5cb.entry.js} +1 -1
  10. package/dist/bromcom-ui/p-2addde9e.js +5 -0
  11. package/dist/bromcom-ui/p-2b42d77e.entry.js +5 -0
  12. package/dist/bromcom-ui/{p-db15dca3.entry.js → p-2c9f9889.entry.js} +1 -1
  13. package/dist/bromcom-ui/{p-a018f340.entry.js → p-42d09898.entry.js} +1 -1
  14. package/dist/bromcom-ui/{p-6f37a4d7.entry.js → p-471c7f34.entry.js} +1 -1
  15. package/dist/bromcom-ui/{p-35c215f2.entry.js → p-4d0680e1.entry.js} +1 -1
  16. package/dist/bromcom-ui/{p-8b31581f.js → p-5cb99e9e.js} +1 -1
  17. package/dist/bromcom-ui/{p-9589f69c.entry.js → p-5d670fd7.entry.js} +1 -1
  18. package/dist/bromcom-ui/{p-e497cf5d.entry.js → p-5df2d3f1.entry.js} +1 -1
  19. package/dist/bromcom-ui/{p-70253803.entry.js → p-5ee56cae.entry.js} +1 -1
  20. package/dist/bromcom-ui/{p-e10780ed.entry.js → p-603efb90.entry.js} +1 -1
  21. package/dist/bromcom-ui/{p-178fa936.entry.js → p-64a8db1d.entry.js} +1 -1
  22. package/dist/bromcom-ui/{p-61753299.js → p-6bea284a.js} +1 -1
  23. package/dist/bromcom-ui/{p-dc607ae4.entry.js → p-7230713c.entry.js} +1 -1
  24. package/dist/bromcom-ui/{p-fba1682e.entry.js → p-7d4f57be.entry.js} +1 -1
  25. package/dist/bromcom-ui/p-87e5fda5.entry.js +5 -0
  26. package/dist/bromcom-ui/{p-e93d6619.js → p-8f3ca5d9.js} +1 -1
  27. package/dist/bromcom-ui/p-9bbd341c.entry.js +5 -0
  28. package/dist/bromcom-ui/{p-bca0ff0a.entry.js → p-a292b41d.entry.js} +1 -1
  29. package/dist/bromcom-ui/{p-90223f9f.entry.js → p-a933ac12.entry.js} +1 -1
  30. package/dist/bromcom-ui/{p-5a22b74b.entry.js → p-adb21984.entry.js} +1 -1
  31. package/dist/bromcom-ui/p-aeb4be41.js +5 -0
  32. package/dist/bromcom-ui/p-b847cbea.js +5 -0
  33. package/dist/bromcom-ui/p-bbe8c777.entry.js +5 -0
  34. package/dist/bromcom-ui/{p-c10b07cc.entry.js → p-c157a7d4.entry.js} +1 -1
  35. package/dist/bromcom-ui/{p-ebeb9689.entry.js → p-c23d73fb.entry.js} +1 -1
  36. package/dist/bromcom-ui/p-c67a5e5f.entry.js +5 -0
  37. package/dist/bromcom-ui/p-c77541f4.js +10 -0
  38. package/dist/bromcom-ui/{p-abd2f9ff.entry.js → p-c89acfca.entry.js} +1 -1
  39. package/dist/bromcom-ui/p-d1298c40.js +5 -0
  40. package/dist/bromcom-ui/{p-5bf1657b.entry.js → p-e8bb9019.entry.js} +1 -1
  41. package/dist/bromcom-ui/{p-627c7769.entry.js → p-e9928d0c.entry.js} +1 -1
  42. package/dist/bromcom-ui/p-f478ad92.entry.js +5 -0
  43. package/dist/bromcom-ui/{p-5a391fcd.js → p-fcf70988.js} +1 -1
  44. package/dist/cjs/{bcm-accordion_46.cjs.entry.js → bcm-accordion_47.cjs.entry.js} +8764 -8633
  45. package/dist/cjs/bcm-alert.cjs.entry.js +3 -3
  46. package/dist/cjs/bcm-attendance-actions-comment.cjs.entry.js +6 -6
  47. package/dist/cjs/bcm-attendance-actions-dropdown.cjs.entry.js +6 -6
  48. package/dist/cjs/bcm-breadcrumb.cjs.entry.js +3 -3
  49. package/dist/cjs/bcm-caption.cjs.entry.js +6 -6
  50. package/dist/cjs/bcm-card.cjs.entry.js +4 -4
  51. package/dist/cjs/bcm-checkbox-lite_8.cjs.entry.js +3 -3
  52. package/dist/cjs/bcm-chip-group.cjs.entry.js +6 -6
  53. package/dist/cjs/bcm-collapse.cjs.entry.js +3 -3
  54. package/dist/cjs/bcm-date-picker.cjs.entry.js +3 -3
  55. package/dist/cjs/bcm-datetime-picker.cjs.entry.js +3 -3
  56. package/dist/cjs/bcm-default.cjs.entry.js +3 -3
  57. package/dist/cjs/bcm-form-2.cjs.entry.js +5 -4
  58. package/dist/cjs/bcm-input-2.cjs.entry.js +153 -0
  59. package/dist/cjs/bcm-input-custom.cjs.entry.js +3 -3
  60. package/dist/cjs/bcm-input-dropdown.cjs.entry.js +6 -6
  61. package/dist/cjs/bcm-modal-2-footer.cjs.entry.js +6 -6
  62. package/dist/cjs/bcm-modal-2-header.cjs.entry.js +6 -6
  63. package/dist/cjs/bcm-modal-2.cjs.entry.js +6 -6
  64. package/dist/cjs/bcm-number-input.cjs.entry.js +260 -72
  65. package/dist/cjs/bcm-overlay_2.cjs.entry.js +1 -1
  66. package/dist/cjs/bcm-popover.cjs.entry.js +6 -6
  67. package/dist/cjs/bcm-range.cjs.entry.js +3 -3
  68. package/dist/cjs/bcm-react-number.cjs.entry.js +1230 -0
  69. package/dist/cjs/bcm-skeleton.cjs.entry.js +6 -6
  70. package/dist/cjs/bcm-table.cjs.entry.js +6 -6
  71. package/dist/cjs/bcm-tag.cjs.entry.js +4 -4
  72. package/dist/cjs/bcm-time-picker.cjs.entry.js +3 -3
  73. package/dist/cjs/bcm-toast.cjs.entry.js +3 -3
  74. package/dist/cjs/bromcom-ui.cjs.js +3 -3
  75. package/dist/cjs/{color-helper-c3a819ea.js → color-helper-dc98a2ca.js} +1 -1
  76. package/dist/cjs/{colors-078851ec.js → colors-250d0982.js} +13 -7
  77. package/dist/cjs/{generate-f73a098d.js → generate-2f15ee94.js} +2 -2
  78. package/dist/cjs/{global-baf04c81.js → global-da78178f.js} +1 -1
  79. package/dist/cjs/index-e05a7c6f.js +545 -0
  80. package/dist/cjs/input.style-b5676e6a.js +122 -0
  81. package/dist/cjs/loader.cjs.js +3 -3
  82. package/dist/cjs/{number-helper-0543a62e.js → number-helper-9b0b5976.js} +1 -1
  83. package/dist/cjs/old-bcm-popover-box.cjs.entry.js +4 -4
  84. package/dist/cjs/old-bcm-popover.cjs.entry.js +3 -3
  85. package/dist/cjs/{package-e717a31f.js → package-7b89373b.js} +1 -1
  86. package/dist/cjs/{validators-77768582.js → validators-082184cd.js} +1 -1
  87. package/dist/collection/collection-manifest.json +2 -0
  88. package/dist/collection/components/atoms/link/link.css +9 -3
  89. package/dist/collection/components/molecules/input/input.style.js +117 -0
  90. package/dist/collection/components/molecules/input/input2.js +918 -0
  91. package/dist/collection/components/molecules/number-input/number-input.js +776 -95
  92. package/dist/collection/components/molecules/number-input/react-input.js +96 -0
  93. package/dist/collection/components/molecules/radio/radio.js +1 -1
  94. package/dist/collection/components/organism/form/form.js +2 -2
  95. package/dist/collection/components/organism/form-2/bcm-form-components.js +2 -1
  96. package/dist/collection/components/organism/list/list.css +0 -1
  97. package/dist/collection/components/third-parts/rc-picker/date.js +1 -1
  98. package/dist/collection/components/third-parts/rc-picker/rc-picker.css +40 -5
  99. package/dist/collection/components/third-parts/rc-picker/rc-picker.js +11 -2
  100. package/dist/components/{raf.js → Overflow.js} +692 -69
  101. package/dist/components/bcm-date.js +1 -1
  102. package/dist/components/bcm-form-2.js +2 -1
  103. package/dist/components/bcm-input-2.d.ts +11 -0
  104. package/dist/components/bcm-input-2.js +225 -0
  105. package/dist/components/bcm-number-input.js +295 -79
  106. package/dist/components/bcm-react-number.d.ts +11 -0
  107. package/dist/components/bcm-react-number.js +10 -0
  108. package/dist/components/colors2.js +13 -7
  109. package/dist/components/form.js +2 -2
  110. package/dist/components/generate.js +1 -1
  111. package/dist/components/index.d.ts +2 -0
  112. package/dist/components/index.js +2 -0
  113. package/dist/components/input.style.js +120 -0
  114. package/dist/components/link.js +1 -1
  115. package/dist/components/list.js +1 -1
  116. package/dist/components/radio.js +1 -1
  117. package/dist/components/rc-overflow.js +1 -593
  118. package/dist/components/rc-picker.js +8620 -8025
  119. package/dist/components/react-input.js +1242 -0
  120. package/dist/esm/{bcm-accordion_46.entry.js → bcm-accordion_47.entry.js} +8656 -8526
  121. package/dist/esm/bcm-alert.entry.js +3 -3
  122. package/dist/esm/bcm-attendance-actions-comment.entry.js +6 -6
  123. package/dist/esm/bcm-attendance-actions-dropdown.entry.js +6 -6
  124. package/dist/esm/bcm-breadcrumb.entry.js +3 -3
  125. package/dist/esm/bcm-caption.entry.js +6 -6
  126. package/dist/esm/bcm-card.entry.js +4 -4
  127. package/dist/esm/bcm-checkbox-lite_8.entry.js +3 -3
  128. package/dist/esm/bcm-chip-group.entry.js +6 -6
  129. package/dist/esm/bcm-collapse.entry.js +3 -3
  130. package/dist/esm/bcm-date-picker.entry.js +3 -3
  131. package/dist/esm/bcm-datetime-picker.entry.js +3 -3
  132. package/dist/esm/bcm-default.entry.js +3 -3
  133. package/dist/esm/bcm-form-2.entry.js +5 -4
  134. package/dist/esm/bcm-input-2.entry.js +149 -0
  135. package/dist/esm/bcm-input-custom.entry.js +3 -3
  136. package/dist/esm/bcm-input-dropdown.entry.js +6 -6
  137. package/dist/esm/bcm-modal-2-footer.entry.js +6 -6
  138. package/dist/esm/bcm-modal-2-header.entry.js +6 -6
  139. package/dist/esm/bcm-modal-2.entry.js +6 -6
  140. package/dist/esm/bcm-number-input.entry.js +259 -71
  141. package/dist/esm/bcm-overlay_2.entry.js +1 -1
  142. package/dist/esm/bcm-popover.entry.js +6 -6
  143. package/dist/esm/bcm-range.entry.js +3 -3
  144. package/dist/esm/bcm-react-number.entry.js +1226 -0
  145. package/dist/esm/bcm-skeleton.entry.js +6 -6
  146. package/dist/esm/bcm-table.entry.js +6 -6
  147. package/dist/esm/bcm-tag.entry.js +4 -4
  148. package/dist/esm/bcm-time-picker.entry.js +3 -3
  149. package/dist/esm/bcm-toast.entry.js +3 -3
  150. package/dist/esm/bromcom-ui.js +3 -3
  151. package/dist/esm/{color-helper-3b528349.js → color-helper-74614f24.js} +1 -1
  152. package/dist/esm/{colors-c530a5b8.js → colors-dd598eea.js} +13 -7
  153. package/dist/esm/{generate-c2c0b02e.js → generate-df0f43b2.js} +2 -2
  154. package/dist/esm/{global-2473677b.js → global-72a67caf.js} +1 -1
  155. package/dist/esm/index-036974d7.js +541 -0
  156. package/dist/esm/input.style-e855c0f3.js +120 -0
  157. package/dist/esm/loader.js +3 -3
  158. package/dist/esm/{number-helper-75447fa6.js → number-helper-b012c05f.js} +1 -1
  159. package/dist/esm/old-bcm-popover-box.entry.js +4 -4
  160. package/dist/esm/old-bcm-popover.entry.js +3 -3
  161. package/dist/esm/{package-28dc6847.js → package-40075eb9.js} +1 -1
  162. package/dist/esm/{validators-5a383988.js → validators-166e2a4e.js} +1 -1
  163. package/dist/types/components/molecules/input/input.style.d.ts +576 -0
  164. package/dist/types/components/molecules/input/input2.d.ts +64 -0
  165. package/dist/types/components/molecules/number-input/number-input.d.ts +66 -17
  166. package/dist/types/components/molecules/number-input/react-input.d.ts +16 -0
  167. package/dist/types/components.d.ts +203 -19
  168. package/package.json +4 -3
  169. package/dist/bromcom-ui/p-3361f6c9.entry.js +0 -5
  170. package/dist/bromcom-ui/p-350dbff0.entry.js +0 -5
  171. package/dist/bromcom-ui/p-3a43bf45.js +0 -5
  172. package/dist/bromcom-ui/p-64f21481.entry.js +0 -20
  173. package/dist/bromcom-ui/p-930f3618.js +0 -5
  174. package/dist/bromcom-ui/p-a4b675ef.entry.js +0 -5
  175. package/dist/bromcom-ui/p-bb46d881.entry.js +0 -5
  176. package/dist/bromcom-ui/p-c7030364.entry.js +0 -5
  177. package/dist/bromcom-ui/p-de0b0192.entry.js +0 -5
  178. package/dist/bromcom-ui/p-ede82918.js +0 -5
  179. package/dist/cjs/bcm-link.cjs.entry.js +0 -51
  180. package/dist/collection/components/molecules/number-input/number-input.css +0 -137
  181. package/dist/collection/components/molecules/number-input/number-input.style.js +0 -45
  182. package/dist/esm/bcm-link.entry.js +0 -47
  183. package/dist/types/components/molecules/number-input/number-input.style.d.ts +0 -200
@@ -2,4 +2,4 @@
2
2
  * Built with Stencil
3
3
  * Copyright (c) Bromcom.
4
4
  */
5
- import{r as t,c as s,h as i,H as h,g as e}from"./p-170cf07d.js";import{C as o}from"./p-61753299.js";import"./p-626a65e9.js";import{G as r}from"./p-930f3618.js";import"./p-ede82918.js";import{S as a}from"./p-a0d6d680.js";import"./p-e93d6619.js";import"./p-7e44e6b5.js";import{B as n}from"./p-a313fba6.js";import{d as c}from"./p-8c018ae0.js";import{F as p}from"./p-6e5f5f36.js";import"./p-436364c8.js";import"./p-3a43bf45.js";import"./p-6657830f.js";import"./p-8b31581f.js";class l{constructor({content:t,message:s,targetId:i,placement:h="top",color:e="slate-700",trigger:n="none",openDelay:l=0,closeDelay:w=0,autoHide:m=!1,emitShow:d=(()=>{}),emitHide:b=(()=>{})}){this.destroy=()=>{this.el=document.getElementById(this.id),this.el&&(this.el.remove(),this.emitHide()),this.removeListener()},this.target=()=>document.getElementById(this.targetId),this.init=()=>{const{tone:t,colorName:s}=o.parseColor(this.color,700),i=r.getTwColor({color:s,tones:{[t]:["bg"]},variable:"--bcm-popover"}),h=Object.assign(Object.assign({},i),i["--bcm-popover-bg"]&&{"--bcm-popover-text":o.reverseColor(i["--bcm-popover-bg"])}),e=`<div class="tw-z-[1] tw-rounded tw-py-2">\n ${this.message?`<div class="tw-font-medium tw-w-full tw-pb-1 tw-px-4">${a.trim(this.message)}</div>`:""}\n ${this.content?`<div class="tw-font-normal tw-px-4">${a.trim(this.content)}</div>`:""}\n </div>`;this.el=r.createElement("div",{id:`${this.targetId}-popover-box`,class:"\n tw-whitespace-normal tw-break-words tw-block tw-font-sans tw-pointer-events-none tw-max-w-[256px] tw-rounded tw-bg-[--bcm-popover-bg] tw-text-[--bcm-popover-text] tw-text-3 tw-absolute tw-top-0 tw-left-0 tw-z-tooltip tw-opacity-0 tw-transition-opacity tw-duration-300\n tw-shadow",role:"popover","aria-hidden":"true",style:o.generateStyleString(h),innerHTML:e})},this.update=()=>{this.el=document.getElementById(this.id),this.el&&(this.hide(),this.show())},this.listener=()=>{if(window.addEventListener("resize",this.calculatePosition.bind(this)),window.addEventListener("scroll",this.calculatePosition.bind(this),!0),window.addEventListener("wheel",this.calculatePosition.bind(this)),this.trigger&&this.target())switch(this.trigger){case"click":this.target().addEventListener("click",this.toggle.bind(this)),this.autoHide&&this.target().addEventListener("mouseleave",this.hide.bind(this));break;case"hover":this.target().addEventListener("mouseenter",this.show.bind(this)),this.target().addEventListener("mouseleave",this.hide.bind(this));break;case"focus":this.target().addEventListener("focus",this.show.bind(this),!0),this.target().addEventListener("blur",this.hide.bind(this),!0)}this.calculatePosition()},this.removeListener=()=>{window.removeEventListener("resize",this.calculatePosition.bind(this)),window.removeEventListener("scroll",this.calculatePosition.bind(this),!0),window.removeEventListener("wheel",this.calculatePosition.bind(this)),this.target()&&(this.target().removeEventListener("click",this.toggle.bind(this)),this.target().removeEventListener("mouseenter",this.show.bind(this)),this.target().removeEventListener("mouseleave",this.hide.bind(this)),this.target().removeEventListener("focus",this.show.bind(this),!0),this.target().removeEventListener("blur",this.hide.bind(this),!0))},this.calculatePosition=()=>{this.el=document.getElementById(this.id),this.el&&p({ref:this.target(),floating:this.el,placement:this.placement,offset:8,arrow:!0,arrowColor:"tw-bg-[--bcm-popover-bg]"})},this.show=async()=>{this.message?(this.init(),await c(this.openDelay),this.calculatePosition(),this.emitShow()):this.hide()},this.hide=async()=>{this.el=document.getElementById(this.id),this.el&&(await c(this.closeDelay),this.el.remove(),this.emitHide())},this.toggle=()=>{this.el=document.getElementById(this.id),this.el?this.hide():this.show()},this.content=t,this.message=s,this.targetId=i,this.placement=h,this.color=e,this.trigger=n,this.id=i+"-popover-box",this.openDelay=l,this.closeDelay=w,this.autoHide=m,this.emitShow=d,this.emitHide=b}}const w=class{constructor(i){t(this,i),this.bcmPopoverShow=s(this,"bcmPopoverShow",7),this.bcmPopoverHide=s(this,"bcmPopoverHide",7),this._id=r.UID(),this.message="",this.content="",this.placement=n.Placement.top,this.trigger=n.TriggerType.click,this.open=!1,this.color="white",this.openDelay=0,this.closeDelay=0,this.autoHide=!1,this.targetId=void 0,this.popover=void 0}emitShow(){this.bcmPopoverShow.emit()}emitHide(){this.bcmPopoverHide.emit()}connectedCallback(){this.popover=new l({targetId:this.targetId||this._id,content:this.content,message:this.message,placement:this.placement,color:this.color,trigger:this.trigger,openDelay:this.openDelay,closeDelay:this.closeDelay,autoHide:this.autoHide,emitShow:()=>this.emitShow(),emitHide:()=>this.emitHide()})}componentDidLoad(){this.popover.listener()}componentDidRender(){const{content:t,message:s,placement:i,color:h,trigger:e}=this;this.popover.content=t,this.popover.message=s,this.popover.placement=i,this.popover.color=h,this.popover.trigger=e,this.popover.openDelay=this.openDelay,this.popover.closeDelay=this.closeDelay,this.popover.autoHide=this.autoHide,this.popover.update()}disconnectedCallback(){this.popover.destroy()}async show(){this.popover.show()}async hide(){this.popover.hide()}async toggle(){this.popover.toggle()}render(){return i(h,{class:"tw-inline-flex tw-h-fit tw-w-fit",role:"tooltip","aria-hidden":"true"},i("slot",null))}get el(){return e(this)}};export{w as bcm_popover}
5
+ import{r as t,c as s,h as i,H as h,g as e}from"./p-170cf07d.js";import{C as o}from"./p-6bea284a.js";import"./p-626a65e9.js";import{G as r}from"./p-2addde9e.js";import"./p-b847cbea.js";import{S as a}from"./p-a0d6d680.js";import"./p-8f3ca5d9.js";import"./p-7e44e6b5.js";import{B as c}from"./p-a313fba6.js";import{d as n}from"./p-8c018ae0.js";import{F as p}from"./p-6e5f5f36.js";import"./p-436364c8.js";import"./p-aeb4be41.js";import"./p-6657830f.js";import"./p-5cb99e9e.js";class l{constructor({content:t,message:s,targetId:i,placement:h="top",color:e="slate-700",trigger:c="none",openDelay:l=0,closeDelay:w=0,autoHide:m=!1,emitShow:d=(()=>{}),emitHide:b=(()=>{})}){this.destroy=()=>{this.el=document.getElementById(this.id),this.el&&(this.el.remove(),this.emitHide()),this.removeListener()},this.target=()=>document.getElementById(this.targetId),this.init=()=>{const{tone:t,colorName:s}=o.parseColor(this.color,700),i=r.getTwColor({color:s,tones:{[t]:["bg"]},variable:"--bcm-popover"}),h=Object.assign(Object.assign({},i),i["--bcm-popover-bg"]&&{"--bcm-popover-text":o.reverseColor(i["--bcm-popover-bg"])}),e=`<div class="tw-z-[1] tw-rounded tw-py-2">\n ${this.message?`<div class="tw-font-medium tw-w-full tw-pb-1 tw-px-4">${a.trim(this.message)}</div>`:""}\n ${this.content?`<div class="tw-font-normal tw-px-4">${a.trim(this.content)}</div>`:""}\n </div>`;this.el=r.createElement("div",{id:`${this.targetId}-popover-box`,class:"\n tw-whitespace-normal tw-break-words tw-block tw-font-sans tw-pointer-events-none tw-max-w-[256px] tw-rounded tw-bg-[--bcm-popover-bg] tw-text-[--bcm-popover-text] tw-text-3 tw-absolute tw-top-0 tw-left-0 tw-z-tooltip tw-opacity-0 tw-transition-opacity tw-duration-300\n tw-shadow",role:"popover","aria-hidden":"true",style:o.generateStyleString(h),innerHTML:e})},this.update=()=>{this.el=document.getElementById(this.id),this.el&&(this.hide(),this.show())},this.listener=()=>{if(window.addEventListener("resize",this.calculatePosition.bind(this)),window.addEventListener("scroll",this.calculatePosition.bind(this),!0),window.addEventListener("wheel",this.calculatePosition.bind(this)),this.trigger&&this.target())switch(this.trigger){case"click":this.target().addEventListener("click",this.toggle.bind(this)),this.autoHide&&this.target().addEventListener("mouseleave",this.hide.bind(this));break;case"hover":this.target().addEventListener("mouseenter",this.show.bind(this)),this.target().addEventListener("mouseleave",this.hide.bind(this));break;case"focus":this.target().addEventListener("focus",this.show.bind(this),!0),this.target().addEventListener("blur",this.hide.bind(this),!0)}this.calculatePosition()},this.removeListener=()=>{window.removeEventListener("resize",this.calculatePosition.bind(this)),window.removeEventListener("scroll",this.calculatePosition.bind(this),!0),window.removeEventListener("wheel",this.calculatePosition.bind(this)),this.target()&&(this.target().removeEventListener("click",this.toggle.bind(this)),this.target().removeEventListener("mouseenter",this.show.bind(this)),this.target().removeEventListener("mouseleave",this.hide.bind(this)),this.target().removeEventListener("focus",this.show.bind(this),!0),this.target().removeEventListener("blur",this.hide.bind(this),!0))},this.calculatePosition=()=>{this.el=document.getElementById(this.id),this.el&&p({ref:this.target(),floating:this.el,placement:this.placement,offset:8,arrow:!0,arrowColor:"tw-bg-[--bcm-popover-bg]"})},this.show=async()=>{this.message?(this.init(),await n(this.openDelay),this.calculatePosition(),this.emitShow()):this.hide()},this.hide=async()=>{this.el=document.getElementById(this.id),this.el&&(await n(this.closeDelay),this.el.remove(),this.emitHide())},this.toggle=()=>{this.el=document.getElementById(this.id),this.el?this.hide():this.show()},this.content=t,this.message=s,this.targetId=i,this.placement=h,this.color=e,this.trigger=c,this.id=i+"-popover-box",this.openDelay=l,this.closeDelay=w,this.autoHide=m,this.emitShow=d,this.emitHide=b}}const w=class{constructor(i){t(this,i),this.bcmPopoverShow=s(this,"bcmPopoverShow",7),this.bcmPopoverHide=s(this,"bcmPopoverHide",7),this._id=r.UID(),this.message="",this.content="",this.placement=c.Placement.top,this.trigger=c.TriggerType.click,this.open=!1,this.color="white",this.openDelay=0,this.closeDelay=0,this.autoHide=!1,this.targetId=void 0,this.popover=void 0}emitShow(){this.bcmPopoverShow.emit()}emitHide(){this.bcmPopoverHide.emit()}connectedCallback(){this.popover=new l({targetId:this.targetId||this._id,content:this.content,message:this.message,placement:this.placement,color:this.color,trigger:this.trigger,openDelay:this.openDelay,closeDelay:this.closeDelay,autoHide:this.autoHide,emitShow:()=>this.emitShow(),emitHide:()=>this.emitHide()})}componentDidLoad(){this.popover.listener()}componentDidRender(){const{content:t,message:s,placement:i,color:h,trigger:e}=this;this.popover.content=t,this.popover.message=s,this.popover.placement=i,this.popover.color=h,this.popover.trigger=e,this.popover.openDelay=this.openDelay,this.popover.closeDelay=this.closeDelay,this.popover.autoHide=this.autoHide,this.popover.update()}disconnectedCallback(){this.popover.destroy()}async show(){this.popover.show()}async hide(){this.popover.hide()}async toggle(){this.popover.toggle()}render(){return i(h,{class:"tw-inline-flex tw-h-fit tw-w-fit",role:"tooltip","aria-hidden":"true"},i("slot",null))}get el(){return e(this)}};export{w as bcm_popover}