bromcom-ui 3.0.0-alpha.3 → 3.0.0-alpha.5

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 (156) 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-01eaca9a.entry.js +5 -0
  4. package/dist/bromcom-ui/{p-dc8b7bd5.entry.js → p-0b7de283.entry.js} +1 -1
  5. package/dist/bromcom-ui/{p-ff8adde6.entry.js → p-0e75f6ba.entry.js} +1 -1
  6. package/dist/bromcom-ui/{p-3a6e9576.entry.js → p-112b9a62.entry.js} +1 -1
  7. package/dist/bromcom-ui/{p-be96827e.js → p-1535f9b1.js} +1 -1
  8. package/dist/bromcom-ui/{p-ef839034.entry.js → p-32ce6cf6.entry.js} +1 -1
  9. package/dist/bromcom-ui/{p-33d97b3f.entry.js → p-33b2ed75.entry.js} +1 -1
  10. package/dist/bromcom-ui/p-3ddd3c83.entry.js +5 -0
  11. package/dist/bromcom-ui/{p-e115af8a.entry.js → p-4545a13d.entry.js} +1 -1
  12. package/dist/bromcom-ui/{p-f1de8ed5.entry.js → p-5532696c.entry.js} +1 -1
  13. package/dist/bromcom-ui/{p-f6e710ff.entry.js → p-69adb859.entry.js} +1 -1
  14. package/dist/bromcom-ui/{p-d0647951.js → p-6ce02d0a.js} +1 -1
  15. package/dist/bromcom-ui/p-7c08789d.entry.js +5 -0
  16. package/dist/bromcom-ui/{p-b7f449ff.entry.js → p-803739bc.entry.js} +1 -1
  17. package/dist/bromcom-ui/{p-3b988ad1.entry.js → p-8390dd02.entry.js} +1 -1
  18. package/dist/bromcom-ui/p-91197b04.js +5 -0
  19. package/dist/bromcom-ui/{p-b9b9d753.entry.js → p-a80e6310.entry.js} +1 -1
  20. package/dist/bromcom-ui/p-aa67918a.entry.js +5 -0
  21. package/dist/bromcom-ui/{p-91aa21af.entry.js → p-acab07ec.entry.js} +1 -1
  22. package/dist/bromcom-ui/{p-a53c3682.entry.js → p-b333a3d7.entry.js} +1 -1
  23. package/dist/bromcom-ui/{p-b386e9c9.entry.js → p-b7787c11.entry.js} +1 -1
  24. package/dist/bromcom-ui/{p-2e7ffc5a.entry.js → p-b7c56cbe.entry.js} +1 -1
  25. package/dist/bromcom-ui/{p-221095a9.entry.js → p-c36a7889.entry.js} +1 -1
  26. package/dist/bromcom-ui/p-ce0ab4e3.entry.js +5 -0
  27. package/dist/bromcom-ui/{p-ee75cd00.js → p-d3cf91a9.js} +1 -1
  28. package/dist/bromcom-ui/p-d5464577.entry.js +16 -0
  29. package/dist/bromcom-ui/{p-bd77f532.entry.js → p-d7a619c5.entry.js} +1 -1
  30. package/dist/bromcom-ui/{p-baa4193d.entry.js → p-e36b6b08.entry.js} +1 -1
  31. package/dist/bromcom-ui/{p-6c7fdf95.entry.js → p-f15c1d3d.entry.js} +1 -1
  32. package/dist/bromcom-ui/{p-8001040c.js → p-fc29c94d.js} +1 -1
  33. package/dist/cjs/bcm-accordion_69.cjs.entry.js +722 -66
  34. package/dist/cjs/bcm-attendance-actions-comment.cjs.entry.js +4 -4
  35. package/dist/cjs/bcm-attendance-actions-dropdown.cjs.entry.js +4 -4
  36. package/dist/cjs/bcm-breadcrumb.cjs.entry.js +2 -2
  37. package/dist/cjs/bcm-caption.cjs.entry.js +4 -4
  38. package/dist/cjs/bcm-card.cjs.entry.js +2 -2
  39. package/dist/cjs/bcm-date-picker.cjs.entry.js +2 -2
  40. package/dist/cjs/bcm-datetime-picker.cjs.entry.js +2 -2
  41. package/dist/cjs/bcm-default.cjs.entry.js +2 -2
  42. package/dist/cjs/bcm-file-upload.cjs.entry.js +578 -0
  43. package/dist/cjs/bcm-form-2.cjs.entry.js +3 -2
  44. package/dist/cjs/bcm-input-2.cjs.entry.js +2 -2
  45. package/dist/cjs/bcm-input-custom.cjs.entry.js +2 -2
  46. package/dist/cjs/bcm-input-dropdown.cjs.entry.js +4 -4
  47. package/dist/cjs/bcm-modal-2-footer.cjs.entry.js +4 -4
  48. package/dist/cjs/bcm-modal-2-header.cjs.entry.js +4 -4
  49. package/dist/cjs/bcm-modal-2.cjs.entry.js +4 -4
  50. package/dist/cjs/bcm-number-input.cjs.entry.js +12 -6
  51. package/dist/cjs/bcm-skeleton.cjs.entry.js +4 -4
  52. package/dist/cjs/bcm-table.cjs.entry.js +4 -4
  53. package/dist/cjs/bcm-tag.cjs.entry.js +3 -3
  54. package/dist/cjs/bcm-time-picker.cjs.entry.js +2 -2
  55. package/dist/cjs/bcm-toast.cjs.entry.js +17 -11
  56. package/dist/cjs/bromcom-ui.cjs.js +3 -3
  57. package/dist/cjs/{generate-554f54dc.js → generate-9d1bf6b3.js} +1 -1
  58. package/dist/cjs/{global-90b5dbce.js → global-d69a64ec.js} +1 -1
  59. package/dist/cjs/loader.cjs.js +3 -3
  60. package/dist/cjs/{number-helper-677e9c02.js → number-helper-ae28b255.js} +1 -1
  61. package/dist/cjs/old-bcm-popover-box.cjs.entry.js +3 -3
  62. package/dist/cjs/old-bcm-popover.cjs.entry.js +2 -2
  63. package/dist/cjs/{package-8445ccd4.js → package-6de220be.js} +1 -1
  64. package/dist/cjs/{validators-92f2f1ef.js → validators-3381bee2.js} +1 -1
  65. package/dist/collection/collection-manifest.json +1 -0
  66. package/dist/collection/components/atoms/button/button.js +1 -1
  67. package/dist/collection/components/atoms/button/types.js +7 -0
  68. package/dist/collection/components/molecules/color-input/color-input.js +5 -22
  69. package/dist/collection/components/molecules/color-palette/color-palette.js +4 -4
  70. package/dist/collection/components/molecules/dropdown/dropdown.js +36 -1
  71. package/dist/collection/components/molecules/linked/linked-focus-manager.js +86 -0
  72. package/dist/collection/components/molecules/linked/linked.js +43 -1
  73. package/dist/collection/components/molecules/number-input/number-input.js +8 -2
  74. package/dist/collection/components/molecules/number-input/react-input.js +1 -1
  75. package/dist/collection/components/molecules/upload/file-upload.component.js +1060 -0
  76. package/dist/collection/components/molecules/upload/file-upload.style.js +201 -0
  77. package/dist/collection/components/organism/form/form.js +1 -0
  78. package/dist/collection/components/organism/form-2/bcm-form-components.js +1 -0
  79. package/dist/collection/components/organism/list/list-focus-manager.js +344 -0
  80. package/dist/collection/components/organism/list/list-key-control.js +9 -4
  81. package/dist/collection/components/organism/list/list.css +8 -3
  82. package/dist/collection/components/organism/list/list.js +227 -27
  83. package/dist/collection/components/other/toast/toast.js +15 -9
  84. package/dist/collection/components/other_deprecated/old-tag/old-tag.js +1 -1
  85. package/dist/collection/components/other_deprecated/tag/tag.js +1 -1
  86. package/dist/collection/templates/list-item-template.js +6 -5
  87. package/dist/collection/templates/list-template.js +2 -2
  88. package/dist/components/bcm-color-input.js +5 -22
  89. package/dist/components/bcm-dropdown.js +35 -0
  90. package/dist/components/bcm-file-upload.d.ts +11 -0
  91. package/dist/components/bcm-file-upload.js +625 -0
  92. package/dist/components/bcm-form-2.js +1 -0
  93. package/dist/components/bcm-number-input.js +8 -2
  94. package/dist/components/bcm-toast.js +15 -9
  95. package/dist/components/button.js +7 -0
  96. package/dist/components/color-palette.js +2 -2
  97. package/dist/components/form.js +1 -0
  98. package/dist/components/generate.js +1 -1
  99. package/dist/components/index.d.ts +1 -0
  100. package/dist/components/index.js +1 -0
  101. package/dist/components/linked.js +105 -2
  102. package/dist/components/list.js +567 -39
  103. package/dist/esm/bcm-accordion_69.entry.js +722 -66
  104. package/dist/esm/bcm-attendance-actions-comment.entry.js +4 -4
  105. package/dist/esm/bcm-attendance-actions-dropdown.entry.js +4 -4
  106. package/dist/esm/bcm-breadcrumb.entry.js +2 -2
  107. package/dist/esm/bcm-caption.entry.js +4 -4
  108. package/dist/esm/bcm-card.entry.js +2 -2
  109. package/dist/esm/bcm-date-picker.entry.js +2 -2
  110. package/dist/esm/bcm-datetime-picker.entry.js +2 -2
  111. package/dist/esm/bcm-default.entry.js +2 -2
  112. package/dist/esm/bcm-file-upload.entry.js +574 -0
  113. package/dist/esm/bcm-form-2.entry.js +3 -2
  114. package/dist/esm/bcm-input-2.entry.js +2 -2
  115. package/dist/esm/bcm-input-custom.entry.js +2 -2
  116. package/dist/esm/bcm-input-dropdown.entry.js +4 -4
  117. package/dist/esm/bcm-modal-2-footer.entry.js +4 -4
  118. package/dist/esm/bcm-modal-2-header.entry.js +4 -4
  119. package/dist/esm/bcm-modal-2.entry.js +4 -4
  120. package/dist/esm/bcm-number-input.entry.js +12 -6
  121. package/dist/esm/bcm-skeleton.entry.js +4 -4
  122. package/dist/esm/bcm-table.entry.js +4 -4
  123. package/dist/esm/bcm-tag.entry.js +3 -3
  124. package/dist/esm/bcm-time-picker.entry.js +2 -2
  125. package/dist/esm/bcm-toast.entry.js +17 -11
  126. package/dist/esm/bromcom-ui.js +3 -3
  127. package/dist/esm/{generate-8a394b83.js → generate-56d49b70.js} +1 -1
  128. package/dist/esm/{global-7919f57f.js → global-97c42a5f.js} +1 -1
  129. package/dist/esm/loader.js +3 -3
  130. package/dist/esm/{number-helper-a86adc72.js → number-helper-455ab41e.js} +1 -1
  131. package/dist/esm/old-bcm-popover-box.entry.js +3 -3
  132. package/dist/esm/old-bcm-popover.entry.js +2 -2
  133. package/dist/esm/{package-278e08d9.js → package-edee14d5.js} +1 -1
  134. package/dist/esm/{validators-89e791a1.js → validators-cc882165.js} +1 -1
  135. package/dist/types/components/atoms/button/types.d.ts +8 -1
  136. package/dist/types/components/molecules/color-input/color-input.d.ts +1 -4
  137. package/dist/types/components/molecules/dropdown/dropdown.d.ts +7 -0
  138. package/dist/types/components/molecules/linked/linked-focus-manager.d.ts +13 -0
  139. package/dist/types/components/molecules/linked/linked.d.ts +3 -0
  140. package/dist/types/components/molecules/number-input/number-input.d.ts +1 -0
  141. package/dist/types/components/molecules/upload/file-upload.component.d.ts +233 -0
  142. package/dist/types/components/molecules/upload/file-upload.style.d.ts +548 -0
  143. package/dist/types/components/organism/list/list-focus-manager.d.ts +53 -0
  144. package/dist/types/components/organism/list/list-key-control.d.ts +1 -0
  145. package/dist/types/components/organism/list/list.d.ts +18 -1
  146. package/dist/types/components/other/toast/toast.d.ts +1 -0
  147. package/dist/types/components.d.ts +417 -1
  148. package/dist/types/templates/list-item-template.d.ts +2 -0
  149. package/dist/types/templates/list-template.d.ts +2 -0
  150. package/package.json +1 -1
  151. package/dist/bromcom-ui/p-16b8a312.entry.js +0 -16
  152. package/dist/bromcom-ui/p-839b6fd5.entry.js +0 -5
  153. package/dist/bromcom-ui/p-be8aa3b8.entry.js +0 -5
  154. package/dist/bromcom-ui/p-d0aa71e1.entry.js +0 -5
  155. package/dist/bromcom-ui/p-df92d838.js +0 -5
  156. package/dist/bromcom-ui/p-dfd73f7c.entry.js +0 -5
@@ -1,5 +0,0 @@
1
- /*!
2
- * Built with Stencil
3
- * Copyright (c) Bromcom.
4
- */
5
- import{h as s,r as t,c as i,g as e}from"./p-e037ee2b.js";import{G as o}from"./p-d0647951.js";import{a as c}from"./p-a313fba6.js";import{c as h}from"./p-64fad38b.js";import{N as a}from"./p-df92d838.js";import{e as r}from"./p-6f2e4c9b.js";import{C as l}from"./p-436364c8.js";import{C as n}from"./p-2e73d572.js";import"./p-8001040c.js";import"./p-a2df6c19.js";import"./p-85eedabc.js";const d=({_id:t,color:i,customStyle:e,size:o,checked:d,hidden:m,value:p,type:f,onDismiss:b,onSelect:u})=>{!o&&(o=c.FontSize["size-1"]);const j=h(((s,t=!1)=>(a.isNumber(s)&&(s=c.FontSize["size-"+s]||c.FontSize["size-4"]),t?+(c.FontSizeValue[s]||c.FontSizeValue["size-4"])+2:s))(o),"bcm-tag__content",f),k=h("bcm-tag",{hidden:m});return s("div",{id:t,class:h(k,{checked:d})},s("span",{hidden:!0},s("slot",null)),s("span",{class:j,style:(s=>{if((f===c.TagType.basic||f==c.TagType.dismissable)&&n[s])return{color:r(l,n[s]+"-6"),borderColor:r(l,n[s]+"-3"),backgroundColor:r(l,n[s]+"-1")}})(i),onClick:s=>u(s)},f===c.TagType.add&&s("span",{class:"left"},s("bcm-icon",{icon:"far fa-plus"})),f===c.TagType.checkable&&s("input",{type:"checkbox",checked:d}),s("span",{class:"value",style:e},p),f===c.TagType.dismissable&&s("span",{class:"right close-button",onClick:s=>b(s)},s("bcm-icon",{icon:"fal fa-times"}))))},m=class{constructor(s){t(this,s),this.change=i(this,"bcm-change",7),this.tagDismissable=i(this,"bcm-tag-dismissable",7),this.bcmTagSelect=i(this,"bcm-tag-select",7),this._id=o.UID(),this._internal_id=o.UID(),this.hidden=!1,this.value="",this.type=c.TagType.basic,this.checked=!1,this.color=void 0,this.customStyle=void 0,this.itemObject=void 0,this.size=c.FontSize["size-1"],this.closeFunc=s=>s,this.selectFunc=s=>s}handleClick(){this.type===c.TagType.checkable&&this.handleChecked()}handleClose(){this.tagDismissable.emit(this.el)}handleChecked(){this.checked=!this.checked,this.change.emit(this.checked)}render(){const{type:t,color:i,value:e,customStyle:o,size:h,hidden:a,checked:r}=this;return s(d,{size:h,hidden:a,color:i,customStyle:o,checked:r,value:e,type:c.TagType[t],onSelect:s=>{this.bcmTagSelect.emit(s),this.selectFunc({event:s,id:this._id})},onDismiss:s=>{this.handleClose(),this.closeFunc(s)}})}get el(){return e(this)}};export{m as bcm_tag}
@@ -1,5 +0,0 @@
1
- /*!
2
- * Built with Stencil
3
- * Copyright (c) Bromcom.
4
- */
5
- import{r as t,c as e,f as i,h as s,H as a,g as o}from"./p-e037ee2b.js";import{I as n}from"./p-8e5e362a.js";import{G as r,s as h}from"./p-d0647951.js";import{S as p}from"./p-d65bc842.js";import{a as l}from"./p-a313fba6.js";import"./p-8001040c.js";import"./p-a2df6c19.js";import"./p-85eedabc.js";const c=["BCM-INPUT","BCM-TEXTAREA","BCM-SWITCH","BCM-CHECKBOX","BCM-RADIO-GROUP","BCM-CHECKBOX-GROUP","BCM-RANGE","BCM-FORM","BCM-FORM-GROUP","BCM-LIST","BCM-COLORPICKER","BCM-DATE","BCM-DATE-PICKER","BCM-TIME-PICKER","BCM-DATETIME-PICKER","BCM-SELECT","BCM-LISTBOX","BCM-CHIP-GROUP","BCM-INPUT-DROPDOWN","BCM-NUMBER-INPUT"];const m=class{constructor(i){t(this,i),this.bcmForm=e(this,"bcm-form",7),this.isLoad=!1,this.formData={},this.formObj=new Map,this._id=r.UID(),this.validation=!1}componentDidLoad(){this.isLoad=!0,i(this)}componentIsValid(t){if(!t.hidden){this.checkIsGroup(t);const e=["bcm-checkbox","bcm-switch"].includes(p.lowercase(t.tagName))?0==t.value:p.isNullOrEmpty(t.value);t.required&&(e?(t.captionError=l.FormErrorMessages.required,t.captionType="error",this.formObj.set(t.id,{name:t.name,valid:!1,errorDetails:t.captionError})):(t.captionError=null,t.captionType="default",this.formObj.delete(t.id)))}}isGroup(t){return["bcm-checkbox-group"].includes(p.lowercase(t.tagName))}checkIsGroup(t){if(this.isGroup(t))for(let e of Array.from(t.querySelectorAll("bcm-checkbox")))e&&this.componentIsValid(e)}changeCheckboxGroup(t){const e=t.target,{changed:i}=t.detail,s=Array.from(e.querySelectorAll("bcm-checkbox"));for(let t of s)t.id==i.element.id&&(t.value=i.event.value,this.componentIsValid(t))}bcmComponentList(){return h((()=>Array.from(this.el.querySelectorAll("*")).filter((t=>c.includes(t.tagName)&&(!t["s-hn"]||"BCM-FORM-2"==t["s-hn"]))).filter(Boolean)),[])}formResponse(){const t={formData:this.formData,isValid:0==this.formObj.size,errorDetails:Object.assign({},this.formObj.size>0&&Array.from(this.formObj).map((([t,e])=>({[e.name]:e.errorDetails})))),message:0==this.formObj.size?"":"Please fill in all inputs"};return this.bcmForm.emit(t),t}async setMethodType(t){const{isLoad:e,validation:i}=this;if(e)for(const e of this.bcmComponentList())try{await e[t](),"setClear"==t&&i&&this.componentIsValid(e)}catch(i){console.error(e.nodeName,t,i)}return Promise.resolve()}async submit(){const{isLoad:t,validation:e}=this;if(t)for(const t of this.bcmComponentList()){const{name:i,value:s}=t;this.formData[i]=p.isNullOrEmpty(s)?null:s,e&&this.componentIsValid(t)}return Promise.resolve(this.formResponse())}async set(t){var e,i,s;if(this.isLoad&&t&&(null===(e=this.bcmComponentList())||void 0===e?void 0:e.length)>0)for(let e of Object.keys(t)){const a=null!==(s=null===(i=this.bcmComponentList())||void 0===i?void 0:i.find((t=>t.name==e)))&&void 0!==s?s:{};if(a)try{await a.set(t[e]),this.componentIsValid(a)}catch(t){console.warn("set: ",e,a.nodeName)}}}async get(){var t;let e={};if((null===(t=this.bcmComponentList())||void 0===t?void 0:t.length)>0)for(let t of this.bcmComponentList()){const i=await t.get();e=Object.assign(Object.assign({},e),{[t.name]:p.isNullOrEmpty(i)?null:i})}return Promise.resolve(e)}async resetCaption(){return Promise.resolve(await this.setMethodType("resetCaption"))}async setClear(){return this.formData={},this.formObj=new Map,Promise.resolve(await this.setMethodType("setClear"))}onChange(t){const{isLoad:e,validation:i}=this;if(e){const e=t.target,s=e&&e.tagName.toLowerCase().startsWith("bcm-");if(i&&s){if(this.isGroup(e))return this.changeCheckboxGroup(t);this.componentIsValid(e)}}}render(){return s(a,null,s("slot",null))}get el(){return o(this)}};(function(t,e,i,s){var a,o=arguments.length,n=o<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,i,s);else for(var r=t.length-1;r>=0;r--)(a=t[r])&&(n=(o<3?a(n):o>3?a(e,i,n):a(e,i))||n);o>3&&n&&Object.defineProperty(e,i,n)})([n()],m.prototype,"el",void 0),m.style='@import url("https://fonts.googleapis.com/css?family=Roboto:400,500");.size-1{font-size:12px;line-height:20px}.size-2{font-size:14px;line-height:22px}.size-3{font-size:16px;line-height:24px}.size-4{font-size:20px;line-height:28px}.size-5{font-size:24px;line-height:32px}.size-6{font-size:30px;line-height:38px}.size-7{font-size:38px;line-height:46px}.size-8{font-size:46px;line-height:54px}.size-9{font-size:56px;line-height:64px}.weight-regular{font-weight:400}.weight-semibold{font-weight:500}.input-size-large{height:40px}.input-size-medium{height:32px}.input-size-small{height:24px}.resize-none textarea{resize:none}.resize-vertical textarea{resize:vertical}.resize-auto textarea{height:auto;resize:none}.textarea-size-large{padding:4px 0 0 4px;min-height:40px}.textarea-size-large .bcm-input-element{min-height:calc((40px - 8px) + 2px)}.textarea-size-large .input-clear-button{height:calc( 40px - 16px );top:8px;padding:0;margin-right:8px}.textarea-size-medium{padding:4px 0 0 4px;min-height:32px}.textarea-size-medium .bcm-input-element{min-height:calc((32px - 8px) + 2px)}.textarea-size-medium .input-clear-button{height:calc( 32px - 16px );top:8px;padding:0;margin-right:8px}.textarea-size-small{padding:0px 0 0 4px;min-height:24px}.textarea-size-small .bcm-input-element{min-height:calc((24px - 8px) + 2px)}.textarea-size-small .input-clear-button{height:calc( 24px - 16px );top:8px;padding:0;margin-right:8px}:host{display:block}';export{m as bcm_form_2}
@@ -1,5 +0,0 @@
1
- /*!
2
- * Built with Stencil
3
- * Copyright (c) Bromcom.
4
- */
5
- import{r as i,c as t,h as s,H as h,g as e}from"./p-e037ee2b.js";import"./p-499d8454.js";import"./p-626a65e9.js";import{G as a}from"./p-d0647951.js";import"./p-df92d838.js";import{S as l}from"./p-d65bc842.js";import"./p-ee75cd00.js";import"./p-6f861fed.js";import{d as o}from"./p-6f2e4c9b.js";import{B as r}from"./p-a313fba6.js";import{C as n}from"./p-556010cb.js";import{c}from"./p-64fad38b.js";import"./p-3fac58f7.js";import"./p-2e73d572.js";import{i as d}from"./p-7b21fcb9.js";import"./p-436364c8.js";import"./p-a2df6c19.js";import"./p-85eedabc.js";import"./p-8001040c.js";import"./p-08c75801.js";const u=class{constructor(s){i(this,s),this.focus=t(this,"bcm-focus",3),this.blur=t(this,"bcm-blur",3),this.clear=t(this,"bcm-clear",3),this.change=t(this,"bcm-change",7),this.input=t(this,"bcm-input",3),this.beforeClear=t(this,"bcm-input-before-clear",3),this._onChange=t(this,"bcm-onchange",3),this.inValid=!1,this.onInput=()=>{var i;null===(i=this.inputElement)||void 0===i||i.addEventListener("input",(i=>{this.input.emit(i)}))},this.onChange=()=>{var i;null===(i=this.inputElement)||void 0===i||i.addEventListener("change",(i=>{this.change.emit(i)}))},this.onFocus=()=>{var i;null===(i=this.inputElement)||void 0===i||i.addEventListener("focus",(i=>{this.isFocus=!0,this.focus.emit(i)}))},this.onBlur=()=>{var i;null===(i=this.inputElement)||void 0===i||i.addEventListener("blur",(i=>{this.isFocus=!1,this.blur.emit(i)}))},this.onKeydown=()=>{var i;null===(i=this.inputElement)||void 0===i||i.addEventListener("keydown",(i=>{"ArrowUp"===i.key&&(i.preventDefault(),this.up()),"ArrowDown"===i.key&&(i.preventDefault(),this.down())}))},this.listener=()=>{this.onInput(),this.onChange(),this.onFocus(),this.onBlur(),this.onKeydown()},this._id=a.UID(),this.value="",this.defaultValue=void 0,this._prefix=void 0,this._suffix=void 0,this.size="medium",this.min=void 0,this.max=void 0,this.step=1,this.label=void 0,this.name=void 0,this.fullWidth=!1,this.clearable=!1,this.readonly=!1,this.disabled=!1,this.required=!1,this.mode="none",this.placeholder=void 0,this.thousandSeparator=!1,this.decimalSeparator=void 0,this.decimalScale=void 0,this.fixedDecimalScale=!1,this.allowNegative=!0,this.allowLeadingZeros=!1,this.unitPrefix=void 0,this.unitSuffix=void 0,this.caption=void 0,this.noCaption=!1,this.captionType=r.Status.default,this.captionError=void 0,this.customErrorMessage=void 0,this.isFocus=!1,this.captionCache=void 0,this.captionTypeCache=void 0,this.valueCache=""}connectedCallback(){this.defaultValue&&(this.value=+this.defaultValue),this.valueCache=this.value,this.captionCache=this.caption,this.captionTypeCache=this.captionType}componentDidLoad(){this.listener()}up(){this.disabled||(this.value||(this.value=Number(0)),this.value=+this.value+ +this.step,"strict"===this.mode&&this.max&&+this.value>+this.max&&(this.value=this.max))}down(){this.disabled||(this.value||(this.value=Number(0)),this.value=+this.value-+this.step,"strict"===this.mode&&this.min&&+this.value<+this.min&&(this.value=this.min))}handleClear(i){this.disabled||this.beforeClear.emit(i).defaultPrevented||(this.value="",this.clear.emit(i))}checkLength(){const{min:i,max:t,value:s}=this,h=i,e=t;let a=null==s?void 0:s.toString();i&&t?+a<+i||+a>+t?(this.setCaption(l.getMessage("betweenlength",[h,e]),"error"),this.inValid=!0):(this.setCaption(),this.inValid=!1):h?+a<+h?(this.setCaption(l.getMessage("minlength",[h]),"error"),this.inValid=!0):(this.setCaption(),this.inValid=!1):e&&(a>e?(this.setCaption(l.getMessage("maxlength",[e]),"error"),this.inValid=!0):(this.setCaption(),this.inValid=!1))}watchValue(){this.checkLength()}async onBcmFocus(){this.inputElement.focus()}async onBcmBlur(){this.inputElement.blur()}async onBcmSelect(){this.inputElement.select()}async set(i){await this.setValue(i)}async get(){return this.value||null}async setValue(i){this.value=i}async setClear(){return this.value=null,await o(10),Promise.resolve()}async resetCaption(){return await o(10),this.caption=this.captionCache,this.captionType=this.captionTypeCache,this.captionError=null,this.inValid=!1,await o(10),Promise.resolve()}setCaption(i=null,t=null){return this.caption=i||this.captionCache,this.captionType=t||this.captionTypeCache,this.captionError="error"==t?i:null,Promise.resolve()}disconnectedCallback(){var i,t,s,h,e;null===(i=this.inputElement)||void 0===i||i.removeEventListener("input",this.onInput.bind(this)),null===(t=this.inputElement)||void 0===t||t.removeEventListener("change",this.onChange.bind(this)),null===(s=this.inputElement)||void 0===s||s.removeEventListener("focus",this.onFocus.bind(this)),null===(h=this.inputElement)||void 0===h||h.removeEventListener("blur",this.onBlur.bind(this)),null===(e=this.inputElement)||void 0===e||e.removeEventListener("keydown",this.onKeydown.bind(this))}render(){const{_prefix:i,_suffix:t,noCaption:e,captionType:a,captionError:l,caption:o,required:r,_id:u,label:p,size:m,fullWidth:b,clearable:v,value:f,placeholder:j,thousandSeparator:w,decimalSeparator:g,decimalScale:x,fixedDecimalScale:y,allowNegative:C,allowLeadingZeros:S,unitPrefix:B,unitSuffix:k,min:D,max:V,step:L,defaultValue:N,disabled:_,mode:P}=this,T=(null==f?void 0:f.toString().length)>0&&v,z="error"==this.captionType||this.inValid,{host:E,inputContainer:H,slotClass:M,clearButton:O,controls:q,controlsBtn:A,controlsBtnDown:F,controlsBtnUp:I,controlsDivider:U,input:W}=d({size:m,fullWidth:b,clearable:T,disabled:_,invalid:z}),Z={placeholder:j,thousandSeparator:w,decimalSeparator:g,decimalScale:x,fixedDecimalScale:y,allowNegative:C,allowLeadingZeros:S,prefix:B,suffix:k},G={min:D,max:V,step:L,value:f,defaultValue:N},R=Object.assign(Object.assign(Object.assign({id:u+"-base-input",name:this.name,disabled:_,mode:P,"aria-label":p,"aria-labelledby":u+"-label",getInputRef:i=>{this.inputElement=i},className:W()},Z),G),{onValueChange:i=>{const{floatValue:t}=i;this.value=t,this._onChange.emit(i)}});return s(h,{class:E()},p&&s("bcm-label",{size:m,type:a,value:p,required:r,htmlFor:u+"-base-input",id:u+"-label"}),s("div",{class:H()},s("div",{class:M()},s("slot",{name:"prefix"},i&&i.length>0&&s("span",{innerHTML:i}))),s("bcm-react-number",{disabled:_,class:"tw-flex-1",options:R}),s("div",{class:M()},!_&&T&&s("button",{class:O(),onClick:i=>this.handleClear(i)},s("i",{class:"far fa-times"})),s("slot",{name:"suffix"},t&&t.length>0&&s("span",{innerHTML:t})),s("div",{class:q()},s("button",{type:"button",disabled:_,class:c(A(),I()),onClick:this.up.bind(this),"aria-label":"Increase value"},s("i",{class:"fas fa-caret-up"})),s("div",{class:U()}),s("button",{type:"button",disabled:_,class:c(A(),F()),onClick:this.down.bind(this),"aria-label":"Decrease value"},s("i",{class:"fas fa-caret-down"}))))),s(n,{noCaption:e,captionType:a,captionError:l,caption:o,customErrorMessage:this.customErrorMessage}))}get el(){return e(this)}static get watchers(){return{value:["watchValue"]}}};export{u as bcm_number_input}
@@ -1,5 +0,0 @@
1
- /*!
2
- * Built with Stencil
3
- * Copyright (c) Bromcom.
4
- */
5
- import{s}from"./p-d0647951.js";class r{}r.isNumber=r=>s((()=>/^[0-9]+$/i.test(r))),r.convertToNumber=r=>s((()=>Number(r))),r.replaceNumber=r=>s((()=>r.replace(/[^0-9]/g,""))),r.replaceFloat=r=>s((()=>r.replace(/[^0-9.]/g,""))),r.toFixed=(r,a)=>s((()=>r.toFixed(a))),r.parseFloatFixed=(a,e)=>s((()=>parseFloat(r.replaceFloat(a)).toFixed(e))),r.getDecimalLength=r=>s((()=>r.split(".")[1]?r.split(".")[1].length:0)),r.toNumber=r=>s((()=>Number(r.replace(/[^0-9.]/g,""))));export{r as N}
@@ -1,5 +0,0 @@
1
- /*!
2
- * Built with Stencil
3
- * Copyright (c) Bromcom.
4
- */
5
- import{r as t,c as s,h as i,H as e,g as o}from"./p-e037ee2b.js";import{c as r}from"./p-64fad38b.js";import{G as w}from"./p-d0647951.js";import{S as a}from"./p-d65bc842.js";import{a as n}from"./p-a313fba6.js";import{d as h}from"./p-6f2e4c9b.js";import"./p-85eedabc.js";import"./p-8001040c.js";import"./p-a2df6c19.js";const c=class{constructor(i){t(this,i),this.bcmToastClose=s(this,"bcm-toast-close",7),this.bcmToastOpen=s(this,"bcm-toast-open",7),this.bcmToastView=s(this,"bcm-toast-view",7),this._id=w.UID(),this.status=void 0,this.message="",this.description="",this.duration=3e3,this.position=n.Placement.bottom,this.messageIcon=void 0,this.viewButton=!1,this.closeButton=!0,this.removeAfterClose=!0,this.visible=!1,this.visibleContainer=!1}async show(){const t=document.getElementById(this._id+"-container");return t&&this.createContainer(this.position).appendChild(t),this.visible=!0,await h(50),this.visibleContainer=!0,this.bcmToastOpen.emit(),this.timer&&clearTimeout(this.timer),this.timer=setTimeout((()=>this.hide()),this.duration),this.el}async hide(){this.visibleContainer=!1,clearTimeout(this.timer),this.bcmToastClose.emit(),await h(100),this.visible=!1,this.removeAfterClose&&(await h(100),this.el.remove())}handleMouseEnter(){clearTimeout(this.timer)}handleMouseLeave(){this.visible&&(this.timer=setTimeout((()=>this.hide()),1e3))}createContainer(t){const s="bcm-toast-container-"+t;let i=document.getElementById(s);if(!i){i=document.createElement("div"),i.id=s;const t=r("tw-pointer-events-none tw-overflow-hidden tw-z-50","tw-fixed tw-flex","tw-p-4 tw-gap-4",{"tw-flex-col-reverse tw-inset-x-0 tw-top-4 tw-mx-auto":this.position===n.Placement.top,"tw-flex-col tw-inset-x-0 tw-bottom-4 tw-mx-auto":this.position===n.Placement.bottom,"tw-flex-col-reverse tw-top-4 tw-left-4":this.position===n.Placement["top-start"],"tw-flex-col-reverse tw-top-4 tw-right-4":this.position===n.Placement["top-end"],"tw-flex-col tw-bottom-4 tw-left-4":this.position===n.Placement["bottom-start"],"tw-flex-col tw-bottom-4 tw-right-4":this.position===n.Placement["bottom-end"]});i.classList.add(...t.split(" ")),document.body.appendChild(i)}return i}render(){return i(e,{class:"tw-hidden"},i("div",{class:r({"tw-hidden":!this.visible}),id:this._id+"-container",onMouseEnter:()=>this.handleMouseEnter(),onMouseLeave:()=>this.handleMouseLeave()},i("div",{class:r("tw-pointer-events-auto tw-transform tw-transition tw-duration-300 tw-ease-in-out","tw-flex tw-min-w-[256px] tw-max-w-[420px] tw-flex-col tw-gap-2 tw-rounded-lg tw-border tw-font-sans tw-font-normal tw-shadow-2","tw-border-color-default tw-bg-white tw-text-color-default",{"tw-p-4":!this.description,"tw-p-6":this.description},"tw-transform tw-transition tw-duration-300 tw-ease-in-out ",{"tw-translate-y-0 tw-opacity-100 ":this.visibleContainer,"tw-opacity-0":!this.visibleContainer,"tw-translate-y-[-100%]":!this.visibleContainer&&"top"===this.position.split("-")[0],"tw-translate-y-[100%]":!this.visibleContainer&&"bottom"===this.position.split("-")[0]})},i("div",{class:"tw-flex tw-items-center tw-justify-between tw-gap-5"},i("div",{class:"tw-flex tw-items-center tw-gap-3 "},this.status&&i("i",{class:r("tw-text-6",this.messageIcon?this.messageIcon:"far",{"tw-text-color-success":"success"===this.status,"tw-text-color-error":"error"===this.status,"tw-text-color-warning":"warning"===this.status,"tw-text-color-info":"info"===this.status},{"fa-check-circle":!this.messageIcon&&"success"===this.status,"fa-exclamation-circle":!this.messageIcon&&"error"===this.status,"fa-exclamation-triangle":!this.messageIcon&&"warning"===this.status,"fa-info-circle":!this.messageIcon&&"info"===this.status})}),i("span",{class:r({"tw-text-4":!this.description,"tw-text-6 tw-font-medium":this.description})},!this.description&&this.status&&i("span",null,a.capitalize(this.status),": "),this.message)),i("div",{class:"tw-flex tw-items-baseline tw-gap-2"},this.viewButton&&i("button",{onClick:()=>this.bcmToastView.emit(),title:"View details",class:r("tw-appearance-none tw-outline-0 tw-border-none tw-cursor-pointer tw-rounded tw-bg-transparent tw-p-0 tw-px-1 tw-text-4 tw-text-inherit","hover:tw-bg-color-default-hover","active:tw-bg-color-default-active","tw-transition tw-duration-300 tw-ease-in-out",{"tw-font-medium":this.description})},"View"),this.closeButton&&i("button",{title:"Close",onClick:()=>this.hide(),class:r("tw-appearance-none tw-outline-0 tw-border-none tw-cursor-pointer","tw-rounded tw-bg-transparent tw-p-0","tw-flex tw-h-6 tw-w-6 tw-cursor-pointer tw-items-center tw-justify-center tw-text-3 tw-text-inherit","hover:tw-bg-color-default-hover","active:tw-bg-color-default-active")},i("i",{class:"fal fa-times"})))),this.description&&i("div",{class:"tw-text-size-5 font-medium"},this.description),i("slot",null))))}get el(){return o(this)}};export{c as bcm_toast}