@7pmlabs/design-system 0.8.1 → 1.0.0

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 (77) hide show
  1. package/dist/design-system.mjs +16 -16
  2. package/dist/design-system10.mjs +1 -1
  3. package/dist/design-system10.mjs.map +1 -1
  4. package/dist/design-system100.mjs +68 -6
  5. package/dist/design-system100.mjs.map +1 -1
  6. package/dist/design-system101.mjs +6 -67
  7. package/dist/design-system101.mjs.map +1 -1
  8. package/dist/design-system116.mjs +1 -1
  9. package/dist/design-system117.mjs +1 -1
  10. package/dist/design-system14.mjs +23 -17
  11. package/dist/design-system14.mjs.map +1 -1
  12. package/dist/design-system15.mjs +60 -25
  13. package/dist/design-system15.mjs.map +1 -1
  14. package/dist/design-system16.mjs +269 -53
  15. package/dist/design-system16.mjs.map +1 -1
  16. package/dist/design-system17.mjs +107 -263
  17. package/dist/design-system17.mjs.map +1 -1
  18. package/dist/design-system18.mjs +112 -112
  19. package/dist/design-system18.mjs.map +1 -1
  20. package/dist/design-system19.mjs +193 -113
  21. package/dist/design-system19.mjs.map +1 -1
  22. package/dist/design-system20.mjs +62 -188
  23. package/dist/design-system20.mjs.map +1 -1
  24. package/dist/design-system21.mjs +38 -69
  25. package/dist/design-system21.mjs.map +1 -1
  26. package/dist/design-system22.mjs +38 -34
  27. package/dist/design-system22.mjs.map +1 -1
  28. package/dist/design-system23.mjs +133 -42
  29. package/dist/design-system23.mjs.map +1 -1
  30. package/dist/design-system24.mjs +550 -129
  31. package/dist/design-system24.mjs.map +1 -1
  32. package/dist/design-system25.mjs +5 -562
  33. package/dist/design-system25.mjs.map +1 -1
  34. package/dist/design-system26.mjs +6 -5
  35. package/dist/design-system26.mjs.map +1 -1
  36. package/dist/design-system27.mjs +4 -5
  37. package/dist/design-system27.mjs.map +1 -1
  38. package/dist/design-system28.mjs +10 -5
  39. package/dist/design-system28.mjs.map +1 -1
  40. package/dist/design-system29.mjs +23 -10
  41. package/dist/design-system29.mjs.map +1 -1
  42. package/dist/design-system40.mjs +63 -45
  43. package/dist/design-system40.mjs.map +1 -1
  44. package/dist/design-system57.mjs +64 -37
  45. package/dist/design-system57.mjs.map +1 -1
  46. package/dist/design-system62.mjs +1 -1
  47. package/dist/design-system63.mjs +1 -1
  48. package/dist/design-system68.mjs +1 -1
  49. package/dist/design-system69.mjs +1 -1
  50. package/dist/design-system70.mjs +1 -1
  51. package/dist/design-system71.mjs +1 -1
  52. package/dist/design-system72.mjs +1 -1
  53. package/dist/design-system74.mjs +1 -1
  54. package/dist/design-system78.mjs +1 -1
  55. package/dist/design-system79.mjs +2 -2
  56. package/dist/design-system81.mjs +1 -1
  57. package/dist/design-system85.mjs +2 -2
  58. package/dist/design-system88.mjs +2 -2
  59. package/dist/design-system92.mjs +1 -1
  60. package/dist/design-system93.mjs +1 -1
  61. package/dist/design-system94.mjs +1 -1
  62. package/dist/design-system99.mjs +62 -63
  63. package/dist/design-system99.mjs.map +1 -1
  64. package/dist/style.css +1 -1
  65. package/dist/types/components/BCheckbox.vue.d.ts +31 -1
  66. package/dist/types/components/BCurrencyField.vue.d.ts +4 -4
  67. package/dist/types/components/BDatePicker/BDatePicker.vue.d.ts +3 -3
  68. package/dist/types/components/BImagePicker/BImagePicker.vue.d.ts +1 -1
  69. package/dist/types/components/BMultiSelect.vue.d.ts +2 -2
  70. package/dist/types/components/BOtpField/BOtpField.vue.d.ts +2 -2
  71. package/dist/types/components/BRadio.vue.d.ts +1 -1
  72. package/dist/types/components/BSelect.vue.d.ts +2 -2
  73. package/dist/types/components/BTextField.vue.d.ts +3 -3
  74. package/dist/types/components/BTextarea.vue.d.ts +3 -3
  75. package/dist/types/components/BToast/BToastItem.vue.d.ts +6 -1
  76. package/dist/types/types/components/BToast.d.ts +1 -0
  77. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"design-system25.mjs","sources":["../src/components/BDatePicker/BDatePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withKeys as _withKeys, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, unref as _unref, createBlock as _createBlock, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives } from \"vue\"\n\nconst _hoisted_1 = { class: \"b-date-picker\" }\nconst _hoisted_2 = { class: \"ds-relative\" }\nconst _hoisted_3 = [\"id\", \"disabled\", \"placeholder\", \"value\"]\nconst _hoisted_4 = [\"id\", \"disabled\", \"placeholder\"]\nconst _hoisted_5 = { class: \"ds-mt-1 ds-grid ds-w-80 ds-gap-5 ds-rounded-lg ds-bg-white ds-p-3 ds-shadow-2xl\" }\nconst _hoisted_6 = { class: \"ds-flex ds-w-full ds-items-center ds-justify-between\" }\nconst _hoisted_7 = { class: \"ds-grid ds-w-full ds-grid-cols-2 ds-gap-2\" }\n\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\nimport BButton from '@/components/BButton.vue';\nimport BLabel from '@/components/BLabel.vue';\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport { v4 as uuid } from 'uuid';\nimport BErrorMessage from '../BErrorMessage.vue';\nimport { useI18n } from 'vue-i18n';\nimport {\n ensureVisiblePosition,\n lockScrollBody,\n resetPosition,\n unlockScrollBody,\n} from '@/helpers/ComponentHelper';\nimport IMask from '@/vendor/imask-7.1.3.js'; // https://imask.js.org/guide.html#getting-started\nimport { isISO8601 } from '@/helpers/DateHelper';\nimport BDatePickerGridDate from '@/components/BDatePicker/BDatePickerGridDate.vue';\nimport BDatePickerGridMonth from '@/components/BDatePicker/BDatePickerGridMonth.vue';\nimport type { BDatePickerDateItem, BDatePickerViewData } from '@/types';\nimport BDatePickerButtonPrevious from '@/components/BDatePicker/BDatePickerButtonPrevious.vue';\nimport BDatePickerButtonNext from '@/components/BDatePicker/BDatePickerButtonNext.vue';\nimport BDatePickerHeading from '@/components/BDatePicker/BDatePickerHeading.vue';\nimport BDatePickerIcon from '@/components/BDatePicker/BDatePickerIcon.vue';\nimport { useDate } from '@/composables/Date';\nimport BDatePickerGridYear from '@/components/BDatePicker/BDatePickerGridYear.vue';\nimport { isEmpty, isNil } from 'lodash-es';\nimport BDatePickerGridDateRange from '@/components/BDatePicker/BDatePickerGridDateRange.vue';\nimport { breakpointsTailwind, useBreakpoints } from '@vueuse/core';\nimport { BDatePickerView } from '@/constants/Enums';\n\n//#region Props\nexport interface BDatePickerProps {\n /**\n * ID of input field.\n */\n inputId?: string;\n /**\n * Value v-model: <code>Date | string</code> when range is false, v-model: <code>Array<Date | string></code> when range is true (date | string in ISO 8601 format).\n */\n modelValue?: Date | string | Array<Date | string>;\n /**\n * Label of the field.\n */\n label?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n /**\n * Placeholder of input field.\n */\n placeholder?: string;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n /**\n * Error message when the field is empty.\n */\n requiredErrorMessage?: string;\n /**\n * Disabled state.\n */\n disabled?: boolean;\n /**\n * Custom CSS of input field.\n */\n inputCssClass?: string;\n /**\n * Minimum selectable date <code>Date | string</code> (date | string in ISO 8601 format).\n */\n minDate?: Date | string;\n /**\n * Maximum selectable date <code>Date | string</code> (date | string in ISO 8601 format).\n */\n maxDate?: Date | string;\n /**\n * Allow to select a date range.\n */\n range?: boolean;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Default view mode when opening menu\n */\n view?: `${BDatePickerView}`;\n}\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BDatePicker',\n props: {\n inputId: { default: '' },\n modelValue: { default: undefined },\n label: { default: '' },\n validationRules: { default: undefined },\n placeholder: { default: '' },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n disabled: { type: Boolean, default: false },\n inputCssClass: { default: '' },\n minDate: { default: undefined },\n maxDate: { default: undefined },\n range: { type: Boolean, default: false },\n hideDetails: { type: Boolean, default: false },\n view: { default: BDatePickerView.Dates }\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props;\n//#endregion\n\n//#region Events\nconst emit = __emit;\n//#endregion\n\n//#region Data\nlet mask: any;\nconst CURRENT_DATE = new Date(\n new Date().getFullYear(),\n new Date().getMonth(),\n new Date().getDate(),\n);\n\nconst breakpoints = useBreakpoints(breakpointsTailwind);\nconst smAndLarger = breakpoints.greaterOrEqual('sm');\nconst { t, locale } = useI18n();\nconst { formatMonthYear, formatDate, dateFormat, convertToDate } = useDate();\nconst valueDisplay = ref<BDatePickerDateItem>({});\nconst valueRangeDisplay = ref<BDatePickerDateItem[]>([]);\nconst viewDate = ref<BDatePickerDateItem>({\n year: CURRENT_DATE.getFullYear(),\n month: CURRENT_DATE.getMonth(),\n});\nconst viewDateDisplay = ref<BDatePickerDateItem>({\n year: CURRENT_DATE.getFullYear(),\n month: CURRENT_DATE.getMonth(),\n});\nconst isVisibleMenu = ref(false);\nconst viewValue = ref<BDatePickerView>(props.view as BDatePickerView);\nconst datePickerRef = ref<HTMLDivElement | null>(null);\nconst datePickerMenuRef = ref<HTMLDivElement | null>(null);\nconst datePickerInputRef = ref<HTMLInputElement | null>(null);\nconst datePickerInputMaskRef = ref<HTMLInputElement | null>(null);\nconst dates = ref<BDatePickerDateItem[]>([]);\nconst months = ref<BDatePickerDateItem[]>([]);\nconst years = ref<BDatePickerDateItem[]>([]);\nconst viewHeading = ref('');\nconst viewLeftNavDisabled = ref(false);\nconst viewRightNavDisabled = ref(false);\nconst minValue = computed<Date | undefined>(() => getDateObject(props.minDate));\nconst maxValue = computed<Date | undefined>(() => getDateObject(props.maxDate));\nconst validateRequired: ValidationRule = {\n validateRule: (val) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\n\n// The \"Failed to execute 'querySelector' on Document\" error occurs when using querySelector method with an identifier that starts with a digit\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 formattedValue = computed(() =>\n (props.modelValue as Array<Date | string>)\n ?.map((val) =>\n typeof val === 'string' ? formatDate(new Date(val)) : formatDate(val),\n )\n .join(' - '),\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});\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\nconst inputCssClassValue = computed(() => [\n 'ds-border ds-rounded-lg ds-block ds-w-full ds-text-sm ds-px-3 ds-h-[40px] ds-transition-all ds-ease-in-out',\n {\n 'ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]': props.disabled,\n 'ds-text-black/[0.85]': !props.disabled,\n 'ds-border-error focus:ds-ring-1 focus:ds-ring-error':\n !validationResult.value.valid,\n 'ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus':\n validationResult.value.valid,\n '!ds-border-focus ds-ring-1 ds-ring-focus': isVisibleMenu.value,\n },\n props.inputCssClass,\n]);\nconst inputMaskOptions = computed(() => {\n const result: any = {\n mask: IMask.MaskedDate,\n pattern: dateFormat.value,\n lazy: true,\n\n format: (date: Date) => formatDate(date),\n parse: (str: string) => convertToDate(str),\n\n blocks: {\n YYYY: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 9999,\n },\n MM: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 12,\n },\n DD: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 31,\n },\n },\n };\n\n if (minValue.value) {\n result.min = minValue.value;\n }\n if (maxValue.value) {\n result.max = maxValue.value;\n }\n\n return result;\n});\nconst viewData = computed<Record<BDatePickerView, BDatePickerViewData>>(() => ({\n [BDatePickerView.Years]: {\n handleClickPreview: handleSwitchToPreviousDecade,\n handleClickNext: handleSwitchToNextDecade,\n },\n [BDatePickerView.Months]: {\n handleClickPreview: handleSwitchToPreviousYear,\n handleClickNext: handleSwitchToNextYear,\n handleClickHeading: handleSwitchToYearsView,\n },\n [BDatePickerView.Dates]: {\n handleClickPreview: handleSwitchToPreviousMonth,\n handleClickNext: handleSwitchToNextMonth,\n handleClickHeading: handleSwitchToMonthsView,\n },\n}));\n//#endregion\n\n//#region Watchers\nwatch(locale, () => {\n if (mask) {\n mask.off('accept', onAccept);\n mask.off('complete', onComplete);\n mask.updateOptions(inputMaskOptions.value);\n updateMaskValue();\n mask.on('accept', onAccept);\n mask.on('complete', onComplete);\n }\n});\nwatch(\n () => props.minDate,\n () => {\n if (props.range) {\n const arr = value.value as Array<Date | string>;\n if (arr.length > 0) {\n ensureValueWhenMinDateChange(arr[0] as any);\n }\n } else {\n const val = value.value as Date | string;\n ensureValueWhenMinDateChange(val);\n }\n generateDates();\n },\n);\nwatch(\n () => props.maxDate,\n () => {\n if (props.range) {\n const arr = value.value as Array<Date | string>;\n if (arr.length > 1) {\n ensureValueWhenMaxDateChange(arr[1]);\n }\n if (arr.length > 0) {\n ensureValueWhenMaxDateChange(arr[0]);\n }\n } else {\n const val = value.value as Date | string;\n ensureValueWhenMaxDateChange(val);\n }\n generateDates();\n },\n);\nwatch(\n () => props.range,\n (val) => {\n if (!val) {\n nextTick(() => {\n initIMask();\n });\n }\n valueDisplay.value = {};\n valueRangeDisplay.value = [];\n },\n);\nwatch(\n () => props.view,\n (val) => {\n viewValue.value = val as BDatePickerView;\n },\n);\nwatch(smAndLarger, () => {\n isVisibleMenu.value = false;\n});\nwatch(isVisibleMenu, (val) => {\n if (val) {\n lockScrollBody();\n if (props.range) {\n valueRangeDisplay.value = value.value\n ? cloneItemFromDateRange(value.value as Array<Date | string>)\n : [];\n } else {\n valueDisplay.value = value.value\n ? cloneItemFromDate(value.value as Date | string)\n : {};\n }\n viewDateDisplay.value = cloneItem(viewDate.value);\n nextTick(() => {\n // https://tailwindcss.com/docs/responsive-design\n if (smAndLarger.value) {\n ensureVisiblePosition(datePickerRef.value!, datePickerMenuRef.value!);\n } else {\n // Move menu element into body tag\n document.body.append(datePickerMenuRef.value!);\n }\n });\n } else {\n unlockScrollBody();\n resetPosition(datePickerRef.value!, datePickerMenuRef.value!);\n }\n});\nwatch(\n () => props.modelValue,\n (val) => {\n if (isNotSyncedModelValue(val)) {\n if (props.range) {\n const v = val as Array<Date | string>;\n valueRangeDisplay.value = val ? cloneItemFromDateRange(v) : [];\n viewDate.value = val ? cloneItemFromDate(v[1], true) : {};\n viewDateDisplay.value = val ? cloneItemFromDate(v[1], true) : {};\n } else {\n const v = val as Date | string;\n valueDisplay.value = val ? cloneItemFromDate(v) : {};\n viewDate.value = val ? cloneItemFromDate(v, true) : {};\n viewDateDisplay.value = val ? cloneItemFromDate(v, true) : {};\n }\n }\n if (!props.range && isNotSyncedModelValue(getInputMaskDate())) {\n updateMaskValue();\n }\n },\n);\n//#endregion\n\n//#region Methods\nconst updateMaskValue = () => {\n const d = getDateObject(props.modelValue as Date | string);\n mask.value = d ? formatDate(d) : '';\n};\nconst getConsistentValue = (val: Date) =>\n typeof props.modelValue === 'string' ? val.toISOString() : val;\nconst ensureValueWhenMinDateChange = (d?: Date | string) => {\n const val = getDateObject(d);\n if (minValue.value && val && minValue.value > val) {\n value.value = undefined;\n }\n};\nconst ensureValueWhenMaxDateChange = (d?: Date | string) => {\n const val = getDateObject(d);\n if (maxValue.value && val && maxValue.value < val) {\n value.value = undefined;\n }\n};\nconst getDateObject = (val?: Date | string) => {\n switch (typeof val) {\n case 'object':\n return val;\n case 'string':\n return isISO8601(val) ? new Date(val) : undefined;\n }\n return val;\n};\nconst handleSwitchToMonthsView = () => {\n generateMonths();\n viewValue.value = BDatePickerView.Months;\n};\nconst handleSwitchToYearsView = () => {\n generateYears();\n viewValue.value = BDatePickerView.Years;\n};\nconst isNotSyncedModelValue = (val?: Date | string | Array<Date | string>) => {\n const ruleEngine = props.range\n ? [\n !isEmpty(props.modelValue) && isEmpty(val),\n !isEmpty(val) && isEmpty(props.modelValue),\n !isEmpty(props.modelValue) &&\n !isEmpty(val) &&\n (props.modelValue as Array<Date | string>).some(\n (v, i) =>\n getDateObject(v)?.getTime() !==\n getDateObject((val as Array<Date | string>)[i])?.getTime(),\n ),\n ]\n : [\n !props.modelValue && val,\n !val && props.modelValue,\n props.modelValue &&\n val &&\n getDateObject(props.modelValue as Date | string)?.getTime() !==\n getDateObject(val as Date | string)?.getTime(),\n ];\n return ruleEngine.some((r) => r);\n};\nconst handleCancel = () => {\n isVisibleMenu.value = false;\n};\nconst handleConfirm = () => {\n isVisibleMenu.value = false;\n if (props.range) {\n if (valueRangeDisplay.value.length === 2) {\n value.value = [\n getConsistentValue(\n new Date(\n valueRangeDisplay.value[0].year!,\n valueRangeDisplay.value[0].month!,\n valueRangeDisplay.value[0].date,\n ),\n ),\n getConsistentValue(\n new Date(\n valueRangeDisplay.value[1].year!,\n valueRangeDisplay.value[1].month!,\n valueRangeDisplay.value[1].date,\n ),\n ),\n ];\n } else {\n value.value = undefined;\n }\n } else {\n if (\n !isNil(valueDisplay.value.year) &&\n !isNil(valueDisplay.value.month) &&\n !isNil(valueDisplay.value.date)\n ) {\n value.value = getConsistentValue(\n new Date(\n valueDisplay.value.year,\n valueDisplay.value.month,\n valueDisplay.value.date,\n ),\n );\n } else {\n value.value = undefined;\n }\n }\n viewDate.value = cloneItem(viewDateDisplay.value);\n};\nconst cloneItem = (\n item: BDatePickerDateItem,\n ignoreDate?: boolean,\n): BDatePickerDateItem => ({\n year: item.year,\n month: item.month,\n date: ignoreDate ? undefined : item.date,\n});\nconst cloneItemFromDate = (\n date: Date | string,\n ignoreDate?: boolean,\n): BDatePickerDateItem => ({\n year: getDateObject(date)!.getFullYear(),\n month: getDateObject(date)!.getMonth(),\n date: ignoreDate ? undefined : getDateObject(date)!.getDate(),\n});\nconst cloneItemFromDateRange = (\n dateRange: Array<Date | string>,\n ignoreDate?: boolean,\n): BDatePickerDateItem[] => [\n {\n year: getDateObject(dateRange[0])!.getFullYear(),\n month: getDateObject(dateRange[0])!.getMonth(),\n date: ignoreDate ? undefined : getDateObject(dateRange[0])!.getDate(),\n },\n {\n year: getDateObject(dateRange[1])!.getFullYear(),\n month: getDateObject(dateRange[1])!.getMonth(),\n date: ignoreDate ? undefined : getDateObject(dateRange[1])!.getDate(),\n },\n];\nconst handleSelectYear = (item: BDatePickerDateItem) => {\n viewDateDisplay.value = cloneItem(item);\n generateMonths();\n viewValue.value = BDatePickerView.Months;\n};\nconst handleSelectMonth = (item: BDatePickerDateItem) => {\n viewDateDisplay.value = cloneItem(item);\n generateDates();\n viewValue.value = BDatePickerView.Dates;\n};\nconst handleSelectDate = (item: BDatePickerDateItem) => {\n if (\n item.year === valueDisplay.value.year &&\n item.month === valueDisplay.value.month &&\n item.date === valueDisplay.value.date\n ) {\n // Item will be unselected when clicking again on it\n valueDisplay.value = cloneItem({});\n } else {\n valueDisplay.value = cloneItem(item);\n viewDateDisplay.value = cloneItem(item, true);\n generateDates();\n }\n};\nconst handleSelectDateRange = ({ year, month, date }: BDatePickerDateItem) => {\n const valueRangeDisplayLength = valueRangeDisplay.value.length;\n if (valueRangeDisplayLength === 0) {\n valueRangeDisplay.value.push({ year, month, date });\n } else if (valueRangeDisplayLength === 1) {\n const foundIndex = valueRangeDisplay.value.findIndex(\n (i) => i.year === year && i.month === month && i.date === date,\n );\n if (foundIndex !== -1) {\n valueRangeDisplay.value.splice(foundIndex, 1);\n } else {\n if (\n new Date(year!, month!, date) >\n new Date(\n valueRangeDisplay.value[0].year!,\n valueRangeDisplay.value[0].month!,\n valueRangeDisplay.value[0].date,\n )\n ) {\n valueRangeDisplay.value.push({ year, month, date });\n } else {\n valueRangeDisplay.value.unshift({ year, month, date });\n }\n }\n } else if (valueRangeDisplayLength === 2) {\n const foundIndex = valueRangeDisplay.value.findIndex(\n (i) => i.year === year && i.month === month && i.date === date,\n );\n if (foundIndex !== -1) {\n valueRangeDisplay.value.splice(foundIndex, 1);\n } else {\n valueRangeDisplay.value = [];\n valueRangeDisplay.value.push({ year, month, date });\n }\n }\n\n viewDateDisplay.value = {\n year,\n month,\n };\n generateDates();\n};\nconst handleSwitchToPreviousDecade = () => {\n switchToDecade(-1);\n generateYears();\n};\nconst handleSwitchToNextDecade = () => {\n switchToDecade(1);\n generateYears();\n};\nconst switchToDecade = (decadeCount: number) => {\n if (isNil(viewDateDisplay.value.year)) {\n return;\n }\n viewDateDisplay.value.year += decadeCount * 10;\n};\nconst handleSwitchToPreviousYear = () => {\n switchToYear(-1);\n generateMonths();\n};\nconst handleSwitchToNextYear = () => {\n switchToYear(1);\n generateMonths();\n};\nconst switchToYear = (yearCount: number) => {\n if (isNil(viewDateDisplay.value.year)) {\n return;\n }\n viewDateDisplay.value.year += yearCount;\n};\nconst handleSwitchToPreviousMonth = () => {\n switchToMonth(-1);\n generateDates();\n};\nconst handleSwitchToNextMonth = () => {\n switchToMonth(1);\n generateDates();\n};\nconst switchToMonth = (monthCount: number) => {\n // Vue: updating the existing Date object directly won’t trigger reactivity, so creating a new Date object to ensure reactivity\n if (isNil(viewDateDisplay.value.month)) {\n return;\n }\n viewDateDisplay.value.month += monthCount;\n};\nconst openMenu = () => {\n isVisibleMenu.value = true;\n};\nconst handleToggleMenu = () => {\n if (props.disabled) {\n return;\n }\n isVisibleMenu.value = !isVisibleMenu.value;\n};\nconst isOutOfRangeYear = (year: number) =>\n (minValue.value ? minValue.value.getFullYear() > year : false) ||\n (maxValue.value ? year > maxValue.value.getFullYear() : false);\nconst isOutOfRangeMonth = (year: number, month: number) =>\n (minValue.value\n ? (minValue.value.getFullYear() === year &&\n minValue.value.getMonth() > month) ||\n minValue.value.getFullYear() > year\n : false) ||\n (maxValue.value\n ? (maxValue.value.getFullYear() === year &&\n maxValue.value.getMonth() < month) ||\n maxValue.value.getFullYear() < year\n : false);\nconst isOutOfRangeDate = (date: Date) =>\n (minValue.value ? minValue.value > date : false) ||\n (maxValue.value ? date > maxValue.value : false);\nconst getStartOfMonth = (year: number, month: number) =>\n new Date(year, month, 1);\nconst getEndOfMonth = (year: number, month: number) =>\n new Date(year, month + 1, 0);\nconst generateYears = () => {\n years.value = [];\n\n if (isNil(viewDateDisplay.value.year)) {\n return;\n }\n\n const decade = viewDateDisplay.value.year.toString().slice(0, -1);\n const startYear = +`${decade}0`;\n const endYear = +`${decade}9`;\n\n years.value.push({\n year: startYear - 1,\n secondary: true,\n disabled: isOutOfRangeYear(startYear - 1),\n });\n for (let i = startYear; i <= endYear; i++) {\n years.value.push({\n year: i,\n disabled: isOutOfRangeYear(i),\n });\n }\n years.value.push({\n year: endYear + 1,\n secondary: true,\n disabled: isOutOfRangeYear(endYear + 1),\n });\n\n viewHeading.value = `${decade}0 - ${decade}9`;\n\n const startDate = getStartOfMonth(startYear, 0);\n const endDate = getEndOfMonth(endYear, 11);\n updateNavDisabledState(startDate, endDate);\n};\nconst generateMonths = () => {\n months.value = [];\n\n if (isNil(viewDateDisplay.value.year)) {\n return;\n }\n\n for (let i = 0; i < 12; i++) {\n months.value.push({\n year: viewDateDisplay.value.year,\n month: i,\n disabled: isOutOfRangeMonth(viewDateDisplay.value.year, i),\n });\n }\n\n viewHeading.value = viewDateDisplay.value.year.toString();\n\n const startDate = getStartOfMonth(viewDateDisplay.value.year, 0);\n const endDate = getEndOfMonth(viewDateDisplay.value.year, 11);\n updateNavDisabledState(startDate, endDate);\n};\nconst generateDates = () => {\n dates.value = [];\n\n if (isNil(viewDateDisplay.value.year) || isNil(viewDateDisplay.value.month)) {\n return;\n }\n\n const startOfMonth = getStartOfMonth(\n viewDateDisplay.value.year,\n viewDateDisplay.value.month,\n );\n const endOfMonth = getEndOfMonth(\n viewDateDisplay.value.year,\n viewDateDisplay.value.month,\n );\n const d = structuredClone(startOfMonth);\n\n let preDateCount = d.getDay() === 0 ? 6 : d.getDay() - 1; // Sunday -> d.getDay() === 0\n while (preDateCount > 0) {\n const preD = structuredClone(d);\n preD.setDate(-(preDateCount - 1));\n dates.value.push({\n date: preD.getDate(),\n month: preD.getMonth(),\n year: preD.getFullYear(),\n secondary: true,\n disabled: isOutOfRangeDate(preD),\n });\n preDateCount--;\n }\n\n while (d <= endOfMonth) {\n dates.value.push({\n date: d.getDate(),\n month: d.getMonth(),\n year: d.getFullYear(),\n disabled: isOutOfRangeDate(d),\n });\n d.setDate(d.getDate() + 1);\n }\n\n const postDateCount = d.getDay() === 0 ? 1 : 7 - d.getDay() + 1;\n if (postDateCount < 6) {\n let i = 1;\n const postD = structuredClone(d);\n while (i <= postDateCount) {\n postD.setDate(i);\n dates.value.push({\n date: postD.getDate(),\n month: postD.getMonth(),\n year: postD.getFullYear(),\n secondary: true,\n disabled: isOutOfRangeDate(postD),\n });\n i++;\n }\n }\n\n // NOTE: Basically 'date' is not unnecessary, just put a random value 1\n viewHeading.value = formatMonthYear(\n new Date(viewDateDisplay.value.year, viewDateDisplay.value.month, 1),\n ).toString();\n updateNavDisabledState(startOfMonth, endOfMonth);\n};\nconst updateNavDisabledState = (startDate: Date, endDate: Date) => {\n viewLeftNavDisabled.value = minValue.value\n ? minValue.value >= startDate\n : false;\n viewRightNavDisabled.value = maxValue.value\n ? maxValue.value <= endDate\n : false;\n};\nconst getInputMaskDate = () => {\n const arr = mask.value.split('/');\n\n const result: Record<string, string> = {\n 'vi-VN': `${arr[2]}-${arr[1]}-${arr[0]}`,\n 'en-US': `${arr[2]}-${arr[0]}-${arr[1]}`,\n };\n\n return isISO8601(result[locale.value])\n ? new Date(result[locale.value])\n : undefined;\n};\nconst onAccept = () => {\n if (!mask.unmaskedValue) {\n value.value = undefined;\n valueDisplay.value = {\n year: CURRENT_DATE.getFullYear(),\n month: CURRENT_DATE.getMonth(),\n };\n }\n};\nconst onComplete = () => {\n const date = getInputMaskDate();\n if (date) {\n value.value = getConsistentValue(date);\n valueDisplay.value = cloneItemFromDate(date);\n viewDate.value = cloneItemFromDate(date, true);\n viewDateDisplay.value = cloneItemFromDate(date, true);\n generateDates();\n } else {\n value.value = undefined;\n valueDisplay.value = {\n year: CURRENT_DATE.getFullYear(),\n month: CURRENT_DATE.getMonth(),\n };\n }\n};\nconst onBlur = () => {\n const date = getInputMaskDate();\n validate();\n if (!isNotSyncedModelValue(date)) {\n return;\n }\n if (date) {\n value.value = getConsistentValue(date);\n viewDate.value = cloneItemFromDate(date, true);\n valueDisplay.value = cloneItemFromDate(date);\n viewDateDisplay.value = cloneItemFromDate(date, true);\n generateDates();\n } else {\n value.value = undefined;\n valueDisplay.value = {\n year: CURRENT_DATE.getFullYear(),\n month: CURRENT_DATE.getMonth(),\n };\n }\n};\n\n// const formatDateMoment = (date: Date | string) =>\n// moment(date).format(DATE_FORMAT);\nconst closeOnClickOutside = (event: any) => {\n const refs = [datePickerRef.value, datePickerMenuRef.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n closeDatePickerMenu();\n }\n};\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n closeDatePickerMenu();\n }\n};\nconst closeDatePickerMenu = () => {\n isVisibleMenu.value = false;\n datePickerInputRef.value?.blur();\n datePickerInputMaskRef.value?.blur();\n};\nconst initIMask = () => {\n mask = IMask(datePickerInputMaskRef.value!, inputMaskOptions.value);\n // mask.value = formatDateMoment(\n // getDateObject(props.modelValue as Date | string) || '',\n // );\n updateMaskValue();\n mask.on('accept', onAccept);\n mask.on('complete', onComplete);\n};\nconst destroyIMask = () => {\n mask && mask.destroy();\n};\nconst init = () => {\n generateYears();\n generateMonths();\n generateDates();\n};\n\ninit();\n//#endregion\n\n//#region Lifecycle Hooks\nonMounted(() => {\n if (!props.range) {\n initIMask();\n }\n document.addEventListener('click', closeOnClickOutside);\n document.addEventListener('keydown', closeOnEscapePressed);\n});\nonBeforeUnmount(() => {\n destroyIMask();\n unlockScrollBody();\n resetPosition(datePickerRef.value!, datePickerMenuRef.value!); // Make sure dropdown menu unmounted with itself\n document.removeEventListener('keydown', closeOnEscapePressed);\n document.removeEventListener('click', closeOnClickOutside);\n});\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n ref_key: \"datePickerRef\",\n ref: datePickerRef\n }, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (props.range)\n ? (_openBlock(), _createElementBlock(\"input\", {\n key: 0,\n id: id.value,\n ref_key: \"datePickerInputRef\",\n ref: datePickerInputRef,\n class: _normalizeClass([inputCssClassValue.value, \"ds-drop-shadow-light\"]),\n disabled: _ctx.disabled,\n placeholder: _ctx.placeholder,\n value: formattedValue.value,\n readonly: \"\",\n onFocus: openMenu\n }, null, 42, _hoisted_3))\n : (_openBlock(), _createElementBlock(\"input\", {\n key: 1,\n id: id.value,\n ref_key: \"datePickerInputMaskRef\",\n ref: datePickerInputMaskRef,\n class: _normalizeClass([inputCssClassValue.value, \"ds-drop-shadow-light\"]),\n disabled: _ctx.disabled,\n placeholder: _ctx.placeholder,\n onBlur: onBlur\n }, null, 42, _hoisted_4)),\n _createVNode(BDatePickerIcon, {\n disabled: props.disabled,\n onClick: handleToggleMenu,\n onKeyup: _withKeys(handleToggleMenu, [\"enter\"])\n }, null, 8, [\"disabled\"])\n ]),\n _withDirectives(_createElementVNode(\"div\", {\n ref_key: \"datePickerMenuRef\",\n ref: datePickerMenuRef,\n class: \"b-date-picker__menu sm:ds-items-[unset] sm:ds-justify-[unset] ds-fixed ds-left-0 ds-top-0 ds-z-100 ds-flex ds-h-full ds-w-full ds-items-center ds-justify-center ds-bg-black/65 ds-backdrop-blur-sm sm:ds-absolute sm:ds-left-[unset] sm:ds-top-[unset] sm:ds-z-50 sm:ds-block sm:ds-h-auto sm:ds-w-auto sm:ds-bg-transparent sm:ds-backdrop-blur-none\"\n }, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createVNode(BDatePickerButtonPrevious, {\n disabled: viewLeftNavDisabled.value,\n onClick: _cache[0] || (_cache[0] = ($event: any) => (viewData.value[viewValue.value].handleClickPreview()))\n }, null, 8, [\"disabled\"]),\n _createVNode(BDatePickerHeading, {\n class: _normalizeClass({\n 'ds-cursor-pointer hover:ds-bg-blue-light focus-visible:ds-bg-blue-light':\n viewData.value[viewValue.value].handleClickHeading,\n }),\n onClick: viewData.value[viewValue.value].handleClickHeading\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(viewHeading.value), 1)\n ]),\n _: 1\n }, 8, [\"class\", \"onClick\"]),\n _createVNode(BDatePickerButtonNext, {\n disabled: viewRightNavDisabled.value,\n onClick: _cache[1] || (_cache[1] = ($event: any) => (viewData.value[viewValue.value].handleClickNext()))\n }, null, 8, [\"disabled\"])\n ]),\n (viewValue.value === _unref(BDatePickerView).Years)\n ? (_openBlock(), _createBlock(BDatePickerGridYear, {\n key: 0,\n year: valueDisplay.value,\n years: years.value,\n \"onSelect:year\": handleSelectYear\n }, null, 8, [\"year\", \"years\"]))\n : _createCommentVNode(\"\", true),\n (viewValue.value === _unref(BDatePickerView).Months)\n ? (_openBlock(), _createBlock(BDatePickerGridMonth, {\n key: 1,\n month: valueDisplay.value,\n months: months.value,\n \"onSelect:month\": handleSelectMonth\n }, null, 8, [\"month\", \"months\"]))\n : _createCommentVNode(\"\", true),\n (viewValue.value === _unref(BDatePickerView).Dates)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n (props.range)\n ? (_openBlock(), _createBlock(BDatePickerGridDateRange, {\n key: 0,\n \"date-range\": valueRangeDisplay.value,\n dates: dates.value,\n \"onSelect:date\": handleSelectDateRange\n }, null, 8, [\"date-range\", \"dates\"]))\n : (_openBlock(), _createBlock(BDatePickerGridDate, {\n key: 1,\n date: valueDisplay.value,\n dates: dates.value,\n \"onSelect:date\": handleSelectDate\n }, null, 8, [\"date\", \"dates\"]))\n ], 64))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_7, [\n _createVNode(BButton, { onClick: handleCancel }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('ds.components.base.date_picker.buttons.cancel')), 1)\n ]),\n _: 1\n }),\n _createVNode(BButton, {\n type: \"primary\",\n onClick: handleConfirm\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('ds.components.base.date_picker.buttons.confirm')), 1)\n ]),\n _: 1\n })\n ])\n ])\n ], 512), [\n [_vShow, isVisibleMenu.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","_sfc_main","_defineComponent","BDatePickerView","__props","__emit","props","emit","mask","CURRENT_DATE","smAndLarger","useBreakpoints","breakpointsTailwind","t","locale","useI18n","formatMonthYear","formatDate","dateFormat","convertToDate","useDate","valueDisplay","ref","valueRangeDisplay","viewDate","viewDateDisplay","isVisibleMenu","viewValue","datePickerRef","datePickerMenuRef","datePickerInputRef","datePickerInputMaskRef","dates","months","years","viewHeading","viewLeftNavDisabled","viewRightNavDisabled","minValue","computed","getDateObject","maxValue","validateRequired","val","id","uuid","value","formattedValue","_a","vRules","result","validate","validationResult","useValidationField","inputCssClassValue","inputMaskOptions","IMask","date","str","viewData","handleSwitchToPreviousDecade","handleSwitchToNextDecade","handleSwitchToPreviousYear","handleSwitchToNextYear","handleSwitchToYearsView","handleSwitchToPreviousMonth","handleSwitchToNextMonth","handleSwitchToMonthsView","watch","onAccept","onComplete","updateMaskValue","arr","ensureValueWhenMinDateChange","generateDates","ensureValueWhenMaxDateChange","nextTick","initIMask","lockScrollBody","cloneItemFromDateRange","cloneItemFromDate","cloneItem","ensureVisiblePosition","unlockScrollBody","resetPosition","isNotSyncedModelValue","v","getInputMaskDate","d","getConsistentValue","isISO8601","generateMonths","generateYears","isEmpty","i","_b","r","handleCancel","handleConfirm","isNil","item","ignoreDate","dateRange","handleSelectYear","handleSelectMonth","handleSelectDate","handleSelectDateRange","year","month","valueRangeDisplayLength","foundIndex","switchToDecade","decadeCount","switchToYear","yearCount","switchToMonth","monthCount","openMenu","handleToggleMenu","isOutOfRangeYear","isOutOfRangeMonth","isOutOfRangeDate","getStartOfMonth","getEndOfMonth","decade","startYear","endYear","startDate","endDate","updateNavDisabledState","startOfMonth","endOfMonth","preDateCount","preD","postDateCount","postD","onBlur","closeOnClickOutside","event","closeDatePickerMenu","closeOnEscapePressed","destroyIMask","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_normalizeClass","BDatePickerIcon","_withKeys","_withDirectives","BDatePickerButtonPrevious","$event","BDatePickerHeading","_withCtx","_createTextVNode","_toDisplayString","BDatePickerButtonNext","_unref","_createBlock","BDatePickerGridYear","_createCommentVNode","BDatePickerGridMonth","_Fragment","BDatePickerGridDateRange","BDatePickerGridDate","BButton","_vShow","BErrorMessage"],"mappings":"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"}
1
+ {"version":3,"file":"design-system25.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,8 +1,9 @@
1
- import o from "./design-system51.mjs";
2
- import "./design-system52.mjs";
3
- import r from "./design-system53.mjs";
4
- const m = /* @__PURE__ */ r(o, [["__scopeId", "data-v-b5c5062f"]]);
1
+ import o from "./design-system54.mjs";
2
+ import "./design-system55.mjs";
3
+ import "./design-system56.mjs";
4
+ import t from "./design-system53.mjs";
5
+ const e = /* @__PURE__ */ t(o, [["__scopeId", "data-v-6f2b0dc4"]]);
5
6
  export {
6
- m as default
7
+ e as default
7
8
  };
8
9
  //# sourceMappingURL=design-system26.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system26.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"design-system26.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -1,9 +1,8 @@
1
- import o from "./design-system54.mjs";
2
- import "./design-system55.mjs";
3
- import "./design-system56.mjs";
1
+ import o from "./design-system57.mjs";
2
+ import "./design-system58.mjs";
4
3
  import t from "./design-system53.mjs";
5
- const e = /* @__PURE__ */ t(o, [["__scopeId", "data-v-6f2b0dc4"]]);
4
+ const _ = /* @__PURE__ */ t(o, [["__scopeId", "data-v-1d793d06"]]);
6
5
  export {
7
- e as default
6
+ _ as default
8
7
  };
9
8
  //# sourceMappingURL=design-system27.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system27.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
1
+ {"version":3,"file":"design-system27.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,8 +1,13 @@
1
- import o from "./design-system57.mjs";
2
- import "./design-system58.mjs";
3
- import t from "./design-system53.mjs";
4
- const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-2082b68c"]]);
1
+ import { openBlock as o, createElementBlock as t, renderSlot as r } from "vue";
2
+ import s from "./design-system53.mjs";
3
+ const n = {}, d = { class: "ds-rounded-lg ds-bg-white ds-p-2 ds-shadow" };
4
+ function c(e, l) {
5
+ return o(), t("ul", d, [
6
+ r(e.$slots, "default")
7
+ ]);
8
+ }
9
+ const f = /* @__PURE__ */ s(n, [["render", c]]);
5
10
  export {
6
- p as default
11
+ f as default
7
12
  };
8
13
  //# sourceMappingURL=design-system28.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system28.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"design-system28.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -1,13 +1,26 @@
1
- import { openBlock as o, createElementBlock as t, renderSlot as r } from "vue";
2
- import s from "./design-system53.mjs";
3
- const n = {}, d = { class: "ds-rounded-lg ds-bg-white ds-p-2 ds-shadow" };
4
- function c(e, l) {
5
- return o(), t("ul", d, [
6
- r(e.$slots, "default")
7
- ]);
8
- }
9
- const f = /* @__PURE__ */ s(n, [["render", c]]);
1
+ import { defineComponent as a, computed as c, openBlock as r, createElementBlock as o, renderSlot as d, createTextVNode as l, toDisplayString as i, createCommentVNode as p } from "vue";
2
+ const u = { class: "ds-min-h-[1rem]" }, m = {
3
+ key: 0,
4
+ class: "ds-text-xs ds-text-red-500"
5
+ }, _ = /* @__PURE__ */ a({
6
+ __name: "BErrorMessage",
7
+ props: {
8
+ errorMessage: { type: [String, Function], default: "" }
9
+ },
10
+ setup(n) {
11
+ const e = n, t = c(
12
+ () => typeof e.errorMessage == "function" ? e.errorMessage() : e.errorMessage
13
+ );
14
+ return (s, f) => (r(), o("div", u, [
15
+ t.value || s.$slots.default ? (r(), o("div", m, [
16
+ d(s.$slots, "default", {}, () => [
17
+ l(i(t.value), 1)
18
+ ])
19
+ ])) : p("", !0)
20
+ ]));
21
+ }
22
+ });
10
23
  export {
11
- f as default
24
+ _ as default
12
25
  };
13
26
  //# sourceMappingURL=design-system29.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system29.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
1
+ {"version":3,"file":"design-system29.mjs","sources":["../src/components/BErrorMessage.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-min-h-[1rem]\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"ds-text-xs ds-text-red-500\"\n}\n\nimport type { ErrorMessageFunction } from '@/types';\nimport { computed } from 'vue';\n\n//#region Props\nexport interface BErrorMessageProps {\n /**\n * A text or a function returning a text.\n */\n errorMessage?: string | ErrorMessageFunction;\n}\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BErrorMessage',\n props: {\n errorMessage: { type: [String, Function], default: '' }\n },\n setup(__props: any) {\n\nconst props = __props;\n//#endregion\n\n//#region Data\nconst message = computed(() =>\n typeof props.errorMessage === 'function'\n ? props.errorMessage()\n : props.errorMessage,\n);\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (message.value || _ctx.$slots.default)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _renderSlot(_ctx.$slots, \"default\", {}, () => [\n _createTextVNode(_toDisplayString(message.value), 1)\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_sfc_main","_defineComponent","__props","props","message","computed","_ctx","_cache","_openBlock","_createElementBlock","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode"],"mappings":";AAGA,MAAMA,IAAa,EAAE,OAAO,qBACtBC,IAAa;AAAA,EACjB,KAAK;AAAA,EACL,OAAO;AACT,GAc4BC,IAAiBC,gBAAAA,EAAA;AAAA,EAC3C,QAAQ;AAAA,EACR,OAAO;AAAA,IACL,cAAc,EAAE,MAAM,CAAC,QAAQ,QAAQ,GAAG,SAAS,GAAG;AAAA,EACxD;AAAA,EACA,MAAMC,GAAc;AAEtB,UAAMC,IAAQD,GAIRE,IAAUC;AAAA,MAAS,MACvB,OAAOF,EAAM,gBAAiB,aAC1BA,EAAM,aAAA,IACNA,EAAM;AAAA,IAAA;AAIL,WAAA,CAACG,GAAUC,OACRC,EAAW,GAAGC,EAAoB,OAAOX,GAAY;AAAA,MAC1DM,EAAQ,SAASE,EAAK,OAAO,WACzBE,KAAcC,EAAoB,OAAOV,GAAY;AAAA,QACpDW,EAAYJ,EAAK,QAAQ,WAAW,IAAI,MAAM;AAAA,UAC5CK,EAAiBC,EAAiBR,EAAQ,KAAK,GAAG,CAAC;AAAA,QAAA,CACpD;AAAA,MAAA,CACF,KACDS,EAAoB,IAAI,EAAI;AAAA,IAAA,CACjC;AAAA,EAEH;AAEA,CAAC;"}
@@ -1,79 +1,97 @@
1
- import { defineComponent as w, computed as u, openBlock as o, createElementBlock as i, normalizeClass as n, unref as r, createElementVNode as t, createCommentVNode as a, renderSlot as x } from "vue";
2
- import { BToastItemType as d } from "./design-system5.mjs";
3
- const v = {
1
+ import { defineComponent as u, computed as w, openBlock as l, createElementBlock as d, normalizeClass as v, unref as i, createElementVNode as e, createCommentVNode as a, renderSlot as n } from "vue";
2
+ import { BToastItemType as o } from "./design-system5.mjs";
3
+ const x = {
4
4
  key: 0,
5
- class: "ds-flex ds-flex-initial ds-items-center ds-pr-1"
6
- }, h = {
5
+ class: "ds-flex ds-flex-initial ds-items-center ds-pr-2"
6
+ }, g = {
7
7
  key: 1,
8
- class: "ds-flex ds-flex-initial ds-items-center ds-pr-1"
9
- }, g = { class: "ds-flex-auto ds-text-sm ds-font-normal" }, y = ["innerHTML"], z = /* @__PURE__ */ w({
8
+ class: "ds-flex ds-flex-initial ds-items-center ds-pr-2"
9
+ }, y = { class: "ds-flex ds-flex-auto ds-flex-wrap ds-text-sm" }, h = {
10
+ key: 0,
11
+ class: "ds-w-full"
12
+ }, k = ["innerHTML"], L = {
13
+ key: 1,
14
+ class: "ds-w-full"
15
+ }, M = ["innerHTML"], T = /* @__PURE__ */ u({
10
16
  __name: "BToastItem",
11
17
  props: {
12
18
  text: { default: "" },
13
- type: { default: d.Default },
19
+ message: { default: "" },
20
+ type: { default: o.Default },
14
21
  hideClose: { type: Boolean, default: !1 }
15
22
  },
16
23
  emits: ["close"],
17
- setup(c, { emit: p }) {
18
- const l = c, m = p, f = u(() => {
19
- let e = "ds-flex ds-items-center ds-w-80 ds-px-4 ds-py-5 ds-rounded-lg ds-shadow-2xl ";
20
- switch (l.type) {
21
- case d.Success:
22
- e += "ds-bg-[#00a86b] ds-text-white ";
24
+ setup(c, { emit: m }) {
25
+ const r = c, f = m, p = w(() => {
26
+ let s = "ds-flex ds-items-center ds-w-80 ds-px-4 ds-py-5 ds-rounded-lg ds-shadow-2xl ";
27
+ switch (r.type) {
28
+ case o.Success:
29
+ s += "";
23
30
  break;
24
- case d.Error:
25
- e += "ds-bg-red-600 ds-text-white ";
31
+ case o.Error:
32
+ s += "";
26
33
  break;
27
- case d.Default:
34
+ case o.Default:
28
35
  default:
29
- e += "ds-bg-white ds-text-primary-t ";
36
+ s += "";
30
37
  }
31
- return e;
38
+ return s;
32
39
  });
33
- return (e, s) => (o(), i("div", {
34
- class: n(f.value)
40
+ return (s, t) => (l(), d("div", {
41
+ class: v(p.value)
35
42
  }, [
36
- r(d).Success === l.type ? (o(), i("div", v, s[1] || (s[1] = [
37
- t("svg", {
38
- class: "ds-h-5 ds-w-5 ds-fill-white",
43
+ i(o).Success === r.type ? (l(), d("div", x, t[1] || (t[1] = [
44
+ e("svg", {
45
+ class: "ds-h-5 ds-w-5 ds-fill-[#00a86b]",
39
46
  viewBox: "0 0 512 512",
40
47
  xmlns: "http://www.w3.org/2000/svg"
41
48
  }, [
42
- t("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z" })
49
+ e("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z" })
43
50
  ], -1)
44
- ]))) : r(d).Error === l.type ? (o(), i("div", h, s[2] || (s[2] = [
45
- t("svg", {
46
- class: "ds-h-5 ds-w-5 ds-fill-white",
51
+ ]))) : i(o).Error === r.type ? (l(), d("div", g, t[2] || (t[2] = [
52
+ e("svg", {
53
+ class: "ds-h-5 ds-w-5 ds-fill-red-600",
47
54
  viewBox: "0 0 512 512",
48
55
  xmlns: "http://www.w3.org/2000/svg"
49
56
  }, [
50
- t("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z" })
57
+ e("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z" })
51
58
  ], -1)
52
59
  ]))) : a("", !0),
53
- t("div", g, [
54
- x(e.$slots, "default", {}, () => [
55
- t("div", { innerHTML: e.text }, null, 8, y)
56
- ])
60
+ e("div", y, [
61
+ s.text || s.$slots.text ? (l(), d("div", h, [
62
+ n(s.$slots, "text", {}, () => [
63
+ e("div", {
64
+ class: "ds-font-semibold ds-text-black/80",
65
+ innerHTML: s.text
66
+ }, null, 8, k)
67
+ ])
68
+ ])) : a("", !0),
69
+ s.message || s.$slots.message ? (l(), d("div", L, [
70
+ n(s.$slots, "message", {}, () => [
71
+ e("div", {
72
+ class: "ds-text-gray-500",
73
+ innerHTML: s.message
74
+ }, null, 8, M)
75
+ ])
76
+ ])) : a("", !0)
57
77
  ]),
58
- l.hideClose ? a("", !0) : (o(), i("div", {
78
+ r.hideClose ? a("", !0) : (l(), d("div", {
59
79
  key: 2,
60
80
  class: "ds-flex ds-flex-initial ds-cursor-pointer ds-items-center ds-pl-1",
61
- onClick: s[0] || (s[0] = (k) => m("close"))
62
- }, [
63
- (o(), i("svg", {
64
- class: n([[
65
- r(d).Default === l.type ? "ds-fill-primary-t" : "ds-fill-white"
66
- ], "ds-h-5 ds-w-5"]),
81
+ onClick: t[0] || (t[0] = (B) => f("close"))
82
+ }, t[3] || (t[3] = [
83
+ e("svg", {
84
+ class: "ds-h-5 ds-w-5 ds-fill-gray-600",
67
85
  viewBox: "0 0 384 512",
68
86
  xmlns: "http://www.w3.org/2000/svg"
69
- }, s[3] || (s[3] = [
70
- t("path", { d: "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z" }, null, -1)
71
- ]), 2))
72
- ]))
87
+ }, [
88
+ e("path", { d: "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z" })
89
+ ], -1)
90
+ ])))
73
91
  ], 2));
74
92
  }
75
93
  });
76
94
  export {
77
- z as default
95
+ T as default
78
96
  };
79
97
  //# sourceMappingURL=design-system40.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system40.mjs","sources":["../src/components/BToast/BToastItem.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"ds-flex ds-flex-initial ds-items-center ds-pr-1\"\n}\nconst _hoisted_2 = {\n key: 1,\n class: \"ds-flex ds-flex-initial ds-items-center ds-pr-1\"\n}\nconst _hoisted_3 = { class: \"ds-flex-auto ds-text-sm ds-font-normal\" }\nconst _hoisted_4 = [\"innerHTML\"]\n\nimport { BToastItemType } from '@/constants/Enums';\nimport { computed } from 'vue';\n\n//#region Props\nexport interface Props {\n text?: string;\n type?: `${BToastItemType}`;\n hideClose?: boolean;\n}\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BToastItem',\n props: {\n text: { default: '' },\n type: { default: BToastItemType.Default },\n hideClose: { type: Boolean, default: false }\n },\n emits: [\"close\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props;\n//#endregion\n\n//#region Events\nconst emit = __emit;\n//#endregion\n\n//#region Data\nconst cssClass = computed<string>(() => {\n let result = `ds-flex ds-items-center ds-w-80 ds-px-4 ds-py-5 ds-rounded-lg ds-shadow-2xl `;\n\n switch (props.type) {\n case BToastItemType.Success:\n result += `ds-bg-[#00a86b] ds-text-white `;\n break;\n case BToastItemType.Error:\n result += `ds-bg-red-600 ds-text-white `;\n break;\n case BToastItemType.Default:\n default:\n result += `ds-bg-white ds-text-primary-t `;\n }\n\n return result;\n});\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass(cssClass.value)\n }, [\n (_unref(BToastItemType).Success === props.type)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, _cache[1] || (_cache[1] = [\n _createElementVNode(\"svg\", {\n class: \"ds-h-5 ds-w-5 ds-fill-white\",\n viewBox: \"0 0 512 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, [\n _createElementVNode(\"path\", { d: \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z\" })\n ], -1)\n ])))\n : (_unref(BToastItemType).Error === props.type)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, _cache[2] || (_cache[2] = [\n _createElementVNode(\"svg\", {\n class: \"ds-h-5 ds-w-5 ds-fill-white\",\n viewBox: \"0 0 512 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, [\n _createElementVNode(\"path\", { d: \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\" })\n ], -1)\n ])))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_3, [\n _renderSlot(_ctx.$slots, \"default\", {}, () => [\n _createElementVNode(\"div\", { innerHTML: _ctx.text }, null, 8, _hoisted_4)\n ])\n ]),\n (!props.hideClose)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: \"ds-flex ds-flex-initial ds-cursor-pointer ds-items-center ds-pl-1\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('close')))\n }, [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[\n _unref(BToastItemType).Default === props.type\n ? 'ds-fill-primary-t'\n : 'ds-fill-white',\n ], \"ds-h-5 ds-w-5\"]),\n viewBox: \"0 0 384 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _cache[3] || (_cache[3] = [\n _createElementVNode(\"path\", { d: \"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z\" }, null, -1)\n ]), 2))\n ]))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_sfc_main","_defineComponent","BToastItemType","__props","__emit","props","emit","cssClass","computed","result","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_unref","_createElementVNode","_createCommentVNode","_renderSlot","$event"],"mappings":";;AAGA,MAAMA,IAAa;AAAA,EACjB,KAAK;AAAA,EACL,OAAO;AACT,GACMC,IAAa;AAAA,EACjB,KAAK;AAAA,EACL,OAAO;AACT,GACMC,IAAa,EAAE,OAAO,4CACtBC,IAAa,CAAC,WAAW,GAaHC,IAAiBC,gBAAAA,EAAA;AAAA,EAC3C,QAAQ;AAAA,EACR,OAAO;AAAA,IACL,MAAM,EAAE,SAAS,GAAG;AAAA,IACpB,MAAM,EAAE,SAASC,EAAe,QAAQ;AAAA,IACxC,WAAW,EAAE,MAAM,SAAS,SAAS,GAAM;AAAA,EAC7C;AAAA,EACA,OAAO,CAAC,OAAO;AAAA,EACf,MAAMC,GAAc,EAAE,MAAMC,KAAU;AAExC,UAAMC,IAAQF,GAIRG,IAAOF,GAIPG,IAAWC,EAAiB,MAAM;AACtC,UAAIC,IAAS;AAEb,cAAQJ,EAAM,MAAM;AAAA,QAClB,KAAKH,EAAe;AACR,UAAAO,KAAA;AACV;AAAA,QACF,KAAKP,EAAe;AACR,UAAAO,KAAA;AACV;AAAA,QACF,KAAKP,EAAe;AAAA,QACpB;AACY,UAAAO,KAAA;AAAA,MACd;AAEO,aAAAA;AAAA,IAAA,CACR;AAGM,WAAA,CAACC,GAAUC,OACRC,EAAA,GAAcC,EAAoB,OAAO;AAAA,MAC/C,OAAOC,EAAgBP,EAAS,KAAK;AAAA,IAAA,GACpC;AAAA,MACAQ,EAAOb,CAAc,EAAE,YAAYG,EAAM,QACrCO,EAAW,GAAGC,EAAoB,OAAOjB,GAAYe,EAAO,CAAC,MAAMA,EAAO,CAAC,IAAI;AAAA,QAC9EK,EAAoB,OAAO;AAAA,UACzB,OAAO;AAAA,UACP,SAAS;AAAA,UACT,OAAO;AAAA,QAAA,GACN;AAAA,UACDA,EAAoB,QAAQ,EAAE,GAAG,qMAAqM;AAAA,WACrO,EAAE;AAAA,MAAA,EACL,KACDD,EAAOb,CAAc,EAAE,UAAUG,EAAM,QACrCO,EAAA,GAAcC,EAAoB,OAAOhB,GAAYc,EAAO,CAAC,MAAMA,EAAO,CAAC,IAAI;AAAA,QAC9EK,EAAoB,OAAO;AAAA,UACzB,OAAO;AAAA,UACP,SAAS;AAAA,UACT,OAAO;AAAA,QAAA,GACN;AAAA,UACDA,EAAoB,QAAQ,EAAE,GAAG,8LAA8L;AAAA,WAC9N,EAAE;AAAA,MACL,EAAA,KACFC,EAAoB,IAAI,EAAI;AAAA,MAClCD,EAAoB,OAAOlB,GAAY;AAAA,QACrCoB,EAAYR,EAAK,QAAQ,WAAW,IAAI,MAAM;AAAA,UAC5CM,EAAoB,OAAO,EAAE,WAAWN,EAAK,QAAQ,MAAM,GAAGX,CAAU;AAAA,QAAA,CACzE;AAAA,MAAA,CACF;AAAA,MACCM,EAAM,YAkBJY,EAAoB,IAAI,EAAI,KAjB3BL,EAAW,GAAGC,EAAoB,OAAO;AAAA,QACxC,KAAK;AAAA,QACL,OAAO;AAAA,QACP,SAASF,EAAO,CAAC,MAAMA,EAAO,CAAC,IAAI,CAACQ,MAAiBb,EAAK,OAAO;AAAA,MAAA,GAChE;AAAA,SACAM,EAAc,GAAAC,EAAoB,OAAO;AAAA,UACxC,OAAOC,EAAgB,CAAC;AAAA,YAC1BC,EAAOb,CAAc,EAAE,YAAYG,EAAM,OACrC,sBACA;AAAA,UACN,GAAG,eAAe,CAAC;AAAA,UACf,SAAS;AAAA,UACT,OAAO;AAAA,WACNM,EAAO,CAAC,MAAMA,EAAO,CAAC,IAAI;AAAA,UAC3BK,EAAoB,QAAQ,EAAE,GAAG,0RAA0R,GAAG,MAAM,EAAE;AAAA,YACpU,CAAC;AAAA,MAAA,CACN;AAAA,OAEJ,CAAC;AAAA,EAEN;AAEA,CAAC;"}
1
+ {"version":3,"file":"design-system40.mjs","sources":["../src/components/BToast/BToastItem.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"ds-flex ds-flex-initial ds-items-center ds-pr-2\"\n}\nconst _hoisted_2 = {\n key: 1,\n class: \"ds-flex ds-flex-initial ds-items-center ds-pr-2\"\n}\nconst _hoisted_3 = { class: \"ds-flex ds-flex-auto ds-flex-wrap ds-text-sm\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"ds-w-full\"\n}\nconst _hoisted_5 = [\"innerHTML\"]\nconst _hoisted_6 = {\n key: 1,\n class: \"ds-w-full\"\n}\nconst _hoisted_7 = [\"innerHTML\"]\n\nimport { BToastItemType } from '@/constants/Enums';\nimport { computed } from 'vue';\n\n//#region Props\nexport interface Props {\n text?: string;\n message?: string;\n type?: `${BToastItemType}`;\n hideClose?: boolean;\n}\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BToastItem',\n props: {\n text: { default: '' },\n message: { default: '' },\n type: { default: BToastItemType.Default },\n hideClose: { type: Boolean, default: false }\n },\n emits: [\"close\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props;\n//#endregion\n\n//#region Events\nconst emit = __emit;\n//#endregion\n\n//#region Data\nconst cssClass = computed<string>(() => {\n let result = `ds-flex ds-items-center ds-w-80 ds-px-4 ds-py-5 ds-rounded-lg ds-shadow-2xl `;\n\n switch (props.type) {\n case BToastItemType.Success:\n result += ``;\n break;\n case BToastItemType.Error:\n result += ``;\n break;\n case BToastItemType.Default:\n default:\n result += ``;\n }\n\n return result;\n});\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass(cssClass.value)\n }, [\n (_unref(BToastItemType).Success === props.type)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, _cache[1] || (_cache[1] = [\n _createElementVNode(\"svg\", {\n class: \"ds-h-5 ds-w-5 ds-fill-[#00a86b]\",\n viewBox: \"0 0 512 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, [\n _createElementVNode(\"path\", { d: \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z\" })\n ], -1)\n ])))\n : (_unref(BToastItemType).Error === props.type)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, _cache[2] || (_cache[2] = [\n _createElementVNode(\"svg\", {\n class: \"ds-h-5 ds-w-5 ds-fill-red-600\",\n viewBox: \"0 0 512 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, [\n _createElementVNode(\"path\", { d: \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\" })\n ], -1)\n ])))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.text || _ctx.$slots.text)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _renderSlot(_ctx.$slots, \"text\", {}, () => [\n _createElementVNode(\"div\", {\n class: \"ds-font-semibold ds-text-black/80\",\n innerHTML: _ctx.text\n }, null, 8, _hoisted_5)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.message || _ctx.$slots.message)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _renderSlot(_ctx.$slots, \"message\", {}, () => [\n _createElementVNode(\"div\", {\n class: \"ds-text-gray-500\",\n innerHTML: _ctx.message\n }, null, 8, _hoisted_7)\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (!props.hideClose)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: \"ds-flex ds-flex-initial ds-cursor-pointer ds-items-center ds-pl-1\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('close')))\n }, _cache[3] || (_cache[3] = [\n _createElementVNode(\"svg\", {\n class: \"ds-h-5 ds-w-5 ds-fill-gray-600\",\n viewBox: \"0 0 384 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, [\n _createElementVNode(\"path\", { d: \"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z\" })\n ], -1)\n ])))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_sfc_main","_defineComponent","BToastItemType","__props","__emit","props","emit","cssClass","computed","result","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_unref","_createElementVNode","_createCommentVNode","_renderSlot","$event"],"mappings":"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"}
@@ -1,7 +1,10 @@
1
- import { defineComponent as f, computed as a, openBlock as r, createElementBlock as u, normalizeClass as h, withDirectives as v, createElementVNode as i, vModelCheckbox as k, renderSlot as V, createTextVNode as y, toDisplayString as _, createCommentVNode as x } from "vue";
2
- import { BCheckboxSize as s } from "./design-system5.mjs";
3
- import B from "./design-system98.mjs";
4
- const C = ["id", "disabled", "value"], z = ["for"], g = ["for"], M = /* @__PURE__ */ f({
1
+ import { defineComponent as V, computed as t, openBlock as o, createElementBlock as c, normalizeClass as C, createElementVNode as d, withDirectives as x, vModelCheckbox as M, renderSlot as R, createTextVNode as q, toDisplayString as z, createCommentVNode as m, createBlock as $, unref as D } from "vue";
2
+ import { BCheckboxSize as r } from "./design-system5.mjs";
3
+ import { useI18n as E } from "./design-system49.mjs";
4
+ import { useValidationField as S } from "./design-system3.mjs";
5
+ import w from "./design-system29.mjs";
6
+ import I from "./design-system98.mjs";
7
+ const N = { class: "ds-flex ds-items-center" }, O = ["id", "disabled", "value"], A = ["for"], F = ["for"], K = /* @__PURE__ */ V({
5
8
  __name: "BCheckbox",
6
9
  props: {
7
10
  inputId: { default: "" },
@@ -9,60 +12,84 @@ const C = ["id", "disabled", "value"], z = ["for"], g = ["for"], M = /* @__PURE_
9
12
  label: { default: "" },
10
13
  labelOrphan: { type: Boolean, default: !1 },
11
14
  disabled: { type: Boolean, default: !1 },
12
- size: { default: s.Medium }
15
+ size: { default: r.Medium },
16
+ hideDetails: { type: Boolean, default: !1 },
17
+ validationRules: { default: void 0 },
18
+ required: { type: Boolean, default: !1 },
19
+ requiredErrorMessage: { default: "" }
13
20
  },
14
- emits: ["update:modelValue"],
15
- setup(n, { emit: c }) {
16
- const l = n, m = c, t = a(() => l.inputId || `id-${B()}`), o = a({
21
+ emits: ["change", "update:modelValue"],
22
+ setup(f, { expose: p, emit: b }) {
23
+ const l = f, i = b, { t: h } = E(), v = {
24
+ validateRule: (e) => typeof e == "boolean" ? e : !!e.length,
25
+ errorMessage: () => l.requiredErrorMessage || h("ds.global.field_required")
26
+ }, a = t(() => l.inputId || `id-${I()}`), s = t({
17
27
  get() {
18
28
  return l.modelValue;
19
29
  },
20
30
  set(e) {
21
- m("update:modelValue", e);
31
+ i("update:modelValue", e);
22
32
  }
23
- }), p = a(() => {
33
+ }), g = t(() => {
24
34
  let e = "";
25
35
  switch (l.size) {
26
- case s.Small:
36
+ case r.Small:
27
37
  e += "size-sm ";
28
38
  break;
29
- case s.Medium:
39
+ case r.Medium:
30
40
  default:
31
41
  e += " ";
32
42
  break;
33
43
  }
34
44
  return e;
35
- });
36
- return (e, d) => (r(), u("div", {
37
- class: h([p.value, "b-checkbox ds-flex ds-items-center"])
45
+ }), k = t(() => {
46
+ let e = [];
47
+ return l.required && e.push(v), l.validationRules && (e = e.concat(l.validationRules)), e.length ? e : void 0;
48
+ }), { validate: u, validationResult: y } = S(
49
+ a.value,
50
+ s,
51
+ k.value
52
+ ), _ = () => {
53
+ i("change"), u();
54
+ };
55
+ return p({ validate: u }), (e, n) => (o(), c("div", {
56
+ class: C([g.value, "b-checkbox"])
38
57
  }, [
39
- v(i("input", {
40
- id: t.value,
41
- "onUpdate:modelValue": d[0] || (d[0] = (b) => o.value = b),
42
- disabled: e.disabled,
43
- value: e.$attrs.value,
44
- type: "checkbox",
45
- class: "b-checkbox__input"
46
- }, null, 8, C), [
47
- [k, o.value]
58
+ d("div", N, [
59
+ x(d("input", {
60
+ id: a.value,
61
+ "onUpdate:modelValue": n[0] || (n[0] = (B) => s.value = B),
62
+ disabled: e.disabled,
63
+ value: e.$attrs.value,
64
+ class: "b-checkbox__input",
65
+ type: "checkbox",
66
+ onChange: _
67
+ }, null, 40, O), [
68
+ [M, s.value]
69
+ ]),
70
+ d("label", {
71
+ for: a.value,
72
+ class: "b-checkbox__input-label ds-border ds-border-black/[0.1] ds-drop-shadow-light"
73
+ }, null, 8, A),
74
+ e.label || e.$slots.default ? (o(), c("label", {
75
+ key: 0,
76
+ for: e.labelOrphan ? void 0 : a.value,
77
+ class: "ds-ml-2 ds-text-sm ds-font-medium ds-text-gray-900"
78
+ }, [
79
+ R(e.$slots, "default", {}, () => [
80
+ q(z(l.label), 1)
81
+ ], !0)
82
+ ], 8, F)) : m("", !0)
48
83
  ]),
49
- i("label", {
50
- for: t.value,
51
- class: "b-checkbox__input-label ds-border ds-border-black/[0.1] ds-drop-shadow-light"
52
- }, null, 8, z),
53
- e.label || e.$slots.default ? (r(), u("label", {
84
+ e.hideDetails ? m("", !0) : (o(), $(w, {
54
85
  key: 0,
55
- for: e.labelOrphan ? void 0 : t.value,
56
- class: "ds-ml-2 ds-text-sm ds-font-medium ds-text-gray-900"
57
- }, [
58
- V(e.$slots, "default", {}, () => [
59
- y(_(l.label), 1)
60
- ], !0)
61
- ], 8, g)) : x("", !0)
86
+ "error-message": D(y).errorMessage(),
87
+ class: "ds-mt-1"
88
+ }, null, 8, ["error-message"]))
62
89
  ], 2));
63
90
  }
64
91
  });
65
92
  export {
66
- M as default
93
+ K as default
67
94
  };
68
95
  //# sourceMappingURL=design-system57.mjs.map