@7pmlabs/design-system 0.3.3 → 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/README.md +6 -6
  2. package/dist/design-system100.js +1 -1
  3. package/dist/design-system100.js.map +1 -1
  4. package/dist/design-system100.mjs +24 -17
  5. package/dist/design-system100.mjs.map +1 -1
  6. package/dist/design-system101.js +1 -5
  7. package/dist/design-system101.js.map +1 -1
  8. package/dist/design-system101.mjs +18 -10
  9. package/dist/design-system101.mjs.map +1 -1
  10. package/dist/design-system105.js +1 -1
  11. package/dist/design-system105.js.map +1 -1
  12. package/dist/design-system105.mjs +4 -2
  13. package/dist/design-system105.mjs.map +1 -1
  14. package/dist/design-system106.js +1 -1
  15. package/dist/design-system106.js.map +1 -1
  16. package/dist/design-system106.mjs +8 -2
  17. package/dist/design-system106.mjs.map +1 -1
  18. package/dist/design-system107.js +1 -1
  19. package/dist/design-system107.js.map +1 -1
  20. package/dist/design-system107.mjs +7 -4
  21. package/dist/design-system107.mjs.map +1 -1
  22. package/dist/design-system108.js +1 -1
  23. package/dist/design-system108.js.map +1 -1
  24. package/dist/design-system108.mjs +2 -8
  25. package/dist/design-system108.mjs.map +1 -1
  26. package/dist/design-system109.js +1 -1
  27. package/dist/design-system109.js.map +1 -1
  28. package/dist/design-system109.mjs +2 -7
  29. package/dist/design-system109.mjs.map +1 -1
  30. package/dist/design-system11.js +1 -1
  31. package/dist/design-system11.js.map +1 -1
  32. package/dist/design-system11.mjs +41 -47
  33. package/dist/design-system11.mjs.map +1 -1
  34. package/dist/design-system110.js +1 -1
  35. package/dist/design-system110.mjs +1 -1
  36. package/dist/design-system112.js +1 -1
  37. package/dist/design-system112.mjs +1 -1
  38. package/dist/design-system12.js +7 -1
  39. package/dist/design-system12.js.map +1 -1
  40. package/dist/design-system12.mjs +83 -72
  41. package/dist/design-system12.mjs.map +1 -1
  42. package/dist/design-system13.js +7 -1
  43. package/dist/design-system13.js.map +1 -1
  44. package/dist/design-system13.mjs +101 -90
  45. package/dist/design-system13.mjs.map +1 -1
  46. package/dist/design-system14.js +1 -1
  47. package/dist/design-system14.js.map +1 -1
  48. package/dist/design-system14.mjs +46 -42
  49. package/dist/design-system14.mjs.map +1 -1
  50. package/dist/design-system142.js +1 -1
  51. package/dist/design-system142.js.map +1 -1
  52. package/dist/design-system142.mjs +7 -11
  53. package/dist/design-system142.mjs.map +1 -1
  54. package/dist/design-system143.js +1 -1
  55. package/dist/design-system143.js.map +1 -1
  56. package/dist/design-system143.mjs +9 -7
  57. package/dist/design-system143.mjs.map +1 -1
  58. package/dist/design-system144.js +1 -1
  59. package/dist/design-system144.js.map +1 -1
  60. package/dist/design-system144.mjs +11 -9
  61. package/dist/design-system144.mjs.map +1 -1
  62. package/dist/design-system148.js +1 -1
  63. package/dist/design-system148.mjs +1 -1
  64. package/dist/design-system149.js +1 -1
  65. package/dist/design-system149.mjs +1 -1
  66. package/dist/design-system152.js +1 -1
  67. package/dist/design-system152.mjs +1 -1
  68. package/dist/design-system153.js +1 -1
  69. package/dist/design-system153.mjs +1 -1
  70. package/dist/design-system17.js +1 -1
  71. package/dist/design-system17.js.map +1 -1
  72. package/dist/design-system17.mjs +117 -106
  73. package/dist/design-system17.mjs.map +1 -1
  74. package/dist/design-system18.js +1 -1
  75. package/dist/design-system18.js.map +1 -1
  76. package/dist/design-system18.mjs +3 -3
  77. package/dist/design-system18.mjs.map +1 -1
  78. package/dist/design-system19.js +2 -2
  79. package/dist/design-system19.js.map +1 -1
  80. package/dist/design-system19.mjs +76 -64
  81. package/dist/design-system19.mjs.map +1 -1
  82. package/dist/design-system20.js +1 -1
  83. package/dist/design-system20.mjs +1 -1
  84. package/dist/design-system21.js +1 -1
  85. package/dist/design-system21.js.map +1 -1
  86. package/dist/design-system21.mjs +107 -94
  87. package/dist/design-system21.mjs.map +1 -1
  88. package/dist/design-system22.js +1 -1
  89. package/dist/design-system22.mjs +1 -1
  90. package/dist/design-system24.js +1 -1
  91. package/dist/design-system24.mjs +2 -2
  92. package/dist/design-system25.js +1 -1
  93. package/dist/design-system25.mjs +1 -1
  94. package/dist/design-system40.js +1 -1
  95. package/dist/design-system40.js.map +1 -1
  96. package/dist/design-system40.mjs +79 -75
  97. package/dist/design-system40.mjs.map +1 -1
  98. package/dist/design-system41.js +1 -1
  99. package/dist/design-system41.js.map +1 -1
  100. package/dist/design-system41.mjs +53 -34
  101. package/dist/design-system41.mjs.map +1 -1
  102. package/dist/design-system46.js +1 -1
  103. package/dist/design-system46.mjs +1 -1
  104. package/dist/design-system50.js +1 -1
  105. package/dist/design-system50.js.map +1 -1
  106. package/dist/design-system50.mjs +83 -67
  107. package/dist/design-system50.mjs.map +1 -1
  108. package/dist/design-system55.js +1 -1
  109. package/dist/design-system55.mjs +1 -1
  110. package/dist/design-system77.js +1 -1
  111. package/dist/design-system77.mjs +1 -1
  112. package/dist/design-system85.js +1 -1
  113. package/dist/design-system85.js.map +1 -1
  114. package/dist/design-system85.mjs +3 -3
  115. package/dist/design-system90.js +1 -1
  116. package/dist/design-system90.js.map +1 -1
  117. package/dist/design-system90.mjs +1 -1
  118. package/dist/design-system93.js +5 -1
  119. package/dist/design-system93.js.map +1 -1
  120. package/dist/design-system93.mjs +10 -2172
  121. package/dist/design-system93.mjs.map +1 -1
  122. package/dist/design-system94.js +1 -1
  123. package/dist/design-system94.js.map +1 -1
  124. package/dist/design-system94.mjs +17 -1103
  125. package/dist/design-system94.mjs.map +1 -1
  126. package/dist/design-system95.js +1 -1
  127. package/dist/design-system95.js.map +1 -1
  128. package/dist/design-system95.mjs +2172 -17
  129. package/dist/design-system95.mjs.map +1 -1
  130. package/dist/design-system96.js +1 -1
  131. package/dist/design-system96.js.map +1 -1
  132. package/dist/design-system96.mjs +1103 -68
  133. package/dist/design-system96.mjs.map +1 -1
  134. package/dist/design-system97.js +1 -1
  135. package/dist/design-system97.js.map +1 -1
  136. package/dist/design-system97.mjs +68 -6
  137. package/dist/design-system97.mjs.map +1 -1
  138. package/dist/design-system98.js +1 -1
  139. package/dist/design-system98.js.map +1 -1
  140. package/dist/design-system98.mjs +5 -24
  141. package/dist/design-system98.mjs.map +1 -1
  142. package/dist/style.css +1 -1
  143. package/dist/types/components/BButton.vue.d.ts +2 -28
  144. package/dist/types/components/BTextField.vue.d.ts +10 -2
  145. package/dist/types/components/BToast/BToastItem.vue.d.ts +9 -12
  146. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"design-system19.mjs","sources":["../src/components/BPagination.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, vShow as _vShow, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-inline-flex ds-space-x-1\" }\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa-solid fa-angle-left\" }, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa-solid fa-angle-right\" }, null, -1)\nconst _hoisted_5 = [\n _hoisted_4\n]\n\nimport { BPaginationSize } from '@/constants/Enums';\nimport { computed } from 'vue';\n\n/**\n * Props\n */\nexport interface BPaginationProps {\n /**\n * Start by 1.\n */\n modelValue: number;\n numberOfPages: number;\n /**\n * Bordered buttons.\n */\n border?: boolean;\n /**\n * Transparent background buttons.\n */\n transparent?: boolean;\n size?: `${BPaginationSize}`;\n}\nconst First = 1;\nconst EllipsisText = '...';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BPagination',\n props: {\n modelValue: {},\n numberOfPages: {},\n border: { type: Boolean, default: false },\n transparent: { type: Boolean, default: false },\n size: { default: BPaginationSize.Medium }\n },\n emits: [\"change\", \"update:modelValue\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst value = computed({\n get() {\n return props.modelValue + 1;\n },\n set(val: number) {\n emit('update:modelValue', val - 1);\n },\n});\nconst paginationItemClass = computed(() => {\n let result = `\n ds-flex ds-items-center ds-justify-center\n ds-rounded-lg `;\n\n if (props.border) {\n result += 'ds-border ds-border-gray-300 ';\n }\n\n switch (props.size) {\n case BPaginationSize.Small:\n result += `ds-w-8 ds-h-8 `;\n break;\n case BPaginationSize.Medium:\n default:\n result += `ds-w-10 ds-h-10 `;\n break;\n }\n\n return result;\n});\n\n/**\n * Methods\n */\nconst clickPage = (page: number) => {\n value.value = page;\n // Emitted when page changes via user interaction\n emit('change', value.value);\n};\nconst clickPrevious = () => {\n if (value.value > 1) {\n value.value--;\n emit('change', value.value);\n }\n};\nconst clickNext = () => {\n if (value.value < props.numberOfPages) {\n value.value++;\n emit('change', value.value);\n }\n};\nconst getActiveClass = (isActive: boolean = true) => {\n return isActive\n ? `ds-text-white ds-bg-primary-t `\n : `ds-text-gray-500 hover:ds-bg-primary-t/10 ${\n props.transparent ? 'ds-bg-transparent' : 'ds-bg-white'\n }`;\n};\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"nav\", null, [\n _createElementVNode(\"ul\", _hoisted_1, [\n _createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(false)], \"ds-ml-0 ds-cursor-pointer\"]),\n onClick: clickPrevious\n }, _hoisted_3, 2),\n _createElementVNode(\"li\", {\n class: _normalizeClass([[getActiveClass(value.value === 1), paginationItemClass.value], \"ds-cursor-pointer\"]),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (clickPage(1)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(First))\n ], 2),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value], \"ds-cursor-default\"])\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(EllipsisText))\n ], 2), [\n [_vShow, value.value > 3]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(false)], \"ds-cursor-pointer\"]),\n onClick: _cache[1] || (_cache[1] = ($event: any) => (clickPage(value.value - 1)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(value.value - 1), 1)\n ], 2), [\n [_vShow, value.value > 2]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass()], \"ds-cursor-pointer\"]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (clickPage(value.value)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(value.value), 1)\n ], 2), [\n [_vShow, value.value !== 1 && value.value !== _ctx.numberOfPages]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(false)], \"ds-cursor-pointer\"]),\n onClick: _cache[3] || (_cache[3] = ($event: any) => (clickPage(value.value + 1)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(value.value + 1), 1)\n ], 2), [\n [_vShow, value.value < _ctx.numberOfPages - 1]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value], \"ds-cursor-default\"])\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(EllipsisText))\n ], 2), [\n [_vShow, value.value < _ctx.numberOfPages - 2]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(value.value === _ctx.numberOfPages)], \"ds-cursor-pointer\"]),\n onClick: _cache[4] || (_cache[4] = ($event: any) => (clickPage(_ctx.numberOfPages)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(_ctx.numberOfPages), 1)\n ], 2), [\n [_vShow, _ctx.numberOfPages > 1]\n ]),\n _createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(false)], \"ds-cursor-pointer\"]),\n onClick: clickNext\n }, _hoisted_5, 2)\n ])\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","First","EllipsisText","_sfc_main","_defineComponent","BPaginationSize","__props","emit","props","value","computed","val","paginationItemClass","result","clickPage","page","clickPrevious","clickNext","getActiveClass","isActive","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_normalizeClass","$event","_toDisplayString","_withDirectives","_vShow"],"mappings":"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"}
1
+ {"version":3,"file":"design-system19.mjs","sources":["../src/components/BPagination.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, vShow as _vShow, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-inline-flex ds-space-x-1\" }\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"svg\", {\n class: \"ds-h-4 ds-w-4 ds-fill-black/80\",\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, [\n /*#__PURE__*/_createElementVNode(\"path\", { d: \"M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z\" })\n], -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\nconst _hoisted_4 = /*#__PURE__*/_createElementVNode(\"svg\", {\n class: \"ds-h-4 ds-w-4 ds-fill-black/80\",\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, [\n /*#__PURE__*/_createElementVNode(\"path\", { d: \"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z\" })\n], -1)\nconst _hoisted_5 = [\n _hoisted_4\n]\n\nimport { BPaginationSize } from '@/constants/Enums';\nimport { computed } from 'vue';\n\n/**\n * Props\n */\nexport interface BPaginationProps {\n /**\n * Start by 1.\n */\n modelValue: number;\n numberOfPages: number;\n /**\n * Bordered buttons.\n */\n border?: boolean;\n /**\n * Transparent background buttons.\n */\n transparent?: boolean;\n size?: `${BPaginationSize}`;\n}\nconst First = 1;\nconst EllipsisText = '...';\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BPagination',\n props: {\n modelValue: {},\n numberOfPages: {},\n border: { type: Boolean, default: false },\n transparent: { type: Boolean, default: false },\n size: { default: BPaginationSize.Medium }\n },\n emits: [\"change\", \"update:modelValue\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst value = computed({\n get() {\n return props.modelValue + 1;\n },\n set(val: number) {\n emit('update:modelValue', val - 1);\n },\n});\nconst paginationItemClass = computed(() => {\n let result = `\n ds-flex ds-items-center ds-justify-center\n ds-rounded-lg `;\n\n if (props.border) {\n result += 'ds-border ds-border-gray-300 ';\n }\n\n switch (props.size) {\n case BPaginationSize.Small:\n result += `ds-w-8 ds-h-8 `;\n break;\n case BPaginationSize.Medium:\n default:\n result += `ds-w-10 ds-h-10 `;\n break;\n }\n\n return result;\n});\n\n/**\n * Methods\n */\nconst clickPage = (page: number) => {\n value.value = page;\n // Emitted when page changes via user interaction\n emit('change', value.value);\n};\nconst clickPrevious = () => {\n if (value.value > 1) {\n value.value--;\n emit('change', value.value);\n }\n};\nconst clickNext = () => {\n if (value.value < props.numberOfPages) {\n value.value++;\n emit('change', value.value);\n }\n};\nconst getActiveClass = (isActive: boolean = true) => {\n return isActive\n ? `ds-text-white ds-bg-primary-t `\n : `ds-text-black/80 hover:ds-bg-primary-t/10 ${\n props.transparent ? 'ds-bg-transparent' : 'ds-bg-white'\n }`;\n};\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"nav\", null, [\n _createElementVNode(\"ul\", _hoisted_1, [\n _createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(false)], \"ds-ml-0 ds-cursor-pointer\"]),\n onClick: clickPrevious\n }, _hoisted_3, 2),\n _createElementVNode(\"li\", {\n class: _normalizeClass([[getActiveClass(value.value === 1), paginationItemClass.value], \"ds-cursor-pointer\"]),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (clickPage(1)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(First))\n ], 2),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value], \"ds-cursor-default\"])\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(EllipsisText))\n ], 2), [\n [_vShow, value.value > 3]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(false)], \"ds-cursor-pointer\"]),\n onClick: _cache[1] || (_cache[1] = ($event: any) => (clickPage(value.value - 1)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(value.value - 1), 1)\n ], 2), [\n [_vShow, value.value > 2]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass()], \"ds-cursor-pointer\"]),\n onClick: _cache[2] || (_cache[2] = ($event: any) => (clickPage(value.value)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(value.value), 1)\n ], 2), [\n [_vShow, value.value !== 1 && value.value !== _ctx.numberOfPages]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(false)], \"ds-cursor-pointer\"]),\n onClick: _cache[3] || (_cache[3] = ($event: any) => (clickPage(value.value + 1)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(value.value + 1), 1)\n ], 2), [\n [_vShow, value.value < _ctx.numberOfPages - 1]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value], \"ds-cursor-default\"])\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(EllipsisText))\n ], 2), [\n [_vShow, value.value < _ctx.numberOfPages - 2]\n ]),\n _withDirectives(_createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(value.value === _ctx.numberOfPages)], \"ds-cursor-pointer\"]),\n onClick: _cache[4] || (_cache[4] = ($event: any) => (clickPage(_ctx.numberOfPages)))\n }, [\n _createElementVNode(\"a\", null, _toDisplayString(_ctx.numberOfPages), 1)\n ], 2), [\n [_vShow, _ctx.numberOfPages > 1]\n ]),\n _createElementVNode(\"li\", {\n class: _normalizeClass([[paginationItemClass.value, getActiveClass(false)], \"ds-cursor-pointer\"]),\n onClick: clickNext\n }, _hoisted_5, 2)\n ])\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_createElementVNode","_hoisted_3","_hoisted_4","_hoisted_5","First","EllipsisText","_sfc_main","_defineComponent","BPaginationSize","__props","emit","props","value","computed","val","paginationItemClass","result","clickPage","page","clickPrevious","clickNext","getActiveClass","isActive","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","$event","_toDisplayString","_withDirectives","_vShow"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),f=require("./design-system30.js"),g=require("./design-system3.js"),b=require("./design-system48.js"),y=require("./design-system95.js"),B={class:"ds-flex ds-items-center"},h=["id","disabled","name","value"],q=["for"],V=e.defineComponent({__name:"BRadio",props:{inputId:{default:""},modelValue:{type:[String,Number,Boolean],default:""},inputName:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},labelCssClass:{default:""},hideDetails:{type:Boolean,default:!1},validationRules:{default:void 0},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""}},emits:["change","update:modelValue"],setup(o,{emit:r}){const l=o,{t:u}=b.useI18n(),n={validateRule:a=>!!(a&&a.trim()),errorMessage:()=>l.requiredErrorMessage||u("ds.global.field_required")},s=e.computed(()=>l.inputId||`id-${y()}`),t=e.computed({get(){return l.modelValue},set(a){r("update:modelValue",a)}}),i=e.computed(()=>{let a=[];return l.required&&a.push(n),l.validationRules&&(a=a.concat(l.validationRules)),a.length?a:void 0}),{validate:m,validationResult:c}=g.useValidationField(s.value,t,i.value),p=()=>{r("change"),m()};return(a,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",B,[e.withDirectives(e.createElementVNode("input",{id:s.value,"onUpdate:modelValue":d[0]||(d[0]=v=>t.value=v),class:e.normalizeClass([{"ds-cursor-not-allowed":a.disabled},"ds-h-6 ds-min-h-[1.5rem] ds-w-6 ds-min-w-[1.5rem] ds-border-gray-300 ds-bg-gray-100 ds-text-primary-t focus:ds-ring-primary-t"]),disabled:a.disabled,name:a.inputName,value:a.$attrs.value,type:"radio",onChange:p},null,42,h),[[e.vModelRadio,t.value]]),a.label?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass([a.labelCssClass,"ds-ml-2 ds-text-sm ds-font-medium ds-text-gray-900"]),for:s.value},e.toDisplayString(a.label),11,q)):e.createCommentVNode("",!0)]),a.hideDetails?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(f,{key:0,"error-message":e.unref(c).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))],64))}});module.exports=V;
1
+ "use strict";const e=require("vue"),f=require("./design-system30.js"),g=require("./design-system3.js"),b=require("./design-system48.js"),y=require("./design-system94.js"),B={class:"ds-flex ds-items-center"},h=["id","disabled","name","value"],q=["for"],V=e.defineComponent({__name:"BRadio",props:{inputId:{default:""},modelValue:{type:[String,Number,Boolean],default:""},inputName:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},labelCssClass:{default:""},hideDetails:{type:Boolean,default:!1},validationRules:{default:void 0},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""}},emits:["change","update:modelValue"],setup(o,{emit:r}){const l=o,{t:u}=b.useI18n(),n={validateRule:a=>!!(a&&a.trim()),errorMessage:()=>l.requiredErrorMessage||u("ds.global.field_required")},s=e.computed(()=>l.inputId||`id-${y()}`),t=e.computed({get(){return l.modelValue},set(a){r("update:modelValue",a)}}),i=e.computed(()=>{let a=[];return l.required&&a.push(n),l.validationRules&&(a=a.concat(l.validationRules)),a.length?a:void 0}),{validate:m,validationResult:c}=g.useValidationField(s.value,t,i.value),p=()=>{r("change"),m()};return(a,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",B,[e.withDirectives(e.createElementVNode("input",{id:s.value,"onUpdate:modelValue":d[0]||(d[0]=v=>t.value=v),class:e.normalizeClass([{"ds-cursor-not-allowed":a.disabled},"ds-h-6 ds-min-h-[1.5rem] ds-w-6 ds-min-w-[1.5rem] ds-border-gray-300 ds-bg-gray-100 ds-text-primary-t focus:ds-ring-primary-t"]),disabled:a.disabled,name:a.inputName,value:a.$attrs.value,type:"radio",onChange:p},null,42,h),[[e.vModelRadio,t.value]]),a.label?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass([a.labelCssClass,"ds-ml-2 ds-text-sm ds-font-medium ds-text-gray-900"]),for:s.value},e.toDisplayString(a.label),11,q)):e.createCommentVNode("",!0)]),a.hideDetails?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(f,{key:0,"error-message":e.unref(c).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))],64))}});module.exports=V;
2
2
  //# sourceMappingURL=design-system20.js.map
@@ -2,7 +2,7 @@ import { defineComponent as R, computed as t, openBlock as d, createElementBlock
2
2
  import N from "./design-system30.mjs";
3
3
  import { useValidationField as _ } from "./design-system3.mjs";
4
4
  import { useI18n as w } from "./design-system48.mjs";
5
- import D from "./design-system95.mjs";
5
+ import D from "./design-system94.mjs";
6
6
  const E = { class: "ds-flex ds-items-center" }, I = ["id", "disabled", "name", "value"], $ = ["for"], A = /* @__PURE__ */ R({
7
7
  __name: "BRadio",
8
8
  props: {
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),z=require("./design-system3.js"),p=require("./design-system6.js"),D=require("./design-system48.js"),F=require("./design-system30.js"),O=require("./design-system31.js"),U=require("./design-system40.js"),W=require("./design-system95.js"),j=["id","disabled"],H={key:0},A={key:1,class:"ds-text-black/[0.4]"},G=["id","data-cy","data-ut"],J={class:"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow"},K={class:"ds-py-1 ds-text-sm ds-text-black/[0.85]"},Q=["onClick"],X=e.defineComponent({__name:"BSelect",props:{inputId:{default:""},modelValue:{},label:{default:""},items:{},disabled:{type:Boolean,default:!1},placeholder:{default:""},valueCssClass:{default:""},menuCssClass:{default:""},validationRules:{default:void 0},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},hideDetails:{type:Boolean,default:!1},allowInput:{type:Boolean,default:!1}},emits:["change","open","close","change:input","update:modelValue"],setup(V,{expose:x,emit:d}){const t=V,r=e.ref(null),k=e.ref(null),u=e.ref(null),a=e.ref(!1),{t:q}=D.useI18n(),$={validateRule:s=>!!s,errorMessage:()=>t.requiredErrorMessage||q("ds.global.field_required")},b=e.ref(""),i=e.ref(),c=e.computed(()=>t.inputId||`id-${W()}`),n=e.computed({get(){return t.modelValue},set(s){d("update:modelValue",s)}}),M=e.computed(()=>{let s="ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between ";return s+=t.disabled?"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] ":"ds-bg-white ds-text-black/[0.85] ",s+=E.value.valid?"ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus ":"ds-border-error focus:ds-ring-1 focus:ds-ring-error ",s}),I=e.computed(()=>{let s=[];return t.required&&s.push($),t.validationRules&&(s=s.concat(t.validationRules)),s.length?s:void 0}),{validate:B,validationResult:E}=z.useValidationField(c.value,n,I.value);e.watch(a,s=>{s?(p.lockScrollBody(),P(),d("open")):(p.unlockScrollBody(),w(),d("close"))}),e.watch(n,()=>{y(),v()}),e.watch(()=>t.items,()=>{var s;n.value&&!((s=i.value)!=null&&s.value)&&(y(),v())},{deep:!0});const y=()=>{i.value=t.items.find(s=>s.value===n.value)},v=()=>{var s;t.allowInput&&(b.value=((s=i.value)==null?void 0:s.text)||"")},N=()=>{document.addEventListener("keydown",_)},_=s=>{s.key==="Escape"&&g()},S=()=>{document.addEventListener("click",C)},C=s=>{[r.value,u.value].some(f=>s.composedPath().includes(f))||g()},R=s=>{n.value=s.value,g(),d("change",s.value),e.nextTick(()=>{B()})},L=(s,l)=>{l.style.width=`${s.offsetWidth}px`},P=()=>{e.nextTick(()=>{p.ensureVisiblePosition(r.value,u.value),L(r.value,u.value)})},w=()=>{p.resetPosition(r.value,u.value)},T=s=>{d("change:input",s)},g=()=>{var s;a.value=!1,(s=k.value)==null||s.blur(),v()};return(()=>{y(),v()})(),e.onMounted(()=>{N(),S()}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",_),document.removeEventListener("click",C),p.unlockScrollBody(),w()}),x({validate:B,selectMenu:a}),(s,l)=>{var h,f;return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{ref_key:"selectEl",ref:r},[e.createVNode(O,{id:c.value,label:s.label,required:s.required},null,8,["id","label","required"]),t.allowInput?(e.openBlock(),e.createBlock(U,{key:0,id:c.value,ref_key:"inputRef",ref:k,modelValue:b.value,"onUpdate:modelValue":[l[0]||(l[0]=o=>b.value=o),T],"append-icon":`fa-solid fa-caret-down ds-transition-transform ${a.value?"ds-rotate-180":""}`,disabled:t.disabled,placeholder:t.placeholder,"hide-details":"",onFocus:l[1]||(l[1]=o=>a.value=!0),"onClick:append":l[2]||(l[2]=o=>{var m;return(m=k.value)==null?void 0:m.focus()})},null,8,["id","modelValue","append-icon","disabled","placeholder"])):(e.openBlock(),e.createElementBlock("button",{key:1,id:c.value,class:e.normalizeClass(M.value),disabled:t.disabled,type:"button",onClick:l[3]||(l[3]=o=>a.value=!a.value)},[e.createElementVNode("span",{class:e.normalizeClass([s.valueCssClass,"ds-truncate"])},[(h=i.value)!=null&&h.text?(e.openBlock(),e.createElementBlock("span",H,e.toDisplayString((f=i.value)==null?void 0:f.text),1)):(e.openBlock(),e.createElementBlock("span",A,e.toDisplayString(t.placeholder),1))],2),e.createTextVNode("   "),e.createElementVNode("span",{class:e.normalizeClass([`${a.value?"ds-rotate-180":""}`,"fa-solid fa-caret-down ds-text-base ds-transition-transform"])},null,2)],10,j)),e.withDirectives(e.createElementVNode("div",{id:`${c.value}Menu`,ref_key:"selectMenuEl",ref:u,class:e.normalizeClass([s.menuCssClass,"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1"]),"data-cy":s.$attrs["data-cy"]?`${s.$attrs["data-cy"]}Menu`:void 0,"data-ut":s.$attrs["data-ut"]?`${s.$attrs["data-ut"]}Menu`:void 0},[e.createElementVNode("div",J,[e.createElementVNode("ul",K,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.items,(o,m)=>(e.openBlock(),e.createElementBlock("li",{key:`item${m}`,class:"ds-cursor-pointer",onClick:Z=>R(o)},[e.createElementVNode("a",{class:e.normalizeClass([o.cssClass+`${o.value===n.value?" ds-bg-gray-150":""}`,"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150"])},e.toDisplayString(o==null?void 0:o.text),3)],8,Q))),128))])])],10,G),[[e.vShow,a.value]])],512),s.hideDetails?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(F,{key:0,"error-message":e.unref(E).errorMessage(),class:"ds-mt-1","prepend-icon":"fa-solid fa-circle-exclamation"},null,8,["error-message"]))])}}});module.exports=X;
1
+ "use strict";const e=require("vue"),T=require("./design-system3.js"),v=require("./design-system6.js"),D=require("./design-system48.js"),F=require("./design-system30.js"),O=require("./design-system31.js"),U=require("./design-system40.js"),W=require("./design-system94.js"),j=e.createElementVNode("path",{d:"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"},null,-1),H=[j],A=["id","disabled"],G={key:0},J={key:1,class:"ds-text-black/[0.4]"},K=e.createElementVNode("path",{d:"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"},null,-1),Q=[K],X=["id","data-cy","data-ut"],Y={class:"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow"},Z={class:"ds-py-1 ds-text-sm ds-text-black/[0.85]"},ee=["onClick"],se=e.defineComponent({__name:"BSelect",props:{inputId:{default:""},modelValue:{},label:{default:""},items:{},disabled:{type:Boolean,default:!1},placeholder:{default:""},valueCssClass:{default:""},menuCssClass:{default:""},validationRules:{default:void 0},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},hideDetails:{type:Boolean,default:!1},allowInput:{type:Boolean,default:!1}},emits:["change","open","close","change:input","update:modelValue"],setup(x,{expose:V,emit:d}){const t=x,r=e.ref(null),k=e.ref(null),u=e.ref(null),n=e.ref(!1),{t:M}=D.useI18n(),q={validateRule:s=>!!s,errorMessage:()=>t.requiredErrorMessage||M("ds.global.field_required")},h=e.ref(""),i=e.ref(),c=e.computed(()=>t.inputId||`id-${W()}`),a=e.computed({get(){return t.modelValue},set(s){d("update:modelValue",s)}}),$=e.computed(()=>{let s="ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between ";return s+=t.disabled?"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] ":"ds-bg-white ds-text-black/[0.85] ",s+=_.value.valid?"ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus ":"ds-border-error focus:ds-ring-1 focus:ds-ring-error ",s}),I=e.computed(()=>{let s=[];return t.required&&s.push(q),t.validationRules&&(s=s.concat(t.validationRules)),s.length?s:void 0}),{validate:B,validationResult:_}=T.useValidationField(c.value,a,I.value);e.watch(n,s=>{s?(v.lockScrollBody(),R(),d("open")):(v.unlockScrollBody(),C(),d("close"))}),e.watch(a,()=>{g(),p()}),e.watch(()=>t.items,()=>{var s;a.value&&!((s=i.value)!=null&&s.value)&&(g(),p())},{deep:!0});const g=()=>{i.value=t.items.find(s=>s.value===a.value)},p=()=>{var s;t.allowInput&&(h.value=((s=i.value)==null?void 0:s.text)||"")},N=()=>{document.addEventListener("keydown",w)},w=s=>{s.key==="Escape"&&y()},L=()=>{document.addEventListener("click",E)},E=s=>{[r.value,u.value].some(f=>s.composedPath().includes(f))||y()},S=s=>{a.value=s.value,y(),d("change",s.value),e.nextTick(()=>{B()})},z=(s,l)=>{l.style.width=`${s.offsetWidth}px`},R=()=>{e.nextTick(()=>{v.ensureVisiblePosition(r.value,u.value),z(r.value,u.value)})},C=()=>{v.resetPosition(r.value,u.value)},P=s=>{d("change:input",s)},y=()=>{var s;n.value=!1,(s=k.value)==null||s.blur(),p()};return(()=>{g(),p()})(),e.onMounted(()=>{N(),L()}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",w),document.removeEventListener("click",E),v.unlockScrollBody(),C()}),V({validate:B,selectMenu:n}),(s,l)=>{var b,f;return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{ref_key:"selectEl",ref:r},[e.createVNode(O,{id:c.value,label:s.label,required:s.required},null,8,["id","label","required"]),t.allowInput?(e.openBlock(),e.createBlock(U,{key:0,id:c.value,ref_key:"inputRef",ref:k,modelValue:h.value,"onUpdate:modelValue":[l[0]||(l[0]=o=>h.value=o),P],disabled:t.disabled,placeholder:t.placeholder,"hide-details":"",onFocus:l[1]||(l[1]=o=>n.value=!0),"onClick:append":l[2]||(l[2]=o=>{var m;return(m=k.value)==null?void 0:m.focus()})},{appendIcon:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([[n.value?"ds-rotate-180":""],"ds-h-4 ds-w-4 ds-transition-transform"]),viewBox:"0 0 320 512",xmlns:"http://www.w3.org/2000/svg"},H,2))]),_:1},8,["id","modelValue","disabled","placeholder"])):(e.openBlock(),e.createElementBlock("button",{key:1,id:c.value,class:e.normalizeClass($.value),disabled:t.disabled,type:"button",onClick:l[3]||(l[3]=o=>n.value=!n.value)},[e.createElementVNode("span",{class:e.normalizeClass([s.valueCssClass,"ds-truncate"])},[(b=i.value)!=null&&b.text?(e.openBlock(),e.createElementBlock("span",G,e.toDisplayString((f=i.value)==null?void 0:f.text),1)):(e.openBlock(),e.createElementBlock("span",J,e.toDisplayString(t.placeholder),1))],2),e.createTextVNode("   "),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([[n.value?"ds-rotate-180":""],"ds-h-4 ds-w-4 ds-transition-transform"]),viewBox:"0 0 320 512",xmlns:"http://www.w3.org/2000/svg"},Q,2))],10,A)),e.withDirectives(e.createElementVNode("div",{id:`${c.value}Menu`,ref_key:"selectMenuEl",ref:u,class:e.normalizeClass([s.menuCssClass,"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1"]),"data-cy":s.$attrs["data-cy"]?`${s.$attrs["data-cy"]}Menu`:void 0,"data-ut":s.$attrs["data-ut"]?`${s.$attrs["data-ut"]}Menu`:void 0},[e.createElementVNode("div",Y,[e.createElementVNode("ul",Z,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.items,(o,m)=>(e.openBlock(),e.createElementBlock("li",{key:`item${m}`,class:"ds-cursor-pointer",onClick:le=>S(o)},[e.createElementVNode("a",{class:e.normalizeClass([o.cssClass+`${o.value===a.value?" ds-bg-gray-150":""}`,"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150"])},e.toDisplayString(o==null?void 0:o.text),3)],8,ee))),128))])])],10,X),[[e.vShow,n.value]])],512),s.hideDetails?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(F,{key:0,"error-message":e.unref(_).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))])}}});module.exports=se;
2
2
  //# sourceMappingURL=design-system21.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system21.js","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = [\"id\", \"disabled\"]\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_4 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_5 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_6 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_7 = [\"onClick\"]\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport {\n ensureVisiblePosition,\n lockScrollBody,\n resetPosition,\n unlockScrollBody,\n} from '@/helpers/ComponentHelper';\nimport type { DisplayItem } from '@/types';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\nimport BTextField from './BTextField.vue';\n\n/**\n * Props\n */\nexport interface BSelectProps {\n inputId?: string;\n modelValue: string | number;\n label?: string;\n items: DisplayItem[];\n disabled?: boolean;\n placeholder?: string;\n valueCssClass?: string;\n menuCssClass?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Allow to type to search.\n */\n allowInput?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n items: {},\n disabled: { type: Boolean, default: false },\n placeholder: { default: '' },\n valueCssClass: { default: '' },\n menuCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false },\n allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst selectEl = ref<HTMLElement | null>(null);\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\nconst selectMenuEl = ref<HTMLElement | null>(null);\nconst selectMenu = ref(false);\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst inputText = ref('');\nconst selectedItem = ref<DisplayItem>();\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst btnCssClass = computed(() => {\n let result = `ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between `;\n result += props.disabled\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\n : `ds-bg-white ds-text-black/[0.85] `;\n result += !validationResult.value.valid\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\n\n return result;\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n/**\n * Watch\n */\nwatch(selectMenu, (val) => {\n if (val) {\n lockScrollBody();\n ensureMenuPosition();\n emit('open');\n } else {\n unlockScrollBody();\n resetMenuPosition();\n emit('close');\n }\n});\nwatch(value, () => {\n ensureSelectedItem();\n ensureInputText();\n});\nwatch(\n () => props.items,\n () => {\n if (value.value && !selectedItem.value?.value) {\n ensureSelectedItem();\n ensureInputText();\n }\n },\n {\n deep: true,\n },\n);\n\n/**\n * Methods\n */\nconst ensureSelectedItem = () => {\n selectedItem.value = props.items.find((i) => i.value === value.value);\n};\nconst ensureInputText = () => {\n if (props.allowInput) {\n inputText.value = selectedItem.value?.text || '';\n }\n};\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n closeSelectMenu();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [selectEl.value, selectMenuEl.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n closeSelectMenu();\n }\n};\nconst onClickItem = (item: DisplayItem) => {\n value.value = item.value;\n closeSelectMenu();\n emit('change', item.value);\n nextTick(() => {\n validate();\n });\n};\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\n menuEl.style.width = `${parentEl.offsetWidth}px`;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(selectEl.value!, selectMenuEl.value!);\n};\nconst onChangeInputText = (text: string) => {\n emit('change:input', text);\n};\nconst closeSelectMenu = () => {\n selectMenu.value = false;\n inputRef.value?.blur();\n ensureInputText();\n};\nconst init = () => {\n ensureSelectedItem();\n ensureInputText();\n};\ninit();\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n initPressEscapeEventListener();\n initClickOutsideEventListener();\n});\nonBeforeUnmount(() => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n document.removeEventListener('click', closeOnClickOutside);\n unlockScrollBody();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n__expose({ validate, selectMenu });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", {\n ref_key: \"selectEl\",\n ref: selectEl\n }, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n \"append-icon\": `fa-solid fa-caret-down ds-transition-transform ${\n selectMenu.value ? 'ds-rotate-180' : ''\n }`,\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, null, 8, [\"id\", \"modelValue\", \"append-icon\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_2, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_3, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\"   \"),\n _createElementVNode(\"span\", {\n class: _normalizeClass([`${selectMenu.value ? 'ds-rotate-180' : ''}`, \"fa-solid fa-caret-down ds-text-base ds-transition-transform\"])\n }, null, 2)\n ], 10, _hoisted_1)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"ul\", _hoisted_6, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.items, (item, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: `item${index}`,\n class: \"ds-cursor-pointer\",\n onClick: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\n item.cssClass +\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_7))\n }), 128))\n ])\n ])\n ], 10, _hoisted_4), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\",\n \"prepend-icon\": \"fa-solid fa-circle-exclamation\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
1
+ {"version":3,"file":"design-system21.js","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_2 = [\n _hoisted_1\n]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_9 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_10 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_11 = [\"onClick\"]\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport {\n ensureVisiblePosition,\n lockScrollBody,\n resetPosition,\n unlockScrollBody,\n} from '@/helpers/ComponentHelper';\nimport type { DisplayItem } from '@/types';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\nimport BTextField from './BTextField.vue';\n\n/**\n * Props\n */\nexport interface BSelectProps {\n inputId?: string;\n modelValue: string | number;\n label?: string;\n items: DisplayItem[];\n disabled?: boolean;\n placeholder?: string;\n valueCssClass?: string;\n menuCssClass?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Allow to type to search.\n */\n allowInput?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n items: {},\n disabled: { type: Boolean, default: false },\n placeholder: { default: '' },\n valueCssClass: { default: '' },\n menuCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false },\n allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst selectEl = ref<HTMLElement | null>(null);\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\nconst selectMenuEl = ref<HTMLElement | null>(null);\nconst selectMenu = ref(false);\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst inputText = ref('');\nconst selectedItem = ref<DisplayItem>();\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst btnCssClass = computed(() => {\n let result = `ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between `;\n result += props.disabled\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\n : `ds-bg-white ds-text-black/[0.85] `;\n result += !validationResult.value.valid\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\n\n return result;\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n/**\n * Watch\n */\nwatch(selectMenu, (val) => {\n if (val) {\n lockScrollBody();\n ensureMenuPosition();\n emit('open');\n } else {\n unlockScrollBody();\n resetMenuPosition();\n emit('close');\n }\n});\nwatch(value, () => {\n ensureSelectedItem();\n ensureInputText();\n});\nwatch(\n () => props.items,\n () => {\n if (value.value && !selectedItem.value?.value) {\n ensureSelectedItem();\n ensureInputText();\n }\n },\n {\n deep: true,\n },\n);\n\n/**\n * Methods\n */\nconst ensureSelectedItem = () => {\n selectedItem.value = props.items.find((i) => i.value === value.value);\n};\nconst ensureInputText = () => {\n if (props.allowInput) {\n inputText.value = selectedItem.value?.text || '';\n }\n};\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n closeSelectMenu();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [selectEl.value, selectMenuEl.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n closeSelectMenu();\n }\n};\nconst onClickItem = (item: DisplayItem) => {\n value.value = item.value;\n closeSelectMenu();\n emit('change', item.value);\n nextTick(() => {\n validate();\n });\n};\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\n menuEl.style.width = `${parentEl.offsetWidth}px`;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(selectEl.value!, selectMenuEl.value!);\n};\nconst onChangeInputText = (text: string) => {\n emit('change:input', text);\n};\nconst closeSelectMenu = () => {\n selectMenu.value = false;\n inputRef.value?.blur();\n ensureInputText();\n};\nconst init = () => {\n ensureSelectedItem();\n ensureInputText();\n};\ninit();\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n initPressEscapeEventListener();\n initClickOutsideEventListener();\n});\nonBeforeUnmount(() => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n document.removeEventListener('click', closeOnClickOutside);\n unlockScrollBody();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n__expose({ validate, selectMenu });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", {\n ref_key: \"selectEl\",\n ref: selectEl\n }, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, {\n appendIcon: _withCtx(() => [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_2, 2))\n ]),\n _: 1\n }, 8, [\"id\", \"modelValue\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\"   \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"ul\", _hoisted_10, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.items, (item, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: `item${index}`,\n class: \"ds-cursor-pointer\",\n onClick: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\n item.cssClass +\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_11))\n }), 128))\n ])\n ])\n ], 10, _hoisted_8), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_withCtx","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
@@ -1,15 +1,19 @@
1
- import { defineComponent as H, ref as u, computed as y, watch as x, nextTick as R, onMounted as J, onBeforeUnmount as K, openBlock as o, createElementBlock as r, createElementVNode as d, createVNode as Q, createBlock as L, normalizeClass as m, toDisplayString as M, createTextVNode as X, withDirectives as Y, Fragment as Z, renderList as ee, vShow as se, unref as te, createCommentVNode as le } from "vue";
1
+ import { defineComponent as H, ref as r, computed as k, watch as $, nextTick as L, onMounted as J, onBeforeUnmount as K, openBlock as o, createElementBlock as d, createElementVNode as n, createVNode as Q, createBlock as R, withCtx as X, normalizeClass as i, toDisplayString as E, createTextVNode as Y, withDirectives as Z, Fragment as ee, renderList as se, vShow as te, unref as le, createCommentVNode as oe } from "vue";
2
2
  import { useValidationField as ae } from "./design-system3.mjs";
3
- import { lockScrollBody as oe, unlockScrollBody as P, ensureVisiblePosition as de, resetPosition as ne } from "./design-system6.mjs";
4
- import { useI18n as ue } from "./design-system48.mjs";
5
- import re from "./design-system30.mjs";
6
- import ie from "./design-system31.mjs";
7
- import ce from "./design-system40.mjs";
8
- import ve from "./design-system95.mjs";
9
- const fe = ["id", "disabled"], pe = { key: 0 }, me = {
3
+ import { lockScrollBody as de, unlockScrollBody as P, ensureVisiblePosition as ne, resetPosition as ue } from "./design-system6.mjs";
4
+ import { useI18n as re } from "./design-system48.mjs";
5
+ import ie from "./design-system30.mjs";
6
+ import ce from "./design-system31.mjs";
7
+ import ve from "./design-system40.mjs";
8
+ import fe from "./design-system94.mjs";
9
+ const pe = /* @__PURE__ */ n("path", { d: "M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z" }, null, -1), me = [
10
+ pe
11
+ ], he = ["id", "disabled"], be = { key: 0 }, ge = {
10
12
  key: 1,
11
13
  class: "ds-text-black/[0.4]"
12
- }, be = ["id", "data-cy", "data-ut"], ke = { class: "ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow" }, he = { class: "ds-py-1 ds-text-sm ds-text-black/[0.85]" }, ye = ["onClick"], Ie = /* @__PURE__ */ H({
14
+ }, ke = /* @__PURE__ */ n("path", { d: "M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z" }, null, -1), we = [
15
+ ke
16
+ ], ye = ["id", "data-cy", "data-ut"], Ce = { class: "ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow" }, _e = { class: "ds-py-1 ds-text-sm ds-text-black/[0.85]" }, xe = ["onClick"], Se = /* @__PURE__ */ H({
13
17
  __name: "BSelect",
14
18
  props: {
15
19
  inputId: { default: "" },
@@ -27,167 +31,176 @@ const fe = ["id", "disabled"], pe = { key: 0 }, me = {
27
31
  allowInput: { type: Boolean, default: !1 }
28
32
  },
29
33
  emits: ["change", "open", "close", "change:input", "update:modelValue"],
30
- setup(S, { expose: T, emit: i }) {
31
- const s = S, c = u(null), g = u(null), v = u(null), a = u(!1), { t: D } = ue(), N = {
34
+ setup(S, { expose: T, emit: c }) {
35
+ const s = S, v = r(null), w = r(null), f = r(null), a = r(!1), { t: z } = re(), D = {
32
36
  validateRule: (e) => !!e,
33
- errorMessage: () => s.requiredErrorMessage || D("ds.global.field_required")
34
- }, w = u(""), f = u(), p = y(() => s.inputId || `id-${ve()}`), n = y({
37
+ errorMessage: () => s.requiredErrorMessage || z("ds.global.field_required")
38
+ }, y = r(""), p = r(), m = k(() => s.inputId || `id-${fe()}`), u = k({
35
39
  get() {
36
40
  return s.modelValue;
37
41
  },
38
42
  set(e) {
39
- i("update:modelValue", e);
43
+ c("update:modelValue", e);
40
44
  }
41
- }), O = y(() => {
45
+ }), N = k(() => {
42
46
  let e = "ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between ";
43
- return e += s.disabled ? "ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] " : "ds-bg-white ds-text-black/[0.85] ", e += V.value.valid ? "ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus " : "ds-border-error focus:ds-ring-1 focus:ds-ring-error ", e;
44
- }), F = y(() => {
47
+ return e += s.disabled ? "ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] " : "ds-bg-white ds-text-black/[0.85] ", e += B.value.valid ? "ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus " : "ds-border-error focus:ds-ring-1 focus:ds-ring-error ", e;
48
+ }), O = k(() => {
45
49
  let e = [];
46
- return s.required && e.push(N), s.validationRules && (e = e.concat(s.validationRules)), e.length ? e : void 0;
47
- }), { validate: B, validationResult: V } = ae(
48
- p.value,
49
- n,
50
- F.value
50
+ return s.required && e.push(D), s.validationRules && (e = e.concat(s.validationRules)), e.length ? e : void 0;
51
+ }), { validate: M, validationResult: B } = ae(
52
+ m.value,
53
+ u,
54
+ O.value
51
55
  );
52
- x(a, (e) => {
53
- e ? (oe(), A(), i("open")) : (P(), q(), i("close"));
54
- }), x(n, () => {
55
- C(), b();
56
- }), x(
56
+ $(a, (e) => {
57
+ e ? (de(), A(), c("open")) : (P(), q(), c("close"));
58
+ }), $(u, () => {
59
+ C(), h();
60
+ }), $(
57
61
  () => s.items,
58
62
  () => {
59
63
  var e;
60
- n.value && !((e = f.value) != null && e.value) && (C(), b());
64
+ u.value && !((e = p.value) != null && e.value) && (C(), h());
61
65
  },
62
66
  {
63
67
  deep: !0
64
68
  }
65
69
  );
66
70
  const C = () => {
67
- f.value = s.items.find((e) => e.value === n.value);
68
- }, b = () => {
71
+ p.value = s.items.find((e) => e.value === u.value);
72
+ }, h = () => {
69
73
  var e;
70
- s.allowInput && (w.value = ((e = f.value) == null ? void 0 : e.text) || "");
71
- }, z = () => {
72
- document.addEventListener("keydown", _);
73
- }, _ = (e) => {
74
- e.key === "Escape" && $();
74
+ s.allowInput && (y.value = ((e = p.value) == null ? void 0 : e.text) || "");
75
+ }, F = () => {
76
+ document.addEventListener("keydown", V);
77
+ }, V = (e) => {
78
+ e.key === "Escape" && _();
75
79
  }, U = () => {
76
80
  document.addEventListener("click", I);
77
81
  }, I = (e) => {
78
- [c.value, v.value].some((k) => e.composedPath().includes(k)) || $();
82
+ [v.value, f.value].some((b) => e.composedPath().includes(b)) || _();
79
83
  }, W = (e) => {
80
- n.value = e.value, $(), i("change", e.value), R(() => {
81
- B();
84
+ u.value = e.value, _(), c("change", e.value), L(() => {
85
+ M();
82
86
  });
83
87
  }, j = (e, t) => {
84
88
  t.style.width = `${e.offsetWidth}px`;
85
89
  }, A = () => {
86
- R(() => {
87
- de(c.value, v.value), j(c.value, v.value);
90
+ L(() => {
91
+ ne(v.value, f.value), j(v.value, f.value);
88
92
  });
89
93
  }, q = () => {
90
- ne(c.value, v.value);
94
+ ue(v.value, f.value);
91
95
  }, G = (e) => {
92
- i("change:input", e);
93
- }, $ = () => {
96
+ c("change:input", e);
97
+ }, _ = () => {
94
98
  var e;
95
- a.value = !1, (e = g.value) == null || e.blur(), b();
99
+ a.value = !1, (e = w.value) == null || e.blur(), h();
96
100
  };
97
101
  return (() => {
98
- C(), b();
102
+ C(), h();
99
103
  })(), J(() => {
100
- z(), U();
104
+ F(), U();
101
105
  }), K(() => {
102
- document.removeEventListener("keydown", _), document.removeEventListener("click", I), P(), q();
103
- }), T({ validate: B, selectMenu: a }), (e, t) => {
104
- var E, k;
105
- return o(), r("div", null, [
106
- d("div", {
106
+ document.removeEventListener("keydown", V), document.removeEventListener("click", I), P(), q();
107
+ }), T({ validate: M, selectMenu: a }), (e, t) => {
108
+ var x, b;
109
+ return o(), d("div", null, [
110
+ n("div", {
107
111
  ref_key: "selectEl",
108
- ref: c
112
+ ref: v
109
113
  }, [
110
- Q(ie, {
111
- id: p.value,
114
+ Q(ce, {
115
+ id: m.value,
112
116
  label: e.label,
113
117
  required: e.required
114
118
  }, null, 8, ["id", "label", "required"]),
115
- s.allowInput ? (o(), L(ce, {
119
+ s.allowInput ? (o(), R(ve, {
116
120
  key: 0,
117
- id: p.value,
121
+ id: m.value,
118
122
  ref_key: "inputRef",
119
- ref: g,
120
- modelValue: w.value,
123
+ ref: w,
124
+ modelValue: y.value,
121
125
  "onUpdate:modelValue": [
122
- t[0] || (t[0] = (l) => w.value = l),
126
+ t[0] || (t[0] = (l) => y.value = l),
123
127
  G
124
128
  ],
125
- "append-icon": `fa-solid fa-caret-down ds-transition-transform ${a.value ? "ds-rotate-180" : ""}`,
126
129
  disabled: s.disabled,
127
130
  placeholder: s.placeholder,
128
131
  "hide-details": "",
129
132
  onFocus: t[1] || (t[1] = (l) => a.value = !0),
130
133
  "onClick:append": t[2] || (t[2] = (l) => {
131
- var h;
132
- return (h = g.value) == null ? void 0 : h.focus();
134
+ var g;
135
+ return (g = w.value) == null ? void 0 : g.focus();
133
136
  })
134
- }, null, 8, ["id", "modelValue", "append-icon", "disabled", "placeholder"])) : (o(), r("button", {
137
+ }, {
138
+ appendIcon: X(() => [
139
+ (o(), d("svg", {
140
+ class: i([[a.value ? "ds-rotate-180" : ""], "ds-h-4 ds-w-4 ds-transition-transform"]),
141
+ viewBox: "0 0 320 512",
142
+ xmlns: "http://www.w3.org/2000/svg"
143
+ }, me, 2))
144
+ ]),
145
+ _: 1
146
+ }, 8, ["id", "modelValue", "disabled", "placeholder"])) : (o(), d("button", {
135
147
  key: 1,
136
- id: p.value,
137
- class: m(O.value),
148
+ id: m.value,
149
+ class: i(N.value),
138
150
  disabled: s.disabled,
139
151
  type: "button",
140
152
  onClick: t[3] || (t[3] = (l) => a.value = !a.value)
141
153
  }, [
142
- d("span", {
143
- class: m([e.valueCssClass, "ds-truncate"])
154
+ n("span", {
155
+ class: i([e.valueCssClass, "ds-truncate"])
144
156
  }, [
145
- (E = f.value) != null && E.text ? (o(), r("span", pe, M((k = f.value) == null ? void 0 : k.text), 1)) : (o(), r("span", me, M(s.placeholder), 1))
157
+ (x = p.value) != null && x.text ? (o(), d("span", be, E((b = p.value) == null ? void 0 : b.text), 1)) : (o(), d("span", ge, E(s.placeholder), 1))
146
158
  ], 2),
147
- X("   "),
148
- d("span", {
149
- class: m([`${a.value ? "ds-rotate-180" : ""}`, "fa-solid fa-caret-down ds-text-base ds-transition-transform"])
150
- }, null, 2)
151
- ], 10, fe)),
152
- Y(d("div", {
153
- id: `${p.value}Menu`,
159
+ Y("   "),
160
+ (o(), d("svg", {
161
+ class: i([[a.value ? "ds-rotate-180" : ""], "ds-h-4 ds-w-4 ds-transition-transform"]),
162
+ viewBox: "0 0 320 512",
163
+ xmlns: "http://www.w3.org/2000/svg"
164
+ }, we, 2))
165
+ ], 10, he)),
166
+ Z(n("div", {
167
+ id: `${m.value}Menu`,
154
168
  ref_key: "selectMenuEl",
155
- ref: v,
156
- class: m([e.menuCssClass, "ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1"]),
169
+ ref: f,
170
+ class: i([e.menuCssClass, "ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1"]),
157
171
  "data-cy": e.$attrs["data-cy"] ? `${e.$attrs["data-cy"]}Menu` : void 0,
158
172
  "data-ut": e.$attrs["data-ut"] ? `${e.$attrs["data-ut"]}Menu` : void 0
159
173
  }, [
160
- d("div", ke, [
161
- d("ul", he, [
162
- (o(!0), r(Z, null, ee(e.items, (l, h) => (o(), r("li", {
163
- key: `item${h}`,
174
+ n("div", Ce, [
175
+ n("ul", _e, [
176
+ (o(!0), d(ee, null, se(e.items, (l, g) => (o(), d("li", {
177
+ key: `item${g}`,
164
178
  class: "ds-cursor-pointer",
165
- onClick: (we) => W(l)
179
+ onClick: (Ee) => W(l)
166
180
  }, [
167
- d("a", {
168
- class: m([
169
- l.cssClass + `${l.value === n.value ? " ds-bg-gray-150" : ""}`,
181
+ n("a", {
182
+ class: i([
183
+ l.cssClass + `${l.value === u.value ? " ds-bg-gray-150" : ""}`,
170
184
  "ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150"
171
185
  ])
172
- }, M(l == null ? void 0 : l.text), 3)
173
- ], 8, ye))), 128))
186
+ }, E(l == null ? void 0 : l.text), 3)
187
+ ], 8, xe))), 128))
174
188
  ])
175
189
  ])
176
- ], 10, be), [
177
- [se, a.value]
190
+ ], 10, ye), [
191
+ [te, a.value]
178
192
  ])
179
193
  ], 512),
180
- e.hideDetails ? le("", !0) : (o(), L(re, {
194
+ e.hideDetails ? oe("", !0) : (o(), R(ie, {
181
195
  key: 0,
182
- "error-message": te(V).errorMessage(),
183
- class: "ds-mt-1",
184
- "prepend-icon": "fa-solid fa-circle-exclamation"
196
+ "error-message": le(B).errorMessage(),
197
+ class: "ds-mt-1"
185
198
  }, null, 8, ["error-message"]))
186
199
  ]);
187
200
  };
188
201
  }
189
202
  });
190
203
  export {
191
- Ie as default
204
+ Se as default
192
205
  };
193
206
  //# sourceMappingURL=design-system21.mjs.map