@vuetify/nightly 3.9.0-beta.1-dev.2025-06-26 → 3.9.0-beta.1-dev.2025-07-02

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/CHANGELOG.md +105 -3
  2. package/dist/_component-variables-labs.sass +1 -0
  3. package/dist/json/attributes.json +2814 -2754
  4. package/dist/json/importMap-labs.json +16 -12
  5. package/dist/json/importMap.json +174 -174
  6. package/dist/json/tags.json +20 -0
  7. package/dist/json/web-types.json +5362 -5196
  8. package/dist/vuetify-labs.cjs +796 -64
  9. package/dist/vuetify-labs.css +3440 -3189
  10. package/dist/vuetify-labs.d.ts +452 -206
  11. package/dist/vuetify-labs.esm.js +796 -65
  12. package/dist/vuetify-labs.esm.js.map +1 -1
  13. package/dist/vuetify-labs.js +796 -64
  14. package/dist/vuetify-labs.min.css +2 -2
  15. package/dist/vuetify.cjs +378 -40
  16. package/dist/vuetify.cjs.map +1 -1
  17. package/dist/vuetify.css +3377 -3368
  18. package/dist/vuetify.d.ts +82 -62
  19. package/dist/vuetify.esm.js +378 -41
  20. package/dist/vuetify.esm.js.map +1 -1
  21. package/dist/vuetify.js +378 -40
  22. package/dist/vuetify.js.map +1 -1
  23. package/dist/vuetify.min.css +2 -2
  24. package/dist/vuetify.min.js +312 -274
  25. package/dist/vuetify.min.js.map +1 -1
  26. package/lib/components/VDataTable/VDataTableColumn.js +0 -1
  27. package/lib/components/VDataTable/VDataTableColumn.js.map +1 -1
  28. package/lib/components/VDataTable/VDataTableHeaders.js +5 -5
  29. package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
  30. package/lib/components/VDataTable/composables/sort.js +2 -1
  31. package/lib/components/VDataTable/composables/sort.js.map +1 -1
  32. package/lib/components/VDatePicker/VDatePickerMonth.js +1 -2
  33. package/lib/components/VDatePicker/VDatePickerMonth.js.map +1 -1
  34. package/lib/components/VKbd/VKbd.css +14 -5
  35. package/lib/components/VKbd/VKbd.js.map +1 -1
  36. package/lib/components/VKbd/VKbd.scss +26 -0
  37. package/lib/components/VKbd/_variables.scss +12 -6
  38. package/lib/components/VKbd/index.js.map +1 -1
  39. package/lib/components/VOtpInput/VOtpInput.js +17 -14
  40. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  41. package/lib/components/VOverlay/locationStrategies.js +1 -1
  42. package/lib/components/VOverlay/locationStrategies.js.map +1 -1
  43. package/lib/components/VTextField/VTextField.js +1 -1
  44. package/lib/components/VTextField/VTextField.js.map +1 -1
  45. package/lib/composables/calendar.d.ts +0 -1
  46. package/lib/composables/calendar.js +6 -10
  47. package/lib/composables/calendar.js.map +1 -1
  48. package/lib/composables/date/adapters/vuetify.js +1 -1
  49. package/lib/composables/date/adapters/vuetify.js.map +1 -1
  50. package/lib/composables/hotkey/hotkey-parsing.d.ts +15 -0
  51. package/lib/composables/hotkey/hotkey-parsing.js +154 -0
  52. package/lib/composables/hotkey/hotkey-parsing.js.map +1 -0
  53. package/lib/composables/hotkey/hotkey.d.ts +9 -0
  54. package/lib/composables/{hotkey.js → hotkey/hotkey.js} +31 -39
  55. package/lib/composables/hotkey/hotkey.js.map +1 -0
  56. package/lib/composables/hotkey/index.d.ts +1 -0
  57. package/lib/composables/hotkey/index.js +2 -0
  58. package/lib/composables/hotkey/index.js.map +1 -0
  59. package/lib/composables/hotkey/key-aliases.d.ts +14 -0
  60. package/lib/composables/hotkey/key-aliases.js +38 -0
  61. package/lib/composables/hotkey/key-aliases.js.map +1 -0
  62. package/lib/composables/icons.d.ts +11 -0
  63. package/lib/composables/icons.js.map +1 -1
  64. package/lib/composables/index.d.ts +1 -0
  65. package/lib/composables/index.js +1 -0
  66. package/lib/composables/index.js.map +1 -1
  67. package/lib/composables/virtual.js +1 -1
  68. package/lib/composables/virtual.js.map +1 -1
  69. package/lib/entry-bundler.js +1 -1
  70. package/lib/framework.d.ts +83 -62
  71. package/lib/framework.js +1 -1
  72. package/lib/iconsets/fa.js +12 -1
  73. package/lib/iconsets/fa.js.map +1 -1
  74. package/lib/iconsets/fa4.js +12 -1
  75. package/lib/iconsets/fa4.js.map +1 -1
  76. package/lib/iconsets/md.js +12 -1
  77. package/lib/iconsets/md.js.map +1 -1
  78. package/lib/iconsets/mdi-svg.js +12 -1
  79. package/lib/iconsets/mdi-svg.js.map +1 -1
  80. package/lib/iconsets/mdi.js +12 -1
  81. package/lib/iconsets/mdi.js.map +1 -1
  82. package/lib/labs/VCalendar/VCalendar.d.ts +33 -33
  83. package/lib/labs/VCalendar/VCalendar.js +9 -9
  84. package/lib/labs/VCalendar/VCalendar.js.map +1 -1
  85. package/lib/labs/VCalendar/VCalendarDay.d.ts +33 -33
  86. package/lib/labs/VCalendar/VCalendarDay.js +1 -1
  87. package/lib/labs/VCalendar/VCalendarDay.js.map +1 -1
  88. package/lib/labs/VCalendar/VCalendarInterval.d.ts +36 -36
  89. package/lib/labs/VCalendar/VCalendarInterval.js +9 -9
  90. package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
  91. package/lib/labs/VCalendar/VCalendarIntervalEvent.d.ts +12 -12
  92. package/lib/labs/VCalendar/VCalendarIntervalEvent.js +1 -1
  93. package/lib/labs/VCalendar/VCalendarIntervalEvent.js.map +1 -1
  94. package/lib/labs/VCalendar/VCalendarMonthDay.d.ts +36 -36
  95. package/lib/labs/VCalendar/VCalendarMonthDay.js +4 -4
  96. package/lib/labs/VCalendar/VCalendarMonthDay.js.map +1 -1
  97. package/lib/labs/VHotkey/VHotkey.css +242 -0
  98. package/lib/labs/VHotkey/VHotkey.d.ts +387 -0
  99. package/lib/labs/VHotkey/VHotkey.js +432 -0
  100. package/lib/labs/VHotkey/VHotkey.js.map +1 -0
  101. package/lib/labs/VHotkey/VHotkey.scss +253 -0
  102. package/lib/labs/VHotkey/_variables.scss +43 -0
  103. package/lib/labs/VHotkey/index.d.ts +1 -0
  104. package/lib/labs/VHotkey/index.js +2 -0
  105. package/lib/labs/VHotkey/index.js.map +1 -0
  106. package/lib/labs/VIconBtn/VIconBtn.js +1 -0
  107. package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
  108. package/lib/labs/components.d.ts +1 -0
  109. package/lib/labs/components.js +1 -0
  110. package/lib/labs/components.js.map +1 -1
  111. package/lib/locale/af.d.ts +18 -0
  112. package/lib/locale/af.js +18 -0
  113. package/lib/locale/af.js.map +1 -1
  114. package/lib/locale/ar.d.ts +18 -0
  115. package/lib/locale/ar.js +18 -0
  116. package/lib/locale/ar.js.map +1 -1
  117. package/lib/locale/az.d.ts +18 -0
  118. package/lib/locale/az.js +18 -0
  119. package/lib/locale/az.js.map +1 -1
  120. package/lib/locale/bg.d.ts +18 -0
  121. package/lib/locale/bg.js +18 -0
  122. package/lib/locale/bg.js.map +1 -1
  123. package/lib/locale/ca.d.ts +18 -0
  124. package/lib/locale/ca.js +18 -0
  125. package/lib/locale/ca.js.map +1 -1
  126. package/lib/locale/ckb.d.ts +18 -0
  127. package/lib/locale/ckb.js +18 -0
  128. package/lib/locale/ckb.js.map +1 -1
  129. package/lib/locale/cs.d.ts +18 -0
  130. package/lib/locale/cs.js +18 -0
  131. package/lib/locale/cs.js.map +1 -1
  132. package/lib/locale/da.d.ts +18 -0
  133. package/lib/locale/da.js +18 -0
  134. package/lib/locale/da.js.map +1 -1
  135. package/lib/locale/de.d.ts +18 -0
  136. package/lib/locale/de.js +18 -0
  137. package/lib/locale/de.js.map +1 -1
  138. package/lib/locale/el.d.ts +18 -0
  139. package/lib/locale/el.js +18 -0
  140. package/lib/locale/el.js.map +1 -1
  141. package/lib/locale/en.d.ts +18 -0
  142. package/lib/locale/en.js +18 -0
  143. package/lib/locale/en.js.map +1 -1
  144. package/lib/locale/es.d.ts +18 -0
  145. package/lib/locale/es.js +18 -0
  146. package/lib/locale/es.js.map +1 -1
  147. package/lib/locale/et.d.ts +18 -0
  148. package/lib/locale/et.js +18 -0
  149. package/lib/locale/et.js.map +1 -1
  150. package/lib/locale/fa.d.ts +18 -0
  151. package/lib/locale/fa.js +18 -0
  152. package/lib/locale/fa.js.map +1 -1
  153. package/lib/locale/fi.d.ts +18 -0
  154. package/lib/locale/fi.js +18 -0
  155. package/lib/locale/fi.js.map +1 -1
  156. package/lib/locale/fr.d.ts +18 -0
  157. package/lib/locale/fr.js +18 -0
  158. package/lib/locale/fr.js.map +1 -1
  159. package/lib/locale/he.d.ts +18 -0
  160. package/lib/locale/he.js +18 -0
  161. package/lib/locale/he.js.map +1 -1
  162. package/lib/locale/hr.d.ts +18 -0
  163. package/lib/locale/hr.js +18 -0
  164. package/lib/locale/hr.js.map +1 -1
  165. package/lib/locale/hu.d.ts +18 -0
  166. package/lib/locale/hu.js +18 -0
  167. package/lib/locale/hu.js.map +1 -1
  168. package/lib/locale/id.d.ts +18 -0
  169. package/lib/locale/id.js +18 -0
  170. package/lib/locale/id.js.map +1 -1
  171. package/lib/locale/it.d.ts +18 -0
  172. package/lib/locale/it.js +18 -0
  173. package/lib/locale/it.js.map +1 -1
  174. package/lib/locale/ja.d.ts +18 -0
  175. package/lib/locale/ja.js +18 -0
  176. package/lib/locale/ja.js.map +1 -1
  177. package/lib/locale/km.d.ts +18 -0
  178. package/lib/locale/km.js +18 -0
  179. package/lib/locale/km.js.map +1 -1
  180. package/lib/locale/ko.d.ts +18 -0
  181. package/lib/locale/ko.js +18 -0
  182. package/lib/locale/ko.js.map +1 -1
  183. package/lib/locale/lt.d.ts +18 -0
  184. package/lib/locale/lt.js +18 -0
  185. package/lib/locale/lt.js.map +1 -1
  186. package/lib/locale/lv.d.ts +18 -0
  187. package/lib/locale/lv.js +18 -0
  188. package/lib/locale/lv.js.map +1 -1
  189. package/lib/locale/nl.d.ts +18 -0
  190. package/lib/locale/nl.js +18 -0
  191. package/lib/locale/nl.js.map +1 -1
  192. package/lib/locale/no.d.ts +18 -0
  193. package/lib/locale/no.js +18 -0
  194. package/lib/locale/no.js.map +1 -1
  195. package/lib/locale/pl.d.ts +18 -0
  196. package/lib/locale/pl.js +18 -0
  197. package/lib/locale/pl.js.map +1 -1
  198. package/lib/locale/pt.d.ts +18 -0
  199. package/lib/locale/pt.js +18 -0
  200. package/lib/locale/pt.js.map +1 -1
  201. package/lib/locale/ro.d.ts +18 -0
  202. package/lib/locale/ro.js +18 -0
  203. package/lib/locale/ro.js.map +1 -1
  204. package/lib/locale/ru.d.ts +18 -0
  205. package/lib/locale/ru.js +18 -0
  206. package/lib/locale/ru.js.map +1 -1
  207. package/lib/locale/sk.d.ts +18 -0
  208. package/lib/locale/sk.js +18 -0
  209. package/lib/locale/sk.js.map +1 -1
  210. package/lib/locale/sl.d.ts +18 -0
  211. package/lib/locale/sl.js +18 -0
  212. package/lib/locale/sl.js.map +1 -1
  213. package/lib/locale/sr-Cyrl.d.ts +18 -0
  214. package/lib/locale/sr-Cyrl.js +18 -0
  215. package/lib/locale/sr-Cyrl.js.map +1 -1
  216. package/lib/locale/sr-Latn.d.ts +18 -0
  217. package/lib/locale/sr-Latn.js +18 -0
  218. package/lib/locale/sr-Latn.js.map +1 -1
  219. package/lib/locale/sv.d.ts +18 -0
  220. package/lib/locale/sv.js +18 -0
  221. package/lib/locale/sv.js.map +1 -1
  222. package/lib/locale/th.d.ts +18 -0
  223. package/lib/locale/th.js +18 -0
  224. package/lib/locale/th.js.map +1 -1
  225. package/lib/locale/tr.d.ts +18 -0
  226. package/lib/locale/tr.js +18 -0
  227. package/lib/locale/tr.js.map +1 -1
  228. package/lib/locale/uk.d.ts +18 -0
  229. package/lib/locale/uk.js +18 -0
  230. package/lib/locale/uk.js.map +1 -1
  231. package/lib/locale/vi.d.ts +18 -0
  232. package/lib/locale/vi.js +18 -0
  233. package/lib/locale/vi.js.map +1 -1
  234. package/lib/locale/zh-Hans.d.ts +18 -0
  235. package/lib/locale/zh-Hans.js +18 -0
  236. package/lib/locale/zh-Hans.js.map +1 -1
  237. package/lib/locale/zh-Hant.d.ts +18 -0
  238. package/lib/locale/zh-Hant.js +18 -0
  239. package/lib/locale/zh-Hant.js.map +1 -1
  240. package/package.json +1 -1
  241. package/lib/components/VKbd/VKbd.sass +0 -15
  242. package/lib/composables/hotkey.d.ts +0 -9
  243. package/lib/composables/hotkey.js.map +0 -1
@@ -75,13 +75,13 @@ export const VCalendarInterval = genericComponent()({
75
75
  "style": _normalizeStyle(`height: ${convertToUnit(props.intervalHeight)}`)
76
76
  }, [_createElementVNode("div", _mergeProps({
77
77
  "class": "v-calendar-day__row-label"
78
- }, getPrefixedEventHandlers(attrs, ':time', () => props)), [slots.intervalTitle?.({
78
+ }, getPrefixedEventHandlers(attrs, ':time', () => props)), [slots['interval-title']?.({
79
79
  interval: interval.value
80
80
  }) ?? (props.index ? props.intervalFormat ? typeof props.intervalFormat === 'string' ? adapter.format(interval.value.start, 'hours12h') : props.intervalFormat(interval.value) : interval.value.label : '12 AM')]), _createElementVNode("div", {
81
81
  "class": "v-calendar-day__row-hairline"
82
82
  }, null), _createElementVNode("div", _mergeProps({
83
83
  "class": ['v-calendar-day__row-content', interval.value.events.some(e => !e.last) ? 'v-calendar-day__row-content-through' : '']
84
- }, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots.intervalBody?.({
84
+ }, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots['interval-body']?.({
85
85
  interval: interval.value
86
86
  }) ?? _createElementVNode("div", null, [interval.value.events?.map(event => _createVNode(VCalendarIntervalEvent, _mergeProps({
87
87
  "event": event,
@@ -90,8 +90,8 @@ export const VCalendarInterval = genericComponent()({
90
90
  "intervalDuration": props.intervalDuration,
91
91
  "intervalHeight": props.intervalHeight
92
92
  }, attrs), {
93
- ...(slots.intervalEvent ? {
94
- intervalEvent: _ref2 => {
93
+ ...(slots['interval-event'] ? {
94
+ 'interval-event': _ref2 => {
95
95
  let {
96
96
  height,
97
97
  margin,
@@ -99,7 +99,7 @@ export const VCalendarInterval = genericComponent()({
99
99
  event,
100
100
  interval
101
101
  } = _ref2;
102
- return slots.intervalEvent?.({
102
+ return slots['interval-event']?.({
103
103
  height,
104
104
  margin,
105
105
  eventClass,
@@ -113,7 +113,7 @@ export const VCalendarInterval = genericComponent()({
113
113
  "style": _normalizeStyle(`height: ${convertToUnit(props.intervalHeight)}`)
114
114
  }, [_createElementVNode("div", _mergeProps({
115
115
  "class": ['v-calendar-day__row-content', interval.value.events.some(e => !e.last) ? 'v-calendar-day__row-content-through' : '']
116
- }, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots.intervalBody?.({
116
+ }, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots['interval-body']?.({
117
117
  interval: interval.value
118
118
  }) ?? interval.value.events?.map(event => _createVNode(VCalendarIntervalEvent, _mergeProps({
119
119
  "event": event,
@@ -122,8 +122,8 @@ export const VCalendarInterval = genericComponent()({
122
122
  "intervalDuration": props.intervalDuration,
123
123
  "intervalHeight": props.intervalHeight
124
124
  }, attrs), {
125
- ...(slots.intervalEvent ? {
126
- intervalEvent: _ref3 => {
125
+ ...(slots['interval-event'] ? {
126
+ 'interval-event': _ref3 => {
127
127
  let {
128
128
  height,
129
129
  margin,
@@ -131,7 +131,7 @@ export const VCalendarInterval = genericComponent()({
131
131
  event,
132
132
  interval
133
133
  } = _ref3;
134
- return slots.intervalEvent?.({
134
+ return slots['interval-event']?.({
135
135
  height,
136
136
  margin,
137
137
  eventClass,
@@ -1 +1 @@
1
- {"version":3,"file":"VCalendarInterval.js","names":["VCalendarIntervalEvent","useDate","computed","convertToUnit","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarIntervalProps","day","type","Object","default","dayIndex","Number","events","Array","intervalDivisions","intervalDuration","intervalHeight","intervalFormat","String","Function","intervalStart","VCalendarInterval","name","inheritAttrs","props","index","required","setup","_ref","attrs","emit","slots","adapter","interval","start","addMinutes","startOfDay","date","end","label","format","filter","e","allDay","isEqual","isWithinRange","map","first","last","_createElementVNode","_normalizeStyle","_mergeProps","intervalTitle","value","some","intervalBody","event","_createVNode","intervalEvent","_ref2","height","margin","eventClass","_ref3"],"sources":["../../../src/labs/VCalendar/VCalendarInterval.tsx"],"sourcesContent":["// Styles\nimport './VCalendarInterval.sass'\n\n// Components\nimport { VCalendarIntervalEvent } from './VCalendarIntervalEvent'\n\n// Composables\nimport { useDate } from '@/composables/date'\n\n// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\ntype Interval = {\n label: string\n start: unknown\n end: unknown\n events: any[]\n}\n\nexport type VCalendarIntervalSlots = {\n intervalBody: { interval: Interval }\n intervalEvent: {\n height: string\n margin: string\n eventClass: string\n event: any\n interval: Interval\n }\n intervalTitle: { interval: Interval }\n}\n\nexport const makeVCalendarIntervalProps = propsFactory({\n day: {\n type: Object,\n default: () => ({}),\n },\n dayIndex: Number,\n events: Array<any>,\n intervalDivisions: {\n type: Number,\n default: 2,\n },\n intervalDuration: {\n type: Number,\n default: 60,\n },\n intervalHeight: {\n type: Number,\n default: 48,\n },\n intervalFormat: {\n type: [String, Function],\n default: 'fullTime12h',\n },\n intervalStart: {\n type: Number,\n default: 0,\n },\n}, 'VCalendarInterval')\n\nexport const VCalendarInterval = genericComponent<VCalendarIntervalSlots>()({\n name: 'VCalendarInterval',\n\n inheritAttrs: false,\n\n props: {\n index: {\n type: Number,\n required: true,\n },\n\n ...makeVCalendarIntervalProps(),\n },\n\n setup (props, { attrs, emit, slots }) {\n const adapter = useDate()\n const interval = computed(() => {\n const start = adapter.addMinutes(adapter.startOfDay(props.day.date), (props.intervalDuration * (props.index + props.intervalStart)))\n const end = adapter.addMinutes(\n adapter.startOfDay(props.day.date),\n (props.intervalDuration * (props.index + props.intervalStart + 1)) - 1\n )\n return {\n ...props.day,\n label: adapter.format(start, 'fullTime24h'),\n start,\n end,\n events: props.events\n ? props.events\n .filter(e => !e.allDay &&\n (adapter.isEqual(start, e.start) ||\n adapter.isWithinRange(e.start, [start, end]) ||\n adapter.isWithinRange(start, [e.start, e.end]) ||\n adapter.isEqual(end, e.end))\n )\n .map(e => {\n return {\n ...e,\n first: adapter.isEqual(start, e.start) || adapter.isWithinRange(e.start, [start, end]),\n last: adapter.isEqual(end, e.end) || adapter.isWithinRange(e.end, [start, end]),\n }\n })\n : [],\n }\n })\n\n useRender(() => {\n return (\n props.dayIndex === 0 ? (\n <div class=\"v-calendar-day__row-with-label\" style={ `height: ${convertToUnit(props.intervalHeight)}` }>\n <div\n class=\"v-calendar-day__row-label\"\n { ...getPrefixedEventHandlers(attrs, ':time', () => props) }\n >\n {\n slots.intervalTitle?.({ interval: interval.value }) ?? (\n props.index\n ? props.intervalFormat\n ? typeof props.intervalFormat === 'string'\n ? adapter.format(interval.value.start, 'hours12h')\n : props.intervalFormat(interval.value)\n : interval.value.label\n : '12 AM'\n )\n }\n </div>\n <div class=\"v-calendar-day__row-hairline\"></div>\n <div\n class={['v-calendar-day__row-content', interval.value.events.some(e => !e.last)\n ? 'v-calendar-day__row-content-through'\n : '']}\n { ...getPrefixedEventHandlers(attrs, ':interval', () => interval.value) }\n >\n {\n slots.intervalBody?.({ interval: interval.value }) ?? (\n <div>\n {\n interval.value.events?.map(event => (\n <VCalendarIntervalEvent\n event={ event }\n interval={ interval.value }\n intervalDivisions={ props.intervalDivisions }\n intervalDuration={ props.intervalDuration }\n intervalHeight={ props.intervalHeight }\n { ...attrs }\n >\n {{\n ...(slots.intervalEvent ? {\n intervalEvent: ({ height, margin, eventClass, event, interval }) => (\n slots.intervalEvent?.({ height, margin, eventClass, event, interval })\n ),\n } : {}),\n }}\n </VCalendarIntervalEvent>\n ))\n }\n </div>\n )\n }\n </div>\n </div>\n ) : (\n <div\n class=\"v-calendar-day__row-without-label\"\n style={ `height: ${convertToUnit(props.intervalHeight)}` }\n >\n <div\n class={['v-calendar-day__row-content', interval.value.events.some(e => !e.last)\n ? 'v-calendar-day__row-content-through' : '']}\n { ...getPrefixedEventHandlers(attrs, ':interval', () => interval.value) }\n >\n {\n slots.intervalBody?.({ interval: interval.value }) ?? (\n interval.value.events?.map(event => (\n <VCalendarIntervalEvent\n event={ event }\n interval={ interval.value }\n intervalDivisions={ props.intervalDivisions }\n intervalDuration={ props.intervalDuration }\n intervalHeight={ props.intervalHeight }\n { ...attrs }\n >\n {{\n ...(slots.intervalEvent ? {\n intervalEvent: ({ height, margin, eventClass, event, interval }) => (\n slots.intervalEvent?.({ height, margin, eventClass, event, interval })\n ),\n } : {}),\n }}\n </VCalendarIntervalEvent>\n ))\n )\n }\n </div>\n </div>\n )\n )\n })\n\n return { interval }\n },\n})\n\nexport type VCalendarInterval = InstanceType<typeof VCalendarInterval>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VCalendarInterval.js","names":["VCalendarIntervalEvent","useDate","computed","convertToUnit","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarIntervalProps","day","type","Object","default","dayIndex","Number","events","Array","intervalDivisions","intervalDuration","intervalHeight","intervalFormat","String","Function","intervalStart","VCalendarInterval","name","inheritAttrs","props","index","required","setup","_ref","attrs","emit","slots","adapter","interval","start","addMinutes","startOfDay","date","end","label","format","filter","e","allDay","isEqual","isWithinRange","map","first","last","_createElementVNode","_normalizeStyle","_mergeProps","value","some","event","_createVNode","_ref2","height","margin","eventClass","_ref3"],"sources":["../../../src/labs/VCalendar/VCalendarInterval.tsx"],"sourcesContent":["// Styles\nimport './VCalendarInterval.sass'\n\n// Components\nimport { VCalendarIntervalEvent } from './VCalendarIntervalEvent'\n\n// Composables\nimport { useDate } from '@/composables/date'\n\n// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\ntype Interval = {\n label: string\n start: unknown\n end: unknown\n events: any[]\n}\n\nexport type VCalendarIntervalSlots = {\n 'interval-body': { interval: Interval }\n 'interval-event': {\n height: string\n margin: string\n eventClass: string\n event: any\n interval: Interval\n }\n 'interval-title': { interval: Interval }\n}\n\nexport const makeVCalendarIntervalProps = propsFactory({\n day: {\n type: Object,\n default: () => ({}),\n },\n dayIndex: Number,\n events: Array<any>,\n intervalDivisions: {\n type: Number,\n default: 2,\n },\n intervalDuration: {\n type: Number,\n default: 60,\n },\n intervalHeight: {\n type: Number,\n default: 48,\n },\n intervalFormat: {\n type: [String, Function],\n default: 'fullTime12h',\n },\n intervalStart: {\n type: Number,\n default: 0,\n },\n}, 'VCalendarInterval')\n\nexport const VCalendarInterval = genericComponent<VCalendarIntervalSlots>()({\n name: 'VCalendarInterval',\n\n inheritAttrs: false,\n\n props: {\n index: {\n type: Number,\n required: true,\n },\n\n ...makeVCalendarIntervalProps(),\n },\n\n setup (props, { attrs, emit, slots }) {\n const adapter = useDate()\n const interval = computed(() => {\n const start = adapter.addMinutes(adapter.startOfDay(props.day.date), (props.intervalDuration * (props.index + props.intervalStart)))\n const end = adapter.addMinutes(\n adapter.startOfDay(props.day.date),\n (props.intervalDuration * (props.index + props.intervalStart + 1)) - 1\n )\n return {\n ...props.day,\n label: adapter.format(start, 'fullTime24h'),\n start,\n end,\n events: props.events\n ? props.events\n .filter(e => !e.allDay &&\n (adapter.isEqual(start, e.start) ||\n adapter.isWithinRange(e.start, [start, end]) ||\n adapter.isWithinRange(start, [e.start, e.end]) ||\n adapter.isEqual(end, e.end))\n )\n .map(e => {\n return {\n ...e,\n first: adapter.isEqual(start, e.start) || adapter.isWithinRange(e.start, [start, end]),\n last: adapter.isEqual(end, e.end) || adapter.isWithinRange(e.end, [start, end]),\n }\n })\n : [],\n }\n })\n\n useRender(() => {\n return (\n props.dayIndex === 0 ? (\n <div class=\"v-calendar-day__row-with-label\" style={ `height: ${convertToUnit(props.intervalHeight)}` }>\n <div\n class=\"v-calendar-day__row-label\"\n { ...getPrefixedEventHandlers(attrs, ':time', () => props) }\n >\n {\n slots['interval-title']?.({ interval: interval.value }) ?? (\n props.index\n ? props.intervalFormat\n ? typeof props.intervalFormat === 'string'\n ? adapter.format(interval.value.start, 'hours12h')\n : props.intervalFormat(interval.value)\n : interval.value.label\n : '12 AM'\n )\n }\n </div>\n <div class=\"v-calendar-day__row-hairline\"></div>\n <div\n class={['v-calendar-day__row-content', interval.value.events.some(e => !e.last)\n ? 'v-calendar-day__row-content-through'\n : '']}\n { ...getPrefixedEventHandlers(attrs, ':interval', () => interval.value) }\n >\n {\n slots['interval-body']?.({ interval: interval.value }) ?? (\n <div>\n {\n interval.value.events?.map(event => (\n <VCalendarIntervalEvent\n event={ event }\n interval={ interval.value }\n intervalDivisions={ props.intervalDivisions }\n intervalDuration={ props.intervalDuration }\n intervalHeight={ props.intervalHeight }\n { ...attrs }\n >\n {{\n ...(slots['interval-event'] ? {\n 'interval-event': ({ height, margin, eventClass, event, interval }) => (\n slots['interval-event']?.({ height, margin, eventClass, event, interval })\n ),\n } : {}),\n }}\n </VCalendarIntervalEvent>\n ))\n }\n </div>\n )\n }\n </div>\n </div>\n ) : (\n <div\n class=\"v-calendar-day__row-without-label\"\n style={ `height: ${convertToUnit(props.intervalHeight)}` }\n >\n <div\n class={['v-calendar-day__row-content', interval.value.events.some(e => !e.last)\n ? 'v-calendar-day__row-content-through' : '']}\n { ...getPrefixedEventHandlers(attrs, ':interval', () => interval.value) }\n >\n {\n slots['interval-body']?.({ interval: interval.value }) ?? (\n interval.value.events?.map(event => (\n <VCalendarIntervalEvent\n event={ event }\n interval={ interval.value }\n intervalDivisions={ props.intervalDivisions }\n intervalDuration={ props.intervalDuration }\n intervalHeight={ props.intervalHeight }\n { ...attrs }\n >\n {{\n ...(slots['interval-event'] ? {\n 'interval-event': ({ height, margin, eventClass, event, interval }) => (\n slots['interval-event']?.({ height, margin, eventClass, event, interval })\n ),\n } : {}),\n }}\n </VCalendarIntervalEvent>\n ))\n )\n }\n </div>\n </div>\n )\n )\n })\n\n return { interval }\n },\n})\n\nexport type VCalendarInterval = InstanceType<typeof VCalendarInterval>\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  export type VCalendarIntervalEventSlots = {
2
- intervalEvent: {
2
+ 'interval-event': {
3
3
  height: string;
4
4
  margin: string;
5
5
  eventClass: string;
@@ -69,7 +69,7 @@ export declare const VCalendarIntervalEvent: {
69
69
  event?: Record<string, any> | undefined;
70
70
  } & {
71
71
  $children?: {} | import("vue").VNodeChild | {
72
- intervalEvent?: ((arg: {
72
+ 'interval-event'?: ((arg: {
73
73
  height: string;
74
74
  margin: string;
75
75
  eventClass: string;
@@ -78,7 +78,7 @@ export declare const VCalendarIntervalEvent: {
78
78
  }) => import("vue").VNodeChild) | undefined;
79
79
  };
80
80
  'v-slots'?: {
81
- intervalEvent?: false | ((arg: {
81
+ 'interval-event'?: false | ((arg: {
82
82
  height: string;
83
83
  margin: string;
84
84
  eventClass: string;
@@ -87,7 +87,7 @@ export declare const VCalendarIntervalEvent: {
87
87
  }) => import("vue").VNodeChild) | undefined;
88
88
  } | undefined;
89
89
  } & {
90
- "v-slot:intervalEvent"?: false | ((arg: {
90
+ "v-slot:interval-event"?: false | ((arg: {
91
91
  height: string;
92
92
  margin: string;
93
93
  eventClass: string;
@@ -97,7 +97,7 @@ export declare const VCalendarIntervalEvent: {
97
97
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {
98
98
  allDay: boolean;
99
99
  }, true, {}, import("vue").SlotsType<Partial<{
100
- intervalEvent: (arg: {
100
+ 'interval-event': (arg: {
101
101
  height: string;
102
102
  margin: string;
103
103
  eventClass: string;
@@ -121,7 +121,7 @@ export declare const VCalendarIntervalEvent: {
121
121
  event?: Record<string, any> | undefined;
122
122
  } & {
123
123
  $children?: {} | import("vue").VNodeChild | {
124
- intervalEvent?: ((arg: {
124
+ 'interval-event'?: ((arg: {
125
125
  height: string;
126
126
  margin: string;
127
127
  eventClass: string;
@@ -130,7 +130,7 @@ export declare const VCalendarIntervalEvent: {
130
130
  }) => import("vue").VNodeChild) | undefined;
131
131
  };
132
132
  'v-slots'?: {
133
- intervalEvent?: false | ((arg: {
133
+ 'interval-event'?: false | ((arg: {
134
134
  height: string;
135
135
  margin: string;
136
136
  eventClass: string;
@@ -139,7 +139,7 @@ export declare const VCalendarIntervalEvent: {
139
139
  }) => import("vue").VNodeChild) | undefined;
140
140
  } | undefined;
141
141
  } & {
142
- "v-slot:intervalEvent"?: false | ((arg: {
142
+ "v-slot:interval-event"?: false | ((arg: {
143
143
  height: string;
144
144
  margin: string;
145
145
  eventClass: string;
@@ -162,7 +162,7 @@ export declare const VCalendarIntervalEvent: {
162
162
  event?: Record<string, any> | undefined;
163
163
  } & {
164
164
  $children?: {} | import("vue").VNodeChild | {
165
- intervalEvent?: ((arg: {
165
+ 'interval-event'?: ((arg: {
166
166
  height: string;
167
167
  margin: string;
168
168
  eventClass: string;
@@ -171,7 +171,7 @@ export declare const VCalendarIntervalEvent: {
171
171
  }) => import("vue").VNodeChild) | undefined;
172
172
  };
173
173
  'v-slots'?: {
174
- intervalEvent?: false | ((arg: {
174
+ 'interval-event'?: false | ((arg: {
175
175
  height: string;
176
176
  margin: string;
177
177
  eventClass: string;
@@ -180,7 +180,7 @@ export declare const VCalendarIntervalEvent: {
180
180
  }) => import("vue").VNodeChild) | undefined;
181
181
  } | undefined;
182
182
  } & {
183
- "v-slot:intervalEvent"?: false | ((arg: {
183
+ "v-slot:interval-event"?: false | ((arg: {
184
184
  height: string;
185
185
  margin: string;
186
186
  eventClass: string;
@@ -190,7 +190,7 @@ export declare const VCalendarIntervalEvent: {
190
190
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, {
191
191
  allDay: boolean;
192
192
  }, {}, string, import("vue").SlotsType<Partial<{
193
- intervalEvent: (arg: {
193
+ 'interval-event': (arg: {
194
194
  height: string;
195
195
  margin: string;
196
196
  eventClass: string;
@@ -68,7 +68,7 @@ export const VCalendarIntervalEvent = genericComponent()({
68
68
  }
69
69
  };
70
70
  useRender(() => {
71
- return _createElementVNode("div", null, [slots.intervalEvent?.({
71
+ return _createElementVNode("div", null, [slots['interval-event']?.({
72
72
  height: calcHeight().height,
73
73
  margin: calcHeight().margin,
74
74
  eventClass: 'v-calendar-internal-event',
@@ -1 +1 @@
1
- {"version":3,"file":"VCalendarIntervalEvent.js","names":["VSheet","useDate","convertToUnit","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarIntervalEventProps","allDay","Boolean","interval","Object","intervalDivisions","type","Number","required","intervalDuration","intervalHeight","event","VCalendarIntervalEvent","name","inheritAttrs","props","setup","_ref","attrs","emit","slots","adapter","calcHeight","first","last","isEqual","end","height","margin","Array","from","length","_","x","reduce","total","div","index","isBefore","addMinutes","start","_createElementVNode","intervalEvent","eventClass","_createVNode","_mergeProps","color","undefined","day","default","title"],"sources":["../../../src/labs/VCalendar/VCalendarIntervalEvent.tsx"],"sourcesContent":["// Styles\nimport './VCalendarIntervalEvent.sass'\n\n// Components\nimport { VSheet } from '@/components/VSheet'\n\n// Composables\nimport { useDate } from '@/composables/date'\n\n// Utilities\nimport { convertToUnit, genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\nexport type VCalendarIntervalEventSlots = {\n intervalEvent: { height: string, margin: string, eventClass: string, event: any, interval: any }\n}\n\nexport const makeVCalendarIntervalEventProps = propsFactory({\n allDay: Boolean,\n interval: Object,\n intervalDivisions: {\n type: Number,\n required: true,\n },\n intervalDuration: {\n type: Number,\n required: true,\n },\n intervalHeight: {\n type: Number,\n required: true,\n },\n event: Object,\n}, 'VCalendarIntervalEvent')\n\nexport const VCalendarIntervalEvent = genericComponent<VCalendarIntervalEventSlots>()({\n name: 'VCalendarIntervalEvent',\n\n inheritAttrs: false,\n\n props: makeVCalendarIntervalEventProps(),\n\n setup (props, { attrs, emit, slots }) {\n const adapter = useDate()\n const calcHeight = () => {\n if ((!props.event?.first && !props.event?.last) || adapter.isEqual(props.event?.end, props.interval?.end)) {\n return { height: `${props.intervalHeight}px`, margin: convertToUnit(0) }\n } else {\n const { height, margin } = Array.from({ length: props.intervalDivisions },\n (_, x: number) => (x + 1) * (props.intervalDuration / props.intervalDivisions)\n )\n .reduce((total, div, index) => {\n if (adapter.isBefore(adapter.addMinutes(props.interval?.start, div), props.event?.end)) {\n return {\n height: convertToUnit((props.intervalHeight / props.intervalDivisions) * index),\n margin: convertToUnit((props.intervalHeight / props.intervalDivisions) * index),\n }\n }\n return { height: total.height, margin: total.margin }\n }, { height: '', margin: '' })\n return { height, margin }\n }\n }\n\n useRender(() => {\n return (\n <div>\n {\n slots.intervalEvent?.({\n height: calcHeight().height,\n margin: calcHeight().margin,\n eventClass: 'v-calendar-internal-event',\n event: props.event,\n interval: props.interval,\n }) ?? (\n <VSheet\n height={ calcHeight().height }\n density=\"comfortable\"\n style={ `margin-top: ${calcHeight().margin}` }\n class=\"v-calendar-internal-event\"\n color={ props.event?.color ?? undefined }\n rounded={\n props.event?.first && props.event?.last ? true\n : props.event?.first ? 't'\n : props.event?.last ? 'b'\n : false\n }\n { ...getPrefixedEventHandlers(attrs, ':event', () => ({\n event: props.event,\n allDay: false,\n day: null,\n interval: props.interval,\n intervalDivisions: props.intervalDivisions,\n intervalDuration: props.intervalDuration,\n intervalHeight: props.intervalHeight,\n }))}\n >\n { props.event?.first ? props.event?.title : '' }\n </VSheet>\n )\n }\n </div>\n )\n })\n\n return {}\n },\n\n})\n\nexport type VCalendarIntervalEvent = InstanceType<typeof VCalendarIntervalEvent>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VCalendarIntervalEvent.js","names":["VSheet","useDate","convertToUnit","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarIntervalEventProps","allDay","Boolean","interval","Object","intervalDivisions","type","Number","required","intervalDuration","intervalHeight","event","VCalendarIntervalEvent","name","inheritAttrs","props","setup","_ref","attrs","emit","slots","adapter","calcHeight","first","last","isEqual","end","height","margin","Array","from","length","_","x","reduce","total","div","index","isBefore","addMinutes","start","_createElementVNode","eventClass","_createVNode","_mergeProps","color","undefined","day","default","title"],"sources":["../../../src/labs/VCalendar/VCalendarIntervalEvent.tsx"],"sourcesContent":["// Styles\nimport './VCalendarIntervalEvent.sass'\n\n// Components\nimport { VSheet } from '@/components/VSheet'\n\n// Composables\nimport { useDate } from '@/composables/date'\n\n// Utilities\nimport { convertToUnit, genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\nexport type VCalendarIntervalEventSlots = {\n 'interval-event': { height: string, margin: string, eventClass: string, event: any, interval: any }\n}\n\nexport const makeVCalendarIntervalEventProps = propsFactory({\n allDay: Boolean,\n interval: Object,\n intervalDivisions: {\n type: Number,\n required: true,\n },\n intervalDuration: {\n type: Number,\n required: true,\n },\n intervalHeight: {\n type: Number,\n required: true,\n },\n event: Object,\n}, 'VCalendarIntervalEvent')\n\nexport const VCalendarIntervalEvent = genericComponent<VCalendarIntervalEventSlots>()({\n name: 'VCalendarIntervalEvent',\n\n inheritAttrs: false,\n\n props: makeVCalendarIntervalEventProps(),\n\n setup (props, { attrs, emit, slots }) {\n const adapter = useDate()\n const calcHeight = () => {\n if ((!props.event?.first && !props.event?.last) || adapter.isEqual(props.event?.end, props.interval?.end)) {\n return { height: `${props.intervalHeight}px`, margin: convertToUnit(0) }\n } else {\n const { height, margin } = Array.from({ length: props.intervalDivisions },\n (_, x: number) => (x + 1) * (props.intervalDuration / props.intervalDivisions)\n )\n .reduce((total, div, index) => {\n if (adapter.isBefore(adapter.addMinutes(props.interval?.start, div), props.event?.end)) {\n return {\n height: convertToUnit((props.intervalHeight / props.intervalDivisions) * index),\n margin: convertToUnit((props.intervalHeight / props.intervalDivisions) * index),\n }\n }\n return { height: total.height, margin: total.margin }\n }, { height: '', margin: '' })\n return { height, margin }\n }\n }\n\n useRender(() => {\n return (\n <div>\n {\n slots['interval-event']?.({\n height: calcHeight().height,\n margin: calcHeight().margin,\n eventClass: 'v-calendar-internal-event',\n event: props.event,\n interval: props.interval,\n }) ?? (\n <VSheet\n height={ calcHeight().height }\n density=\"comfortable\"\n style={ `margin-top: ${calcHeight().margin}` }\n class=\"v-calendar-internal-event\"\n color={ props.event?.color ?? undefined }\n rounded={\n props.event?.first && props.event?.last ? true\n : props.event?.first ? 't'\n : props.event?.last ? 'b'\n : false\n }\n { ...getPrefixedEventHandlers(attrs, ':event', () => ({\n event: props.event,\n allDay: false,\n day: null,\n interval: props.interval,\n intervalDivisions: props.intervalDivisions,\n intervalDuration: props.intervalDuration,\n intervalHeight: props.intervalHeight,\n }))}\n >\n { props.event?.first ? props.event?.title : '' }\n </VSheet>\n )\n }\n </div>\n )\n })\n\n return {}\n },\n\n})\n\nexport type VCalendarIntervalEvent = InstanceType<typeof VCalendarIntervalEvent>\n"],"mappings":"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","ignoreList":[]}
@@ -1,16 +1,16 @@
1
1
  import type { PropType } from 'vue';
2
2
  import type { CalendarDay } from "../../composables/calendar.js";
3
3
  export type VCalendarMonthDaySlots = {
4
- dayBody: {
4
+ 'day-body': {
5
5
  day?: CalendarDay;
6
6
  events?: Array<any>;
7
7
  };
8
- dayEvent: {
8
+ 'day-event': {
9
9
  day?: CalendarDay;
10
10
  allDay: boolean;
11
11
  event: Record<string, unknown>;
12
12
  };
13
- dayTitle: {
13
+ 'day-title': {
14
14
  title?: number | string;
15
15
  };
16
16
  };
@@ -77,60 +77,60 @@ export declare const VCalendarMonthDay: {
77
77
  events?: any[] | undefined;
78
78
  } & {
79
79
  $children?: {} | import("vue").VNodeChild | {
80
- dayBody?: ((arg: {
80
+ 'day-body'?: ((arg: {
81
81
  day?: CalendarDay;
82
82
  events?: Array<any>;
83
83
  }) => import("vue").VNodeChild) | undefined;
84
- dayEvent?: ((arg: {
84
+ 'day-event'?: ((arg: {
85
85
  day?: CalendarDay;
86
86
  allDay: boolean;
87
87
  event: Record<string, unknown>;
88
88
  }) => import("vue").VNodeChild) | undefined;
89
- dayTitle?: ((arg: {
89
+ 'day-title'?: ((arg: {
90
90
  title?: number | string;
91
91
  }) => import("vue").VNodeChild) | undefined;
92
92
  };
93
93
  'v-slots'?: {
94
- dayBody?: false | ((arg: {
94
+ 'day-body'?: false | ((arg: {
95
95
  day?: CalendarDay;
96
96
  events?: Array<any>;
97
97
  }) => import("vue").VNodeChild) | undefined;
98
- dayEvent?: false | ((arg: {
98
+ 'day-event'?: false | ((arg: {
99
99
  day?: CalendarDay;
100
100
  allDay: boolean;
101
101
  event: Record<string, unknown>;
102
102
  }) => import("vue").VNodeChild) | undefined;
103
- dayTitle?: false | ((arg: {
103
+ 'day-title'?: false | ((arg: {
104
104
  title?: number | string;
105
105
  }) => import("vue").VNodeChild) | undefined;
106
106
  } | undefined;
107
107
  } & {
108
- "v-slot:dayBody"?: false | ((arg: {
108
+ "v-slot:day-body"?: false | ((arg: {
109
109
  day?: CalendarDay;
110
110
  events?: Array<any>;
111
111
  }) => import("vue").VNodeChild) | undefined;
112
- "v-slot:dayEvent"?: false | ((arg: {
112
+ "v-slot:day-event"?: false | ((arg: {
113
113
  day?: CalendarDay;
114
114
  allDay: boolean;
115
115
  event: Record<string, unknown>;
116
116
  }) => import("vue").VNodeChild) | undefined;
117
- "v-slot:dayTitle"?: false | ((arg: {
117
+ "v-slot:day-title"?: false | ((arg: {
118
118
  title?: number | string;
119
119
  }) => import("vue").VNodeChild) | undefined;
120
120
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {
121
121
  active: boolean;
122
122
  disabled: boolean;
123
123
  }, true, {}, import("vue").SlotsType<Partial<{
124
- dayBody: (arg: {
124
+ 'day-body': (arg: {
125
125
  day?: CalendarDay;
126
126
  events?: Array<any>;
127
127
  }) => import("vue").VNode[];
128
- dayEvent: (arg: {
128
+ 'day-event': (arg: {
129
129
  day?: CalendarDay;
130
130
  allDay: boolean;
131
131
  event: Record<string, unknown>;
132
132
  }) => import("vue").VNode[];
133
- dayTitle: (arg: {
133
+ 'day-title': (arg: {
134
134
  title?: number | string;
135
135
  }) => import("vue").VNode[];
136
136
  }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
@@ -150,44 +150,44 @@ export declare const VCalendarMonthDay: {
150
150
  events?: any[] | undefined;
151
151
  } & {
152
152
  $children?: {} | import("vue").VNodeChild | {
153
- dayBody?: ((arg: {
153
+ 'day-body'?: ((arg: {
154
154
  day?: CalendarDay;
155
155
  events?: Array<any>;
156
156
  }) => import("vue").VNodeChild) | undefined;
157
- dayEvent?: ((arg: {
157
+ 'day-event'?: ((arg: {
158
158
  day?: CalendarDay;
159
159
  allDay: boolean;
160
160
  event: Record<string, unknown>;
161
161
  }) => import("vue").VNodeChild) | undefined;
162
- dayTitle?: ((arg: {
162
+ 'day-title'?: ((arg: {
163
163
  title?: number | string;
164
164
  }) => import("vue").VNodeChild) | undefined;
165
165
  };
166
166
  'v-slots'?: {
167
- dayBody?: false | ((arg: {
167
+ 'day-body'?: false | ((arg: {
168
168
  day?: CalendarDay;
169
169
  events?: Array<any>;
170
170
  }) => import("vue").VNodeChild) | undefined;
171
- dayEvent?: false | ((arg: {
171
+ 'day-event'?: false | ((arg: {
172
172
  day?: CalendarDay;
173
173
  allDay: boolean;
174
174
  event: Record<string, unknown>;
175
175
  }) => import("vue").VNodeChild) | undefined;
176
- dayTitle?: false | ((arg: {
176
+ 'day-title'?: false | ((arg: {
177
177
  title?: number | string;
178
178
  }) => import("vue").VNodeChild) | undefined;
179
179
  } | undefined;
180
180
  } & {
181
- "v-slot:dayBody"?: false | ((arg: {
181
+ "v-slot:day-body"?: false | ((arg: {
182
182
  day?: CalendarDay;
183
183
  events?: Array<any>;
184
184
  }) => import("vue").VNodeChild) | undefined;
185
- "v-slot:dayEvent"?: false | ((arg: {
185
+ "v-slot:day-event"?: false | ((arg: {
186
186
  day?: CalendarDay;
187
187
  allDay: boolean;
188
188
  event: Record<string, unknown>;
189
189
  }) => import("vue").VNodeChild) | undefined;
190
- "v-slot:dayTitle"?: false | ((arg: {
190
+ "v-slot:day-title"?: false | ((arg: {
191
191
  title?: number | string;
192
192
  }) => import("vue").VNodeChild) | undefined;
193
193
  }, {}, {}, {}, {}, {
@@ -207,60 +207,60 @@ export declare const VCalendarMonthDay: {
207
207
  events?: any[] | undefined;
208
208
  } & {
209
209
  $children?: {} | import("vue").VNodeChild | {
210
- dayBody?: ((arg: {
210
+ 'day-body'?: ((arg: {
211
211
  day?: CalendarDay;
212
212
  events?: Array<any>;
213
213
  }) => import("vue").VNodeChild) | undefined;
214
- dayEvent?: ((arg: {
214
+ 'day-event'?: ((arg: {
215
215
  day?: CalendarDay;
216
216
  allDay: boolean;
217
217
  event: Record<string, unknown>;
218
218
  }) => import("vue").VNodeChild) | undefined;
219
- dayTitle?: ((arg: {
219
+ 'day-title'?: ((arg: {
220
220
  title?: number | string;
221
221
  }) => import("vue").VNodeChild) | undefined;
222
222
  };
223
223
  'v-slots'?: {
224
- dayBody?: false | ((arg: {
224
+ 'day-body'?: false | ((arg: {
225
225
  day?: CalendarDay;
226
226
  events?: Array<any>;
227
227
  }) => import("vue").VNodeChild) | undefined;
228
- dayEvent?: false | ((arg: {
228
+ 'day-event'?: false | ((arg: {
229
229
  day?: CalendarDay;
230
230
  allDay: boolean;
231
231
  event: Record<string, unknown>;
232
232
  }) => import("vue").VNodeChild) | undefined;
233
- dayTitle?: false | ((arg: {
233
+ 'day-title'?: false | ((arg: {
234
234
  title?: number | string;
235
235
  }) => import("vue").VNodeChild) | undefined;
236
236
  } | undefined;
237
237
  } & {
238
- "v-slot:dayBody"?: false | ((arg: {
238
+ "v-slot:day-body"?: false | ((arg: {
239
239
  day?: CalendarDay;
240
240
  events?: Array<any>;
241
241
  }) => import("vue").VNodeChild) | undefined;
242
- "v-slot:dayEvent"?: false | ((arg: {
242
+ "v-slot:day-event"?: false | ((arg: {
243
243
  day?: CalendarDay;
244
244
  allDay: boolean;
245
245
  event: Record<string, unknown>;
246
246
  }) => import("vue").VNodeChild) | undefined;
247
- "v-slot:dayTitle"?: false | ((arg: {
247
+ "v-slot:day-title"?: false | ((arg: {
248
248
  title?: number | string;
249
249
  }) => import("vue").VNodeChild) | undefined;
250
250
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, {
251
251
  active: boolean;
252
252
  disabled: boolean;
253
253
  }, {}, string, import("vue").SlotsType<Partial<{
254
- dayBody: (arg: {
254
+ 'day-body': (arg: {
255
255
  day?: CalendarDay;
256
256
  events?: Array<any>;
257
257
  }) => import("vue").VNode[];
258
- dayEvent: (arg: {
258
+ 'day-event': (arg: {
259
259
  day?: CalendarDay;
260
260
  allDay: boolean;
261
261
  event: Record<string, unknown>;
262
262
  }) => import("vue").VNode[];
263
- dayTitle: (arg: {
263
+ 'day-title': (arg: {
264
264
  title?: number | string;
265
265
  }) => import("vue").VNode[];
266
266
  }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("../../util/index.js").FilterPropsOptions<{
@@ -31,7 +31,7 @@ export const VCalendarMonthDay = genericComponent()({
31
31
  }, getPrefixedEventHandlers(attrs, ':day', () => props)), [!props.day?.isHidden ? _createElementVNode("div", {
32
32
  "key": "title",
33
33
  "class": "v-calendar-weekly__day-label"
34
- }, [slots.dayTitle?.({
34
+ }, [slots['day-title']?.({
35
35
  title: props.title
36
36
  }) ?? _createVNode(VBtn, _mergeProps({
37
37
  "class": props.day?.isToday ? 'v-calendar-weekly__day-label__today' : undefined,
@@ -44,12 +44,12 @@ export const VCalendarMonthDay = genericComponent()({
44
44
  }, getPrefixedEventHandlers(attrs, ':date', () => props)), null)]) : undefined, !props.day?.isHidden ? _createElementVNode("div", {
45
45
  "key": "content",
46
46
  "class": "v-calendar-weekly__day-content"
47
- }, [slots.dayBody?.({
47
+ }, [slots['day-body']?.({
48
48
  day: props.day,
49
49
  events: props.events
50
50
  }) ?? _createElementVNode("div", null, [_createElementVNode("div", {
51
51
  "class": "v-calendar-weekly__day-alldayevents-container"
52
- }, [props.events?.filter(event => event.allDay).map(event => slots.dayEvent ? slots.dayEvent({
52
+ }, [props.events?.filter(event => event.allDay).map(event => slots['day-event'] ? slots['day-event']({
53
53
  day: props.day,
54
54
  allDay: true,
55
55
  event
@@ -59,7 +59,7 @@ export const VCalendarMonthDay = genericComponent()({
59
59
  "allDay": true
60
60
  }, attrs), null))]), _createElementVNode("div", {
61
61
  "class": "v-calendar-weekly__day-events-container"
62
- }, [props.events?.filter(event => !event.allDay).map(event => slots.dayEvent ? slots.dayEvent({
62
+ }, [props.events?.filter(event => !event.allDay).map(event => slots['day-event'] ? slots['day-event']({
63
63
  day: props.day,
64
64
  event,
65
65
  allDay: false
@@ -1 +1 @@
1
- {"version":3,"file":"VCalendarMonthDay.js","names":["VCalendarEvent","VBtn","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarMonthDayProps","active","Boolean","color","String","day","type","Object","disabled","events","Array","title","Number","VCalendarMonthDay","name","inheritAttrs","props","setup","_ref","attrs","slots","_createElementVNode","_mergeProps","isHidden","dayTitle","_createVNode","isToday","undefined","dayBody","filter","event","allDay","map","dayEvent"],"sources":["../../../src/labs/VCalendar/VCalendarMonthDay.tsx"],"sourcesContent":["// Styles\nimport './VCalendarMonthDay.sass'\n\n// Components\nimport { VCalendarEvent } from './VCalendarEvent'\nimport { VBtn } from '@/components/VBtn'\n\n// Utilities\nimport { genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarDay } from '@/composables/calendar'\n\nexport type VCalendarMonthDaySlots = {\n dayBody: { day?: CalendarDay, events?: Array<any> }\n dayEvent: { day?: CalendarDay, allDay: boolean, event: Record<string, unknown> }\n dayTitle: { title?: number | string }\n}\n\nexport const makeVCalendarMonthDayProps = propsFactory({\n active: Boolean,\n color: String,\n day: {\n type: Object as PropType<CalendarDay>,\n },\n disabled: Boolean,\n events: Array<any>,\n title: [Number, String],\n}, 'VCalendarMonthDay')\n\nexport const VCalendarMonthDay = genericComponent<VCalendarMonthDaySlots>()({\n name: 'VCalendarMonthDay',\n\n inheritAttrs: false,\n\n props: makeVCalendarMonthDayProps(),\n\n setup (props, { attrs, slots }) {\n useRender(() => {\n return (\n <div\n class={[\n 'v-calendar-month__day',\n ]}\n { ...getPrefixedEventHandlers(attrs, ':day', () => props) }\n >\n { !props.day?.isHidden ? (\n <div key=\"title\" class=\"v-calendar-weekly__day-label\">\n { slots.dayTitle?.({ title: props.title }) ?? (\n <VBtn\n class={ props.day?.isToday ? 'v-calendar-weekly__day-label__today' : undefined }\n color={ props.color }\n disabled={ props.disabled }\n icon\n size=\"x-small\"\n variant={ props.day?.isToday ? undefined : 'flat' }\n text={ `${props.title}` }\n { ...getPrefixedEventHandlers(attrs, ':date', () => props) }\n />\n )\n }\n </div>\n ) : undefined }\n\n { !props.day?.isHidden ? (\n <div key=\"content\" class=\"v-calendar-weekly__day-content\" >\n { slots.dayBody?.({ day: props.day, events: props.events }) ?? (\n <div>\n <div class=\"v-calendar-weekly__day-alldayevents-container\">\n { props.events?.filter(event => event.allDay).map(event => slots.dayEvent\n ? slots.dayEvent({ day: props.day, allDay: true, event })\n : (\n <VCalendarEvent day={ props.day } event={ event } allDay { ...attrs } />\n ))}\n </div>\n\n <div class=\"v-calendar-weekly__day-events-container\">\n { props.events?.filter(event => !event.allDay).map(event => slots.dayEvent\n ? slots.dayEvent({ day: props.day, event, allDay: false })\n : (\n <VCalendarEvent day={ props.day } event={ event } { ...attrs } />\n ))}\n </div>\n </div>\n )}\n </div>\n ) : undefined }\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VCalendarMonthDay = InstanceType<typeof VCalendarMonthDay>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VCalendarMonthDay.js","names":["VCalendarEvent","VBtn","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarMonthDayProps","active","Boolean","color","String","day","type","Object","disabled","events","Array","title","Number","VCalendarMonthDay","name","inheritAttrs","props","setup","_ref","attrs","slots","_createElementVNode","_mergeProps","isHidden","_createVNode","isToday","undefined","filter","event","allDay","map"],"sources":["../../../src/labs/VCalendar/VCalendarMonthDay.tsx"],"sourcesContent":["// Styles\nimport './VCalendarMonthDay.sass'\n\n// Components\nimport { VCalendarEvent } from './VCalendarEvent'\nimport { VBtn } from '@/components/VBtn'\n\n// Utilities\nimport { genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarDay } from '@/composables/calendar'\n\nexport type VCalendarMonthDaySlots = {\n 'day-body': { day?: CalendarDay, events?: Array<any> }\n 'day-event': { day?: CalendarDay, allDay: boolean, event: Record<string, unknown> }\n 'day-title': { title?: number | string }\n}\n\nexport const makeVCalendarMonthDayProps = propsFactory({\n active: Boolean,\n color: String,\n day: {\n type: Object as PropType<CalendarDay>,\n },\n disabled: Boolean,\n events: Array<any>,\n title: [Number, String],\n}, 'VCalendarMonthDay')\n\nexport const VCalendarMonthDay = genericComponent<VCalendarMonthDaySlots>()({\n name: 'VCalendarMonthDay',\n\n inheritAttrs: false,\n\n props: makeVCalendarMonthDayProps(),\n\n setup (props, { attrs, slots }) {\n useRender(() => {\n return (\n <div\n class={[\n 'v-calendar-month__day',\n ]}\n { ...getPrefixedEventHandlers(attrs, ':day', () => props) }\n >\n { !props.day?.isHidden ? (\n <div key=\"title\" class=\"v-calendar-weekly__day-label\">\n { slots['day-title']?.({ title: props.title }) ?? (\n <VBtn\n class={ props.day?.isToday ? 'v-calendar-weekly__day-label__today' : undefined }\n color={ props.color }\n disabled={ props.disabled }\n icon\n size=\"x-small\"\n variant={ props.day?.isToday ? undefined : 'flat' }\n text={ `${props.title}` }\n { ...getPrefixedEventHandlers(attrs, ':date', () => props) }\n />\n )\n }\n </div>\n ) : undefined }\n\n { !props.day?.isHidden ? (\n <div key=\"content\" class=\"v-calendar-weekly__day-content\" >\n { slots['day-body']?.({ day: props.day, events: props.events }) ?? (\n <div>\n <div class=\"v-calendar-weekly__day-alldayevents-container\">\n { props.events?.filter(event => event.allDay).map(event => slots['day-event']\n ? slots['day-event']({ day: props.day, allDay: true, event })\n : (\n <VCalendarEvent day={ props.day } event={ event } allDay { ...attrs } />\n ))}\n </div>\n\n <div class=\"v-calendar-weekly__day-events-container\">\n { props.events?.filter(event => !event.allDay).map(event => slots['day-event']\n ? slots['day-event']({ day: props.day, event, allDay: false })\n : (\n <VCalendarEvent day={ props.day } event={ event } { ...attrs } />\n ))}\n </div>\n </div>\n )}\n </div>\n ) : undefined }\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VCalendarMonthDay = InstanceType<typeof VCalendarMonthDay>\n"],"mappings":"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","ignoreList":[]}