@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.
- package/README.md +6 -6
- package/dist/design-system100.js +1 -1
- package/dist/design-system100.js.map +1 -1
- package/dist/design-system100.mjs +24 -17
- package/dist/design-system100.mjs.map +1 -1
- package/dist/design-system101.js +1 -5
- package/dist/design-system101.js.map +1 -1
- package/dist/design-system101.mjs +18 -10
- package/dist/design-system101.mjs.map +1 -1
- package/dist/design-system105.js +1 -1
- package/dist/design-system105.js.map +1 -1
- package/dist/design-system105.mjs +4 -2
- package/dist/design-system105.mjs.map +1 -1
- package/dist/design-system106.js +1 -1
- package/dist/design-system106.js.map +1 -1
- package/dist/design-system106.mjs +8 -2
- package/dist/design-system106.mjs.map +1 -1
- package/dist/design-system107.js +1 -1
- package/dist/design-system107.js.map +1 -1
- package/dist/design-system107.mjs +7 -4
- package/dist/design-system107.mjs.map +1 -1
- package/dist/design-system108.js +1 -1
- package/dist/design-system108.js.map +1 -1
- package/dist/design-system108.mjs +2 -8
- package/dist/design-system108.mjs.map +1 -1
- package/dist/design-system109.js +1 -1
- package/dist/design-system109.js.map +1 -1
- package/dist/design-system109.mjs +2 -7
- package/dist/design-system109.mjs.map +1 -1
- package/dist/design-system11.js +1 -1
- package/dist/design-system11.js.map +1 -1
- package/dist/design-system11.mjs +41 -47
- package/dist/design-system11.mjs.map +1 -1
- package/dist/design-system110.js +1 -1
- package/dist/design-system110.mjs +1 -1
- package/dist/design-system112.js +1 -1
- package/dist/design-system112.mjs +1 -1
- package/dist/design-system12.js +7 -1
- package/dist/design-system12.js.map +1 -1
- package/dist/design-system12.mjs +83 -72
- package/dist/design-system12.mjs.map +1 -1
- package/dist/design-system13.js +7 -1
- package/dist/design-system13.js.map +1 -1
- package/dist/design-system13.mjs +101 -90
- package/dist/design-system13.mjs.map +1 -1
- package/dist/design-system14.js +1 -1
- package/dist/design-system14.js.map +1 -1
- package/dist/design-system14.mjs +46 -42
- package/dist/design-system14.mjs.map +1 -1
- package/dist/design-system142.js +1 -1
- package/dist/design-system142.js.map +1 -1
- package/dist/design-system142.mjs +7 -11
- package/dist/design-system142.mjs.map +1 -1
- package/dist/design-system143.js +1 -1
- package/dist/design-system143.js.map +1 -1
- package/dist/design-system143.mjs +9 -7
- package/dist/design-system143.mjs.map +1 -1
- package/dist/design-system144.js +1 -1
- package/dist/design-system144.js.map +1 -1
- package/dist/design-system144.mjs +11 -9
- package/dist/design-system144.mjs.map +1 -1
- package/dist/design-system148.js +1 -1
- package/dist/design-system148.mjs +1 -1
- package/dist/design-system149.js +1 -1
- package/dist/design-system149.mjs +1 -1
- package/dist/design-system152.js +1 -1
- package/dist/design-system152.mjs +1 -1
- package/dist/design-system153.js +1 -1
- package/dist/design-system153.mjs +1 -1
- package/dist/design-system17.js +1 -1
- package/dist/design-system17.js.map +1 -1
- package/dist/design-system17.mjs +117 -106
- package/dist/design-system17.mjs.map +1 -1
- package/dist/design-system18.js +1 -1
- package/dist/design-system18.js.map +1 -1
- package/dist/design-system18.mjs +3 -3
- package/dist/design-system18.mjs.map +1 -1
- package/dist/design-system19.js +2 -2
- package/dist/design-system19.js.map +1 -1
- package/dist/design-system19.mjs +76 -64
- package/dist/design-system19.mjs.map +1 -1
- package/dist/design-system20.js +1 -1
- package/dist/design-system20.mjs +1 -1
- package/dist/design-system21.js +1 -1
- package/dist/design-system21.js.map +1 -1
- package/dist/design-system21.mjs +107 -94
- package/dist/design-system21.mjs.map +1 -1
- package/dist/design-system22.js +1 -1
- package/dist/design-system22.mjs +1 -1
- package/dist/design-system24.js +1 -1
- package/dist/design-system24.mjs +2 -2
- package/dist/design-system25.js +1 -1
- package/dist/design-system25.mjs +1 -1
- package/dist/design-system40.js +1 -1
- package/dist/design-system40.js.map +1 -1
- package/dist/design-system40.mjs +79 -75
- package/dist/design-system40.mjs.map +1 -1
- package/dist/design-system41.js +1 -1
- package/dist/design-system41.js.map +1 -1
- package/dist/design-system41.mjs +53 -34
- package/dist/design-system41.mjs.map +1 -1
- package/dist/design-system46.js +1 -1
- package/dist/design-system46.mjs +1 -1
- package/dist/design-system50.js +1 -1
- package/dist/design-system50.js.map +1 -1
- package/dist/design-system50.mjs +83 -67
- package/dist/design-system50.mjs.map +1 -1
- package/dist/design-system55.js +1 -1
- package/dist/design-system55.mjs +1 -1
- package/dist/design-system77.js +1 -1
- package/dist/design-system77.mjs +1 -1
- package/dist/design-system85.js +1 -1
- package/dist/design-system85.js.map +1 -1
- package/dist/design-system85.mjs +3 -3
- package/dist/design-system90.js +1 -1
- package/dist/design-system90.js.map +1 -1
- package/dist/design-system90.mjs +1 -1
- package/dist/design-system93.js +5 -1
- package/dist/design-system93.js.map +1 -1
- package/dist/design-system93.mjs +10 -2172
- package/dist/design-system93.mjs.map +1 -1
- package/dist/design-system94.js +1 -1
- package/dist/design-system94.js.map +1 -1
- package/dist/design-system94.mjs +17 -1103
- package/dist/design-system94.mjs.map +1 -1
- package/dist/design-system95.js +1 -1
- package/dist/design-system95.js.map +1 -1
- package/dist/design-system95.mjs +2172 -17
- package/dist/design-system95.mjs.map +1 -1
- package/dist/design-system96.js +1 -1
- package/dist/design-system96.js.map +1 -1
- package/dist/design-system96.mjs +1103 -68
- package/dist/design-system96.mjs.map +1 -1
- package/dist/design-system97.js +1 -1
- package/dist/design-system97.js.map +1 -1
- package/dist/design-system97.mjs +68 -6
- package/dist/design-system97.mjs.map +1 -1
- package/dist/design-system98.js +1 -1
- package/dist/design-system98.js.map +1 -1
- package/dist/design-system98.mjs +5 -24
- package/dist/design-system98.mjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/components/BButton.vue.d.ts +2 -28
- package/dist/types/components/BTextField.vue.d.ts +10 -2
- package/dist/types/components/BToast/BToastItem.vue.d.ts +9 -12
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system13.mjs","sources":["../src/components/BDateRangePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-relative\" }\nconst _hoisted_2 = [\"id\", \"disabled\", \"placeholder\", \"value\"]\nconst _hoisted_3 = [\"id\", \"disabled\", \"placeholder\"]\nconst _hoisted_4 = [\"for\"]\n\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\n/**\n * https://stackoverflow.com/questions/25384360/how-to-prevent-moment-js-from-loading-locales-with-webpack\n * Due to this issue with moment (it loads a bunch of unnecessary ./locale)\n * https://github.com/ksloan/moment-mini\n */\nimport { useI18n } from 'vue-i18n';\n// https://air-datepicker.com/docs\n// DO NOT upgrade to the higher version than 3.3.0\nimport AirDatepicker, {\n type AirDatepickerButton,\n type AirDatepickerLocale,\n} from 'air-datepicker';\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport { BDatePickerView } from '@/constants/Enums';\nimport { lockScrollBody, unlockScrollBody } from '@/helpers/ComponentHelper';\nimport { v4 as uuid } from 'uuid';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\nimport { isEmpty } from 'lodash-es';\nimport { checkIfISOFormat } from '@/helpers/DateHelper';\nimport moment from 'moment-mini';\nimport { DateDelimiter } from '@/constants/Common';\n\n/**\n * Props\n */\nexport interface BDateRangePickerProps {\n inputId?: string;\n modelValue: Date[];\n label?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n placeholder?: string;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n disabled?: boolean;\n inputCssClass?: string;\n /**\n * Minimum selectable date\n */\n minDate?: any;\n /**\n * Maximum selectable date\n */\n maxDate?: any;\n /**\n * Default view mode when open picker dropdown\n */\n view?: BDatePickerView;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Position of picker dropdown when it's showed up\n */\n position?: string;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BDateRangePicker',\n props: {\n inputId: { default: '' },\n modelValue: {},\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: '' },\n maxDate: { default: '' },\n view: { default: BDatePickerView.Days },\n hideDetails: { type: Boolean, default: false },\n position: { default: 'bottom left' }\n },\n emits: [\"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 { t, locale } = useI18n();\nconst dateFormat = `DD${DateDelimiter}MM${DateDelimiter}YYYY`; // moment's date format\nlet datePicker: AirDatepicker<HTMLInputElement>;\nconst validateRequired: ValidationRule = {\n validateRule: (val) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst selectedDate = ref();\n\n/**\n * Computed\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 datePickerButtons = computed<AirDatepickerButton[]>(() => [\n {\n content: t('ds.components.base.date_picker.buttons.cancel'),\n className:\n 'ds-bg-transparent focus:ds-ring-1 focus:ds-ring-gray-300 ds-border-inner-primary-f !ds-text-primary-t hover:ds-bg-[#e6f0fe] ds-text-sm ds-leading-4 ds-px-4 ds-mx-1',\n onClick: (dp) => {\n dp.clear();\n nextTick(() => {\n validate();\n });\n dp.hide();\n },\n },\n {\n content: t('ds.components.base.date_picker.buttons.confirm'),\n className: `${id.value}-btn-confirm focus:ds-ring-1 focus:ds-ring-1 focus:ds-ring-blue-300 ds-bg-gradient-to-r ds-from-primary-f-stop ds-from-primary-f ds-to-primary-t !ds-text-white enabled:hover:ds-bg-[#0e4bbd] ds-text-sm ds-leading-4 ds-px-4 disabled:ds-from-[#e2e4e8] disabled:ds-to-[#e2e4e8] disabled:ds-text-black/[0.4] ds-mx-1`,\n onClick: (dp) => {\n value.value = checkIfValidDateValue(selectedDate.value)\n ? selectedDate.value\n : [];\n nextTick(() => {\n validate();\n });\n dp.hide();\n },\n attrs: props.required\n ? {\n disabled: '',\n }\n : undefined,\n },\n]);\nconst datePickerOptions = computed(() => {\n const datePickerLocale: AirDatepickerLocale = {\n days: [\n t('ds.components.base.date_picker.days.sunday'),\n t('ds.components.base.date_picker.days.monday'),\n t('ds.components.base.date_picker.days.tuesday'),\n t('ds.components.base.date_picker.days.wednesday'),\n t('ds.components.base.date_picker.days.thursday'),\n t('ds.components.base.date_picker.days.friday'),\n t('ds.components.base.date_picker.days.saturday'),\n ],\n daysShort: [\n t('ds.components.base.date_picker.days_short.sunday'),\n t('ds.components.base.date_picker.days_short.monday'),\n t('ds.components.base.date_picker.days_short.tuesday'),\n t('ds.components.base.date_picker.days_short.wednesday'),\n t('ds.components.base.date_picker.days_short.thursday'),\n t('ds.components.base.date_picker.days_short.friday'),\n t('ds.components.base.date_picker.days_short.saturday'),\n ],\n daysMin: [\n t('ds.components.base.date_picker.days_min.sunday'),\n t('ds.components.base.date_picker.days_min.monday'),\n t('ds.components.base.date_picker.days_min.tuesday'),\n t('ds.components.base.date_picker.days_min.wednesday'),\n t('ds.components.base.date_picker.days_min.thursday'),\n t('ds.components.base.date_picker.days_min.friday'),\n t('ds.components.base.date_picker.days_min.saturday'),\n ],\n months: [\n t('ds.components.base.date_picker.months.january'),\n t('ds.components.base.date_picker.months.february'),\n t('ds.components.base.date_picker.months.march'),\n t('ds.components.base.date_picker.months.april'),\n t('ds.components.base.date_picker.months.may'),\n t('ds.components.base.date_picker.months.june'),\n t('ds.components.base.date_picker.months.july'),\n t('ds.components.base.date_picker.months.august'),\n t('ds.components.base.date_picker.months.september'),\n t('ds.components.base.date_picker.months.october'),\n t('ds.components.base.date_picker.months.november'),\n t('ds.components.base.date_picker.months.december'),\n ],\n monthsShort: [\n t('ds.components.base.date_picker.months_short.january'),\n t('ds.components.base.date_picker.months_short.february'),\n t('ds.components.base.date_picker.months_short.march'),\n t('ds.components.base.date_picker.months_short.april'),\n t('ds.components.base.date_picker.months_short.may'),\n t('ds.components.base.date_picker.months_short.june'),\n t('ds.components.base.date_picker.months_short.july'),\n t('ds.components.base.date_picker.months_short.august'),\n t('ds.components.base.date_picker.months_short.september'),\n t('ds.components.base.date_picker.months_short.october'),\n t('ds.components.base.date_picker.months_short.november'),\n t('ds.components.base.date_picker.months_short.december'),\n ],\n today: t('ds.components.base.date_picker.buttons.today'),\n clear: t('ds.components.base.date_picker.buttons.clear'),\n dateFormat: 'dd/MM/yyyy',\n timeFormat: 'HH:mm',\n firstDay: 1, // Monday\n };\n const onSelectDatePicker = ({\n date,\n }: {\n date: Date[];\n formattedDate: string | string[];\n datepicker: AirDatepicker;\n }) => {\n const isValidDate = checkIfValidDateValue(date);\n selectedDate.value = isValidDate ? date : [];\n if (props.required) {\n toggleButtonConfirm(isValidDate);\n }\n };\n\n return {\n locale: datePickerLocale,\n selectedDates: props.modelValue,\n onSelect: onSelectDatePicker,\n buttons: datePickerButtons.value,\n showOtherMonths: false,\n timepicker: false,\n onlyTimepicker: false,\n minDate: props.minDate,\n maxDate: props.maxDate,\n view: props.view,\n onHide: onHidePicker,\n onShow: onShowPicker,\n navTitles: {\n days: 'MMMM yyyy',\n },\n position: props.position,\n range: true,\n multipleDatesSeparator: ' - ',\n } as any; // AirDatepickerOptions\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 inputCssClassValue = computed(() => [\n 'ds-border ds-rounded-lg ds-block ds-w-full ds-text-sm ds-px-3 ds-h-[40px]',\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': datePickerVisible.value,\n },\n props.inputCssClass,\n]);\nconst datePickerVisible = ref(false);\nconst displayValue = computed(() =>\n props.modelValue.map((val) => formatDate(val)).join(' - '),\n);\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n/**\n * Watch\n */\nwatch(\n () => props.modelValue,\n () => {\n if (checkIfModelNeedToSync(datePicker.selectedDates)) {\n if (checkIfValidDateValue(props.modelValue)) {\n datePicker.selectDate(props.modelValue);\n } else {\n datePicker.clear();\n }\n }\n },\n { deep: true },\n);\nwatch(\n [\n locale,\n () => props.position,\n () => props.minDate,\n () => props.maxDate,\n () => props.view,\n ],\n () => {\n datePicker.update(datePickerOptions.value);\n },\n);\n\n/**\n * Methods\n */\nconst checkIfValidDateValue = (d: Date[]) => d?.length === 2;\nconst formatDate = (date: string | Date) =>\n checkIfISOFormat(date) ? moment(date).format(dateFormat) : date;\nconst onHidePicker = () => {\n datePickerVisible.value = false;\n unlockScrollBody();\n};\nconst onShowPicker = () => {\n datePickerVisible.value = true;\n if (checkIfValidDateValue(props.modelValue)) {\n datePicker.selectDate(props.modelValue);\n } else {\n datePicker.clear();\n }\n lockScrollBody();\n};\nconst checkIfModelNeedToSync = (date: Date[]) => {\n const rules = [\n !isEmpty(props.modelValue) && isEmpty(date),\n !isEmpty(date) && isEmpty(props.modelValue),\n !isEmpty(props.modelValue) &&\n !isEmpty(date) &&\n props.modelValue.some((v, i) => v?.getTime() !== date[i]?.getTime()),\n ];\n\n return rules.some((r) => r);\n};\nconst toggleButtonConfirm = (enabled: boolean) => {\n const btnEl = document.querySelector(`.${id.value}-btn-confirm`);\n if (enabled) {\n btnEl?.removeAttribute('disabled');\n } else {\n btnEl?.setAttribute('disabled', '');\n }\n};\n\n/**\n * Lifecycle hooks\n */\nonMounted(() => {\n datePicker = new AirDatepicker<HTMLInputElement>(\n `#${id.value}Picker`,\n datePickerOptions.value,\n );\n});\nonBeforeUnmount(() => {\n unlockScrollBody();\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\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_1, [\n _createElementVNode(\"input\", {\n id: id.value,\n class: _normalizeClass([inputCssClassValue.value, \"ds-relative ds-z-[2] ds-drop-shadow-light\"]),\n disabled: _ctx.disabled,\n placeholder: _ctx.placeholder,\n value: displayValue.value,\n readonly: \"\"\n }, null, 10, _hoisted_2),\n _createElementVNode(\"input\", {\n id: `${id.value}Picker`,\n class: _normalizeClass([inputCssClassValue.value, \"ds-absolute ds-top-0 ds-z-[1]\"]),\n disabled: _ctx.disabled,\n placeholder: _ctx.placeholder,\n readonly: \"\"\n }, null, 10, _hoisted_3),\n _createElementVNode(\"label\", {\n for: `${id.value}Picker`,\n class: \"ds-absolute ds-right-3 ds-top-2 ds-z-[3]\"\n }, [\n _createElementVNode(\"i\", {\n class: _normalizeClass([[\n props.disabled ? 'ds-text-black/[0.4]' : 'ds-text-black/[0.85]',\n ], \"fa-solid fa-calendar-lines\"])\n }, null, 2)\n ], 8, _hoisted_4)\n ]),\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","_sfc_main","_defineComponent","BDatePickerView","__props","emit","props","t","locale","useI18n","dateFormat","DateDelimiter","datePicker","validateRequired","val","selectedDate","ref","id","computed","uuid","value","datePickerButtons","dp","nextTick","validate","checkIfValidDateValue","datePickerOptions","datePickerLocale","onSelectDatePicker","date","isValidDate","toggleButtonConfirm","onHidePicker","onShowPicker","vRules","result","inputCssClassValue","validationResult","datePickerVisible","displayValue","formatDate","useValidationField","watch","checkIfModelNeedToSync","d","checkIfISOFormat","moment","unlockScrollBody","lockScrollBody","isEmpty","v","i","_a","r","enabled","btnEl","onMounted","AirDatepicker","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_createElementVNode","_normalizeClass","_createCommentVNode","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system13.mjs","sources":["../src/components/BDateRangePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, unref as _unref, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-relative\" }\nconst _hoisted_2 = [\"id\", \"disabled\", \"placeholder\", \"value\"]\nconst _hoisted_3 = [\"id\", \"disabled\", \"placeholder\"]\nconst _hoisted_4 = [\"for\"]\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192zM96 296c0-13.3 10.7-24 24-24H328c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24zm24 72H232c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24s10.7-24 24-24z\" }, null, -1)\nconst _hoisted_6 = [\n _hoisted_5\n]\n\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\n/**\n * https://stackoverflow.com/questions/25384360/how-to-prevent-moment-js-from-loading-locales-with-webpack\n * Due to this issue with moment (it loads a bunch of unnecessary ./locale)\n * https://github.com/ksloan/moment-mini\n */\nimport { useI18n } from 'vue-i18n';\n// https://air-datepicker.com/docs\n// DO NOT upgrade to the higher version than 3.3.0\nimport AirDatepicker, {\n type AirDatepickerButton,\n type AirDatepickerLocale,\n} from 'air-datepicker';\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport { BDatePickerView } from '@/constants/Enums';\nimport { lockScrollBody, unlockScrollBody } from '@/helpers/ComponentHelper';\nimport { v4 as uuid } from 'uuid';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\nimport { isEmpty } from 'lodash-es';\nimport { checkIfISOFormat } from '@/helpers/DateHelper';\nimport moment from 'moment-mini';\nimport { DateDelimiter } from '@/constants/Common';\n\n/**\n * Props\n */\nexport interface BDateRangePickerProps {\n inputId?: string;\n modelValue: Date[];\n label?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n placeholder?: string;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n disabled?: boolean;\n inputCssClass?: string;\n /**\n * Minimum selectable date\n */\n minDate?: any;\n /**\n * Maximum selectable date\n */\n maxDate?: any;\n /**\n * Default view mode when open picker dropdown\n */\n view?: BDatePickerView;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Position of picker dropdown when it's showed up\n */\n position?: string;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BDateRangePicker',\n props: {\n inputId: { default: '' },\n modelValue: {},\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: '' },\n maxDate: { default: '' },\n view: { default: BDatePickerView.Days },\n hideDetails: { type: Boolean, default: false },\n position: { default: 'bottom left' }\n },\n emits: [\"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 { t, locale } = useI18n();\nconst dateFormat = `DD${DateDelimiter}MM${DateDelimiter}YYYY`; // moment's date format\nlet datePicker: AirDatepicker<HTMLInputElement>;\nconst validateRequired: ValidationRule = {\n validateRule: (val) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst selectedDate = ref();\n\n/**\n * Computed\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 datePickerButtons = computed<AirDatepickerButton[]>(() => [\n {\n content: t('ds.components.base.date_picker.buttons.cancel'),\n className:\n 'ds-bg-transparent focus:ds-ring-1 focus:ds-ring-gray-300 ds-border-inner-primary-f !ds-text-primary-t hover:ds-bg-[#e6f0fe] ds-text-sm ds-leading-4 ds-px-4 ds-mx-1',\n onClick: (dp) => {\n dp.clear();\n nextTick(() => {\n validate();\n });\n dp.hide();\n },\n },\n {\n content: t('ds.components.base.date_picker.buttons.confirm'),\n className: `${id.value}-btn-confirm focus:ds-ring-1 focus:ds-ring-1 focus:ds-ring-blue-300 ds-bg-gradient-to-r ds-from-primary-f-stop ds-from-primary-f ds-to-primary-t !ds-text-white enabled:hover:ds-bg-[#0e4bbd] ds-text-sm ds-leading-4 ds-px-4 disabled:ds-from-[#e2e4e8] disabled:ds-to-[#e2e4e8] disabled:ds-text-black/[0.4] ds-mx-1`,\n onClick: (dp) => {\n value.value = checkIfValidDateValue(selectedDate.value)\n ? selectedDate.value\n : [];\n nextTick(() => {\n validate();\n });\n dp.hide();\n },\n attrs: props.required\n ? {\n disabled: '',\n }\n : undefined,\n },\n]);\nconst datePickerOptions = computed(() => {\n const datePickerLocale: AirDatepickerLocale = {\n days: [\n t('ds.components.base.date_picker.days.sunday'),\n t('ds.components.base.date_picker.days.monday'),\n t('ds.components.base.date_picker.days.tuesday'),\n t('ds.components.base.date_picker.days.wednesday'),\n t('ds.components.base.date_picker.days.thursday'),\n t('ds.components.base.date_picker.days.friday'),\n t('ds.components.base.date_picker.days.saturday'),\n ],\n daysShort: [\n t('ds.components.base.date_picker.days_short.sunday'),\n t('ds.components.base.date_picker.days_short.monday'),\n t('ds.components.base.date_picker.days_short.tuesday'),\n t('ds.components.base.date_picker.days_short.wednesday'),\n t('ds.components.base.date_picker.days_short.thursday'),\n t('ds.components.base.date_picker.days_short.friday'),\n t('ds.components.base.date_picker.days_short.saturday'),\n ],\n daysMin: [\n t('ds.components.base.date_picker.days_min.sunday'),\n t('ds.components.base.date_picker.days_min.monday'),\n t('ds.components.base.date_picker.days_min.tuesday'),\n t('ds.components.base.date_picker.days_min.wednesday'),\n t('ds.components.base.date_picker.days_min.thursday'),\n t('ds.components.base.date_picker.days_min.friday'),\n t('ds.components.base.date_picker.days_min.saturday'),\n ],\n months: [\n t('ds.components.base.date_picker.months.january'),\n t('ds.components.base.date_picker.months.february'),\n t('ds.components.base.date_picker.months.march'),\n t('ds.components.base.date_picker.months.april'),\n t('ds.components.base.date_picker.months.may'),\n t('ds.components.base.date_picker.months.june'),\n t('ds.components.base.date_picker.months.july'),\n t('ds.components.base.date_picker.months.august'),\n t('ds.components.base.date_picker.months.september'),\n t('ds.components.base.date_picker.months.october'),\n t('ds.components.base.date_picker.months.november'),\n t('ds.components.base.date_picker.months.december'),\n ],\n monthsShort: [\n t('ds.components.base.date_picker.months_short.january'),\n t('ds.components.base.date_picker.months_short.february'),\n t('ds.components.base.date_picker.months_short.march'),\n t('ds.components.base.date_picker.months_short.april'),\n t('ds.components.base.date_picker.months_short.may'),\n t('ds.components.base.date_picker.months_short.june'),\n t('ds.components.base.date_picker.months_short.july'),\n t('ds.components.base.date_picker.months_short.august'),\n t('ds.components.base.date_picker.months_short.september'),\n t('ds.components.base.date_picker.months_short.october'),\n t('ds.components.base.date_picker.months_short.november'),\n t('ds.components.base.date_picker.months_short.december'),\n ],\n today: t('ds.components.base.date_picker.buttons.today'),\n clear: t('ds.components.base.date_picker.buttons.clear'),\n dateFormat: 'dd/MM/yyyy',\n timeFormat: 'HH:mm',\n firstDay: 1, // Monday\n };\n const onSelectDatePicker = ({\n date,\n }: {\n date: Date[];\n formattedDate: string | string[];\n datepicker: AirDatepicker;\n }) => {\n const isValidDate = checkIfValidDateValue(date);\n selectedDate.value = isValidDate ? date : [];\n if (props.required) {\n toggleButtonConfirm(isValidDate);\n }\n };\n\n return {\n locale: datePickerLocale,\n selectedDates: props.modelValue,\n onSelect: onSelectDatePicker,\n buttons: datePickerButtons.value,\n showOtherMonths: false,\n timepicker: false,\n onlyTimepicker: false,\n minDate: props.minDate,\n maxDate: props.maxDate,\n view: props.view,\n onHide: onHidePicker,\n onShow: onShowPicker,\n navTitles: {\n days: 'MMMM yyyy',\n },\n position: props.position,\n range: true,\n multipleDatesSeparator: ' - ',\n prevHtml: `<svg xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\">\n <path d=\"M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z\"/>\n </svg>`,\n nextHtml: `<svg xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\">\n <path d=\"M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z\"/>\n </svg>`,\n } as any; // AirDatepickerOptions\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 inputCssClassValue = computed(() => [\n 'ds-border ds-rounded-lg ds-block ds-w-full ds-text-sm ds-px-3 ds-h-[40px]',\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': datePickerVisible.value,\n },\n props.inputCssClass,\n]);\nconst datePickerVisible = ref(false);\nconst displayValue = computed(() =>\n props.modelValue.map((val) => formatDate(val)).join(' - '),\n);\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n/**\n * Watch\n */\nwatch(\n () => props.modelValue,\n () => {\n if (checkIfModelNeedToSync(datePicker.selectedDates)) {\n if (checkIfValidDateValue(props.modelValue)) {\n datePicker.selectDate(props.modelValue);\n } else {\n datePicker.clear();\n }\n }\n },\n { deep: true },\n);\nwatch(\n [\n locale,\n () => props.position,\n () => props.minDate,\n () => props.maxDate,\n () => props.view,\n ],\n () => {\n datePicker.update(datePickerOptions.value);\n },\n);\n\n/**\n * Methods\n */\nconst checkIfValidDateValue = (d: Date[]) => d?.length === 2;\nconst formatDate = (date: string | Date) =>\n checkIfISOFormat(date) ? moment(date).format(dateFormat) : date;\nconst onHidePicker = () => {\n datePickerVisible.value = false;\n unlockScrollBody();\n};\nconst onShowPicker = () => {\n datePickerVisible.value = true;\n if (checkIfValidDateValue(props.modelValue)) {\n datePicker.selectDate(props.modelValue);\n } else {\n datePicker.clear();\n }\n lockScrollBody();\n};\nconst checkIfModelNeedToSync = (date: Date[]) => {\n const rules = [\n !isEmpty(props.modelValue) && isEmpty(date),\n !isEmpty(date) && isEmpty(props.modelValue),\n !isEmpty(props.modelValue) &&\n !isEmpty(date) &&\n props.modelValue.some((v, i) => v?.getTime() !== date[i]?.getTime()),\n ];\n\n return rules.some((r) => r);\n};\nconst toggleButtonConfirm = (enabled: boolean) => {\n const btnEl = document.querySelector(`.${id.value}-btn-confirm`);\n if (enabled) {\n btnEl?.removeAttribute('disabled');\n } else {\n btnEl?.setAttribute('disabled', '');\n }\n};\n\n/**\n * Lifecycle hooks\n */\nonMounted(() => {\n datePicker = new AirDatepicker<HTMLInputElement>(\n `#${id.value}Picker`,\n datePickerOptions.value,\n );\n});\nonBeforeUnmount(() => {\n unlockScrollBody();\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\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_1, [\n _createElementVNode(\"input\", {\n id: id.value,\n class: _normalizeClass([inputCssClassValue.value, \"ds-relative ds-z-[2] ds-drop-shadow-light\"]),\n disabled: _ctx.disabled,\n placeholder: _ctx.placeholder,\n value: displayValue.value,\n readonly: \"\"\n }, null, 10, _hoisted_2),\n _createElementVNode(\"input\", {\n id: `${id.value}Picker`,\n class: _normalizeClass([inputCssClassValue.value, \"ds-absolute ds-top-0 ds-z-[1]\"]),\n disabled: _ctx.disabled,\n placeholder: _ctx.placeholder,\n readonly: \"\"\n }, null, 10, _hoisted_3),\n _createElementVNode(\"label\", {\n for: `${id.value}Picker`,\n class: \"ds-absolute ds-right-3 ds-top-3 ds-z-[3]\"\n }, [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[\n props.disabled ? 'ds-fill-black/40' : 'ds-text-black/[0.85]',\n ], \"ds-h-4 ds-w-4\"]),\n viewBox: \"0 0 448 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_6, 2))\n ], 8, _hoisted_4)\n ]),\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","_sfc_main","_defineComponent","BDatePickerView","__props","emit","props","t","locale","useI18n","dateFormat","DateDelimiter","datePicker","validateRequired","val","selectedDate","ref","id","computed","uuid","value","datePickerButtons","dp","nextTick","validate","checkIfValidDateValue","datePickerOptions","datePickerLocale","onSelectDatePicker","date","isValidDate","toggleButtonConfirm","onHidePicker","onShowPicker","vRules","result","inputCssClassValue","validationResult","datePickerVisible","displayValue","formatDate","useValidationField","watch","checkIfModelNeedToSync","d","checkIfISOFormat","moment","unlockScrollBody","lockScrollBody","isEmpty","v","i","_a","r","enabled","btnEl","onMounted","AirDatepicker","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_createElementVNode","_normalizeClass","_createCommentVNode","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
|
package/dist/design-system14.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),
|
|
1
|
+
"use strict";const e=require("vue"),k=require("./design-system6.js"),b=require("./design-system4.js"),O=require("./design-system94.js"),V=["for"],_=["id"],$={class:"ds-truncate"},x=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),L=[x],M=["id","data-cy","data-ut"],P=e.defineComponent({__name:"BDropdown",props:{inputId:{default:""},modelValue:{type:Boolean,default:void 0},label:{default:""},text:{default:""},toggleCssClass:{default:""},menuCssClass:{default:""},noCloseOnClickOutside:{type:Boolean,default:!1},noCloseOnEsc:{type:Boolean,default:!1},menuFixed:{type:Boolean,default:!1}},emits:["update:modelValue","hidden","shown"],setup(w,{emit:a}){const t=w,u=e.ref(null),n=e.ref(null),l=e.ref(null),c=e.ref(!1),i=e.computed(()=>t.inputId||`id-${O()}`),o=e.computed({get(){return t.modelValue!==void 0?t.modelValue:c.value},set(s){t.modelValue!==void 0?a("update:modelValue",s):c.value=s}});e.watch(o,s=>{var d;s?E():(C(),(d=u.value)==null||d.blur())}),e.watch(()=>t.noCloseOnClickOutside,s=>{s?g():p()}),e.watch(()=>t.noCloseOnEsc,s=>{s?y():f()});const f=()=>{document.addEventListener("keydown",m)},m=s=>{s.key==="Escape"&&r()},p=()=>{document.addEventListener("click",v)},v=s=>{[n.value,l.value].some(B=>s.composedPath().includes(B))||r()},h=()=>{o.value=!o.value},E=()=>{e.nextTick(()=>{k.ensureVisiblePosition(n.value,l.value,t.menuFixed),a("shown")})},C=()=>{k.resetPosition(n.value,l.value),a("hidden")},r=()=>{o.value=!1},y=()=>{document.removeEventListener("keydown",m)},g=()=>{document.removeEventListener("click",v)};return e.onMounted(()=>{t.noCloseOnEsc||f(),t.noCloseOnClickOutside||p()}),e.onBeforeUnmount(()=>{y(),g(),C()}),e.provide(b.PIKey.CloseDropdown,r),(s,d)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"dropdown",ref:n},[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:i.value,class:"ds-mb-2 ds-block ds-text-xs ds-font-bold ds-capitalize ds-text-gray-500"},e.toDisplayString(t.label),9,V)):e.createCommentVNode("",!0),e.createElementVNode("button",{id:i.value,ref_key:"toggle",ref:u,class:e.normalizeClass([s.toggleCssClass,"ds-inline-flex ds-w-full ds-items-center ds-justify-between ds-rounded-lg ds-bg-gray-200 ds-px-3 ds-py-2 ds-text-gray-700 focus:ds-ring-1 focus:ds-ring-primary-t"]),type:"button",onClick:h},[e.renderSlot(s.$slots,"toggle",{},()=>[e.createElementVNode("span",$,e.toDisplayString(t.text),1),e.createTextVNode(" "),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([`${o.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"},L,2))])],10,_),e.withDirectives(e.createElementVNode("div",{id:`${i.value}Menu`,ref_key:"dropdownMenu",ref:l,class:e.normalizeClass([`${s.menuCssClass} ${t.menuFixed?"ds-fixed":"ds-absolute"}`,"ds-z-50 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.renderSlot(s.$slots,"default")],10,M),[[e.vShow,o.value]])],512))}});module.exports=P;
|
|
2
2
|
//# sourceMappingURL=design-system14.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system14.js","sources":["../src/components/BDropdown/BDropdown.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, vShow as _vShow, withDirectives as _withDirectives } from \"vue\"\n\nconst _hoisted_1 = [\"for\"]\nconst _hoisted_2 = [\"id\"]\nconst _hoisted_3 = { class: \"ds-truncate\" }\nconst _hoisted_4 = [\"id\", \"data-cy\", \"data-ut\"]\n\nimport {\n ensureVisiblePosition,\n resetPosition,\n} from '@/helpers/ComponentHelper';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n watch,\n} from 'vue';\nimport { PIKey } from '@/constants/Common';\n\n/**\n * Props\n */\nexport interface BDropdownProps {\n inputId?: string;\n modelValue?: boolean;\n label?: string;\n /**\n * Toggle's content text\n */\n text?: string;\n /**\n * CSS of toggle\n */\n toggleCssClass?: string;\n /**\n * CSS of menu\n */\n menuCssClass?: string;\n /**\n * Prevent menu from closing when clicking outside\n */\n noCloseOnClickOutside?: boolean;\n /**\n * Prevent menu from closing when \"Esc\" pressed\n */\n noCloseOnEsc?: boolean;\n menuFixed?: boolean; // menu position should be fixed when toggle position is fixed\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BDropdown',\n props: {\n inputId: { default: '' },\n modelValue: { type: Boolean, default: undefined },\n label: { default: '' },\n text: { default: '' },\n toggleCssClass: { default: '' },\n menuCssClass: { default: '' },\n noCloseOnClickOutside: { type: Boolean, default: false },\n noCloseOnEsc: { type: Boolean, default: false },\n menuFixed: { type: Boolean, default: false }\n },\n emits: [\"update:modelValue\", \"hidden\", \"shown\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst toggle = ref<HTMLElement | null>(null);\nconst dropdown = ref<HTMLElement | null>(null);\nconst dropdownMenu = ref<HTMLElement | null>(null);\nconst mValue = ref(false);\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue !== undefined ? props.modelValue : mValue.value;\n },\n set(val: boolean) {\n if (props.modelValue !== undefined) {\n emit('update:modelValue', val);\n } else {\n mValue.value = val;\n }\n },\n});\n\n/**\n * Watch\n */\nwatch(value, (val) => {\n if (val) {\n ensureMenuPosition();\n } else {\n resetMenuPosition();\n toggle.value?.blur();\n }\n});\n\n/**\n * Watch\n */\nwatch(\n () => props.noCloseOnClickOutside,\n (val) => {\n if (val) {\n removeClickOutsideEventListener();\n } else {\n initClickOutsideEventListener();\n }\n },\n);\n\nwatch(\n () => props.noCloseOnEsc,\n (val) => {\n if (val) {\n removePressEscapeEventListener();\n } else {\n initPressEscapeEventListener();\n }\n },\n);\n\n/**\n * Methods\n */\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: any) => {\n if (event.key === 'Escape') {\n close();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [dropdown.value, dropdownMenu.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n close();\n }\n};\nconst onClickToggle = () => {\n value.value = !value.value;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(\n dropdown.value!,\n dropdownMenu.value!,\n props.menuFixed,\n );\n emit('shown');\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(dropdown.value!, dropdownMenu.value!);\n emit('hidden');\n};\nconst close = () => {\n value.value = false;\n};\nconst removePressEscapeEventListener = () => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n};\nconst removeClickOutsideEventListener = () => {\n document.removeEventListener('click', closeOnClickOutside);\n};\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n if (!props.noCloseOnEsc) {\n initPressEscapeEventListener();\n }\n if (!props.noCloseOnClickOutside) {\n initClickOutsideEventListener();\n }\n});\nonBeforeUnmount(() => {\n removePressEscapeEventListener();\n removeClickOutsideEventListener();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n/**\n * Provide\n */\nprovide(PIKey.CloseDropdown, close);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n ref_key: \"dropdown\",\n ref: dropdown\n }, [\n (props.label)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: id.value,\n class: \"ds-mb-2 ds-block ds-text-xs ds-font-bold ds-capitalize ds-text-gray-500\"\n }, _toDisplayString(props.label), 9, _hoisted_1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n id: id.value,\n ref_key: \"toggle\",\n ref: toggle,\n class: _normalizeClass([_ctx.toggleCssClass, \"ds-inline-flex ds-w-full ds-items-center ds-justify-between ds-rounded-lg ds-bg-gray-200 ds-px-5 ds-py-2.5 ds-text-gray-700 focus:ds-ring-1 focus:ds-ring-primary-t\"]),\n type: \"button\",\n onClick: onClickToggle\n }, [\n _renderSlot(_ctx.$slots, \"toggle\", {}, () => [\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(props.text), 1),\n _createTextVNode(\" \"),\n _createElementVNode(\"span\", {\n class: _normalizeClass([`${value.value ? 'ds-rotate-180' : ''}`, \"fa-solid fa-caret-down ds-transition-transform\"])\n }, null, 2)\n ])\n ], 10, _hoisted_2),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"dropdownMenu\",\n ref: dropdownMenu,\n class: _normalizeClass([`${_ctx.menuCssClass} ${props.menuFixed ? 'ds-fixed' : 'ds-absolute'}`, \"ds-z-50 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 _renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_4), [\n [_vShow, value.value]\n ])\n ], 512))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_sfc_main","_defineComponent","__props","emit","props","toggle","ref","dropdown","dropdownMenu","mValue","id","computed","uuid","value","val","watch","ensureMenuPosition","resetMenuPosition","_a","removeClickOutsideEventListener","initClickOutsideEventListener","removePressEscapeEventListener","initPressEscapeEventListener","closeOnEscapePressed","event","close","closeOnClickOutside","r","onClickToggle","nextTick","ensureVisiblePosition","resetPosition","onMounted","onBeforeUnmount","provide","PIKey","_ctx","_cache","_openBlock","_createElementBlock","_toDisplayString","_createCommentVNode","_createElementVNode","_normalizeClass","_renderSlot","_createTextVNode","_withDirectives","_vShow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system14.js","sources":["../src/components/BDropdown/BDropdown.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, vShow as _vShow, withDirectives as _withDirectives } from \"vue\"\n\nconst _hoisted_1 = [\"for\"]\nconst _hoisted_2 = [\"id\"]\nconst _hoisted_3 = { class: \"ds-truncate\" }\nconst _hoisted_4 = /*#__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_5 = [\n _hoisted_4\n]\nconst _hoisted_6 = [\"id\", \"data-cy\", \"data-ut\"]\n\nimport {\n ensureVisiblePosition,\n resetPosition,\n} from '@/helpers/ComponentHelper';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n watch,\n} from 'vue';\nimport { PIKey } from '@/constants/Common';\n\n/**\n * Props\n */\nexport interface BDropdownProps {\n inputId?: string;\n modelValue?: boolean;\n label?: string;\n /**\n * Toggle's content text\n */\n text?: string;\n /**\n * CSS of toggle\n */\n toggleCssClass?: string;\n /**\n * CSS of menu\n */\n menuCssClass?: string;\n /**\n * Prevent menu from closing when clicking outside\n */\n noCloseOnClickOutside?: boolean;\n /**\n * Prevent menu from closing when \"Esc\" pressed\n */\n noCloseOnEsc?: boolean;\n menuFixed?: boolean; // menu position should be fixed when toggle position is fixed\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BDropdown',\n props: {\n inputId: { default: '' },\n modelValue: { type: Boolean, default: undefined },\n label: { default: '' },\n text: { default: '' },\n toggleCssClass: { default: '' },\n menuCssClass: { default: '' },\n noCloseOnClickOutside: { type: Boolean, default: false },\n noCloseOnEsc: { type: Boolean, default: false },\n menuFixed: { type: Boolean, default: false }\n },\n emits: [\"update:modelValue\", \"hidden\", \"shown\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst toggle = ref<HTMLElement | null>(null);\nconst dropdown = ref<HTMLElement | null>(null);\nconst dropdownMenu = ref<HTMLElement | null>(null);\nconst mValue = ref(false);\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue !== undefined ? props.modelValue : mValue.value;\n },\n set(val: boolean) {\n if (props.modelValue !== undefined) {\n emit('update:modelValue', val);\n } else {\n mValue.value = val;\n }\n },\n});\n\n/**\n * Watch\n */\nwatch(value, (val) => {\n if (val) {\n ensureMenuPosition();\n } else {\n resetMenuPosition();\n toggle.value?.blur();\n }\n});\n\n/**\n * Watch\n */\nwatch(\n () => props.noCloseOnClickOutside,\n (val) => {\n if (val) {\n removeClickOutsideEventListener();\n } else {\n initClickOutsideEventListener();\n }\n },\n);\n\nwatch(\n () => props.noCloseOnEsc,\n (val) => {\n if (val) {\n removePressEscapeEventListener();\n } else {\n initPressEscapeEventListener();\n }\n },\n);\n\n/**\n * Methods\n */\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: any) => {\n if (event.key === 'Escape') {\n close();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [dropdown.value, dropdownMenu.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n close();\n }\n};\nconst onClickToggle = () => {\n value.value = !value.value;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(\n dropdown.value!,\n dropdownMenu.value!,\n props.menuFixed,\n );\n emit('shown');\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(dropdown.value!, dropdownMenu.value!);\n emit('hidden');\n};\nconst close = () => {\n value.value = false;\n};\nconst removePressEscapeEventListener = () => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n};\nconst removeClickOutsideEventListener = () => {\n document.removeEventListener('click', closeOnClickOutside);\n};\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n if (!props.noCloseOnEsc) {\n initPressEscapeEventListener();\n }\n if (!props.noCloseOnClickOutside) {\n initClickOutsideEventListener();\n }\n});\nonBeforeUnmount(() => {\n removePressEscapeEventListener();\n removeClickOutsideEventListener();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n/**\n * Provide\n */\nprovide(PIKey.CloseDropdown, close);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n ref_key: \"dropdown\",\n ref: dropdown\n }, [\n (props.label)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: id.value,\n class: \"ds-mb-2 ds-block ds-text-xs ds-font-bold ds-capitalize ds-text-gray-500\"\n }, _toDisplayString(props.label), 9, _hoisted_1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n id: id.value,\n ref_key: \"toggle\",\n ref: toggle,\n class: _normalizeClass([_ctx.toggleCssClass, \"ds-inline-flex ds-w-full ds-items-center ds-justify-between ds-rounded-lg ds-bg-gray-200 ds-px-3 ds-py-2 ds-text-gray-700 focus:ds-ring-1 focus:ds-ring-primary-t\"]),\n type: \"button\",\n onClick: onClickToggle\n }, [\n _renderSlot(_ctx.$slots, \"toggle\", {}, () => [\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(props.text), 1),\n _createTextVNode(\" \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([`${value.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_5, 2))\n ])\n ], 10, _hoisted_2),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"dropdownMenu\",\n ref: dropdownMenu,\n class: _normalizeClass([`${_ctx.menuCssClass} ${props.menuFixed ? 'ds-fixed' : 'ds-absolute'}`, \"ds-z-50 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 _renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_6), [\n [_vShow, value.value]\n ])\n ], 512))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_sfc_main","_defineComponent","__props","emit","props","toggle","ref","dropdown","dropdownMenu","mValue","id","computed","uuid","value","val","watch","ensureMenuPosition","resetMenuPosition","_a","removeClickOutsideEventListener","initClickOutsideEventListener","removePressEscapeEventListener","initPressEscapeEventListener","closeOnEscapePressed","event","close","closeOnClickOutside","r","onClickToggle","nextTick","ensureVisiblePosition","resetPosition","onMounted","onBeforeUnmount","provide","PIKey","_ctx","_cache","_openBlock","_createElementBlock","_toDisplayString","_createCommentVNode","_createElementVNode","_normalizeClass","_renderSlot","_createTextVNode","_withDirectives","_vShow"],"mappings":"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"}
|
package/dist/design-system14.mjs
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import { defineComponent as
|
|
1
|
+
import { defineComponent as M, ref as d, computed as O, watch as c, nextTick as P, onMounted as z, onBeforeUnmount as D, provide as F, openBlock as f, createElementBlock as m, toDisplayString as _, createCommentVNode as I, createElementVNode as a, normalizeClass as p, renderSlot as $, createTextVNode as N, withDirectives as S, vShow as T } from "vue";
|
|
2
2
|
import { ensureVisiblePosition as j, resetPosition as K } from "./design-system6.mjs";
|
|
3
3
|
import { PIKey as U } from "./design-system4.mjs";
|
|
4
|
-
import q from "./design-
|
|
5
|
-
const A = ["for"], G = ["id"], H = { class: "ds-truncate" }, J =
|
|
4
|
+
import q from "./design-system94.mjs";
|
|
5
|
+
const A = ["for"], G = ["id"], H = { class: "ds-truncate" }, J = /* @__PURE__ */ a("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 = [
|
|
6
|
+
J
|
|
7
|
+
], R = ["id", "data-cy", "data-ut"], se = /* @__PURE__ */ M({
|
|
6
8
|
__name: "BDropdown",
|
|
7
9
|
props: {
|
|
8
10
|
inputId: { default: "" },
|
|
@@ -17,100 +19,102 @@ const A = ["for"], G = ["id"], H = { class: "ds-truncate" }, J = ["id", "data-cy
|
|
|
17
19
|
},
|
|
18
20
|
emits: ["update:modelValue", "hidden", "shown"],
|
|
19
21
|
setup(B, { emit: i }) {
|
|
20
|
-
const s = B,
|
|
22
|
+
const s = B, v = d(null), o = d(null), n = d(null), C = d(!1), u = O(() => s.inputId || `id-${q()}`), t = O({
|
|
21
23
|
get() {
|
|
22
|
-
return s.modelValue !== void 0 ? s.modelValue :
|
|
24
|
+
return s.modelValue !== void 0 ? s.modelValue : C.value;
|
|
23
25
|
},
|
|
24
26
|
set(e) {
|
|
25
|
-
s.modelValue !== void 0 ? i("update:modelValue", e) :
|
|
27
|
+
s.modelValue !== void 0 ? i("update:modelValue", e) : C.value = e;
|
|
26
28
|
}
|
|
27
29
|
});
|
|
28
30
|
c(t, (e) => {
|
|
29
31
|
var l;
|
|
30
|
-
e ?
|
|
32
|
+
e ? x() : (h(), (l = v.value) == null || l.blur());
|
|
31
33
|
}), c(
|
|
32
34
|
() => s.noCloseOnClickOutside,
|
|
33
35
|
(e) => {
|
|
34
|
-
e ?
|
|
36
|
+
e ? b() : w();
|
|
35
37
|
}
|
|
36
38
|
), c(
|
|
37
39
|
() => s.noCloseOnEsc,
|
|
38
40
|
(e) => {
|
|
39
|
-
e ?
|
|
41
|
+
e ? E() : y();
|
|
40
42
|
}
|
|
41
43
|
);
|
|
42
|
-
const
|
|
43
|
-
document.addEventListener("keydown",
|
|
44
|
-
}, C = (e) => {
|
|
45
|
-
e.key === "Escape" && r();
|
|
46
|
-
}, y = () => {
|
|
47
|
-
document.addEventListener("click", g);
|
|
44
|
+
const y = () => {
|
|
45
|
+
document.addEventListener("keydown", g);
|
|
48
46
|
}, g = (e) => {
|
|
49
|
-
|
|
50
|
-
},
|
|
47
|
+
e.key === "Escape" && r();
|
|
48
|
+
}, w = () => {
|
|
49
|
+
document.addEventListener("click", k);
|
|
50
|
+
}, k = (e) => {
|
|
51
|
+
[o.value, n.value].some((L) => e.composedPath().includes(L)) || r();
|
|
52
|
+
}, V = () => {
|
|
51
53
|
t.value = !t.value;
|
|
52
|
-
},
|
|
53
|
-
|
|
54
|
+
}, x = () => {
|
|
55
|
+
P(() => {
|
|
54
56
|
j(
|
|
55
57
|
o.value,
|
|
56
58
|
n.value,
|
|
57
59
|
s.menuFixed
|
|
58
60
|
), i("shown");
|
|
59
61
|
});
|
|
60
|
-
},
|
|
62
|
+
}, h = () => {
|
|
61
63
|
K(o.value, n.value), i("hidden");
|
|
62
64
|
}, r = () => {
|
|
63
65
|
t.value = !1;
|
|
64
|
-
}, w = () => {
|
|
65
|
-
document.removeEventListener("keydown", C);
|
|
66
66
|
}, E = () => {
|
|
67
|
-
document.removeEventListener("
|
|
67
|
+
document.removeEventListener("keydown", g);
|
|
68
|
+
}, b = () => {
|
|
69
|
+
document.removeEventListener("click", k);
|
|
68
70
|
};
|
|
69
|
-
return
|
|
70
|
-
s.noCloseOnEsc ||
|
|
71
|
-
}),
|
|
72
|
-
|
|
73
|
-
}), F(U.CloseDropdown, r), (e, l) => (
|
|
71
|
+
return z(() => {
|
|
72
|
+
s.noCloseOnEsc || y(), s.noCloseOnClickOutside || w();
|
|
73
|
+
}), D(() => {
|
|
74
|
+
E(), b(), h();
|
|
75
|
+
}), F(U.CloseDropdown, r), (e, l) => (f(), m("div", {
|
|
74
76
|
ref_key: "dropdown",
|
|
75
77
|
ref: o
|
|
76
78
|
}, [
|
|
77
|
-
s.label ? (
|
|
79
|
+
s.label ? (f(), m("label", {
|
|
78
80
|
key: 0,
|
|
79
81
|
for: u.value,
|
|
80
82
|
class: "ds-mb-2 ds-block ds-text-xs ds-font-bold ds-capitalize ds-text-gray-500"
|
|
81
|
-
},
|
|
83
|
+
}, _(s.label), 9, A)) : I("", !0),
|
|
82
84
|
a("button", {
|
|
83
85
|
id: u.value,
|
|
84
86
|
ref_key: "toggle",
|
|
85
|
-
ref:
|
|
86
|
-
class:
|
|
87
|
+
ref: v,
|
|
88
|
+
class: p([e.toggleCssClass, "ds-inline-flex ds-w-full ds-items-center ds-justify-between ds-rounded-lg ds-bg-gray-200 ds-px-3 ds-py-2 ds-text-gray-700 focus:ds-ring-1 focus:ds-ring-primary-t"]),
|
|
87
89
|
type: "button",
|
|
88
|
-
onClick:
|
|
90
|
+
onClick: V
|
|
89
91
|
}, [
|
|
90
|
-
|
|
91
|
-
a("span", H,
|
|
92
|
+
$(e.$slots, "toggle", {}, () => [
|
|
93
|
+
a("span", H, _(s.text), 1),
|
|
92
94
|
N(" "),
|
|
93
|
-
|
|
94
|
-
class:
|
|
95
|
-
|
|
95
|
+
(f(), m("svg", {
|
|
96
|
+
class: p([`${t.value ? "ds-rotate-180" : ""}`, "ds-h-4 ds-w-4 ds-transition-transform"]),
|
|
97
|
+
viewBox: "0 0 320 512",
|
|
98
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
99
|
+
}, Q, 2))
|
|
96
100
|
])
|
|
97
101
|
], 10, G),
|
|
98
102
|
S(a("div", {
|
|
99
103
|
id: `${u.value}Menu`,
|
|
100
104
|
ref_key: "dropdownMenu",
|
|
101
105
|
ref: n,
|
|
102
|
-
class:
|
|
106
|
+
class: p([`${e.menuCssClass} ${s.menuFixed ? "ds-fixed" : "ds-absolute"}`, "ds-z-50 ds-py-1"]),
|
|
103
107
|
"data-cy": e.$attrs["data-cy"] ? `${e.$attrs["data-cy"]}Menu` : void 0,
|
|
104
108
|
"data-ut": e.$attrs["data-ut"] ? `${e.$attrs["data-ut"]}Menu` : void 0
|
|
105
109
|
}, [
|
|
106
|
-
|
|
107
|
-
], 10,
|
|
110
|
+
$(e.$slots, "default")
|
|
111
|
+
], 10, R), [
|
|
108
112
|
[T, t.value]
|
|
109
113
|
])
|
|
110
114
|
], 512));
|
|
111
115
|
}
|
|
112
116
|
});
|
|
113
117
|
export {
|
|
114
|
-
|
|
118
|
+
se as default
|
|
115
119
|
};
|
|
116
120
|
//# sourceMappingURL=design-system14.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system14.mjs","sources":["../src/components/BDropdown/BDropdown.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, vShow as _vShow, withDirectives as _withDirectives } from \"vue\"\n\nconst _hoisted_1 = [\"for\"]\nconst _hoisted_2 = [\"id\"]\nconst _hoisted_3 = { class: \"ds-truncate\" }\nconst _hoisted_4 = [\"id\", \"data-cy\", \"data-ut\"]\n\nimport {\n ensureVisiblePosition,\n resetPosition,\n} from '@/helpers/ComponentHelper';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n watch,\n} from 'vue';\nimport { PIKey } from '@/constants/Common';\n\n/**\n * Props\n */\nexport interface BDropdownProps {\n inputId?: string;\n modelValue?: boolean;\n label?: string;\n /**\n * Toggle's content text\n */\n text?: string;\n /**\n * CSS of toggle\n */\n toggleCssClass?: string;\n /**\n * CSS of menu\n */\n menuCssClass?: string;\n /**\n * Prevent menu from closing when clicking outside\n */\n noCloseOnClickOutside?: boolean;\n /**\n * Prevent menu from closing when \"Esc\" pressed\n */\n noCloseOnEsc?: boolean;\n menuFixed?: boolean; // menu position should be fixed when toggle position is fixed\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BDropdown',\n props: {\n inputId: { default: '' },\n modelValue: { type: Boolean, default: undefined },\n label: { default: '' },\n text: { default: '' },\n toggleCssClass: { default: '' },\n menuCssClass: { default: '' },\n noCloseOnClickOutside: { type: Boolean, default: false },\n noCloseOnEsc: { type: Boolean, default: false },\n menuFixed: { type: Boolean, default: false }\n },\n emits: [\"update:modelValue\", \"hidden\", \"shown\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst toggle = ref<HTMLElement | null>(null);\nconst dropdown = ref<HTMLElement | null>(null);\nconst dropdownMenu = ref<HTMLElement | null>(null);\nconst mValue = ref(false);\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue !== undefined ? props.modelValue : mValue.value;\n },\n set(val: boolean) {\n if (props.modelValue !== undefined) {\n emit('update:modelValue', val);\n } else {\n mValue.value = val;\n }\n },\n});\n\n/**\n * Watch\n */\nwatch(value, (val) => {\n if (val) {\n ensureMenuPosition();\n } else {\n resetMenuPosition();\n toggle.value?.blur();\n }\n});\n\n/**\n * Watch\n */\nwatch(\n () => props.noCloseOnClickOutside,\n (val) => {\n if (val) {\n removeClickOutsideEventListener();\n } else {\n initClickOutsideEventListener();\n }\n },\n);\n\nwatch(\n () => props.noCloseOnEsc,\n (val) => {\n if (val) {\n removePressEscapeEventListener();\n } else {\n initPressEscapeEventListener();\n }\n },\n);\n\n/**\n * Methods\n */\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: any) => {\n if (event.key === 'Escape') {\n close();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [dropdown.value, dropdownMenu.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n close();\n }\n};\nconst onClickToggle = () => {\n value.value = !value.value;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(\n dropdown.value!,\n dropdownMenu.value!,\n props.menuFixed,\n );\n emit('shown');\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(dropdown.value!, dropdownMenu.value!);\n emit('hidden');\n};\nconst close = () => {\n value.value = false;\n};\nconst removePressEscapeEventListener = () => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n};\nconst removeClickOutsideEventListener = () => {\n document.removeEventListener('click', closeOnClickOutside);\n};\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n if (!props.noCloseOnEsc) {\n initPressEscapeEventListener();\n }\n if (!props.noCloseOnClickOutside) {\n initClickOutsideEventListener();\n }\n});\nonBeforeUnmount(() => {\n removePressEscapeEventListener();\n removeClickOutsideEventListener();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n/**\n * Provide\n */\nprovide(PIKey.CloseDropdown, close);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n ref_key: \"dropdown\",\n ref: dropdown\n }, [\n (props.label)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: id.value,\n class: \"ds-mb-2 ds-block ds-text-xs ds-font-bold ds-capitalize ds-text-gray-500\"\n }, _toDisplayString(props.label), 9, _hoisted_1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n id: id.value,\n ref_key: \"toggle\",\n ref: toggle,\n class: _normalizeClass([_ctx.toggleCssClass, \"ds-inline-flex ds-w-full ds-items-center ds-justify-between ds-rounded-lg ds-bg-gray-200 ds-px-5 ds-py-2.5 ds-text-gray-700 focus:ds-ring-1 focus:ds-ring-primary-t\"]),\n type: \"button\",\n onClick: onClickToggle\n }, [\n _renderSlot(_ctx.$slots, \"toggle\", {}, () => [\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(props.text), 1),\n _createTextVNode(\" \"),\n _createElementVNode(\"span\", {\n class: _normalizeClass([`${value.value ? 'ds-rotate-180' : ''}`, \"fa-solid fa-caret-down ds-transition-transform\"])\n }, null, 2)\n ])\n ], 10, _hoisted_2),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"dropdownMenu\",\n ref: dropdownMenu,\n class: _normalizeClass([`${_ctx.menuCssClass} ${props.menuFixed ? 'ds-fixed' : 'ds-absolute'}`, \"ds-z-50 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 _renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_4), [\n [_vShow, value.value]\n ])\n ], 512))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_sfc_main","_defineComponent","__props","emit","props","toggle","ref","dropdown","dropdownMenu","mValue","id","computed","uuid","value","val","watch","ensureMenuPosition","resetMenuPosition","_a","removeClickOutsideEventListener","initClickOutsideEventListener","removePressEscapeEventListener","initPressEscapeEventListener","closeOnEscapePressed","event","close","closeOnClickOutside","r","onClickToggle","nextTick","ensureVisiblePosition","resetPosition","onMounted","onBeforeUnmount","provide","PIKey","_ctx","_cache","_openBlock","_createElementBlock","_toDisplayString","_createCommentVNode","_createElementVNode","_normalizeClass","_renderSlot","_createTextVNode","_withDirectives","_vShow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system14.mjs","sources":["../src/components/BDropdown/BDropdown.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, vShow as _vShow, withDirectives as _withDirectives } from \"vue\"\n\nconst _hoisted_1 = [\"for\"]\nconst _hoisted_2 = [\"id\"]\nconst _hoisted_3 = { class: \"ds-truncate\" }\nconst _hoisted_4 = /*#__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_5 = [\n _hoisted_4\n]\nconst _hoisted_6 = [\"id\", \"data-cy\", \"data-ut\"]\n\nimport {\n ensureVisiblePosition,\n resetPosition,\n} from '@/helpers/ComponentHelper';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n watch,\n} from 'vue';\nimport { PIKey } from '@/constants/Common';\n\n/**\n * Props\n */\nexport interface BDropdownProps {\n inputId?: string;\n modelValue?: boolean;\n label?: string;\n /**\n * Toggle's content text\n */\n text?: string;\n /**\n * CSS of toggle\n */\n toggleCssClass?: string;\n /**\n * CSS of menu\n */\n menuCssClass?: string;\n /**\n * Prevent menu from closing when clicking outside\n */\n noCloseOnClickOutside?: boolean;\n /**\n * Prevent menu from closing when \"Esc\" pressed\n */\n noCloseOnEsc?: boolean;\n menuFixed?: boolean; // menu position should be fixed when toggle position is fixed\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BDropdown',\n props: {\n inputId: { default: '' },\n modelValue: { type: Boolean, default: undefined },\n label: { default: '' },\n text: { default: '' },\n toggleCssClass: { default: '' },\n menuCssClass: { default: '' },\n noCloseOnClickOutside: { type: Boolean, default: false },\n noCloseOnEsc: { type: Boolean, default: false },\n menuFixed: { type: Boolean, default: false }\n },\n emits: [\"update:modelValue\", \"hidden\", \"shown\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst toggle = ref<HTMLElement | null>(null);\nconst dropdown = ref<HTMLElement | null>(null);\nconst dropdownMenu = ref<HTMLElement | null>(null);\nconst mValue = ref(false);\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue !== undefined ? props.modelValue : mValue.value;\n },\n set(val: boolean) {\n if (props.modelValue !== undefined) {\n emit('update:modelValue', val);\n } else {\n mValue.value = val;\n }\n },\n});\n\n/**\n * Watch\n */\nwatch(value, (val) => {\n if (val) {\n ensureMenuPosition();\n } else {\n resetMenuPosition();\n toggle.value?.blur();\n }\n});\n\n/**\n * Watch\n */\nwatch(\n () => props.noCloseOnClickOutside,\n (val) => {\n if (val) {\n removeClickOutsideEventListener();\n } else {\n initClickOutsideEventListener();\n }\n },\n);\n\nwatch(\n () => props.noCloseOnEsc,\n (val) => {\n if (val) {\n removePressEscapeEventListener();\n } else {\n initPressEscapeEventListener();\n }\n },\n);\n\n/**\n * Methods\n */\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: any) => {\n if (event.key === 'Escape') {\n close();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [dropdown.value, dropdownMenu.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n close();\n }\n};\nconst onClickToggle = () => {\n value.value = !value.value;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(\n dropdown.value!,\n dropdownMenu.value!,\n props.menuFixed,\n );\n emit('shown');\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(dropdown.value!, dropdownMenu.value!);\n emit('hidden');\n};\nconst close = () => {\n value.value = false;\n};\nconst removePressEscapeEventListener = () => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n};\nconst removeClickOutsideEventListener = () => {\n document.removeEventListener('click', closeOnClickOutside);\n};\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n if (!props.noCloseOnEsc) {\n initPressEscapeEventListener();\n }\n if (!props.noCloseOnClickOutside) {\n initClickOutsideEventListener();\n }\n});\nonBeforeUnmount(() => {\n removePressEscapeEventListener();\n removeClickOutsideEventListener();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n/**\n * Provide\n */\nprovide(PIKey.CloseDropdown, close);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n ref_key: \"dropdown\",\n ref: dropdown\n }, [\n (props.label)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: id.value,\n class: \"ds-mb-2 ds-block ds-text-xs ds-font-bold ds-capitalize ds-text-gray-500\"\n }, _toDisplayString(props.label), 9, _hoisted_1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n id: id.value,\n ref_key: \"toggle\",\n ref: toggle,\n class: _normalizeClass([_ctx.toggleCssClass, \"ds-inline-flex ds-w-full ds-items-center ds-justify-between ds-rounded-lg ds-bg-gray-200 ds-px-3 ds-py-2 ds-text-gray-700 focus:ds-ring-1 focus:ds-ring-primary-t\"]),\n type: \"button\",\n onClick: onClickToggle\n }, [\n _renderSlot(_ctx.$slots, \"toggle\", {}, () => [\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(props.text), 1),\n _createTextVNode(\" \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([`${value.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_5, 2))\n ])\n ], 10, _hoisted_2),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"dropdownMenu\",\n ref: dropdownMenu,\n class: _normalizeClass([`${_ctx.menuCssClass} ${props.menuFixed ? 'ds-fixed' : 'ds-absolute'}`, \"ds-z-50 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 _renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_6), [\n [_vShow, value.value]\n ])\n ], 512))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_sfc_main","_defineComponent","__props","emit","props","toggle","ref","dropdown","dropdownMenu","mValue","id","computed","uuid","value","val","watch","ensureMenuPosition","resetMenuPosition","_a","removeClickOutsideEventListener","initClickOutsideEventListener","removePressEscapeEventListener","initPressEscapeEventListener","closeOnEscapePressed","event","close","closeOnClickOutside","r","onClickToggle","nextTick","ensureVisiblePosition","resetPosition","onMounted","onBeforeUnmount","provide","PIKey","_ctx","_cache","_openBlock","_createElementBlock","_toDisplayString","_createCommentVNode","_createElementVNode","_normalizeClass","_renderSlot","_createTextVNode","_withDirectives","_vShow"],"mappings":"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"}
|
package/dist/design-system142.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const t=require("./design-system143.js"),a=require("./design-system113.js");var i=Object.prototype,o=i.hasOwnProperty;function u(r,s,n){var e=r[s];(!(o.call(r,s)&&a(e,n))||n===void 0&&!(s in r))&&t(r,s,n)}module.exports=u;
|
|
2
2
|
//# sourceMappingURL=design-system142.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system142.js","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system142.js","sources":["../node_modules/lodash-es/_assignValue.js"],"sourcesContent":["import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignValue;\n"],"names":["objectProto","hasOwnProperty","assignValue","object","key","value","objValue","eq","baseAssignValue"],"mappings":"yFAIA,IAAIA,EAAc,OAAO,UAGrBC,EAAiBD,EAAY,eAYjC,SAASE,EAAYC,EAAQC,EAAKC,EAAO,CACvC,IAAIC,EAAWH,EAAOC,CAAG,GACrB,EAAEH,EAAe,KAAKE,EAAQC,CAAG,GAAKG,EAAGD,EAAUD,CAAK,IACvDA,IAAU,QAAa,EAAED,KAAOD,KACnCK,EAAgBL,EAAQC,EAAKC,CAAK,CAEtC","x_google_ignoreList":[0]}
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var n = r[g], f = d ? d(i[n], a[n], n, i, a) : void 0;
|
|
8
|
-
f === void 0 && (f = a[n]), l ? h(i, n, f) : v(i, n, f);
|
|
9
|
-
}
|
|
10
|
-
return i;
|
|
1
|
+
import t from "./design-system143.mjs";
|
|
2
|
+
import i from "./design-system113.mjs";
|
|
3
|
+
var s = Object.prototype, p = s.hasOwnProperty;
|
|
4
|
+
function l(r, a, o) {
|
|
5
|
+
var n = r[a];
|
|
6
|
+
(!(p.call(r, a) && i(n, o)) || o === void 0 && !(a in r)) && t(r, a, o);
|
|
11
7
|
}
|
|
12
8
|
export {
|
|
13
|
-
|
|
9
|
+
l as default
|
|
14
10
|
};
|
|
15
11
|
//# sourceMappingURL=design-system142.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system142.mjs","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system142.mjs","sources":["../node_modules/lodash-es/_assignValue.js"],"sourcesContent":["import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignValue;\n"],"names":["objectProto","hasOwnProperty","assignValue","object","key","value","objValue","eq","baseAssignValue"],"mappings":";;AAIA,IAAIA,IAAc,OAAO,WAGrBC,IAAiBD,EAAY;AAYjC,SAASE,EAAYC,GAAQC,GAAKC,GAAO;AACvC,MAAIC,IAAWH,EAAOC,CAAG;AACzB,GAAI,EAAEH,EAAe,KAAKE,GAAQC,CAAG,KAAKG,EAAGD,GAAUD,CAAK,MACvDA,MAAU,UAAa,EAAED,KAAOD,OACnCK,EAAgBL,GAAQC,GAAKC,CAAK;AAEtC;","x_google_ignoreList":[0]}
|
package/dist/design-system143.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const u=require("./design-system146.js");function i(r,e,t){e=="__proto__"&&u?u(r,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):r[e]=t}module.exports=i;
|
|
2
2
|
//# sourceMappingURL=design-system143.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system143.js","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system143.js","sources":["../node_modules/lodash-es/_baseAssignValue.js"],"sourcesContent":["import defineProperty from './_defineProperty.js';\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nexport default baseAssignValue;\n"],"names":["baseAssignValue","object","key","value","defineProperty"],"mappings":"sDAWA,SAASA,EAAgBC,EAAQC,EAAKC,EAAO,CACvCD,GAAO,aAAeE,EACxBA,EAAeH,EAAQC,EAAK,CAC1B,aAAgB,GAChB,WAAc,GACd,MAASC,EACT,SAAY,EAClB,CAAK,EAEDF,EAAOC,CAAG,EAAIC,CAElB","x_google_ignoreList":[0]}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import u from "./design-system146.mjs";
|
|
2
|
+
function i(r, e, t) {
|
|
3
|
+
e == "__proto__" && u ? u(r, e, {
|
|
4
|
+
configurable: !0,
|
|
5
|
+
enumerable: !0,
|
|
6
|
+
value: t,
|
|
7
|
+
writable: !0
|
|
8
|
+
}) : r[e] = t;
|
|
7
9
|
}
|
|
8
10
|
export {
|
|
9
|
-
|
|
11
|
+
i as default
|
|
10
12
|
};
|
|
11
13
|
//# sourceMappingURL=design-system143.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system143.mjs","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system143.mjs","sources":["../node_modules/lodash-es/_baseAssignValue.js"],"sourcesContent":["import defineProperty from './_defineProperty.js';\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nexport default baseAssignValue;\n"],"names":["baseAssignValue","object","key","value","defineProperty"],"mappings":";AAWA,SAASA,EAAgBC,GAAQC,GAAKC,GAAO;AAC3C,EAAID,KAAO,eAAeE,IACxBA,EAAeH,GAAQC,GAAK;AAAA,IAC1B,cAAgB;AAAA,IAChB,YAAc;AAAA,IACd,OAASC;AAAA,IACT,UAAY;AAAA,EAClB,CAAK,IAEDF,EAAOC,CAAG,IAAIC;AAElB;","x_google_ignoreList":[0]}
|
package/dist/design-system144.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const h=require("./design-system142.js"),l=require("./design-system143.js");function u(s,a,i,d){var g=!i;i||(i={});for(var f=-1,v=a.length;++f<v;){var n=a[f],r=d?d(i[n],s[n],n,i,s):void 0;r===void 0&&(r=s[n]),g?l(i,n,r):h(i,n,r)}return i}module.exports=u;
|
|
2
2
|
//# sourceMappingURL=design-system144.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system144.js","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system144.js","sources":["../node_modules/lodash-es/_copyObject.js"],"sourcesContent":["import assignValue from './_assignValue.js';\nimport baseAssignValue from './_baseAssignValue.js';\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nexport default copyObject;\n"],"names":["copyObject","source","props","object","customizer","isNew","index","length","key","newValue","baseAssignValue","assignValue"],"mappings":"yFAaA,SAASA,EAAWC,EAAQC,EAAOC,EAAQC,EAAY,CACrD,IAAIC,EAAQ,CAACF,EACbA,IAAWA,EAAS,CAAA,GAKpB,QAHIG,EAAQ,GACRC,EAASL,EAAM,OAEZ,EAAEI,EAAQC,GAAQ,CACvB,IAAIC,EAAMN,EAAMI,CAAK,EAEjBG,EAAWL,EACXA,EAAWD,EAAOK,CAAG,EAAGP,EAAOO,CAAG,EAAGA,EAAKL,EAAQF,CAAM,EACxD,OAEAQ,IAAa,SACfA,EAAWR,EAAOO,CAAG,GAEnBH,EACFK,EAAgBP,EAAQK,EAAKC,CAAQ,EAErCE,EAAYR,EAAQK,EAAKC,CAAQ,CAEpC,CACD,OAAON,CACT","x_google_ignoreList":[0]}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import v from "./design-system142.mjs";
|
|
2
|
+
import h from "./design-system143.mjs";
|
|
3
|
+
function x(a, r, i, d) {
|
|
4
|
+
var l = !i;
|
|
5
|
+
i || (i = {});
|
|
6
|
+
for (var g = -1, s = r.length; ++g < s; ) {
|
|
7
|
+
var n = r[g], f = d ? d(i[n], a[n], n, i, a) : void 0;
|
|
8
|
+
f === void 0 && (f = a[n]), l ? h(i, n, f) : v(i, n, f);
|
|
9
|
+
}
|
|
10
|
+
return i;
|
|
9
11
|
}
|
|
10
12
|
export {
|
|
11
|
-
|
|
13
|
+
x as default
|
|
12
14
|
};
|
|
13
15
|
//# sourceMappingURL=design-system144.mjs.map
|