@db-ux/wc-core-components 2.1.0 → 2.1.2

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 (155) hide show
  1. package/dist/cjs/db-button.cjs.entry.js +1 -2
  2. package/dist/cjs/db-button.cjs.entry.js.map +1 -1
  3. package/dist/cjs/db-button.entry.cjs.js.map +1 -1
  4. package/dist/cjs/db-card.cjs.entry.js +2 -3
  5. package/dist/cjs/db-card.cjs.entry.js.map +1 -1
  6. package/dist/cjs/db-card.entry.cjs.js.map +1 -1
  7. package/dist/cjs/db-checkbox.cjs.entry.js +2 -5
  8. package/dist/cjs/db-checkbox.cjs.entry.js.map +1 -1
  9. package/dist/cjs/db-checkbox.entry.cjs.js.map +1 -1
  10. package/dist/cjs/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.cjs.js.map +1 -1
  11. package/dist/cjs/db-custom-select-dropdown_5.cjs.entry.js +2 -6
  12. package/dist/cjs/db-custom-select-dropdown_5.cjs.entry.js.map +1 -1
  13. package/dist/cjs/db-drawer.cjs.entry.js +8 -5
  14. package/dist/cjs/db-drawer.cjs.entry.js.map +1 -1
  15. package/dist/cjs/db-drawer.entry.cjs.js.map +1 -1
  16. package/dist/cjs/db-header.cjs.entry.js +6 -3
  17. package/dist/cjs/db-header.cjs.entry.js.map +1 -1
  18. package/dist/cjs/db-header.entry.cjs.js.map +1 -1
  19. package/dist/cjs/db-link.cjs.entry.js +1 -2
  20. package/dist/cjs/db-link.cjs.entry.js.map +1 -1
  21. package/dist/cjs/db-link.entry.cjs.js.map +1 -1
  22. package/dist/cjs/db-radio.cjs.entry.js +1 -4
  23. package/dist/cjs/db-radio.cjs.entry.js.map +1 -1
  24. package/dist/cjs/db-radio.entry.cjs.js.map +1 -1
  25. package/dist/cjs/db-select.cjs.entry.js +4 -9
  26. package/dist/cjs/db-select.cjs.entry.js.map +1 -1
  27. package/dist/cjs/db-select.entry.cjs.js.map +1 -1
  28. package/dist/cjs/db-switch.cjs.entry.js +1 -4
  29. package/dist/cjs/db-switch.cjs.entry.js.map +1 -1
  30. package/dist/cjs/db-switch.entry.cjs.js.map +1 -1
  31. package/dist/cjs/db-tabs.cjs.entry.js +6 -4
  32. package/dist/cjs/db-tabs.cjs.entry.js.map +1 -1
  33. package/dist/cjs/db-tabs.entry.cjs.js.map +1 -1
  34. package/dist/cjs/db-textarea.cjs.entry.js +2 -6
  35. package/dist/cjs/db-textarea.cjs.entry.js.map +1 -1
  36. package/dist/cjs/db-textarea.entry.cjs.js.map +1 -1
  37. package/dist/cjs/index.cjs.js.map +1 -1
  38. package/dist/collection/components/button/button.js +1 -2
  39. package/dist/collection/components/button/button.js.map +1 -1
  40. package/dist/collection/components/card/card.js +2 -3
  41. package/dist/collection/components/card/card.js.map +1 -1
  42. package/dist/collection/components/checkbox/checkbox.js +2 -5
  43. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  44. package/dist/collection/components/drawer/drawer.js +8 -5
  45. package/dist/collection/components/drawer/drawer.js.map +1 -1
  46. package/dist/collection/components/header/header.js +6 -3
  47. package/dist/collection/components/header/header.js.map +1 -1
  48. package/dist/collection/components/input/input.js +2 -6
  49. package/dist/collection/components/input/input.js.map +1 -1
  50. package/dist/collection/components/link/link.js +1 -2
  51. package/dist/collection/components/link/link.js.map +1 -1
  52. package/dist/collection/components/radio/radio.js +1 -4
  53. package/dist/collection/components/radio/radio.js.map +1 -1
  54. package/dist/collection/components/select/select.js +4 -9
  55. package/dist/collection/components/select/select.js.map +1 -1
  56. package/dist/collection/components/switch/switch.js +1 -4
  57. package/dist/collection/components/switch/switch.js.map +1 -1
  58. package/dist/collection/components/tabs/tabs.js +6 -4
  59. package/dist/collection/components/tabs/tabs.js.map +1 -1
  60. package/dist/collection/components/textarea/textarea.js +2 -6
  61. package/dist/collection/components/textarea/textarea.js.map +1 -1
  62. package/dist/collection/shared/model.js.map +1 -1
  63. package/dist/custom-elements.json +17 -1
  64. package/dist/db-ux/db-button.entry.esm.js.map +1 -1
  65. package/dist/db-ux/db-card.entry.esm.js.map +1 -1
  66. package/dist/db-ux/db-checkbox.entry.esm.js.map +1 -1
  67. package/dist/db-ux/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.esm.js.map +1 -1
  68. package/dist/db-ux/db-drawer.entry.esm.js.map +1 -1
  69. package/dist/db-ux/db-header.entry.esm.js.map +1 -1
  70. package/dist/db-ux/db-link.entry.esm.js.map +1 -1
  71. package/dist/db-ux/db-radio.entry.esm.js.map +1 -1
  72. package/dist/db-ux/db-select.entry.esm.js.map +1 -1
  73. package/dist/db-ux/db-switch.entry.esm.js.map +1 -1
  74. package/dist/db-ux/db-tabs.entry.esm.js.map +1 -1
  75. package/dist/db-ux/db-textarea.entry.esm.js.map +1 -1
  76. package/dist/db-ux/db-ux.esm.js +1 -1
  77. package/dist/db-ux/index.esm.js.map +1 -1
  78. package/dist/db-ux/p-0740aa7d.entry.js +2 -0
  79. package/dist/db-ux/p-0740aa7d.entry.js.map +1 -0
  80. package/dist/db-ux/p-139f5623.entry.js +2 -0
  81. package/dist/db-ux/p-139f5623.entry.js.map +1 -0
  82. package/dist/db-ux/p-16a0ae38.entry.js +2 -0
  83. package/dist/db-ux/p-16a0ae38.entry.js.map +1 -0
  84. package/dist/db-ux/p-426d06bb.entry.js +2 -0
  85. package/dist/db-ux/p-426d06bb.entry.js.map +1 -0
  86. package/dist/db-ux/p-7332ab62.entry.js +2 -0
  87. package/dist/db-ux/p-7332ab62.entry.js.map +1 -0
  88. package/dist/db-ux/p-8ad4f80a.entry.js +2 -0
  89. package/dist/db-ux/p-8ad4f80a.entry.js.map +1 -0
  90. package/dist/db-ux/p-9046dcdf.entry.js +2 -0
  91. package/dist/db-ux/p-9046dcdf.entry.js.map +1 -0
  92. package/dist/db-ux/p-9c07a46d.entry.js +2 -0
  93. package/dist/db-ux/p-9c07a46d.entry.js.map +1 -0
  94. package/dist/db-ux/p-a8feda0a.entry.js +2 -0
  95. package/dist/db-ux/p-a8feda0a.entry.js.map +1 -0
  96. package/dist/db-ux/p-c088c8c8.entry.js +2 -0
  97. package/dist/db-ux/p-c088c8c8.entry.js.map +1 -0
  98. package/dist/db-ux/p-e8cabe82.entry.js +2 -0
  99. package/dist/db-ux/p-e8cabe82.entry.js.map +1 -0
  100. package/dist/db-ux/p-f83357e2.entry.js +2 -0
  101. package/dist/db-ux/p-f83357e2.entry.js.map +1 -0
  102. package/dist/esm/db-button.entry.js +1 -2
  103. package/dist/esm/db-button.entry.js.map +1 -1
  104. package/dist/esm/db-card.entry.js +2 -3
  105. package/dist/esm/db-card.entry.js.map +1 -1
  106. package/dist/esm/db-checkbox.entry.js +2 -5
  107. package/dist/esm/db-checkbox.entry.js.map +1 -1
  108. package/dist/esm/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.js.map +1 -1
  109. package/dist/esm/db-custom-select-dropdown_5.entry.js +2 -6
  110. package/dist/esm/db-custom-select-dropdown_5.entry.js.map +1 -1
  111. package/dist/esm/db-drawer.entry.js +8 -5
  112. package/dist/esm/db-drawer.entry.js.map +1 -1
  113. package/dist/esm/db-header.entry.js +6 -3
  114. package/dist/esm/db-header.entry.js.map +1 -1
  115. package/dist/esm/db-link.entry.js +1 -2
  116. package/dist/esm/db-link.entry.js.map +1 -1
  117. package/dist/esm/db-radio.entry.js +1 -4
  118. package/dist/esm/db-radio.entry.js.map +1 -1
  119. package/dist/esm/db-select.entry.js +4 -9
  120. package/dist/esm/db-select.entry.js.map +1 -1
  121. package/dist/esm/db-switch.entry.js +1 -4
  122. package/dist/esm/db-switch.entry.js.map +1 -1
  123. package/dist/esm/db-tabs.entry.js +6 -4
  124. package/dist/esm/db-tabs.entry.js.map +1 -1
  125. package/dist/esm/db-textarea.entry.js +2 -6
  126. package/dist/esm/db-textarea.entry.js.map +1 -1
  127. package/dist/esm/index.js.map +1 -1
  128. package/dist/types/components/drawer/drawer.d.ts +1 -1
  129. package/dist/types/components/header/header.d.ts +1 -1
  130. package/dist/types/shared/model.d.ts +1 -1
  131. package/package.json +3 -3
  132. package/dist/db-ux/p-2fd37535.entry.js +0 -2
  133. package/dist/db-ux/p-2fd37535.entry.js.map +0 -1
  134. package/dist/db-ux/p-3a2fd85e.entry.js +0 -2
  135. package/dist/db-ux/p-3a2fd85e.entry.js.map +0 -1
  136. package/dist/db-ux/p-3af37d5a.entry.js +0 -2
  137. package/dist/db-ux/p-3af37d5a.entry.js.map +0 -1
  138. package/dist/db-ux/p-55913451.entry.js +0 -2
  139. package/dist/db-ux/p-55913451.entry.js.map +0 -1
  140. package/dist/db-ux/p-5c2e9373.entry.js +0 -2
  141. package/dist/db-ux/p-5c2e9373.entry.js.map +0 -1
  142. package/dist/db-ux/p-7d6c27a1.entry.js +0 -2
  143. package/dist/db-ux/p-7d6c27a1.entry.js.map +0 -1
  144. package/dist/db-ux/p-b3148401.entry.js +0 -2
  145. package/dist/db-ux/p-b3148401.entry.js.map +0 -1
  146. package/dist/db-ux/p-c151750e.entry.js +0 -2
  147. package/dist/db-ux/p-c151750e.entry.js.map +0 -1
  148. package/dist/db-ux/p-c44f46be.entry.js +0 -2
  149. package/dist/db-ux/p-c44f46be.entry.js.map +0 -1
  150. package/dist/db-ux/p-e2d6197f.entry.js +0 -2
  151. package/dist/db-ux/p-e2d6197f.entry.js.map +0 -1
  152. package/dist/db-ux/p-e33ddddb.entry.js +0 -2
  153. package/dist/db-ux/p-e33ddddb.entry.js.map +0 -1
  154. package/dist/db-ux/p-eef5de38.entry.js +0 -2
  155. package/dist/db-ux/p-eef5de38.entry.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DBInput","constructor","hostRef","this","_id","undefined","_messageId","_validMessageId","_invalidMessageId","_invalidMessage","_dataListId","_descByIds","_value","_voiceOverFallback","hasValidState","_a","validMessage","validation","handleValidation","_ref","validity","valid","invalidMessage","_b","validationMessage","DEFAULT_INVALID_MESSAGE","hasVoiceOver","delay","_c","required","minLength","maxLength","pattern","_d","DEFAULT_VALID_MESSAGE","stringPropVisible","message","showMessage","handleInput","event","input","emit","handleChange","change","handleBlur","blur","handleFocus","focus","getDataList","_list","dataList","Array","from","isArrayOfStrings","map","val","value","label","enableAttributePassing","element","customElementSelector","parent","closest","attributes","i","length","attr","item","name","startsWith","setAttribute","removeAttribute","isWebComponent","includes","replace","trim","currentClass","getAttribute","watch0Fn","watch0","watch1Fn","messageId","DEFAULT_MESSAGE_ID_SUFFIX","DEFAULT_VALID_MESSAGE_ID_SUFFIX","DEFAULT_INVALID_MESSAGE_ID_SUFFIX","dataListId","DEFAULT_DATALIST_ID_SUFFIX","watch1","watch2Fn","watch2","componentDidLoad","mId","id","uuid","render","h","key","class","cls","className","variant","getHideProp","showLabel","showIcon","icon","iconAfter","htmlFor","DEFAULT_LABEL","ref","el","type","placeholder","DEFAULT_PLACEHOLDER","disabled","getBoolean","step","getNumber","maxlength","minlength","max","getInputValue","min","readOnly","readonly","form","size","autoComplete","autocomplete","autoFocus","autofocus","onInput","onChange","onBlur","onFocus","list","ariaDescribedBy","_e","option","messageIcon","semantic","role","DBTag","initialized","handleRemove","stopPropagation","remove","getRemoveButtonText","removeButton","DEFAULT_REMOVE","button","querySelector","Boolean","getBooleanAsString","emphasis","showCheckState","noText","overflow","text","behavior","onClick","DBCustomSelectDropdown","width","DBCustomSelectList","multiple","DBCustomSelectListItem","hasDivider","getIconAfter","isGroupTitle","checked","showDivider","groupTitle"],"sources":["src/components/input/input.tsx","src/components/tag/tag.tsx","src/components/custom-select-dropdown/custom-select-dropdown.tsx","src/components/custom-select-list/custom-select-list.tsx","src/components/custom-select-list-item/custom-select-list-item.tsx"],"sourcesContent":["import {\n cls,\n delay,\n getBoolean,\n getHideProp,\n getNumber,\n hasVoiceOver,\n isArrayOfStrings,\n stringPropVisible,\n uuid,\n getInputValue,\n} from \"../../utils\";\nimport { DBInputProps, DBInputState } from \"./model\";\nimport {\n DEFAULT_DATALIST_ID_SUFFIX,\n DEFAULT_INVALID_MESSAGE,\n DEFAULT_INVALID_MESSAGE_ID_SUFFIX,\n DEFAULT_LABEL,\n DEFAULT_MESSAGE_ID_SUFFIX,\n DEFAULT_PLACEHOLDER,\n DEFAULT_VALID_MESSAGE,\n DEFAULT_VALID_MESSAGE_ID_SUFFIX,\n} from \"../../shared/constants\";\nimport {\n ChangeEvent,\n InputEvent,\n InteractionEvent,\n ValueLabelType,\n} from \"../../shared/model\";\nimport { DBInfotext } from \"../infotext/infotext\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-input\",\n})\nexport class DBInput {\n private _ref!: HTMLInputElement | any;\n @Prop() id: DBInputProps[\"id\"];\n @Prop() invalidMessage: DBInputProps[\"invalidMessage\"];\n @Prop() dataListId: DBInputProps[\"dataListId\"];\n @Prop() message: DBInputProps[\"message\"];\n @Prop() showMessage: DBInputProps[\"showMessage\"];\n @Prop() value: DBInputProps[\"value\"];\n @Prop() validMessage: DBInputProps[\"validMessage\"];\n @Prop() validation: DBInputProps[\"validation\"];\n @Prop() required: DBInputProps[\"required\"];\n @Prop() minLength: DBInputProps[\"minLength\"];\n @Prop() maxLength: DBInputProps[\"maxLength\"];\n @Prop() pattern: DBInputProps[\"pattern\"];\n @Event() input: EventEmitter<\n Parameters<Required<DBInputProps>[\"onInput\"]>[number]\n > | void;\n @Event() change: EventEmitter<\n Parameters<Required<DBInputProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBInputProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBInputProps>[\"onFocus\"]>[number]\n > | void;\n @Prop() dataList: DBInputProps[\"dataList\"];\n @Prop({attribute: \"classname\"}) className: DBInputProps[\"className\"];\n @Prop() variant: DBInputProps[\"variant\"];\n @Prop() showLabel: DBInputProps[\"showLabel\"];\n @Prop() showIcon: DBInputProps[\"showIcon\"];\n @Prop() icon: DBInputProps[\"icon\"];\n @Prop() iconAfter: DBInputProps[\"iconAfter\"];\n @Prop() label: DBInputProps[\"label\"];\n @Prop() name: DBInputProps[\"name\"];\n @Prop() type: DBInputProps[\"type\"];\n @Prop() placeholder: DBInputProps[\"placeholder\"];\n @Prop() disabled: DBInputProps[\"disabled\"];\n @Prop() step: DBInputProps[\"step\"];\n @Prop() maxlength: DBInputProps[\"maxlength\"];\n @Prop() minlength: DBInputProps[\"minlength\"];\n @Prop() max: DBInputProps[\"max\"];\n @Prop() min: DBInputProps[\"min\"];\n @Prop() readOnly: DBInputProps[\"readOnly\"];\n @Prop() readonly: DBInputProps[\"readonly\"];\n @Prop() form: DBInputProps[\"form\"];\n @Prop() size: DBInputProps[\"size\"];\n @Prop() autocomplete: DBInputProps[\"autocomplete\"];\n @Prop() autofocus: DBInputProps[\"autofocus\"];\n @Prop() ariaDescribedBy: DBInputProps[\"ariaDescribedBy\"];\n @Prop() messageIcon: DBInputProps[\"messageIcon\"];\n @State() _id = undefined;\n @State() _messageId = undefined;\n @State() _validMessageId = undefined;\n @State() _invalidMessageId = undefined;\n @State() _invalidMessage = undefined;\n @State() _dataListId = undefined;\n @State() _descByIds = \"\";\n @State() _value = \"\";\n @State() _voiceOverFallback = \"\";\n\n hasValidState() {\n return !!(this.validMessage ?? this.validation === \"valid\");\n }\n handleValidation() {\n /* For a11y reasons we need to map the correct message with the input */\n if (!this._ref?.validity.valid || this.validation === \"invalid\") {\n this._descByIds = this._invalidMessageId;\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this._invalidMessage;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (\n this.hasValidState() &&\n this._ref?.validity.valid &&\n (this.required || this.minLength || this.maxLength || this.pattern)\n ) {\n this._descByIds = this._validMessageId;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this.validMessage ?? DEFAULT_VALID_MESSAGE;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = this._messageId;\n } else {\n this._descByIds = \"\";\n }\n }\n handleInput(event: InputEvent<HTMLInputElement>) {\n if (this.input) {\n this.input.emit(event);\n }\n this.handleValidation();\n }\n handleChange(event: ChangeEvent<HTMLInputElement>) {\n if (this.change) {\n this.change.emit(event);\n }\n this.handleValidation();\n }\n handleBlur(event: InteractionEvent<HTMLInputElement> | any) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLInputElement> | any) {\n if (this.focus) {\n this.focus.emit(event);\n }\n }\n getDataList() {\n const _list = this.dataList;\n return Array.from(\n (isArrayOfStrings(_list)\n ? _list?.map((val: string) => ({\n value: val,\n label: undefined,\n }))\n : _list) || []\n );\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLInputElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n }\n\n @Watch(\"_ref\")\n @Watch(\"invalidMessage\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this._id) {\n const messageId = this._id + DEFAULT_MESSAGE_ID_SUFFIX;\n this._messageId = messageId;\n this._validMessageId = this._id + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = this._id + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._dataListId =\n this.dataListId ?? this._id + DEFAULT_DATALIST_ID_SUFFIX;\n if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = messageId;\n }\n }\n }\n\n @Watch(\"_id\")\n watch1() {\n this.watch1Fn();\n }\n\n watch2Fn() {\n this._value = this.value;\n }\n\n @Watch(\"value\")\n watch2() {\n this.watch2Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-input\");\n const mId = this.id ?? `input-${uuid()}`;\n this._id = mId;\n this._messageId = mId + DEFAULT_MESSAGE_ID_SUFFIX;\n this._validMessageId = mId + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = mId + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._dataListId = mId + DEFAULT_DATALIST_ID_SUFFIX;\n this._invalidMessage = this.invalidMessage || DEFAULT_INVALID_MESSAGE;\n this.watch0Fn();\n this.watch1Fn();\n this.watch2Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-input\", this.className)}\n data-variant={this.variant}\n data-hide-label={getHideProp(this.showLabel)}\n data-hide-icon={getHideProp(this.showIcon)}\n data-icon={this.icon}\n data-icon-after={this.iconAfter}\n data-hide-icon-after={getHideProp(this.showIcon)}\n >\n <label htmlFor={this._id}>{this.label ?? DEFAULT_LABEL}</label>\n <input\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n name={this.name}\n type={this.type || \"text\"}\n placeholder={this.placeholder ?? DEFAULT_PLACEHOLDER}\n disabled={getBoolean(this.disabled, \"disabled\")}\n required={getBoolean(this.required, \"required\")}\n step={getNumber(this.step)}\n value={this.value ?? this._value}\n maxLength={getNumber(this.maxLength, this.maxlength)}\n minLength={getNumber(this.minLength, this.minlength)}\n max={getInputValue(this.max, this.type)}\n min={getInputValue(this.min, this.type)}\n readOnly={\n getBoolean(this.readOnly, \"readOnly\") ||\n getBoolean(this.readonly, \"readonly\")\n }\n form={this.form}\n pattern={this.pattern}\n size={this.size}\n autoComplete={this.autocomplete}\n autoFocus={getBoolean(this.autofocus, \"autofocus\")}\n onInput={(event) => this.handleInput(event)}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n list={this.dataList && this._dataListId}\n aria-describedby={this.ariaDescribedBy ?? this._descByIds}\n />\n {this.dataList ? (\n <datalist id={this._dataListId}>\n {this.getDataList()?.map((option) => (\n <option\n key={this._dataListId + \"-option-\" + option.value}\n value={option.value}\n >\n {option.label}\n </option>\n ))}\n </datalist>\n ) : null}\n <slot></slot>\n {stringPropVisible(this.message, this.showMessage) ? (\n <db-infotext\n size=\"small\"\n icon={this.messageIcon}\n id={this._messageId}\n >\n {this.message}\n </db-infotext>\n ) : null}\n {this.hasValidState() ? (\n <db-infotext\n size=\"small\"\n semantic=\"successful\"\n id={this._validMessageId}\n >\n {this.validMessage || DEFAULT_VALID_MESSAGE}\n </db-infotext>\n ) : null}\n <db-infotext\n size=\"small\"\n semantic=\"critical\"\n id={this._invalidMessageId}\n >\n {this._invalidMessage}\n </db-infotext>\n <span data-visually-hidden=\"true\" role=\"status\">\n {this._voiceOverFallback}\n </span>\n </div>\n );\n }\n}\n","import { DBTagProps, DBTagState } from \"./model\";\nimport { cls, getBooleanAsString, getHideProp } from \"../../utils\";\nimport { DEFAULT_REMOVE } from \"../../shared/constants\";\nimport { ClickEvent } from \"../../shared/model\";\nimport { DBTooltip } from \"../tooltip/tooltip\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n * @slot content - TODO: Add description for slotContent\n */\n @Component({\n tag: \"db-tag\",\n})\nexport class DBTag {\n private _ref!: HTMLDivElement | any;\n @Prop() disabled: DBTagProps[\"disabled\"];\n @Event() remove: EventEmitter<\n Parameters<Required<DBTagProps>[\"remove\"]>[number]\n > | void;\n @Prop() removeButton: DBTagProps[\"removeButton\"];\n @Prop() id: DBTagProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBTagProps[\"className\"];\n @Prop() semantic: DBTagProps[\"semantic\"];\n @Prop() emphasis: DBTagProps[\"emphasis\"];\n @Prop() icon: DBTagProps[\"icon\"];\n @Prop() showCheckState: DBTagProps[\"showCheckState\"];\n @Prop() showIcon: DBTagProps[\"showIcon\"];\n @Prop() noText: DBTagProps[\"noText\"];\n @Prop() overflow: DBTagProps[\"overflow\"];\n @Prop() text: DBTagProps[\"text\"];\n @Prop() behavior: DBTagProps[\"behavior\"];\n @State() initialized = false;\n\n handleRemove(event?: ClickEvent<HTMLButtonElement>) {\n event?.stopPropagation();\n if (this.remove) {\n this.remove.emit(event);\n }\n }\n getRemoveButtonText() {\n if (this.removeButton) {\n return this.removeButton;\n }\n\n // TODO: We should think this through again, if we would really like to have default and especially english, instead of german labels in here\n return DEFAULT_REMOVE;\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n if (this.initialized && this._ref && this.disabled !== undefined) {\n const button: HTMLButtonElement | null = this._ref?.querySelector(\n \"button:not(.db-tab-remove-button)\"\n );\n const input: HTMLInputElement | null = this._ref?.querySelector(\"input\");\n for (const element of [button, input]) {\n if (element) {\n element.disabled = Boolean(this.disabled);\n }\n }\n }\n }\n\n @Watch(\"initialized\")\n @Watch(\"disabled\")\n @Watch(\"_ref\")\n watch0() {\n this.watch0Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-tag\");\n\n this.watch0Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-tag\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id}\n data-disabled={getBooleanAsString(this.disabled)}\n data-semantic={this.semantic}\n data-emphasis={this.emphasis}\n data-icon={this.icon}\n data-show-check-state={getBooleanAsString(this.showCheckState ?? true)}\n data-hide-icon={getHideProp(this.showIcon)}\n data-no-text={getBooleanAsString(this.noText)}\n data-overflow={getBooleanAsString(this.overflow)}\n >\n <slot name=\"content\"></slot>\n <slot></slot>\n {this.text ? this.text : null}\n {this.behavior === \"removable\" ? (\n <button\n class=\"db-button db-tab-remove-button\"\n data-icon=\"cross\"\n data-size=\"small\"\n data-no-text=\"true\"\n data-variant=\"ghost\"\n type=\"button\"\n onClick={(event) => this.handleRemove(event)}\n >\n <db-tooltip variant=\"label\">\n {this.getRemoveButtonText()}\n </db-tooltip>\n </button>\n ) : null}\n </div>\n );\n }\n}\n","import { DBCustomSelectDropdownProps } from \"./model\";\nimport { cls } from \"../../utils\";\n\nimport { Component, h, Fragment, Prop } from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-custom-select-dropdown\",\n})\nexport class DBCustomSelectDropdown {\n private _ref!: HTMLDivElement | any;\n @Prop() id: DBCustomSelectDropdownProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBCustomSelectDropdownProps[\"className\"];\n @Prop() width: DBCustomSelectDropdownProps[\"width\"] = \"fixed\";\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-custom-select-dropdown\");\n }\n\n render() {\n return (\n <article\n class={cls(\"db-custom-select-dropdown db-card\", this.className)}\n data-spacing=\"none\"\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id}\n data-width={this.width}\n >\n <slot></slot>\n </article>\n );\n }\n}\n","import { DBCustomSelectListProps } from \"./model\";\nimport { cls } from \"../../utils\";\n\nimport { Component, h, Fragment, Prop } from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-custom-select-list\",\n})\nexport class DBCustomSelectList {\n private _ref!: HTMLDivElement | any;\n @Prop() multiple: DBCustomSelectListProps[\"multiple\"];\n @Prop() label: DBCustomSelectListProps[\"label\"];\n @Prop() id: DBCustomSelectListProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBCustomSelectListProps[\"className\"];\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-custom-select-list\");\n }\n\n render() {\n return (\n <div\n class={cls(\"db-custom-select-list\", this.className)}\n role={this.multiple ? \"group\" : \"radiogroup\"}\n aria-label={this.label}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id}\n >\n <ul>\n <slot></slot>\n </ul>\n </div>\n );\n }\n}\n","import {\n DBCustomSelectListItemProps,\n DBCustomSelectListItemState,\n} from \"./model\";\nimport {\n cls,\n getBoolean,\n getBooleanAsString,\n getHideProp,\n uuid,\n} from \"../../utils\";\nimport { ChangeEvent } from \"../../shared/model\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-custom-select-list-item\",\n})\nexport class DBCustomSelectListItem {\n private _ref!: HTMLLIElement | any;\n @Prop() id: DBCustomSelectListItemProps[\"id\"];\n @Prop() isGroupTitle: DBCustomSelectListItemProps[\"isGroupTitle\"];\n @Prop() showDivider: DBCustomSelectListItemProps[\"showDivider\"];\n @Event() change: EventEmitter<\n Parameters<Required<DBCustomSelectListItemProps>[\"onChange\"]>[number]\n > | void;\n @Prop() type: DBCustomSelectListItemProps[\"type\"];\n @Prop() checked: DBCustomSelectListItemProps[\"checked\"];\n @Prop({attribute: \"classname\"}) className: DBCustomSelectListItemProps[\"className\"];\n @Prop() groupTitle: DBCustomSelectListItemProps[\"groupTitle\"];\n @Prop() icon: DBCustomSelectListItemProps[\"icon\"];\n @Prop() showIcon: DBCustomSelectListItemProps[\"showIcon\"];\n @Prop() name: DBCustomSelectListItemProps[\"name\"];\n @Prop() disabled: DBCustomSelectListItemProps[\"disabled\"];\n @Prop() value: DBCustomSelectListItemProps[\"value\"];\n @Prop() label: DBCustomSelectListItemProps[\"label\"];\n @State() _id = undefined;\n @State() hasDivider = false;\n\n handleChange(event: ChangeEvent<HTMLInputElement>) {\n event.stopPropagation();\n if (this.change) {\n this.change.emit(event);\n }\n }\n getIconAfter() {\n if (this.isGroupTitle || this.type === \"checkbox\") {\n return;\n }\n return getBoolean(this.checked, \"checked\") ? \"check\" : \"x_placeholder\";\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n this.hasDivider = Boolean(this.isGroupTitle || this.showDivider);\n }\n\n @Watch(\"isGroupTitle\")\n @Watch(\"showDivider\")\n watch0() {\n this.watch0Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-custom-select-list-item\");\n this._id = this.id ?? `custom-select-list-item-${uuid()}`;\n this.watch0Fn();\n }\n\n render() {\n return (\n <li\n class={cls(\"db-custom-select-list-item\", this.className, {\n \"db-checkbox\": this.type === \"checkbox\" && !this.isGroupTitle,\n \"db-radio\": this.type !== \"checkbox\" && !this.isGroupTitle,\n })}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n data-divider={getBooleanAsString(this.hasDivider)}\n >\n {!this.isGroupTitle ? (\n <label\n data-icon={\n this.type !== \"checkbox\" && this.icon ? this.icon : undefined\n }\n data-hide-icon={getHideProp(this.showIcon)}\n data-icon-after={this.getIconAfter()}\n >\n <input\n class=\"db-custom-select-list-item-checkbox\"\n data-disable-focus=\"true\"\n type={this.type}\n name={this.name}\n form={this.name}\n checked={getBoolean(this.checked, \"checked\")}\n disabled={getBoolean(this.disabled, \"disabled\")}\n value={this.value}\n onChange={(event) => this.handleChange(event)}\n />\n {this.label ? this.label : <slot></slot>}\n </label>\n ) : (\n <span>{this.groupTitle}</span>\n )}\n </li>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as i,c as t,h as s}from"./p-bH2PZLSq.js";import{u as a,j as h,m as e,c as d}from"./p-pglUTSkG.js";const r=class{constructor(s){i(this,s);this.change=t(this,"change");this.blur=t(this,"blur");this.focus=t(this,"focus");this.initialized=false;this._id=undefined}handleChange(i){if(this.change){this.change.emit(i)}}handleBlur(i){if(this.blur){this.blur.emit(i)}}handleFocus(i){if(this.focus){this.focus.emit(i)}}enableAttributePassing(i,t){const s=i===null||i===void 0?void 0:i.closest(t);if(i&&s){const t=s.attributes;for(let a=0;a<t.length;a++){const h=t.item(a);if(h&&(h.name.startsWith("data-")||h.name.startsWith("aria-"))){i.setAttribute(h.name,h.value);s.removeAttribute(h.name)}if(h&&h.name==="class"){const t=h.value.includes("hydrated");const a=h.value.replace("hydrated","").trim();const e=i.getAttribute("class");i.setAttribute(h.name,`${e?`${e} `:""}${a}`);if(t){s.setAttribute("class","hydrated")}else{s.removeAttribute(h.name)}}}}}watch0Fn(){if(this.checked&&this.initialized&&this._ref){this._ref.checked=true}}watch0(){this.watch0Fn()}componentDidLoad(){var i;this.enableAttributePassing(this._ref,"db-radio");this.initialized=true;this._id=(i=this.id)!==null&&i!==void 0?i:`radio-${a()}`;this.watch0Fn()}render(){var i;return s("label",{key:"ff454f03c6dfddfcb63e4c0e68896641742cecfb",class:d("db-radio",this.className),"data-size":this.size,"data-hide-label":e(this.showLabel),htmlFor:this._id},s("input",{key:"a09e362e2da8ee88e6ab21231b4e1161a6535e00",type:"radio","aria-invalid":this.validation==="invalid","data-custom-validity":this.validation,ref:i=>{this._ref=i},id:this._id,name:this.name,checked:h(this.checked,"checked"),disabled:h(this.disabled,"disabled"),"aria-describedby":(i=this.describedbyid)!==null&&i!==void 0?i:this.ariaDescribedBy,value:this.value,required:h(this.required,"required"),onChange:i=>this.handleChange(i),onBlur:i=>this.handleBlur(i),onFocus:i=>this.handleFocus(i)}),this.label?this.label:s("slot",null))}static get watchers(){return{initialized:["watch0"],_ref:["watch0"],checked:["watch0"]}}};export{r as db_radio};
2
+ //# sourceMappingURL=p-c088c8c8.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DBRadio","constructor","hostRef","this","initialized","_id","undefined","handleChange","event","change","emit","handleBlur","blur","handleFocus","focus","enableAttributePassing","element","customElementSelector","parent","closest","attributes","i","length","attr","item","name","startsWith","setAttribute","value","removeAttribute","isWebComponent","includes","replace","trim","currentClass","getAttribute","watch0Fn","checked","_ref","watch0","componentDidLoad","_a","id","uuid","render","h","key","class","cls","className","size","getHideProp","showLabel","htmlFor","type","validation","ref","el","getBoolean","disabled","describedbyid","ariaDescribedBy","required","onChange","onBlur","onFocus","label"],"sources":["src/components/radio/radio.tsx"],"sourcesContent":["import { DBRadioProps, DBRadioState } from \"./model\";\nimport { cls, getBoolean, getHideProp, uuid } from \"../../utils\";\nimport { ChangeEvent, InteractionEvent } from \"../../shared/model\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-radio\",\n})\nexport class DBRadio {\n private _ref!: HTMLInputElement | any;\n @Prop() id: DBRadioProps[\"id\"];\n @Prop() checked: DBRadioProps[\"checked\"];\n @Event() change: EventEmitter<\n Parameters<Required<DBRadioProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBRadioProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBRadioProps>[\"onFocus\"]>[number]\n > | void;\n @Prop() size: DBRadioProps[\"size\"];\n @Prop() showLabel: DBRadioProps[\"showLabel\"];\n @Prop({attribute: \"classname\"}) className: DBRadioProps[\"className\"];\n @Prop() validation: DBRadioProps[\"validation\"];\n @Prop() name: DBRadioProps[\"name\"];\n @Prop() disabled: DBRadioProps[\"disabled\"];\n @Prop() describedbyid: DBRadioProps[\"describedbyid\"];\n @Prop() ariaDescribedBy: DBRadioProps[\"ariaDescribedBy\"];\n @Prop() value: DBRadioProps[\"value\"];\n @Prop() required: DBRadioProps[\"required\"];\n @Prop() label: DBRadioProps[\"label\"];\n @State() initialized = false;\n @State() _id = undefined;\n\n handleChange(event: ChangeEvent<HTMLInputElement> | any) {\n if (this.change) {\n this.change.emit(event);\n }\n }\n handleBlur(event: InteractionEvent<HTMLInputElement> | any) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLInputElement> | any) {\n if (this.focus) {\n this.focus.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLInputElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n if (this.checked && this.initialized && this._ref) {\n this._ref.checked = true;\n }\n }\n\n @Watch(\"initialized\")\n @Watch(\"_ref\")\n @Watch(\"checked\")\n watch0() {\n this.watch0Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-radio\");\n this.initialized = true;\n this._id = this.id ?? `radio-${uuid()}`;\n this.watch0Fn();\n }\n\n render() {\n return (\n <label\n class={cls(\"db-radio\", this.className)}\n data-size={this.size}\n data-hide-label={getHideProp(this.showLabel)}\n htmlFor={this._id}\n >\n <input\n type=\"radio\"\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n name={this.name}\n checked={getBoolean(this.checked, \"checked\")}\n disabled={getBoolean(this.disabled, \"disabled\")}\n aria-describedby={this.describedbyid ?? this.ariaDescribedBy}\n value={this.value}\n required={getBoolean(this.required, \"required\")}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n />\n {this.label ? this.label : <slot></slot>}\n </label>\n );\n }\n}\n"],"mappings":"iHA2BaA,EAAO,MAHnB,WAAAC,CAAAC,G,2FA2BUC,KAAWC,YAAG,MACdD,KAAGE,IAAGC,SA4GhB,CA1GC,YAAAC,CAAaC,GACX,GAAIL,KAAKM,OAAQ,CACfN,KAAKM,OAAOC,KAAKF,E,EAGrB,UAAAG,CAAWH,GACT,GAAIL,KAAKS,KAAM,CACbT,KAAKS,KAAKF,KAAKF,E,EAGnB,WAAAK,CAAYL,GACV,GAAIL,KAAKW,MAAO,CACdX,KAAKW,MAAMJ,KAAKF,E,EASZ,sBAAAO,CACNC,EACAC,GAEA,MAAMC,EAASF,IAAO,MAAPA,SAAO,SAAPA,EAASG,QAAQF,GAChC,GAAID,GAAWE,EAAQ,CACrB,MAAME,EAAaF,EAAOE,WAC1B,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAWE,OAAQD,IAAK,CAC1C,MAAME,EAAOH,EAAWI,KAAKH,GAC7B,GACEE,IACCA,EAAKE,KAAKC,WAAW,UAAYH,EAAKE,KAAKC,WAAW,UACvD,CACAV,EAAQW,aAAaJ,EAAKE,KAAMF,EAAKK,OACrCV,EAAOW,gBAAgBN,EAAKE,K,CAE9B,GAAIF,GAAQA,EAAKE,OAAS,QAAS,CACjC,MAAMK,EAAiBP,EAAKK,MAAMG,SAAS,YAC3C,MAAMH,EAAQL,EAAKK,MAAMI,QAAQ,WAAY,IAAIC,OACjD,MAAMC,EAAelB,EAAQmB,aAAa,SAC1CnB,EAAQW,aACNJ,EAAKE,KACL,GAAGS,EAAe,GAAGA,KAAkB,KAAKN,KAE9C,GAAIE,EAAgB,CAElBZ,EAAOS,aAAa,QAAS,W,KACxB,CACLT,EAAOW,gBAAgBN,EAAKE,K,KAOtC,QAAAW,GACE,GAAIjC,KAAKkC,SAAWlC,KAAKC,aAAeD,KAAKmC,KAAM,CACjDnC,KAAKmC,KAAKD,QAAU,I,EAOxB,MAAAE,GACEpC,KAAKiC,U,CAGP,gBAAAI,G,MACErC,KAAKY,uBAAuBZ,KAAKmC,KAAM,YACvCnC,KAAKC,YAAc,KACnBD,KAAKE,KAAMoC,EAAAtC,KAAKuC,MAAE,MAAAD,SAAA,EAAAA,EAAI,SAASE,MAC/BxC,KAAKiC,U,CAGP,MAAAQ,G,MACE,OACEC,EAAA,SAAAC,IAAA,2CACEC,MAAOC,EAAI,WAAY7C,KAAK8C,WACjB,YAAA9C,KAAK+C,KACC,kBAAAC,EAAYhD,KAAKiD,WAClCC,QAASlD,KAAKE,KAEdwC,EAAA,SAAAC,IAAA,2CACEQ,KAAK,QAAO,eACEnD,KAAKoD,aAAe,UAAS,uBACrBpD,KAAKoD,WAC3BC,IAAMC,IACJtD,KAAKmC,KAAOmB,CAAE,EAEhBf,GAAIvC,KAAKE,IACToB,KAAMtB,KAAKsB,KACXY,QAASqB,EAAWvD,KAAKkC,QAAS,WAClCsB,SAAUD,EAAWvD,KAAKwD,SAAU,YAAW,oBAC7BlB,EAAAtC,KAAKyD,iBAAa,MAAAnB,SAAA,EAAAA,EAAItC,KAAK0D,gBAC7CjC,MAAOzB,KAAKyB,MACZkC,SAAUJ,EAAWvD,KAAK2D,SAAU,YACpCC,SAAWvD,GAAUL,KAAKI,aAAaC,GACvCwD,OAASxD,GAAUL,KAAKQ,WAAWH,GACnCyD,QAAUzD,GAAUL,KAAKU,YAAYL,KAEtCL,KAAK+D,MAAQ/D,KAAK+D,MAAQrB,EAAa,a","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as s,c as t,h as a}from"./p-bH2PZLSq.js";import{s as e}from"./p-DC9V_oNU.js";import{f as i,g as d,c}from"./p-pglUTSkG.js";const r=class{constructor(a){s(this,a);this.close=t(this,"close")}handleClose(s,t){if(s.key==="Escape"){s.preventDefault()}if(t){s.stopPropagation()}if(t||s.key==="Escape"||s.target.nodeName==="DIALOG"&&s.type==="click"&&this.backdrop!=="none"){if(this.close){this.close.emit(s)}}}handleDialogOpen(){if(this._ref){const s=Boolean(this.open);if(s&&!this._ref.open){if(this.dialogContainerRef){this.dialogContainerRef.hidden=false}if(this.backdrop==="none"||this.variant==="inside"){this._ref.show()}else{this._ref.showModal()}}if(!s&&this._ref.open){if(this.dialogContainerRef){this.dialogContainerRef.hidden=true}i((()=>{var s;if(this.dialogContainerRef){this.dialogContainerRef.hidden=false}(s=this._ref)===null||s===void 0?void 0:s.close()}),401)}}}enableAttributePassing(s,t){const a=s===null||s===void 0?void 0:s.closest(t);if(s&&a){const t=a.attributes;for(let e=0;e<t.length;e++){const i=t.item(e);if(i&&(i.name.startsWith("data-")||i.name.startsWith("aria-"))){s.setAttribute(i.name,i.value);a.removeAttribute(i.name)}if(i&&i.name==="class"){const t=i.value.includes("hydrated");const e=i.value.replace("hydrated","").trim();const d=s.getAttribute("class");s.setAttribute(i.name,`${d?`${d} `:""}${e}`);if(t){a.setAttribute("class","hydrated")}else{a.removeAttribute(i.name)}}}}}watch0Fn(){this.handleDialogOpen()}watch0(){this.watch0Fn()}componentDidLoad(){this.enableAttributePassing(this._ref,"db-drawer");this.handleDialogOpen();this.watch0Fn()}render(){var s;return a("dialog",{key:"94c12863952cfb2d6660595656120bd36c2822bf",class:"db-drawer",id:this.id,ref:s=>{this._ref=s},onClick:s=>this.handleClose(s),onKeyDown:s=>this.handleClose(s),"data-backdrop":this.backdrop,"data-variant":this.variant},a("article",{key:"9555b06cc7ef8200953910df27aa4d26e8900c4c",class:c("db-drawer-container",this.className),ref:s=>{this.dialogContainerRef=s},"data-spacing":this.spacing,"data-width":this.width,"data-direction":this.direction,"data-rounded":d(this.rounded)},a("header",{key:"821f71bcf05f7adca7bd48596611ec402229d24b",class:"db-drawer-header"},a("div",{key:"77f0bfa2a0a4881a98e3e1a23157330e270abdcf",class:"db-drawer-header-text"},a("slot",{key:"6879f78c25424e788b0381233eaee4c50ab74505",name:"drawerHeader"})),a("db-button",{key:"e14b3c8f265a23607c9ad84a81f81e2c4290063a",class:"button-close-drawer",icon:"cross",variant:"ghost",id:this.closeButtonId,noText:true,onClick:s=>this.handleClose(s,true)},(s=this.closeButtonText)!==null&&s!==void 0?s:e)),a("div",{key:"2a23efa2071033373dd67004de4c776fe6ad4a36",class:"db-drawer-content"},a("slot",{key:"b572eabf73909f5e0f1b4cd301351582c15d79ec"}))))}static get watchers(){return{open:["watch0"]}}};export{r as db_drawer};
2
+ //# sourceMappingURL=p-e8cabe82.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DBDrawer","handleClose","event","forceClose","key","preventDefault","stopPropagation","target","nodeName","type","this","backdrop","close","emit","handleDialogOpen","_ref","open","Boolean","dialogContainerRef","hidden","variant","show","showModal","delay","_a","enableAttributePassing","element","customElementSelector","parent","closest","attributes","i","length","attr","item","name","startsWith","setAttribute","value","removeAttribute","isWebComponent","includes","replace","trim","currentClass","getAttribute","watch0Fn","watch0","componentDidLoad","render","h","class","id","ref","el","onClick","onKeyDown","cls","className","spacing","width","direction","getBooleanAsString","rounded","icon","closeButtonId","noText","closeButtonText","DEFAULT_CLOSE_BUTTON"],"sources":["src/components/drawer/drawer.tsx"],"sourcesContent":["import { DBDrawerProps, DBDrawerState } from \"./model\";\nimport { DBButton } from \"../button/button\";\nimport { DEFAULT_CLOSE_BUTTON } from \"../../shared/constants\";\nimport { cls, delay, getBooleanAsString } from \"../../utils\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n * @slot drawerHeader - TODO: Add description for slotDrawerHeader\n */\n @Component({\n tag: \"db-drawer\",\n})\nexport class DBDrawer {\n private _ref!: HTMLDialogElement | any;\n private dialogContainerRef!: HTMLDivElement | any;\n @Prop() open: DBDrawerProps[\"open\"];\n @Prop() backdrop: DBDrawerProps[\"backdrop\"];\n @Event() close: EventEmitter<\n Parameters<Required<DBDrawerProps>[\"onClose\"]>[number]\n > | void;\n @Prop() variant: DBDrawerProps[\"variant\"];\n @Prop() id: DBDrawerProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBDrawerProps[\"className\"];\n @Prop() spacing: DBDrawerProps[\"spacing\"];\n @Prop() width: DBDrawerProps[\"width\"];\n @Prop() direction: DBDrawerProps[\"direction\"];\n @Prop() rounded: DBDrawerProps[\"rounded\"];\n @Prop() closeButtonId: DBDrawerProps[\"closeButtonId\"];\n @Prop() closeButtonText: DBDrawerProps[\"closeButtonText\"];\n\n handleClose(event: any, forceClose?: boolean) {\n if (event.key === \"Escape\") {\n event.preventDefault();\n }\n if (forceClose) {\n event.stopPropagation();\n }\n if (\n forceClose ||\n event.key === \"Escape\" ||\n (event.target.nodeName === \"DIALOG\" &&\n event.type === \"click\" &&\n this.backdrop !== \"none\")\n ) {\n if (this.close) {\n this.close.emit(event);\n }\n }\n }\n handleDialogOpen() {\n if (this._ref) {\n const open = Boolean(this.open);\n if (open && !this._ref.open) {\n if (this.dialogContainerRef) {\n this.dialogContainerRef.hidden = false;\n }\n if (this.backdrop === \"none\" || this.variant === \"inside\") {\n this._ref.show();\n } else {\n this._ref.showModal();\n }\n }\n if (!open && this._ref.open) {\n if (this.dialogContainerRef) {\n this.dialogContainerRef.hidden = true;\n }\n delay(() => {\n if (this.dialogContainerRef) {\n this.dialogContainerRef.hidden = false;\n }\n this._ref?.close();\n }, 401);\n }\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n this.handleDialogOpen();\n }\n\n @Watch(\"open\")\n watch0() {\n this.watch0Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-drawer\");\n this.handleDialogOpen();\n this.watch0Fn();\n }\n\n render() {\n return (\n <dialog\n class=\"db-drawer\"\n id={this.id}\n ref={(el: any) => {\n this._ref = el;\n }}\n onClick={(event) => this.handleClose(event)}\n onKeyDown={(event) => this.handleClose(event)}\n data-backdrop={this.backdrop}\n data-variant={this.variant}\n >\n <article\n class={cls(\"db-drawer-container\", this.className)}\n ref={(el: any) => {\n this.dialogContainerRef = el;\n }}\n data-spacing={this.spacing}\n data-width={this.width}\n data-direction={this.direction}\n data-rounded={getBooleanAsString(this.rounded)}\n >\n <header class=\"db-drawer-header\">\n <div class=\"db-drawer-header-text\">\n <slot name=\"drawerHeader\"></slot>\n </div>\n <db-button\n class=\"button-close-drawer\"\n icon=\"cross\"\n variant=\"ghost\"\n id={this.closeButtonId}\n noText={true}\n onClick={(event) => this.handleClose(event, true)}\n >\n {this.closeButtonText ?? DEFAULT_CLOSE_BUTTON}\n </db-button>\n </header>\n <div class=\"db-drawer-content\">\n <slot></slot>\n </div>\n </article>\n </dialog>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as s,h as i}from"./p-bH2PZLSq.js";import{c as a}from"./p-pglUTSkG.js";const e=class{constructor(i){t(this,i);this.click=s(this,"click")}handleClick(t){if(this.click){this.click.emit(t)}}enableAttributePassing(t,s){const i=t===null||t===void 0?void 0:t.closest(s);if(t&&i){const s=i.attributes;for(let a=0;a<s.length;a++){const e=s.item(a);if(e&&(e.name.startsWith("data-")||e.name.startsWith("aria-"))){t.setAttribute(e.name,e.value);i.removeAttribute(e.name)}if(e&&e.name==="class"){const s=e.value.includes("hydrated");const a=e.value.replace("hydrated","").trim();const c=t.getAttribute("class");t.setAttribute(e.name,`${c?`${c} `:""}${a}`);if(s){i.setAttribute("class","hydrated")}else{i.removeAttribute(e.name)}}}}}componentDidLoad(){this.enableAttributePassing(this._ref,"db-card")}render(){return i("div",{key:"dfc5004a3cc98b94ccd3ff6c930f231ef39c918e",class:a("db-card",this.className),ref:t=>{this._ref=t},id:this.id,"data-behavior":this.behavior,"data-elevation-level":this.elevationLevel,"data-spacing":this.spacing,role:this.behavior==="interactive"?"button":undefined,tabIndex:this.behavior==="interactive"?0:undefined,onClick:t=>this.handleClick(t)},i("slot",{key:"6c73a087dab46b17c01e48eec340788f3a10bf63"}))}};export{e as db_card};
2
+ //# sourceMappingURL=p-f83357e2.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DBCard","handleClick","event","this","click","emit","enableAttributePassing","element","customElementSelector","parent","closest","attributes","i","length","attr","item","name","startsWith","setAttribute","value","removeAttribute","isWebComponent","includes","replace","trim","currentClass","getAttribute","componentDidLoad","_ref","render","h","key","class","cls","className","ref","el","id","behavior","elevationLevel","spacing","role","undefined","tabIndex","onClick"],"sources":["src/components/card/card.tsx"],"sourcesContent":["import type { DBCardProps, DBCardState } from \"./model\";\nimport { cls } from \"../../utils\";\nimport { ClickEvent } from \"../../shared/model\";\n\nimport {\n Component,\n h,\n Fragment,\n Event,\n EventEmitter,\n Prop,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-card\",\n})\nexport class DBCard {\n private _ref!: HTMLDivElement | any;\n @Event() click: EventEmitter<\n Parameters<Required<DBCardProps>[\"onClick\"]>[number]\n > | void;\n @Prop() id: DBCardProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBCardProps[\"className\"];\n @Prop() behavior: DBCardProps[\"behavior\"];\n @Prop() elevationLevel: DBCardProps[\"elevationLevel\"];\n @Prop() spacing: DBCardProps[\"spacing\"];\n\n handleClick(event: ClickEvent<HTMLElement>) {\n if (this.click) {\n this.click.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-card\");\n }\n\n render() {\n return (\n <div\n class={cls(\"db-card\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id}\n data-behavior={this.behavior}\n data-elevation-level={this.elevationLevel}\n data-spacing={this.spacing}\n role={this.behavior === \"interactive\" ? \"button\" : undefined}\n tabIndex={this.behavior === \"interactive\" ? 0 : undefined}\n onClick={(event) => this.handleClick(event)}\n >\n <slot></slot>\n </div>\n );\n }\n}\n"],"mappings":"4FAqBaA,EAAM,M,oDAWjB,WAAAC,CAAYC,GACV,GAAIC,KAAKC,MAAO,CACdD,KAAKC,MAAMC,KAAKH,E,EASZ,sBAAAI,CACNC,EACAC,GAEA,MAAMC,EAASF,IAAO,MAAPA,SAAO,SAAPA,EAASG,QAAQF,GAChC,GAAID,GAAWE,EAAQ,CACrB,MAAME,EAAaF,EAAOE,WAC1B,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAWE,OAAQD,IAAK,CAC1C,MAAME,EAAOH,EAAWI,KAAKH,GAC7B,GACEE,IACCA,EAAKE,KAAKC,WAAW,UAAYH,EAAKE,KAAKC,WAAW,UACvD,CACAV,EAAQW,aAAaJ,EAAKE,KAAMF,EAAKK,OACrCV,EAAOW,gBAAgBN,EAAKE,K,CAE9B,GAAIF,GAAQA,EAAKE,OAAS,QAAS,CACjC,MAAMK,EAAiBP,EAAKK,MAAMG,SAAS,YAC3C,MAAMH,EAAQL,EAAKK,MAAMI,QAAQ,WAAY,IAAIC,OACjD,MAAMC,EAAelB,EAAQmB,aAAa,SAC1CnB,EAAQW,aACNJ,EAAKE,KACL,GAAGS,EAAe,GAAGA,KAAkB,KAAKN,KAE9C,GAAIE,EAAgB,CAElBZ,EAAOS,aAAa,QAAS,W,KACxB,CACLT,EAAOW,gBAAgBN,EAAKE,K,KAOtC,gBAAAW,GACExB,KAAKG,uBAAuBH,KAAKyB,KAAM,U,CAGzC,MAAAC,GACE,OACEC,EACE,OAAAC,IAAA,2CAAAC,MAAOC,EAAI,UAAW9B,KAAK+B,WAC3BC,IAAMC,IACJjC,KAAKyB,KAAOQ,CAAE,EAEhBC,GAAIlC,KAAKkC,GACM,gBAAAlC,KAAKmC,SACE,uBAAAnC,KAAKoC,eACb,eAAApC,KAAKqC,QACnBC,KAAMtC,KAAKmC,WAAa,cAAgB,SAAWI,UACnDC,SAAUxC,KAAKmC,WAAa,cAAgB,EAAII,UAChDE,QAAU1C,GAAUC,KAAKF,YAAYC,IAErC4B,EAAa,QAAAC,IAAA,6C","ignoreList":[]}
@@ -8,7 +8,6 @@ const DBButton = class {
8
8
  }
9
9
  handleClick(event) {
10
10
  if (this.click) {
11
- event.stopPropagation();
12
11
  this.click.emit(event);
13
12
  }
14
13
  }
@@ -48,7 +47,7 @@ const DBButton = class {
48
47
  this.enableAttributePassing(this._ref, "db-button");
49
48
  }
50
49
  render() {
51
- return (h("button", { key: '68f56df43517f5c28ad4a9390c2cfb54a112b0ec', class: cls("db-button", this.className), ref: (el) => {
50
+ return (h("button", { key: 'f804bbf8840c2d9d16d45a7255e7ec20a6473773', class: cls("db-button", this.className), ref: (el) => {
52
51
  this._ref = el;
53
52
  }, id: this.id, type: this.type || "button", disabled: getBoolean(this.disabled, "disabled"), "aria-label": this.label, "data-icon": this.icon, "data-hide-icon": getHideProp(this.showIcon), "data-size": this.size, "data-state": this.state, "data-width": this.width, "data-variant": this.variant, "data-no-text": getBooleanAsString(this.noText), name: this.name, form: this.form, value: this.value, "aria-describedby": this.describedbyid, "aria-expanded": this.ariaexpanded, "aria-pressed": this.ariapressed, onClick: (event) => this.handleClick(event) }, this.text ? this.text : h("slot", null)));
54
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"db-button.entry.js","sources":["src/components/button/button.tsx"],"sourcesContent":["import type { DBButtonProps, DBButtonState } from \"./model\";\nimport { cls, getBoolean, getBooleanAsString, getHideProp } from \"../../utils\";\nimport { ClickEvent } from \"../../shared/model\";\n\nimport {\n Component,\n h,\n Fragment,\n Event,\n EventEmitter,\n Prop,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-button\",\n})\nexport class DBButton {\n private _ref!: HTMLButtonElement | any;\n @Event() click: EventEmitter<\n Parameters<Required<DBButtonProps>[\"onClick\"]>[number]\n > | void;\n @Prop() id: DBButtonProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBButtonProps[\"className\"];\n @Prop() type: DBButtonProps[\"type\"];\n @Prop() disabled: DBButtonProps[\"disabled\"];\n @Prop() label: DBButtonProps[\"label\"];\n @Prop() icon: DBButtonProps[\"icon\"];\n @Prop() showIcon: DBButtonProps[\"showIcon\"];\n @Prop() size: DBButtonProps[\"size\"];\n @Prop() state: DBButtonProps[\"state\"];\n @Prop() width: DBButtonProps[\"width\"];\n @Prop() variant: DBButtonProps[\"variant\"];\n @Prop() noText: DBButtonProps[\"noText\"];\n @Prop() name: DBButtonProps[\"name\"];\n @Prop() form: DBButtonProps[\"form\"];\n @Prop() value: DBButtonProps[\"value\"];\n @Prop() describedbyid: DBButtonProps[\"describedbyid\"];\n @Prop() ariaexpanded: DBButtonProps[\"ariaexpanded\"];\n @Prop() ariapressed: DBButtonProps[\"ariapressed\"];\n @Prop() text: DBButtonProps[\"text\"];\n\n handleClick(event: ClickEvent<HTMLButtonElement>) {\n if (this.click) {\n event.stopPropagation();\n this.click.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-button\");\n }\n\n render() {\n return (\n <button\n class={cls(\"db-button\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id}\n type={this.type || \"button\"}\n disabled={getBoolean(this.disabled, \"disabled\")}\n aria-label={this.label}\n data-icon={this.icon}\n data-hide-icon={getHideProp(this.showIcon)}\n data-size={this.size}\n data-state={this.state}\n data-width={this.width}\n data-variant={this.variant}\n data-no-text={getBooleanAsString(this.noText)}\n name={this.name}\n form={this.form}\n value={this.value}\n aria-describedby={this.describedbyid}\n aria-expanded={this.ariaexpanded}\n aria-pressed={this.ariapressed}\n onClick={(event) => this.handleClick(event)}\n >\n {this.text ? this.text : <slot></slot>}\n </button>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db-button.entry.js","sources":["src/components/button/button.tsx"],"sourcesContent":["import type { DBButtonProps, DBButtonState } from \"./model\";\nimport { cls, getBoolean, getBooleanAsString, getHideProp } from \"../../utils\";\nimport { ClickEvent } from \"../../shared/model\";\n\nimport {\n Component,\n h,\n Fragment,\n Event,\n EventEmitter,\n Prop,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-button\",\n})\nexport class DBButton {\n private _ref!: HTMLButtonElement | any;\n @Event() click: EventEmitter<\n Parameters<Required<DBButtonProps>[\"onClick\"]>[number]\n > | void;\n @Prop() id: DBButtonProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBButtonProps[\"className\"];\n @Prop() type: DBButtonProps[\"type\"];\n @Prop() disabled: DBButtonProps[\"disabled\"];\n @Prop() label: DBButtonProps[\"label\"];\n @Prop() icon: DBButtonProps[\"icon\"];\n @Prop() showIcon: DBButtonProps[\"showIcon\"];\n @Prop() size: DBButtonProps[\"size\"];\n @Prop() state: DBButtonProps[\"state\"];\n @Prop() width: DBButtonProps[\"width\"];\n @Prop() variant: DBButtonProps[\"variant\"];\n @Prop() noText: DBButtonProps[\"noText\"];\n @Prop() name: DBButtonProps[\"name\"];\n @Prop() form: DBButtonProps[\"form\"];\n @Prop() value: DBButtonProps[\"value\"];\n @Prop() describedbyid: DBButtonProps[\"describedbyid\"];\n @Prop() ariaexpanded: DBButtonProps[\"ariaexpanded\"];\n @Prop() ariapressed: DBButtonProps[\"ariapressed\"];\n @Prop() text: DBButtonProps[\"text\"];\n\n handleClick(event: ClickEvent<HTMLButtonElement>) {\n if (this.click) {\n this.click.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-button\");\n }\n\n render() {\n return (\n <button\n class={cls(\"db-button\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id}\n type={this.type || \"button\"}\n disabled={getBoolean(this.disabled, \"disabled\")}\n aria-label={this.label}\n data-icon={this.icon}\n data-hide-icon={getHideProp(this.showIcon)}\n data-size={this.size}\n data-state={this.state}\n data-width={this.width}\n data-variant={this.variant}\n data-no-text={getBooleanAsString(this.noText)}\n name={this.name}\n form={this.form}\n value={this.value}\n aria-describedby={this.describedbyid}\n aria-expanded={this.ariaexpanded}\n aria-pressed={this.ariapressed}\n onClick={(event) => this.handleClick(event)}\n >\n {this.text ? this.text : <slot></slot>}\n </button>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -8,7 +8,6 @@ const DBCard = class {
8
8
  }
9
9
  handleClick(event) {
10
10
  if (this.click) {
11
- event.stopPropagation();
12
11
  this.click.emit(event);
13
12
  }
14
13
  }
@@ -48,9 +47,9 @@ const DBCard = class {
48
47
  this.enableAttributePassing(this._ref, "db-card");
49
48
  }
50
49
  render() {
51
- return (h("div", { key: '19c734422f8cecf6b620e6aa443103354c677373', class: cls("db-card", this.className), ref: (el) => {
50
+ return (h("div", { key: 'dfc5004a3cc98b94ccd3ff6c930f231ef39c918e', class: cls("db-card", this.className), ref: (el) => {
52
51
  this._ref = el;
53
- }, id: this.id, "data-behavior": this.behavior, "data-elevation-level": this.elevationLevel, "data-spacing": this.spacing, role: this.behavior === "interactive" ? "button" : undefined, tabIndex: this.behavior === "interactive" ? 0 : undefined, onClick: (event) => this.handleClick(event) }, h("slot", { key: '98e2d58d6d20af07f0dbe027266917533ddb201c' })));
52
+ }, id: this.id, "data-behavior": this.behavior, "data-elevation-level": this.elevationLevel, "data-spacing": this.spacing, role: this.behavior === "interactive" ? "button" : undefined, tabIndex: this.behavior === "interactive" ? 0 : undefined, onClick: (event) => this.handleClick(event) }, h("slot", { key: '6c73a087dab46b17c01e48eec340788f3a10bf63' })));
54
53
  }
55
54
  };
56
55
 
@@ -1 +1 @@
1
- {"version":3,"file":"db-card.entry.js","sources":["src/components/card/card.tsx"],"sourcesContent":["import type { DBCardProps, DBCardState } from \"./model\";\nimport { cls } from \"../../utils\";\nimport { ClickEvent } from \"../../shared/model\";\n\nimport {\n Component,\n h,\n Fragment,\n Event,\n EventEmitter,\n Prop,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-card\",\n})\nexport class DBCard {\n private _ref!: HTMLDivElement | any;\n @Event() click: EventEmitter<\n Parameters<Required<DBCardProps>[\"onClick\"]>[number]\n > | void;\n @Prop() id: DBCardProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBCardProps[\"className\"];\n @Prop() behavior: DBCardProps[\"behavior\"];\n @Prop() elevationLevel: DBCardProps[\"elevationLevel\"];\n @Prop() spacing: DBCardProps[\"spacing\"];\n\n handleClick(event: ClickEvent<HTMLElement>) {\n if (this.click) {\n event.stopPropagation();\n this.click.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-card\");\n }\n\n render() {\n return (\n <div\n class={cls(\"db-card\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id}\n data-behavior={this.behavior}\n data-elevation-level={this.elevationLevel}\n data-spacing={this.spacing}\n role={this.behavior === \"interactive\" ? \"button\" : undefined}\n tabIndex={this.behavior === \"interactive\" ? 0 : undefined}\n onClick={(event) => this.handleClick(event)}\n >\n <slot></slot>\n </div>\n );\n }\n}\n"],"names":[],"mappings":";;;MAqBa,MAAM,GAAA,MAAA;;;;;AAWjB,IAAA,WAAW,CAAC,KAA8B,EAAA;AACxC,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,KAAK,CAAC,eAAe,EAAE;AACvB,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;;;AAI1B;;;;AAIG;IACK,sBAAsB,CAC5B,OAA2B,EAC3B,qBAA6B,EAAA;QAE7B,MAAM,MAAM,GAAG,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,OAAO,CAAC,qBAAqB,CAAC;AACtD,QAAA,IAAI,OAAO,IAAI,MAAM,EAAE;AACrB,YAAA,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU;AACpC,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC1C,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/B,gBAAA,IACE,IAAI;AACJ,qBAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAChE;oBACA,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;AAC3C,oBAAA,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;;gBAEnC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;oBACjC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;AACtD,oBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;oBACvD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC;oBAClD,OAAO,CAAC,YAAY,CAClB,IAAI,CAAC,IAAI,EACT,CAAG,EAAA,YAAY,GAAG,CAAG,EAAA,YAAY,CAAG,CAAA,CAAA,GAAG,EAAE,CAAG,EAAA,KAAK,CAAE,CAAA,CACpD;oBACD,IAAI,cAAc,EAAE;;AAElB,wBAAA,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC;;yBACnC;AACL,wBAAA,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;IAO3C,gBAAgB,GAAA;QACd,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;;IAGnD,MAAM,GAAA;QACJ,QACE,CACE,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EACrC,GAAG,EAAE,CAAC,EAAO,KAAI;AACf,gBAAA,IAAI,CAAC,IAAI,GAAG,EAAE;AAChB,aAAC,EACD,EAAE,EAAE,IAAI,CAAC,EAAE,EACI,eAAA,EAAA,IAAI,CAAC,QAAQ,EACN,sBAAA,EAAA,IAAI,CAAC,cAAc,EAC3B,cAAA,EAAA,IAAI,CAAC,OAAO,EAC1B,IAAI,EAAE,IAAI,CAAC,QAAQ,KAAK,aAAa,GAAG,QAAQ,GAAG,SAAS,EAC5D,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,aAAa,GAAG,CAAC,GAAG,SAAS,EACzD,OAAO,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAA,EAE3C,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;"}
1
+ {"version":3,"file":"db-card.entry.js","sources":["src/components/card/card.tsx"],"sourcesContent":["import type { DBCardProps, DBCardState } from \"./model\";\nimport { cls } from \"../../utils\";\nimport { ClickEvent } from \"../../shared/model\";\n\nimport {\n Component,\n h,\n Fragment,\n Event,\n EventEmitter,\n Prop,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-card\",\n})\nexport class DBCard {\n private _ref!: HTMLDivElement | any;\n @Event() click: EventEmitter<\n Parameters<Required<DBCardProps>[\"onClick\"]>[number]\n > | void;\n @Prop() id: DBCardProps[\"id\"];\n @Prop({attribute: \"classname\"}) className: DBCardProps[\"className\"];\n @Prop() behavior: DBCardProps[\"behavior\"];\n @Prop() elevationLevel: DBCardProps[\"elevationLevel\"];\n @Prop() spacing: DBCardProps[\"spacing\"];\n\n handleClick(event: ClickEvent<HTMLElement>) {\n if (this.click) {\n this.click.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-card\");\n }\n\n render() {\n return (\n <div\n class={cls(\"db-card\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this.id}\n data-behavior={this.behavior}\n data-elevation-level={this.elevationLevel}\n data-spacing={this.spacing}\n role={this.behavior === \"interactive\" ? \"button\" : undefined}\n tabIndex={this.behavior === \"interactive\" ? 0 : undefined}\n onClick={(event) => this.handleClick(event)}\n >\n <slot></slot>\n </div>\n );\n }\n}\n"],"names":[],"mappings":";;;MAqBa,MAAM,GAAA,MAAA;;;;;AAWjB,IAAA,WAAW,CAAC,KAA8B,EAAA;AACxC,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;AACd,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;;;AAI1B;;;;AAIG;IACK,sBAAsB,CAC5B,OAA2B,EAC3B,qBAA6B,EAAA;QAE7B,MAAM,MAAM,GAAG,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,OAAO,CAAC,qBAAqB,CAAC;AACtD,QAAA,IAAI,OAAO,IAAI,MAAM,EAAE;AACrB,YAAA,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU;AACpC,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC1C,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/B,gBAAA,IACE,IAAI;AACJ,qBAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAChE;oBACA,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;AAC3C,oBAAA,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;;gBAEnC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;oBACjC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;AACtD,oBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;oBACvD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC;oBAClD,OAAO,CAAC,YAAY,CAClB,IAAI,CAAC,IAAI,EACT,CAAG,EAAA,YAAY,GAAG,CAAG,EAAA,YAAY,CAAG,CAAA,CAAA,GAAG,EAAE,CAAG,EAAA,KAAK,CAAE,CAAA,CACpD;oBACD,IAAI,cAAc,EAAE;;AAElB,wBAAA,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC;;yBACnC;AACL,wBAAA,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;IAO3C,gBAAgB,GAAA;QACd,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;;IAGnD,MAAM,GAAA;QACJ,QACE,CACE,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EACrC,GAAG,EAAE,CAAC,EAAO,KAAI;AACf,gBAAA,IAAI,CAAC,IAAI,GAAG,EAAE;AAChB,aAAC,EACD,EAAE,EAAE,IAAI,CAAC,EAAE,EACI,eAAA,EAAA,IAAI,CAAC,QAAQ,EACN,sBAAA,EAAA,IAAI,CAAC,cAAc,EAC3B,cAAA,EAAA,IAAI,CAAC,OAAO,EAC1B,IAAI,EAAE,IAAI,CAAC,QAAQ,KAAK,aAAa,GAAG,QAAQ,GAAG,SAAS,EAC5D,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,aAAa,GAAG,CAAC,GAAG,SAAS,EACzD,OAAO,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAA,EAE3C,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;"}
@@ -52,20 +52,17 @@ const DBCheckbox = class {
52
52
  }
53
53
  }
54
54
  handleChange(event) {
55
- event.stopPropagation();
56
55
  if (this.change) {
57
56
  this.change.emit(event);
58
57
  }
59
58
  this.handleValidation();
60
59
  }
61
60
  handleBlur(event) {
62
- event.stopPropagation();
63
61
  if (this.blur) {
64
62
  this.blur.emit(event);
65
63
  }
66
64
  }
67
65
  handleFocus(event) {
68
- event.stopPropagation();
69
66
  if (this.focus) {
70
67
  this.focus.emit(event);
71
68
  }
@@ -167,9 +164,9 @@ const DBCheckbox = class {
167
164
  }
168
165
  render() {
169
166
  var _a;
170
- return (h("div", { key: 'f92f4ce6f0b52bb6070fe6e20733ecd707451e96', class: cls("db-checkbox", this.className), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel) }, h("label", { key: '990945de43f9762b1df03675ef6359309af74e12', htmlFor: this._id }, h("input", { key: '936540fd8734a6dd0f36ee045fd6aeb8afd6da6d', type: "checkbox", "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, ref: (el) => {
167
+ return (h("div", { key: 'c767aa72ff67f8bf587192defae7eb03cedb95b8', class: cls("db-checkbox", this.className), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel) }, h("label", { key: '3769c1fef75b7605af5eea2eb55ecf564fae2a9b', htmlFor: this._id }, h("input", { key: '828715f192877772dc14e4492d2529c54131943f', type: "checkbox", "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, ref: (el) => {
171
168
  this._ref = el;
172
- }, id: this._id, name: this.name, checked: getBoolean(this.checked, "checked"), disabled: getBoolean(this.disabled, "disabled"), value: this.value, required: getBoolean(this.required, "required"), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), "aria-describedby": (_a = this.ariaDescribedBy) !== null && _a !== void 0 ? _a : this._descByIds }), this.label ? this.label : h("slot", null)), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '8ac0628f46e2c5efbad5f06cae43bc5094cff5e4', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '2ab1e7a4747afb69201d91b84a9d9c21c8a9c0ac', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
169
+ }, id: this._id, name: this.name, checked: getBoolean(this.checked, "checked"), disabled: getBoolean(this.disabled, "disabled"), value: this.value, required: getBoolean(this.required, "required"), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), "aria-describedby": (_a = this.ariaDescribedBy) !== null && _a !== void 0 ? _a : this._descByIds }), this.label ? this.label : h("slot", null)), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '9361cead7e186bc0907468d590a102c92dffa176', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '0f6c2e893a12bc54377a32f75723743ab5782309', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
173
170
  }
174
171
  static get watchers() { return {
175
172
  "_ref": ["watch0", "watch2", "watch3"],
@@ -1 +1 @@
1
- {"version":3,"file":"db-checkbox.entry.js","sources":["src/components/checkbox/checkbox.tsx"],"sourcesContent":["import { DBCheckboxProps, DBCheckboxState } from \"./model\";\nimport {\n DEFAULT_INVALID_MESSAGE,\n DEFAULT_INVALID_MESSAGE_ID_SUFFIX,\n DEFAULT_MESSAGE_ID_SUFFIX,\n DEFAULT_VALID_MESSAGE,\n DEFAULT_VALID_MESSAGE_ID_SUFFIX,\n} from \"../../shared/constants\";\nimport { ChangeEvent, InteractionEvent } from \"../../shared/model\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport { DBInfotext } from \"../infotext/infotext\";\nimport {\n cls,\n delay,\n getBoolean,\n getHideProp,\n hasVoiceOver,\n stringPropVisible,\n uuid,\n} from \"../../utils\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-checkbox\",\n})\nexport class DBCheckbox {\n private _ref!: HTMLInputElement | any;\n @Prop() id: DBCheckboxProps[\"id\"];\n @Prop() invalidMessage: DBCheckboxProps[\"invalidMessage\"];\n @Prop() message: DBCheckboxProps[\"message\"];\n @Prop() showMessage: DBCheckboxProps[\"showMessage\"];\n @Prop() indeterminate: DBCheckboxProps[\"indeterminate\"];\n @Prop() checked: DBCheckboxProps[\"checked\"];\n @Prop() validMessage: DBCheckboxProps[\"validMessage\"];\n @Prop() validation: DBCheckboxProps[\"validation\"];\n @Prop() required: DBCheckboxProps[\"required\"];\n @Event() change: EventEmitter<\n Parameters<Required<DBCheckboxProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBCheckboxProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBCheckboxProps>[\"onFocus\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBCheckboxProps[\"className\"];\n @Prop() size: DBCheckboxProps[\"size\"];\n @Prop() showLabel: DBCheckboxProps[\"showLabel\"];\n @Prop() name: DBCheckboxProps[\"name\"];\n @Prop() disabled: DBCheckboxProps[\"disabled\"];\n @Prop() value: DBCheckboxProps[\"value\"];\n @Prop() ariaDescribedBy: DBCheckboxProps[\"ariaDescribedBy\"];\n @Prop() label: DBCheckboxProps[\"label\"];\n @Prop() messageIcon: DBCheckboxProps[\"messageIcon\"];\n @State() initialized = false;\n @State() _id = undefined;\n @State() _messageId = undefined;\n @State() _validMessageId = undefined;\n @State() _invalidMessageId = undefined;\n @State() _invalidMessage = undefined;\n @State() _descByIds = \"\";\n @State() _voiceOverFallback = \"\";\n\n hasValidState() {\n return !!(this.validMessage ?? this.validation === \"valid\");\n }\n handleValidation() {\n /* For a11y reasons we need to map the correct message with the checkbox */\n if (!this._ref?.validity.valid || this.validation === \"invalid\") {\n this._descByIds = this._invalidMessageId;\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this._invalidMessage;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (\n this.hasValidState() &&\n this._ref?.validity.valid &&\n this.required\n ) {\n this._descByIds = this._validMessageId;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this.validMessage ?? DEFAULT_VALID_MESSAGE;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = this._messageId;\n } else {\n this._descByIds = \"\";\n }\n }\n handleChange(event: ChangeEvent<HTMLInputElement>) {\n event.stopPropagation();\n if (this.change) {\n this.change.emit(event);\n }\n this.handleValidation();\n }\n handleBlur(event: InteractionEvent<HTMLInputElement> | any) {\n event.stopPropagation();\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLInputElement> | any) {\n event.stopPropagation();\n if (this.focus) {\n this.focus.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLInputElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n }\n\n @Watch(\"_ref\")\n @Watch(\"invalidMessage\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this._id) {\n const messageId = this._id + DEFAULT_MESSAGE_ID_SUFFIX;\n this._messageId = messageId;\n this._validMessageId = this._id + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = this._id + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = messageId;\n }\n }\n }\n\n @Watch(\"_id\")\n watch1() {\n this.watch1Fn();\n }\n\n watch2Fn() {\n if (this._ref) {\n if (this.indeterminate !== undefined) {\n // When indeterminate is set, the value of the checked prop only impacts the form submitted values.\n // It has no accessibility or UX implications. (https://mui.com/material-ui/react-checkbox/)\n this._ref.indeterminate = !!getBoolean(this.indeterminate);\n }\n }\n }\n\n @Watch(\"initialized\")\n @Watch(\"_ref\")\n @Watch(\"indeterminate\")\n watch2() {\n this.watch2Fn();\n }\n\n watch3Fn() {\n if (this.initialized && this._ref) {\n // in angular this must be set via native element\n if (this.checked != undefined) {\n this._ref.checked = !!getBoolean(this.checked);\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"initialized\")\n @Watch(\"_ref\")\n @Watch(\"checked\")\n watch3() {\n this.watch3Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-checkbox\");\n this.initialized = true;\n const mId = this.id ?? `checkbox-${uuid()}`;\n this._id = mId;\n this._messageId = mId + DEFAULT_MESSAGE_ID_SUFFIX;\n this._validMessageId = mId + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = mId + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._invalidMessage = this.invalidMessage || DEFAULT_INVALID_MESSAGE;\n this.watch0Fn();\n this.watch1Fn();\n this.watch2Fn();\n this.watch3Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-checkbox\", this.className)}\n data-size={this.size}\n data-hide-label={getHideProp(this.showLabel)}\n >\n <label htmlFor={this._id}>\n <input\n type=\"checkbox\"\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n name={this.name}\n checked={getBoolean(this.checked, \"checked\")}\n disabled={getBoolean(this.disabled, \"disabled\")}\n value={this.value}\n required={getBoolean(this.required, \"required\")}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n aria-describedby={this.ariaDescribedBy ?? this._descByIds}\n />\n {this.label ? this.label : <slot></slot>}\n </label>\n {stringPropVisible(this.message, this.showMessage) ? (\n <db-infotext\n size=\"small\"\n icon={this.messageIcon}\n id={this._messageId}\n >\n {this.message}\n </db-infotext>\n ) : null}\n {this.hasValidState() ? (\n <db-infotext\n size=\"small\"\n semantic=\"successful\"\n id={this._validMessageId}\n >\n {this.validMessage || DEFAULT_VALID_MESSAGE}\n </db-infotext>\n ) : null}\n <db-infotext\n size=\"small\"\n semantic=\"critical\"\n id={this._invalidMessageId}\n >\n {this._invalidMessage}\n </db-infotext>\n <span data-visually-hidden=\"true\" role=\"status\">\n {this._voiceOverFallback}\n </span>\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db-checkbox.entry.js","sources":["src/components/checkbox/checkbox.tsx"],"sourcesContent":["import { DBCheckboxProps, DBCheckboxState } from \"./model\";\nimport {\n DEFAULT_INVALID_MESSAGE,\n DEFAULT_INVALID_MESSAGE_ID_SUFFIX,\n DEFAULT_MESSAGE_ID_SUFFIX,\n DEFAULT_VALID_MESSAGE,\n DEFAULT_VALID_MESSAGE_ID_SUFFIX,\n} from \"../../shared/constants\";\nimport { ChangeEvent, InteractionEvent } from \"../../shared/model\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport { DBInfotext } from \"../infotext/infotext\";\nimport {\n cls,\n delay,\n getBoolean,\n getHideProp,\n hasVoiceOver,\n stringPropVisible,\n uuid,\n} from \"../../utils\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-checkbox\",\n})\nexport class DBCheckbox {\n private _ref!: HTMLInputElement | any;\n @Prop() id: DBCheckboxProps[\"id\"];\n @Prop() invalidMessage: DBCheckboxProps[\"invalidMessage\"];\n @Prop() message: DBCheckboxProps[\"message\"];\n @Prop() showMessage: DBCheckboxProps[\"showMessage\"];\n @Prop() indeterminate: DBCheckboxProps[\"indeterminate\"];\n @Prop() checked: DBCheckboxProps[\"checked\"];\n @Prop() validMessage: DBCheckboxProps[\"validMessage\"];\n @Prop() validation: DBCheckboxProps[\"validation\"];\n @Prop() required: DBCheckboxProps[\"required\"];\n @Event() change: EventEmitter<\n Parameters<Required<DBCheckboxProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBCheckboxProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBCheckboxProps>[\"onFocus\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBCheckboxProps[\"className\"];\n @Prop() size: DBCheckboxProps[\"size\"];\n @Prop() showLabel: DBCheckboxProps[\"showLabel\"];\n @Prop() name: DBCheckboxProps[\"name\"];\n @Prop() disabled: DBCheckboxProps[\"disabled\"];\n @Prop() value: DBCheckboxProps[\"value\"];\n @Prop() ariaDescribedBy: DBCheckboxProps[\"ariaDescribedBy\"];\n @Prop() label: DBCheckboxProps[\"label\"];\n @Prop() messageIcon: DBCheckboxProps[\"messageIcon\"];\n @State() initialized = false;\n @State() _id = undefined;\n @State() _messageId = undefined;\n @State() _validMessageId = undefined;\n @State() _invalidMessageId = undefined;\n @State() _invalidMessage = undefined;\n @State() _descByIds = \"\";\n @State() _voiceOverFallback = \"\";\n\n hasValidState() {\n return !!(this.validMessage ?? this.validation === \"valid\");\n }\n handleValidation() {\n /* For a11y reasons we need to map the correct message with the checkbox */\n if (!this._ref?.validity.valid || this.validation === \"invalid\") {\n this._descByIds = this._invalidMessageId;\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this._invalidMessage;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (\n this.hasValidState() &&\n this._ref?.validity.valid &&\n this.required\n ) {\n this._descByIds = this._validMessageId;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this.validMessage ?? DEFAULT_VALID_MESSAGE;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = this._messageId;\n } else {\n this._descByIds = \"\";\n }\n }\n handleChange(event: ChangeEvent<HTMLInputElement>) {\n if (this.change) {\n this.change.emit(event);\n }\n this.handleValidation();\n }\n handleBlur(event: InteractionEvent<HTMLInputElement> | any) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLInputElement> | any) {\n if (this.focus) {\n this.focus.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLInputElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n }\n\n @Watch(\"_ref\")\n @Watch(\"invalidMessage\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this._id) {\n const messageId = this._id + DEFAULT_MESSAGE_ID_SUFFIX;\n this._messageId = messageId;\n this._validMessageId = this._id + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = this._id + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = messageId;\n }\n }\n }\n\n @Watch(\"_id\")\n watch1() {\n this.watch1Fn();\n }\n\n watch2Fn() {\n if (this._ref) {\n if (this.indeterminate !== undefined) {\n // When indeterminate is set, the value of the checked prop only impacts the form submitted values.\n // It has no accessibility or UX implications. (https://mui.com/material-ui/react-checkbox/)\n this._ref.indeterminate = !!getBoolean(this.indeterminate);\n }\n }\n }\n\n @Watch(\"initialized\")\n @Watch(\"_ref\")\n @Watch(\"indeterminate\")\n watch2() {\n this.watch2Fn();\n }\n\n watch3Fn() {\n if (this.initialized && this._ref) {\n // in angular this must be set via native element\n if (this.checked != undefined) {\n this._ref.checked = !!getBoolean(this.checked);\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"initialized\")\n @Watch(\"_ref\")\n @Watch(\"checked\")\n watch3() {\n this.watch3Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-checkbox\");\n this.initialized = true;\n const mId = this.id ?? `checkbox-${uuid()}`;\n this._id = mId;\n this._messageId = mId + DEFAULT_MESSAGE_ID_SUFFIX;\n this._validMessageId = mId + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = mId + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._invalidMessage = this.invalidMessage || DEFAULT_INVALID_MESSAGE;\n this.watch0Fn();\n this.watch1Fn();\n this.watch2Fn();\n this.watch3Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-checkbox\", this.className)}\n data-size={this.size}\n data-hide-label={getHideProp(this.showLabel)}\n >\n <label htmlFor={this._id}>\n <input\n type=\"checkbox\"\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n name={this.name}\n checked={getBoolean(this.checked, \"checked\")}\n disabled={getBoolean(this.disabled, \"disabled\")}\n value={this.value}\n required={getBoolean(this.required, \"required\")}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n aria-describedby={this.ariaDescribedBy ?? this._descByIds}\n />\n {this.label ? this.label : <slot></slot>}\n </label>\n {stringPropVisible(this.message, this.showMessage) ? (\n <db-infotext\n size=\"small\"\n icon={this.messageIcon}\n id={this._messageId}\n >\n {this.message}\n </db-infotext>\n ) : null}\n {this.hasValidState() ? (\n <db-infotext\n size=\"small\"\n semantic=\"successful\"\n id={this._validMessageId}\n >\n {this.validMessage || DEFAULT_VALID_MESSAGE}\n </db-infotext>\n ) : null}\n <db-infotext\n size=\"small\"\n semantic=\"critical\"\n id={this._invalidMessageId}\n >\n {this._invalidMessage}\n </db-infotext>\n <span data-visually-hidden=\"true\" role=\"status\">\n {this._voiceOverFallback}\n </span>\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}