UNPKG

vuetify

Version:

Vue Material Component Framework

1 lines 13.1 kB
{"version":3,"file":"props.mjs","names":["validateTimestamp","parseDate","DAYS_IN_WEEK","validateTime","CalendarEventOverlapModes","base","start","type","String","Number","Date","validate","default","date","end","weekdays","Array","validateWeekdays","hideHeader","Boolean","shortWeekdays","weekdayFormat","Function","dayFormat","intervals","maxDays","shortIntervals","intervalHeight","validateNumber","intervalWidth","intervalMinutes","firstInterval","firstTime","Object","intervalCount","intervalFormat","intervalStyle","showIntervalLabel","weeks","localeFirstDayOfYear","minWeeks","shortMonths","showMonthOnFirst","showWeek","monthFormat","calendar","value","category","categories","categoryText","categoryHideDynamic","categoryShowAll","categoryForInvalid","categoryDays","x","isFinite","parseInt","events","eventStart","eventEnd","eventTimed","eventCategory","eventHeight","eventColor","eventTextColor","eventName","eventOverlapThreshold","eventOverlapMode","mode","eventMore","eventMoreText","eventRipple","eventMarginBottom","input","split","isArray","ints","map","length","visited","wrapped","i","d"],"sources":["../../../../src/components/VCalendar/util/props.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n\nimport { validateTimestamp, parseDate, DAYS_IN_WEEK, validateTime } from './timestamp'\nimport { PropType } from 'vue'\nimport { CalendarEvent, CalendarFormatter, CalendarTimestamp, CalendarEventOverlapMode, CalendarEventNameFunction, CalendarEventColorFunction, CalendarEventCategoryFunction, CalendarEventTimedFunction, CalendarCategoryTextFunction, CalendarCategory } from 'vuetify/types'\nimport { CalendarEventOverlapModes } from '../modes'\nimport { PropValidator } from 'vue/types/options'\n\nexport default {\n base: {\n start: {\n type: [String, Number, Date],\n validate: validateTimestamp,\n default: () => parseDate(new Date()).date,\n },\n end: {\n type: [String, Number, Date],\n validate: validateTimestamp,\n },\n weekdays: {\n type: [Array, String] as PropType<number[] | string>,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n validate: validateWeekdays,\n },\n hideHeader: {\n type: Boolean,\n },\n shortWeekdays: {\n type: Boolean,\n default: true,\n },\n weekdayFormat: {\n type: Function as PropType<CalendarFormatter>,\n default: null,\n },\n dayFormat: {\n type: Function as PropType<CalendarFormatter>,\n default: null,\n },\n },\n intervals: {\n maxDays: {\n type: Number,\n default: 7,\n },\n shortIntervals: {\n type: Boolean,\n default: true,\n },\n intervalHeight: {\n type: [Number, String],\n default: 48,\n validate: validateNumber,\n },\n intervalWidth: {\n type: [Number, String],\n default: 60,\n validate: validateNumber,\n },\n intervalMinutes: {\n type: [Number, String],\n default: 60,\n validate: validateNumber,\n },\n firstInterval: {\n type: [Number, String],\n default: 0,\n validate: validateNumber,\n },\n firstTime: {\n type: [Number, String, Object],\n validate: validateTime,\n },\n intervalCount: {\n type: [Number, String],\n default: 24,\n validate: validateNumber,\n },\n intervalFormat: {\n type: Function as PropType<CalendarFormatter>,\n default: null,\n },\n intervalStyle: {\n type: Function as PropType<(interval: CalendarTimestamp) => object>,\n default: null,\n },\n showIntervalLabel: {\n type: Function as PropType<(interval: CalendarTimestamp) => boolean>,\n default: null,\n },\n },\n weeks: {\n localeFirstDayOfYear: {\n type: [String, Number],\n default: 0,\n },\n minWeeks: {\n validate: validateNumber,\n default: 1,\n },\n shortMonths: {\n type: Boolean,\n default: true,\n },\n showMonthOnFirst: {\n type: Boolean,\n default: true,\n },\n showWeek: Boolean,\n monthFormat: {\n type: Function as PropType<CalendarFormatter>,\n default: null,\n },\n },\n calendar: {\n type: {\n type: String,\n default: 'month',\n },\n value: {\n type: [String, Number, Date] as PropType<string | number | Date>,\n validate: validateTimestamp,\n },\n },\n category: {\n categories: {\n type: [Array, String] as PropType<CalendarCategory[] | string>,\n default: '',\n },\n categoryText: {\n type: [String, Function] as PropType<string | CalendarCategoryTextFunction>,\n },\n categoryHideDynamic: {\n type: Boolean,\n },\n categoryShowAll: {\n type: Boolean,\n },\n categoryForInvalid: {\n type: String,\n default: '',\n },\n categoryDays: {\n type: [Number, String],\n default: 1,\n validate: (x: any) => isFinite(parseInt(x)) && parseInt(x) > 0,\n },\n },\n events: {\n events: {\n type: Array,\n default: () => [],\n } as PropValidator<CalendarEvent[]>,\n eventStart: {\n type: String,\n default: 'start',\n },\n eventEnd: {\n type: String,\n default: 'end',\n },\n eventTimed: {\n type: [String, Function] as PropType<string | CalendarEventTimedFunction>,\n default: 'timed',\n },\n eventCategory: {\n type: [String, Function] as PropType<string | CalendarEventCategoryFunction>,\n default: 'category',\n },\n eventHeight: {\n type: Number,\n default: 20,\n },\n eventColor: {\n type: [String, Function] as PropType<string | CalendarEventColorFunction>,\n default: 'primary',\n },\n eventTextColor: {\n type: [String, Function] as PropType<string | CalendarEventColorFunction>,\n default: 'white',\n },\n eventName: {\n type: [String, Function] as PropType<string | CalendarEventNameFunction>,\n default: 'name',\n },\n eventOverlapThreshold: {\n type: [String, Number],\n default: 60,\n },\n eventOverlapMode: {\n type: [String, Function],\n default: 'stack',\n validate: (mode: any) => mode in CalendarEventOverlapModes || typeof mode === 'function',\n } as PropValidator<'stack' | 'column' | CalendarEventOverlapMode>,\n eventMore: {\n type: Boolean,\n default: true,\n },\n eventMoreText: {\n type: String,\n default: '$vuetify.calendar.moreEvents',\n },\n eventRipple: {\n type: [Boolean, Object],\n default: null,\n },\n eventMarginBottom: {\n type: Number,\n default: 1,\n },\n },\n}\n\nexport function validateNumber (input: any): boolean {\n return isFinite(parseInt(input))\n}\n\nexport function validateWeekdays (input: string | (number | string)[]): boolean {\n if (typeof input === 'string') {\n input = input.split(',')\n }\n\n if (Array.isArray(input)) {\n const ints = input.map(x => parseInt(x))\n\n if (ints.length > DAYS_IN_WEEK || ints.length === 0) {\n return false\n }\n\n const visited: Record<number, boolean> = {}\n let wrapped = false\n\n for (let i = 0; i < ints.length; i++) {\n const x = ints[i]\n\n if (!isFinite(x) || x < 0 || x >= DAYS_IN_WEEK) {\n return false\n }\n\n if (i > 0) {\n const d = x - ints[i - 1]\n if (d < 0) {\n if (wrapped) {\n return false\n }\n wrapped = true\n } else if (d === 0) {\n return false\n }\n }\n\n if (visited[x]) {\n return false\n }\n visited[x] = true\n }\n\n return true\n }\n\n return false\n}\n"],"mappings":"AAAA;AACA;AAAA,SAGSA,iBAAiB,EAAEC,SAAS,EAAEC,YAAY,EAAEC,YAAY;AAAA,SAGxDC,yBAAyB;AAGlC,eAAe;EACbC,IAAI,EAAE;IACJC,KAAK,EAAE;MACLC,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,EAAEC,IAAI,CAAC;MAC5BC,QAAQ,EAAEX,iBAAiB;MAC3BY,OAAO,EAAE,MAAMX,SAAS,CAAC,IAAIS,IAAI,EAAE,CAAC,CAACG;IACvC,CAAC;IACDC,GAAG,EAAE;MACHP,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,EAAEC,IAAI,CAAC;MAC5BC,QAAQ,EAAEX;IACZ,CAAC;IACDe,QAAQ,EAAE;MACRR,IAAI,EAAE,CAACS,KAAK,EAAER,MAAM,CAAgC;MACpDI,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;MACpCD,QAAQ,EAAEM;IACZ,CAAC;IACDC,UAAU,EAAE;MACVX,IAAI,EAAEY;IACR,CAAC;IACDC,aAAa,EAAE;MACbb,IAAI,EAAEY,OAAO;MACbP,OAAO,EAAE;IACX,CAAC;IACDS,aAAa,EAAE;MACbd,IAAI,EAAEe,QAAuC;MAC7CV,OAAO,EAAE;IACX,CAAC;IACDW,SAAS,EAAE;MACThB,IAAI,EAAEe,QAAuC;MAC7CV,OAAO,EAAE;IACX;EACF,CAAC;EACDY,SAAS,EAAE;IACTC,OAAO,EAAE;MACPlB,IAAI,EAAEE,MAAM;MACZG,OAAO,EAAE;IACX,CAAC;IACDc,cAAc,EAAE;MACdnB,IAAI,EAAEY,OAAO;MACbP,OAAO,EAAE;IACX,CAAC;IACDe,cAAc,EAAE;MACdpB,IAAI,EAAE,CAACE,MAAM,EAAED,MAAM,CAAC;MACtBI,OAAO,EAAE,EAAE;MACXD,QAAQ,EAAEiB;IACZ,CAAC;IACDC,aAAa,EAAE;MACbtB,IAAI,EAAE,CAACE,MAAM,EAAED,MAAM,CAAC;MACtBI,OAAO,EAAE,EAAE;MACXD,QAAQ,EAAEiB;IACZ,CAAC;IACDE,eAAe,EAAE;MACfvB,IAAI,EAAE,CAACE,MAAM,EAAED,MAAM,CAAC;MACtBI,OAAO,EAAE,EAAE;MACXD,QAAQ,EAAEiB;IACZ,CAAC;IACDG,aAAa,EAAE;MACbxB,IAAI,EAAE,CAACE,MAAM,EAAED,MAAM,CAAC;MACtBI,OAAO,EAAE,CAAC;MACVD,QAAQ,EAAEiB;IACZ,CAAC;IACDI,SAAS,EAAE;MACTzB,IAAI,EAAE,CAACE,MAAM,EAAED,MAAM,EAAEyB,MAAM,CAAC;MAC9BtB,QAAQ,EAAER;IACZ,CAAC;IACD+B,aAAa,EAAE;MACb3B,IAAI,EAAE,CAACE,MAAM,EAAED,MAAM,CAAC;MACtBI,OAAO,EAAE,EAAE;MACXD,QAAQ,EAAEiB;IACZ,CAAC;IACDO,cAAc,EAAE;MACd5B,IAAI,EAAEe,QAAuC;MAC7CV,OAAO,EAAE;IACX,CAAC;IACDwB,aAAa,EAAE;MACb7B,IAAI,EAAEe,QAA6D;MACnEV,OAAO,EAAE;IACX,CAAC;IACDyB,iBAAiB,EAAE;MACjB9B,IAAI,EAAEe,QAA8D;MACpEV,OAAO,EAAE;IACX;EACF,CAAC;EACD0B,KAAK,EAAE;IACLC,oBAAoB,EAAE;MACpBhC,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,CAAC;MACtBG,OAAO,EAAE;IACX,CAAC;IACD4B,QAAQ,EAAE;MACR7B,QAAQ,EAAEiB,cAAc;MACxBhB,OAAO,EAAE;IACX,CAAC;IACD6B,WAAW,EAAE;MACXlC,IAAI,EAAEY,OAAO;MACbP,OAAO,EAAE;IACX,CAAC;IACD8B,gBAAgB,EAAE;MAChBnC,IAAI,EAAEY,OAAO;MACbP,OAAO,EAAE;IACX,CAAC;IACD+B,QAAQ,EAAExB,OAAO;IACjByB,WAAW,EAAE;MACXrC,IAAI,EAAEe,QAAuC;MAC7CV,OAAO,EAAE;IACX;EACF,CAAC;EACDiC,QAAQ,EAAE;IACRtC,IAAI,EAAE;MACJA,IAAI,EAAEC,MAAM;MACZI,OAAO,EAAE;IACX,CAAC;IACDkC,KAAK,EAAE;MACLvC,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,EAAEC,IAAI,CAAqC;MAChEC,QAAQ,EAAEX;IACZ;EACF,CAAC;EACD+C,QAAQ,EAAE;IACRC,UAAU,EAAE;MACVzC,IAAI,EAAE,CAACS,KAAK,EAAER,MAAM,CAA0C;MAC9DI,OAAO,EAAE;IACX,CAAC;IACDqC,YAAY,EAAE;MACZ1C,IAAI,EAAE,CAACC,MAAM,EAAEc,QAAQ;IACzB,CAAC;IACD4B,mBAAmB,EAAE;MACnB3C,IAAI,EAAEY;IACR,CAAC;IACDgC,eAAe,EAAE;MACf5C,IAAI,EAAEY;IACR,CAAC;IACDiC,kBAAkB,EAAE;MAClB7C,IAAI,EAAEC,MAAM;MACZI,OAAO,EAAE;IACX,CAAC;IACDyC,YAAY,EAAE;MACZ9C,IAAI,EAAE,CAACE,MAAM,EAAED,MAAM,CAAC;MACtBI,OAAO,EAAE,CAAC;MACVD,QAAQ,EAAG2C,CAAM,IAAKC,QAAQ,CAACC,QAAQ,CAACF,CAAC,CAAC,CAAC,IAAIE,QAAQ,CAACF,CAAC,CAAC,GAAG;IAC/D;EACF,CAAC;EACDG,MAAM,EAAE;IACNA,MAAM,EAAE;MACNlD,IAAI,EAAES,KAAK;MACXJ,OAAO,EAAE,MAAM;IACjB,CAAmC;IACnC8C,UAAU,EAAE;MACVnD,IAAI,EAAEC,MAAM;MACZI,OAAO,EAAE;IACX,CAAC;IACD+C,QAAQ,EAAE;MACRpD,IAAI,EAAEC,MAAM;MACZI,OAAO,EAAE;IACX,CAAC;IACDgD,UAAU,EAAE;MACVrD,IAAI,EAAE,CAACC,MAAM,EAAEc,QAAQ,CAAkD;MACzEV,OAAO,EAAE;IACX,CAAC;IACDiD,aAAa,EAAE;MACbtD,IAAI,EAAE,CAACC,MAAM,EAAEc,QAAQ,CAAqD;MAC5EV,OAAO,EAAE;IACX,CAAC;IACDkD,WAAW,EAAE;MACXvD,IAAI,EAAEE,MAAM;MACZG,OAAO,EAAE;IACX,CAAC;IACDmD,UAAU,EAAE;MACVxD,IAAI,EAAE,CAACC,MAAM,EAAEc,QAAQ,CAAkD;MACzEV,OAAO,EAAE;IACX,CAAC;IACDoD,cAAc,EAAE;MACdzD,IAAI,EAAE,CAACC,MAAM,EAAEc,QAAQ,CAAkD;MACzEV,OAAO,EAAE;IACX,CAAC;IACDqD,SAAS,EAAE;MACT1D,IAAI,EAAE,CAACC,MAAM,EAAEc,QAAQ,CAAiD;MACxEV,OAAO,EAAE;IACX,CAAC;IACDsD,qBAAqB,EAAE;MACrB3D,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,CAAC;MACtBG,OAAO,EAAE;IACX,CAAC;IACDuD,gBAAgB,EAAE;MAChB5D,IAAI,EAAE,CAACC,MAAM,EAAEc,QAAQ,CAAC;MACxBV,OAAO,EAAE,OAAO;MAChBD,QAAQ,EAAGyD,IAAS,IAAKA,IAAI,IAAIhE,yBAAyB,IAAI,OAAOgE,IAAI,KAAK;IAChF,CAAiE;IACjEC,SAAS,EAAE;MACT9D,IAAI,EAAEY,OAAO;MACbP,OAAO,EAAE;IACX,CAAC;IACD0D,aAAa,EAAE;MACb/D,IAAI,EAAEC,MAAM;MACZI,OAAO,EAAE;IACX,CAAC;IACD2D,WAAW,EAAE;MACXhE,IAAI,EAAE,CAACY,OAAO,EAAEc,MAAM,CAAC;MACvBrB,OAAO,EAAE;IACX,CAAC;IACD4D,iBAAiB,EAAE;MACjBjE,IAAI,EAAEE,MAAM;MACZG,OAAO,EAAE;IACX;EACF;AACF,CAAC;AAED,OAAO,SAASgB,cAAc,CAAE6C,KAAU,EAAW;EACnD,OAAOlB,QAAQ,CAACC,QAAQ,CAACiB,KAAK,CAAC,CAAC;AAClC;AAEA,OAAO,SAASxD,gBAAgB,CAAEwD,KAAmC,EAAW;EAC9E,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7BA,KAAK,GAAGA,KAAK,CAACC,KAAK,CAAC,GAAG,CAAC;EAC1B;EAEA,IAAI1D,KAAK,CAAC2D,OAAO,CAACF,KAAK,CAAC,EAAE;IACxB,MAAMG,IAAI,GAAGH,KAAK,CAACI,GAAG,CAACvB,CAAC,IAAIE,QAAQ,CAACF,CAAC,CAAC,CAAC;IAExC,IAAIsB,IAAI,CAACE,MAAM,GAAG5E,YAAY,IAAI0E,IAAI,CAACE,MAAM,KAAK,CAAC,EAAE;MACnD,OAAO,KAAK;IACd;IAEA,MAAMC,OAAgC,GAAG,CAAC,CAAC;IAC3C,IAAIC,OAAO,GAAG,KAAK;IAEnB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,IAAI,CAACE,MAAM,EAAEG,CAAC,EAAE,EAAE;MACpC,MAAM3B,CAAC,GAAGsB,IAAI,CAACK,CAAC,CAAC;MAEjB,IAAI,CAAC1B,QAAQ,CAACD,CAAC,CAAC,IAAIA,CAAC,GAAG,CAAC,IAAIA,CAAC,IAAIpD,YAAY,EAAE;QAC9C,OAAO,KAAK;MACd;MAEA,IAAI+E,CAAC,GAAG,CAAC,EAAE;QACT,MAAMC,CAAC,GAAG5B,CAAC,GAAGsB,IAAI,CAACK,CAAC,GAAG,CAAC,CAAC;QACzB,IAAIC,CAAC,GAAG,CAAC,EAAE;UACT,IAAIF,OAAO,EAAE;YACX,OAAO,KAAK;UACd;UACAA,OAAO,GAAG,IAAI;QAChB,CAAC,MAAM,IAAIE,CAAC,KAAK,CAAC,EAAE;UAClB,OAAO,KAAK;QACd;MACF;MAEA,IAAIH,OAAO,CAACzB,CAAC,CAAC,EAAE;QACd,OAAO,KAAK;MACd;MACAyB,OAAO,CAACzB,CAAC,CAAC,GAAG,IAAI;IACnB;IAEA,OAAO,IAAI;EACb;EAEA,OAAO,KAAK;AACd"}