bromcom-ui 2.3.57 → 2.3.58

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 +0 -0
  2. package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
  3. package/dist/bromcom-ui/index.esm.js +0 -0
  4. package/dist/bromcom-ui/{p-7b469915.entry.js → p-13d038f5.entry.js} +1 -1
  5. package/dist/bromcom-ui/p-1429a2b4.js +1 -0
  6. package/dist/bromcom-ui/{p-e02ea2a4.entry.js → p-20d03fa1.entry.js} +1 -1
  7. package/dist/bromcom-ui/p-37750343.entry.js +1 -0
  8. package/dist/bromcom-ui/{p-9bfd984c.entry.js → p-3f797656.entry.js} +1 -1
  9. package/dist/bromcom-ui/p-4a41ef80.entry.js +1 -0
  10. package/dist/bromcom-ui/p-53e9b679.entry.js +1 -0
  11. package/dist/bromcom-ui/p-8851e01e.entry.js +1 -0
  12. package/dist/bromcom-ui/p-9ffff762.entry.js +1 -0
  13. package/dist/bromcom-ui/p-af7e4741.entry.js +1 -0
  14. package/dist/bromcom-ui/{p-0d336381.entry.js → p-afb68492.entry.js} +1 -1
  15. package/dist/bromcom-ui/p-bbf99620.entry.js +1 -0
  16. package/dist/bromcom-ui/{p-b52eb625.entry.js → p-e21a8f2d.entry.js} +1 -1
  17. package/dist/bromcom-ui/p-e450ebda.entry.js +1 -0
  18. package/dist/bromcom-ui/p-f067821e.entry.js +1 -0
  19. package/dist/cjs/bcm-alert.cjs.entry.js +7 -26
  20. package/dist/cjs/{bcm-button_5.cjs.entry.js → bcm-button_11.cjs.entry.js} +1206 -2
  21. package/dist/cjs/{bcm-checkbox-lite_3.cjs.entry.js → bcm-checkbox-lite_4.cjs.entry.js} +64 -0
  22. package/dist/cjs/bcm-colorpicker.cjs.entry.js +1 -1
  23. package/dist/cjs/{bcm-datetime-picker_2.cjs.entry.js → bcm-datetime-picker.cjs.entry.js} +1 -135
  24. package/dist/cjs/bcm-list-select.cjs.entry.js +21 -6
  25. package/dist/cjs/bcm-list.cjs.entry.js +41 -4
  26. package/dist/cjs/{bcm-empty_6.cjs.entry.js → bcm-listbox_5.cjs.entry.js} +8 -75
  27. package/dist/cjs/bcm-popconfirm-box.cjs.entry.js +1 -1
  28. package/dist/cjs/bcm-popconfirm.cjs.entry.js +1 -1
  29. package/dist/cjs/bcm-popover-box.cjs.entry.js +1 -1
  30. package/dist/cjs/bcm-popover.cjs.entry.js +1 -1
  31. package/dist/cjs/bcm-radio-group.cjs.entry.js +1 -1
  32. package/dist/cjs/bcm-select.cjs.entry.js +1 -1
  33. package/dist/cjs/bromcom-ui.cjs.js +1 -1
  34. package/dist/cjs/loader.cjs.js +1 -1
  35. package/dist/cjs/types-37c8ced6.js +16 -0
  36. package/dist/collection/collection-manifest.json +1 -0
  37. package/dist/collection/components/atoms/label/label.css +70 -0
  38. package/dist/collection/components/atoms/label/label.js +203 -0
  39. package/dist/collection/components/molecules/checkbox/group.js +19 -6
  40. package/dist/collection/components/molecules/input/input.js +19 -6
  41. package/dist/collection/components/molecules/list/list-select.css +3 -7
  42. package/dist/collection/components/molecules/list/list-select.js +41 -12
  43. package/dist/collection/components/molecules/list/list.css +18 -0
  44. package/dist/collection/components/molecules/list/list.js +63 -11
  45. package/dist/collection/components/molecules/popconfirm/popconfirm-box.css +1 -0
  46. package/dist/collection/components/molecules/popconfirm/popconfirm.css +1 -0
  47. package/dist/collection/components/molecules/popover/popover-box.css +1 -0
  48. package/dist/collection/components/molecules/popover/popover.css +1 -0
  49. package/dist/collection/components/molecules/radio/group.js +19 -6
  50. package/dist/collection/components/molecules/select/select.js +19 -6
  51. package/dist/collection/components/molecules/switch/switch.css +0 -1
  52. package/dist/collection/components/molecules/switch/switch.js +20 -7
  53. package/dist/collection/components/molecules/textarea/textarea.js +19 -6
  54. package/dist/collection/components/molecules/tooltip/tooltip-box.css +1 -0
  55. package/dist/collection/components/molecules/tooltip/tooltip.css +1 -0
  56. package/dist/collection/components/organism/colorpicker/colorpicker.js +19 -6
  57. package/dist/collection/components/organism/listbox/listbox.js +26 -16
  58. package/dist/collection/helper/color-helper.js +33 -0
  59. package/dist/collection/helper/generate.js +47 -0
  60. package/dist/collection/helper/number-helper.js +10 -0
  61. package/dist/collection/helper/string-helper.js +21 -0
  62. package/dist/collection/helper/validators.js +21 -0
  63. package/dist/collection/models/bcm-types.js +1 -0
  64. package/dist/collection/models/bcm.js +451 -0
  65. package/dist/collection/templates/caption-template.js +22 -0
  66. package/dist/collection/templates/label-template.js +16 -0
  67. package/dist/collection/templates/slot-template.js +6 -0
  68. package/dist/esm/bcm-alert.entry.js +1 -20
  69. package/dist/esm/{bcm-button_5.entry.js → bcm-button_11.entry.js} +1202 -4
  70. package/dist/esm/{bcm-checkbox-lite_3.entry.js → bcm-checkbox-lite_4.entry.js} +65 -2
  71. package/dist/esm/bcm-colorpicker.entry.js +1 -1
  72. package/dist/esm/{bcm-datetime-picker_2.entry.js → bcm-datetime-picker.entry.js} +2 -135
  73. package/dist/esm/bcm-list-select.entry.js +21 -6
  74. package/dist/esm/bcm-list.entry.js +41 -4
  75. package/dist/esm/{bcm-empty_6.entry.js → bcm-listbox_5.entry.js} +10 -76
  76. package/dist/esm/bcm-popconfirm-box.entry.js +1 -1
  77. package/dist/esm/bcm-popconfirm.entry.js +1 -1
  78. package/dist/esm/bcm-popover-box.entry.js +1 -1
  79. package/dist/esm/bcm-popover.entry.js +1 -1
  80. package/dist/esm/bcm-radio-group.entry.js +1 -1
  81. package/dist/esm/bcm-select.entry.js +1 -1
  82. package/dist/esm/bromcom-ui.js +1 -1
  83. package/dist/esm/loader.js +1 -1
  84. package/dist/esm/polyfills/css-shim.js +0 -0
  85. package/dist/esm/types-911a8837.js +21 -0
  86. package/dist/types/assets/icons/index.d.ts +0 -0
  87. package/dist/types/assets/icons/index.example.d.ts +0 -0
  88. package/dist/types/components/atoms/avatar/avatar.d.ts +0 -0
  89. package/dist/types/components/atoms/badge/badge.d.ts +0 -0
  90. package/dist/types/components/atoms/button/button.d.ts +0 -0
  91. package/dist/types/components/atoms/divider/divider.d.ts +0 -0
  92. package/dist/types/components/atoms/icon/icon.d.ts +0 -0
  93. package/dist/types/components/atoms/icon/types.d.ts +0 -0
  94. package/dist/types/components/atoms/label/label.d.ts +16 -0
  95. package/dist/types/components/atoms/tag/tag.d.ts +0 -0
  96. package/dist/types/components/atoms/text/text.d.ts +0 -0
  97. package/dist/types/components/molecules/card/card-footer.d.ts +0 -0
  98. package/dist/types/components/molecules/card/card-header.d.ts +0 -0
  99. package/dist/types/components/molecules/card/card.d.ts +0 -0
  100. package/dist/types/components/molecules/checkbox/checkbox.d.ts +0 -0
  101. package/dist/types/components/molecules/checkbox/group.d.ts +1 -0
  102. package/dist/types/components/molecules/input/input.d.ts +1 -0
  103. package/dist/types/components/molecules/list/list-select.d.ts +6 -1
  104. package/dist/types/components/molecules/list/list.d.ts +1 -0
  105. package/dist/types/components/molecules/radio/group.d.ts +1 -0
  106. package/dist/types/components/molecules/radio/radio.d.ts +0 -0
  107. package/dist/types/components/molecules/select/group.d.ts +0 -0
  108. package/dist/types/components/molecules/select/option.d.ts +0 -0
  109. package/dist/types/components/molecules/select/select.d.ts +1 -0
  110. package/dist/types/components/molecules/switch/switch.d.ts +1 -0
  111. package/dist/types/components/molecules/textarea/textarea.d.ts +1 -0
  112. package/dist/types/components/organism/colorpicker/colorpicker.d.ts +1 -0
  113. package/dist/types/components/organism/listbox/listbox.d.ts +1 -0
  114. package/dist/types/components.d.ts +64 -3
  115. package/dist/types/global/variables/colors.d.ts +0 -0
  116. package/dist/types/helper/color-helper.d.ts +9 -0
  117. package/dist/types/helper/generate.d.ts +10 -0
  118. package/dist/types/helper/number-helper.d.ts +9 -0
  119. package/dist/types/helper/string-helper.d.ts +20 -0
  120. package/dist/types/helper/validators.d.ts +8 -0
  121. package/dist/types/index.d.ts +0 -0
  122. package/dist/types/models/bcm-types.d.ts +19 -0
  123. package/dist/types/models/bcm.d.ts +447 -0
  124. package/dist/types/stencil-public-runtime.d.ts +0 -0
  125. package/dist/types/templates/caption-template.d.ts +12 -0
  126. package/dist/types/templates/label-template.d.ts +12 -0
  127. package/dist/types/templates/slot-template.d.ts +8 -0
  128. package/dist/types/utils/utils.d.ts +0 -0
  129. package/loader/cdn.js +0 -0
  130. package/loader/index.cjs.js +0 -0
  131. package/loader/index.d.ts +0 -0
  132. package/loader/index.es2017.js +0 -0
  133. package/loader/index.js +0 -0
  134. package/loader/package.json +0 -0
  135. package/package.json +1 -1
  136. package/dist/bromcom-ui/p-013b6f5d.entry.js +0 -1
  137. package/dist/bromcom-ui/p-3a6625d7.entry.js +0 -1
  138. package/dist/bromcom-ui/p-3aef4844.entry.js +0 -1
  139. package/dist/bromcom-ui/p-5ff33d84.entry.js +0 -1
  140. package/dist/bromcom-ui/p-607bc9b3.entry.js +0 -1
  141. package/dist/bromcom-ui/p-6bd805f1.entry.js +0 -1
  142. package/dist/bromcom-ui/p-6ef403b0.entry.js +0 -1
  143. package/dist/bromcom-ui/p-865ccb94.entry.js +0 -1
  144. package/dist/bromcom-ui/p-9220ba9c.entry.js +0 -1
  145. package/dist/bromcom-ui/p-b81236b1.entry.js +0 -1
  146. package/dist/bromcom-ui/p-cdfd9ba0.entry.js +0 -1
  147. package/dist/bromcom-ui/p-cf6b0656.entry.js +0 -1
  148. package/dist/bromcom-ui/p-fc3e131c.entry.js +0 -1
  149. package/dist/cjs/bcm-checkbox-group.cjs.entry.js +0 -273
  150. package/dist/cjs/bcm-checkbox.cjs.entry.js +0 -143
  151. package/dist/cjs/bcm-switch.cjs.entry.js +0 -86
  152. package/dist/cjs/bcm-tooltip-box.cjs.entry.js +0 -36
  153. package/dist/esm/bcm-checkbox-group.entry.js +0 -269
  154. package/dist/esm/bcm-checkbox.entry.js +0 -139
  155. package/dist/esm/bcm-switch.entry.js +0 -82
  156. package/dist/esm/bcm-tooltip-box.entry.js +0 -32
@@ -1,7 +1,9 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement, c as createEvent } from './index-8fe7aea4.js';
2
2
  import { c as classnames } from './index-e58a2d48.js';
3
3
  import { C as ColorPalette } from './colors-7c7b35e9.js';
4
- import { g as getChilds, e as extractColor } from './utils-de9aee67.js';
4
+ import { e as extractColor, g as getChilds, d as delay } from './utils-de9aee67.js';
5
+ import { S as StatusProps } from './types-911a8837.js';
6
+ import { p as popoverPlacement, a as popoverBoxPlacement } from './popover-placement-a4ab1587.js';
5
7
 
6
8
  /**
7
9
  * 'type' prop variantOption
@@ -241,6 +243,404 @@ const BcmButton = class {
241
243
  };
242
244
  BcmButton.style = buttonsCss;
243
245
 
246
+ /**
247
+ * 'color' prop predefined values
248
+ */
249
+ var ColorProps;
250
+ (function (ColorProps) {
251
+ ColorProps["black"] = "black";
252
+ ColorProps["white"] = "white";
253
+ ColorProps["prime-blue"] = "prime-blue";
254
+ ColorProps["grey"] = "grey";
255
+ ColorProps["blue"] = "blue";
256
+ ColorProps["warmyellow"] = "warmyellow";
257
+ ColorProps["yellow"] = "yellow";
258
+ ColorProps["limegreen"] = "limegreen";
259
+ ColorProps["red"] = "red";
260
+ ColorProps["darkorange"] = "darkorange";
261
+ ColorProps["orange"] = "orange";
262
+ ColorProps["green"] = "green";
263
+ ColorProps["turquosie"] = "turquosie";
264
+ ColorProps["cobaltblue"] = "cobaltblue";
265
+ ColorProps["magenta"] = "magenta";
266
+ ColorProps["purple"] = "purple";
267
+ ColorProps["bc-red"] = "bc-red";
268
+ ColorProps["bc-blue"] = "bc-blue";
269
+ ColorProps["bc-green"] = "bc-green";
270
+ ColorProps["bc-orange"] = "bc-orange";
271
+ })(ColorProps || (ColorProps = {}));
272
+
273
+ const checkboxCss = "@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}.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}:host{display:inline-block}:host(.hidden){display:none}input{display:none}.svg-icon{filter:brightness(0) invert(1);width:12px;height:12px}label{display:flex;align-items:flex-start;font-size:14px;color:var(--bcm-color-grey-8);cursor:pointer}label span.icon{display:flex;align-items:center;justify-content:center;min-width:16px;min-height:16px;border:1px solid #D9D9D9;margin-right:8px;border-radius:2px;margin-top:2px;background-color:var(--bcm-color-grey-1)}:host(.indeterminate) label span.icon{position:relative}:host(.indeterminate) label span.icon::after{content:\"\";position:absolute;top:50%;left:8px;width:10px;height:10px;background-color:var(--bcm-color-prime-blue-6);transform:translate(-50%, -50%);opacity:1;z-index:1}:host(.indeterminate) label span.icon::before{content:\"\";position:absolute;top:-1px;left:-1px;width:16px;height:100%;border-radius:2px;background-color:var(--bcm-color-grey-1);border:1px solid var(--bcm-color-grey-5);opacity:1;z-index:1}:host(.indeterminate) label span.icon:hover:not(.disabled):before{border-color:var(--bcm-color-prime-blue-6);box-shadow:0px 2px 4px rgba(54, 121, 171, 0.5)}input:checked+label span.icon{background-color:var(--bcm-color-prime-blue-6);border-color:transparent}input:checked+label .icon-checked{display:block}bcm-icon{filter:brightness(0) invert(1)}input[disabled]+label{cursor:not-allowed}input[disabled]+label span.icon{background-color:var(--bcm-color-grey-3);border-color:var(--bcm-color-grey-5)}input[disabled]+label bcm-icon{filter:brightness(0);opacity:0.3}input:not([disabled])+label:hover span.icon{border-color:var(--bcm-color-prime-blue-6);box-shadow:0px 2px 4px rgba(54, 121, 171, 0.5)}:host(.error) input:not([disabled])+label span.icon{border-color:var(--bcm-color-red-6)}.caption-area{margin-bottom:8px;min-height:20px;display:block}.input-caption{display:block}.caption-default{color:#8C8C8C}.caption-primary{color:#4293CF}.caption-success{color:#52C41A}.caption-warning{color:#FA8C16}.caption-error{color:#F5222D}.radio-button{background-color:var(--bcm-color-grey-1);color:var(--bcm-color-grey-8);border:1px solid var(--bcm-color-grey-5);padding:0 16px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.radio-button>span.icon{display:none}.radio-button>span.slot{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;user-select:none}.radio-button:hover:not(.disabled){color:var(--bcm-color-prime-blue-5)}.radio-button:active:not(.disabled){color:var(--bcm-color-prime-blue-7)}.radio-button.disabled{background-color:var(--bcm-color-grey-3);color:var(--bcm-color-grey-6);cursor:not-allowed}.radio-button.checked.disabled{background-color:var(--bcm-color-grey-4);color:var(--bcm-color-grey-1);border-color:var(--bcm-color-grey-5)}.radio-button.checked.solid{color:var(--bcm-color-grey-1);background-color:var(--bcm-color-prime-blue-6);border-color:var(--bcm-color-prime-blue-6)}.radio-button.checked.solid:hover{background-color:var(--bcm-color-prime-blue-5);border-color:var(--bcm-color-prime-blue-5)}.radio-button.checked.solid:active{background-color:var(--bcm-color-prime-blue-7);border-color:var(--bcm-color-prime-blue-7)}.radio-button.checked.outline{background-color:var(--bcm-color-grey-1);color:var(--bcm-color-prime-blue-6);border-color:var(--bcm-color-prime-blue-6)}.radio-button.checked.outline:hover{color:var(--bcm-color-prime-blue-5);border-color:var(--bcm-color-prime-blue-5)}.radio-button.checked.outline:active{color:var(--bcm-color-prime-blue-7);border-color:var(--bcm-color-prime-blue-7)}.radio-button.large{height:40px}.radio-button.medium{height:32px}.radio-button.small{height:24px}";
274
+
275
+ const BcmCheckbox = class {
276
+ constructor(hostRef) {
277
+ registerInstance(this, hostRef);
278
+ this.blur = createEvent(this, "bcm-blur", 7);
279
+ this.focus = createEvent(this, "bcm-focus", 7);
280
+ this.change = createEvent(this, "bcm-change", 7);
281
+ /**
282
+ * Component Properties
283
+ */
284
+ this.value = '';
285
+ this.name = 'checkbox';
286
+ this.checked = false;
287
+ this.disabled = false;
288
+ this.readOnly = false;
289
+ this.hidden = false;
290
+ this.required = false;
291
+ this.optionType = 'default';
292
+ this.buttonStyle = 'solid';
293
+ this.size = 'medium';
294
+ this.noCaption = false;
295
+ this.captionType = 'default';
296
+ }
297
+ /**
298
+ * @ComponentMethod
299
+ */
300
+ connectedCallback() {
301
+ this.handleChange = this.handleChange.bind(this);
302
+ this.captionCache = this.caption;
303
+ this.captionTypeCache = this.captionType;
304
+ }
305
+ async setClear() {
306
+ if (this.inputElement.checked == true) {
307
+ this.inputElement.checked = false;
308
+ this.handleChange();
309
+ }
310
+ }
311
+ async resetCaption() {
312
+ this.caption = this.captionCache;
313
+ this.captionType = this.captionTypeCache;
314
+ this.captionError = null;
315
+ }
316
+ componentDidLoad() {
317
+ this.value = this.inputElement.checked;
318
+ this.checked = this.value;
319
+ }
320
+ /**
321
+ * @desc
322
+ * @param event
323
+ * @returns
324
+ */
325
+ handleChange() {
326
+ this.value = this.inputElement.checked;
327
+ this.checked = this.value;
328
+ this.change.emit({
329
+ name: this.name,
330
+ value: this.value
331
+ });
332
+ }
333
+ handleFocus() {
334
+ this.focus.emit();
335
+ }
336
+ handleBlur() {
337
+ this.blur.emit();
338
+ }
339
+ /**
340
+ * @desc
341
+ * @param name -
342
+ * @returns {void}
343
+ */
344
+ async check(uncheck) {
345
+ this.inputElement.checked = uncheck;
346
+ this.handleChange();
347
+ }
348
+ getColor(color) {
349
+ if (this.color !== 'default' && this.optionType == 'button' && this.checked)
350
+ return {
351
+ // color: extractColor(ColorPalette, ColorProps[color] + '-6'),
352
+ borderColor: extractColor(ColorPalette, ColorProps[color] + '-5'),
353
+ backgroundColor: extractColor(ColorPalette, ColorProps[color] + '-5')
354
+ };
355
+ }
356
+ render() {
357
+ const { disabled, checked, readOnly, name, handleChange, required, caption, captionError, captionType, noCaption, buttonStyle, size, optionType } = this;
358
+ const hostClasses = classnames(this.hidden ? 'hidden' : null, {
359
+ 'error': captionType == 'error' ? true : false
360
+ });
361
+ const captionClasses = classnames('size-1', 'input-caption', 'caption-' + captionType);
362
+ const defaultClasses = classnames();
363
+ const buttonClasses = classnames('radio-button', buttonStyle, size, {
364
+ 'size-2': size === 'small' || size === 'medium',
365
+ 'size-3': size === 'large',
366
+ 'checked': checked,
367
+ 'disabled': disabled,
368
+ });
369
+ var fontColor = extractColor(ColorPalette, ColorProps[this.color] + '-6');
370
+ var style = "<style>.radio-button:not(.checked):hover{color: " + fontColor + "} </style>";
371
+ return (h(Host, { class: hostClasses, onFocus: () => this.handleFocus(), onBlur: () => this.handleBlur() }, h("input", { id: name, type: "checkbox", checked: checked, disabled: disabled, required: required, readOnly: readOnly, onChange: handleChange, ref: el => (this.inputElement = el) }), optionType == 'button' && (h("span", { innerHTML: style })), h("label", { title: optionType == 'button' ? this.el.innerHTML : null, htmlFor: name, class: optionType == 'default' ? defaultClasses : buttonClasses, style: this.getColor(this.color) }, h("span", { class: "icon" }, h("bcm-icon", { class: "icon-checked", icon: "component-check", size: "small", type: "default" })), h("span", { class: "slot" }, h("slot", null))), !noCaption && (h("div", { class: "caption-area" }, captionType == "error"
372
+ ? h("span", { class: captionClasses }, " ", captionError, " ")
373
+ : caption && h("span", { class: captionClasses }, " ", caption, " ")))));
374
+ }
375
+ get el() { return getElement(this); }
376
+ };
377
+ BcmCheckbox.style = checkboxCss;
378
+
379
+ const groupCss = "@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}:host{display:block;width:100%}:host(.hidden){display:none}:host(.error) .label{color:var(--bcm-color-red-6) !important}.group-container{display:flex;gap:24px}.group-container.vertical{gap:unset;flex-direction:column}.group-container.button{gap:unset}.group-container.full-width{max-width:100%}.indeterminate{padding:0 0 16px 0;margin-bottom:16px;border-bottom:1px solid #efefef;}.indeterminate input{display:none}.indeterminate label{display:flex;align-items:center;font-size:14px;color:var(--bcm-color-grey-8);cursor:pointer}.indeterminate label .icon-checked{display:none}.indeterminate span{position:relative;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid #D9D9D9;margin-right:8px;border-radius:2px}.indeterminate span:after{content:\"\";position:absolute;top:50%;left:50%;width:10px;height:10px;background-color:var(--bcm-color-prime-blue-6);transform:translate(-50%, -50%);opacity:0}.indeterminate bcm-icon{filter:brightness(0) invert(1)}.indeterminate input[disabled]+label{cursor:not-allowed}.indeterminate input[disabled]+label span{background-color:var(--bcm-color-grey-3);border-color:var(--bcm-color-grey-5)}.indeterminate input[disabled]+label span:after{background-color:var(--bcm-color-grey-6)}.indeterminate input[disabled]+label bcm-icon{filter:brightness(0);opacity:0.3}.indeterminate input:not([disabled])+label:hover span{border-color:var(--bcm-color-prime-blue-6);box-shadow:0px 2px 4px rgba(54, 121, 171, 0.5)}.indeterminate.bcm-uncheck label span{background-color:#ffffff}.indeterminate.bcm-determinate bcm-icon{display:block}.indeterminate.bcm-determinate label span{background-color:var(--bcm-color-prime-blue-6);border-color:transparent}.indeterminate.bcm-determinate label span:after{opacity:0}.indeterminate.bcm-indeterminate bcm-icon{display:none !important}.indeterminate.bcm-indeterminate label span{background-color:#ffffff}.indeterminate.bcm-indeterminate label span:after{opacity:1}.label{display:flex;flex-direction:column;color:var(--bcm-color-grey-9);margin-bottom:8px}";
380
+
381
+ const BcmCheckboxGroup = class {
382
+ constructor(hostRef) {
383
+ registerInstance(this, hostRef);
384
+ this.groupChange = createEvent(this, "bcm-group-change", 7);
385
+ this.groupCheckedList = createEvent(this, "bcm-group-checked-list", 7);
386
+ /**
387
+ * Private variables
388
+ */
389
+ this.checkboxes = [];
390
+ /**
391
+ * Component Properties
392
+ */
393
+ this.direction = 'horizontal';
394
+ this.items = [];
395
+ this.indeterminate = false;
396
+ this.disabled = false;
397
+ this.hidden = false;
398
+ this.required = false;
399
+ this.label = null;
400
+ this.gap = null;
401
+ this.fullWidth = "false";
402
+ this.optionType = 'default';
403
+ this.buttonStyle = 'solid';
404
+ this.size = 'medium';
405
+ this.noCaption = false;
406
+ this.captionType = 'default';
407
+ /**
408
+ * Component State Variables
409
+ */
410
+ this.indeterminateState = 'uncheck';
411
+ this.checkboxesProp = [];
412
+ }
413
+ /**
414
+ * @ComponentMethod
415
+ */
416
+ componentWillLoad() {
417
+ this.parseItems(this.items);
418
+ this.parseOptions();
419
+ }
420
+ /**
421
+ * @ComponentMethod
422
+ */
423
+ connectedCallback() { }
424
+ componentDidLoad() {
425
+ let checkboxesInit = [];
426
+ checkboxesInit = this.getAllInputs();
427
+ checkboxesInit.map(checkbox => {
428
+ if (this.fullWidth != "false") {
429
+ if (this.fullWidth === "flex") {
430
+ checkbox.style.flex = "auto";
431
+ }
432
+ else {
433
+ checkbox.style.width = "100%";
434
+ }
435
+ }
436
+ this.optionType && (checkbox.optionType = this.optionType);
437
+ this.buttonStyle && (checkbox.buttonStyle = this.buttonStyle);
438
+ this.size && (checkbox.size = this.size);
439
+ // this.required == true && checkbox.required == true && (
440
+ // checkbox.required = true
441
+ // )
442
+ this.disabled == true && (checkbox.disabled = true);
443
+ });
444
+ this.groupChecked().then(values => this.value = values);
445
+ }
446
+ async setClear() {
447
+ const checkboxesInit = this.getAllInputs();
448
+ checkboxesInit.map(checkbox => {
449
+ checkbox.setClear();
450
+ checkbox.noCaption = this.noCaption;
451
+ });
452
+ }
453
+ async resetCaption() {
454
+ const checkboxesInit = this.getAllInputs();
455
+ checkboxesInit.map(checkbox => {
456
+ checkbox.resetCaption();
457
+ checkbox.noCaption = this.noCaption;
458
+ });
459
+ }
460
+ /**
461
+ * @ComponentMethod
462
+ */
463
+ componentDidRender() {
464
+ let slotElements;
465
+ slotElements = this.el.shadowRoot.querySelector('slot').assignedElements();
466
+ this.checkboxes = [];
467
+ // Get only bcm-checkbox elements from
468
+ // slot childs
469
+ slotElements.map(element => {
470
+ String(element.tagName).toLowerCase() == 'bcm-checkbox'
471
+ && this.checkboxes.push(element);
472
+ });
473
+ this.setIndeterminateState();
474
+ if (this.items.length > 0) {
475
+ let checkboxesInit = [];
476
+ checkboxesInit = this.getAllInputs();
477
+ checkboxesInit.map(checkbox => {
478
+ this.defaultValueState && (this.defaultValueState.find(e => e === checkbox.name) && checkbox.check(checkbox.name));
479
+ });
480
+ }
481
+ }
482
+ componentDidUpdate() {
483
+ this.handleChange();
484
+ }
485
+ /**
486
+ * @desc
487
+ */
488
+ inputChange() {
489
+ this.groupChecked().then(values => this.value = values);
490
+ this.setIndeterminateState();
491
+ }
492
+ /**
493
+ * @desc Returns merged slot and prop
494
+ * checkbox items
495
+ * @returns {Array<BcmCheckbox>}
496
+ */
497
+ getAllInputs() {
498
+ return [
499
+ ...this.checkboxes,
500
+ ...this.el.shadowRoot.querySelectorAll('bcm-checkbox')
501
+ ];
502
+ }
503
+ /**
504
+ * @desc
505
+ * @returns {void}
506
+ */
507
+ setIndeterminateState() {
508
+ let state = 'uncheck';
509
+ let allChecked = true;
510
+ let allUnchecked = true;
511
+ this.getAllInputs().map((checkbox) => {
512
+ checkbox.checked && (allUnchecked = false);
513
+ !checkbox.checked && (allChecked = false);
514
+ });
515
+ !allChecked && !allUnchecked
516
+ ? state = 'indeterminate'
517
+ : allChecked
518
+ ? state = 'determinate'
519
+ : state = 'uncheck';
520
+ this.indeterminateState = state;
521
+ }
522
+ /**
523
+ * @desc
524
+ * @param event
525
+ */
526
+ indeterminateClick() {
527
+ if (this.disabled == false) {
528
+ let checkAll = true;
529
+ if (this.indeterminateState == 'determinate') {
530
+ checkAll = false;
531
+ }
532
+ this.getAllInputs().map((checkbox) => {
533
+ checkbox.check(checkAll);
534
+ });
535
+ }
536
+ }
537
+ parseOptions() {
538
+ if (this.defaultValue) {
539
+ this.defaultValueState = JSON.parse(this.defaultValue);
540
+ }
541
+ }
542
+ /**
543
+ * @desc
544
+ * @param newValue
545
+ * @returns {void}
546
+ */
547
+ parseItems(newValue) {
548
+ if (newValue) {
549
+ typeof newValue == 'string'
550
+ ? this.checkboxesProp = JSON.parse(newValue)
551
+ : this.checkboxesProp = newValue;
552
+ }
553
+ }
554
+ /**
555
+ * @desc
556
+ * @param name -
557
+ * @returns {boolean | Array<any>}
558
+ */
559
+ async check(options) {
560
+ if (options) {
561
+ typeof options == 'string'
562
+ ? options = JSON.parse(options)
563
+ : options = options;
564
+ }
565
+ let checkboxes = [];
566
+ checkboxes = this.getAllInputs();
567
+ const inBoth = (list1, list2) => list1.filter(a => true === list2.some(b => a.name === b.name));
568
+ let optionsArray = options;
569
+ inBoth(checkboxes, options).map(item => {
570
+ item.check(optionsArray.find(x => x.name === item.name).checked);
571
+ });
572
+ }
573
+ /**
574
+ * @desc
575
+ * @param name -
576
+ * @returns {boolean | Array<any>}
577
+ */
578
+ async groupChecked(name) {
579
+ let retVal = null;
580
+ let checkeds = {};
581
+ let checkboxes = [];
582
+ if (typeof retVal != 'boolean' && !retVal) {
583
+ retVal = checkeds;
584
+ }
585
+ // Merge slotted items with prop items
586
+ // #
587
+ checkboxes = this.getAllInputs();
588
+ checkboxes.map(checkbox => {
589
+ checkbox.checked && (checkeds[checkbox.name] = {
590
+ value: true,
591
+ name: checkbox.name
592
+ });
593
+ !checkbox.checked && (checkeds[checkbox.name] = {
594
+ value: false,
595
+ name: checkbox.name
596
+ });
597
+ if (checkbox.name === name) {
598
+ retVal = checkbox.checked;
599
+ }
600
+ });
601
+ return retVal;
602
+ }
603
+ handleChange() {
604
+ let checkeds = {};
605
+ let changes = {};
606
+ let checkboxes = [];
607
+ checkboxes = this.getAllInputs();
608
+ checkboxes.map(checkbox => {
609
+ checkbox.checked && (checkeds[checkbox.name] = {
610
+ value: true,
611
+ name: checkbox.name
612
+ });
613
+ changes[checkbox.name] = {
614
+ value: checkbox.checked ? true : false,
615
+ name: checkbox.name
616
+ };
617
+ });
618
+ this.groupChange.emit(changes);
619
+ this.groupCheckedList.emit(checkeds);
620
+ }
621
+ render() {
622
+ const { checkboxesProp, indeterminate, disabled, label, required, captionType } = this;
623
+ const groupContainerClasses = classnames('group-container', this.direction, this.optionType, this.fullWidth, {
624
+ 'full-width': this.fullWidth
625
+ });
626
+ const indeterminateClasses = classnames('indeterminate', 'bcm-' + this.indeterminateState, {
627
+ 'disabled': disabled
628
+ });
629
+ const hostClasses = classnames(this.hidden ? 'hidden' : null, {
630
+ 'error': captionType == 'error' ? true : false
631
+ });
632
+ var customStyle = {};
633
+ this.gap && (customStyle = { 'gap': this.gap });
634
+ return (h(Host, { class: hostClasses, "on-bcm-change": () => this.inputChange() }, label && h("div", null, h("bcm-label", { tooltip: this.tooltip, type: captionType, value: label, required: required })), indeterminate && (h("div", { class: indeterminateClasses }, h("input", { id: "bcm-indeterminate-element", type: "checkbox", disabled: disabled }), h("label", { htmlFor: "bcm-indeterminate-element", "on-click": () => this.indeterminateClick() }, h("span", null, h("bcm-icon", { class: "icon-checked", icon: "component-check", size: "small", type: "default" })), "Check All"))), h("div", { class: groupContainerClasses, style: customStyle }, checkboxesProp && this.checkboxesProp.map((checkbox) => h("bcm-checkbox", { name: checkbox.name, checked: checkbox.checked, disabled: checkbox.disabled, required: this.required === true && checkbox.required === true && (true), noCaption: this.noCaption, optionType: this.optionType, buttonStyle: this.buttonStyle, size: this.size, "full-width": this.fullWidth }, checkbox.label)), h("slot", null))));
635
+ }
636
+ get el() { return getElement(this); }
637
+ static get watchers() { return {
638
+ "defaultValue": ["parseOptions"],
639
+ "items": ["parseItems"]
640
+ }; }
641
+ };
642
+ BcmCheckboxGroup.style = groupCss;
643
+
244
644
  // /**
245
645
  // *
246
646
  // * @param type
@@ -6325,7 +6725,7 @@ const BcmInput = class {
6325
6725
  const inputClass = size === 'large' ? 'size-3' : 'size-2';
6326
6726
  const captionClasses = classnames('size-1', 'input-caption', 'caption-' + captionType);
6327
6727
  const hostClasses = classnames(this.hidden ? 'hidden' : null, this.noMargin ? 'no-margin' : null);
6328
- return (h(Host, { class: hostClasses }, h("div", { class: containerClasses }, label && h("label", { htmlFor: this.inputId, class: "label size-1" }, " ", label, " ", required && ('*'), " "), h("div", { class: baseClasses }, h("span", { class: "input-prefix" }, h("slot", { name: "prefix" }), unitPrefix && h("span", { class: classnames(inputClass, 'unit-prefix') }, unitPrefix)), h("input", { "bcm-internal-id": this._id, id: this.inputId, class: inputClass, ref: el => (this.inputElement = el), onFocus: this.handleFocus, onBlur: this.handleBlur, onChange: this.handleChange, onInput: this.handleInput, maxLength: this.maxLength, type: type === 'password' && isPasswordVisible ? 'text' :
6728
+ return (h(Host, { class: hostClasses }, h("div", { class: containerClasses }, label && h("div", null, h("bcm-label", { tooltip: this.tooltip, type: captionType, value: label, required: required, htmlFor: this.inputId })), h("div", { class: baseClasses }, h("span", { class: "input-prefix" }, h("slot", { name: "prefix" }), unitPrefix && h("span", { class: classnames(inputClass, 'unit-prefix') }, unitPrefix)), h("input", { "bcm-internal-id": this._id, id: this.inputId, class: inputClass, ref: el => (this.inputElement = el), onFocus: this.handleFocus, onBlur: this.handleBlur, onChange: this.handleChange, onInput: this.handleInput, maxLength: this.maxLength, type: type === 'password' && isPasswordVisible ? 'text' :
6329
6729
  type === 'number' ? 'text' : type, placeholder: placeholder, value: type === 'number' && !this.hasFocus
6330
6730
  ? value + (value && (unit === null || unit === void 0 ? void 0 : unit.length) > 0 ? ' ' + unit : '')
6331
6731
  : value, disabled: this.disabled, readonly: this.readonly }), clearable && !this.disabled && (h("button", { class: "input-clear-button", onClick: this.handleClear }, h("bcm-icon", { icon: "close-circle", type: "fill", size: iconSizes$1[size], color: "grey-7" }))), type === 'password' && passwordToggle && (h("button", { class: "input-password-toggle", onClick: this.changePasswordVisibility }, h("bcm-icon", { icon: isPasswordVisible ? "eye-invisible" : "eye", type: "outlined", size: iconSizes$1[size], color: "grey-7" }))), Object.keys(defaultIcons).includes(type) && !noDefaultIcon && (h("span", { class: "input-suffix default-icon" }, h("bcm-icon", { icon: defaultIcons[type], type: "outlined", size: iconSizes$1[size], color: "grey-7" }))), type === 'number' && (h("div", { class: classnames('caret-container', { 'unit': (unit === null || unit === void 0 ? void 0 : unit.length) > 0 }, { 'disabled': inValid }, { 'disabled': readonly }) }, h("span", { class: "caret", onClick: inValid == false && this.incrementNumber }, h("bcm-icon", { icon: "caret-up", type: "outlined", color: "grey-7", size: 8 })), h("span", { class: "caret", onClick: inValid == false && this.decrementNumber }, h("bcm-icon", { icon: "caret-down", type: "outlined", color: "grey-7", size: 8 })))), type !== 'number' && (h("span", { class: "input-suffix" }, h("slot", { name: "suffix" })))), !noCaption && (h("div", { class: "caption-area" }, captionType == "error"
@@ -6339,6 +6739,644 @@ const BcmInput = class {
6339
6739
  };
6340
6740
  BcmInput.style = inputCss;
6341
6741
 
6742
+ class Generate {
6743
+ }
6744
+ Generate.UID = () => Math.random().toString(36).substr(2, 9);
6745
+ Generate.getIconAttrWithStatusType = (status, loading = false) => {
6746
+ if (loading)
6747
+ return { icon: 'loading', color: 'blue-6' };
6748
+ switch (status) {
6749
+ case StatusProps.info:
6750
+ return { color: 'blue-6', icon: 'info-circle' };
6751
+ case StatusProps.error:
6752
+ return { color: 'red-6', icon: 'close-circle' };
6753
+ case StatusProps.warning:
6754
+ return { color: 'warmyellow-6', icon: 'exclamation-circle' };
6755
+ case StatusProps.success:
6756
+ return { color: 'green-6', icon: 'check-circle' };
6757
+ }
6758
+ };
6759
+ Generate.createComponent = (element, props) => {
6760
+ let box = document.createElement(element);
6761
+ Object.keys(props).forEach(key => {
6762
+ box[key] = props[key];
6763
+ });
6764
+ document.body.appendChild(box);
6765
+ return box;
6766
+ };
6767
+ Generate.debounceInput = (func, wait, immediate) => {
6768
+ let timeout;
6769
+ return function () {
6770
+ let context = this, args = arguments;
6771
+ let later = function () {
6772
+ timeout = null;
6773
+ if (!immediate)
6774
+ func.apply(context, args);
6775
+ };
6776
+ let callNow = immediate && !timeout;
6777
+ clearTimeout(timeout);
6778
+ timeout = setTimeout(later, wait);
6779
+ if (callNow)
6780
+ func.apply(context, args);
6781
+ };
6782
+ };
6783
+ Generate.flatArray = (arr) => {
6784
+ return arr.reduce((acc, val) => {
6785
+ return acc.concat(Array.isArray(val) ? Generate.flatArray(val) : val);
6786
+ }, []);
6787
+ };
6788
+
6789
+ var Bcm;
6790
+ (function (Bcm) {
6791
+ let HtmlElementType;
6792
+ (function (HtmlElementType) {
6793
+ HtmlElementType["div"] = "div";
6794
+ HtmlElementType["span"] = "span";
6795
+ HtmlElementType["button"] = "button";
6796
+ HtmlElementType["a"] = "a";
6797
+ HtmlElementType["input"] = "input";
6798
+ HtmlElementType["textarea"] = "textarea";
6799
+ HtmlElementType["select"] = "select";
6800
+ HtmlElementType["option"] = "option";
6801
+ HtmlElementType["img"] = "img";
6802
+ HtmlElementType["table"] = "table";
6803
+ HtmlElementType["tr"] = "tr";
6804
+ HtmlElementType["td"] = "td";
6805
+ HtmlElementType["th"] = "th";
6806
+ HtmlElementType["tbody"] = "tbody";
6807
+ HtmlElementType["thead"] = "thead";
6808
+ HtmlElementType["tfoot"] = "tfoot";
6809
+ HtmlElementType["ul"] = "ul";
6810
+ HtmlElementType["li"] = "li";
6811
+ HtmlElementType["form"] = "form";
6812
+ HtmlElementType["label"] = "label";
6813
+ HtmlElementType["main"] = "main";
6814
+ HtmlElementType["header"] = "header";
6815
+ HtmlElementType["footer"] = "footer";
6816
+ HtmlElementType["section"] = "section";
6817
+ HtmlElementType["article"] = "article";
6818
+ HtmlElementType["nav"] = "nav";
6819
+ HtmlElementType["aside"] = "aside";
6820
+ })(HtmlElementType = Bcm.HtmlElementType || (Bcm.HtmlElementType = {}));
6821
+ let Status;
6822
+ (function (Status) {
6823
+ Status["info"] = "info";
6824
+ Status["error"] = "error";
6825
+ Status["warning"] = "warning";
6826
+ Status["success"] = "success";
6827
+ Status["default"] = "default";
6828
+ })(Status = Bcm.Status || (Bcm.Status = {}));
6829
+ let Shape;
6830
+ (function (Shape) {
6831
+ Shape["ellipse"] = "ellipse";
6832
+ Shape["square"] = "square";
6833
+ })(Shape = Bcm.Shape || (Bcm.Shape = {}));
6834
+ let Direction;
6835
+ (function (Direction) {
6836
+ Direction["horizontal"] = "horizontal";
6837
+ Direction["vertical"] = "vertical";
6838
+ })(Direction = Bcm.Direction || (Bcm.Direction = {}));
6839
+ let PreDefinedIconSize;
6840
+ (function (PreDefinedIconSize) {
6841
+ PreDefinedIconSize[PreDefinedIconSize["large"] = 48] = "large";
6842
+ PreDefinedIconSize[PreDefinedIconSize["medium"] = 24] = "medium";
6843
+ PreDefinedIconSize[PreDefinedIconSize["default"] = 16] = "default";
6844
+ PreDefinedIconSize[PreDefinedIconSize["small"] = 12] = "small";
6845
+ PreDefinedIconSize[PreDefinedIconSize["xsmall"] = 8] = "xsmall";
6846
+ })(PreDefinedIconSize = Bcm.PreDefinedIconSize || (Bcm.PreDefinedIconSize = {}));
6847
+ let IconSize;
6848
+ (function (IconSize) {
6849
+ IconSize["small"] = "16";
6850
+ IconSize["medium"] = "20";
6851
+ IconSize["large"] = "24";
6852
+ })(IconSize = Bcm.IconSize || (Bcm.IconSize = {}));
6853
+ let Size;
6854
+ (function (Size) {
6855
+ Size["small"] = "small";
6856
+ Size["medium"] = "medium";
6857
+ Size["large"] = "large";
6858
+ Size["xsmall"] = "xsmall";
6859
+ Size["xlarge"] = "xlarge";
6860
+ Size["xxlarge"] = "xxlarge";
6861
+ Size["xxxlarge"] = "xxxlarge";
6862
+ })(Size = Bcm.Size || (Bcm.Size = {}));
6863
+ let Kind;
6864
+ (function (Kind) {
6865
+ Kind["solid"] = "solid";
6866
+ Kind["ghost"] = "ghost";
6867
+ Kind["link"] = "link";
6868
+ Kind["solid-link"] = "solid-link";
6869
+ Kind["ghost-link"] = "ghost-link";
6870
+ })(Kind = Bcm.Kind || (Bcm.Kind = {}));
6871
+ let ButtonType;
6872
+ (function (ButtonType) {
6873
+ ButtonType["button"] = "button";
6874
+ ButtonType["reset"] = "reset";
6875
+ ButtonType["submit"] = "submit";
6876
+ })(ButtonType = Bcm.ButtonType || (Bcm.ButtonType = {}));
6877
+ let IconPosition;
6878
+ (function (IconPosition) {
6879
+ IconPosition["prefix"] = "prefix";
6880
+ IconPosition["suffix"] = "suffix";
6881
+ })(IconPosition = Bcm.IconPosition || (Bcm.IconPosition = {}));
6882
+ let TagType;
6883
+ (function (TagType) {
6884
+ TagType["basic"] = "basic";
6885
+ TagType["add"] = "add";
6886
+ TagType["checkable"] = "checkable";
6887
+ TagType["dissmisable"] = "dissmisable";
6888
+ })(TagType = Bcm.TagType || (Bcm.TagType = {}));
6889
+ let FontSize;
6890
+ (function (FontSize) {
6891
+ FontSize["size-1"] = "size-1";
6892
+ FontSize["size-2"] = "size-2";
6893
+ FontSize["size-3"] = "size-3";
6894
+ FontSize["size-4"] = "size-4";
6895
+ FontSize["size-5"] = "size-5";
6896
+ FontSize["size-6"] = "size-6";
6897
+ FontSize["size-7"] = "size-7";
6898
+ FontSize["size-8"] = "size-8";
6899
+ FontSize["size-9"] = "size-9";
6900
+ })(FontSize = Bcm.FontSize || (Bcm.FontSize = {}));
6901
+ let FontSizeValue;
6902
+ (function (FontSizeValue) {
6903
+ FontSizeValue[FontSizeValue["size-1"] = 12] = "size-1";
6904
+ FontSizeValue[FontSizeValue["size-2"] = 14] = "size-2";
6905
+ FontSizeValue[FontSizeValue["size-3"] = 16] = "size-3";
6906
+ FontSizeValue[FontSizeValue["size-4"] = 20] = "size-4";
6907
+ FontSizeValue[FontSizeValue["size-5"] = 24] = "size-5";
6908
+ FontSizeValue[FontSizeValue["size-6"] = 30] = "size-6";
6909
+ FontSizeValue[FontSizeValue["size-7"] = 38] = "size-7";
6910
+ FontSizeValue[FontSizeValue["size-8"] = 46] = "size-8";
6911
+ FontSizeValue[FontSizeValue["size-9"] = 56] = "size-9";
6912
+ })(FontSizeValue = Bcm.FontSizeValue || (Bcm.FontSizeValue = {}));
6913
+ let FontWeight;
6914
+ (function (FontWeight) {
6915
+ FontWeight["thin"] = "thin";
6916
+ FontWeight["light"] = "light";
6917
+ FontWeight["regular"] = "regular";
6918
+ FontWeight["medium"] = "medium";
6919
+ FontWeight["bold"] = "bold";
6920
+ FontWeight["black"] = "black";
6921
+ })(FontWeight = Bcm.FontWeight || (Bcm.FontWeight = {}));
6922
+ let ColorPalette;
6923
+ (function (ColorPalette) {
6924
+ ColorPalette["default"] = "default";
6925
+ ColorPalette["black"] = "black";
6926
+ ColorPalette["white"] = "white";
6927
+ ColorPalette["prime-blue"] = "prime-blue";
6928
+ ColorPalette["prime-blue-1"] = "prime-blue-1";
6929
+ ColorPalette["prime-blue-2"] = "prime-blue-2";
6930
+ ColorPalette["prime-blue-3"] = "prime-blue-3";
6931
+ ColorPalette["prime-blue-4"] = "prime-blue-4";
6932
+ ColorPalette["prime-blue-5"] = "prime-blue-5";
6933
+ ColorPalette["prime-blue-6"] = "prime-blue-6";
6934
+ ColorPalette["prime-blue-7"] = "prime-blue-7";
6935
+ ColorPalette["prime-blue-8"] = "prime-blue-8";
6936
+ ColorPalette["prime-blue-9"] = "prime-blue-9";
6937
+ ColorPalette["prime-blue-10"] = "prime-blue-10";
6938
+ ColorPalette["grey"] = "grey";
6939
+ ColorPalette["grey-1"] = "grey-1";
6940
+ ColorPalette["grey-2"] = "grey-2";
6941
+ ColorPalette["grey-3"] = "grey-3";
6942
+ ColorPalette["grey-4"] = "grey-4";
6943
+ ColorPalette["grey-5"] = "grey-5";
6944
+ ColorPalette["grey-6"] = "grey-6";
6945
+ ColorPalette["grey-7"] = "grey-7";
6946
+ ColorPalette["grey-8"] = "grey-8";
6947
+ ColorPalette["grey-9"] = "grey-9";
6948
+ ColorPalette["grey-10"] = "grey-10";
6949
+ ColorPalette["blue"] = "blue";
6950
+ ColorPalette["blue-1"] = "blue-1";
6951
+ ColorPalette["blue-2"] = "blue-2";
6952
+ ColorPalette["blue-3"] = "blue-3";
6953
+ ColorPalette["blue-4"] = "blue-4";
6954
+ ColorPalette["blue-5"] = "blue-5";
6955
+ ColorPalette["blue-6"] = "blue-6";
6956
+ ColorPalette["blue-7"] = "blue-7";
6957
+ ColorPalette["blue-8"] = "blue-8";
6958
+ ColorPalette["blue-9"] = "blue-9";
6959
+ ColorPalette["blue-10"] = "blue-10";
6960
+ ColorPalette["warmyellow"] = "warmyellow";
6961
+ ColorPalette["warmyellow-1"] = "warmyellow-1";
6962
+ ColorPalette["warmyellow-2"] = "warmyellow-2";
6963
+ ColorPalette["warmyellow-3"] = "warmyellow-3";
6964
+ ColorPalette["warmyellow-4"] = "warmyellow-4";
6965
+ ColorPalette["warmyellow-5"] = "warmyellow-5";
6966
+ ColorPalette["warmyellow-6"] = "warmyellow-6";
6967
+ ColorPalette["warmyellow-7"] = "warmyellow-7";
6968
+ ColorPalette["warmyellow-8"] = "warmyellow-8";
6969
+ ColorPalette["warmyellow-9"] = "warmyellow-9";
6970
+ ColorPalette["warmyellow-10"] = "warmyellow-10";
6971
+ ColorPalette["yellow"] = "yellow";
6972
+ ColorPalette["yellow-1"] = "yellow-1";
6973
+ ColorPalette["yellow-2"] = "yellow-2";
6974
+ ColorPalette["yellow-3"] = "yellow-3";
6975
+ ColorPalette["yellow-4"] = "yellow-4";
6976
+ ColorPalette["yellow-5"] = "yellow-5";
6977
+ ColorPalette["yellow-6"] = "yellow-6";
6978
+ ColorPalette["yellow-7"] = "yellow-7";
6979
+ ColorPalette["yellow-8"] = "yellow-8";
6980
+ ColorPalette["yellow-9"] = "yellow-9";
6981
+ ColorPalette["yellow-10"] = "yellow-10";
6982
+ ColorPalette["limegreen"] = "limegreen";
6983
+ ColorPalette["limegreen-1"] = "limegreen-1";
6984
+ ColorPalette["limegreen-2"] = "limegreen-2";
6985
+ ColorPalette["limegreen-3"] = "limegreen-3";
6986
+ ColorPalette["limegreen-4"] = "limegreen-4";
6987
+ ColorPalette["limegreen-5"] = "limegreen-5";
6988
+ ColorPalette["limegreen-6"] = "limegreen-6";
6989
+ ColorPalette["limegreen-7"] = "limegreen-7";
6990
+ ColorPalette["limegreen-8"] = "limegreen-8";
6991
+ ColorPalette["limegreen-9"] = "limegreen-9";
6992
+ ColorPalette["limegreen-10"] = "limegreen-10";
6993
+ ColorPalette["red"] = "red";
6994
+ ColorPalette["red-1"] = "red-1";
6995
+ ColorPalette["red-2"] = "red-2";
6996
+ ColorPalette["red-3"] = "red-3";
6997
+ ColorPalette["red-4"] = "red-4";
6998
+ ColorPalette["red-5"] = "red-5";
6999
+ ColorPalette["red-6"] = "red-6";
7000
+ ColorPalette["red-7"] = "red-7";
7001
+ ColorPalette["red-8"] = "red-8";
7002
+ ColorPalette["red-9"] = "red-9";
7003
+ ColorPalette["red-10"] = "red-10";
7004
+ ColorPalette["darkorange"] = "darkorange";
7005
+ ColorPalette["darkorange-1"] = "darkorange-1";
7006
+ ColorPalette["darkorange-2"] = "darkorange-2";
7007
+ ColorPalette["darkorange-3"] = "darkorange-3";
7008
+ ColorPalette["darkorange-4"] = "darkorange-4";
7009
+ ColorPalette["darkorange-5"] = "darkorange-5";
7010
+ ColorPalette["darkorange-6"] = "darkorange-6";
7011
+ ColorPalette["darkorange-7"] = "darkorange-7";
7012
+ ColorPalette["darkorange-8"] = "darkorange-8";
7013
+ ColorPalette["darkorange-9"] = "darkorange-9";
7014
+ ColorPalette["darkorange-10"] = "darkorange-10";
7015
+ ColorPalette["orange"] = "orange";
7016
+ ColorPalette["orange-1"] = "orange-1";
7017
+ ColorPalette["orange-2"] = "orange-2";
7018
+ ColorPalette["orange-3"] = "orange-3";
7019
+ ColorPalette["orange-4"] = "orange-4";
7020
+ ColorPalette["orange-5"] = "orange-5";
7021
+ ColorPalette["orange-6"] = "orange-6";
7022
+ ColorPalette["orange-7"] = "orange-7";
7023
+ ColorPalette["orange-8"] = "orange-8";
7024
+ ColorPalette["orange-9"] = "orange-9";
7025
+ ColorPalette["orange-10"] = "orange-10";
7026
+ ColorPalette["green"] = "green";
7027
+ ColorPalette["green-1"] = "green-1";
7028
+ ColorPalette["green-2"] = "green-2";
7029
+ ColorPalette["green-3"] = "green-3";
7030
+ ColorPalette["green-4"] = "green-4";
7031
+ ColorPalette["green-5"] = "green-5";
7032
+ ColorPalette["green-6"] = "green-6";
7033
+ ColorPalette["green-7"] = "green-7";
7034
+ ColorPalette["green-8"] = "green-8";
7035
+ ColorPalette["green-9"] = "green-9";
7036
+ ColorPalette["green-10"] = "green-10";
7037
+ ColorPalette["turquosie"] = "turquosie";
7038
+ ColorPalette["turquosie-1"] = "turquosie-1";
7039
+ ColorPalette["turquosie-2"] = "turquosie-2";
7040
+ ColorPalette["turquosie-3"] = "turquosie-3";
7041
+ ColorPalette["turquosie-4"] = "turquosie-4";
7042
+ ColorPalette["turquosie-5"] = "turquosie-5";
7043
+ ColorPalette["turquosie-6"] = "turquosie-6";
7044
+ ColorPalette["turquosie-7"] = "turquosie-7";
7045
+ ColorPalette["turquosie-8"] = "turquosie-8";
7046
+ ColorPalette["turquosie-9"] = "turquosie-9";
7047
+ ColorPalette["turquosie-10"] = "turquosie-10";
7048
+ ColorPalette["cobaltblue"] = "cobaltblue";
7049
+ ColorPalette["cobaltblue-1"] = "cobaltblue-1";
7050
+ ColorPalette["cobaltblue-2"] = "cobaltblue-2";
7051
+ ColorPalette["cobaltblue-3"] = "cobaltblue-3";
7052
+ ColorPalette["cobaltblue-4"] = "cobaltblue-4";
7053
+ ColorPalette["cobaltblue-5"] = "cobaltblue-5";
7054
+ ColorPalette["cobaltblue-6"] = "cobaltblue-6";
7055
+ ColorPalette["cobaltblue-7"] = "cobaltblue-7";
7056
+ ColorPalette["cobaltblue-8"] = "cobaltblue-8";
7057
+ ColorPalette["cobaltblue-9"] = "cobaltblue-9";
7058
+ ColorPalette["cobaltblue-10"] = "cobaltblue-10";
7059
+ ColorPalette["magenta"] = "magenta";
7060
+ ColorPalette["magenta-1"] = "magenta-1";
7061
+ ColorPalette["magenta-2"] = "magenta-2";
7062
+ ColorPalette["magenta-3"] = "magenta-3";
7063
+ ColorPalette["magenta-4"] = "magenta-4";
7064
+ ColorPalette["magenta-5"] = "magenta-5";
7065
+ ColorPalette["magenta-6"] = "magenta-6";
7066
+ ColorPalette["magenta-7"] = "magenta-7";
7067
+ ColorPalette["magenta-8"] = "magenta-8";
7068
+ ColorPalette["magenta-9"] = "magenta-9";
7069
+ ColorPalette["magenta-10"] = "magenta-10";
7070
+ ColorPalette["purple"] = "purple";
7071
+ ColorPalette["purple-1"] = "purple-1";
7072
+ ColorPalette["purple-2"] = "purple-2";
7073
+ ColorPalette["purple-3"] = "purple-3";
7074
+ ColorPalette["purple-4"] = "purple-4";
7075
+ ColorPalette["purple-5"] = "purple-5";
7076
+ ColorPalette["purple-6"] = "purple-6";
7077
+ ColorPalette["purple-7"] = "purple-7";
7078
+ ColorPalette["purple-8"] = "purple-8";
7079
+ ColorPalette["purple-9"] = "purple-9";
7080
+ ColorPalette["purple-10"] = "purple-10";
7081
+ ColorPalette["bc-red"] = "bc-red";
7082
+ ColorPalette["bc-red-1"] = "bc-red-1";
7083
+ ColorPalette["bc-red-2"] = "bc-red-2";
7084
+ ColorPalette["bc-red-3"] = "bc-red-3";
7085
+ ColorPalette["bc-red-4"] = "bc-red-4";
7086
+ ColorPalette["bc-red-5"] = "bc-red-5";
7087
+ ColorPalette["bc-red-6"] = "bc-red-6";
7088
+ ColorPalette["bc-red-7"] = "bc-red-7";
7089
+ ColorPalette["bc-red-8"] = "bc-red-8";
7090
+ ColorPalette["bc-red-9"] = "bc-red-9";
7091
+ ColorPalette["bc-blue"] = "bc-blue";
7092
+ ColorPalette["bc-blue-1"] = "bc-blue-1";
7093
+ ColorPalette["bc-blue-2"] = "bc-blue-2";
7094
+ ColorPalette["bc-blue-3"] = "bc-blue-3";
7095
+ ColorPalette["bc-blue-4"] = "bc-blue-4";
7096
+ ColorPalette["bc-blue-5"] = "bc-blue-5";
7097
+ ColorPalette["bc-blue-6"] = "bc-blue-6";
7098
+ ColorPalette["bc-blue-7"] = "bc-blue-7";
7099
+ ColorPalette["bc-blue-8"] = "bc-blue-8";
7100
+ ColorPalette["bc-blue-9"] = "bc-blue-9";
7101
+ ColorPalette["bc-green"] = "bc-green";
7102
+ ColorPalette["bc-green-1"] = "bc-green-1";
7103
+ ColorPalette["bc-green-2"] = "bc-green-2";
7104
+ ColorPalette["bc-green-3"] = "bc-green-3";
7105
+ ColorPalette["bc-green-4"] = "bc-green-4";
7106
+ ColorPalette["bc-green-5"] = "bc-green-5";
7107
+ ColorPalette["bc-green-6"] = "bc-green-6";
7108
+ ColorPalette["bc-green-7"] = "bc-green-7";
7109
+ ColorPalette["bc-green-8"] = "bc-green-8";
7110
+ ColorPalette["bc-green-9"] = "bc-green-9";
7111
+ ColorPalette["bc-orange"] = "bc-orange";
7112
+ ColorPalette["bc-orange-1"] = "bc-orange-1";
7113
+ ColorPalette["bc-orange-2"] = "bc-orange-2";
7114
+ ColorPalette["bc-orange-3"] = "bc-orange-3";
7115
+ ColorPalette["bc-orange-4"] = "bc-orange-4";
7116
+ ColorPalette["bc-orange-5"] = "bc-orange-5";
7117
+ ColorPalette["bc-orange-6"] = "bc-orange-6";
7118
+ ColorPalette["bc-orange-7"] = "bc-orange-7";
7119
+ ColorPalette["bc-orange-8"] = "bc-orange-8";
7120
+ ColorPalette["bc-orange-9"] = "bc-orange-9";
7121
+ })(ColorPalette = Bcm.ColorPalette || (Bcm.ColorPalette = {}));
7122
+ let InputType;
7123
+ (function (InputType) {
7124
+ InputType["text"] = "text";
7125
+ InputType["number"] = "number";
7126
+ InputType["email"] = "email";
7127
+ InputType["password"] = "password";
7128
+ InputType["url"] = "url";
7129
+ InputType["search"] = "search";
7130
+ InputType["tel"] = "tel";
7131
+ InputType["hidden"] = "hidden";
7132
+ })(InputType = Bcm.InputType || (Bcm.InputType = {}));
7133
+ let KeyCode;
7134
+ (function (KeyCode) {
7135
+ KeyCode[KeyCode["backspace"] = 8] = "backspace";
7136
+ KeyCode[KeyCode["tab"] = 9] = "tab";
7137
+ KeyCode[KeyCode["enter"] = 13] = "enter";
7138
+ KeyCode[KeyCode["shift"] = 16] = "shift";
7139
+ KeyCode[KeyCode["ctrl"] = 17] = "ctrl";
7140
+ KeyCode[KeyCode["alt"] = 18] = "alt";
7141
+ KeyCode[KeyCode["pause"] = 19] = "pause";
7142
+ KeyCode[KeyCode["capslock"] = 20] = "capslock";
7143
+ KeyCode[KeyCode["escape"] = 27] = "escape";
7144
+ KeyCode[KeyCode["space"] = 32] = "space";
7145
+ KeyCode[KeyCode["pageup"] = 33] = "pageup";
7146
+ KeyCode[KeyCode["pagedown"] = 34] = "pagedown";
7147
+ KeyCode[KeyCode["end"] = 35] = "end";
7148
+ KeyCode[KeyCode["home"] = 36] = "home";
7149
+ KeyCode[KeyCode["left"] = 37] = "left";
7150
+ KeyCode[KeyCode["up"] = 38] = "up";
7151
+ KeyCode[KeyCode["right"] = 39] = "right";
7152
+ KeyCode[KeyCode["down"] = 40] = "down";
7153
+ KeyCode[KeyCode["insert"] = 45] = "insert";
7154
+ KeyCode[KeyCode["delete"] = 46] = "delete";
7155
+ KeyCode[KeyCode["f1"] = 112] = "f1";
7156
+ KeyCode[KeyCode["f2"] = 113] = "f2";
7157
+ KeyCode[KeyCode["f3"] = 114] = "f3";
7158
+ KeyCode[KeyCode["f4"] = 115] = "f4";
7159
+ KeyCode[KeyCode["f5"] = 116] = "f5";
7160
+ KeyCode[KeyCode["f6"] = 117] = "f6";
7161
+ KeyCode[KeyCode["f7"] = 118] = "f7";
7162
+ KeyCode[KeyCode["f8"] = 119] = "f8";
7163
+ KeyCode[KeyCode["f9"] = 120] = "f9";
7164
+ KeyCode[KeyCode["f10"] = 121] = "f10";
7165
+ KeyCode[KeyCode["f11"] = 122] = "f11";
7166
+ KeyCode[KeyCode["f12"] = 123] = "f12";
7167
+ KeyCode[KeyCode["numlock"] = 144] = "numlock";
7168
+ KeyCode[KeyCode["scrolllock"] = 145] = "scrolllock";
7169
+ KeyCode[KeyCode["semicolon"] = 186] = "semicolon";
7170
+ KeyCode[KeyCode["equal"] = 187] = "equal";
7171
+ KeyCode[KeyCode["comma"] = 188] = "comma";
7172
+ KeyCode[KeyCode["dash"] = 189] = "dash";
7173
+ KeyCode[KeyCode["period"] = 190] = "period";
7174
+ KeyCode[KeyCode["slash"] = 191] = "slash";
7175
+ KeyCode[KeyCode["backslash"] = 220] = "backslash";
7176
+ KeyCode[KeyCode["bracketleft"] = 219] = "bracketleft";
7177
+ KeyCode[KeyCode["bracketright"] = 221] = "bracketright";
7178
+ KeyCode[KeyCode["quote"] = 222] = "quote";
7179
+ KeyCode[KeyCode["backtick"] = 192] = "backtick";
7180
+ KeyCode[KeyCode["a"] = 65] = "a";
7181
+ })(KeyCode = Bcm.KeyCode || (Bcm.KeyCode = {}));
7182
+ Bcm.FormErrorMessages = {
7183
+ 'email': 'Please enter a valid email address',
7184
+ 'password': 'Please enter a valid password',
7185
+ 'url': 'Please enter a valid URL',
7186
+ 'phone': 'Please enter a valid phone number',
7187
+ 'search': 'Please enter a valid search term',
7188
+ 'number': 'Please enter a valid number',
7189
+ 'text': 'Please enter a valid text',
7190
+ 'required': 'This field is required',
7191
+ 'minlength': 'This field must be at least {0} characters long',
7192
+ 'maxlength': 'This field must be at most {0} characters long',
7193
+ 'min': 'This field must be at least {0}',
7194
+ 'max': 'This field must be at most {0}',
7195
+ 'between': 'This field must be between {0} and {1}',
7196
+ 'pattern': 'This field is invalid',
7197
+ 'date': 'Please enter a valid date',
7198
+ 'time': 'Please enter a valid time',
7199
+ 'datetime': 'Please enter a valid date and time',
7200
+ 'datetime-local': 'Please enter a valid date and time',
7201
+ 'month': 'Please enter a valid month',
7202
+ 'week': 'Please enter a valid week',
7203
+ 'color': 'Please enter a valid color',
7204
+ 'file': 'Please enter a valid file',
7205
+ 'range': 'Please enter a valid range',
7206
+ 'radio': 'Please select a valid option',
7207
+ 'checkbox': 'Please select a valid option',
7208
+ 'select': 'Please select a valid option',
7209
+ 'multiple': 'Please select a valid option',
7210
+ };
7211
+ let IndeterminateType;
7212
+ (function (IndeterminateType) {
7213
+ IndeterminateType["uncheck"] = "uncheck";
7214
+ IndeterminateType["indeterminate"] = "indeterminate";
7215
+ IndeterminateType["determinate"] = "determinate"; // true
7216
+ })(IndeterminateType = Bcm.IndeterminateType || (Bcm.IndeterminateType = {}));
7217
+ let Placement;
7218
+ (function (Placement) {
7219
+ Placement["top"] = "top";
7220
+ Placement["top-start"] = "top-start";
7221
+ Placement["top-end"] = "top-end";
7222
+ Placement["bottom"] = "bottom";
7223
+ Placement["bottom-start"] = "bottom-start";
7224
+ Placement["bottom-end"] = "bottom-end";
7225
+ Placement["left"] = "left";
7226
+ Placement["left-start"] = "left-start";
7227
+ Placement["left-end"] = "left-end";
7228
+ Placement["right"] = "right";
7229
+ Placement["right-start"] = "right-start";
7230
+ Placement["right-end"] = "right-end";
7231
+ })(Placement = Bcm.Placement || (Bcm.Placement = {}));
7232
+ let TriggerType;
7233
+ (function (TriggerType) {
7234
+ TriggerType["hover"] = "hover";
7235
+ TriggerType["click"] = "click";
7236
+ TriggerType["focus"] = "focus";
7237
+ })(TriggerType = Bcm.TriggerType || (Bcm.TriggerType = {}));
7238
+ })(Bcm || (Bcm = {}));
7239
+ const Bcm$1 = Bcm;
7240
+
7241
+ class StringHelper {
7242
+ }
7243
+ StringHelper.lowercase = (str) => str.toLowerCase();
7244
+ StringHelper.uppercase = (str) => str.toUpperCase();
7245
+ StringHelper.capitalize = (str) => str.charAt(0).toUpperCase() + str.slice(1);
7246
+ StringHelper.camelCase = (str) => str.replace(/\s(.)/g, function ($1) { return $1.toUpperCase(); }).replace(/\s/g, '');
7247
+ StringHelper.kebabCase = (str) => str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
7248
+ StringHelper.snakeCase = (str) => str.replace(/([a-z])([A-Z])/g, '$1_$2').toLowerCase();
7249
+ StringHelper.titleCase = (str) => str.replace(/\w\S*/g, function (txt) { return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(); });
7250
+ StringHelper.trim = (str) => str.trim();
7251
+ StringHelper.trimLeft = (str) => str.trimLeft();
7252
+ StringHelper.trimRight = (str) => str.trimRight();
7253
+ StringHelper.trimAll = (str) => str.trim().replace(/\s+/g, ' ');
7254
+ StringHelper.replace = (str, search, replace) => str.replace(search, replace);
7255
+ StringHelper.remove = (str, search) => str.replace(search, '');
7256
+ StringHelper.isNullOrEmpty = (str) => str === null || str === undefined || str === '';
7257
+ StringHelper.localizationMessage = (str, args) => str.replace(/{(\d+)}/g, (match, number) => typeof args[number] != 'undefined' ? args[number] : match);
7258
+ StringHelper.getMessage = (type, args) => StringHelper.localizationMessage(Bcm$1.FormErrorMessages[type], args);
7259
+ StringHelper.split = (str, separator) => str.split(separator);
7260
+ StringHelper.textContains = (str, search) => str.indexOf(search) !== -1;
7261
+
7262
+ const SlotTemplate = ({ value, className, name }) => {
7263
+ return StringHelper.isNullOrEmpty(value) ? h("span", { class: className },
7264
+ h("slot", Object.assign({}, (name && { name: name })))) : h("span", { class: className }, value);
7265
+ };
7266
+
7267
+ const LabelTemplate = ({ required, value, size, form, htmlFor, type }) => {
7268
+ size = size || Bcm$1.FontSize['size-1'];
7269
+ type = type || Bcm$1.Status.default;
7270
+ const labelClasses = classnames('bcm-label__text', size, {
7271
+ 'bcm-label__text-error': type === Bcm$1.Status.error,
7272
+ });
7273
+ return (h("label", { form: form, htmlFor: htmlFor, class: labelClasses },
7274
+ " ",
7275
+ h(SlotTemplate, { value: value }),
7276
+ " ",
7277
+ required && ('*')));
7278
+ };
7279
+
7280
+ const labelCss = "@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}.bcm-label{display:flex;align-items:center;grid-gap:2px}.bcm-label__text{display:inline-block;color:var(--bcm-color-grey-9);margin-bottom:4px}.bcm-label__text-error{color:var(--bcm-color-red-6)}";
7281
+
7282
+ const BcmLabel = class {
7283
+ constructor(hostRef) {
7284
+ registerInstance(this, hostRef);
7285
+ /** Props **/
7286
+ this._id = Generate.UID();
7287
+ this.required = false;
7288
+ this.size = Bcm$1.FontSize['size-1'];
7289
+ this.hidden = false;
7290
+ this.type = Bcm$1.Status.default;
7291
+ }
7292
+ render() {
7293
+ const { required, value, size, form, htmlFor, hidden, type, tooltip } = this;
7294
+ const hostClasses = classnames('bcm-label', { hidden });
7295
+ const Label = (h(LabelTemplate, { form: form, htmlFor: htmlFor, value: value, size: size, type: type, required: required }));
7296
+ return (h(Host, null, h("div", { class: hostClasses }, Label, tooltip && (h("bcm-tooltip", { message: tooltip, placement: 'top', trigger: 'hover' }, h("bcm-icon", { color: "grey-8", icon: "question-circle", type: "fill" }))))));
7297
+ }
7298
+ get el() { return getElement(this); }
7299
+ };
7300
+ BcmLabel.style = labelCss;
7301
+
7302
+ const switchCss = "@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}:host{display:inline-block;margin:0 0 8px 0}:host(.hidden){display:none}*{box-sizing:border-box}.wrapper{display:inline-flex;padding-top:0px;padding-bottom:5px}.wrapper .active-text{color:var(--bcm-color-prime-blue-6);margin-left:4px}.wrapper .inactive-text{color:var(--bcm-color-grey-6);margin-right:4px}.container{display:flex;justify-content:space-between;align-items:center;border-radius:16px;background-color:var(--bcm-color-grey-6);position:relative}.container .handle{padding:1px;position:absolute;background-color:var(--bcm-color-grey-1);display:inline-flex;align-items:center;justify-content:center;border-radius:16px;transition:all 0.2s ease-in-out;box-shadow:0px 2px 2px rgba(0, 0, 0, 0.1), 0px 3px 1px rgba(0, 0, 0, 0.05), 0px 1px 5px rgba(0, 0, 0, 0.1)}.container .icon-active{opacity:0}.container .icon-inactive{opacity:1}.container.small{width:28px;min-width:28px;height:16px;padding:4px}.container.small .handle{width:12px;height:12px;left:4px}.container.small.switch-checked .handle{left:12px}.container.small:active:not(.disabled) .handle{width:16px}.container.small:active.switch-checked:not(.disabled) .handle{left:8px}.container.small .spinner{box-sizing:border-box;display:inline-flex;width:9px;height:9px;border-radius:50%;border:1px solid var(--bcm-color-grey-1);border-top-color:var(--bcm-color-grey-6);animation:spinner 1.5s linear infinite}.container.medium{width:44px;min-width:44px;height:22px;padding:4px}.container.medium .handle{width:16px;height:16px;left:4px}.container.medium.switch-checked .handle{left:24px}.container.medium:active:not(.disabled) .handle{width:22px}.container.medium:active.switch-checked:not(.disabled) .handle{left:18px}.container.medium .spinner{box-sizing:border-box;display:inline-flex;width:13px;height:13px;border-radius:50%;border:1px solid var(--bcm-color-grey-1);border-top-color:var(--bcm-color-grey-6);animation:spinner 1.5s linear infinite}.container.switch-checked{background-color:var(--bcm-color-prime-blue-6)}.container.switch-checked .icon-active{color:var(--bcm-color-grey-1);opacity:1}.container.switch-checked .icon-inactive{opacity:0}.container.switch-checked .spinner{border-top-color:var(--bcm-color-prime-blue-6)}.wrapper.disabled{opacity:40%;cursor:not-allowed}@keyframes spinner{to{transform:rotate(360deg)}}input[type=checkbox]{position:absolute;width:0;height:0;opacity:0}.label{display:flex;flex-direction:column;color:var(--bcm-color-grey-9);padding-right:4px;margin-right:8px;margin-bottom:8px}.caption-area{min-height:20px}.input-caption{display:block}:host(.error) .label{color:var(--bcm-color-red-6) !important}.caption-default{color:#8C8C8C}.caption-primary{color:#4293CF}.caption-success{color:#52C41A}.caption-warning{color:#FA8C16}.caption-error{color:#F5222D}";
7303
+
7304
+ const BcmSwitch = class {
7305
+ constructor(hostRef) {
7306
+ registerInstance(this, hostRef);
7307
+ this.change = createEvent(this, "bcm-change", 7);
7308
+ this.focus = createEvent(this, "bcm-focus", 7);
7309
+ this.blur = createEvent(this, "bcm-blur", 7);
7310
+ this.checked = false;
7311
+ this.size = 'medium';
7312
+ this.pending = false;
7313
+ this.disabled = false;
7314
+ this.hidden = false;
7315
+ this.value = '';
7316
+ this.label = null;
7317
+ this.required = false;
7318
+ this.noCaption = false;
7319
+ this.captionType = 'default';
7320
+ }
7321
+ connectedCallback() {
7322
+ this.captionCache = this.caption;
7323
+ this.captionTypeCache = this.captionType;
7324
+ }
7325
+ handleClick() {
7326
+ this.checked = this.input.checked;
7327
+ this.value = this.checked;
7328
+ this.change.emit(this.checked);
7329
+ }
7330
+ componentDidLoad() {
7331
+ this.value = this.checked;
7332
+ }
7333
+ handleFocus() {
7334
+ this.focus.emit();
7335
+ }
7336
+ handleBlur() {
7337
+ this.blur.emit();
7338
+ }
7339
+ componentWillRender() {
7340
+ if (this.pending) {
7341
+ this.disabled = true;
7342
+ }
7343
+ }
7344
+ async setClear() {
7345
+ if (this.input.checked == true) {
7346
+ this.input.checked = false;
7347
+ this.checked = this.input.checked;
7348
+ this.value = this.checked;
7349
+ this.change.emit(this.checked);
7350
+ }
7351
+ }
7352
+ async resetCaption() {
7353
+ this.caption = this.captionCache;
7354
+ this.captionType = this.captionTypeCache;
7355
+ this.captionError = null;
7356
+ }
7357
+ render() {
7358
+ const { checked, size, activeIcon, inactiveIcon, activeText, inactiveText, pending, disabled, label, required, noCaption, captionType, captionError, caption } = this;
7359
+ const classes = classnames('container', size, {
7360
+ 'switch-checked': checked,
7361
+ 'disabled': disabled
7362
+ });
7363
+ const wrapperClass = classnames('wrapper', {
7364
+ 'checked': checked,
7365
+ 'disabled': disabled
7366
+ });
7367
+ const captionClasses = classnames('size-1', 'input-caption', 'caption-' + captionType);
7368
+ const isPermitted = (condition) => {
7369
+ return (condition && size === 'medium');
7370
+ };
7371
+ const isMedium = size === 'medium';
7372
+ const hostClasses = classnames('bcm-switch', this.hidden ? 'hidden' : null);
7373
+ return (h(Host, { class: hostClasses }, label && h("div", null, h("bcm-label", { tooltip: this.tooltip, type: captionType, value: label, required: required })), h("label", { class: wrapperClass }, isPermitted(inactiveText) && h("span", { class: "inactive-text size-1" }, inactiveText), h("div", { class: classes }, isMedium && h("bcm-icon", { icon: activeIcon, size: 14, class: "icon-active" }), h("span", { class: "handle" }, pending && h("span", { class: "spinner" })), isMedium && h("bcm-icon", { icon: inactiveIcon, size: 14, class: "icon-inactive" })), h("input", { onClick: () => this.handleClick(), onFocus: () => this.handleFocus(), onBlur: () => this.handleBlur(), ref: el => (this.input = el), checked: checked, type: "checkbox", class: "switch", disabled: disabled }), isPermitted(activeText) && h("span", { class: "active-text size-1" }, activeText)), !noCaption && (h("div", { class: "caption-area" }, captionType == "error"
7374
+ ? h("span", { class: captionClasses }, " ", captionError, " ")
7375
+ : caption && h("span", { class: captionClasses }, " ", caption, " ")))));
7376
+ }
7377
+ };
7378
+ BcmSwitch.style = switchCss;
7379
+
6342
7380
  const textareaCss = "@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}.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}:host{display:inline-block;width:100%;margin:0 0 8px 0}:host(.hidden){display:none}.textarea-wrapper{width:256px}.textarea-wrapper.full-width{width:100%}.textarea-wrapper:hover .clear-button{opacity:1}.textarea-container{position:relative;width:100%;border:1px solid var(--bcm-color-grey-5);border-radius:2px}.textarea-container.empty .clear-button{display:none}.textarea-container.focused:not(.disabled){outline:none;border-color:var(--bcm-color-prime-blue-5);box-shadow:0px 0px 4px var(--bcm-color-prime-blue-6)}.textarea-container:hover:not(:disabled){border-color:var(--bcm-color-prime-blue-6)}.textarea-container textarea{resize:vertical;display:flex;flex:1 1 auto;align-items:center;color:var(--bcm-color-grey-8);width:100%;background-color:var(--bcm-color-grey-1);border:none;border-radius:2px;box-shadow:none;font-family:\"Roboto\", sans-serif;-webkit-appearance:none;box-sizing:border-box}.textarea-container textarea::-webkit-search-decoration,.textarea-container textarea::-webkit-search-cancel-button,.textarea-container textarea::-webkit-search-results-button,.textarea-container textarea::-webkit-search-results-decoration{-webkit-appearance:none}.textarea-container textarea::placeholder{color:var(--bcm-color-grey-6);user-select:none}.textarea-container textarea:focus:not(:disabled){outline:none;border-color:none;box-shadow:none}.textarea-container textarea:hover:not(:disabled){border-color:none}.textarea-container textarea:disabled{background-color:var(--bcm-color-grey-3);cursor:not-allowed}.textarea-container textarea.clearable{padding-right:32px}.resize-none textarea{resize:none}.resize-vertical textarea{resize:vertical}.resize-auto textarea{height:auto;resize:none}.label{display:flex;flex-direction:column;color:var(--bcm-color-grey-9);margin-bottom:4px}.caption-area{min-height:20px;display:flex;flex-direction:row;justify-content:space-between}.input-caption{display:block}.clear-button{position:absolute;opacity:0;right:10px;top:7px;display:inline-flex;align-items:center;border:none;background:none;padding:0;cursor:pointer}.clear-button:focus{outline:none}.textarea-footer{display:flex;justify-content:space-between;margin-bottom:8px;min-height:20px}.textarea-footer .count{color:var(--bcm-color-grey-7);margin-left:4px}.textarea-footer .count:only-child{margin-left:auto}.size-large{padding:7px 12px;min-height:38px}.size-large~.clear-button{top:12px}.size-medium{padding:4px 12px;min-height:30px}.size-medium~.clear-button{top:7px}.size-small{padding:0px 12px;min-height:20px}.size-small~.clear-button{top:2px}.caption-default{color:#8C8C8C}.caption-primary{color:#4293CF}.caption-success{color:#52C41A}.caption-warning{color:#FA8C16}.caption-error{color:#F5222D}.error .label{color:var(--bcm-color-red-6) !important}.error .textarea-container{border:1px solid var(--bcm-color-red-6) !important}";
6343
7381
 
6344
7382
  let id$1 = 0;
@@ -6458,7 +7496,7 @@ const BcmTextarea = class {
6458
7496
  'clearable': clearable
6459
7497
  });
6460
7498
  const hostClasses = classnames(this.hidden ? 'hidden' : null);
6461
- return (h(Host, { class: hostClasses }, h("div", { class: wrapperClasses }, label && h("label", { class: "label size-1", htmlFor: this.textareaId }, " ", label, " ", required && ('*'), " "), h("div", { class: contanerClasses }, h("textarea", { ref: el => (this.textarea = el), onInput: this.handleInput, onFocus: this.handleFocus, onChange: this.handleChange, onBlur: this.handleBlur, class: textareaClasses, id: this.textareaId, value: value, rows: rows, disabled: disabled, maxlength: maxLength, placeholder: placeholder }), clearable && (h("button", { class: "clear-button", onClick: this.handleClear }, h("bcm-icon", { icon: "close-circle", type: "fill", size: 18, color: "grey-7" })))), !noCaption || maxLength ? (h("div", { class: "caption-area" }, h("span", null, captionType == "error"
7499
+ return (h(Host, { class: hostClasses }, h("div", { class: wrapperClasses }, label && h("div", null, h("bcm-label", { tooltip: this.tooltip, type: captionType, value: label, required: required, htmlFor: this.textareaId })), h("div", { class: contanerClasses }, h("textarea", { ref: el => (this.textarea = el), onInput: this.handleInput, onFocus: this.handleFocus, onChange: this.handleChange, onBlur: this.handleBlur, class: textareaClasses, id: this.textareaId, value: value, rows: rows, disabled: disabled, maxlength: maxLength, placeholder: placeholder }), clearable && (h("button", { class: "clear-button", onClick: this.handleClear }, h("bcm-icon", { icon: "close-circle", type: "fill", size: 18, color: "grey-7" })))), !noCaption || maxLength ? (h("div", { class: "caption-area" }, h("span", null, captionType == "error"
6462
7500
  ? h("span", { class: captionClasses }, " ", captionError, " ")
6463
7501
  : caption && h("span", { class: captionClasses }, " ", caption, " ")), maxLength && h("span", { class: countClasses }, " ", `${valueLength}/${maxLength}`, " "))) : null)));
6464
7502
  }
@@ -6469,4 +7507,164 @@ const BcmTextarea = class {
6469
7507
  };
6470
7508
  BcmTextarea.style = textareaCss;
6471
7509
 
6472
- export { BcmButton as bcm_button, BcmForm as bcm_form, BcmIcon as bcm_icon, BcmInput as bcm_input, BcmTextarea as bcm_textarea };
7510
+ const tooltipCss = "@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}:host{display:inline-flex}:host(.hidden){display:none}:host(:focus){outline:none}.tooltip{position:relative;}.tooltip .box{position:absolute;display:none;box-sizing:border-box;background-color:#262626;border:1px solid #262626;border-radius:2px;z-index:10700;width:max-content;padding:4px 8px;color:var(--bcm-color-grey-1)}.tooltip::after{content:\"\";position:absolute;display:none;border:6px solid;z-index:10700;pointer-events:none}.tooltip.open .box,.tooltip.open::after{display:block}.tooltip.top .box{bottom:100%;margin-bottom:8px}.tooltip.top::after{bottom:100%;margin-bottom:-4px;border-color:#262626 transparent transparent transparent}.tooltip.bottom .box{top:100%;margin-top:8px}.tooltip.bottom::after{top:100%;margin-top:-4px;border-color:transparent transparent #262626 transparent}.tooltip.left .box{right:100%;margin-right:8px}.tooltip.left::after{right:100%;margin-right:-4px;border-color:transparent transparent transparent #262626}.tooltip.right .box{left:100%;margin-left:8px}.tooltip.right::after{left:100%;margin-left:-4px;border-color:transparent #262626 transparent transparent}.tooltip.top.center .box,.tooltip.bottom.center .box{left:50%;transform:translateX(-50%)}.tooltip.top.center::after,.tooltip.bottom.center::after{left:50%;transform:translateX(-50%)}.tooltip.top.start .box,.tooltip.bottom.start .box{left:0}.tooltip.top.start::after,.tooltip.bottom.start::after{left:8px}.tooltip.top.end .box,.tooltip.bottom.end .box{right:0}.tooltip.top.end::after,.tooltip.bottom.end::after{right:8px}.tooltip.left.center .box,.tooltip.right.center .box{top:50%;transform:translateY(-50%)}.tooltip.left.center::after,.tooltip.right.center::after{top:50%;transform:translateY(-50%)}.tooltip.left.start .box,.tooltip.right.start .box{top:0}.tooltip.left.start::after,.tooltip.right.start::after{top:4px}.tooltip.left.end .box,.tooltip.right.end .box{bottom:0}.tooltip.left.end::after,.tooltip.right.end::after{bottom:4px}";
7511
+
7512
+ const BcmTooltip = class {
7513
+ constructor(hostRef) {
7514
+ registerInstance(this, hostRef);
7515
+ this.onShow = createEvent(this, "bcm-show", 7);
7516
+ this.onHide = createEvent(this, "bcm-hide", 7);
7517
+ this.placement = 'top';
7518
+ this.trigger = 'hover';
7519
+ this.hidden = false;
7520
+ this._internal_id = (Math.random() * 4).toString(16).replace('.', '');
7521
+ }
7522
+ async show() {
7523
+ // Prevent subsequent calls
7524
+ if (this.open) {
7525
+ return;
7526
+ }
7527
+ this.open = true;
7528
+ this.onShow.emit();
7529
+ }
7530
+ async hide() {
7531
+ // Prevent subsequent calls
7532
+ if (!this.open) {
7533
+ return;
7534
+ }
7535
+ this.open = false;
7536
+ this.onHide.emit();
7537
+ }
7538
+ handleClickOutside(e) {
7539
+ if (!this.host.contains(e.target)) {
7540
+ if (this.open) {
7541
+ this.open = false;
7542
+ }
7543
+ }
7544
+ }
7545
+ async handleOpen() {
7546
+ await this.createElement();
7547
+ var tooltipBox = document.getElementById("box" + this._internal_id).shadowRoot.querySelector(".tooltip-box");
7548
+ if (tooltipBox && tooltipBox.querySelector(".box")) {
7549
+ var tooltipBoxIn = tooltipBox.querySelector(".box");
7550
+ popoverPlacement(tooltipBoxIn, this.host, this.placement, (place) => this.placement = place);
7551
+ tooltipBox.classList.toggle("open");
7552
+ }
7553
+ }
7554
+ async createElement() {
7555
+ var target = this.host.getBoundingClientRect();
7556
+ var placementString = String([...this.getPlacement()]).replace(',', ' ');
7557
+ var element;
7558
+ if (!document.getElementById("box" + this._internal_id)) {
7559
+ element = document.createElement("bcm-tooltip-box");
7560
+ element.setAttribute("id", "box" + this._internal_id);
7561
+ }
7562
+ else {
7563
+ element = document.getElementById("box" + this._internal_id);
7564
+ }
7565
+ element.setAttribute("message", this.message);
7566
+ // element.setAttribute("placement", placementString)
7567
+ element.style.position = "absolute";
7568
+ // element.style.top = target.top + "px"
7569
+ // element.style.left = (target.left + (target.width / 2)) + "px"
7570
+ element.setAttribute("placement", placementString);
7571
+ // element.style.zIndex = "999999999"
7572
+ document.body.appendChild(element);
7573
+ await delay(50);
7574
+ var tooltipBox = document.getElementById("box" + this._internal_id).shadowRoot.querySelector(".tooltip-box");
7575
+ if (tooltipBox && tooltipBox.querySelector(".box")) {
7576
+ var tooltipBoxIn = tooltipBox.querySelector(".box");
7577
+ popoverPlacement(tooltipBoxIn, this.host, this.placement, (place) => this.placement = place);
7578
+ }
7579
+ element.style.top = popoverBoxPlacement(this.placement, target)[0] + "px";
7580
+ element.style.left = popoverBoxPlacement(this.placement, target)[1] + "px";
7581
+ }
7582
+ hasTrigger(trigger) {
7583
+ return this.trigger === trigger;
7584
+ }
7585
+ getPlacement() {
7586
+ const placements = this.placement.split('-');
7587
+ if (placements.length === 1) {
7588
+ placements.push('center');
7589
+ }
7590
+ return placements;
7591
+ }
7592
+ /*
7593
+ Trigger Functions
7594
+ */
7595
+ handleMouseOver() {
7596
+ if (this.hasTrigger('hover')) {
7597
+ this.show();
7598
+ }
7599
+ }
7600
+ handleMouseOut() {
7601
+ if (this.hasTrigger('hover')) {
7602
+ this.hide();
7603
+ }
7604
+ }
7605
+ handleClick() {
7606
+ if (this.hasTrigger('click')) {
7607
+ this.open ? this.hide() : this.show();
7608
+ }
7609
+ }
7610
+ handleFocus() {
7611
+ if (this.hasTrigger('focus')) {
7612
+ this.show();
7613
+ }
7614
+ }
7615
+ handleBlur() {
7616
+ if (this.hasTrigger('focus')) {
7617
+ this.hide();
7618
+ }
7619
+ }
7620
+ async componentDidRender() {
7621
+ await this.createElement();
7622
+ var tooltipBox = document.getElementById("box" + this._internal_id).shadowRoot.querySelector(".tooltip-box");
7623
+ if (tooltipBox && tooltipBox.querySelector(".box")) {
7624
+ var tooltipBoxIn = tooltipBox.querySelector(".box");
7625
+ popoverPlacement(tooltipBoxIn, this.host, this.placement, (place) => this.placement = place);
7626
+ }
7627
+ }
7628
+ render() {
7629
+ const classes = classnames('tooltip', ...this.getPlacement(), {
7630
+ // 'open': this.open
7631
+ });
7632
+ const hostClasses = classnames(this.hidden ? 'hidden' : null);
7633
+ return (h(Host, { class: hostClasses, onClick: () => this.handleClick(), onMouseOver: () => this.handleMouseOver(), onMouseOut: () => this.handleMouseOut(), onFocus: () => this.handleFocus(), onBlur: () => this.handleBlur(), tabindex: 0 }, h("span", { class: classes }, h("span", { class: "box size-2" }, this.message), h("slot", null))));
7634
+ }
7635
+ get host() { return getElement(this); }
7636
+ static get watchers() { return {
7637
+ "open": ["handleOpen"]
7638
+ }; }
7639
+ };
7640
+ BcmTooltip.style = tooltipCss;
7641
+
7642
+ const tooltipBoxCss = "@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}:host{display:inline-flex}:host(.hidden){display:none}:host(:focus){outline:none}.tooltip-box{position:relative;}.tooltip-box .box{position:absolute;display:none;box-sizing:border-box;background-color:#262626;border:1px solid #262626;border-radius:2px;z-index:10700;width:max-content;padding:4px 8px;color:var(--bcm-color-grey-1)}.tooltip-box::after{content:\"\";position:absolute;display:none;border:6px solid;z-index:10700;pointer-events:none}.tooltip-box.open .box,.tooltip-box.open::after{display:block}.tooltip-box.top .box{bottom:100%;margin-bottom:8px}.tooltip-box.top::after{bottom:100%;margin-bottom:-4px;border-color:#262626 transparent transparent transparent}.tooltip-box.bottom .box{top:100%;margin-top:8px}.tooltip-box.bottom::after{top:100%;margin-top:-4px;border-color:transparent transparent #262626 transparent}.tooltip-box.left .box{right:100%;margin-right:8px}.tooltip-box.left::after{right:100%;margin-right:-4px;border-color:transparent transparent transparent #262626}.tooltip-box.right .box{left:100%;margin-left:8px}.tooltip-box.right::after{left:100%;margin-left:-4px;border-color:transparent #262626 transparent transparent}.tooltip-box.top.center .box,.tooltip-box.bottom.center .box{left:50%;transform:translateX(-50%)}.tooltip-box.top.center::after,.tooltip-box.bottom.center::after{left:50%;transform:translateX(-50%)}.tooltip-box.top.start .box,.tooltip-box.bottom.start .box{left:0}.tooltip-box.top.start::after,.tooltip-box.bottom.start::after{left:8px}.tooltip-box.top.end .box,.tooltip-box.bottom.end .box{right:0}.tooltip-box.top.end::after,.tooltip-box.bottom.end::after{right:8px}.tooltip-box.left.center .box,.tooltip-box.right.center .box{top:50%;transform:translateY(-50%)}.tooltip-box.left.center::after,.tooltip-box.right.center::after{top:50%;transform:translateY(-50%)}.tooltip-box.left.start .box,.tooltip-box.right.start .box{top:0}.tooltip-box.left.start::after,.tooltip-box.right.start::after{top:4px}.tooltip-box.left.end .box,.tooltip-box.right.end .box{bottom:0}.tooltip-box.left.end::after,.tooltip-box.right.end::after{bottom:4px}.tooltip-box a{color:var(--bcm-color-grey-1)}";
7643
+
7644
+ const BcmTooltipBox = class {
7645
+ constructor(hostRef) {
7646
+ registerInstance(this, hostRef);
7647
+ this.hidden = false;
7648
+ }
7649
+ connectedCallback() { }
7650
+ disconnectedCallback() { }
7651
+ componentWillLoad() { }
7652
+ componentDidLoad() { }
7653
+ componentWillRender() { }
7654
+ componentDidRender() { }
7655
+ componentWillUpdate() { }
7656
+ componentDidUpdate() { }
7657
+ async openBox(open) {
7658
+ this.open = open;
7659
+ }
7660
+ render() {
7661
+ const classes = classnames('tooltip-box', this.open, this.placement);
7662
+ const boxClasses = classnames('box');
7663
+ const hostClasses = classnames(this.hidden ? 'hidden' : null);
7664
+ return (h(Host, { class: hostClasses }, h("div", { class: classes }, h("div", { class: boxClasses, innerHTML: this.message }))));
7665
+ }
7666
+ get el() { return getElement(this); }
7667
+ };
7668
+ BcmTooltipBox.style = tooltipBoxCss;
7669
+
7670
+ export { BcmButton as bcm_button, BcmCheckbox as bcm_checkbox, BcmCheckboxGroup as bcm_checkbox_group, BcmForm as bcm_form, BcmIcon as bcm_icon, BcmInput as bcm_input, BcmLabel as bcm_label, BcmSwitch as bcm_switch, BcmTextarea as bcm_textarea, BcmTooltip as bcm_tooltip, BcmTooltipBox as bcm_tooltip_box };