yuyeon 0.0.52-rc.1 → 0.1.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/yuyeon.js +3456 -3320
- package/dist/yuyeon.umd.cjs +20 -6
- package/lib/components/badge/YBadge.mjs.map +1 -1
- package/lib/components/checkbox/YCheckbox.mjs.map +1 -1
- package/lib/components/checkbox/YInputCheckbox.mjs.map +1 -1
- package/lib/components/chip/YChip.mjs.map +1 -1
- package/lib/components/date-picker/YDateCalendar.mjs.map +1 -1
- package/lib/components/date-picker/YDatePicker.mjs.map +1 -1
- package/lib/components/date-picker/YDatePickerControl.mjs.map +1 -1
- package/lib/components/dropdown/YDropdown.mjs.map +1 -1
- package/lib/components/icons/YIconCheckbox.mjs.map +1 -1
- package/lib/components/icons/YIconClear.mjs.map +1 -1
- package/lib/components/icons/YIconDropdown.mjs.map +1 -1
- package/lib/components/icons/YIconExpand.mjs.map +1 -1
- package/lib/components/icons/YIconPageControl.mjs.map +1 -1
- package/lib/components/icons/YIconSort.mjs.map +1 -1
- package/lib/components/layer/YLayer.mjs.map +1 -1
- package/lib/components/list/YList.mjs.map +1 -1
- package/lib/components/loading/YSpinnerRing.mjs.map +1 -1
- package/lib/components/pagination/YPagination.mjs.map +1 -1
- package/lib/components/panel/YDividePanel.mjs.map +1 -1
- package/lib/components/progress-bar/YProgressBar.mjs.map +1 -1
- package/lib/components/select/YSelect.mjs +17 -8
- package/lib/components/select/YSelect.mjs.map +1 -1
- package/lib/components/snackbar/YSnackbar.mjs +6 -6
- package/lib/components/snackbar/YSnackbar.mjs.map +1 -1
- package/lib/components/switch/YSwitch.mjs +1 -1
- package/lib/components/switch/YSwitch.mjs.map +1 -1
- package/lib/components/tab/YTabs.mjs.map +1 -1
- package/lib/components/table/YDataTableBody.mjs.map +1 -1
- package/lib/components/table/YDataTableControl.mjs.map +1 -1
- package/lib/components/table/YDataTableHead.mjs.map +1 -1
- package/lib/components/tooltip/YTooltip.mjs.map +1 -1
- package/lib/components/tree-view/YTreeView.mjs.map +1 -1
- package/lib/components/tree-view/YTreeViewNode.mjs.map +1 -1
- package/lib/composables/icon.mjs.map +1 -1
- package/package.json +6 -10
- package/types/components/alert/YAlert.d.ts +1 -1
- package/types/components/app/YApp.d.ts +1 -1
- package/types/components/badge/YBadge.d.ts +2 -2
- package/types/components/button/YButton.d.ts +1 -1
- package/types/components/card/YCard.d.ts +1 -1
- package/types/components/card/YCardBody.d.ts +1 -1
- package/types/components/card/YCardFooter.d.ts +1 -1
- package/types/components/card/YCardHeader.d.ts +1 -1
- package/types/components/checkbox/YCheckbox.d.ts +3 -3
- package/types/components/checkbox/YInputCheckbox.d.ts +3 -3
- package/types/components/chip/YChip.d.ts +1 -1
- package/types/components/date-picker/YDateCalendar.d.ts +1 -1
- package/types/components/date-picker/YDatePicker.d.ts +1 -1
- package/types/components/date-picker/YDatePickerControl.d.ts +1 -1
- package/types/components/date-picker/YMonthPicker.d.ts +1 -1
- package/types/components/date-picker/YYearPicker.d.ts +1 -1
- package/types/components/dialog/YDialog.d.ts +76 -43
- package/types/components/divider/YDivider.d.ts +1 -1
- package/types/components/dropdown/YDropdown.d.ts +1 -1
- package/types/components/field-input/YFieldInput.d.ts +14 -14
- package/types/components/form/YForm.d.ts +2 -2
- package/types/components/icon/YIcon.d.ts +1 -1
- package/types/components/icons/YIconCheckbox.d.ts +1 -1
- package/types/components/icons/YIconClear.d.ts +1 -1
- package/types/components/icons/YIconDropdown.d.ts +1 -1
- package/types/components/icons/YIconExpand.d.ts +1 -1
- package/types/components/icons/YIconPageControl.d.ts +1 -1
- package/types/components/icons/YIconSort.d.ts +1 -1
- package/types/components/icons/index.d.ts +8 -8
- package/types/components/input/YInput.d.ts +9 -9
- package/types/components/layer/YLayer.d.ts +68 -35
- package/types/components/list/YList.d.ts +1 -1
- package/types/components/list/YListItem.d.ts +1 -1
- package/types/components/loading/YSpinnerRing.d.ts +1 -1
- package/types/components/menu/YMenu.d.ts +69 -36
- package/types/components/pagination/YPagination.d.ts +2 -2
- package/types/components/panel/YDividePanel.d.ts +1 -1
- package/types/components/plate/YPlate.d.ts +1 -1
- package/types/components/progress-bar/YProgressBar.d.ts +1 -1
- package/types/components/select/YSelect.d.ts +4787 -3589
- package/types/components/snackbar/YSnackbar.d.ts +2 -2
- package/types/components/switch/YSwitch.d.ts +2 -2
- package/types/components/tab/YTab.d.ts +1 -1
- package/types/components/tab/YTabs.d.ts +1 -1
- package/types/components/table/YDataTable.d.ts +2 -2
- package/types/components/table/YDataTableBody.d.ts +1 -1
- package/types/components/table/YDataTableCell.d.ts +1 -1
- package/types/components/table/YDataTableControl.d.ts +1 -1
- package/types/components/table/YDataTableHead.d.ts +1 -1
- package/types/components/table/YDataTableLayer.d.ts +1 -1
- package/types/components/table/YDataTableRow.d.ts +1 -1
- package/types/components/table/YDataTableServer.d.ts +1 -1
- package/types/components/table/YTable.d.ts +1 -1
- package/types/components/text-highlighter/YTextHighlighter.d.ts +1 -1
- package/types/components/textarea/YTextarea.d.ts +179 -232
- package/types/components/tooltip/YTooltip.d.ts +69 -36
- package/types/components/transitions/expand-transition.d.ts +1 -1
- package/types/components/transitions/index.d.ts +2 -2
- package/types/components/tree-view/YTreeView.d.ts +5 -5
- package/types/components/tree-view/YTreeViewNode.d.ts +1 -1
- package/types/composables/coordinate/index.d.ts +67 -34
- package/types/composables/icon.d.ts +2 -2
- package/types/composables/theme/index.d.ts +1 -1
- package/types/composables/validation.d.ts +4 -4
- package/types/globals.d.ts +14 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YBadge.mjs","names":["defineComponent","useRender","useI18n","IconValue","PolyTransition","propsFactory","YIcon","pressYBadgePropsOptions","tag","type","String","default","dot","Boolean","bordered","floating","inline","icon","color","hide","label","content","Number","max","transition","YBadge","name","props","slots","Object","setup","_ref","t","ElTag","value","isNaN","_createVNode","_withDirectives","undefined","badge","_vShow"],"sources":["../../../src/components/badge/YBadge.tsx"],"sourcesContent":["import { PropType, SlotsType, defineComponent } from 'vue';\n\nimport { useRender } from '../../composables/component';\nimport { useI18n } from '../../composables/i18n';\nimport { IconValue } from '../../composables/icon';\nimport { PolyTransition } from '../../composables/transition';\nimport { propsFactory } from '../../util/vue-component';\nimport { YIcon } from '../icon/YIcon';\n\nimport './YBadge.scss';\n\nexport const pressYBadgePropsOptions = propsFactory(\n {\n tag: {\n type: String as PropType<string>,\n default: 'div',\n },\n dot: Boolean,\n bordered: Boolean,\n floating: Boolean,\n inline: Boolean,\n icon: IconValue,\n color: String,\n hide: Boolean,\n label: {\n type: String,\n default: '$yuyeon.badge',\n },\n content: [Number, String],\n max: Number,\n transition: {\n type: String,\n default: 'fade',\n },\n },\n 'YBadge',\n);\n\nexport const YBadge = defineComponent({\n name: 'YBadge',\n props: pressYBadgePropsOptions(),\n slots: Object as SlotsType<{\n default: any;\n badge: any;\n }>,\n setup(props, { slots }) {\n const { t } = useI18n();\n useRender(() => {\n const ElTag = props.tag as keyof HTMLElementTagNameMap;\n const value = Number(props.content);\n const content =\n !props.max || isNaN(value)\n ? props.content\n : value <= +props.max\n ? value\n : `${props.max}+`;\n return (\n <ElTag\n class={[\n 'y-badge',\n {\n 'y-badge--bordered': props.bordered,\n 'y-badge--dot': props.dot,\n 'y-badge--floating': props.floating,\n 'y-badge--inline': props.inline,\n },\n ]}\n >\n <div class=\"y-badge__base\">\n {slots.default?.()}\n <PolyTransition\n is={props.transition}\n transitionProps={{ name: props.transition }}\n >\n <span\n v-show={!props.hide}\n class={['y-badge__badge']}\n aria-atomic=\"true\"\n aria-label={t(props.label, value)}\n aria-live=\"polite\"\n role=\"status\"\n >\n {props.dot ? undefined : slots.badge ? (\n slots.badge?.()\n ) : props.icon ? (\n <YIcon icon={props.icon} />\n ) : (\n content\n )}\n </span>\n </PolyTransition>\n </div>\n </ElTag>\n );\n });\n },\n});\n\nexport type YBadge = InstanceType<typeof YBadge>;\n"],"mappings":";AAAA,SAA8BA,eAAe,QAAQ,KAAK;AAAC,SAElDC,SAAS;AAAA,SACTC,OAAO;AAAA,SACPC,SAAS;AAAA,SACTC,cAAc;AAAA,SACdC,YAAY;AAAA,SACZC,KAAK;AAEd;AAEA,OAAO,MAAMC,uBAAuB,GAAGF,YAAY,CACjD;EACEG,GAAG,EAAE;IACHC,IAAI,EAAEC,MAA0B;IAChCC,OAAO,EAAE;EACX,CAAC;EACDC,GAAG,EAAEC,OAAO;EACZC,QAAQ,EAAED,OAAO;EACjBE,QAAQ,EAAEF,OAAO;EACjBG,MAAM,EAAEH,OAAO;EACfI,IAAI,EAAEd,SAAS;EACfe,KAAK,EAAER,MAAM;EACbS,IAAI,EAAEN,OAAO;EACbO,KAAK,EAAE;IACLX,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAE;EACX,CAAC;EACDU,OAAO,EAAE,CAACC,MAAM,EAAEZ,MAAM,CAAC;EACzBa,GAAG,EAAED,MAAM;EACXE,UAAU,EAAE;IACVf,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAE;EACX;AACF,CAAC,EACD,QACF,CAAC;AAED,OAAO,MAAMc,MAAM,GAAGzB,eAAe,CAAC;EACpC0B,IAAI,EAAE,QAAQ;EACdC,KAAK,EAAEpB,uBAAuB,CAAC,CAAC;EAChCqB,KAAK,EAAEC,MAGL;EACFC,KAAKA,CAACH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEH;IAAM,CAAC,GAAAG,IAAA;IACpB,MAAM;MAAEC;IAAE,CAAC,GAAG9B,OAAO,CAAC,CAAC;IACvBD,SAAS,CAAC,MAAM;MACd,MAAMgC,KAAK,GAAGN,KAAK,CAACnB,GAAkC;MACtD,MAAM0B,KAAK,GAAGZ,MAAM,CAACK,KAAK,CAACN,OAAO,CAAC;MACnC,MAAMA,OAAO,GACX,CAACM,KAAK,CAACJ,GAAG,IAAIY,KAAK,CAACD,KAAK,CAAC,GACtBP,KAAK,CAACN,OAAO,GACba,KAAK,IAAI,CAACP,KAAK,CAACJ,GAAG,GACnBW,KAAK,GACJ,GAAEP,KAAK,CAACJ,GAAI,GAAE;MACrB,OAAAa,YAAA,CAAAH,KAAA;QAAA,SAEW,CACL,SAAS,EACT;UACE,mBAAmB,EAAEN,KAAK,CAACb,QAAQ;UACnC,cAAc,EAAEa,KAAK,CAACf,GAAG;UACzB,mBAAmB,EAAEe,KAAK,CAACZ,QAAQ;UACnC,iBAAiB,EAAEY,KAAK,CAACX;QAC3B,CAAC;MACF;QAAAL,OAAA,EAAAA,CAAA,MAAAyB,YAAA;UAAA
|
|
1
|
+
{"version":3,"file":"YBadge.mjs","names":["defineComponent","useRender","useI18n","IconValue","PolyTransition","propsFactory","YIcon","pressYBadgePropsOptions","tag","type","String","default","dot","Boolean","bordered","floating","inline","icon","color","hide","label","content","Number","max","transition","YBadge","name","props","slots","Object","setup","_ref","t","ElTag","value","isNaN","_createVNode","_withDirectives","undefined","badge","_vShow"],"sources":["../../../src/components/badge/YBadge.tsx"],"sourcesContent":["import { PropType, SlotsType, defineComponent } from 'vue';\n\nimport { useRender } from '../../composables/component';\nimport { useI18n } from '../../composables/i18n';\nimport { IconValue } from '../../composables/icon';\nimport { PolyTransition } from '../../composables/transition';\nimport { propsFactory } from '../../util/vue-component';\nimport { YIcon } from '../icon/YIcon';\n\nimport './YBadge.scss';\n\nexport const pressYBadgePropsOptions = propsFactory(\n {\n tag: {\n type: String as PropType<string>,\n default: 'div',\n },\n dot: Boolean,\n bordered: Boolean,\n floating: Boolean,\n inline: Boolean,\n icon: IconValue,\n color: String,\n hide: Boolean,\n label: {\n type: String,\n default: '$yuyeon.badge',\n },\n content: [Number, String],\n max: Number,\n transition: {\n type: String,\n default: 'fade',\n },\n },\n 'YBadge',\n);\n\nexport const YBadge = defineComponent({\n name: 'YBadge',\n props: pressYBadgePropsOptions(),\n slots: Object as SlotsType<{\n default: any;\n badge: any;\n }>,\n setup(props, { slots }) {\n const { t } = useI18n();\n useRender(() => {\n const ElTag = props.tag as keyof HTMLElementTagNameMap;\n const value = Number(props.content);\n const content =\n !props.max || isNaN(value)\n ? props.content\n : value <= +props.max\n ? value\n : `${props.max}+`;\n return (\n <ElTag\n class={[\n 'y-badge',\n {\n 'y-badge--bordered': props.bordered,\n 'y-badge--dot': props.dot,\n 'y-badge--floating': props.floating,\n 'y-badge--inline': props.inline,\n },\n ]}\n >\n <div class=\"y-badge__base\">\n {slots.default?.()}\n <PolyTransition\n is={props.transition}\n transitionProps={{ name: props.transition }}\n >\n <span\n v-show={!props.hide}\n class={['y-badge__badge']}\n aria-atomic=\"true\"\n aria-label={t(props.label, value)}\n aria-live=\"polite\"\n role=\"status\"\n >\n {props.dot ? undefined : slots.badge ? (\n slots.badge?.()\n ) : props.icon ? (\n <YIcon icon={props.icon} />\n ) : (\n content\n )}\n </span>\n </PolyTransition>\n </div>\n </ElTag>\n );\n });\n },\n});\n\nexport type YBadge = InstanceType<typeof YBadge>;\n"],"mappings":";AAAA,SAA8BA,eAAe,QAAQ,KAAK;AAAC,SAElDC,SAAS;AAAA,SACTC,OAAO;AAAA,SACPC,SAAS;AAAA,SACTC,cAAc;AAAA,SACdC,YAAY;AAAA,SACZC,KAAK;AAEd;AAEA,OAAO,MAAMC,uBAAuB,GAAGF,YAAY,CACjD;EACEG,GAAG,EAAE;IACHC,IAAI,EAAEC,MAA0B;IAChCC,OAAO,EAAE;EACX,CAAC;EACDC,GAAG,EAAEC,OAAO;EACZC,QAAQ,EAAED,OAAO;EACjBE,QAAQ,EAAEF,OAAO;EACjBG,MAAM,EAAEH,OAAO;EACfI,IAAI,EAAEd,SAAS;EACfe,KAAK,EAAER,MAAM;EACbS,IAAI,EAAEN,OAAO;EACbO,KAAK,EAAE;IACLX,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAE;EACX,CAAC;EACDU,OAAO,EAAE,CAACC,MAAM,EAAEZ,MAAM,CAAC;EACzBa,GAAG,EAAED,MAAM;EACXE,UAAU,EAAE;IACVf,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAE;EACX;AACF,CAAC,EACD,QACF,CAAC;AAED,OAAO,MAAMc,MAAM,GAAGzB,eAAe,CAAC;EACpC0B,IAAI,EAAE,QAAQ;EACdC,KAAK,EAAEpB,uBAAuB,CAAC,CAAC;EAChCqB,KAAK,EAAEC,MAGL;EACFC,KAAKA,CAACH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEH;IAAM,CAAC,GAAAG,IAAA;IACpB,MAAM;MAAEC;IAAE,CAAC,GAAG9B,OAAO,CAAC,CAAC;IACvBD,SAAS,CAAC,MAAM;MACd,MAAMgC,KAAK,GAAGN,KAAK,CAACnB,GAAkC;MACtD,MAAM0B,KAAK,GAAGZ,MAAM,CAACK,KAAK,CAACN,OAAO,CAAC;MACnC,MAAMA,OAAO,GACX,CAACM,KAAK,CAACJ,GAAG,IAAIY,KAAK,CAACD,KAAK,CAAC,GACtBP,KAAK,CAACN,OAAO,GACba,KAAK,IAAI,CAACP,KAAK,CAACJ,GAAG,GACnBW,KAAK,GACJ,GAAEP,KAAK,CAACJ,GAAI,GAAE;MACrB,OAAAa,YAAA,CAAAH,KAAA;QAAA,SAEW,CACL,SAAS,EACT;UACE,mBAAmB,EAAEN,KAAK,CAACb,QAAQ;UACnC,cAAc,EAAEa,KAAK,CAACf,GAAG;UACzB,mBAAmB,EAAEe,KAAK,CAACZ,QAAQ;UACnC,iBAAiB,EAAEY,KAAK,CAACX;QAC3B,CAAC;MACF;QAAAL,OAAA,EAAAA,CAAA,MAAAyB,YAAA;UAAA;QAAA,IAGER,KAAK,CAACjB,OAAO,GAAG,CAAC,EAAAyB,YAAA,CAAAhC,cAAA;UAAA,MAEZuB,KAAK,CAACH,UAAU;UAAA,mBACH;YAAEE,IAAI,EAAEC,KAAK,CAACH;UAAW;QAAC;UAAAb,OAAA,EAAAA,CAAA,MAAA0B,eAAA,CAAAD,YAAA;YAAA,SAIlC,CAAC,gBAAgB,CAAC;YAAA;YAAA,cAEbJ,CAAC,CAACL,KAAK,CAACP,KAAK,EAAEc,KAAK,CAAC;YAAA;YAAA;UAAA,IAIhCP,KAAK,CAACf,GAAG,GAAG0B,SAAS,GAAGV,KAAK,CAACW,KAAK,GAClCX,KAAK,CAACW,KAAK,GAAG,CAAC,GACbZ,KAAK,CAACV,IAAI,GAAAmB,YAAA,CAAA9B,KAAA;YAAA,QACCqB,KAAK,CAACV;UAAI,WAEvBI,OACD,MAAAmB,MAAA,EAbO,CAACb,KAAK,CAACR,IAAI;QAAA;MAAA;IAmB/B,CAAC,CAAC;EACJ;AACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YCheckbox.mjs","names":["computed","defineComponent","ref","watch","withModifiers","useRender","getUid","YInputCheckbox","YCheckbox","name","components","emits","props","modelValue","Boolean","Array","value","String","Number","Object","label","reverse","icon","type","color","default","disabled","readonly","setup","_ref","emit","slots","focused","checked","counterId","toString","inputId","onFocus","e","onBlur","onClick","check","inputByProp","isArray","found","find","inp","undefined","classes","computedIcon","isMultipleInput","getMultipleInputIndex","findIndex","v","neo","index","push","splice","immediate","deep","_createVNode","leading","stopPropagation","_len","arguments","length","args","_key","_len2","_key2","trailing"],"sources":["../../../src/components/checkbox/YCheckbox.tsx"],"sourcesContent":["import {\r\n PropType,\r\n computed,\r\n defineComponent,\r\n ref,\r\n watch,\r\n withModifiers,\r\n} from 'vue';\r\n\r\nimport { useRender } from '../../composables/component';\r\nimport { getUid } from '../../util/vue-component';\r\nimport YInputCheckbox from './YInputCheckbox';\r\n\r\nimport './YCheckbox.scss';\r\n\r\nexport const YCheckbox = defineComponent({\r\n name: 'YCheckbox',\r\n components: { YInputCheckbox },\r\n emits: ['focus', 'blur', 'click', 'update:modelValue', 'change'],\r\n props: {\r\n modelValue: [Boolean, Array] as PropType<boolean | any[]>,\r\n value: [String, Number, Object] as PropType<any>,\r\n label: String as PropType<string>,\r\n reverse: Boolean as PropType<boolean>,\r\n icon: {\r\n type: [Object, String] as PropType<\r\n { checked?: string; unchecked?: string } | string\r\n >,\r\n },\r\n color: {\r\n type: String as PropType<string>,\r\n default: () => 'primary',\r\n },\r\n disabled: Boolean as PropType<boolean>,\r\n readonly: Boolean as PropType<boolean>,\r\n },\r\n setup(props, { emit, slots }) {\r\n const focused = ref(false);\r\n const checked = ref(false);\r\n const counterId = (getUid() ?? '').toString();\r\n const inputId = `input-${counterId}`;\r\n\r\n function onFocus(e: FocusEvent) {\r\n focused.value = true;\r\n emit('focus', e);\r\n }\r\n\r\n function onBlur(e: FocusEvent) {\r\n focused.value = false;\r\n emit('blur', e);\r\n }\r\n\r\n function onClick(e: Event, ...args: any[]) {\r\n emit('click', e);\r\n if (props.disabled || props.readonly) return;\r\n const check = !checked.value;\r\n checked.value = check;\r\n emit('change', check);\r\n }\r\n\r\n function inputByProp() {\r\n if (Array.isArray(props.modelValue)) {\r\n const found = props.modelValue?.find((inp: any) => inp === props.value);\r\n if (found !== undefined) {\r\n checked.value = true;\r\n } else {\r\n checked.value = false;\r\n }\r\n } else if (typeof props.modelValue === 'boolean') {\r\n checked.value = props.modelValue;\r\n }\r\n }\r\n\r\n const classes = computed<Record<string, boolean>>(() => {\r\n const { reverse, disabled, readonly } = props;\r\n return {\r\n 'y-checkbox': true,\r\n 'y-checkbox--reverse': !!reverse,\r\n 'y-checkbox--focused': focused.value,\r\n 'y-checkbox--disabled': !!disabled,\r\n 'y-checkbox--readonly': !!readonly,\r\n };\r\n });\r\n\r\n const computedIcon = computed<string | undefined>(() => {\r\n if (typeof props.icon === 'string') {\r\n return props.icon;\r\n }\r\n return undefined;\r\n });\r\n\r\n const isMultipleInput = computed<boolean>(() => {\r\n return Array.isArray(props.modelValue);\r\n });\r\n\r\n function getMultipleInputIndex() {\r\n if (!isMultipleInput.value) {\r\n return -1;\r\n }\r\n return (props.modelValue as any[]).findIndex(\r\n (v: any) => v === props.value,\r\n );\r\n }\r\n\r\n watch(checked, (neo) => {\r\n if (Array.isArray(props.modelValue)) {\r\n const value = props.modelValue;\r\n const index = getMultipleInputIndex();\r\n if (neo && index === -1) {\r\n value.push(props.value);\r\n } else if (!neo && index !== -1) {\r\n value.splice(index, 1);\r\n }\r\n emit('update:modelValue', value);\r\n } else {\r\n emit('update:modelValue', neo);\r\n }\r\n });\r\n\r\n watch(\r\n () => props.modelValue,\r\n (neo) => {\r\n if (Array.isArray(neo)) {\r\n inputByProp();\r\n } else {\r\n checked.value = !!neo;\r\n }\r\n },\r\n { immediate: true, deep: true },\r\n );\r\n\r\n useRender(() => {\r\n return (\r\n <div class={[{ ...classes.value }]}>\r\n {slots.leading?.()}\r\n <div class=\"y-checkbox__slot\">\r\n <YInputCheckbox\r\n onClick={(e: Event, ...args: any[]) => {\r\n e.stopPropagation();\r\n onClick(e, ...args);\r\n }}\r\n onFocus={onFocus}\r\n onBlur={onBlur}\r\n id={counterId}\r\n value={checked.value}\r\n icon={computedIcon.value}\r\n color={props.color}\r\n disabled={props.disabled}\r\n readonly={props.readonly}\r\n >\r\n {slots.icon && {\r\n icon: (...args: any[]) => slots.icon?.(...args),\r\n }}\r\n </YInputCheckbox>\r\n <label\r\n onClick={withModifiers(() => {}, ['stop'])}\r\n class=\"y-checkbox__label\"\r\n for={inputId}\r\n >\r\n {slots.label ? slots.label?.() : props.label}\r\n </label>\r\n </div>\r\n {slots.trailing?.()}\r\n </div>\r\n );\r\n });\r\n\r\n return {\r\n checked,\r\n };\r\n },\r\n});\r\n\r\nexport type YCheckbox = InstanceType<typeof YCheckbox>;\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"YCheckbox.mjs","names":["computed","defineComponent","ref","watch","withModifiers","useRender","getUid","YInputCheckbox","YCheckbox","name","components","emits","props","modelValue","Boolean","Array","value","String","Number","Object","label","reverse","icon","type","color","default","disabled","readonly","setup","_ref","emit","slots","focused","checked","counterId","toString","inputId","onFocus","e","onBlur","onClick","check","inputByProp","isArray","found","find","inp","undefined","classes","computedIcon","isMultipleInput","getMultipleInputIndex","findIndex","v","neo","index","push","splice","immediate","deep","_createVNode","leading","stopPropagation","_len","arguments","length","args","_key","_len2","_key2","trailing"],"sources":["../../../src/components/checkbox/YCheckbox.tsx"],"sourcesContent":["import {\r\n PropType,\r\n computed,\r\n defineComponent,\r\n ref,\r\n watch,\r\n withModifiers,\r\n} from 'vue';\r\n\r\nimport { useRender } from '../../composables/component';\r\nimport { getUid } from '../../util/vue-component';\r\nimport YInputCheckbox from './YInputCheckbox';\r\n\r\nimport './YCheckbox.scss';\r\n\r\nexport const YCheckbox = defineComponent({\r\n name: 'YCheckbox',\r\n components: { YInputCheckbox },\r\n emits: ['focus', 'blur', 'click', 'update:modelValue', 'change'],\r\n props: {\r\n modelValue: [Boolean, Array] as PropType<boolean | any[]>,\r\n value: [String, Number, Object] as PropType<any>,\r\n label: String as PropType<string>,\r\n reverse: Boolean as PropType<boolean>,\r\n icon: {\r\n type: [Object, String] as PropType<\r\n { checked?: string; unchecked?: string } | string\r\n >,\r\n },\r\n color: {\r\n type: String as PropType<string>,\r\n default: () => 'primary',\r\n },\r\n disabled: Boolean as PropType<boolean>,\r\n readonly: Boolean as PropType<boolean>,\r\n },\r\n setup(props, { emit, slots }) {\r\n const focused = ref(false);\r\n const checked = ref(false);\r\n const counterId = (getUid() ?? '').toString();\r\n const inputId = `input-${counterId}`;\r\n\r\n function onFocus(e: FocusEvent) {\r\n focused.value = true;\r\n emit('focus', e);\r\n }\r\n\r\n function onBlur(e: FocusEvent) {\r\n focused.value = false;\r\n emit('blur', e);\r\n }\r\n\r\n function onClick(e: Event, ...args: any[]) {\r\n emit('click', e);\r\n if (props.disabled || props.readonly) return;\r\n const check = !checked.value;\r\n checked.value = check;\r\n emit('change', check);\r\n }\r\n\r\n function inputByProp() {\r\n if (Array.isArray(props.modelValue)) {\r\n const found = props.modelValue?.find((inp: any) => inp === props.value);\r\n if (found !== undefined) {\r\n checked.value = true;\r\n } else {\r\n checked.value = false;\r\n }\r\n } else if (typeof props.modelValue === 'boolean') {\r\n checked.value = props.modelValue;\r\n }\r\n }\r\n\r\n const classes = computed<Record<string, boolean>>(() => {\r\n const { reverse, disabled, readonly } = props;\r\n return {\r\n 'y-checkbox': true,\r\n 'y-checkbox--reverse': !!reverse,\r\n 'y-checkbox--focused': focused.value,\r\n 'y-checkbox--disabled': !!disabled,\r\n 'y-checkbox--readonly': !!readonly,\r\n };\r\n });\r\n\r\n const computedIcon = computed<string | undefined>(() => {\r\n if (typeof props.icon === 'string') {\r\n return props.icon;\r\n }\r\n return undefined;\r\n });\r\n\r\n const isMultipleInput = computed<boolean>(() => {\r\n return Array.isArray(props.modelValue);\r\n });\r\n\r\n function getMultipleInputIndex() {\r\n if (!isMultipleInput.value) {\r\n return -1;\r\n }\r\n return (props.modelValue as any[]).findIndex(\r\n (v: any) => v === props.value,\r\n );\r\n }\r\n\r\n watch(checked, (neo) => {\r\n if (Array.isArray(props.modelValue)) {\r\n const value = props.modelValue;\r\n const index = getMultipleInputIndex();\r\n if (neo && index === -1) {\r\n value.push(props.value);\r\n } else if (!neo && index !== -1) {\r\n value.splice(index, 1);\r\n }\r\n emit('update:modelValue', value);\r\n } else {\r\n emit('update:modelValue', neo);\r\n }\r\n });\r\n\r\n watch(\r\n () => props.modelValue,\r\n (neo) => {\r\n if (Array.isArray(neo)) {\r\n inputByProp();\r\n } else {\r\n checked.value = !!neo;\r\n }\r\n },\r\n { immediate: true, deep: true },\r\n );\r\n\r\n useRender(() => {\r\n return (\r\n <div class={[{ ...classes.value }]}>\r\n {slots.leading?.()}\r\n <div class=\"y-checkbox__slot\">\r\n <YInputCheckbox\r\n onClick={(e: Event, ...args: any[]) => {\r\n e.stopPropagation();\r\n onClick(e, ...args);\r\n }}\r\n onFocus={onFocus}\r\n onBlur={onBlur}\r\n id={counterId}\r\n value={checked.value}\r\n icon={computedIcon.value}\r\n color={props.color}\r\n disabled={props.disabled}\r\n readonly={props.readonly}\r\n >\r\n {slots.icon && {\r\n icon: (...args: any[]) => slots.icon?.(...args),\r\n }}\r\n </YInputCheckbox>\r\n <label\r\n onClick={withModifiers(() => {}, ['stop'])}\r\n class=\"y-checkbox__label\"\r\n for={inputId}\r\n >\r\n {slots.label ? slots.label?.() : props.label}\r\n </label>\r\n </div>\r\n {slots.trailing?.()}\r\n </div>\r\n );\r\n });\r\n\r\n return {\r\n checked,\r\n };\r\n },\r\n});\r\n\r\nexport type YCheckbox = InstanceType<typeof YCheckbox>;\r\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YInputCheckbox.mjs","names":["defineComponent","h","YIconCheckbox","name","components","props","id","String","value","Boolean","icon","color","type","default","disabled","readonly","emits","data","counterId","$","uid","toString","checked","focused","computed","coloredClass","startsWith","undefined","classes","ret","inputId","iconComponent","methods","onFocus","e","$emit","onBlur","onClick","event","watch","neo","created","render","_createVNode","_Fragment","$slots"],"sources":["../../../src/components/checkbox/YInputCheckbox.tsx"],"sourcesContent":["import { PropType, defineComponent, h } from 'vue';\n\nimport { YIconCheckbox } from '../icons/YIconCheckbox';\n\nimport './YInputCheckbox.scss';\n\nexport default defineComponent({\n name: 'YInputCheckbox',\n components: { YIconCheckbox },\n props: {\n id: String as PropType<string>,\n value: Boolean as PropType<boolean>,\n icon: String as PropType<string>,\n color: {\n type: String as PropType<string>,\n default: () => 'primary',\n },\n disabled: Boolean as PropType<boolean>,\n readonly: Boolean as PropType<boolean>,\n },\n emits: ['focus', 'blur', 'click'],\n data() {\n return {\n counterId: this.$.uid.toString(),\n checked: false,\n focused: false,\n };\n },\n computed: {\n coloredClass() {\n if (this.color.startsWith('#')) {\n return undefined;\n }\n return `color--${this.color}`;\n },\n classes() {\n const ret: Record<string, boolean> = {\n 'y-input': true,\n 'y-input--checkbox': true,\n 'y-input--active': this.checked,\n 'y-input--focused': this.focused,\n };\n if (this.coloredClass) {\n ret[this.coloredClass] = true;\n }\n return ret;\n },\n inputId() {\n let id = this.counterId;\n if (this.id) {\n id = this.id;\n }\n return `input-${id}`;\n },\n iconComponent() {\n if (!this.icon) {\n return YIconCheckbox;\n }\n return null;\n },\n },\n methods: {\n onFocus(e: FocusEvent) {\n this.focused = true;\n this.$emit('focus', e);\n },\n onBlur(e: FocusEvent) {\n this.focused = false;\n this.$emit('blur', e);\n },\n onClick(event: MouseEvent) {\n this.$emit('click', event);\n },\n },\n watch: {\n value(neo: boolean) {\n this.checked = neo;\n },\n },\n created() {\n this.checked = !!this.value;\n },\n render() {\n const {\n onClick,\n classes,\n inputId,\n checked,\n onFocus,\n onBlur,\n disabled,\n readonly,\n iconComponent,\n } = this;\n return (\n <>\n <div onClick={onClick} class={classes}>\n <input\n id={inputId}\n aria-checked={checked}\n role=\"checkbox\"\n type=\"checkbox\"\n checked={checked}\n onFocus={onFocus}\n onBlur={onBlur}\n disabled={disabled}\n readonly={readonly}\n />\n {this.$slots.icon ? (\n this.$slots.icon({ checked })\n ) : iconComponent ? h(iconComponent) :\n <YIconCheckbox></YIconCheckbox>}\n </div>\n </>\n );\n },\n});\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"YInputCheckbox.mjs","names":["defineComponent","h","YIconCheckbox","name","components","props","id","String","value","Boolean","icon","color","type","default","disabled","readonly","emits","data","counterId","$","uid","toString","checked","focused","computed","coloredClass","startsWith","undefined","classes","ret","inputId","iconComponent","methods","onFocus","e","$emit","onBlur","onClick","event","watch","neo","created","render","_createVNode","_Fragment","$slots"],"sources":["../../../src/components/checkbox/YInputCheckbox.tsx"],"sourcesContent":["import { PropType, defineComponent, h } from 'vue';\n\nimport { YIconCheckbox } from '../icons/YIconCheckbox';\n\nimport './YInputCheckbox.scss';\n\nexport default defineComponent({\n name: 'YInputCheckbox',\n components: { YIconCheckbox },\n props: {\n id: String as PropType<string>,\n value: Boolean as PropType<boolean>,\n icon: String as PropType<string>,\n color: {\n type: String as PropType<string>,\n default: () => 'primary',\n },\n disabled: Boolean as PropType<boolean>,\n readonly: Boolean as PropType<boolean>,\n },\n emits: ['focus', 'blur', 'click'],\n data() {\n return {\n counterId: this.$.uid.toString(),\n checked: false,\n focused: false,\n };\n },\n computed: {\n coloredClass() {\n if (this.color.startsWith('#')) {\n return undefined;\n }\n return `color--${this.color}`;\n },\n classes() {\n const ret: Record<string, boolean> = {\n 'y-input': true,\n 'y-input--checkbox': true,\n 'y-input--active': this.checked,\n 'y-input--focused': this.focused,\n };\n if (this.coloredClass) {\n ret[this.coloredClass] = true;\n }\n return ret;\n },\n inputId() {\n let id = this.counterId;\n if (this.id) {\n id = this.id;\n }\n return `input-${id}`;\n },\n iconComponent() {\n if (!this.icon) {\n return YIconCheckbox;\n }\n return null;\n },\n },\n methods: {\n onFocus(e: FocusEvent) {\n this.focused = true;\n this.$emit('focus', e);\n },\n onBlur(e: FocusEvent) {\n this.focused = false;\n this.$emit('blur', e);\n },\n onClick(event: MouseEvent) {\n this.$emit('click', event);\n },\n },\n watch: {\n value(neo: boolean) {\n this.checked = neo;\n },\n },\n created() {\n this.checked = !!this.value;\n },\n render() {\n const {\n onClick,\n classes,\n inputId,\n checked,\n onFocus,\n onBlur,\n disabled,\n readonly,\n iconComponent,\n } = this;\n return (\n <>\n <div onClick={onClick} class={classes}>\n <input\n id={inputId}\n aria-checked={checked}\n role=\"checkbox\"\n type=\"checkbox\"\n checked={checked}\n onFocus={onFocus}\n onBlur={onBlur}\n disabled={disabled}\n readonly={readonly}\n />\n {this.$slots.icon ? (\n this.$slots.icon({ checked })\n ) : iconComponent ? h(iconComponent) :\n <YIconCheckbox></YIconCheckbox>}\n </div>\n </>\n );\n },\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YChip.mjs","names":["defineComponent","hasOwnProperty","rgbFromHex","YChip","name","props","color","String","background","small","Boolean","bgOpacity","type","Number","default","computed","clickable","$attrs","classes","backgroundColor","colorRgb","styles","methods","startsWith","join","RGBA_REGEX","test","value","exec","valueArray","trim","split","splice","render","_createVNode","$slots"],"sources":["../../../src/components/chip/YChip.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\n\nimport { hasOwnProperty } from '../../util/common';\n\nimport './YChip.scss';\nimport { rgbFromHex } from \"../../util/color\";\n\nexport const YChip = defineComponent({\n name: 'YChip',\n props: {\n color: String,\n background: String,\n small: Boolean,\n bgOpacity: {\n type: Number,\n default: 0.14,\n },\n },\n computed: {\n clickable() {\n return hasOwnProperty(this.$attrs, 'onClick');\n },\n classes() {\n return {\n 'y-chip': true,\n 'y-chip--small': this.small,\n 'y-chip--clickable': this.clickable,\n };\n },\n backgroundColor() {\n const color = (this.background as string) ?? this.color;\n return this.colorRgb(color);\n },\n styles() {\n return {\n color: this.color,\n background: `rgba(${this.backgroundColor}, ${this.bgOpacity})`,\n };\n },\n },\n methods: {\n colorRgb(color: string): string {\n if (color?.startsWith('#')) {\n return rgbFromHex(color)?.join(',') || '';\n }\n const RGBA_REGEX = /rgb(a?)\\((?<v>.*)\\)/;\n if (RGBA_REGEX.test(color)) {\n const value = RGBA_REGEX.exec(color)?.[2] || '';\n if (value) {\n const valueArray = value.trim().split(',');\n valueArray.splice(3, 1);\n return valueArray.join(',');\n }\n }\n return '';\n },\n },\n render() {\n const { classes, styles } = this;\n return (\n <span class={classes} style={styles}>\n <span class=\"y-chip__content\">\n {this.$slots.default?.()}\n </span>\n </span>\n );\n },\n});\n\nexport type YChip = InstanceType<typeof YChip>;\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAAC,SAE7BC,cAAc;AAEvB;AAAsB,SACbC,UAAU;AAEnB,OAAO,MAAMC,KAAK,GAAGH,eAAe,CAAC;EACnCI,IAAI,EAAE,OAAO;EACbC,KAAK,EAAE;IACLC,KAAK,EAAEC,MAAM;IACbC,UAAU,EAAED,MAAM;IAClBE,KAAK,EAAEC,OAAO;IACdC,SAAS,EAAE;MACTC,IAAI,EAAEC,MAAM;MACZC,OAAO,EAAE;IACX;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,SAASA,CAAA,EAAG;MACV,OAAOf,cAAc,CAAC,IAAI,CAACgB,MAAM,EAAE,SAAS,CAAC;IAC/C,CAAC;IACDC,OAAOA,CAAA,EAAG;MACR,OAAO;QACL,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,IAAI,CAACT,KAAK;QAC3B,mBAAmB,EAAE,IAAI,CAACO;MAC5B,CAAC;IACH,CAAC;IACDG,eAAeA,CAAA,EAAG;MAChB,MAAMb,KAAK,GAAI,IAAI,CAACE,UAAU,IAAe,IAAI,CAACF,KAAK;MACvD,OAAO,IAAI,CAACc,QAAQ,CAACd,KAAK,CAAC;IAC7B,CAAC;IACDe,MAAMA,CAAA,EAAG;MACP,OAAO;QACLf,KAAK,EAAE,IAAI,CAACA,KAAK;QACjBE,UAAU,EAAG,QAAO,IAAI,CAACW,eAAgB,KAAI,IAAI,CAACR,SAAU;MAC9D,CAAC;IACH;EACF,CAAC;EACDW,OAAO,EAAE;IACPF,QAAQA,CAACd,KAAa,EAAU;MAC9B,IAAIA,KAAK,EAAEiB,UAAU,CAAC,GAAG,CAAC,EAAE;QAC1B,OAAOrB,UAAU,CAACI,KAAK,CAAC,EAAEkB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;MAC3C;MACA,MAAMC,UAAU,GAAG,qBAAqB;MACxC,IAAIA,UAAU,CAACC,IAAI,CAACpB,KAAK,CAAC,EAAE;QAC1B,MAAMqB,KAAK,GAAGF,UAAU,CAACG,IAAI,CAACtB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;QAC/C,IAAIqB,KAAK,EAAE;UACT,MAAME,UAAU,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC;UAC1CF,UAAU,CAACG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;UACvB,OAAOH,UAAU,CAACL,IAAI,CAAC,GAAG,CAAC;QAC7B;MACF;MACA,OAAO,EAAE;IACX;EACF,CAAC;EACDS,MAAMA,CAAA,EAAG;IACP,MAAM;MAAEf,OAAO;MAAEG;IAAO,CAAC,GAAG,IAAI;IAChC,OAAAa,YAAA;MAAA,SACehB,OAAO;MAAA,SAASG;IAAM,IAAAa,YAAA;MAAA
|
|
1
|
+
{"version":3,"file":"YChip.mjs","names":["defineComponent","hasOwnProperty","rgbFromHex","YChip","name","props","color","String","background","small","Boolean","bgOpacity","type","Number","default","computed","clickable","$attrs","classes","backgroundColor","colorRgb","styles","methods","startsWith","join","RGBA_REGEX","test","value","exec","valueArray","trim","split","splice","render","_createVNode","$slots"],"sources":["../../../src/components/chip/YChip.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\n\nimport { hasOwnProperty } from '../../util/common';\n\nimport './YChip.scss';\nimport { rgbFromHex } from \"../../util/color\";\n\nexport const YChip = defineComponent({\n name: 'YChip',\n props: {\n color: String,\n background: String,\n small: Boolean,\n bgOpacity: {\n type: Number,\n default: 0.14,\n },\n },\n computed: {\n clickable() {\n return hasOwnProperty(this.$attrs, 'onClick');\n },\n classes() {\n return {\n 'y-chip': true,\n 'y-chip--small': this.small,\n 'y-chip--clickable': this.clickable,\n };\n },\n backgroundColor() {\n const color = (this.background as string) ?? this.color;\n return this.colorRgb(color);\n },\n styles() {\n return {\n color: this.color,\n background: `rgba(${this.backgroundColor}, ${this.bgOpacity})`,\n };\n },\n },\n methods: {\n colorRgb(color: string): string {\n if (color?.startsWith('#')) {\n return rgbFromHex(color)?.join(',') || '';\n }\n const RGBA_REGEX = /rgb(a?)\\((?<v>.*)\\)/;\n if (RGBA_REGEX.test(color)) {\n const value = RGBA_REGEX.exec(color)?.[2] || '';\n if (value) {\n const valueArray = value.trim().split(',');\n valueArray.splice(3, 1);\n return valueArray.join(',');\n }\n }\n return '';\n },\n },\n render() {\n const { classes, styles } = this;\n return (\n <span class={classes} style={styles}>\n <span class=\"y-chip__content\">\n {this.$slots.default?.()}\n </span>\n </span>\n );\n },\n});\n\nexport type YChip = InstanceType<typeof YChip>;\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAAC,SAE7BC,cAAc;AAEvB;AAAsB,SACbC,UAAU;AAEnB,OAAO,MAAMC,KAAK,GAAGH,eAAe,CAAC;EACnCI,IAAI,EAAE,OAAO;EACbC,KAAK,EAAE;IACLC,KAAK,EAAEC,MAAM;IACbC,UAAU,EAAED,MAAM;IAClBE,KAAK,EAAEC,OAAO;IACdC,SAAS,EAAE;MACTC,IAAI,EAAEC,MAAM;MACZC,OAAO,EAAE;IACX;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,SAASA,CAAA,EAAG;MACV,OAAOf,cAAc,CAAC,IAAI,CAACgB,MAAM,EAAE,SAAS,CAAC;IAC/C,CAAC;IACDC,OAAOA,CAAA,EAAG;MACR,OAAO;QACL,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,IAAI,CAACT,KAAK;QAC3B,mBAAmB,EAAE,IAAI,CAACO;MAC5B,CAAC;IACH,CAAC;IACDG,eAAeA,CAAA,EAAG;MAChB,MAAMb,KAAK,GAAI,IAAI,CAACE,UAAU,IAAe,IAAI,CAACF,KAAK;MACvD,OAAO,IAAI,CAACc,QAAQ,CAACd,KAAK,CAAC;IAC7B,CAAC;IACDe,MAAMA,CAAA,EAAG;MACP,OAAO;QACLf,KAAK,EAAE,IAAI,CAACA,KAAK;QACjBE,UAAU,EAAG,QAAO,IAAI,CAACW,eAAgB,KAAI,IAAI,CAACR,SAAU;MAC9D,CAAC;IACH;EACF,CAAC;EACDW,OAAO,EAAE;IACPF,QAAQA,CAACd,KAAa,EAAU;MAC9B,IAAIA,KAAK,EAAEiB,UAAU,CAAC,GAAG,CAAC,EAAE;QAC1B,OAAOrB,UAAU,CAACI,KAAK,CAAC,EAAEkB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;MAC3C;MACA,MAAMC,UAAU,GAAG,qBAAqB;MACxC,IAAIA,UAAU,CAACC,IAAI,CAACpB,KAAK,CAAC,EAAE;QAC1B,MAAMqB,KAAK,GAAGF,UAAU,CAACG,IAAI,CAACtB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;QAC/C,IAAIqB,KAAK,EAAE;UACT,MAAME,UAAU,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC;UAC1CF,UAAU,CAACG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;UACvB,OAAOH,UAAU,CAACL,IAAI,CAAC,GAAG,CAAC;QAC7B;MACF;MACA,OAAO,EAAE;IACX;EACF,CAAC;EACDS,MAAMA,CAAA,EAAG;IACP,MAAM;MAAEf,OAAO;MAAEG;IAAO,CAAC,GAAG,IAAI;IAChC,OAAAa,YAAA;MAAA,SACehB,OAAO;MAAA,SAASG;IAAM,IAAAa,YAAA;MAAA;IAAA,IAE9B,IAAI,CAACC,MAAM,CAACrB,OAAO,GAAG,CAAC;EAIhC;AACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YDateCalendar.mjs","names":["computed","defineComponent","ref","useModelDuplex","useRender","useDate","useI18n","wrapInArray","propsFactory","YButton","pressYDateCalendarPropsOptions","year","Number","String","month","modelValue","Array","multiple","Boolean","range","allowedDates","Function","max","min","disabled","color","hideWeekdays","showAdjacentMonthDates","type","default","hideHeader","YDateCalendar","name","props","emits","date","setup","_ref","slots","dateUtil","i18n","container$","day$","model","v","displayValue","value","length","isArray","undefined","getYear","startOfYear","setYear","getMonth","setMonth","weeksInMonth","weeks","getWeekArray","days","flat","daysInMonth","lastDay","week","day","push","addDays","today","map","weekIndex","index","isoDate","toISO","adjacent","isSameMonth","selected","find","isSameDay","formatted","format","getDay","isDisabled","weekStart","weekEnd","rangeStart","rangeEnd","interval","isInterval","hidden","hovered","localized","weekDays","locale","getWeekdays","displayYearMonth","isAfter","some","d","startDate","endDate","isBefore","onClickDay","item","findIndex","selection","firstDate","endOfDay","startOfDay","change","splice","_createVNode","header","weekDay","i","slotProps","onClick","_Fragment","_mergeProps","join"],"sources":["../../../src/components/date-picker/YDateCalendar.tsx"],"sourcesContent":["import { computed, defineComponent, ref } from 'vue';\nimport type { PropType } from 'vue';\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { useDate } from '../../composables/date';\nimport { useI18n } from '../../composables/i18n';\nimport { wrapInArray } from '../../util';\nimport { propsFactory } from '../../util/vue-component';\nimport { YButton } from '../button';\n\nimport './YDateCalendar.scss';\n\nexport const pressYDateCalendarPropsOptions = propsFactory(\n {\n year: [Number, String],\n month: [Number, String],\n modelValue: Array as PropType<unknown[]>,\n multiple: Boolean,\n range: Boolean,\n allowedDates: [Array, Function],\n max: null as any as PropType<unknown>,\n min: null as any as PropType<unknown>,\n disabled: Boolean,\n color: String,\n hideWeekdays: Boolean,\n showAdjacentMonthDates: {\n type: Boolean,\n default: true,\n },\n hideHeader: Boolean,\n },\n 'YDateCalendar',\n);\n\nexport const YDateCalendar = defineComponent({\n name: 'YDateCalendar',\n props: pressYDateCalendarPropsOptions(),\n emits: {\n 'update:modelValue': (date: any) => true,\n 'update:year': (date: any) => true,\n 'update:month': (date: any) => true,\n },\n setup(props, { slots }) {\n const dateUtil = useDate();\n const i18n = useI18n();\n const container$ = ref();\n const day$ = ref([]);\n\n const model = useModelDuplex(props, 'modelValue', [], (v) =>\n v == null ? [] : wrapInArray(v),\n );\n\n const displayValue = computed(() => {\n if (model.value.length > 0) return dateUtil.date(model.value[0]);\n if (props.min) return dateUtil.date(props.min);\n if (Array.isArray(props.allowedDates)) {\n return dateUtil.date(props.allowedDates[0]);\n }\n\n return dateUtil.date();\n });\n\n const year = useModelDuplex(\n props,\n 'year',\n undefined,\n (v) => {\n const value =\n v != null ? Number(v) : dateUtil.getYear(displayValue.value);\n\n return dateUtil.startOfYear(dateUtil.setYear(dateUtil.date(), value));\n },\n (v) => dateUtil.getYear(v),\n );\n\n const month = useModelDuplex(\n props,\n 'month',\n undefined,\n (v) => {\n const value =\n v != null ? Number(v) : dateUtil.getMonth(displayValue.value);\n const date = dateUtil.setYear(\n dateUtil.date(),\n dateUtil.getYear(year.value),\n );\n\n return dateUtil.setMonth(date, value);\n },\n (v) => dateUtil.getMonth(v),\n );\n\n const weeksInMonth = computed(() => {\n const weeks = dateUtil.getWeekArray(month.value);\n const days = weeks.flat();\n\n const daysInMonth = 6 * 7;\n if (days.length < daysInMonth) {\n const lastDay = days[days.length - 1];\n\n let week = [];\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(dateUtil.addDays(lastDay, day));\n\n if (day % 7 === 0) {\n weeks.push(week);\n week = [];\n }\n }\n }\n\n return weeks;\n });\n\n const daysInMonth = computed(() => {\n const weeks = weeksInMonth.value;\n const today = dateUtil.date();\n\n return weeks.map((days, weekIndex) =>\n days.map((date, index) => {\n const isoDate = dateUtil.toISO(date);\n const adjacent = !dateUtil.isSameMonth(date, month.value);\n const selected = !!model.value?.find(\n (value: unknown) =>\n value != null && dateUtil.isSameDay(date, value),\n );\n return {\n date,\n isoDate,\n formatted: dateUtil.format(date, 'keyboardDate'),\n year: dateUtil.getYear(date),\n month: dateUtil.getMonth(date),\n day: dateUtil.getDay(date),\n disabled: isDisabled(date),\n weekStart: index % 7 === 0,\n weekEnd: index % 7 === 6,\n rangeStart:\n selected &&\n model.value.length > 1 &&\n props.range &&\n dateUtil.isSameDay(rangeStart.value, date),\n rangeEnd:\n selected &&\n model.value.length === 2 &&\n props.range &&\n dateUtil.isSameDay(rangeEnd.value, date),\n weekIndex,\n selected,\n interval: isInterval(date),\n today: dateUtil.isSameDay(date, today),\n adjacent,\n hidden: adjacent && !props.showAdjacentMonthDates,\n hovered: false,\n localized: dateUtil.format(date, 'dayOfMonth'),\n };\n }),\n );\n });\n\n const weekDays = computed(() => {\n return i18n.locale && dateUtil.getWeekdays();\n });\n\n const displayYearMonth = computed(() => {\n return dateUtil.format(month.value, 'monthAndYear');\n });\n\n const rangeStart = computed(() => {\n if (props.range && model.value?.[0]) {\n return model.value[0];\n }\n });\n\n const rangeEnd = computed(() => {\n if (props.range && model.value?.[1]) {\n return model.value[1];\n }\n });\n\n function isDisabled(value: unknown) {\n if (props.disabled) return true;\n\n const date = dateUtil.date(value);\n\n if (props.min && dateUtil.isAfter(dateUtil.date(props.min), date))\n return true;\n if (props.max && dateUtil.isAfter(date, dateUtil.date(props.max)))\n return true;\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some((d) =>\n dateUtil.isSameDay(dateUtil.date(d), date),\n );\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date);\n }\n\n return false;\n }\n\n function isInterval(value: unknown) {\n if (!props.range) return false;\n if (model.value.length === 2) {\n const date = dateUtil.date(value);\n const startDate = dateUtil.date(model.value[0]);\n const endDate = dateUtil.date(model.value[1]);\n if (\n dateUtil.isAfter(date, startDate) &&\n dateUtil.isBefore(date, endDate)\n ) {\n return true;\n }\n }\n return false;\n }\n\n function onClickDay(item: any) {\n const value = item.date;\n if (props.multiple) {\n const index = model.value.findIndex((selection: unknown) =>\n dateUtil.isSameDay(selection, value),\n );\n\n if (props.range) {\n if (model.value.length === 1) {\n const firstDate = dateUtil.date(model.value[0]);\n const date = dateUtil.date(value);\n if (dateUtil.isAfter(firstDate, date)) {\n model.value = [date, dateUtil.endOfDay(model.value[0])];\n } else {\n model.value = [\n dateUtil.startOfDay(model.value[0]),\n dateUtil.endOfDay(value),\n ];\n }\n } else {\n model.value = [value];\n }\n } else {\n if (index === -1) {\n model.value = [...model.value, value];\n } else {\n const change = [...model.value];\n change.splice(index, 1);\n model.value = change;\n }\n }\n } else {\n model.value = [value];\n }\n }\n\n useRender(() => (\n <div\n class={[\n 'y-date-calendar',\n { 'y-date-calendar--range': props.range && model.value.length === 2 },\n ]}\n >\n {!props.hideHeader && (\n <header class=\"y-date-calendar__header\">\n {slots.header ? slots.header() : displayYearMonth.value}\n </header>\n )}\n <div ref={container$} class={['y-date-calendar__container']}>\n {!props.hideWeekdays && (\n <div class={['y-date-calendar__week']}>\n {weekDays.value.map((weekDay) => (\n <div\n class={['y-date-calendar__cell', 'y-date-calendar__weekday']}\n >\n {weekDay}\n </div>\n ))}\n </div>\n )}\n {daysInMonth.value.map((week, i) => {\n return (\n <div\n class={['y-date-calendar__week']}\n role=\"row\"\n aria-rowindex={i}\n >\n {week.map((item, index) => {\n const slotProps = {\n props: {\n onClick: () => {\n onClickDay(item);\n },\n },\n item,\n index,\n } as const;\n\n return (\n <div\n class={[\n 'y-date-calendar__cell',\n 'y-date-calendar__day',\n {\n 'y-date-calendar__day--adjacent': item.adjacent,\n 'y-date-calendar__day--hovered': item.hovered,\n 'y-date-calendar__day--selected': item.selected,\n 'y-date-calendar__day--week-start': item.weekStart,\n 'y-date-calendar__day--week-end': item.weekEnd,\n 'y-date-calendar__day--range-interval': item.interval,\n 'y-date-calendar__day--range-start': item.rangeStart,\n 'y-date-calendar__day--range-end': item.rangeEnd,\n },\n ]}\n data-date={!item.disabled ? item.isoDate : undefined}\n >\n {(props.showAdjacentMonthDates || !item.adjacent) && (\n <>\n {slots.day?.(slotProps) ?? (\n <YButton\n color={\n (item.selected || item.today) && !item.disabled\n ? props.color\n : undefined\n }\n disabled={item.disabled}\n variation={[\n 'rounded',\n item.selected\n ? 'filled'\n : item.today\n ? 'outlined'\n : 'text',\n ].join(',')}\n {...slotProps.props}\n >\n {item.day}\n </YButton>\n )}\n </>\n )}\n </div>\n );\n })}\n </div>\n );\n })}\n </div>\n </div>\n ));\n\n return {\n day$,\n container$,\n dateUtil,\n displayValue,\n month,\n year,\n rangeStart,\n rangeEnd,\n model,\n };\n },\n});\n\nexport type YDateCalendar = InstanceType<typeof YDateCalendar>;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"YDateCalendar.mjs","names":["computed","defineComponent","ref","useModelDuplex","useRender","useDate","useI18n","wrapInArray","propsFactory","YButton","pressYDateCalendarPropsOptions","year","Number","String","month","modelValue","Array","multiple","Boolean","range","allowedDates","Function","max","min","disabled","color","hideWeekdays","showAdjacentMonthDates","type","default","hideHeader","YDateCalendar","name","props","emits","date","setup","_ref","slots","dateUtil","i18n","container$","day$","model","v","displayValue","value","length","isArray","undefined","getYear","startOfYear","setYear","getMonth","setMonth","weeksInMonth","weeks","getWeekArray","days","flat","daysInMonth","lastDay","week","day","push","addDays","today","map","weekIndex","index","isoDate","toISO","adjacent","isSameMonth","selected","find","isSameDay","formatted","format","getDay","isDisabled","weekStart","weekEnd","rangeStart","rangeEnd","interval","isInterval","hidden","hovered","localized","weekDays","locale","getWeekdays","displayYearMonth","isAfter","some","d","startDate","endDate","isBefore","onClickDay","item","findIndex","selection","firstDate","endOfDay","startOfDay","change","splice","_createVNode","header","weekDay","i","slotProps","onClick","_Fragment","_mergeProps","join"],"sources":["../../../src/components/date-picker/YDateCalendar.tsx"],"sourcesContent":["import { computed, defineComponent, ref } from 'vue';\nimport type { PropType } from 'vue';\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { useDate } from '../../composables/date';\nimport { useI18n } from '../../composables/i18n';\nimport { wrapInArray } from '../../util';\nimport { propsFactory } from '../../util/vue-component';\nimport { YButton } from '../button';\n\nimport './YDateCalendar.scss';\n\nexport const pressYDateCalendarPropsOptions = propsFactory(\n {\n year: [Number, String],\n month: [Number, String],\n modelValue: Array as PropType<unknown[]>,\n multiple: Boolean,\n range: Boolean,\n allowedDates: [Array, Function],\n max: null as any as PropType<unknown>,\n min: null as any as PropType<unknown>,\n disabled: Boolean,\n color: String,\n hideWeekdays: Boolean,\n showAdjacentMonthDates: {\n type: Boolean,\n default: true,\n },\n hideHeader: Boolean,\n },\n 'YDateCalendar',\n);\n\nexport const YDateCalendar = defineComponent({\n name: 'YDateCalendar',\n props: pressYDateCalendarPropsOptions(),\n emits: {\n 'update:modelValue': (date: any) => true,\n 'update:year': (date: any) => true,\n 'update:month': (date: any) => true,\n },\n setup(props, { slots }) {\n const dateUtil = useDate();\n const i18n = useI18n();\n const container$ = ref();\n const day$ = ref([]);\n\n const model = useModelDuplex(props, 'modelValue', [], (v) =>\n v == null ? [] : wrapInArray(v),\n );\n\n const displayValue = computed(() => {\n if (model.value.length > 0) return dateUtil.date(model.value[0]);\n if (props.min) return dateUtil.date(props.min);\n if (Array.isArray(props.allowedDates)) {\n return dateUtil.date(props.allowedDates[0]);\n }\n\n return dateUtil.date();\n });\n\n const year = useModelDuplex(\n props,\n 'year',\n undefined,\n (v) => {\n const value =\n v != null ? Number(v) : dateUtil.getYear(displayValue.value);\n\n return dateUtil.startOfYear(dateUtil.setYear(dateUtil.date(), value));\n },\n (v) => dateUtil.getYear(v),\n );\n\n const month = useModelDuplex(\n props,\n 'month',\n undefined,\n (v) => {\n const value =\n v != null ? Number(v) : dateUtil.getMonth(displayValue.value);\n const date = dateUtil.setYear(\n dateUtil.date(),\n dateUtil.getYear(year.value),\n );\n\n return dateUtil.setMonth(date, value);\n },\n (v) => dateUtil.getMonth(v),\n );\n\n const weeksInMonth = computed(() => {\n const weeks = dateUtil.getWeekArray(month.value);\n const days = weeks.flat();\n\n const daysInMonth = 6 * 7;\n if (days.length < daysInMonth) {\n const lastDay = days[days.length - 1];\n\n let week = [];\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(dateUtil.addDays(lastDay, day));\n\n if (day % 7 === 0) {\n weeks.push(week);\n week = [];\n }\n }\n }\n\n return weeks;\n });\n\n const daysInMonth = computed(() => {\n const weeks = weeksInMonth.value;\n const today = dateUtil.date();\n\n return weeks.map((days, weekIndex) =>\n days.map((date, index) => {\n const isoDate = dateUtil.toISO(date);\n const adjacent = !dateUtil.isSameMonth(date, month.value);\n const selected = !!model.value?.find(\n (value: unknown) =>\n value != null && dateUtil.isSameDay(date, value),\n );\n return {\n date,\n isoDate,\n formatted: dateUtil.format(date, 'keyboardDate'),\n year: dateUtil.getYear(date),\n month: dateUtil.getMonth(date),\n day: dateUtil.getDay(date),\n disabled: isDisabled(date),\n weekStart: index % 7 === 0,\n weekEnd: index % 7 === 6,\n rangeStart:\n selected &&\n model.value.length > 1 &&\n props.range &&\n dateUtil.isSameDay(rangeStart.value, date),\n rangeEnd:\n selected &&\n model.value.length === 2 &&\n props.range &&\n dateUtil.isSameDay(rangeEnd.value, date),\n weekIndex,\n selected,\n interval: isInterval(date),\n today: dateUtil.isSameDay(date, today),\n adjacent,\n hidden: adjacent && !props.showAdjacentMonthDates,\n hovered: false,\n localized: dateUtil.format(date, 'dayOfMonth'),\n };\n }),\n );\n });\n\n const weekDays = computed(() => {\n return i18n.locale && dateUtil.getWeekdays();\n });\n\n const displayYearMonth = computed(() => {\n return dateUtil.format(month.value, 'monthAndYear');\n });\n\n const rangeStart = computed(() => {\n if (props.range && model.value?.[0]) {\n return model.value[0];\n }\n });\n\n const rangeEnd = computed(() => {\n if (props.range && model.value?.[1]) {\n return model.value[1];\n }\n });\n\n function isDisabled(value: unknown) {\n if (props.disabled) return true;\n\n const date = dateUtil.date(value);\n\n if (props.min && dateUtil.isAfter(dateUtil.date(props.min), date))\n return true;\n if (props.max && dateUtil.isAfter(date, dateUtil.date(props.max)))\n return true;\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some((d) =>\n dateUtil.isSameDay(dateUtil.date(d), date),\n );\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date);\n }\n\n return false;\n }\n\n function isInterval(value: unknown) {\n if (!props.range) return false;\n if (model.value.length === 2) {\n const date = dateUtil.date(value);\n const startDate = dateUtil.date(model.value[0]);\n const endDate = dateUtil.date(model.value[1]);\n if (\n dateUtil.isAfter(date, startDate) &&\n dateUtil.isBefore(date, endDate)\n ) {\n return true;\n }\n }\n return false;\n }\n\n function onClickDay(item: any) {\n const value = item.date;\n if (props.multiple) {\n const index = model.value.findIndex((selection: unknown) =>\n dateUtil.isSameDay(selection, value),\n );\n\n if (props.range) {\n if (model.value.length === 1) {\n const firstDate = dateUtil.date(model.value[0]);\n const date = dateUtil.date(value);\n if (dateUtil.isAfter(firstDate, date)) {\n model.value = [date, dateUtil.endOfDay(model.value[0])];\n } else {\n model.value = [\n dateUtil.startOfDay(model.value[0]),\n dateUtil.endOfDay(value),\n ];\n }\n } else {\n model.value = [value];\n }\n } else {\n if (index === -1) {\n model.value = [...model.value, value];\n } else {\n const change = [...model.value];\n change.splice(index, 1);\n model.value = change;\n }\n }\n } else {\n model.value = [value];\n }\n }\n\n useRender(() => (\n <div\n class={[\n 'y-date-calendar',\n { 'y-date-calendar--range': props.range && model.value.length === 2 },\n ]}\n >\n {!props.hideHeader && (\n <header class=\"y-date-calendar__header\">\n {slots.header ? slots.header() : displayYearMonth.value}\n </header>\n )}\n <div ref={container$} class={['y-date-calendar__container']}>\n {!props.hideWeekdays && (\n <div class={['y-date-calendar__week']}>\n {weekDays.value.map((weekDay) => (\n <div\n class={['y-date-calendar__cell', 'y-date-calendar__weekday']}\n >\n {weekDay}\n </div>\n ))}\n </div>\n )}\n {daysInMonth.value.map((week, i) => {\n return (\n <div\n class={['y-date-calendar__week']}\n role=\"row\"\n aria-rowindex={i}\n >\n {week.map((item, index) => {\n const slotProps = {\n props: {\n onClick: () => {\n onClickDay(item);\n },\n },\n item,\n index,\n } as const;\n\n return (\n <div\n class={[\n 'y-date-calendar__cell',\n 'y-date-calendar__day',\n {\n 'y-date-calendar__day--adjacent': item.adjacent,\n 'y-date-calendar__day--hovered': item.hovered,\n 'y-date-calendar__day--selected': item.selected,\n 'y-date-calendar__day--week-start': item.weekStart,\n 'y-date-calendar__day--week-end': item.weekEnd,\n 'y-date-calendar__day--range-interval': item.interval,\n 'y-date-calendar__day--range-start': item.rangeStart,\n 'y-date-calendar__day--range-end': item.rangeEnd,\n },\n ]}\n data-date={!item.disabled ? item.isoDate : undefined}\n >\n {(props.showAdjacentMonthDates || !item.adjacent) && (\n <>\n {slots.day?.(slotProps) ?? (\n <YButton\n color={\n (item.selected || item.today) && !item.disabled\n ? props.color\n : undefined\n }\n disabled={item.disabled}\n variation={[\n 'rounded',\n item.selected\n ? 'filled'\n : item.today\n ? 'outlined'\n : 'text',\n ].join(',')}\n {...slotProps.props}\n >\n {item.day}\n </YButton>\n )}\n </>\n )}\n </div>\n );\n })}\n </div>\n );\n })}\n </div>\n </div>\n ));\n\n return {\n day$,\n container$,\n dateUtil,\n displayValue,\n month,\n year,\n rangeStart,\n rangeEnd,\n model,\n };\n },\n});\n\nexport type YDateCalendar = InstanceType<typeof YDateCalendar>;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YDatePicker.mjs","names":["Transition","computed","defineComponent","ref","watch","useModelDuplex","useRender","useDate","omit","chooseProps","propsFactory","YDateCalendar","pressYDateCalendarPropsOptions","YDatePickerControl","YMonthPicker","YYearPicker","pressYDatePickerPropsOptions","modelValue","YDatePicker","name","props","setup","_ref","emit","yearPicker$","dateUtil","model","mode","month","getMonth","date","year","getYear","displayDate","setYear","value","setMonth","monthText","format","yearText","toggleMonthMode","toggleYearMode","onClickYear","onClickMonth","onClickPage","dir","changePage","change","onClickPrev","onClickNext","_createVNode","_mergeProps","default","$event"],"sources":["../../../src/components/date-picker/YDatePicker.tsx"],"sourcesContent":["import { Transition, computed, defineComponent, ref, watch } from 'vue';\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { useDate } from '../../composables/date';\nimport { omit } from '../../util';\nimport { chooseProps, propsFactory } from '../../util/vue-component';\nimport { YDateCalendar, pressYDateCalendarPropsOptions } from './YDateCalendar';\nimport { YDatePickerControl } from './YDatePickerControl';\nimport { YMonthPicker } from './YMonthPicker';\nimport { YYearPicker } from './YYearPicker';\n\nimport './YDatePicker.scss';\n\nexport const pressYDatePickerPropsOptions = propsFactory(\n {\n ...omit(pressYDateCalendarPropsOptions(), ['modelValue']),\n modelValue: null,\n },\n 'YDatePicker',\n);\n\nexport const YDatePicker = defineComponent({\n name: 'YDatePicker',\n props: pressYDatePickerPropsOptions(),\n setup(props, { emit }) {\n const yearPicker$ = ref<typeof YYearPicker>();\n const dateUtil = useDate();\n const model = useModelDuplex(props, 'modelValue');\n const mode = useModelDuplex(props, 'mode');\n\n const month = ref(dateUtil.getMonth(dateUtil.date()));\n const year = ref(dateUtil.getYear(dateUtil.date()));\n const displayDate = computed(() => {\n const date = dateUtil.setYear(dateUtil.date(), year.value);\n return dateUtil.setMonth(date, month.value);\n });\n const monthText = computed(() => {\n return dateUtil.format(displayDate.value, 'month');\n });\n const yearText = computed(() => {\n return dateUtil.format(displayDate.value, 'year');\n });\n\n function toggleMonthMode() {\n mode.value = mode.value === 'month' ? 'date' : 'month';\n }\n\n function toggleYearMode() {\n mode.value = mode.value === 'year' ? 'date' : 'year';\n }\n\n function onClickYear() {\n toggleYearMode();\n }\n\n function onClickMonth() {\n toggleMonthMode();\n }\n\n function onClickPage(dir: number) {\n if (mode.value === 'month') {\n year.value = year.value + dir;\n return;\n }\n if (mode.value === 'year') {\n yearPicker$.value?.changePage(dir);\n return;\n }\n const change = month.value + dir;\n if (change > 11) {\n year.value += 1;\n month.value = 0;\n } else if (change < 0) {\n year.value -= 1;\n month.value = 11;\n } else {\n month.value = change;\n }\n }\n\n function onClickPrev() {\n onClickPage(-1);\n }\n\n function onClickNext() {\n onClickPage(1);\n }\n\n watch(month, () => {\n if (mode.value === 'month') toggleMonthMode();\n emit('update:month', month.value);\n });\n\n watch(year, () => {\n if (mode.value === 'year') {\n mode.value = 'month';\n }\n emit('update:year', year.value);\n });\n\n useRender(() => (\n <div class={['y-date-picker']}>\n <YDatePickerControl\n {...chooseProps(props, YDatePickerControl.props)}\n yearText={yearText.value}\n monthText={monthText.value}\n onClick:year={onClickYear}\n onClick:month={onClickMonth}\n onClick:prev={onClickPrev}\n onClick:next={onClickNext}\n ></YDatePickerControl>\n <Transition name=\"fade\" mode=\"out-in\">\n {mode.value === 'month' ? (\n <YMonthPicker v-model={month.value} />\n ) : mode.value === 'year' ? (\n <YYearPicker v-model={year.value} ref={yearPicker$} />\n ) : (\n <YDateCalendar\n {...chooseProps(props, YDateCalendar.props)}\n hideHeader={true}\n v-model={model.value}\n v-model:month={month.value}\n v-model:year={year.value}\n />\n )}\n </Transition>\n </div>\n ));\n },\n});\n\nexport type YDatePicker = InstanceType<typeof YDatePicker>;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"YDatePicker.mjs","names":["Transition","computed","defineComponent","ref","watch","useModelDuplex","useRender","useDate","omit","chooseProps","propsFactory","YDateCalendar","pressYDateCalendarPropsOptions","YDatePickerControl","YMonthPicker","YYearPicker","pressYDatePickerPropsOptions","modelValue","YDatePicker","name","props","setup","_ref","emit","yearPicker$","dateUtil","model","mode","month","getMonth","date","year","getYear","displayDate","setYear","value","setMonth","monthText","format","yearText","toggleMonthMode","toggleYearMode","onClickYear","onClickMonth","onClickPage","dir","changePage","change","onClickPrev","onClickNext","_createVNode","_mergeProps","default","$event"],"sources":["../../../src/components/date-picker/YDatePicker.tsx"],"sourcesContent":["import { Transition, computed, defineComponent, ref, watch } from 'vue';\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { useDate } from '../../composables/date';\nimport { omit } from '../../util';\nimport { chooseProps, propsFactory } from '../../util/vue-component';\nimport { YDateCalendar, pressYDateCalendarPropsOptions } from './YDateCalendar';\nimport { YDatePickerControl } from './YDatePickerControl';\nimport { YMonthPicker } from './YMonthPicker';\nimport { YYearPicker } from './YYearPicker';\n\nimport './YDatePicker.scss';\n\nexport const pressYDatePickerPropsOptions = propsFactory(\n {\n ...omit(pressYDateCalendarPropsOptions(), ['modelValue']),\n modelValue: null,\n },\n 'YDatePicker',\n);\n\nexport const YDatePicker = defineComponent({\n name: 'YDatePicker',\n props: pressYDatePickerPropsOptions(),\n setup(props, { emit }) {\n const yearPicker$ = ref<typeof YYearPicker>();\n const dateUtil = useDate();\n const model = useModelDuplex(props, 'modelValue');\n const mode = useModelDuplex(props, 'mode');\n\n const month = ref(dateUtil.getMonth(dateUtil.date()));\n const year = ref(dateUtil.getYear(dateUtil.date()));\n const displayDate = computed(() => {\n const date = dateUtil.setYear(dateUtil.date(), year.value);\n return dateUtil.setMonth(date, month.value);\n });\n const monthText = computed(() => {\n return dateUtil.format(displayDate.value, 'month');\n });\n const yearText = computed(() => {\n return dateUtil.format(displayDate.value, 'year');\n });\n\n function toggleMonthMode() {\n mode.value = mode.value === 'month' ? 'date' : 'month';\n }\n\n function toggleYearMode() {\n mode.value = mode.value === 'year' ? 'date' : 'year';\n }\n\n function onClickYear() {\n toggleYearMode();\n }\n\n function onClickMonth() {\n toggleMonthMode();\n }\n\n function onClickPage(dir: number) {\n if (mode.value === 'month') {\n year.value = year.value + dir;\n return;\n }\n if (mode.value === 'year') {\n yearPicker$.value?.changePage(dir);\n return;\n }\n const change = month.value + dir;\n if (change > 11) {\n year.value += 1;\n month.value = 0;\n } else if (change < 0) {\n year.value -= 1;\n month.value = 11;\n } else {\n month.value = change;\n }\n }\n\n function onClickPrev() {\n onClickPage(-1);\n }\n\n function onClickNext() {\n onClickPage(1);\n }\n\n watch(month, () => {\n if (mode.value === 'month') toggleMonthMode();\n emit('update:month', month.value);\n });\n\n watch(year, () => {\n if (mode.value === 'year') {\n mode.value = 'month';\n }\n emit('update:year', year.value);\n });\n\n useRender(() => (\n <div class={['y-date-picker']}>\n <YDatePickerControl\n {...chooseProps(props, YDatePickerControl.props)}\n yearText={yearText.value}\n monthText={monthText.value}\n onClick:year={onClickYear}\n onClick:month={onClickMonth}\n onClick:prev={onClickPrev}\n onClick:next={onClickNext}\n ></YDatePickerControl>\n <Transition name=\"fade\" mode=\"out-in\">\n {mode.value === 'month' ? (\n <YMonthPicker v-model={month.value} />\n ) : mode.value === 'year' ? (\n <YYearPicker v-model={year.value} ref={yearPicker$} />\n ) : (\n <YDateCalendar\n {...chooseProps(props, YDateCalendar.props)}\n hideHeader={true}\n v-model={model.value}\n v-model:month={month.value}\n v-model:year={year.value}\n />\n )}\n </Transition>\n </div>\n ));\n },\n});\n\nexport type YDatePicker = InstanceType<typeof YDatePicker>;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YDatePickerControl.mjs","names":["computed","defineComponent","useRender","propsFactory","YButton","YIcon","pressYDatePickerControlPropsOptions","disabled","type","Boolean","String","Array","default","nextIcon","Object","prevIcon","dropdownIcon","mode","yearText","monthText","YDatePickerControl","name","props","emits","click:year","click:month","click:prev","click:next","setup","_ref","emit","disableYear","isArray","includes","disableMonth","disablePrev","disableNext","onClickPrev","onClickNext","onClickYear","onClickMonth","_createVNode","value"],"sources":["../../../src/components/date-picker/YDatePickerControl.tsx"],"sourcesContent":["import { computed, defineComponent } from 'vue';\nimport type { PropType } from 'vue';\n\nimport { useRender } from '../../composables/component';\nimport { propsFactory } from '../../util/vue-component';\nimport { YButton } from '../button';\nimport { YIcon } from '../icon';\n\nimport './YDatePickerControl.scss';\n\nexport const pressYDatePickerControlPropsOptions = propsFactory(\n {\n disabled: {\n type: [Boolean, String, Array] as PropType<boolean | string | string[]>,\n default: false,\n },\n nextIcon: {\n type: [String, Object],\n default: '$next',\n },\n prevIcon: {\n type: [String, Object],\n default: '$prev',\n },\n dropdownIcon: {\n type: [String, Object],\n },\n mode: {\n type: String as PropType<'date' | 'month' | 'year'>,\n default: 'date',\n },\n yearText: String,\n monthText: String,\n },\n 'YDataPickerControl',\n);\n\nexport const YDatePickerControl = defineComponent({\n name: 'YDatePickerControl',\n props: pressYDatePickerControlPropsOptions(),\n emits: {\n 'click:year': () => true,\n 'click:month': () => true,\n 'click:prev': () => true,\n 'click:next': () => true,\n },\n setup(props, { emit }) {\n const disableYear = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('year')\n : !!props.disabled;\n });\n const disableMonth = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('month')\n : !!props.disabled;\n });\n\n const disablePrev = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('prev')\n : !!props.disabled;\n });\n const disableNext = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('next')\n : !!props.disabled;\n });\n\n function onClickPrev() {\n emit('click:prev');\n }\n\n function onClickNext() {\n emit('click:next');\n }\n\n function onClickYear() {\n emit('click:year');\n }\n\n function onClickMonth() {\n emit('click:month');\n }\n\n useRender(() => (\n <div class={['y-date-picker-control']}>\n <YButton\n variation=\"text\"\n class=\"y-date-picker-control__display\"\n disabled={disableYear.value}\n onClick={onClickYear}\n >\n {props.yearText}\n </YButton>\n <YButton\n variation=\"text\"\n class=\"y-date-picker-control__display\"\n disabled={disableMonth.value}\n onClick={onClickMonth}\n >\n {props.monthText}\n </YButton>\n <div class=\"flex-spacer\"></div>\n <YButton\n class=\"y-date-picker-control__page-button\"\n variation=\"text\"\n disabled={disablePrev.value}\n onClick={onClickPrev}\n >\n <YIcon icon={props.prevIcon as string} />\n </YButton>\n <YButton\n class=\"y-date-picker-control__page-button\"\n variation=\"text\"\n disabled={disableNext.value}\n onClick={onClickNext}\n >\n <YIcon icon={props.nextIcon as string} />\n </YButton>\n </div>\n ));\n },\n});\n\nexport type YDatePickerControl = InstanceType<typeof YDatePickerControl>;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"YDatePickerControl.mjs","names":["computed","defineComponent","useRender","propsFactory","YButton","YIcon","pressYDatePickerControlPropsOptions","disabled","type","Boolean","String","Array","default","nextIcon","Object","prevIcon","dropdownIcon","mode","yearText","monthText","YDatePickerControl","name","props","emits","click:year","click:month","click:prev","click:next","setup","_ref","emit","disableYear","isArray","includes","disableMonth","disablePrev","disableNext","onClickPrev","onClickNext","onClickYear","onClickMonth","_createVNode","value"],"sources":["../../../src/components/date-picker/YDatePickerControl.tsx"],"sourcesContent":["import { computed, defineComponent } from 'vue';\nimport type { PropType } from 'vue';\n\nimport { useRender } from '../../composables/component';\nimport { propsFactory } from '../../util/vue-component';\nimport { YButton } from '../button';\nimport { YIcon } from '../icon';\n\nimport './YDatePickerControl.scss';\n\nexport const pressYDatePickerControlPropsOptions = propsFactory(\n {\n disabled: {\n type: [Boolean, String, Array] as PropType<boolean | string | string[]>,\n default: false,\n },\n nextIcon: {\n type: [String, Object],\n default: '$next',\n },\n prevIcon: {\n type: [String, Object],\n default: '$prev',\n },\n dropdownIcon: {\n type: [String, Object],\n },\n mode: {\n type: String as PropType<'date' | 'month' | 'year'>,\n default: 'date',\n },\n yearText: String,\n monthText: String,\n },\n 'YDataPickerControl',\n);\n\nexport const YDatePickerControl = defineComponent({\n name: 'YDatePickerControl',\n props: pressYDatePickerControlPropsOptions(),\n emits: {\n 'click:year': () => true,\n 'click:month': () => true,\n 'click:prev': () => true,\n 'click:next': () => true,\n },\n setup(props, { emit }) {\n const disableYear = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('year')\n : !!props.disabled;\n });\n const disableMonth = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('month')\n : !!props.disabled;\n });\n\n const disablePrev = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('prev')\n : !!props.disabled;\n });\n const disableNext = computed(() => {\n return Array.isArray(props.disabled)\n ? props.disabled.includes('next')\n : !!props.disabled;\n });\n\n function onClickPrev() {\n emit('click:prev');\n }\n\n function onClickNext() {\n emit('click:next');\n }\n\n function onClickYear() {\n emit('click:year');\n }\n\n function onClickMonth() {\n emit('click:month');\n }\n\n useRender(() => (\n <div class={['y-date-picker-control']}>\n <YButton\n variation=\"text\"\n class=\"y-date-picker-control__display\"\n disabled={disableYear.value}\n onClick={onClickYear}\n >\n {props.yearText}\n </YButton>\n <YButton\n variation=\"text\"\n class=\"y-date-picker-control__display\"\n disabled={disableMonth.value}\n onClick={onClickMonth}\n >\n {props.monthText}\n </YButton>\n <div class=\"flex-spacer\"></div>\n <YButton\n class=\"y-date-picker-control__page-button\"\n variation=\"text\"\n disabled={disablePrev.value}\n onClick={onClickPrev}\n >\n <YIcon icon={props.prevIcon as string} />\n </YButton>\n <YButton\n class=\"y-date-picker-control__page-button\"\n variation=\"text\"\n disabled={disableNext.value}\n onClick={onClickNext}\n >\n <YIcon icon={props.nextIcon as string} />\n </YButton>\n </div>\n ));\n },\n});\n\nexport type YDatePickerControl = InstanceType<typeof YDatePickerControl>;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YDropdown.mjs","names":["defineComponent","mergeProps","pressItemsPropsOptions","useModelDuplex","useRender","pressCoordinateProps","getObjectValueByPath","omit","chooseProps","propsFactory","YButton","YCard","YIcon","YList","YListItem","YMenu","pressYDropdownPropsOptions","modelValue","Boolean","variation","String","color","position","dropdownIcon","type","Array","Object","default","YDropdown","name","inheritAttrs","components","props","slots","emits","setup","_ref","attrs","emit","opened","onClickItem","item","value","menuProps","dropdownIconProps","_createVNode","_Fragment","_mergeProps","$event","base","_len","arguments","length","args","_key","menu","isArray","items","map","text","itemText","e","_createTextVNode"],"sources":["../../../src/components/dropdown/YDropdown.tsx"],"sourcesContent":["import { PropType, defineComponent, mergeProps, SlotsType } from 'vue';\n\nimport { pressItemsPropsOptions } from '../../abstract/items';\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { pressCoordinateProps } from '../../composables/coordinate';\nimport { getObjectValueByPath, omit } from '../../util/common';\nimport { chooseProps, propsFactory } from '../../util/vue-component';\nimport { YButton } from '../button';\nimport { YCard } from '../card';\nimport { YIcon, YIconIconProp } from '../icon';\nimport { YList, YListItem } from '../list';\nimport { YMenu } from '../menu';\n\nimport './YDropdown.scss';\n\nexport const pressYDropdownPropsOptions = propsFactory(\n {\n modelValue: Boolean as PropType<boolean>,\n variation: String as PropType<string>,\n color: String as PropType<string>,\n ...omit(pressCoordinateProps({ position: 'bottom' as 'bottom' }), [\n 'coordinateStrategy',\n ]),\n dropdownIcon: {\n type: [String, Array, Object] as PropType<YIconIconProp>,\n default: '$dropdown',\n },\n ...pressItemsPropsOptions(),\n },\n 'YDropdown',\n);\n\nexport const YDropdown = defineComponent({\n name: 'YDropdown',\n inheritAttrs: false,\n components: {\n YMenu,\n },\n props: {\n ...pressYDropdownPropsOptions(),\n },\n slots: Object as SlotsType<{\n base: any,\n default: any,\n 'dropdown-icon': any,\n menu: any,\n item: { text: string, item: any },\n }>,\n emits: ['update:modelValue', 'click'],\n setup(props, { slots, attrs, emit }) {\n const opened = useModelDuplex(props);\n\n function onClickItem(item: any) {\n opened.value = false;\n emit('click', item);\n }\n\n useRender(() => {\n const menuProps = chooseProps(props, YMenu.props);\n const dropdownIconProps = chooseProps(\n typeof props.dropdownIcon === 'object' ? props.dropdownIcon : {},\n YIcon.props,\n );\n return (\n <>\n <YMenu\n {...menuProps}\n v-model={opened.value}\n content-classes={['y-dropdown__content']}\n >\n {{\n base: (...args: any[]) =>\n slots.base ? (\n slots.base?.(...args)\n ) : (\n <YButton\n variation={props.variation}\n color={props.color}\n class={[\n 'y-dropdown',\n { 'y-dropdown--opened': opened.value },\n ]}\n {...attrs}\n >\n {\n <span class=\"y-dropdown__default\">\n {slots.default?.()}\n </span>\n }\n {slots['dropdown-icon'] ? (\n slots['dropdown-icon']()\n ) : (\n <YIcon\n {...mergeProps(dropdownIconProps)}\n icon={props.dropdownIcon}\n class={['y-dropdown__icon']}\n ></YIcon>\n )}\n </YButton>\n ),\n default: () =>\n slots.menu ? (\n slots.menu()\n ) : (\n <YCard>\n {Array.isArray(props.items) && props.items.length > 0 ? (\n <YList>\n {props.items.map((item) => {\n const text = getObjectValueByPath(\n item,\n props.itemText,\n );\n return (\n <YListItem onClick={(e) => onClickItem(item)}>\n {slots.item ? slots.item({ text, item }) : text}\n </YListItem>\n );\n })}\n </YList>\n ) : (\n <div class=\"y-dropdown__no-options\">항목이 없습니다.</div>\n )}\n </YCard>\n ),\n }}\n </YMenu>\n </>\n );\n });\n },\n});\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"YDropdown.mjs","names":["defineComponent","mergeProps","pressItemsPropsOptions","useModelDuplex","useRender","pressCoordinateProps","getObjectValueByPath","omit","chooseProps","propsFactory","YButton","YCard","YIcon","YList","YListItem","YMenu","pressYDropdownPropsOptions","modelValue","Boolean","variation","String","color","position","dropdownIcon","type","Array","Object","default","YDropdown","name","inheritAttrs","components","props","slots","emits","setup","_ref","attrs","emit","opened","onClickItem","item","value","menuProps","dropdownIconProps","_createVNode","_Fragment","_mergeProps","$event","base","_len","arguments","length","args","_key","menu","isArray","items","map","text","itemText","e","_createTextVNode"],"sources":["../../../src/components/dropdown/YDropdown.tsx"],"sourcesContent":["import { PropType, defineComponent, mergeProps, SlotsType } from 'vue';\n\nimport { pressItemsPropsOptions } from '../../abstract/items';\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { pressCoordinateProps } from '../../composables/coordinate';\nimport { getObjectValueByPath, omit } from '../../util/common';\nimport { chooseProps, propsFactory } from '../../util/vue-component';\nimport { YButton } from '../button';\nimport { YCard } from '../card';\nimport { YIcon, YIconIconProp } from '../icon';\nimport { YList, YListItem } from '../list';\nimport { YMenu } from '../menu';\n\nimport './YDropdown.scss';\n\nexport const pressYDropdownPropsOptions = propsFactory(\n {\n modelValue: Boolean as PropType<boolean>,\n variation: String as PropType<string>,\n color: String as PropType<string>,\n ...omit(pressCoordinateProps({ position: 'bottom' as 'bottom' }), [\n 'coordinateStrategy',\n ]),\n dropdownIcon: {\n type: [String, Array, Object] as PropType<YIconIconProp>,\n default: '$dropdown',\n },\n ...pressItemsPropsOptions(),\n },\n 'YDropdown',\n);\n\nexport const YDropdown = defineComponent({\n name: 'YDropdown',\n inheritAttrs: false,\n components: {\n YMenu,\n },\n props: {\n ...pressYDropdownPropsOptions(),\n },\n slots: Object as SlotsType<{\n base: any,\n default: any,\n 'dropdown-icon': any,\n menu: any,\n item: { text: string, item: any },\n }>,\n emits: ['update:modelValue', 'click'],\n setup(props, { slots, attrs, emit }) {\n const opened = useModelDuplex(props);\n\n function onClickItem(item: any) {\n opened.value = false;\n emit('click', item);\n }\n\n useRender(() => {\n const menuProps = chooseProps(props, YMenu.props);\n const dropdownIconProps = chooseProps(\n typeof props.dropdownIcon === 'object' ? props.dropdownIcon : {},\n YIcon.props,\n );\n return (\n <>\n <YMenu\n {...menuProps}\n v-model={opened.value}\n content-classes={['y-dropdown__content']}\n >\n {{\n base: (...args: any[]) =>\n slots.base ? (\n slots.base?.(...args)\n ) : (\n <YButton\n variation={props.variation}\n color={props.color}\n class={[\n 'y-dropdown',\n { 'y-dropdown--opened': opened.value },\n ]}\n {...attrs}\n >\n {\n <span class=\"y-dropdown__default\">\n {slots.default?.()}\n </span>\n }\n {slots['dropdown-icon'] ? (\n slots['dropdown-icon']()\n ) : (\n <YIcon\n {...mergeProps(dropdownIconProps)}\n icon={props.dropdownIcon}\n class={['y-dropdown__icon']}\n ></YIcon>\n )}\n </YButton>\n ),\n default: () =>\n slots.menu ? (\n slots.menu()\n ) : (\n <YCard>\n {Array.isArray(props.items) && props.items.length > 0 ? (\n <YList>\n {props.items.map((item) => {\n const text = getObjectValueByPath(\n item,\n props.itemText,\n );\n return (\n <YListItem onClick={(e) => onClickItem(item)}>\n {slots.item ? slots.item({ text, item }) : text}\n </YListItem>\n );\n })}\n </YList>\n ) : (\n <div class=\"y-dropdown__no-options\">항목이 없습니다.</div>\n )}\n </YCard>\n ),\n }}\n </YMenu>\n </>\n );\n });\n },\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YIconCheckbox.mjs","names":["defineComponent","YIconCheckbox","name","props","checked","Boolean","indeterminate","disabled","render","_createVNode"],"sources":["../../../src/components/icons/YIconCheckbox.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\n\nimport './YIconCheckbox.scss';\n\nexport const YIconCheckbox = defineComponent({\n name: 'YIconCheckbox',\n props: {\n checked: Boolean,\n indeterminate: Boolean,\n disabled: Boolean,\n },\n render() {\n return (\n <svg\n class={[\n 'y-icon-checkbox',\n {\n 'y-icon-checkbox--checked': this.checked,\n 'y-icon-checkbox--indeterminate': this.indeterminate,\n 'y-icon-checkbox--disabled': this.disabled,\n },\n ]}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n >\n <path\n class=\"y-icon-checkbox__border-path\"\n d=\"M 15.525 21.825 H 8.325 C 4.851 21.825 2.025 18.999 2.025 15.525 V 8.325 C 2.025 4.851 4.851 2.025 8.325 2.025 H 15.525 C 18.999 2.025 21.825 4.851 21.825 8.325 V 15.525 C 21.825 18.999 18.999 21.825 15.525 21.825 Z\"\n />\n <path\n class=\"y-icon-checkbox__checkmark-path\"\n fill=\"none\"\n d={\n this.indeterminate\n ? 'M5.73,11.91 11.1,11.91 17.79,11.91'\n : 'M5.73,11.91 11.1,16.28 17.79,7.59'\n }\n ></path>\n </svg>\n );\n },\n});\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAErC;AAEA,OAAO,MAAMC,aAAa,GAAGD,eAAe,CAAC;EAC3CE,IAAI,EAAE,eAAe;EACrBC,KAAK,EAAE;IACLC,OAAO,EAAEC,OAAO;IAChBC,aAAa,EAAED,OAAO;IACtBE,QAAQ,EAAEF;EACZ,CAAC;EACDG,MAAMA,CAAA,EAAG;IACP,OAAAC,YAAA;MAAA,SAEW,CACL,iBAAiB,EACjB;QACE,0BAA0B,EAAE,IAAI,CAACL,OAAO;QACxC,gCAAgC,EAAE,IAAI,CAACE,aAAa;QACpD,2BAA2B,EAAE,IAAI,CAACC;MACpC,CAAC,CACF;MAAA
|
|
1
|
+
{"version":3,"file":"YIconCheckbox.mjs","names":["defineComponent","YIconCheckbox","name","props","checked","Boolean","indeterminate","disabled","render","_createVNode"],"sources":["../../../src/components/icons/YIconCheckbox.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\n\nimport './YIconCheckbox.scss';\n\nexport const YIconCheckbox = defineComponent({\n name: 'YIconCheckbox',\n props: {\n checked: Boolean,\n indeterminate: Boolean,\n disabled: Boolean,\n },\n render() {\n return (\n <svg\n class={[\n 'y-icon-checkbox',\n {\n 'y-icon-checkbox--checked': this.checked,\n 'y-icon-checkbox--indeterminate': this.indeterminate,\n 'y-icon-checkbox--disabled': this.disabled,\n },\n ]}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n >\n <path\n class=\"y-icon-checkbox__border-path\"\n d=\"M 15.525 21.825 H 8.325 C 4.851 21.825 2.025 18.999 2.025 15.525 V 8.325 C 2.025 4.851 4.851 2.025 8.325 2.025 H 15.525 C 18.999 2.025 21.825 4.851 21.825 8.325 V 15.525 C 21.825 18.999 18.999 21.825 15.525 21.825 Z\"\n />\n <path\n class=\"y-icon-checkbox__checkmark-path\"\n fill=\"none\"\n d={\n this.indeterminate\n ? 'M5.73,11.91 11.1,11.91 17.79,11.91'\n : 'M5.73,11.91 11.1,16.28 17.79,7.59'\n }\n ></path>\n </svg>\n );\n },\n});\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAErC;AAEA,OAAO,MAAMC,aAAa,GAAGD,eAAe,CAAC;EAC3CE,IAAI,EAAE,eAAe;EACrBC,KAAK,EAAE;IACLC,OAAO,EAAEC,OAAO;IAChBC,aAAa,EAAED,OAAO;IACtBE,QAAQ,EAAEF;EACZ,CAAC;EACDG,MAAMA,CAAA,EAAG;IACP,OAAAC,YAAA;MAAA,SAEW,CACL,iBAAiB,EACjB;QACE,0BAA0B,EAAE,IAAI,CAACL,OAAO;QACxC,gCAAgC,EAAE,IAAI,CAACE,aAAa;QACpD,2BAA2B,EAAE,IAAI,CAACC;MACpC,CAAC,CACF;MAAA;MAAA;MAAA;MAAA;IAAA,IAAAE,YAAA;MAAA;MAAA;IAAA,UAAAA,YAAA;MAAA;MAAA;MAAA,KAcG,IAAI,CAACH,aAAa,GACd,oCAAoC,GACpC;IAAmC;EAKjD;AACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YIconClear.mjs","names":["defineComponent","YIconClear","name","setup","_createVNode"],"sources":["../../../src/components/icons/YIconClear.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\r\n\r\nexport const YIconClear = defineComponent({\r\n name: 'YIconClear',\r\n setup() {\r\n return () => <svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"m8 1.5c-3.5839 0-6.5 2.9161-6.5 6.5 0 3.5839 2.9161 6.5 6.5 6.5 3.5839 0 6.5-2.9161 6.5-6.5 0-3.5839-2.9161-6.5-6.5-6.5zm-2 4a.5.5 0 01.35352.14648l1.6465 1.6465 1.6465-1.6465a.5.5 0 01.35352-.14648.5.5 0 01.35352.14648.5.5 0 010 .70703l-1.6465 1.6465 1.6465 1.6465a.5.5 0 010 .70703.5.5 0 01-.70703 0l-1.6465-1.6465-1.6465 1.6465a.5.5 0 01-.70703 0 .5.5 0 010-.70703l1.6465-1.6465-1.6465-1.6465a.5.5 0 010-.70703.5.5 0 01.35352-.14648z\" fill=\"currentColor\" stroke-miterlimit=\"10\" /></svg>\r\n }\r\n});\r\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAErC,OAAO,MAAMC,UAAU,GAAGD,eAAe,CAAC;EACxCE,IAAI,EAAE,YAAY;EAClBC,KAAKA,CAAA,EAAG;IACN,OAAO,MAAAC,YAAA;MAAA
|
|
1
|
+
{"version":3,"file":"YIconClear.mjs","names":["defineComponent","YIconClear","name","setup","_createVNode"],"sources":["../../../src/components/icons/YIconClear.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\r\n\r\nexport const YIconClear = defineComponent({\r\n name: 'YIconClear',\r\n setup() {\r\n return () => <svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"m8 1.5c-3.5839 0-6.5 2.9161-6.5 6.5 0 3.5839 2.9161 6.5 6.5 6.5 3.5839 0 6.5-2.9161 6.5-6.5 0-3.5839-2.9161-6.5-6.5-6.5zm-2 4a.5.5 0 01.35352.14648l1.6465 1.6465 1.6465-1.6465a.5.5 0 01.35352-.14648.5.5 0 01.35352.14648.5.5 0 010 .70703l-1.6465 1.6465 1.6465 1.6465a.5.5 0 010 .70703.5.5 0 01-.70703 0l-1.6465-1.6465-1.6465 1.6465a.5.5 0 01-.70703 0 .5.5 0 010-.70703l1.6465-1.6465-1.6465-1.6465a.5.5 0 010-.70703.5.5 0 01.35352-.14648z\" fill=\"currentColor\" stroke-miterlimit=\"10\" /></svg>\r\n }\r\n});\r\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAErC,OAAO,MAAMC,UAAU,GAAGD,eAAe,CAAC;EACxCE,IAAI,EAAE,YAAY;EAClBC,KAAKA,CAAA,EAAG;IACN,OAAO,MAAAC,YAAA;MAAA;MAAA;IAAA,IAAAA,YAAA;MAAA;MAAA;MAAA;IAAA,UAAojB;EAC7jB;AACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YIconDropdown.mjs","names":["defineComponent","YIconDropdown","name","setup","_createVNode"],"sources":["../../../src/components/icons/YIconDropdown.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\n\nexport const YIconDropdown = defineComponent({\n name: 'YIconDropdown',\n setup() {\n return () => (\n <svg version=\"1.1\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M7,10L12,15L17,10H7Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n },\n});\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAErC,OAAO,MAAMC,aAAa,GAAGD,eAAe,CAAC;EAC3CE,IAAI,EAAE,eAAe;EACrBC,KAAKA,CAAA,EAAG;IACN,OAAO,MAAAC,YAAA;MAAA
|
|
1
|
+
{"version":3,"file":"YIconDropdown.mjs","names":["defineComponent","YIconDropdown","name","setup","_createVNode"],"sources":["../../../src/components/icons/YIconDropdown.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\n\nexport const YIconDropdown = defineComponent({\n name: 'YIconDropdown',\n setup() {\n return () => (\n <svg version=\"1.1\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M7,10L12,15L17,10H7Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n },\n});\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAErC,OAAO,MAAMC,aAAa,GAAGD,eAAe,CAAC;EAC3CE,IAAI,EAAE,eAAe;EACrBC,KAAKA,CAAA,EAAG;IACN,OAAO,MAAAC,YAAA;MAAA;MAAA;MAAA;IAAA,IAAAA,YAAA;MAAA;MAAA;IAAA,UAON;EACH;AACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YIconExpand.mjs","names":["defineComponent","YIconExpand","name","setup","_createVNode"],"sources":["../../../src/components/icons/YIconExpand.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\r\n\r\nexport const YIconExpand = defineComponent({\r\n name: 'YIconExpand',\r\n setup() {\r\n return () => (\r\n <svg version=\"1.1\" viewBox=\"0 0 32 32\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"m9.6086 5.7953 13.557 10.269-13.557 10.141\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"4.1024\"\r\n />\r\n </svg>\r\n );\r\n },\r\n});\r\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAErC,OAAO,MAAMC,WAAW,GAAGD,eAAe,CAAC;EACzCE,IAAI,EAAE,aAAa;EACnBC,KAAKA,CAAA,EAAG;IACN,OAAO,MAAAC,YAAA;MAAA
|
|
1
|
+
{"version":3,"file":"YIconExpand.mjs","names":["defineComponent","YIconExpand","name","setup","_createVNode"],"sources":["../../../src/components/icons/YIconExpand.tsx"],"sourcesContent":["import { defineComponent } from 'vue';\r\n\r\nexport const YIconExpand = defineComponent({\r\n name: 'YIconExpand',\r\n setup() {\r\n return () => (\r\n <svg version=\"1.1\" viewBox=\"0 0 32 32\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"m9.6086 5.7953 13.557 10.269-13.557 10.141\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"4.1024\"\r\n />\r\n </svg>\r\n );\r\n },\r\n});\r\n"],"mappings":";AAAA,SAASA,eAAe,QAAQ,KAAK;AAErC,OAAO,MAAMC,WAAW,GAAGD,eAAe,CAAC;EACzCE,IAAI,EAAE,aAAa;EACnBC,KAAKA,CAAA,EAAG;IACN,OAAO,MAAAC,YAAA;MAAA;MAAA;MAAA;IAAA,IAAAA,YAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;IAAA,UAWN;EACH;AACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YIconPageControl.mjs","names":["defineComponent","PageControlPaths","next","prev","last","first","YIconPageControl","name","props","type","String","default","render","_createVNode","$props"],"sources":["../../../src/components/icons/YIconPageControl.tsx"],"sourcesContent":["import { PropType, defineComponent } from 'vue';\n\nexport const PageControlPaths = {\n next: 'm12.18 23.585 7.6399-7.5489-7.4693-7.622',\n prev: 'm19.82 23.585-7.6399-7.5489 7.4693-7.622',\n last: 'm10.488 23.812 7.4981-7.7457-7.3307-7.8207m0 0zm10.856-0.075007v15.659',\n first: 'm21.512 23.812-7.4981-7.7457 7.3307-7.8207m0 0zm-10.856-0.075007v15.659',\n};\n\nexport const YIconPageControl = defineComponent({\n name: 'YIconPageControl',\n props: {\n type: {\n type: String as PropType<'next' | 'prev' | 'first' | 'last'>,\n default: 'next',\n },\n },\n render() {\n return (\n <svg version=\"1.1\" viewBox=\"0 0 32 32\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d={\n this.$props.type in PageControlPaths\n ? PageControlPaths[this.$props.type]\n : PageControlPaths.next\n }\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"3\"\n />\n </svg>\n );\n },\n});\n"],"mappings":";AAAA,SAAmBA,eAAe,QAAQ,KAAK;AAE/C,OAAO,MAAMC,gBAAgB,GAAG;EAC9BC,IAAI,EAAE,0CAA0C;EAChDC,IAAI,EAAE,0CAA0C;EAChDC,IAAI,EAAE,wEAAwE;EAC9EC,KAAK,EAAE;AACT,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGN,eAAe,CAAC;EAC9CO,IAAI,EAAE,kBAAkB;EACxBC,KAAK,EAAE;IACLC,IAAI,EAAE;MACJA,IAAI,EAAEC,MAAsD;MAC5DC,OAAO,EAAE;IACX;EACF,CAAC;EACDC,MAAMA,CAAA,EAAG;IACP,OAAAC,YAAA;MAAA
|
|
1
|
+
{"version":3,"file":"YIconPageControl.mjs","names":["defineComponent","PageControlPaths","next","prev","last","first","YIconPageControl","name","props","type","String","default","render","_createVNode","$props"],"sources":["../../../src/components/icons/YIconPageControl.tsx"],"sourcesContent":["import { PropType, defineComponent } from 'vue';\n\nexport const PageControlPaths = {\n next: 'm12.18 23.585 7.6399-7.5489-7.4693-7.622',\n prev: 'm19.82 23.585-7.6399-7.5489 7.4693-7.622',\n last: 'm10.488 23.812 7.4981-7.7457-7.3307-7.8207m0 0zm10.856-0.075007v15.659',\n first: 'm21.512 23.812-7.4981-7.7457 7.3307-7.8207m0 0zm-10.856-0.075007v15.659',\n};\n\nexport const YIconPageControl = defineComponent({\n name: 'YIconPageControl',\n props: {\n type: {\n type: String as PropType<'next' | 'prev' | 'first' | 'last'>,\n default: 'next',\n },\n },\n render() {\n return (\n <svg version=\"1.1\" viewBox=\"0 0 32 32\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d={\n this.$props.type in PageControlPaths\n ? PageControlPaths[this.$props.type]\n : PageControlPaths.next\n }\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"3\"\n />\n </svg>\n );\n },\n});\n"],"mappings":";AAAA,SAAmBA,eAAe,QAAQ,KAAK;AAE/C,OAAO,MAAMC,gBAAgB,GAAG;EAC9BC,IAAI,EAAE,0CAA0C;EAChDC,IAAI,EAAE,0CAA0C;EAChDC,IAAI,EAAE,wEAAwE;EAC9EC,KAAK,EAAE;AACT,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGN,eAAe,CAAC;EAC9CO,IAAI,EAAE,kBAAkB;EACxBC,KAAK,EAAE;IACLC,IAAI,EAAE;MACJA,IAAI,EAAEC,MAAsD;MAC5DC,OAAO,EAAE;IACX;EACF,CAAC;EACDC,MAAMA,CAAA,EAAG;IACP,OAAAC,YAAA;MAAA;MAAA;MAAA;IAAA,IAAAA,YAAA;MAAA,KAIQ,IAAI,CAACC,MAAM,CAACL,IAAI,IAAIR,gBAAgB,GAChCA,gBAAgB,CAAC,IAAI,CAACa,MAAM,CAACL,IAAI,CAAC,GAClCR,gBAAgB,CAACC,IAAI;MAAA;MAAA;MAAA;MAAA;MAAA;IAAA;EAUnC;AACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YIconSort.mjs","names":["defineComponent","YIconSort","name","props","direction","type","String","disabled","Boolean","render","_createVNode"],"sources":["../../../src/components/icons/YIconSort.tsx"],"sourcesContent":["import { PropType, defineComponent } from 'vue';\n\nimport './YIconSort.scss';\n\nexport const YIconSort = defineComponent({\n name: 'YIconSort',\n props: {\n direction: {\n type: String as PropType<'asc' | 'desc'>,\n },\n disabled: {\n type: Boolean,\n },\n },\n render() {\n return (\n <svg\n version=\"1.1\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 32 32\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class={[\n 'y-icon-sort',\n {\n 'y-icon-sort--disabled': this.disabled,\n 'y-icon-sort--asc': this.direction === 'asc',\n 'y-icon-sort--desc': this.direction === 'desc',\n },\n ]}\n >\n <path\n d=\"m8.4146 12.52 7.5489-7.6399 7.622 7.4693\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"3\"\n class=\"y-icon-sort__asc\"\n />\n <path\n d=\"m8.4146 19.48 7.5489 7.6399 7.622-7.4693\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"3\"\n class=\"y-icon-sort__desc\"\n />\n </svg>\n );\n },\n});\n"],"mappings":";AAAA,SAAmBA,eAAe,QAAQ,KAAK;AAE/C;AAEA,OAAO,MAAMC,SAAS,GAAGD,eAAe,CAAC;EACvCE,IAAI,EAAE,WAAW;EACjBC,KAAK,EAAE;IACLC,SAAS,EAAE;MACTC,IAAI,EAAEC;IACR,CAAC;IACDC,QAAQ,EAAE;MACRF,IAAI,EAAEG;IACR;EACF,CAAC;EACDC,MAAMA,CAAA,EAAG;IACP,OAAAC,YAAA;MAAA
|
|
1
|
+
{"version":3,"file":"YIconSort.mjs","names":["defineComponent","YIconSort","name","props","direction","type","String","disabled","Boolean","render","_createVNode"],"sources":["../../../src/components/icons/YIconSort.tsx"],"sourcesContent":["import { PropType, defineComponent } from 'vue';\n\nimport './YIconSort.scss';\n\nexport const YIconSort = defineComponent({\n name: 'YIconSort',\n props: {\n direction: {\n type: String as PropType<'asc' | 'desc'>,\n },\n disabled: {\n type: Boolean,\n },\n },\n render() {\n return (\n <svg\n version=\"1.1\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 32 32\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class={[\n 'y-icon-sort',\n {\n 'y-icon-sort--disabled': this.disabled,\n 'y-icon-sort--asc': this.direction === 'asc',\n 'y-icon-sort--desc': this.direction === 'desc',\n },\n ]}\n >\n <path\n d=\"m8.4146 12.52 7.5489-7.6399 7.622 7.4693\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"3\"\n class=\"y-icon-sort__asc\"\n />\n <path\n d=\"m8.4146 19.48 7.5489 7.6399 7.622-7.4693\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"3\"\n class=\"y-icon-sort__desc\"\n />\n </svg>\n );\n },\n});\n"],"mappings":";AAAA,SAAmBA,eAAe,QAAQ,KAAK;AAE/C;AAEA,OAAO,MAAMC,SAAS,GAAGD,eAAe,CAAC;EACvCE,IAAI,EAAE,WAAW;EACjBC,KAAK,EAAE;IACLC,SAAS,EAAE;MACTC,IAAI,EAAEC;IACR,CAAC;IACDC,QAAQ,EAAE;MACRF,IAAI,EAAEG;IACR;EACF,CAAC;EACDC,MAAMA,CAAA,EAAG;IACP,OAAAC,YAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA,SAOW,CACL,aAAa,EACb;QACE,uBAAuB,EAAE,IAAI,CAACH,QAAQ;QACtC,kBAAkB,EAAE,IAAI,CAACH,SAAS,KAAK,KAAK;QAC5C,mBAAmB,EAAE,IAAI,CAACA,SAAS,KAAK;MAC1C,CAAC;IACF,IAAAM,YAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;IAAA,UAAAA,YAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;MAAA;IAAA;EAsBP;AACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YLayer.mjs","names":["Teleport","Transition","computed","defineComponent","getCurrentInstance","mergeProps","reactive","ref","shallowRef","toRef","useRender","pressCoordinateProps","useCoordinate","pressDimensionPropsOptions","useDimension","useLayerGroup","pressThemePropsOptions","useLocalTheme","useLazy","PolyTransition","polyTransitionPropOptions","usePolyTransition","ComplementClick","bindClasses","propsFactory","pressBasePropsOptions","useBase","pressYLayerProps","modelValue","type","Boolean","scrim","scrimOpacity","Number","eager","classes","Array","String","Object","contentClasses","closeClickScrim","contentStyles","default","disabled","openOnHover","openDelay","closeDelay","zIndex","YLayer","name","inheritAttrs","components","directives","props","modal","emits","value","mouseEvent","afterLeave","slots","setup","_ref","emit","expose","attrs","vm","scrim$","content$","base","base$","baseEl","baseSlot","themeClasses","layerGroup","layerGroupState","getActiveLayers","polyTransitionBindProps","dimensionStyles","active","get","set","v","finish","hovered","lazyValue","onAfterUpdate","rendered","coordinateStyles","updateCoordinate","contentEl","onClickComplementLayer","target","closeConditional","complementClickOption","handler","determine","include","onAfterEnter","onAfterLeave","onClickScrim","onMouseenter","event","onMouseleave","computedStyle","toString","computedClass","boundClasses","computedContentClasses","isMe","vnode","slotBase","class","_createVNode","_Fragment","_mergeProps","_withDirectives","_vShow","_resolveDirective"],"sources":["../../../src/components/layer/YLayer.tsx"],"sourcesContent":["import type {\r\n CSSProperties,\r\n ComponentInternalInstance,\r\n PropType,\r\n SlotsType,\r\n} from 'vue';\r\nimport {\r\n Teleport,\r\n Transition,\r\n computed,\r\n defineComponent,\r\n getCurrentInstance,\r\n mergeProps,\r\n reactive,\r\n ref,\r\n shallowRef,\r\n toRef,\r\n watchEffect,\r\n} from 'vue';\r\n\r\nimport { useRender } from '../../composables/component';\r\nimport {\r\n pressCoordinateProps,\r\n useCoordinate,\r\n} from '../../composables/coordinate';\r\nimport {\r\n pressDimensionPropsOptions,\r\n useDimension,\r\n} from '../../composables/dimension';\r\nimport { useLayerGroup } from '../../composables/layer-group';\r\nimport { pressThemePropsOptions, useLocalTheme } from '../../composables/theme';\r\nimport { useLazy } from '../../composables/timing';\r\nimport {\r\n PolyTransition,\r\n polyTransitionPropOptions,\r\n usePolyTransition,\r\n} from '../../composables/transition';\r\nimport {\r\n ComplementClick,\r\n ComplementClickBindingOptions,\r\n} from '../../directives/complement-click';\r\nimport { bindClasses, propsFactory } from '../../util/vue-component';\r\n\r\nimport './YLayer.scss';\r\nimport { pressBasePropsOptions, useBase } from './base';\r\n\r\nexport const pressYLayerProps = propsFactory(\r\n {\r\n modelValue: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n scrim: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n scrimOpacity: {\r\n type: Number as PropType<number>,\r\n },\r\n eager: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n classes: {\r\n type: [Array, String, Object] as PropType<\r\n string[] | string | Record<string, any>\r\n >,\r\n },\r\n contentClasses: {\r\n type: [Array, String, Object] as PropType<\r\n string[] | string | Record<string, any>\r\n >,\r\n },\r\n closeClickScrim: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n contentStyles: {\r\n type: Object as PropType<CSSProperties>,\r\n default: () => {},\r\n },\r\n disabled: {\r\n type: Boolean as PropType<boolean>,\r\n default: false,\r\n },\r\n openOnHover: {\r\n type: Boolean as PropType<boolean>,\r\n default: false,\r\n },\r\n openDelay: {\r\n type: Number as PropType<number>,\r\n default: 200,\r\n },\r\n closeDelay: {\r\n type: Number as PropType<number>,\r\n default: 200,\r\n },\r\n zIndex: {\r\n type: [Number, String] as PropType<number | string>,\r\n default: 2000,\r\n },\r\n ...pressThemePropsOptions(),\r\n ...polyTransitionPropOptions,\r\n ...pressBasePropsOptions(),\r\n ...pressCoordinateProps(),\r\n ...pressDimensionPropsOptions(),\r\n },\r\n 'YLayer',\r\n);\r\n\r\nexport const YLayer = defineComponent({\r\n name: 'YLayer',\r\n inheritAttrs: false,\r\n components: {\r\n PolyTransition,\r\n },\r\n directives: {\r\n ComplementClick,\r\n },\r\n props: {\r\n modal: Boolean as PropType<boolean>,\r\n ...pressYLayerProps(),\r\n },\r\n emits: {\r\n 'update:modelValue': (value: boolean) => true,\r\n 'click:complement': (mouseEvent: MouseEvent) => true,\r\n afterLeave: () => true,\r\n },\r\n slots: Object as SlotsType<{\r\n base: any;\r\n default: any;\r\n }>,\r\n setup(props, { emit, expose, attrs, slots }) {\r\n const vm = getCurrentInstance();\r\n\r\n const scrim$ = ref<HTMLElement>();\r\n const content$ = ref<HTMLElement>();\r\n\r\n const { base, base$, baseEl, baseSlot } = useBase(props);\r\n\r\n const { themeClasses } = useLocalTheme(props);\r\n const { layerGroup, layerGroupState, getActiveLayers } = useLayerGroup();\r\n const { polyTransitionBindProps } = usePolyTransition(props);\r\n const { dimensionStyles } = useDimension(props);\r\n const active = computed<boolean>({\r\n get: (): boolean => {\r\n return !!props.modelValue;\r\n },\r\n set: (v: boolean) => {\r\n emit('update:modelValue', v);\r\n },\r\n });\r\n const finish = shallowRef(false);\r\n const hovered = ref(false);\r\n\r\n const disabled = toRef(props, 'disabled');\r\n const { lazyValue, onAfterUpdate } = useLazy(toRef(props, 'eager'), active);\r\n const rendered = computed<boolean>(\r\n () => !disabled.value && (lazyValue.value || active.value),\r\n );\r\n\r\n const { coordinateStyles, updateCoordinate } = useCoordinate(props, {\r\n contentEl: content$,\r\n base,\r\n active,\r\n });\r\n\r\n function onClickComplementLayer(mouseEvent: MouseEvent) {\r\n emit('click:complement', mouseEvent);\r\n if (!props.modal) {\r\n if (\r\n scrim$.value !== null &&\r\n scrim$.value === mouseEvent.target &&\r\n props.closeClickScrim\r\n ) {\r\n active.value = false;\r\n }\r\n } else {\r\n // TODO: shrug ani\r\n }\r\n }\r\n\r\n function closeConditional(): boolean {\r\n return (\r\n (!props.openOnHover || (props.openOnHover && !hovered.value)) &&\r\n active.value && finish.value\r\n ); // TODO: && groupTopLevel.value;\r\n }\r\n\r\n const complementClickOption = reactive<ComplementClickBindingOptions>({\r\n handler: onClickComplementLayer,\r\n determine: closeConditional,\r\n include: () => [baseEl.value],\r\n });\r\n\r\n function onAfterEnter() {\r\n finish.value = true;\r\n }\r\n\r\n function onAfterLeave() {\r\n onAfterUpdate();\r\n finish.value = false;\r\n emit('afterLeave');\r\n }\r\n\r\n function onClickScrim() {\r\n if (props.closeClickScrim) {\r\n active.value = false;\r\n }\r\n }\r\n\r\n function onMouseenter(event: Event) {\r\n hovered.value = true;\r\n }\r\n\r\n function onMouseleave(event: Event) {\r\n hovered.value = false;\r\n }\r\n\r\n const computedStyle = computed(() => {\r\n return {\r\n zIndex: (props.zIndex ?? '2000').toString(),\r\n };\r\n });\r\n\r\n const computedClass = computed<Record<string, boolean>>(() => {\r\n const { classes } = props;\r\n const boundClasses = bindClasses(classes);\r\n return {\r\n ...boundClasses,\r\n 'y-layer--active': !!active.value,\r\n };\r\n });\r\n\r\n const computedContentClasses = computed<Record<string, boolean>>(() => {\r\n const boundClasses = bindClasses(props.contentClasses);\r\n return {\r\n ...boundClasses,\r\n };\r\n });\r\n\r\n expose({\r\n scrim$,\r\n base$,\r\n content$: computed(() => content$.value),\r\n baseEl,\r\n active,\r\n onAfterUpdate,\r\n updateCoordinate,\r\n hovered,\r\n finish,\r\n modal: computed(() => props.modal),\r\n getActiveLayers,\r\n isMe: (vnode: ComponentInternalInstance) => {\r\n return vnode === vm;\r\n },\r\n });\r\n\r\n useRender(() => {\r\n const slotBase = slots.base?.({\r\n active: active.value,\r\n props: mergeProps({\r\n ref: base$,\r\n class: {\r\n 'y-layer-base': true,\r\n 'y-layer-base--active': active.value,\r\n },\r\n }),\r\n });\r\n baseSlot.value = slotBase;\r\n return (\r\n <>\r\n {slotBase}\r\n <Teleport disabled={!layerGroup.value} to={layerGroup.value as any}>\r\n {rendered.value && (\r\n <div\r\n class={{\r\n 'y-layer': true,\r\n 'y-layer--finish': finish.value,\r\n ...computedClass.value,\r\n [themeClasses.value ?? '']: true,\r\n }}\r\n onMouseenter={onMouseenter}\r\n onMouseleave={onMouseleave}\r\n style={computedStyle.value}\r\n {...attrs}\r\n >\r\n <Transition name=\"fade\" appear>\r\n {active.value && props.scrim && (\r\n <div\r\n class=\"y-layer__scrim\"\r\n style={{ '--y-layer-scrim-opacity': props.scrimOpacity }}\r\n onClick={onClickScrim}\r\n ref=\"scrim$\"\r\n ></div>\r\n )}\r\n </Transition>\r\n <PolyTransition\r\n onAfterEnter={onAfterEnter}\r\n onAfterLeave={onAfterLeave}\r\n appear\r\n {...polyTransitionBindProps.value}\r\n >\r\n <div\r\n v-show={active.value}\r\n v-complement-click={{ ...complementClickOption }}\r\n class={{\r\n 'y-layer__content': true,\r\n ...computedContentClasses.value,\r\n }}\r\n style={[\r\n {\r\n ...dimensionStyles.value,\r\n ...coordinateStyles.value,\r\n ...props.contentStyles,\r\n },\r\n ]}\r\n ref={content$}\r\n >\r\n {slots.default?.({ active: active.value })}\r\n </div>\r\n </PolyTransition>\r\n </div>\r\n )}\r\n </Teleport>\r\n </>\r\n );\r\n });\r\n\r\n return {\r\n complementClickOption,\r\n layerGroup,\r\n active,\r\n finish,\r\n rendered,\r\n lazyValue,\r\n onAfterUpdate: onAfterUpdate as () => void,\r\n scrim$,\r\n content$,\r\n base$,\r\n baseEl,\r\n polyTransitionBindProps,\r\n coordinateStyles,\r\n layerGroupState,\r\n getActiveLayers,\r\n };\r\n },\r\n});\r\n\r\nexport type YLayer = InstanceType<typeof YLayer>;\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"YLayer.mjs","names":["Teleport","Transition","computed","defineComponent","getCurrentInstance","mergeProps","reactive","ref","shallowRef","toRef","useRender","pressCoordinateProps","useCoordinate","pressDimensionPropsOptions","useDimension","useLayerGroup","pressThemePropsOptions","useLocalTheme","useLazy","PolyTransition","polyTransitionPropOptions","usePolyTransition","ComplementClick","bindClasses","propsFactory","pressBasePropsOptions","useBase","pressYLayerProps","modelValue","type","Boolean","scrim","scrimOpacity","Number","eager","classes","Array","String","Object","contentClasses","closeClickScrim","contentStyles","default","disabled","openOnHover","openDelay","closeDelay","zIndex","YLayer","name","inheritAttrs","components","directives","props","modal","emits","value","mouseEvent","afterLeave","slots","setup","_ref","emit","expose","attrs","vm","scrim$","content$","base","base$","baseEl","baseSlot","themeClasses","layerGroup","layerGroupState","getActiveLayers","polyTransitionBindProps","dimensionStyles","active","get","set","v","finish","hovered","lazyValue","onAfterUpdate","rendered","coordinateStyles","updateCoordinate","contentEl","onClickComplementLayer","target","closeConditional","complementClickOption","handler","determine","include","onAfterEnter","onAfterLeave","onClickScrim","onMouseenter","event","onMouseleave","computedStyle","toString","computedClass","boundClasses","computedContentClasses","isMe","vnode","slotBase","class","_createVNode","_Fragment","_mergeProps","_withDirectives","_vShow","_resolveDirective"],"sources":["../../../src/components/layer/YLayer.tsx"],"sourcesContent":["import type {\r\n CSSProperties,\r\n ComponentInternalInstance,\r\n PropType,\r\n SlotsType,\r\n} from 'vue';\r\nimport {\r\n Teleport,\r\n Transition,\r\n computed,\r\n defineComponent,\r\n getCurrentInstance,\r\n mergeProps,\r\n reactive,\r\n ref,\r\n shallowRef,\r\n toRef,\r\n watchEffect,\r\n} from 'vue';\r\n\r\nimport { useRender } from '../../composables/component';\r\nimport {\r\n pressCoordinateProps,\r\n useCoordinate,\r\n} from '../../composables/coordinate';\r\nimport {\r\n pressDimensionPropsOptions,\r\n useDimension,\r\n} from '../../composables/dimension';\r\nimport { useLayerGroup } from '../../composables/layer-group';\r\nimport { pressThemePropsOptions, useLocalTheme } from '../../composables/theme';\r\nimport { useLazy } from '../../composables/timing';\r\nimport {\r\n PolyTransition,\r\n polyTransitionPropOptions,\r\n usePolyTransition,\r\n} from '../../composables/transition';\r\nimport {\r\n ComplementClick,\r\n ComplementClickBindingOptions,\r\n} from '../../directives/complement-click';\r\nimport { bindClasses, propsFactory } from '../../util/vue-component';\r\n\r\nimport './YLayer.scss';\r\nimport { pressBasePropsOptions, useBase } from './base';\r\n\r\nexport const pressYLayerProps = propsFactory(\r\n {\r\n modelValue: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n scrim: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n scrimOpacity: {\r\n type: Number as PropType<number>,\r\n },\r\n eager: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n classes: {\r\n type: [Array, String, Object] as PropType<\r\n string[] | string | Record<string, any>\r\n >,\r\n },\r\n contentClasses: {\r\n type: [Array, String, Object] as PropType<\r\n string[] | string | Record<string, any>\r\n >,\r\n },\r\n closeClickScrim: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n contentStyles: {\r\n type: Object as PropType<CSSProperties>,\r\n default: () => {},\r\n },\r\n disabled: {\r\n type: Boolean as PropType<boolean>,\r\n default: false,\r\n },\r\n openOnHover: {\r\n type: Boolean as PropType<boolean>,\r\n default: false,\r\n },\r\n openDelay: {\r\n type: Number as PropType<number>,\r\n default: 200,\r\n },\r\n closeDelay: {\r\n type: Number as PropType<number>,\r\n default: 200,\r\n },\r\n zIndex: {\r\n type: [Number, String] as PropType<number | string>,\r\n default: 2000,\r\n },\r\n ...pressThemePropsOptions(),\r\n ...polyTransitionPropOptions,\r\n ...pressBasePropsOptions(),\r\n ...pressCoordinateProps(),\r\n ...pressDimensionPropsOptions(),\r\n },\r\n 'YLayer',\r\n);\r\n\r\nexport const YLayer = defineComponent({\r\n name: 'YLayer',\r\n inheritAttrs: false,\r\n components: {\r\n PolyTransition,\r\n },\r\n directives: {\r\n ComplementClick,\r\n },\r\n props: {\r\n modal: Boolean as PropType<boolean>,\r\n ...pressYLayerProps(),\r\n },\r\n emits: {\r\n 'update:modelValue': (value: boolean) => true,\r\n 'click:complement': (mouseEvent: MouseEvent) => true,\r\n afterLeave: () => true,\r\n },\r\n slots: Object as SlotsType<{\r\n base: any;\r\n default: any;\r\n }>,\r\n setup(props, { emit, expose, attrs, slots }) {\r\n const vm = getCurrentInstance();\r\n\r\n const scrim$ = ref<HTMLElement>();\r\n const content$ = ref<HTMLElement>();\r\n\r\n const { base, base$, baseEl, baseSlot } = useBase(props);\r\n\r\n const { themeClasses } = useLocalTheme(props);\r\n const { layerGroup, layerGroupState, getActiveLayers } = useLayerGroup();\r\n const { polyTransitionBindProps } = usePolyTransition(props);\r\n const { dimensionStyles } = useDimension(props);\r\n const active = computed<boolean>({\r\n get: (): boolean => {\r\n return !!props.modelValue;\r\n },\r\n set: (v: boolean) => {\r\n emit('update:modelValue', v);\r\n },\r\n });\r\n const finish = shallowRef(false);\r\n const hovered = ref(false);\r\n\r\n const disabled = toRef(props, 'disabled');\r\n const { lazyValue, onAfterUpdate } = useLazy(toRef(props, 'eager'), active);\r\n const rendered = computed<boolean>(\r\n () => !disabled.value && (lazyValue.value || active.value),\r\n );\r\n\r\n const { coordinateStyles, updateCoordinate } = useCoordinate(props, {\r\n contentEl: content$,\r\n base,\r\n active,\r\n });\r\n\r\n function onClickComplementLayer(mouseEvent: MouseEvent) {\r\n emit('click:complement', mouseEvent);\r\n if (!props.modal) {\r\n if (\r\n scrim$.value !== null &&\r\n scrim$.value === mouseEvent.target &&\r\n props.closeClickScrim\r\n ) {\r\n active.value = false;\r\n }\r\n } else {\r\n // TODO: shrug ani\r\n }\r\n }\r\n\r\n function closeConditional(): boolean {\r\n return (\r\n (!props.openOnHover || (props.openOnHover && !hovered.value)) &&\r\n active.value && finish.value\r\n ); // TODO: && groupTopLevel.value;\r\n }\r\n\r\n const complementClickOption = reactive<ComplementClickBindingOptions>({\r\n handler: onClickComplementLayer,\r\n determine: closeConditional,\r\n include: () => [baseEl.value],\r\n });\r\n\r\n function onAfterEnter() {\r\n finish.value = true;\r\n }\r\n\r\n function onAfterLeave() {\r\n onAfterUpdate();\r\n finish.value = false;\r\n emit('afterLeave');\r\n }\r\n\r\n function onClickScrim() {\r\n if (props.closeClickScrim) {\r\n active.value = false;\r\n }\r\n }\r\n\r\n function onMouseenter(event: Event) {\r\n hovered.value = true;\r\n }\r\n\r\n function onMouseleave(event: Event) {\r\n hovered.value = false;\r\n }\r\n\r\n const computedStyle = computed(() => {\r\n return {\r\n zIndex: (props.zIndex ?? '2000').toString(),\r\n };\r\n });\r\n\r\n const computedClass = computed<Record<string, boolean>>(() => {\r\n const { classes } = props;\r\n const boundClasses = bindClasses(classes);\r\n return {\r\n ...boundClasses,\r\n 'y-layer--active': !!active.value,\r\n };\r\n });\r\n\r\n const computedContentClasses = computed<Record<string, boolean>>(() => {\r\n const boundClasses = bindClasses(props.contentClasses);\r\n return {\r\n ...boundClasses,\r\n };\r\n });\r\n\r\n expose({\r\n scrim$,\r\n base$,\r\n content$: computed(() => content$.value),\r\n baseEl,\r\n active,\r\n onAfterUpdate,\r\n updateCoordinate,\r\n hovered,\r\n finish,\r\n modal: computed(() => props.modal),\r\n getActiveLayers,\r\n isMe: (vnode: ComponentInternalInstance) => {\r\n return vnode === vm;\r\n },\r\n });\r\n\r\n useRender(() => {\r\n const slotBase = slots.base?.({\r\n active: active.value,\r\n props: mergeProps({\r\n ref: base$,\r\n class: {\r\n 'y-layer-base': true,\r\n 'y-layer-base--active': active.value,\r\n },\r\n }),\r\n });\r\n baseSlot.value = slotBase;\r\n return (\r\n <>\r\n {slotBase}\r\n <Teleport disabled={!layerGroup.value} to={layerGroup.value as any}>\r\n {rendered.value && (\r\n <div\r\n class={{\r\n 'y-layer': true,\r\n 'y-layer--finish': finish.value,\r\n ...computedClass.value,\r\n [themeClasses.value ?? '']: true,\r\n }}\r\n onMouseenter={onMouseenter}\r\n onMouseleave={onMouseleave}\r\n style={computedStyle.value}\r\n {...attrs}\r\n >\r\n <Transition name=\"fade\" appear>\r\n {active.value && props.scrim && (\r\n <div\r\n class=\"y-layer__scrim\"\r\n style={{ '--y-layer-scrim-opacity': props.scrimOpacity }}\r\n onClick={onClickScrim}\r\n ref=\"scrim$\"\r\n ></div>\r\n )}\r\n </Transition>\r\n <PolyTransition\r\n onAfterEnter={onAfterEnter}\r\n onAfterLeave={onAfterLeave}\r\n appear\r\n {...polyTransitionBindProps.value}\r\n >\r\n <div\r\n v-show={active.value}\r\n v-complement-click={{ ...complementClickOption }}\r\n class={{\r\n 'y-layer__content': true,\r\n ...computedContentClasses.value,\r\n }}\r\n style={[\r\n {\r\n ...dimensionStyles.value,\r\n ...coordinateStyles.value,\r\n ...props.contentStyles,\r\n },\r\n ]}\r\n ref={content$}\r\n >\r\n {slots.default?.({ active: active.value })}\r\n </div>\r\n </PolyTransition>\r\n </div>\r\n )}\r\n </Teleport>\r\n </>\r\n );\r\n });\r\n\r\n return {\r\n complementClickOption,\r\n layerGroup,\r\n active,\r\n finish,\r\n rendered,\r\n lazyValue,\r\n onAfterUpdate: onAfterUpdate as () => void,\r\n scrim$,\r\n content$,\r\n base$,\r\n baseEl,\r\n polyTransitionBindProps,\r\n coordinateStyles,\r\n layerGroupState,\r\n getActiveLayers,\r\n };\r\n },\r\n});\r\n\r\nexport type YLayer = InstanceType<typeof YLayer>;\r\n"],"mappings":"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"}
|