{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es.string.anchor.js","webpack:///./src/views/Booking/Index.vue?efe8","webpack:///./src/views/Booking/Index.vue","webpack:///./src/components/PopupDatePicker.vue","webpack:///./node_modules/quasar/src/utils/private/click-outside.js","webpack:///./node_modules/quasar/src/composables/private/use-anchor.js","webpack:///./node_modules/quasar/src/composables/private/use-scroll-target.js","webpack:///./node_modules/quasar/src/utils/private/position-engine.js","webpack:///./node_modules/quasar/src/components/menu/QMenu.js","webpack:///./node_modules/quasar/src/components/popup-proxy/QPopupProxy.js","webpack:///./node_modules/quasar/src/composables/private/use-cache.js","webpack:///./node_modules/quasar/src/components/date/use-datetime.js","webpack:///./node_modules/quasar/src/components/date/QDate.js","webpack:///./src/components/PopupDatePicker.vue?55e9","webpack:///./src/views/Booking/Index.vue?4594","webpack:///./node_modules/quasar/src/directives/ClosePopup.js","webpack:///./node_modules/core-js/internals/create-html.js","webpack:///./node_modules/core-js/internals/string-html-forced.js","webpack:///./node_modules/quasar/src/components/bar/QBar.js"],"names":["$","createHTML","forcedStringHTMLMethod","target","proto","forced","anchor","name","this","class","type","value","$t","ref","action","redirectUrl","method","hidden","form","date","from","to","room","adult","child","token","personalInfo","userid","lang","onPickDate","round","outline","size","icon","disable","minusRoom","addRoom","minusAdult","addAdult","minusChild","addChild","color","label","loading","searchLoading","onSearch","showRoomNotFoundDialog","style","align","cover","transition-show","transition-hide","updateProxy","proxyDate","options","optionsFn","range","today-btn","flat","save","timer","props","Object","default","Date","emits","data","$moment","format","add","methods","$emit","useAnchorProps","noParentEvent","Boolean","contextMenu","touchTimer","showing","avoidEmit","configureAnchorEl","getCurrentInstance","proxy","emit","anchorEl","canShow","evt","touches","length","anchorEvents","unconfigureAnchorEl","cleanEvt","setAnchorEl","el","classList","contains","parentNode","pickAnchorEl","$el","document","querySelector","err","console","error","assign","hide","toggle","qAnchorHandled","toggleKey","isKeyCode","contextClick","prevent","nextTick","show","mobileTouch","mobileCleanup","addEvt","setTimeout","remove","clearTimeout","clearSelection","evts","context","$q","platform","is","mobile","watch","val","onMounted","modelValue","onBeforeUnmount","configureScrollTarget","scrollFn","localScrollTarget","changeScrollEvent","scrollTarget","fn","fnProp","fnHandler","window","listenOpts","passive","unconfigureScrollTarget","noParentEventWatcher","notPassiveCapture","registeredList","globalHandler","nodeType","portalIndex","portalList","seamless","i","state","body","innerRef","qClickOutside","onClickOutside","addClickOutside","clickOutsideProps","push","addEventListener","removeClickOutside","index","findIndex","h","splice","removeEventListener","vpLeft","vpTop","validatePosition","pos","parts","split","includes","validateOffset","horizontalPos","parsePosition","rtl","vertical","horizontal","getAnchorProps","offset","getBoundingClientRect","top","left","right","bottom","width","height","middle","center","getTargetProps","offsetHeight","offsetWidth","setPosition","cfg","client","ios","visualViewport","offsetLeft","offsetTop","setProperty","anchorProps","scrollLeft","scrollTop","absoluteOffset","anchorTop","anchorLeft","elStyle","maxHeight","maxWidth","visibility","fit","minWidth","minHeight","targetProps","anchorOrigin","selfOrigin","applyBoundaries","currentHeight","currentWidth","margin","getScrollbarWidth","innerHeight","innerWidth","clientWidth","Math","max","min","anchorY","anchorX","forEach","createComponent","inheritAttrs","useModelToggleProps","useDarkProps","useTransitionProps","persistent","autoClose","separateClosePopup","noRouteDismiss","noRefocus","noFocus","square","String","validator","self","Array","touchPosition","useModelToggleEmits","setup","unwatchPosition","avoidAutoClose","slots","attrs","refocusTarget","vm","hideOnRouteChange","computed","isDark","useDark","useTick","registerTick","removeTick","useTimeout","registerTimeout","removeTimeout","useTransition","transition","transitionStyle","useScrollTarget","useAnchor","useModelToggle","handleShow","handleHide","processOnMount","usePortal","renderPortalContent","showPortal","hidePortal","renderPortal","e","stopAndPrevent","menuClass","onEvents","onClick","onAutoClose","handlesFocus","focus","addFocusFn","node","activeElement","preventScroll","addFocusout","onFocusout","position","screen","updatePosition","blur","click","transitionDuration","anchorCleanup","hiding","removeFocusout","removeEscapeKey","onEscapeKey","getScrollTarget","closePortalMenus","childHasFocus","Transition","appear","tabindex","hSlot","addEscapeKey","breakpoint","Number","popupRef","parseInt","getType","popupProps","onShow","onHide","component","QDialog","QMenu","cache","Map","getCache","key","obj","getCacheWithFn","calendars","useDatetimeProps","required","mask","locale","calendar","v","landscape","textColor","bordered","readonly","useDatetimeEmits","getDayHash","year","pad","month","day","editable","headerClass","cls","join","getLocale","getCurrentDate","dateOnly","d","timeFill","jDate","toJalaali","jy","jm","jd","getFullYear","getMonth","getDate","hour","minute","second","millisecond","yearsInterval","views","viewIsValid","yearMonthValidator","test","lineStr","getMonthHash","useFormProps","multiple","title","subtitle","defaultYearMonth","yearsInMonthView","events","Function","eventColor","emitImmediately","navigationMinYearMonth","navigationMaxYearMonth","noUnset","firstDayOfWeek","todayBtn","minimal","defaultView","lastEmitValue","useCache","useDatetime","formAttrs","useFormAttrs","injectFormInput","useFormInject","blurTargetRef","innerMask","getMask","innerLocale","today","viewModel","getViewModel","view","direction","monthDirection","yearDirection","startYear","editRange","classes","computedColor","computedTextColor","isImmediate","normalizedModel","isArray","daysModel","filter","map","decodeString","dateHash","rangeModel","isObject","getNativeDateFn","model","gDate","toGregorian","gy","gm","gd","encodeObjectFn","formatDate","timezoneOffset","daysInModel","reduce","acc","getDateDiff","headerTitle","init","daysShort","getDay","monthsShort","pluralDay","isNaN","valueOf","minSelectedModel","concat","sort","a","b","maxSelectedModel","headerSubtitle","dateArrow","iconSet","datetime","arrowLeft","arrowRight","reverse","computedFirstDayOfWeek","daysOfWeek","days","first","slice","daysInMonth","jalaaliMonthLength","evtColor","minNav","maxNav","navBoundaries","prev","next","daysMap","entry","hash","rangeMap","hashFrom","hashTo","cur","rangeView","initHash","final","finalHash","fromHash","toHash","viewMonthHash","includeFrom","includeTo","selectionDaysMap","dayHash","eventDaysMap","viewDays","endDay","prevJM","prevJY","res","len","fill","event","in","selected","unelevated","rangeFrom","rangeTo","editRangeFrom","editRangeTo","afterDays","attributes","setToday","addToModel","setCalendarTo","setView","viewMode","offsetCalendar","descending","goToMonth","goToYear","updateViewModel","setEditingRange","__splitDate","getDefaultViewModel","decoded","setYear","setMonth","toggleDate","monthHash","removeFromModel","getShortDate","newHash","emitValue","getEmitParams","reason","details","maxDay","encodeEntry","ranges","updateValue","getHeader","onKeyup","keyCode","QBtn","getNavigation","dir","goTo","boundaries","dense","noCaps","renderViews","Calendar","months","onDayClick","onMouseover","onDayMouseover","Months","currentYear","isDisabled","content","active","unshift","Years","start","stop","years","dayIndex","dayProps","find","payload","def","__exports__","QPopupProxy","QDate","ClosePopup","components","PopupDatePicker","searchingState","IDLE","user","PENDING","created","crypto","randomUUID","setToken","getAvailableRooms","updateMemberToken","then","resp","log","RESOLVED","$refs","submit","catch","REJECTED","$notify","create","message","caption","response","newDate","render","QBar","QCard","QCardSection","QList","QItem","QItemSection","QIcon","QCardActions","getDepth","depth","createDirective","beforeMount","ctx","handler","getPortalVm","closePortals","handlerKey","__qclosepopup","updated","oldValue","beforeUnmount","uncurryThis","requireObjectCoercible","toString","quot","replace","module","exports","string","tag","attribute","S","p1","fails","METHOD_NAME","toLowerCase","role"],"mappings":"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","file":"js/chunk-5566df34.62bebc90.js","sourcesContent":["'use strict';\nvar $ = require('../internals/export');\nvar createHTML = require('../internals/create-html');\nvar forcedStringHTMLMethod = require('../internals/string-html-forced');\n\n// `String.prototype.anchor` method\n// https://tc39.es/ecma262/#sec-string.prototype.anchor\n$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('anchor') }, {\n anchor: function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n }\n});\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./Index.vue?vue&type=style&index=0&id=14172b24&lang=scss&scoped=true\"","\r\n\r\n\r\n\r\n\r\n","\r\n\r\n\r\n","import { listenOpts } from '../event.js'\nimport { portalList } from '../private/portal.js'\n\nlet timer\n\nconst\n { notPassiveCapture } = listenOpts,\n registeredList = []\n\nfunction globalHandler (evt) {\n clearTimeout(timer)\n\n const target = evt.target\n\n if (\n target === void 0\n || target.nodeType === 8\n || target.classList.contains('no-pointer-events') === true\n ) {\n return\n }\n\n // check last portal vm if it's\n // a QDialog and not in seamless mode\n let portalIndex = portalList.length - 1\n\n while (portalIndex >= 0) {\n const proxy = portalList[ portalIndex ].$\n\n if (proxy.type.name !== 'QDialog') {\n break\n }\n\n if (proxy.props.seamless !== true) {\n return\n }\n\n portalIndex--\n }\n\n for (let i = registeredList.length - 1; i >= 0; i--) {\n const state = registeredList[ i ]\n\n if (\n (\n state.anchorEl.value === null\n || state.anchorEl.value.contains(target) === false\n )\n && (\n target === document.body\n || (\n state.innerRef.value !== null\n && state.innerRef.value.contains(target) === false\n )\n )\n ) {\n // mark the event as being processed by clickOutside\n // used to prevent refocus after menu close\n evt.qClickOutside = true\n state.onClickOutside(evt)\n }\n else {\n return\n }\n }\n}\n\nexport function addClickOutside (clickOutsideProps) {\n registeredList.push(clickOutsideProps)\n\n if (registeredList.length === 1) {\n document.addEventListener('mousedown', globalHandler, notPassiveCapture)\n document.addEventListener('touchstart', globalHandler, notPassiveCapture)\n }\n}\n\nexport function removeClickOutside (clickOutsideProps) {\n const index = registeredList.findIndex(h => h === clickOutsideProps)\n\n if (index > -1) {\n registeredList.splice(index, 1)\n\n if (registeredList.length === 0) {\n clearTimeout(timer)\n document.removeEventListener('mousedown', globalHandler, notPassiveCapture)\n document.removeEventListener('touchstart', globalHandler, notPassiveCapture)\n }\n }\n}\n","import { ref, watch, onMounted, onBeforeUnmount, nextTick, getCurrentInstance } from 'vue'\n\nimport { clearSelection } from '../../utils/private/selection.js'\nimport { addEvt, cleanEvt, prevent } from '../../utils/event.js'\nimport { isKeyCode } from '../../utils/private/key-composition.js'\n\nexport const useAnchorProps = {\n target: {\n default: true\n },\n noParentEvent: Boolean,\n contextMenu: Boolean\n}\n\nexport default function ({\n showing,\n avoidEmit, // required for QPopupProxy (true)\n configureAnchorEl // optional\n}) {\n const { props, proxy, emit } = getCurrentInstance()\n\n const anchorEl = ref(null)\n\n let touchTimer\n\n function canShow (evt) {\n // abort with no parent configured or on multi-touch\n return anchorEl.value === null\n ? false\n : (evt === void 0 || evt.touches === void 0 || evt.touches.length <= 1)\n }\n\n const anchorEvents = {}\n\n if (configureAnchorEl === void 0) {\n // default configureAnchorEl is designed for\n // QMenu & QPopupProxy (which is why it's handled here)\n\n Object.assign(anchorEvents, {\n hide (evt) {\n proxy.hide(evt)\n },\n\n toggle (evt) {\n proxy.toggle(evt)\n evt.qAnchorHandled = true\n },\n\n toggleKey (evt) {\n isKeyCode(evt, 13) === true && anchorEvents.toggle(evt)\n },\n\n contextClick (evt) {\n proxy.hide(evt)\n prevent(evt)\n nextTick(() => {\n proxy.show(evt)\n evt.qAnchorHandled = true\n })\n },\n\n prevent,\n\n mobileTouch (evt) {\n anchorEvents.mobileCleanup(evt)\n\n if (canShow(evt) !== true) {\n return\n }\n\n proxy.hide(evt)\n anchorEl.value.classList.add('non-selectable')\n\n const target = evt.target\n addEvt(anchorEvents, 'anchor', [\n [ target, 'touchmove', 'mobileCleanup', 'passive' ],\n [ target, 'touchend', 'mobileCleanup', 'passive' ],\n [ target, 'touchcancel', 'mobileCleanup', 'passive' ],\n [ anchorEl.value, 'contextmenu', 'prevent', 'notPassive' ]\n ])\n\n touchTimer = setTimeout(() => {\n proxy.show(evt)\n evt.qAnchorHandled = true\n }, 300)\n },\n\n mobileCleanup (evt) {\n anchorEl.value.classList.remove('non-selectable')\n clearTimeout(touchTimer)\n\n if (showing.value === true && evt !== void 0) {\n clearSelection()\n }\n }\n })\n\n configureAnchorEl = function (context = props.contextMenu) {\n if (props.noParentEvent === true || anchorEl.value === null) { return }\n\n let evts\n\n if (context === true) {\n if (proxy.$q.platform.is.mobile === true) {\n evts = [\n [ anchorEl.value, 'touchstart', 'mobileTouch', 'passive' ]\n ]\n }\n else {\n evts = [\n [ anchorEl.value, 'mousedown', 'hide', 'passive' ],\n [ anchorEl.value, 'contextmenu', 'contextClick', 'notPassive' ]\n ]\n }\n }\n else {\n evts = [\n [ anchorEl.value, 'click', 'toggle', 'passive' ],\n [ anchorEl.value, 'keyup', 'toggleKey', 'passive' ]\n ]\n }\n\n addEvt(anchorEvents, 'anchor', evts)\n }\n }\n\n function unconfigureAnchorEl () {\n cleanEvt(anchorEvents, 'anchor')\n }\n\n function setAnchorEl (el) {\n anchorEl.value = el\n while (anchorEl.value.classList.contains('q-anchor--skip')) {\n anchorEl.value = anchorEl.value.parentNode\n }\n configureAnchorEl()\n }\n\n function pickAnchorEl () {\n if (props.target === false || props.target === '') {\n anchorEl.value = null\n }\n else if (props.target === true) {\n setAnchorEl(proxy.$el.parentNode)\n }\n else {\n let el = props.target\n\n if (typeof props.target === 'string') {\n try {\n el = document.querySelector(props.target)\n }\n catch (err) {\n el = void 0\n }\n }\n\n if (el !== void 0 && el !== null) {\n anchorEl.value = el.$el || el\n configureAnchorEl()\n }\n else {\n anchorEl.value = null\n console.error(`Anchor: target \"${ props.target }\" not found`)\n }\n }\n }\n\n watch(() => props.contextMenu, val => {\n if (anchorEl.value !== null) {\n unconfigureAnchorEl()\n configureAnchorEl(val)\n }\n })\n\n watch(() => props.target, () => {\n if (anchorEl.value !== null) {\n unconfigureAnchorEl()\n }\n\n pickAnchorEl()\n })\n\n watch(() => props.noParentEvent, val => {\n if (anchorEl.value !== null) {\n if (val === true) {\n unconfigureAnchorEl()\n }\n else {\n configureAnchorEl()\n }\n }\n })\n\n onMounted(() => {\n pickAnchorEl()\n\n if (avoidEmit !== true && props.modelValue === true && anchorEl.value === null) {\n emit('update:modelValue', false)\n }\n })\n\n onBeforeUnmount(() => {\n clearTimeout(touchTimer)\n unconfigureAnchorEl()\n })\n\n return {\n anchorEl,\n canShow,\n anchorEvents\n }\n}\n","import { ref, watch, onBeforeUnmount } from 'vue'\n\nimport { listenOpts } from '../../utils/event.js'\n\nexport default function (\n props,\n configureScrollTarget\n) {\n const localScrollTarget = ref(null)\n let scrollFn\n\n function changeScrollEvent (scrollTarget, fn) {\n const fnProp = `${ fn !== void 0 ? 'add' : 'remove' }EventListener`\n const fnHandler = fn !== void 0 ? fn : scrollFn\n\n if (scrollTarget !== window) {\n scrollTarget[ fnProp ]('scroll', fnHandler, listenOpts.passive)\n }\n\n window[ fnProp ]('scroll', fnHandler, listenOpts.passive)\n\n scrollFn = fn\n }\n\n function unconfigureScrollTarget () {\n if (localScrollTarget.value !== null) {\n changeScrollEvent(localScrollTarget.value)\n localScrollTarget.value = null\n }\n }\n\n const noParentEventWatcher = watch(() => props.noParentEvent, () => {\n if (localScrollTarget.value !== null) {\n unconfigureScrollTarget()\n configureScrollTarget()\n }\n })\n\n onBeforeUnmount(noParentEventWatcher)\n\n return {\n localScrollTarget,\n unconfigureScrollTarget,\n changeScrollEvent\n }\n}\n","import { getScrollbarWidth } from '../scroll.js'\nimport { client } from '../../plugins/Platform.js'\n\nlet vpLeft, vpTop\n\nexport function validatePosition (pos) {\n const parts = pos.split(' ')\n if (parts.length !== 2) {\n return false\n }\n if ([ 'top', 'center', 'bottom' ].includes(parts[ 0 ]) !== true) {\n console.error('Anchor/Self position must start with one of top/center/bottom')\n return false\n }\n if ([ 'left', 'middle', 'right', 'start', 'end' ].includes(parts[ 1 ]) !== true) {\n console.error('Anchor/Self position must end with one of left/middle/right/start/end')\n return false\n }\n return true\n}\n\nexport function validateOffset (val) {\n if (!val) { return true }\n if (val.length !== 2) { return false }\n if (typeof val[ 0 ] !== 'number' || typeof val[ 1 ] !== 'number') {\n return false\n }\n return true\n}\n\nconst horizontalPos = {\n 'start#ltr': 'left',\n 'start#rtl': 'right',\n 'end#ltr': 'right',\n 'end#rtl': 'left'\n}\n\n;[ 'left', 'middle', 'right' ].forEach(pos => {\n horizontalPos[ `${ pos }#ltr` ] = pos\n horizontalPos[ `${ pos }#rtl` ] = pos\n})\n\nexport function parsePosition (pos, rtl) {\n const parts = pos.split(' ')\n return {\n vertical: parts[ 0 ],\n horizontal: horizontalPos[ `${ parts[ 1 ] }#${ rtl === true ? 'rtl' : 'ltr' }` ]\n }\n}\n\nexport function getAnchorProps (el, offset) {\n let { top, left, right, bottom, width, height } = el.getBoundingClientRect()\n\n if (offset !== void 0) {\n top -= offset[ 1 ]\n left -= offset[ 0 ]\n bottom += offset[ 1 ]\n right += offset[ 0 ]\n\n width += offset[ 0 ]\n height += offset[ 1 ]\n }\n\n return {\n top,\n left,\n right,\n bottom,\n width,\n height,\n middle: left + (right - left) / 2,\n center: top + (bottom - top) / 2\n }\n}\n\nexport function getTargetProps (el) {\n return {\n top: 0,\n center: el.offsetHeight / 2,\n bottom: el.offsetHeight,\n left: 0,\n middle: el.offsetWidth / 2,\n right: el.offsetWidth\n }\n}\n\n// cfg: { el, anchorEl, anchorOrigin, selfOrigin, offset, absoluteOffset, cover, fit, maxHeight, maxWidth }\nexport function setPosition (cfg) {\n if (client.is.ios === true && window.visualViewport !== void 0) {\n // uses the q-position-engine CSS class\n\n const el = document.body.style\n const { offsetLeft: left, offsetTop: top } = window.visualViewport\n\n if (left !== vpLeft) {\n el.setProperty('--q-pe-left', left + 'px')\n vpLeft = left\n }\n if (top !== vpTop) {\n el.setProperty('--q-pe-top', top + 'px')\n vpTop = top\n }\n }\n\n let anchorProps\n\n // scroll position might change\n // if max-height/-width changes, so we\n // need to restore it after we calculate\n // the new positioning\n const { scrollLeft, scrollTop } = cfg.el\n\n if (cfg.absoluteOffset === void 0) {\n anchorProps = getAnchorProps(cfg.anchorEl, cfg.cover === true ? [ 0, 0 ] : cfg.offset)\n }\n else {\n const\n { top: anchorTop, left: anchorLeft } = cfg.anchorEl.getBoundingClientRect(),\n top = anchorTop + cfg.absoluteOffset.top,\n left = anchorLeft + cfg.absoluteOffset.left\n\n anchorProps = { top, left, width: 1, height: 1, right: left + 1, center: top, middle: left, bottom: top + 1 }\n }\n\n let elStyle = {\n maxHeight: cfg.maxHeight,\n maxWidth: cfg.maxWidth,\n visibility: 'visible'\n }\n\n if (cfg.fit === true || cfg.cover === true) {\n elStyle.minWidth = anchorProps.width + 'px'\n if (cfg.cover === true) {\n elStyle.minHeight = anchorProps.height + 'px'\n }\n }\n\n Object.assign(cfg.el.style, elStyle)\n\n const\n targetProps = getTargetProps(cfg.el),\n props = {\n top: anchorProps[ cfg.anchorOrigin.vertical ] - targetProps[ cfg.selfOrigin.vertical ],\n left: anchorProps[ cfg.anchorOrigin.horizontal ] - targetProps[ cfg.selfOrigin.horizontal ]\n }\n\n applyBoundaries(props, anchorProps, targetProps, cfg.anchorOrigin, cfg.selfOrigin)\n\n elStyle = {\n top: props.top + 'px',\n left: props.left + 'px'\n }\n\n if (props.maxHeight !== void 0) {\n elStyle.maxHeight = props.maxHeight + 'px'\n\n if (anchorProps.height > props.maxHeight) {\n elStyle.minHeight = elStyle.maxHeight\n }\n }\n if (props.maxWidth !== void 0) {\n elStyle.maxWidth = props.maxWidth + 'px'\n\n if (anchorProps.width > props.maxWidth) {\n elStyle.minWidth = elStyle.maxWidth\n }\n }\n\n Object.assign(cfg.el.style, elStyle)\n\n // restore scroll position\n if (cfg.el.scrollTop !== scrollTop) {\n cfg.el.scrollTop = scrollTop\n }\n if (cfg.el.scrollLeft !== scrollLeft) {\n cfg.el.scrollLeft = scrollLeft\n }\n}\n\nfunction applyBoundaries (props, anchorProps, targetProps, anchorOrigin, selfOrigin) {\n const\n currentHeight = targetProps.bottom,\n currentWidth = targetProps.right,\n margin = getScrollbarWidth(),\n innerHeight = window.innerHeight - margin,\n innerWidth = document.body.clientWidth\n\n if (props.top < 0 || props.top + currentHeight > innerHeight) {\n if (selfOrigin.vertical === 'center') {\n props.top = anchorProps[ anchorOrigin.vertical ] > innerHeight / 2\n ? Math.max(0, innerHeight - currentHeight)\n : 0\n props.maxHeight = Math.min(currentHeight, innerHeight)\n }\n else if (anchorProps[ anchorOrigin.vertical ] > innerHeight / 2) {\n const anchorY = Math.min(\n innerHeight,\n anchorOrigin.vertical === 'center'\n ? anchorProps.center\n : (anchorOrigin.vertical === selfOrigin.vertical ? anchorProps.bottom : anchorProps.top)\n )\n props.maxHeight = Math.min(currentHeight, anchorY)\n props.top = Math.max(0, anchorY - currentHeight)\n }\n else {\n props.top = Math.max(0, anchorOrigin.vertical === 'center'\n ? anchorProps.center\n : (anchorOrigin.vertical === selfOrigin.vertical ? anchorProps.top : anchorProps.bottom)\n )\n props.maxHeight = Math.min(currentHeight, innerHeight - props.top)\n }\n }\n\n if (props.left < 0 || props.left + currentWidth > innerWidth) {\n props.maxWidth = Math.min(currentWidth, innerWidth)\n if (selfOrigin.horizontal === 'middle') {\n props.left = anchorProps[ anchorOrigin.horizontal ] > innerWidth / 2\n ? Math.max(0, innerWidth - currentWidth)\n : 0\n }\n else if (anchorProps[ anchorOrigin.horizontal ] > innerWidth / 2) {\n const anchorX = Math.min(\n innerWidth,\n anchorOrigin.horizontal === 'middle'\n ? anchorProps.middle\n : (anchorOrigin.horizontal === selfOrigin.horizontal ? anchorProps.right : anchorProps.left)\n )\n props.maxWidth = Math.min(currentWidth, anchorX)\n props.left = Math.max(0, anchorX - props.maxWidth)\n }\n else {\n props.left = Math.max(0, anchorOrigin.horizontal === 'middle'\n ? anchorProps.middle\n : (anchorOrigin.horizontal === selfOrigin.horizontal ? anchorProps.left : anchorProps.right)\n )\n props.maxWidth = Math.min(currentWidth, innerWidth - props.left)\n }\n }\n}\n","import { h, ref, computed, watch, Transition, onBeforeUnmount, getCurrentInstance } from 'vue'\n\nimport useAnchor, { useAnchorProps } from '../../composables/private/use-anchor.js'\nimport useScrollTarget from '../../composables/private/use-scroll-target.js'\nimport useModelToggle, { useModelToggleProps, useModelToggleEmits } from '../../composables/private/use-model-toggle.js'\nimport useDark, { useDarkProps } from '../../composables/private/use-dark.js'\nimport usePortal from '../../composables/private/use-portal.js'\nimport useTransition, { useTransitionProps } from '../../composables/private/use-transition.js'\nimport useTick from '../../composables/private/use-tick.js'\nimport useTimeout from '../../composables/private/use-timeout.js'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { closePortalMenus } from '../../utils/private/portal.js'\nimport { getScrollTarget } from '../../utils/scroll.js'\nimport { position, stopAndPrevent } from '../../utils/event.js'\nimport { hSlot } from '../../utils/private/render.js'\nimport { addEscapeKey, removeEscapeKey } from '../../utils/private/escape-key.js'\nimport { addFocusout, removeFocusout } from '../../utils/private/focusout.js'\nimport { childHasFocus } from '../../utils/dom.js'\nimport { addClickOutside, removeClickOutside } from '../../utils/private/click-outside.js'\nimport { addFocusFn } from '../../utils/private/focus-manager.js'\n\nimport {\n validatePosition, validateOffset, setPosition, parsePosition\n} from '../../utils/private/position-engine.js'\n\nexport default createComponent({\n name: 'QMenu',\n\n inheritAttrs: false,\n\n props: {\n ...useAnchorProps,\n ...useModelToggleProps,\n ...useDarkProps,\n ...useTransitionProps,\n\n persistent: Boolean,\n autoClose: Boolean,\n separateClosePopup: Boolean,\n\n noRouteDismiss: Boolean,\n noRefocus: Boolean,\n noFocus: Boolean,\n\n fit: Boolean,\n cover: Boolean,\n\n square: Boolean,\n\n anchor: {\n type: String,\n validator: validatePosition\n },\n self: {\n type: String,\n validator: validatePosition\n },\n offset: {\n type: Array,\n validator: validateOffset\n },\n\n scrollTarget: {\n default: void 0\n },\n\n touchPosition: Boolean,\n\n maxHeight: {\n type: String,\n default: null\n },\n maxWidth: {\n type: String,\n default: null\n }\n },\n\n emits: [\n ...useModelToggleEmits,\n 'click', 'escape-key'\n ],\n\n setup (props, { slots, emit, attrs }) {\n let refocusTarget = null, absoluteOffset, unwatchPosition, avoidAutoClose\n\n const vm = getCurrentInstance()\n const { proxy } = vm\n const { $q } = proxy\n\n const innerRef = ref(null)\n const showing = ref(false)\n\n const hideOnRouteChange = computed(() =>\n props.persistent !== true\n && props.noRouteDismiss !== true\n )\n\n const isDark = useDark(props, $q)\n const { registerTick, removeTick } = useTick()\n const { registerTimeout, removeTimeout } = useTimeout()\n const { transition, transitionStyle } = useTransition(props, showing)\n const { localScrollTarget, changeScrollEvent, unconfigureScrollTarget } = useScrollTarget(props, configureScrollTarget)\n\n const { anchorEl, canShow } = useAnchor({ showing })\n\n const { hide } = useModelToggle({\n showing, canShow, handleShow, handleHide,\n hideOnRouteChange,\n processOnMount: true\n })\n\n const { showPortal, hidePortal, renderPortal } = usePortal(vm, innerRef, renderPortalContent)\n\n const clickOutsideProps = {\n anchorEl,\n innerRef,\n onClickOutside (e) {\n if (props.persistent !== true && showing.value === true) {\n hide(e)\n\n if (\n // always prevent touch event\n e.type === 'touchstart'\n // prevent click if it's on a dialog backdrop\n || e.target.classList.contains('q-dialog__backdrop')\n ) {\n stopAndPrevent(e)\n }\n\n return true\n }\n }\n }\n\n const anchorOrigin = computed(() =>\n parsePosition(\n props.anchor || (\n props.cover === true ? 'center middle' : 'bottom start'\n ),\n $q.lang.rtl\n )\n )\n\n const selfOrigin = computed(() => (\n props.cover === true\n ? anchorOrigin.value\n : parsePosition(props.self || 'top start', $q.lang.rtl)\n ))\n\n const menuClass = computed(() =>\n (props.square === true ? ' q-menu--square' : '')\n + (isDark.value === true ? ' q-menu--dark q-dark' : '')\n )\n\n const onEvents = computed(() => (\n props.autoClose === true\n ? { onClick: onAutoClose }\n : {}\n ))\n\n const handlesFocus = computed(() =>\n showing.value === true && props.persistent !== true\n )\n\n watch(handlesFocus, val => {\n if (val === true) {\n addEscapeKey(onEscapeKey)\n addClickOutside(clickOutsideProps)\n }\n else {\n removeEscapeKey(onEscapeKey)\n removeClickOutside(clickOutsideProps)\n }\n })\n\n function focus () {\n addFocusFn(() => {\n let node = innerRef.value\n\n if (node && node.contains(document.activeElement) !== true) {\n node = node.querySelector('[autofocus], [data-autofocus]') || node\n node.focus({ preventScroll: true })\n }\n })\n }\n\n function handleShow (evt) {\n removeTick()\n removeTimeout()\n\n refocusTarget = props.noRefocus === false\n ? document.activeElement\n : null\n\n addFocusout(onFocusout)\n\n showPortal()\n configureScrollTarget()\n\n absoluteOffset = void 0\n\n if (evt !== void 0 && (props.touchPosition || props.contextMenu)) {\n const pos = position(evt)\n\n if (pos.left !== void 0) {\n const { top, left } = anchorEl.value.getBoundingClientRect()\n absoluteOffset = { left: pos.left - left, top: pos.top - top }\n }\n }\n\n if (unwatchPosition === void 0) {\n unwatchPosition = watch(\n () => $q.screen.width + '|' + $q.screen.height + '|' + props.self + '|' + props.anchor + '|' + $q.lang.rtl,\n updatePosition\n )\n }\n\n if (props.noFocus !== true) {\n document.activeElement.blur()\n }\n\n registerTick(() => {\n updatePosition()\n props.noFocus !== true && focus()\n })\n\n registerTimeout(() => {\n // required in order to avoid the \"double-tap needed\" issue\n if ($q.platform.is.ios === true) {\n // if auto-close, then this click should\n // not close the menu\n avoidAutoClose = props.autoClose\n innerRef.value.click()\n }\n\n updatePosition()\n showPortal(true) // done showing portal\n emit('show', evt)\n }, props.transitionDuration)\n }\n\n function handleHide (evt) {\n removeTick()\n removeTimeout()\n hidePortal()\n\n anchorCleanup(true)\n\n if (\n refocusTarget !== null\n && (\n // menu was hidden from code or ESC plugin\n evt === void 0\n // menu was not closed from a mouse or touch clickOutside\n || evt.qClickOutside !== true\n )\n ) {\n refocusTarget.focus()\n refocusTarget = null\n }\n\n registerTimeout(() => {\n hidePortal(true) // done hiding, now destroy\n emit('hide', evt)\n }, props.transitionDuration)\n }\n\n function anchorCleanup (hiding) {\n absoluteOffset = void 0\n\n if (unwatchPosition !== void 0) {\n unwatchPosition()\n unwatchPosition = void 0\n }\n\n if (hiding === true || showing.value === true) {\n removeFocusout(onFocusout)\n unconfigureScrollTarget()\n removeClickOutside(clickOutsideProps)\n removeEscapeKey(onEscapeKey)\n }\n\n if (hiding !== true) {\n refocusTarget = null\n }\n }\n\n function configureScrollTarget () {\n if (anchorEl.value !== null || props.scrollTarget !== void 0) {\n localScrollTarget.value = getScrollTarget(anchorEl.value, props.scrollTarget)\n changeScrollEvent(localScrollTarget.value, updatePosition)\n }\n }\n\n function onAutoClose (e) {\n // if auto-close, then the ios double-tap fix which\n // issues a click should not close the menu\n if (avoidAutoClose !== true) {\n closePortalMenus(proxy, e)\n emit('click', e)\n }\n else {\n avoidAutoClose = false\n }\n }\n\n function onFocusout (evt) {\n // the focus is not in a vue child component\n if (\n handlesFocus.value === true\n && props.noFocus !== true\n && childHasFocus(innerRef.value, evt.target) !== true\n ) {\n focus()\n }\n }\n\n function onEscapeKey (evt) {\n emit('escape-key')\n hide(evt)\n }\n\n function updatePosition () {\n const el = innerRef.value\n\n if (el === null || anchorEl.value === null) {\n return\n }\n\n setPosition({\n el,\n offset: props.offset,\n anchorEl: anchorEl.value,\n anchorOrigin: anchorOrigin.value,\n selfOrigin: selfOrigin.value,\n absoluteOffset,\n fit: props.fit,\n cover: props.cover,\n maxHeight: props.maxHeight,\n maxWidth: props.maxWidth\n })\n }\n\n function renderPortalContent () {\n return h(\n Transition,\n { name: transition.value, appear: true },\n () => (\n showing.value === true\n ? h('div', {\n ...attrs,\n ref: innerRef,\n tabindex: -1,\n class: [\n 'q-menu q-position-engine scroll' + menuClass.value,\n attrs.class\n ],\n style: [\n attrs.style,\n transitionStyle.value\n ],\n ...onEvents.value\n }, hSlot(slots.default))\n : null\n )\n )\n }\n\n onBeforeUnmount(anchorCleanup)\n\n // expose public methods\n Object.assign(proxy, { focus, updatePosition })\n\n return renderPortal\n }\n})\n","import { h, ref, computed, watch, getCurrentInstance } from 'vue'\n\nimport QDialog from '../dialog/QDialog.js'\nimport QMenu from '../menu/QMenu.js'\n\nimport useAnchor, { useAnchorProps } from '../../composables/private/use-anchor.js'\n\nimport { createComponent } from '../../utils/private/create.js'\n\nexport default createComponent({\n name: 'QPopupProxy',\n\n props: {\n ...useAnchorProps,\n\n breakpoint: {\n type: [ String, Number ],\n default: 450\n }\n },\n\n emits: [ 'show', 'hide' ],\n\n setup (props, { slots, emit, attrs }) {\n const { proxy } = getCurrentInstance()\n const { $q } = proxy\n\n const showing = ref(false)\n const popupRef = ref(null)\n const breakpoint = computed(() => parseInt(props.breakpoint, 10))\n\n const { canShow } = useAnchor({ showing })\n\n function getType () {\n return $q.screen.width < breakpoint.value || $q.screen.height < breakpoint.value\n ? 'dialog'\n : 'menu'\n }\n\n const type = ref(getType())\n\n const popupProps = computed(() => (\n type.value === 'menu' ? { maxHeight: '99vh' } : {})\n )\n\n watch(() => getType(), val => {\n if (showing.value !== true) {\n type.value = val\n }\n })\n\n // expose public methods\n Object.assign(proxy, {\n show (evt) { canShow(evt) === true && popupRef.value.show(evt) },\n hide (evt) { popupRef.value.hide(evt) },\n toggle (evt) { popupRef.value.toggle(evt) }\n })\n\n function onShow (evt) {\n showing.value = true\n emit('show', evt)\n }\n\n function onHide (evt) {\n showing.value = false\n type.value = getType()\n emit('hide', evt)\n }\n\n return () => {\n const data = {\n ref: popupRef,\n ...popupProps.value,\n ...attrs,\n onShow,\n onHide\n }\n\n let component\n\n if (type.value === 'dialog') {\n component = QDialog\n }\n else {\n component = QMenu\n Object.assign(data, {\n target: props.target,\n contextMenu: props.contextMenu,\n noParentEvent: true,\n separateClosePopup: true\n })\n }\n\n return h(component, data, slots.default)\n }\n }\n})\n","export default function () {\n const cache = new Map()\n\n return {\n getCache: __QUASAR_SSR_SERVER__\n ? function (_, obj) { return obj }\n : function (key, obj) {\n return cache[ key ] === void 0\n ? (cache[ key ] = obj)\n : cache[ key ]\n },\n\n getCacheWithFn: __QUASAR_SSR_SERVER__\n ? function (_, fn) { return fn() }\n : function (key, fn) {\n return cache[ key ] === void 0\n ? (cache[ key ] = fn())\n : cache[ key ]\n }\n }\n}\n","import { computed } from 'vue'\n\nimport { toJalaali } from '../../utils/private/date-persian.js'\nimport { pad } from '../../utils/format.js'\n\nconst calendars = [ 'gregorian', 'persian' ]\n\nexport const useDatetimeProps = {\n modelValue: {\n required: true\n },\n\n mask: {\n type: String\n },\n locale: Object,\n\n calendar: {\n type: String,\n validator: v => calendars.includes(v),\n default: 'gregorian'\n },\n\n landscape: Boolean,\n\n color: String,\n textColor: String,\n\n square: Boolean,\n flat: Boolean,\n bordered: Boolean,\n\n readonly: Boolean,\n disable: Boolean\n}\n\nexport const useDatetimeEmits = [ 'update:modelValue' ]\n\nexport function getDayHash (date) {\n return date.year + '/' + pad(date.month) + '/' + pad(date.day)\n}\n\nexport default function (props, $q) {\n const editable = computed(() => {\n return props.disable !== true && props.readonly !== true\n })\n\n const tabindex = computed(() => {\n return props.editable === true ? 0 : -1\n })\n\n const headerClass = computed(() => {\n const cls = []\n props.color !== void 0 && cls.push(`bg-${ props.color }`)\n props.textColor !== void 0 && cls.push(`text-${ props.textColor }`)\n return cls.join(' ')\n })\n\n function getLocale () {\n return props.locale !== void 0\n ? { ...$q.lang.date, ...props.locale }\n : $q.lang.date\n }\n\n function getCurrentDate (dateOnly) {\n const d = new Date()\n const timeFill = dateOnly === true ? null : 0\n\n if (props.calendar === 'persian') {\n const jDate = toJalaali(d)\n return {\n year: jDate.jy,\n month: jDate.jm,\n day: jDate.jd\n }\n }\n\n return {\n year: d.getFullYear(),\n month: d.getMonth() + 1,\n day: d.getDate(),\n hour: timeFill,\n minute: timeFill,\n second: timeFill,\n millisecond: timeFill\n }\n }\n\n return {\n editable,\n tabindex,\n headerClass,\n\n getLocale,\n getCurrentDate\n }\n}\n","import { h, ref, computed, watch, Transition, nextTick, getCurrentInstance } from 'vue'\n\nimport QBtn from '../btn/QBtn.js'\n\nimport useDark, { useDarkProps } from '../../composables/private/use-dark.js'\nimport useCache from '../../composables/private/use-cache.js'\nimport { useFormProps, useFormAttrs, useFormInject } from '../../composables/private/use-form.js'\nimport useDatetime, { useDatetimeProps, useDatetimeEmits, getDayHash } from './use-datetime.js'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { hSlot } from '../../utils/private/render.js'\nimport { formatDate, __splitDate, getDateDiff } from '../../utils/date.js'\nimport { pad } from '../../utils/format.js'\nimport { jalaaliMonthLength, toGregorian } from '../../utils/private/date-persian.js'\nimport { isObject } from '../../utils/private/is.js'\n\nconst yearsInterval = 20\nconst views = [ 'Calendar', 'Years', 'Months' ]\nconst viewIsValid = v => views.includes(v)\nconst yearMonthValidator = v => /^-?[\\d]+\\/[0-1]\\d$/.test(v)\nconst lineStr = ' \\u2014 '\n\nfunction getMonthHash (date) {\n return date.year + '/' + pad(date.month)\n}\n\nexport default createComponent({\n name: 'QDate',\n\n props: {\n ...useDatetimeProps,\n ...useFormProps,\n ...useDarkProps,\n\n multiple: Boolean,\n range: Boolean,\n\n title: String,\n subtitle: String,\n\n mask: {\n // this mask is forced\n // when using persian calendar\n default: 'YYYY/MM/DD'\n },\n\n defaultYearMonth: {\n type: String,\n validator: yearMonthValidator\n },\n\n yearsInMonthView: Boolean,\n\n events: [ Array, Function ],\n eventColor: [ String, Function ],\n\n emitImmediately: Boolean,\n\n options: [ Array, Function ],\n\n navigationMinYearMonth: {\n type: String,\n validator: yearMonthValidator\n },\n\n navigationMaxYearMonth: {\n type: String,\n validator: yearMonthValidator\n },\n\n noUnset: Boolean,\n\n firstDayOfWeek: [ String, Number ],\n todayBtn: Boolean,\n minimal: Boolean,\n defaultView: {\n type: String,\n default: 'Calendar',\n validator: viewIsValid\n }\n },\n\n emits: [\n ...useDatetimeEmits,\n 'range-start', 'range-end', 'navigation'\n ],\n\n setup (props, { slots, emit }) {\n const { proxy } = getCurrentInstance()\n const { $q } = proxy\n\n const isDark = useDark(props, $q)\n const { getCache } = useCache()\n const { tabindex, headerClass, getLocale, getCurrentDate } = useDatetime(props, $q)\n\n let lastEmitValue\n\n const formAttrs = useFormAttrs(props)\n const injectFormInput = useFormInject(formAttrs)\n\n const blurTargetRef = ref(null)\n const innerMask = ref(getMask())\n const innerLocale = ref(getLocale())\n\n const mask = computed(() => getMask())\n const locale = computed(() => getLocale())\n\n const today = computed(() => getCurrentDate())\n\n // model of current calendar view:\n const viewModel = ref(getViewModel(innerMask.value, innerLocale.value))\n\n const view = ref(props.defaultView)\n\n const direction = $q.lang.rtl === true ? 'right' : 'left'\n const monthDirection = ref(direction.value)\n const yearDirection = ref(direction.value)\n\n const year = viewModel.value.year\n const startYear = ref(year - (year % yearsInterval) - (year < 0 ? yearsInterval : 0))\n const editRange = ref(null)\n\n const classes = computed(() => {\n const type = props.landscape === true ? 'landscape' : 'portrait'\n return `q-date q-date--${ type } q-date--${ type }-${ props.minimal === true ? 'minimal' : 'standard' }`\n + (isDark.value === true ? ' q-date--dark q-dark' : '')\n + (props.bordered === true ? ' q-date--bordered' : '')\n + (props.square === true ? ' q-date--square no-border-radius' : '')\n + (props.flat === true ? ' q-date--flat no-shadow' : '')\n + (props.disable === true ? ' disabled' : (props.readonly === true ? ' q-date--readonly' : ''))\n })\n\n const computedColor = computed(() => {\n return props.color || 'primary'\n })\n\n const computedTextColor = computed(() => {\n return props.textColor || 'white'\n })\n\n const isImmediate = computed(() =>\n props.emitImmediately === true\n && props.multiple !== true\n && props.range !== true\n )\n\n const normalizedModel = computed(() => (\n Array.isArray(props.modelValue) === true\n ? props.modelValue\n : (props.modelValue !== null && props.modelValue !== void 0 ? [ props.modelValue ] : [])\n ))\n\n const daysModel = computed(() =>\n normalizedModel.value\n .filter(date => typeof date === 'string')\n .map(date => decodeString(date, innerMask.value, innerLocale.value))\n .filter(date =>\n date.dateHash !== null\n && date.day !== null\n && date.month !== null\n && date.year !== null\n )\n )\n\n const rangeModel = computed(() => {\n const fn = date => decodeString(date, innerMask.value, innerLocale.value)\n return normalizedModel.value\n .filter(date => isObject(date) === true && date.from !== void 0 && date.to !== void 0)\n .map(range => ({ from: fn(range.from), to: fn(range.to) }))\n .filter(range => range.from.dateHash !== null && range.to.dateHash !== null && range.from.dateHash < range.to.dateHash)\n })\n\n const getNativeDateFn = computed(() => (\n props.calendar !== 'persian'\n ? model => new Date(model.year, model.month - 1, model.day)\n : model => {\n const gDate = toGregorian(model.year, model.month, model.day)\n return new Date(gDate.gy, gDate.gm - 1, gDate.gd)\n }\n ))\n\n const encodeObjectFn = computed(() => (\n props.calendar === 'persian'\n ? getDayHash\n : (date, mask, locale) => formatDate(\n new Date(\n date.year,\n date.month - 1,\n date.day,\n date.hour,\n date.minute,\n date.second,\n date.millisecond\n ),\n mask === void 0 ? innerMask.value : mask,\n locale === void 0 ? innerLocale.value : locale,\n date.year,\n date.timezoneOffset\n )\n ))\n\n const daysInModel = computed(() =>\n daysModel.value.length + rangeModel.value.reduce(\n (acc, range) => acc + 1 + getDateDiff(\n getNativeDateFn.value(range.to),\n getNativeDateFn.value(range.from)\n ),\n 0\n )\n )\n\n const headerTitle = computed(() => {\n if (props.title !== void 0 && props.title !== null && props.title.length > 0) {\n return props.title\n }\n\n if (editRange.value !== null) {\n const model = editRange.value.init\n const date = getNativeDateFn.value(model)\n\n return innerLocale.value.daysShort[ date.getDay() ] + ', '\n + innerLocale.value.monthsShort[ model.month - 1 ] + ' '\n + model.day + lineStr + '?'\n }\n\n if (daysInModel.value === 0) {\n return lineStr\n }\n\n if (daysInModel.value > 1) {\n return `${ daysInModel.value } ${ innerLocale.value.pluralDay }`\n }\n\n const model = daysModel.value[ 0 ]\n const date = getNativeDateFn.value(model)\n\n if (isNaN(date.valueOf()) === true) {\n return lineStr\n }\n\n if (innerLocale.value.headerTitle !== void 0) {\n return innerLocale.value.headerTitle(date, model)\n }\n\n return innerLocale.value.daysShort[ date.getDay() ] + ', '\n + innerLocale.value.monthsShort[ model.month - 1 ] + ' '\n + model.day\n })\n\n const minSelectedModel = computed(() => {\n const model = daysModel.value.concat(rangeModel.value.map(range => range.from))\n .sort((a, b) => a.year - b.year || a.month - b.month)\n\n return model[ 0 ]\n })\n\n const maxSelectedModel = computed(() => {\n const model = daysModel.value.concat(rangeModel.value.map(range => range.to))\n .sort((a, b) => b.year - a.year || b.month - a.month)\n\n return model[ 0 ]\n })\n\n const headerSubtitle = computed(() => {\n if (props.subtitle !== void 0 && props.subtitle !== null && props.subtitle.length > 0) {\n return props.subtitle\n }\n\n if (daysInModel.value === 0) {\n return lineStr\n }\n\n if (daysInModel.value > 1) {\n const from = minSelectedModel.value\n const to = maxSelectedModel.value\n const month = innerLocale.value.monthsShort\n\n return month[ from.month - 1 ] + (\n from.year !== to.year\n ? ' ' + from.year + lineStr + month[ to.month - 1 ] + ' '\n : (\n from.month !== to.month\n ? lineStr + month[ to.month - 1 ]\n : ''\n )\n ) + ' ' + to.year\n }\n\n return daysModel.value[ 0 ].year\n })\n\n const dateArrow = computed(() => {\n const val = [ $q.iconSet.datetime.arrowLeft, $q.iconSet.datetime.arrowRight ]\n return $q.lang.rtl === true ? val.reverse() : val\n })\n\n const computedFirstDayOfWeek = computed(() => (\n props.firstDayOfWeek !== void 0\n ? Number(props.firstDayOfWeek)\n : innerLocale.value.firstDayOfWeek\n ))\n\n const daysOfWeek = computed(() => {\n const\n days = innerLocale.value.daysShort,\n first = computedFirstDayOfWeek.value\n\n return first > 0\n ? days.slice(first, 7).concat(days.slice(0, first))\n : days\n })\n\n const daysInMonth = computed(() => {\n const date = viewModel.value\n return props.calendar !== 'persian'\n ? (new Date(date.year, date.month, 0)).getDate()\n : jalaaliMonthLength(date.year, date.month)\n })\n\n const evtColor = computed(() => (\n typeof props.eventColor === 'function'\n ? props.eventColor\n : () => props.eventColor\n ))\n\n const minNav = computed(() => {\n if (props.navigationMinYearMonth === void 0) {\n return null\n }\n\n const data = props.navigationMinYearMonth.split('/')\n return { year: parseInt(data[ 0 ], 10), month: parseInt(data[ 1 ], 10) }\n })\n\n const maxNav = computed(() => {\n if (props.navigationMaxYearMonth === void 0) {\n return null\n }\n\n const data = props.navigationMaxYearMonth.split('/')\n return { year: parseInt(data[ 0 ], 10), month: parseInt(data[ 1 ], 10) }\n })\n\n const navBoundaries = computed(() => {\n const data = {\n month: { prev: true, next: true },\n year: { prev: true, next: true }\n }\n\n if (minNav.value !== null && minNav.value.year >= viewModel.value.year) {\n data.year.prev = false\n if (minNav.value.year === viewModel.value.year && minNav.value.month >= viewModel.value.month) {\n data.month.prev = false\n }\n }\n\n if (maxNav.value !== null && maxNav.value.year <= viewModel.value.year) {\n data.year.next = false\n if (maxNav.value.year === viewModel.value.year && maxNav.value.month <= viewModel.value.month) {\n data.month.next = false\n }\n }\n\n return data\n })\n\n const daysMap = computed(() => {\n const map = {}\n\n daysModel.value.forEach(entry => {\n const hash = getMonthHash(entry)\n\n if (map[ hash ] === void 0) {\n map[ hash ] = []\n }\n\n map[ hash ].push(entry.day)\n })\n\n return map\n })\n\n const rangeMap = computed(() => {\n const map = {}\n\n rangeModel.value.forEach(entry => {\n const hashFrom = getMonthHash(entry.from)\n const hashTo = getMonthHash(entry.to)\n\n if (map[ hashFrom ] === void 0) {\n map[ hashFrom ] = []\n }\n\n map[ hashFrom ].push({\n from: entry.from.day,\n to: hashFrom === hashTo ? entry.to.day : void 0,\n range: entry\n })\n\n if (hashFrom < hashTo) {\n let hash\n const { year, month } = entry.from\n const cur = month < 12\n ? { year, month: month + 1 }\n : { year: year + 1, month: 1 }\n\n while ((hash = getMonthHash(cur)) <= hashTo) {\n if (map[ hash ] === void 0) {\n map[ hash ] = []\n }\n\n map[ hash ].push({\n from: void 0,\n to: hash === hashTo ? entry.to.day : void 0,\n range: entry\n })\n\n cur.month++\n if (cur.month > 12) {\n cur.year++\n cur.month = 1\n }\n }\n }\n })\n\n return map\n })\n\n const rangeView = computed(() => {\n if (editRange.value === null) {\n return\n }\n\n const { init, initHash, final, finalHash } = editRange.value\n\n const [ from, to ] = initHash <= finalHash\n ? [ init, final ]\n : [ final, init ]\n\n const fromHash = getMonthHash(from)\n const toHash = getMonthHash(to)\n\n if (fromHash !== viewMonthHash.value && toHash !== viewMonthHash.value) {\n return\n }\n\n const view = {}\n\n if (fromHash === viewMonthHash.value) {\n view.from = from.day\n view.includeFrom = true\n }\n else {\n view.from = 1\n }\n\n if (toHash === viewMonthHash.value) {\n view.to = to.day\n view.includeTo = true\n }\n else {\n view.to = daysInMonth.value\n }\n\n return view\n })\n\n const viewMonthHash = computed(() => getMonthHash(viewModel.value))\n\n const selectionDaysMap = computed(() => {\n const map = {}\n\n if (props.options === void 0) {\n for (let i = 1; i <= daysInMonth.value; i++) {\n map[ i ] = true\n }\n\n return map\n }\n\n const fn = typeof props.options === 'function'\n ? props.options\n : date => props.options.includes(date)\n\n for (let i = 1; i <= daysInMonth.value; i++) {\n const dayHash = viewMonthHash.value + '/' + pad(i)\n map[ i ] = fn(dayHash)\n }\n\n return map\n })\n\n const eventDaysMap = computed(() => {\n const map = {}\n\n if (props.events === void 0) {\n for (let i = 1; i <= daysInMonth.value; i++) {\n map[ i ] = false\n }\n }\n else {\n const fn = typeof props.events === 'function'\n ? props.events\n : date => props.events.includes(date)\n\n for (let i = 1; i <= daysInMonth.value; i++) {\n const dayHash = viewMonthHash.value + '/' + pad(i)\n map[ i ] = fn(dayHash) === true && evtColor.value(dayHash)\n }\n }\n\n return map\n })\n\n const viewDays = computed(() => {\n let date, endDay\n const { year, month } = viewModel.value\n\n if (props.calendar !== 'persian') {\n date = new Date(year, month - 1, 1)\n endDay = (new Date(year, month - 1, 0)).getDate()\n }\n else {\n const gDate = toGregorian(year, month, 1)\n date = new Date(gDate.gy, gDate.gm - 1, gDate.gd)\n let prevJM = month - 1\n let prevJY = year\n if (prevJM === 0) {\n prevJM = 12\n prevJY--\n }\n endDay = jalaaliMonthLength(prevJY, prevJM)\n }\n\n return {\n days: date.getDay() - computedFirstDayOfWeek.value - 1,\n endDay\n }\n })\n\n const days = computed(() => {\n const res = []\n const { days, endDay } = viewDays.value\n\n const len = days < 0 ? days + 7 : days\n if (len < 6) {\n for (let i = endDay - len; i <= endDay; i++) {\n res.push({ i, fill: true })\n }\n }\n\n const index = res.length\n\n for (let i = 1; i <= daysInMonth.value; i++) {\n const day = { i, event: eventDaysMap.value[ i ], classes: [] }\n\n if (selectionDaysMap.value[ i ] === true) {\n day.in = true\n day.flat = true\n }\n\n res.push(day)\n }\n\n // if current view has days in model\n if (daysMap.value[ viewMonthHash.value ] !== void 0) {\n daysMap.value[ viewMonthHash.value ].forEach(day => {\n const i = index + day - 1\n Object.assign(res[ i ], {\n selected: true,\n unelevated: true,\n flat: false,\n color: computedColor.value,\n textColor: computedTextColor.value\n })\n })\n }\n\n // if current view has ranges in model\n if (rangeMap.value[ viewMonthHash.value ] !== void 0) {\n rangeMap.value[ viewMonthHash.value ].forEach(entry => {\n if (entry.from !== void 0) {\n const from = index + entry.from - 1\n const to = index + (entry.to || daysInMonth.value) - 1\n\n for (let day = from; day <= to; day++) {\n Object.assign(res[ day ], {\n range: entry.range,\n unelevated: true,\n color: computedColor.value,\n textColor: computedTextColor.value\n })\n }\n\n Object.assign(res[ from ], {\n rangeFrom: true,\n flat: false\n })\n\n entry.to !== void 0 && Object.assign(res[ to ], {\n rangeTo: true,\n flat: false\n })\n }\n else if (entry.to !== void 0) {\n const to = index + entry.to - 1\n\n for (let day = index; day <= to; day++) {\n Object.assign(res[ day ], {\n range: entry.range,\n unelevated: true,\n color: computedColor.value,\n textColor: computedTextColor.value\n })\n }\n\n Object.assign(res[ to ], {\n flat: false,\n rangeTo: true\n })\n }\n else {\n const to = index + daysInMonth.value - 1\n for (let day = index; day <= to; day++) {\n Object.assign(res[ day ], {\n range: entry.range,\n unelevated: true,\n color: computedColor.value,\n textColor: computedTextColor.value\n })\n }\n }\n })\n }\n\n if (rangeView.value !== void 0) {\n const from = index + rangeView.value.from - 1\n const to = index + rangeView.value.to - 1\n\n for (let day = from; day <= to; day++) {\n res[ day ].color = computedColor.value\n res[ day ].editRange = true\n }\n\n if (rangeView.value.includeFrom === true) {\n res[ from ].editRangeFrom = true\n }\n if (rangeView.value.includeTo === true) {\n res[ to ].editRangeTo = true\n }\n }\n\n if (viewModel.value.year === today.value.year && viewModel.value.month === today.value.month) {\n res[ index + today.value.day - 1 ].today = true\n }\n\n const left = res.length % 7\n if (left > 0) {\n const afterDays = 7 - left\n for (let i = 1; i <= afterDays; i++) {\n res.push({ i, fill: true })\n }\n }\n\n res.forEach(day => {\n let cls = 'q-date__calendar-item '\n\n if (day.fill === true) {\n cls += 'q-date__calendar-item--fill'\n }\n else {\n cls += `q-date__calendar-item--${ day.in === true ? 'in' : 'out' }`\n\n if (day.range !== void 0) {\n cls += ` q-date__range${ day.rangeTo === true ? '-to' : (day.rangeFrom === true ? '-from' : '') }`\n }\n\n if (day.editRange === true) {\n cls += ` q-date__edit-range${ day.editRangeFrom === true ? '-from' : '' }${ day.editRangeTo === true ? '-to' : '' }`\n }\n\n if (day.range !== void 0 || day.editRange === true) {\n cls += ` text-${ day.color }`\n }\n }\n\n day.classes = cls\n })\n\n return res\n })\n\n const attributes = computed(() => (\n props.disable === true\n ? { 'aria-disabled': 'true' }\n : (props.readonly === true ? { 'aria-readonly': 'true' } : {})\n ))\n\n watch(() => props.modelValue, v => {\n if (lastEmitValue === v) {\n lastEmitValue = 0\n }\n else {\n const { year, month } = getViewModel(innerMask.value, innerLocale.value)\n updateViewModel(year, month)\n }\n })\n\n watch(view, () => {\n blurTargetRef.value !== null && blurTargetRef.value.focus()\n })\n\n watch(() => viewModel.value.year, year => {\n emit('navigation', { year, month: viewModel.value.month })\n })\n\n watch(() => viewModel.value.month, month => {\n emit('navigation', { year: viewModel.value.year, month })\n })\n\n watch(mask, val => {\n updateValue(val, innerLocale.value, 'mask')\n innerMask.value = val\n })\n\n watch(locale, val => {\n updateValue(innerMask.value, val, 'locale')\n innerLocale.value = val\n })\n\n function setToday () {\n const date = today.value\n const month = daysMap.value[ getMonthHash(date) ]\n\n if (month === void 0 || month.includes(date.day) === false) {\n addToModel(date)\n }\n\n setCalendarTo(date.year, date.month)\n }\n\n function setView (viewMode) {\n if (viewIsValid(viewMode) === true) {\n view.value = viewMode\n }\n }\n\n function offsetCalendar (type, descending) {\n if ([ 'month', 'year' ].includes(type)) {\n const fn = type === 'month' ? goToMonth : goToYear\n fn(descending === true ? -1 : 1)\n }\n }\n\n function setCalendarTo (year, month) {\n view.value = 'Calendar'\n updateViewModel(year, month)\n }\n\n function setEditingRange (from, to) {\n if (props.range === false || !from) {\n editRange.value = null\n return\n }\n\n const init = Object.assign({ ...viewModel.value }, from)\n const final = to !== void 0\n ? Object.assign({ ...viewModel.value }, to)\n : init\n\n editRange.value = {\n init,\n initHash: getDayHash(init),\n final,\n finalHash: getDayHash(final)\n }\n\n setCalendarTo(init.year, init.month)\n }\n\n function getMask () {\n return props.calendar === 'persian' ? 'YYYY/MM/DD' : props.mask\n }\n\n function decodeString (date, mask, locale) {\n return __splitDate(\n date,\n mask,\n locale,\n props.calendar,\n {\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }\n )\n }\n\n function getViewModel (mask, locale) {\n const model = Array.isArray(props.modelValue) === true\n ? props.modelValue\n : (props.modelValue ? [ props.modelValue ] : [])\n\n if (model.length === 0) {\n return getDefaultViewModel()\n }\n\n const target = model[ model.length - 1 ]\n const decoded = decodeString(\n target.from !== void 0 ? target.from : target,\n mask,\n locale\n )\n\n return decoded.dateHash === null\n ? getDefaultViewModel()\n : decoded\n }\n\n function getDefaultViewModel () {\n let year, month\n\n if (props.defaultYearMonth !== void 0) {\n const d = props.defaultYearMonth.split('/')\n year = parseInt(d[ 0 ], 10)\n month = parseInt(d[ 1 ], 10)\n }\n else {\n // may come from data() where computed\n // props are not yet available\n const d = today.value !== void 0\n ? today.value\n : getCurrentDate()\n\n year = d.year\n month = d.month\n }\n\n return {\n year,\n month,\n day: 1,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0,\n dateHash: year + '/' + pad(month) + '/01'\n }\n }\n\n function goToMonth (offset) {\n let year = viewModel.value.year\n let month = Number(viewModel.value.month) + offset\n\n if (month === 13) {\n month = 1\n year++\n }\n else if (month === 0) {\n month = 12\n year--\n }\n\n updateViewModel(year, month)\n isImmediate.value === true && emitImmediately('month')\n }\n\n function goToYear (offset) {\n const year = Number(viewModel.value.year) + offset\n updateViewModel(year, viewModel.value.month)\n isImmediate.value === true && emitImmediately('year')\n }\n\n function setYear (year) {\n updateViewModel(year, viewModel.value.month)\n view.value = props.defaultView === 'Years' ? 'Months' : 'Calendar'\n isImmediate.value === true && emitImmediately('year')\n }\n\n function setMonth (month) {\n updateViewModel(viewModel.value.year, month)\n view.value = 'Calendar'\n isImmediate.value === true && emitImmediately('month')\n }\n\n function toggleDate (date, monthHash) {\n const month = daysMap.value[ monthHash ]\n const fn = month !== void 0 && month.includes(date.day) === true\n ? removeFromModel\n : addToModel\n\n fn(date)\n }\n\n function getShortDate (date) {\n return { year: date.year, month: date.month, day: date.day }\n }\n\n function updateViewModel (year, month) {\n if (minNav.value !== null && year <= minNav.value.year) {\n year = minNav.value.year\n if (month < minNav.value.month) {\n month = minNav.value.month\n }\n }\n\n if (maxNav.value !== null && year >= maxNav.value.year) {\n year = maxNav.value.year\n if (month > maxNav.value.month) {\n month = maxNav.value.month\n }\n }\n\n const newHash = year + '/' + pad(month) + '/01'\n\n if (newHash !== viewModel.value.dateHash) {\n monthDirection.value = (viewModel.value.dateHash < newHash) === ($q.lang.rtl !== true) ? 'left' : 'right'\n if (year !== viewModel.value.year) {\n yearDirection.value = monthDirection.value\n }\n\n nextTick(() => {\n startYear.value = year - year % yearsInterval - (year < 0 ? yearsInterval : 0)\n Object.assign(viewModel.value, {\n year,\n month,\n day: 1,\n dateHash: newHash\n })\n })\n }\n }\n\n function emitValue (val, action, date) {\n const value = val !== null && val.length === 1 && props.multiple === false\n ? val[ 0 ]\n : val\n\n lastEmitValue = value\n\n const { reason, details } = getEmitParams(action, date)\n emit('update:modelValue', value, reason, details)\n }\n\n function emitImmediately (reason) {\n const date = daysModel.value[ 0 ] !== void 0 && daysModel.value[ 0 ].dateHash !== null\n ? { ...daysModel.value[ 0 ] }\n : { ...viewModel.value } // inherit day, hours, minutes, milliseconds...\n\n // nextTick required because of animation delay in viewModel\n nextTick(() => {\n date.year = viewModel.value.year\n date.month = viewModel.value.month\n\n const maxDay = props.calendar !== 'persian'\n ? (new Date(date.year, date.month, 0)).getDate()\n : jalaaliMonthLength(date.year, date.month)\n\n date.day = Math.min(Math.max(1, date.day), maxDay)\n\n const value = encodeEntry(date)\n lastEmitValue = value\n\n const { details } = getEmitParams('', date)\n emit('update:modelValue', value, reason, details)\n })\n }\n\n function getEmitParams (action, date) {\n return date.from !== void 0\n ? {\n reason: `${ action }-range`,\n details: {\n ...getShortDate(date.target),\n from: getShortDate(date.from),\n to: getShortDate(date.to)\n }\n }\n : {\n reason: `${ action }-day`,\n details: getShortDate(date)\n }\n }\n\n function encodeEntry (date, mask, locale) {\n return date.from !== void 0\n ? { from: encodeObjectFn.value(date.from, mask, locale), to: encodeObjectFn.value(date.to, mask, locale) }\n : encodeObjectFn.value(date, mask, locale)\n }\n\n function addToModel (date) {\n let value\n\n if (props.multiple === true) {\n if (date.from !== void 0) {\n // we also need to filter out intersections\n\n const fromHash = getDayHash(date.from)\n const toHash = getDayHash(date.to)\n\n const days = daysModel.value\n .filter(day => day.dateHash < fromHash || day.dateHash > toHash)\n\n const ranges = rangeModel.value\n .filter(({ from, to }) => to.dateHash < fromHash || from.dateHash > toHash)\n\n value = days.concat(ranges).concat(date).map(entry => encodeEntry(entry))\n }\n else {\n const model = normalizedModel.value.slice()\n model.push(encodeEntry(date))\n value = model\n }\n }\n else {\n value = encodeEntry(date)\n }\n\n emitValue(value, 'add', date)\n }\n\n function removeFromModel (date) {\n if (props.noUnset === true) {\n return\n }\n\n let model = null\n\n if (props.multiple === true && Array.isArray(props.modelValue) === true) {\n const val = encodeEntry(date)\n\n if (date.from !== void 0) {\n model = props.modelValue.filter(\n date => (\n date.from !== void 0\n ? (date.from !== val.from && date.to !== val.to)\n : true\n )\n )\n }\n else {\n model = props.modelValue.filter(date => date !== val)\n }\n\n if (model.length === 0) {\n model = null\n }\n }\n\n emitValue(model, 'remove', date)\n }\n\n function updateValue (mask, locale, reason) {\n const model = daysModel.value\n .concat(rangeModel.value)\n .map(entry => encodeEntry(entry, mask, locale))\n .filter(entry => {\n return entry.from !== void 0\n ? entry.from.dateHash !== null && entry.to.dateHash !== null\n : entry.dateHash !== null\n })\n\n emit('update:modelValue', (props.multiple === true ? model : model[ 0 ]) || null, reason)\n }\n\n // expose public methods\n Object.assign(proxy, {\n setToday, setView, offsetCalendar, setCalendarTo, setEditingRange\n })\n\n function getHeader () {\n if (props.minimal === true) { return }\n\n return h('div', {\n class: 'q-date__header ' + headerClass.value\n }, [\n h('div', {\n class: 'relative-position'\n }, [\n h(Transition, {\n name: 'q-transition--fade'\n }, () => h('div', {\n key: 'h-yr-' + headerSubtitle.value,\n class: 'q-date__header-subtitle q-date__header-link '\n + (view.value === 'Years' ? 'q-date__header-link--active' : 'cursor-pointer'),\n tabindex: tabindex.value,\n ...getCache('vY', {\n onClick () { view.value = 'Years' },\n onKeyup (e) { e.keyCode === 13 && (view.value = 'Years') }\n })\n }, [ headerSubtitle.value ]))\n ]),\n\n h('div', {\n class: 'q-date__header-title relative-position flex no-wrap'\n }, [\n h('div', {\n class: 'relative-position col'\n }, [\n h(Transition, {\n name: 'q-transition--fade'\n }, () => h('div', {\n key: 'h-sub' + headerTitle.value,\n class: 'q-date__header-title-label q-date__header-link '\n + (view.value === 'Calendar' ? 'q-date__header-link--active' : 'cursor-pointer'),\n tabindex: tabindex.value,\n ...getCache('vC', {\n onClick () { view.value = 'Calendar' },\n onKeyup (e) { e.keyCode === 13 && (view.value = 'Calendar') }\n })\n }, [ headerTitle.value ]))\n ]),\n\n props.todayBtn === true ? h(QBtn, {\n class: 'q-date__header-today self-start',\n icon: $q.iconSet.datetime.today,\n flat: true,\n size: 'sm',\n round: true,\n tabindex: tabindex.value,\n onClick: setToday\n }) : null\n ])\n ])\n }\n\n function getNavigation ({ label, type, key, dir, goTo, boundaries, cls }) {\n return [\n h('div', {\n class: 'row items-center q-date__arrow'\n }, [\n h(QBtn, {\n round: true,\n dense: true,\n size: 'sm',\n flat: true,\n icon: dateArrow.value[ 0 ],\n tabindex: tabindex.value,\n disable: boundaries.prev === false,\n ...getCache('go-#' + type, { onClick () { goTo(-1) } })\n })\n ]),\n\n h('div', {\n class: 'relative-position overflow-hidden flex flex-center' + cls\n }, [\n h(Transition, {\n name: 'q-transition--jump-' + dir\n }, () => h('div', { key }, [\n h(QBtn, {\n flat: true,\n dense: true,\n noCaps: true,\n label,\n tabindex: tabindex.value,\n ...getCache('view#' + type, { onClick: () => { view.value = type } })\n })\n ]))\n ]),\n\n h('div', {\n class: 'row items-center q-date__arrow'\n }, [\n h(QBtn, {\n round: true,\n dense: true,\n size: 'sm',\n flat: true,\n icon: dateArrow.value[ 1 ],\n tabindex: tabindex.value,\n disable: boundaries.next === false,\n ...getCache('go+#' + type, { onClick () { goTo(1) } })\n })\n ])\n ]\n }\n\n const renderViews = {\n Calendar: () => ([\n h('div', {\n key: 'calendar-view',\n class: 'q-date__view q-date__calendar'\n }, [\n h('div', {\n class: 'q-date__navigation row items-center no-wrap'\n }, getNavigation({\n label: innerLocale.value.months[ viewModel.value.month - 1 ],\n type: 'Months',\n key: viewModel.value.month,\n dir: monthDirection.value,\n goTo: goToMonth,\n boundaries: navBoundaries.value.month,\n cls: ' col'\n }).concat(getNavigation({\n label: viewModel.value.year,\n type: 'Years',\n key: viewModel.value.year,\n dir: yearDirection.value,\n goTo: goToYear,\n boundaries: navBoundaries.value.year,\n cls: ''\n }))),\n\n h('div', {\n class: 'q-date__calendar-weekdays row items-center no-wrap'\n }, daysOfWeek.value.map(day => h('div', { class: 'q-date__calendar-item' }, [ h('div', day) ]))),\n\n h('div', {\n class: 'q-date__calendar-days-container relative-position overflow-hidden'\n }, [\n h(Transition, {\n name: 'q-transition--slide-' + monthDirection.value\n }, () => h('div', {\n key: viewMonthHash.value,\n class: 'q-date__calendar-days fit'\n }, days.value.map(day => h('div', { class: day.classes }, [\n day.in === true\n ? h(\n QBtn, {\n class: day.today === true ? 'q-date__today' : '',\n dense: true,\n flat: day.flat,\n unelevated: day.unelevated,\n color: day.color,\n textColor: day.textColor,\n label: day.i,\n tabindex: tabindex.value,\n ...getCache('day#' + day.i, {\n onClick: () => { onDayClick(day.i) },\n onMouseover: () => { onDayMouseover(day.i) }\n })\n },\n day.event !== false\n ? () => h('div', { class: 'q-date__event bg-' + day.event })\n : null\n )\n : h('div', '' + day.i)\n ]))))\n ])\n ])\n ]),\n\n Months () {\n const currentYear = viewModel.value.year === today.value.year\n const isDisabled = month => {\n return (\n (minNav.value !== null && viewModel.value.year === minNav.value.year && minNav.value.month > month)\n || (maxNav.value !== null && viewModel.value.year === maxNav.value.year && maxNav.value.month < month)\n )\n }\n\n const content = innerLocale.value.monthsShort.map((month, i) => {\n const active = viewModel.value.month === i + 1\n\n return h('div', {\n class: 'q-date__months-item flex flex-center'\n }, [\n h(QBtn, {\n class: currentYear === true && today.value.month === i + 1 ? 'q-date__today' : null,\n flat: active !== true,\n label: month,\n unelevated: active,\n color: active === true ? computedColor.value : null,\n textColor: active === true ? computedTextColor.value : null,\n tabindex: tabindex.value,\n disable: isDisabled(i + 1),\n ...getCache('month#' + i, { onClick: () => { setMonth(i + 1) } })\n })\n ])\n })\n\n props.yearsInMonthView === true && content.unshift(\n h('div', { class: 'row no-wrap full-width' }, [\n getNavigation({\n label: viewModel.value.year,\n type: 'Years',\n key: viewModel.value.year,\n dir: yearDirection.value,\n goTo: goToYear,\n boundaries: navBoundaries.value.year,\n cls: ' col'\n })\n ])\n )\n\n return h('div', {\n key: 'months-view',\n class: 'q-date__view q-date__months flex flex-center'\n }, content)\n },\n\n Years () {\n const\n start = startYear.value,\n stop = start + yearsInterval,\n years = []\n\n const isDisabled = year => {\n return (\n (minNav.value !== null && minNav.value.year > year)\n || (maxNav.value !== null && maxNav.value.year < year)\n )\n }\n\n for (let i = start; i <= stop; i++) {\n const active = viewModel.value.year === i\n\n years.push(\n h('div', {\n class: 'q-date__years-item flex flex-center'\n }, [\n h(QBtn, {\n key: 'yr' + i,\n class: today.value.year === i ? 'q-date__today' : null,\n flat: !active,\n label: i,\n dense: true,\n unelevated: active,\n color: active === true ? computedColor.value : null,\n textColor: active === true ? computedTextColor.value : null,\n tabindex: tabindex.value,\n disable: isDisabled(i),\n ...getCache('yr#' + i, { onClick: () => { setYear(i) } })\n })\n ])\n )\n }\n\n return h('div', {\n class: 'q-date__view q-date__years flex flex-center'\n }, [\n h('div', {\n class: 'col-auto'\n }, [\n h(QBtn, {\n round: true,\n dense: true,\n flat: true,\n icon: dateArrow.value[ 0 ],\n tabindex: tabindex.value,\n disable: isDisabled(start),\n ...getCache('y-', { onClick: () => { startYear.value -= yearsInterval } })\n })\n ]),\n\n h('div', {\n class: 'q-date__years-content col self-stretch row items-center'\n }, years),\n\n h('div', {\n class: 'col-auto'\n }, [\n h(QBtn, {\n round: true,\n dense: true,\n flat: true,\n icon: dateArrow.value[ 1 ],\n tabindex: tabindex.value,\n disable: isDisabled(stop),\n ...getCache('y+', { onClick: () => { startYear.value += yearsInterval } })\n })\n ])\n ])\n }\n }\n\n function onDayClick (dayIndex) {\n const day = { ...viewModel.value, day: dayIndex }\n\n if (props.range === false) {\n toggleDate(day, viewMonthHash.value)\n return\n }\n\n if (editRange.value === null) {\n const dayProps = days.value.find(day => day.fill !== true && day.i === dayIndex)\n\n if (props.noUnset !== true && dayProps.range !== void 0) {\n removeFromModel({ target: day, from: dayProps.range.from, to: dayProps.range.to })\n return\n }\n\n if (dayProps.selected === true) {\n removeFromModel(day)\n return\n }\n\n const initHash = getDayHash(day)\n\n editRange.value = {\n init: day,\n initHash,\n final: day,\n finalHash: initHash\n }\n\n emit('range-start', getShortDate(day))\n }\n else {\n const\n initHash = editRange.value.initHash,\n finalHash = getDayHash(day),\n payload = initHash <= finalHash\n ? { from: editRange.value.init, to: day }\n : { from: day, to: editRange.value.init }\n\n editRange.value = null\n addToModel(initHash === finalHash ? day : { target: day, ...payload })\n\n emit('range-end', {\n from: getShortDate(payload.from),\n to: getShortDate(payload.to)\n })\n }\n }\n\n function onDayMouseover (dayIndex) {\n if (editRange.value !== null) {\n const final = { ...viewModel.value, day: dayIndex }\n\n Object.assign(editRange.value, {\n final,\n finalHash: getDayHash(final)\n })\n }\n }\n\n return () => {\n const content = [\n h('div', {\n class: 'q-date__content col relative-position'\n }, [\n h(Transition, {\n name: 'q-transition--fade'\n }, renderViews[ view.value ])\n ])\n ]\n\n const def = hSlot(slots.default)\n def !== void 0 && content.push(\n h('div', { class: 'q-date__actions' }, def)\n )\n\n if (props.name !== void 0 && props.disable !== true) {\n injectFormInput(content, 'push')\n }\n\n return h('div', {\n class: classes.value,\n ...attributes.value\n }, [\n getHeader(),\n\n h('div', {\n ref: blurTargetRef,\n class: 'q-date__main col column',\n tabindex: -1\n }, content)\n ])\n }\n }\n})\n","import { render } from \"./PopupDatePicker.vue?vue&type=template&id=2ee87378\"\nimport script from \"./PopupDatePicker.vue?vue&type=script&lang=js\"\nexport * from \"./PopupDatePicker.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"D:\\\\如峰\\\\浮雲客棧webapp 前後台系統\\\\前台\\\\kloudmobileweb\\\\KloudMobileWeb\\\\ClientApp\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__\nimport QPopupProxy from 'quasar/src/components/popup-proxy/QPopupProxy.js';\nimport QDate from 'quasar/src/components/date/QDate.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';import ClosePopup from 'quasar/src/directives/ClosePopup.js';\nimport qInstall from \"../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QPopupProxy,QDate,QBtn});qInstall(script, 'directives', {ClosePopup});\n","import { render } from \"./Index.vue?vue&type=template&id=14172b24&scoped=true\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=14172b24&lang=scss&scoped=true\"\n\nimport exportComponent from \"D:\\\\如峰\\\\浮雲客棧webapp 前後台系統\\\\前台\\\\kloudmobileweb\\\\KloudMobileWeb\\\\ClientApp\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-14172b24\"]])\n\nexport default __exports__\nimport QBar from 'quasar/src/components/bar/QBar.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QList from 'quasar/src/components/item/QList.js';\nimport QItem from 'quasar/src/components/item/QItem.js';\nimport QItemSection from 'quasar/src/components/item/QItemSection.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QCardActions from 'quasar/src/components/card/QCardActions.js';import ClosePopup from 'quasar/src/directives/ClosePopup.js';\nimport qInstall from \"../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QBar,QBtn,QDialog,QCard,QCardSection,QList,QItem,QItemSection,QIcon,QCardActions});qInstall(script, 'directives', {ClosePopup});\n","import { createDirective } from '../utils/private/create.js'\nimport { closePortals, getPortalVm } from '../utils/private/portal.js'\nimport { isKeyCode } from '../utils/private/key-composition.js'\nimport getSSRProps from '../utils/private/noop-ssr-directive-transform.js'\n\n/*\n * depth\n * < 0 --> close all chain\n * 0 --> disabled\n * > 0 --> close chain up to N parent\n */\n\nfunction getDepth (value) {\n if (value === false) {\n return 0\n }\n if (value === true || value === void 0) {\n return 1\n }\n\n const depth = parseInt(value, 10)\n return isNaN(depth) ? 0 : depth\n}\n\nexport default createDirective(__QUASAR_SSR_SERVER__\n ? { name: 'close-popup', getSSRProps }\n : {\n name: 'close-popup',\n\n beforeMount (el, { value }) {\n const ctx = {\n depth: getDepth(value),\n\n handler (evt) {\n // allow @click to be emitted\n ctx.depth !== 0 && setTimeout(() => {\n const vm = getPortalVm(el)\n if (vm !== void 0) {\n closePortals(vm, evt, ctx.depth)\n }\n })\n },\n\n handlerKey (evt) {\n isKeyCode(evt, 13) === true && ctx.handler(evt)\n }\n }\n\n el.__qclosepopup = ctx\n\n el.addEventListener('click', ctx.handler)\n el.addEventListener('keyup', ctx.handlerKey)\n },\n\n updated (el, { value, oldValue }) {\n if (value !== oldValue) {\n el.__qclosepopup.depth = getDepth(value)\n }\n },\n\n beforeUnmount (el) {\n const ctx = el.__qclosepopup\n el.removeEventListener('click', ctx.handler)\n el.removeEventListener('keyup', ctx.handlerKey)\n delete el.__qclosepopup\n }\n }\n)\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\n\nvar quot = /\"/g;\nvar replace = uncurryThis(''.replace);\n\n// `CreateHTML` abstract operation\n// https://tc39.es/ecma262/#sec-createhtml\nmodule.exports = function (string, tag, attribute, value) {\n var S = toString(requireObjectCoercible(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + replace(toString(value), quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\n","var fails = require('../internals/fails');\n\n// check the existence of a method, lowercase\n// of a tag and escaping quotes in arguments\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n var test = ''[METHOD_NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n });\n};\n","import { h, computed, getCurrentInstance } from 'vue'\n\nimport useDark, { useDarkProps } from '../../composables/private/use-dark.js'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { hSlot } from '../../utils/private/render.js'\n\nexport default createComponent({\n name: 'QBar',\n\n props: {\n ...useDarkProps,\n dense: Boolean\n },\n\n setup (props, { slots }) {\n const vm = getCurrentInstance()\n const isDark = useDark(props, vm.proxy.$q)\n\n const classes = computed(() =>\n 'q-bar row no-wrap items-center'\n + ` q-bar--${ props.dense === true ? 'dense' : 'standard' } `\n + ` q-bar--${ isDark.value === true ? 'dark' : 'light' }`\n )\n\n return () => h('div', {\n class: classes.value,\n role: 'toolbar'\n }, hSlot(slots.default))\n }\n})\n"],"sourceRoot":""}