@sectile/vue 0.18.2 → 0.19.0

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 (297) hide show
  1. package/README.md +53 -14
  2. package/dist/accordion.js +1 -1
  3. package/dist/accordion.js.map +1 -1
  4. package/dist/carousel.d.ts +20 -0
  5. package/dist/carousel.js +1 -1
  6. package/dist/carousel.js.map +1 -1
  7. package/dist/cascade-list.js +1 -1
  8. package/dist/cascade-list.js.map +1 -1
  9. package/dist/cascade-select.js +1 -1
  10. package/dist/cascade-select.js.map +1 -1
  11. package/dist/chart.js +1 -1
  12. package/dist/chart.js.map +1 -1
  13. package/dist/checkbox-group.js +1 -1
  14. package/dist/checkbox-group.js.map +1 -1
  15. package/dist/checkbox-tree.d.ts +102 -0
  16. package/dist/checkbox-tree.js +2 -0
  17. package/dist/checkbox-tree.js.map +1 -0
  18. package/dist/checkbox.js +1 -1
  19. package/dist/checkbox.js.map +1 -1
  20. package/dist/color-picker.d.ts +24 -0
  21. package/dist/color-picker.js +1 -1
  22. package/dist/color-picker.js.map +1 -1
  23. package/dist/combobox.d.ts +47 -1
  24. package/dist/combobox.js +1 -1
  25. package/dist/combobox.js.map +1 -1
  26. package/dist/component-handle.d.ts +8 -0
  27. package/dist/component-handle.js +2 -0
  28. package/dist/component-handle.js.map +1 -0
  29. package/dist/context-menu.d.ts +1 -0
  30. package/dist/context-menu.js +2 -0
  31. package/dist/context-menu.js.map +1 -0
  32. package/dist/drag-drop.d.ts +23 -0
  33. package/dist/drag-drop.js +2 -0
  34. package/dist/drag-drop.js.map +1 -0
  35. package/dist/editable.d.ts +3 -0
  36. package/dist/editable.js +1 -1
  37. package/dist/editable.js.map +1 -1
  38. package/dist/form/context.d.ts +3 -0
  39. package/dist/form/context.js +1 -1
  40. package/dist/form/context.js.map +1 -1
  41. package/dist/form/contracts.d.ts +1 -0
  42. package/dist/form/control-inventory.d.ts +20 -0
  43. package/dist/form/control-inventory.js +1 -1
  44. package/dist/form/control-inventory.js.map +1 -1
  45. package/dist/form/control.d.ts +44 -1
  46. package/dist/form/control.js +1 -1
  47. package/dist/form/control.js.map +1 -1
  48. package/dist/form/field.d.ts +10 -0
  49. package/dist/form/field.js +1 -1
  50. package/dist/form/field.js.map +1 -1
  51. package/dist/form/file-input.d.ts +229 -0
  52. package/dist/form/file-input.js +2 -0
  53. package/dist/form/file-input.js.map +1 -0
  54. package/dist/form/file-upload/group.d.ts +28 -0
  55. package/dist/form/file-upload/group.js +2 -0
  56. package/dist/form/file-upload/group.js.map +1 -0
  57. package/dist/form/file-upload.d.ts +26 -0
  58. package/dist/form/file-upload.js +2 -0
  59. package/dist/form/file-upload.js.map +1 -0
  60. package/dist/form/root.js +1 -1
  61. package/dist/form/root.js.map +1 -1
  62. package/dist/form-boundary.d.ts +2 -0
  63. package/dist/form-boundary.js +2 -0
  64. package/dist/form-boundary.js.map +1 -0
  65. package/dist/fullscreen.d.ts +16 -0
  66. package/dist/fullscreen.js +2 -0
  67. package/dist/fullscreen.js.map +1 -0
  68. package/dist/host-provider.d.ts +99 -1
  69. package/dist/host-provider.js +1 -1
  70. package/dist/host-provider.js.map +1 -1
  71. package/dist/image.d.ts +24 -0
  72. package/dist/image.js +2 -0
  73. package/dist/image.js.map +1 -0
  74. package/dist/index.d.ts +6 -5
  75. package/dist/index.js +1 -1
  76. package/dist/index.js.map +1 -1
  77. package/dist/input/native-field.d.ts +25 -6
  78. package/dist/input/native-field.js +1 -1
  79. package/dist/input/native-field.js.map +1 -1
  80. package/dist/input/native-range-field.d.ts +95 -0
  81. package/dist/input/native-range-field.js +2 -0
  82. package/dist/input/native-range-field.js.map +1 -0
  83. package/dist/internal/cascade-choice.js +1 -1
  84. package/dist/internal/cascade-choice.js.map +1 -1
  85. package/dist/internal/connection-lifetime.d.ts +10 -0
  86. package/dist/internal/connection-lifetime.js +2 -0
  87. package/dist/internal/connection-lifetime.js.map +1 -0
  88. package/dist/internal/controlled-state.js +1 -1
  89. package/dist/internal/controlled-state.js.map +1 -1
  90. package/dist/internal/popup-presentation.d.ts +32 -0
  91. package/dist/internal/popup-presentation.js +2 -0
  92. package/dist/internal/popup-presentation.js.map +1 -0
  93. package/dist/internal/portal-move.d.ts +11 -0
  94. package/dist/internal/portal-move.js +2 -0
  95. package/dist/internal/portal-move.js.map +1 -0
  96. package/dist/internal/scheduled-task.js +1 -1
  97. package/dist/internal/scheduled-task.js.map +1 -1
  98. package/dist/internal/tabs-context.d.ts +11 -0
  99. package/dist/internal/tabs-context.js +1 -1
  100. package/dist/internal/tabs-context.js.map +1 -1
  101. package/dist/internal/tree-parts.d.ts +142 -0
  102. package/dist/internal/tree-parts.js +2 -0
  103. package/dist/internal/tree-parts.js.map +1 -0
  104. package/dist/listbox.d.ts +11 -0
  105. package/dist/listbox.js +1 -1
  106. package/dist/listbox.js.map +1 -1
  107. package/dist/media-gesture.d.ts +20 -0
  108. package/dist/media-gesture.js +2 -0
  109. package/dist/media-gesture.js.map +1 -0
  110. package/dist/menu.d.ts +239 -0
  111. package/dist/menu.js +1 -1
  112. package/dist/menu.js.map +1 -1
  113. package/dist/meter-group.js +1 -1
  114. package/dist/meter-group.js.map +1 -1
  115. package/dist/multi-thumb-slider.js +1 -1
  116. package/dist/multi-thumb-slider.js.map +1 -1
  117. package/dist/overlay/dialog.d.ts +1 -0
  118. package/dist/overlay/dialog.js.map +1 -1
  119. package/dist/overlay/drawer.d.ts +33 -4
  120. package/dist/overlay/drawer.js +1 -1
  121. package/dist/overlay/drawer.js.map +1 -1
  122. package/dist/overlay/popover.d.ts +2 -1
  123. package/dist/overlay/popover.js.map +1 -1
  124. package/dist/overlay/popup.d.ts +46 -2
  125. package/dist/overlay/popup.js +1 -1
  126. package/dist/overlay/popup.js.map +1 -1
  127. package/dist/overlay/tooltip.d.ts +37 -3
  128. package/dist/overlay/tooltip.js +1 -1
  129. package/dist/overlay/tooltip.js.map +1 -1
  130. package/dist/pagination.js +1 -1
  131. package/dist/pagination.js.map +1 -1
  132. package/dist/pin-input.js +1 -1
  133. package/dist/pin-input.js.map +1 -1
  134. package/dist/presence/presence.d.ts +1 -1
  135. package/dist/presence/presence.js +1 -1
  136. package/dist/presence/presence.js.map +1 -1
  137. package/dist/primitive.d.ts +37 -3
  138. package/dist/primitive.js +1 -1
  139. package/dist/primitive.js.map +1 -1
  140. package/dist/quantity-field.js +1 -1
  141. package/dist/quantity-field.js.map +1 -1
  142. package/dist/radio-group.js +1 -1
  143. package/dist/radio-group.js.map +1 -1
  144. package/dist/rating.js +1 -1
  145. package/dist/rating.js.map +1 -1
  146. package/dist/reorder.d.ts +156 -77
  147. package/dist/reorder.js +1 -1
  148. package/dist/reorder.js.map +1 -1
  149. package/dist/select.d.ts +21 -0
  150. package/dist/select.js +1 -1
  151. package/dist/select.js.map +1 -1
  152. package/dist/slider.js +1 -1
  153. package/dist/slider.js.map +1 -1
  154. package/dist/spin-button.d.ts +19 -0
  155. package/dist/spin-button.js +1 -1
  156. package/dist/spin-button.js.map +1 -1
  157. package/dist/stepper.js +1 -1
  158. package/dist/stepper.js.map +1 -1
  159. package/dist/switch.js +1 -1
  160. package/dist/switch.js.map +1 -1
  161. package/dist/tabs.d.ts +2 -0
  162. package/dist/tabs.js +1 -1
  163. package/dist/tabs.js.map +1 -1
  164. package/dist/tabular/components.d.ts +5 -0
  165. package/dist/tabular/components.js.map +1 -1
  166. package/dist/tabular/controller.d.ts +1 -0
  167. package/dist/tabular/controller.js +1 -1
  168. package/dist/tabular/controller.js.map +1 -1
  169. package/dist/tabular/data-grid.d.ts +4 -4
  170. package/dist/tabular/data-grid.js +1 -1
  171. package/dist/tabular/data-grid.js.map +1 -1
  172. package/dist/tabular/data-table.d.ts +4 -4
  173. package/dist/tabular/data-table.js +1 -1
  174. package/dist/tabular/data-table.js.map +1 -1
  175. package/dist/tabular/data-tree-grid.d.ts +4 -4
  176. package/dist/tabular/data-tree-grid.js +1 -1
  177. package/dist/tabular/data-tree-grid.js.map +1 -1
  178. package/dist/tabular/parts.d.ts +11 -1
  179. package/dist/tabular/parts.js +1 -1
  180. package/dist/tabular/parts.js.map +1 -1
  181. package/dist/tabular/source.js +1 -1
  182. package/dist/tabular/source.js.map +1 -1
  183. package/dist/tags-input.d.ts +12 -1
  184. package/dist/tags-input.js +1 -1
  185. package/dist/tags-input.js.map +1 -1
  186. package/dist/temporal/calendar.d.ts +27 -123
  187. package/dist/temporal/calendar.js +1 -1
  188. package/dist/temporal/calendar.js.map +1 -1
  189. package/dist/temporal/capabilities/date-picker.js +1 -1
  190. package/dist/temporal/capabilities/date-picker.js.map +1 -1
  191. package/dist/temporal/capabilities/date-time-picker.js +1 -1
  192. package/dist/temporal/capabilities/date-time-picker.js.map +1 -1
  193. package/dist/temporal/capabilities/date-time-range-picker.js +1 -1
  194. package/dist/temporal/capabilities/date-time-range-picker.js.map +1 -1
  195. package/dist/temporal/capability.d.ts +13 -1
  196. package/dist/temporal/capability.js.map +1 -1
  197. package/dist/temporal/date-field.d.ts +1 -1
  198. package/dist/temporal/date-field.js +1 -1
  199. package/dist/temporal/date-field.js.map +1 -1
  200. package/dist/temporal/date-picker.d.ts +16 -14
  201. package/dist/temporal/date-picker.js +1 -1
  202. package/dist/temporal/date-picker.js.map +1 -1
  203. package/dist/temporal/date-range-field.d.ts +21 -1
  204. package/dist/temporal/date-range-field.js +1 -1
  205. package/dist/temporal/date-range-field.js.map +1 -1
  206. package/dist/temporal/date-range-picker.d.ts +16 -14
  207. package/dist/temporal/date-range-picker.js +1 -1
  208. package/dist/temporal/date-range-picker.js.map +1 -1
  209. package/dist/temporal/date-time-field.d.ts +4 -1
  210. package/dist/temporal/date-time-field.js +1 -1
  211. package/dist/temporal/date-time-field.js.map +1 -1
  212. package/dist/temporal/date-time-picker.d.ts +16 -14
  213. package/dist/temporal/date-time-picker.js +1 -1
  214. package/dist/temporal/date-time-picker.js.map +1 -1
  215. package/dist/temporal/date-time-range-field.d.ts +158 -0
  216. package/dist/temporal/date-time-range-field.js +2 -0
  217. package/dist/temporal/date-time-range-field.js.map +1 -0
  218. package/dist/temporal/date-time-range-picker.d.ts +16 -14
  219. package/dist/temporal/date-time-range-picker.js +1 -1
  220. package/dist/temporal/date-time-range-picker.js.map +1 -1
  221. package/dist/temporal/internal/time-presentation.d.ts +15 -0
  222. package/dist/temporal/internal/time-presentation.js +2 -0
  223. package/dist/temporal/internal/time-presentation.js.map +1 -0
  224. package/dist/temporal/month-picker.d.ts +9 -7
  225. package/dist/temporal/month-picker.js +1 -1
  226. package/dist/temporal/month-picker.js.map +1 -1
  227. package/dist/temporal/month-range-picker.d.ts +9 -7
  228. package/dist/temporal/month-range-picker.js +1 -1
  229. package/dist/temporal/month-range-picker.js.map +1 -1
  230. package/dist/temporal/picker.d.ts +24 -3
  231. package/dist/temporal/picker.js +1 -1
  232. package/dist/temporal/picker.js.map +1 -1
  233. package/dist/temporal/range-calendar.d.ts +125 -8
  234. package/dist/temporal/range-calendar.js +1 -1
  235. package/dist/temporal/range-calendar.js.map +1 -1
  236. package/dist/temporal/temporal-provider.d.ts +23 -0
  237. package/dist/temporal/temporal-provider.js +1 -1
  238. package/dist/temporal/temporal-provider.js.map +1 -1
  239. package/dist/temporal/time-field.d.ts +4 -1
  240. package/dist/temporal/time-field.js +1 -1
  241. package/dist/temporal/time-field.js.map +1 -1
  242. package/dist/temporal/time-picker.d.ts +112 -0
  243. package/dist/temporal/time-picker.js +2 -0
  244. package/dist/temporal/time-picker.js.map +1 -0
  245. package/dist/temporal/time-range-field.d.ts +33 -2
  246. package/dist/temporal/time-range-field.js +1 -1
  247. package/dist/temporal/time-range-field.js.map +1 -1
  248. package/dist/temporal/year-picker.d.ts +9 -7
  249. package/dist/temporal/year-picker.js +1 -1
  250. package/dist/temporal/year-picker.js.map +1 -1
  251. package/dist/temporal/year-range-picker.d.ts +9 -7
  252. package/dist/temporal/year-range-picker.js +1 -1
  253. package/dist/temporal/year-range-picker.js.map +1 -1
  254. package/dist/text.d.ts +43 -1
  255. package/dist/text.js +1 -1
  256. package/dist/text.js.map +1 -1
  257. package/dist/timer.d.ts +16 -5
  258. package/dist/timer.js +1 -1
  259. package/dist/timer.js.map +1 -1
  260. package/dist/toast.js +1 -1
  261. package/dist/toast.js.map +1 -1
  262. package/dist/toggle-group.js +1 -1
  263. package/dist/toggle-group.js.map +1 -1
  264. package/dist/toolbar.js +1 -1
  265. package/dist/toolbar.js.map +1 -1
  266. package/dist/transfer.d.ts +191 -0
  267. package/dist/transfer.js +2 -0
  268. package/dist/transfer.js.map +1 -0
  269. package/dist/tree-grid.d.ts +122 -0
  270. package/dist/tree-grid.js +1 -1
  271. package/dist/tree-grid.js.map +1 -1
  272. package/dist/tree-select.d.ts +186 -0
  273. package/dist/tree-select.js +2 -0
  274. package/dist/tree-select.js.map +1 -0
  275. package/dist/tree-view.js +1 -1
  276. package/dist/tree-view.js.map +1 -1
  277. package/dist/virtual/virtual-collection.d.ts +3 -0
  278. package/dist/virtual/virtual-collection.js +1 -1
  279. package/dist/virtual/virtual-collection.js.map +1 -1
  280. package/dist/virtual/virtual-core.d.ts +1 -0
  281. package/dist/virtual/virtual-core.js +1 -1
  282. package/dist/virtual/virtual-core.js.map +1 -1
  283. package/dist/virtual/virtual-grid.d.ts +12 -2
  284. package/dist/virtual/virtual-grid.js +1 -1
  285. package/dist/virtual/virtual-grid.js.map +1 -1
  286. package/dist/virtual/virtual-list.d.ts +12 -3
  287. package/dist/virtual/virtual-list.js +1 -1
  288. package/dist/virtual/virtual-list.js.map +1 -1
  289. package/dist/virtual/virtual-masonry.d.ts +12 -2
  290. package/dist/virtual/virtual-masonry.js +1 -1
  291. package/dist/virtual/virtual-masonry.js.map +1 -1
  292. package/dist/virtual/virtual-spatial.d.ts +12 -2
  293. package/dist/virtual/virtual-spatial.js +1 -1
  294. package/dist/virtual/virtual-spatial.js.map +1 -1
  295. package/dist/window-splitter.js +1 -1
  296. package/dist/window-splitter.js.map +1 -1
  297. package/package.json +86 -16
@@ -1,2 +1,2 @@
1
- import{computed,defineComponent,h,inject,mergeProps,onBeforeUnmount,onMounted,provide,shallowRef,watch}from"vue";import{createDateRangeField,tryCreateDateRangeFieldState}from"@sectile/dom/temporal/date-range-field";import{hiddenInputSubmissionCapabilities,useCompositeFormControl}from"../form/control.js";import{useNextTickTask}from"../internal/scheduled-task.js";import{captureNativeTextState}from"../input/native-text-state.js";import{Primitive}from"../primitive.js";import{useControlledStateInvariant}from"../internal/controlled-state.js";const contextKey=Symbol("SectileDateRangeField");const DateRangeFieldRoot=defineComponent({name:"SectileDateRangeFieldRoot",inheritAttrs:false,props:{modelValue:{type:Object,default:void 0},defaultValue:{type:Object,default:null},policies:{type:Object,default:void 0},disabled:{type:Boolean,default:false},readonly:{type:Boolean,default:false},required:{type:Boolean,default:false},startLabel:{type:String,default:void 0},endLabel:{type:String,default:void 0},as:{type:[String,Object,Function],default:"div"},asChild:{type:Boolean,default:false}},emits:{"update:modelValue":_value=>true},slots:Object,setup(props,{attrs,emit,slots}){const controlled=useControlledStateInvariant("DateRangeFieldRoot","modelValue",()=>props.modelValue);const initial=tryCreateDateRangeFieldState({value:controlled?props.modelValue:props.defaultValue});if(!initial.ok)throw new TypeError(initial.error.message);const snapshot=shallowRef(initial.value);const startInput=shallowRef(null);const endInput=shallowRef(null);const root=shallowRef(null);let mounted=false;const participation=useCompositeFormControl({root,focusTarget:startInput,submissions:()=>[{element:startInput,relativeName:"start",capabilities:hiddenInputSubmissionCapabilities},{element:endInput,relativeName:"end",capabilities:hiddenInputSubmissionCapabilities}],reset:()=>{queueMicrotask(()=>{if(!controlled)snapshot.value=initial.value;mount()})}});let connection=null;const refresh=()=>{if(connection!==null)snapshot.value=connection.getSnapshot().state};const mount=(preserveNative=false)=>{if(!mounted||startInput.value===null||endInput.value===null)return;const startState=preserveNative&&connection!==null?captureNativeTextState(startInput.value,snapshot.value.start.inputState.snapshot.text):void 0;const endState=preserveNative&&connection!==null?captureNativeTextState(endInput.value,snapshot.value.end.inputState.snapshot.text):void 0;connection?.disconnect();connection=createDateRangeField({startInput:startInput.value,endInput:endInput.value,...controlled?{value:props.modelValue}:{defaultValue:snapshot.value.value},...startState===void 0?{}:{defaultStartInputState:startState},...endState===void 0?{}:{defaultEndInputState:endState},...props.policies===void 0?{}:{policies:props.policies},disabled:props.disabled,readOnly:props.readonly,required:props.required,...props.startLabel===void 0?{}:{startLabel:props.startLabel},...props.endLabel===void 0?{}:{endLabel:props.endLabel},onValueChange:value=>emit("update:modelValue",value),onUpdate:refresh});refresh()};const mountTask=useNextTickTask(()=>mount(true));const composingInputs=new Set;let reconnectPending=false;let reconnectTimer=null;const requestMount=()=>{if(composingInputs.size>0){reconnectPending=true;return}mountTask.schedule()};const setInputComposing=(endpoint,composing)=>{if(composing)composingInputs.add(endpoint);else composingInputs.delete(endpoint);if(composingInputs.size>0||!reconnectPending||reconnectTimer!==null)return;reconnectTimer=setTimeout(()=>{reconnectTimer=null;if(!mounted||composingInputs.size>0)return;reconnectPending=false;mountTask.schedule()},0)};onMounted(()=>{mounted=true;mount()});onBeforeUnmount(()=>{mounted=false;if(reconnectTimer!==null)clearTimeout(reconnectTimer);reconnectTimer=null;reconnectPending=false;composingInputs.clear();mountTask.cancel();connection?.disconnect();connection=null});watch(()=>props.modelValue,value=>{if(!controlled||value===void 0||connection===null)return;const result=connection.syncControlledValues({value});if(!result.ok)throw new TypeError(result.error.message);snapshot.value=result.value.state});watch([()=>props.policies,()=>props.disabled,()=>props.readonly,()=>props.required,()=>props.startLabel,()=>props.endLabel],requestMount);const slotProps=computed(()=>Object.freeze({value:snapshot.value.value,startText:snapshot.value.start.inputState.snapshot.text,endText:snapshot.value.end.inputState.snapshot.text,active:snapshot.value.active,disabled:props.disabled,readonly:props.readonly}));provide(contextKey,{slotProps,startInput,endInput,setInputComposing});return()=>h(Primitive,mergeProps(participation.controlProps.value,attrs,{as:props.as,asChild:props.asChild,elementRef:element=>{root.value=element},role:"group","data-scope":"date-range-field","data-part":"root","data-disabled":props.disabled?"":void 0,"data-readonly":props.readonly?"":void 0}),{default:()=>slots["default"]?.(slotProps.value)})}});const DateRangeFieldStartInput=createEndpointInput("start","SectileDateRangeFieldStartInput");const DateRangeFieldEndInput=createEndpointInput("end","SectileDateRangeFieldEndInput");function createEndpointInput(endpoint,name){return defineComponent({name,inheritAttrs:false,setup(_props,{attrs}){const context=useContext(name);return()=>h("input",mergeProps(attrs,{ref:element=>{context[endpoint==="start"?"startInput":"endInput"].value=element},type:"text",inputmode:"numeric",placeholder:"YYYY-MM-DD",value:endpoint==="start"?context.slotProps.value.startText:context.slotProps.value.endText,disabled:context.slotProps.value.disabled,readonly:context.slotProps.value.readonly,onCompositionstart:()=>context.setInputComposing(endpoint,true),onCompositionend:()=>context.setInputComposing(endpoint,false),"aria-disabled":String(context.slotProps.value.disabled),"aria-readonly":String(context.slotProps.value.readonly),"data-scope":"date-range-field","data-part":`${endpoint}-input`,"data-active":context.slotProps.value.active===endpoint?"":void 0}))}})}function useContext(part){const context=inject(contextKey);if(context===void 0)throw new TypeError(`${part} must be used inside DateRangeFieldRoot.`);return context}export{DateRangeFieldEndInput,DateRangeFieldRoot,DateRangeFieldStartInput};
1
+ import{computed,defineComponent}from'vue';import{unwrap}from'@sectile/core/result';import{reformatDateRangeFieldState}from'@sectile/temporal/date-range-field';import{getDateFieldPlaceholder}from'@sectile/dom/temporal/date-field';import{createDateRangeField,tryCreateDateRangeFieldState}from'@sectile/dom/temporal/date-range-field';import{setupNativeRangeField,createNativeRangeFieldInput}from'../input/native-range-field.js';import{useTemporalFormatter}from'./temporal-provider.js';const contextKey=Symbol('SectileDateRangeField');const config={name:'DateRangeFieldRoot',scope:'date-range-field',contextKey,reset:true,initial:tryCreateDateRangeFieldState,create:createDateRangeField,rebase:(state,start,end)=>reformatDateRangeFieldState({...state,start:{...state.start,inputState:start},end:{...state.end,inputState:end}}),usePresentation(){const formatter=useTemporalFormatter();return computed(()=>{if(formatter.value===undefined)return undefined;const format=unwrap(formatter.value.dateFieldFormat());return{placeholder:getDateFieldPlaceholder(format),initial:options=>tryCreateDateRangeFieldState({...options,startFormat:format,endFormat:format}),create:options=>createDateRangeField({...options,format}),rebase:(state,start,end)=>reformatDateRangeFieldState({...state,start:{...state.start,inputState:start},end:{...state.end,inputState:end}},format)}})}};export const DateRangeFieldRoot=/* @__PURE__ */defineComponent({__sectileFormLabelMode:'labelledby',name:'SectileDateRangeFieldRoot',inheritAttrs:false,props:{name:{type:String,default:undefined},form:{type:String,default:undefined},modelValue:{type:Object,default:undefined},defaultValue:{type:Object,default:null},policies:{type:Object,default:undefined},disabled:{type:Boolean,default:false},readonly:{type:Boolean,default:false},required:{type:Boolean,default:false},startLabel:{type:String,default:undefined},endLabel:{type:String,default:undefined},as:{type:[String,Object,Function],default:'div'},asChild:{type:Boolean,default:false}},emits:{'update:modelValue':_value=>true},slots:Object,setup(props,context){return setupNativeRangeField(config,props,context)}});export const DateRangeFieldStartInput=/* @__PURE__ */createNativeRangeFieldInput(contextKey,'date-range-field','YYYY-MM-DD','start','SectileDateRangeFieldStartInput','DateRangeFieldRoot');export const DateRangeFieldEndInput=/* @__PURE__ */createNativeRangeFieldInput(contextKey,'date-range-field','YYYY-MM-DD','end','SectileDateRangeFieldEndInput','DateRangeFieldRoot');
2
2
  //# sourceMappingURL=date-range-field.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/temporal/date-range-field.ts"],"mappings":"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","names":[],"file":"date-range-field.js"}
1
+ {"version":3,"file":"date-range-field.js","names":["computed","defineComponent","unwrap","reformatDateRangeFieldState","getDateFieldPlaceholder","createDateRangeField","tryCreateDateRangeFieldState","setupNativeRangeField","createNativeRangeFieldInput","useTemporalFormatter","contextKey","Symbol","config","name","scope","reset","initial","create","rebase","state","start","end","inputState","usePresentation","formatter","value","undefined","format","dateFieldFormat","placeholder","options","startFormat","endFormat","DateRangeFieldRoot","__sectileFormLabelMode","inheritAttrs","props","type","String","default","form","modelValue","Object","defaultValue","policies","disabled","Boolean","readonly","required","startLabel","endLabel","as","Function","asChild","emits","_value","slots","setup","context","DateRangeFieldStartInput","DateRangeFieldEndInput"],"sources":["../../src/temporal/date-range-field.ts"],"mappings":"OAASA,SAAUC,oBAAuE,aACjFC,WAAc,8BACdC,gCAAmC,4CACnCC,4BAA+B,0CAC/BC,qBAAsBC,iCAA2F,gDAEjHC,sBAAuBC,gCAA8F,wCACrHC,yBAA4B,yBA2BrC,MAAMC,WAAaC,OAAO,yBAE1B,MAAMC,OAAyF,CAC7FC,KAAM,qBAAsBC,MAAO,mBAAoBJ,WACvDK,MAAO,KACPC,QAASV,6BAA8BW,OAAQZ,qBAC/Ca,OAAQ,CAACC,MAAOC,MAAOC,MAAQlB,4BAA4B,IAAKgB,MAAOC,MAAO,IAAKD,MAAMC,MAAOE,WAAYF,OAASC,IAAK,IAAKF,MAAME,IAAKC,WAAYD,OACtJ,eAAAE,GACE,MAAMC,UAAYf,uBAClB,OAAOT,SAAsG,KAC3G,GAAIwB,UAAUC,QAAUC,UAAW,OAAOA,UAC1C,MAAMC,OAASzB,OAAOsB,UAAUC,MAAMG,mBACtC,MAAO,CAAEC,YAAazB,wBAAwBuB,QAASX,QAASc,SAAWxB,6BAA6B,IAAKwB,QAASC,YAAaJ,OAAQK,UAAWL,SACpJV,OAAQa,SAAWzB,qBAAqB,IAAKyB,QAASH,SACtDT,OAAQ,CAACC,MAAOC,MAAOC,MAAQlB,4BAA4B,IAAKgB,MAAOC,MAAO,IAAKD,MAAMC,MAAOE,WAAYF,OAASC,IAAK,IAAKF,MAAME,IAAKC,WAAYD,MAASM,UAErK,UAGK,MAAMM,kCAAqChC,gBAAgB,CAChEiC,uBAAwB,aACxBrB,KAAM,4BACNsB,aAAc,MACdC,MAAO,CACLvB,KAAM,CAAEwB,KAAMC,OAAwCC,QAASb,WAAac,KAAM,CAAEH,KAAMC,OAAwCC,QAASb,WAC3Ie,WAAY,CAAEJ,KAAMK,OAAsCH,QAASb,WACnEiB,aAAc,CAAEN,KAAMK,OAAsCH,QAAS,MACrEK,SAAU,CAAEP,KAAMK,OAA4CH,QAASb,WACvEmB,SAAU,CAAER,KAAMS,QAASP,QAAS,OACpCQ,SAAU,CAAEV,KAAMS,QAASP,QAAS,OACpCS,SAAU,CAAEX,KAAMS,QAASP,QAAS,OACpCU,WAAY,CAAEZ,KAAMC,OAAQC,QAASb,WACrCwB,SAAU,CAAEb,KAAMC,OAAQC,QAASb,WACnCyB,GAAI,CAAEd,KAAM,CAACC,OAAQI,OAAQU,UAAoCb,QAAS,OAC1Ec,QAAS,CAAEhB,KAAMS,QAASP,QAAS,QAErCe,MAAO,CAAE,oBAAsBC,QAAsC,MACrEC,MAAOd,OACP,KAAAe,CAAMrB,MAAOsB,SAAW,OAAOnD,sBAAsBK,OAAQwB,MAAOsB,QAAU,WAKzE,MAAMC,wCAA2CnD,4BAA4BE,WAAY,mBAAoB,aAAc,QAAS,kCAAmC,6BACvK,MAAMkD,sCAAyCpD,4BAA4BE,WAAY,mBAAoB,aAAc,MAAO,gCAAiC","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  import type { DateRangePickerOptions } from '@sectile/dom/temporal/date-range-picker';
2
2
  import type { DateRange, DateValue } from '@sectile/dom/temporal/date-field';
3
- import { type PickerCellSlotProps, type PickerMonthCellSlotProps, type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps } from './picker.js';
3
+ import { type PickerRootPartComponent, type PickerCellSlotProps, type PickerMonthCellSlotProps, type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps } from './picker.js';
4
+ import type { PickerContentPartComponent, PickerContentSlotProps } from './picker.js';
4
5
  export interface DateRangePickerRootProps extends PickerPartProps, PickerPositionProps {
5
6
  readonly modelValue?: DateRange | null;
6
7
  readonly defaultValue?: DateRange | null;
@@ -18,11 +19,12 @@ export interface DateRangePickerRootProps extends PickerPartProps, PickerPositio
18
19
  }
19
20
  export declare const DateRangePickerRoot: import("./picker.js").PickerRootComponent<"date-range">;
20
21
  export type DateRangePickerRootSlotProps = PickerRootSlotProps<DateRange | null>;
22
+ export type DateRangePickerContentSlotProps = PickerContentSlotProps<DateRange | null>;
21
23
  export type DateRangePickerValueChangeHandler = NonNullable<InstanceType<typeof DateRangePickerRoot>['$props']['onUpdate:modelValue']>;
22
24
  export type DateRangePickerOpenChangeHandler = NonNullable<InstanceType<typeof DateRangePickerRoot>['$props']['onUpdate:open']>;
23
25
  export type DateRangePickerHighlightedValueChangeHandler = NonNullable<InstanceType<typeof DateRangePickerRoot>['$props']['onUpdate:highlightedValue']>;
24
- export declare const DateRangePickerTrigger: import("./picker.js").PickerRootPartComponent<"date-range">;
25
- export declare const DateRangePickerAnchor: import("./picker.js").PickerRootPartComponent<"date-range">;
26
+ export declare const DateRangePickerTrigger: PickerRootPartComponent<'date-range'>;
27
+ export declare const DateRangePickerAnchor: PickerRootPartComponent<'date-range'>;
26
28
  export declare const DateRangePickerPortal: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
27
29
  to: {
28
30
  type: import("vue").PropType<string | HTMLElement>;
@@ -54,8 +56,8 @@ export declare const DateRangePickerPortal: import("vue").DefineComponent<import
54
56
  disabled: boolean;
55
57
  defer: boolean;
56
58
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
57
- export declare const DateRangePickerContent: import("./picker.js").PickerRootPartComponent<"date-range">;
58
- export declare const DateRangePickerGrid: import("./picker.js").PickerRootPartComponent<"date-range">;
59
+ export declare const DateRangePickerContent: PickerContentPartComponent<'date-range'>;
60
+ export declare const DateRangePickerGrid: PickerRootPartComponent<'date-range'>;
59
61
  export declare const DateRangePickerCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
60
62
  value: {
61
63
  type: import("vue").PropType<DateValue>;
@@ -200,13 +202,13 @@ export declare const DateRangePickerEndInput: import("vue").DefineComponent<impo
200
202
  as: import("../primitive.js").PrimitiveAs;
201
203
  asChild: boolean;
202
204
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
203
- export declare const DateRangePickerPreviousWeek: import("./picker.js").PickerRootPartComponent<"date-range">;
204
- export declare const DateRangePickerNextWeek: import("./picker.js").PickerRootPartComponent<"date-range">;
205
- export declare const DateRangePickerPreviousMonth: import("./picker.js").PickerRootPartComponent<"date-range">;
206
- export declare const DateRangePickerNextMonth: import("./picker.js").PickerRootPartComponent<"date-range">;
207
- export declare const DateRangePickerPreviousYear: import("./picker.js").PickerRootPartComponent<"date-range">;
208
- export declare const DateRangePickerNextYear: import("./picker.js").PickerRootPartComponent<"date-range">;
209
- export declare const DateRangePickerWeekViewTrigger: import("./picker.js").PickerRootPartComponent<"date-range">;
210
- export declare const DateRangePickerMonthViewTrigger: import("./picker.js").PickerRootPartComponent<"date-range">;
211
- export declare const DateRangePickerYearViewTrigger: import("./picker.js").PickerRootPartComponent<"date-range">;
205
+ export declare const DateRangePickerPreviousWeek: PickerRootPartComponent<'date-range'>;
206
+ export declare const DateRangePickerNextWeek: PickerRootPartComponent<'date-range'>;
207
+ export declare const DateRangePickerPreviousMonth: PickerRootPartComponent<'date-range'>;
208
+ export declare const DateRangePickerNextMonth: PickerRootPartComponent<'date-range'>;
209
+ export declare const DateRangePickerPreviousYear: PickerRootPartComponent<'date-range'>;
210
+ export declare const DateRangePickerNextYear: PickerRootPartComponent<'date-range'>;
211
+ export declare const DateRangePickerWeekViewTrigger: PickerRootPartComponent<'date-range'>;
212
+ export declare const DateRangePickerMonthViewTrigger: PickerRootPartComponent<'date-range'>;
213
+ export declare const DateRangePickerYearViewTrigger: PickerRootPartComponent<'date-range'>;
212
214
  export type { DateRange, DateValue, PickerCellSlotProps as DateRangePickerCellSlotProps, PickerMonthCellSlotProps as DateRangePickerMonthCellSlotProps, PickerPartProps as DateRangePickerPartProps, PickerPortalProps as DateRangePickerPortalProps };
@@ -1,2 +1,2 @@
1
- import{PickerAnchor,PickerCell,PickerContent,PickerGrid,PickerMonthCell,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerViewTrigger,specializePickerRootPart,createPickerRoot}from'./picker.js';import{dateRangePickerCapability}from'./capabilities/date-range-picker.js';export const DateRangePickerRoot=createPickerRoot(dateRangePickerCapability,'SectileDateRangePickerRoot');export const DateRangePickerTrigger=specializePickerRootPart('date-range',PickerTrigger);export const DateRangePickerAnchor=specializePickerRootPart('date-range',PickerAnchor);export const DateRangePickerPortal=PickerPortal;export const DateRangePickerContent=/* @__PURE__ */specializePickerRootPart('date-range',PickerContent);export const DateRangePickerGrid=specializePickerRootPart('date-range',PickerGrid);export const DateRangePickerCell=PickerCell;export const DateRangePickerMonthCell=PickerMonthCell;export const DateRangePickerStartInput=createPickerInput('start-input','SectileDateRangePickerStartInput');export const DateRangePickerEndInput=createPickerInput('end-input','SectileDateRangePickerEndInput');export const DateRangePickerPreviousWeek=specializePickerRootPart('date-range',createPickerMove('week',-1,'SectileDateRangePickerPreviousWeek'));export const DateRangePickerNextWeek=specializePickerRootPart('date-range',createPickerMove('week',1,'SectileDateRangePickerNextWeek'));export const DateRangePickerPreviousMonth=specializePickerRootPart('date-range',createPickerMove('month',-1,'SectileDateRangePickerPreviousMonth'));export const DateRangePickerNextMonth=specializePickerRootPart('date-range',createPickerMove('month',1,'SectileDateRangePickerNextMonth'));export const DateRangePickerPreviousYear=specializePickerRootPart('date-range',createPickerMove('year',-1,'SectileDateRangePickerPreviousYear'));export const DateRangePickerNextYear=specializePickerRootPart('date-range',createPickerMove('year',1,'SectileDateRangePickerNextYear'));export const DateRangePickerWeekViewTrigger=specializePickerRootPart('date-range',createPickerViewTrigger('week','SectileDateRangePickerWeekViewTrigger'));export const DateRangePickerMonthViewTrigger=specializePickerRootPart('date-range',createPickerViewTrigger('month','SectileDateRangePickerMonthViewTrigger'));export const DateRangePickerYearViewTrigger=specializePickerRootPart('date-range',createPickerViewTrigger('year','SectileDateRangePickerYearViewTrigger'));
1
+ import{PickerAnchor,PickerCell,PickerContent,PickerGrid,PickerMonthCell,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerViewTrigger,createPickerRoot}from'./picker.js';import{dateRangePickerCapability}from'./capabilities/date-range-picker.js';export const DateRangePickerRoot=/* @__PURE__ */createPickerRoot(dateRangePickerCapability,'SectileDateRangePickerRoot');export const DateRangePickerTrigger=PickerTrigger;export const DateRangePickerAnchor=PickerAnchor;export const DateRangePickerPortal=PickerPortal;export const DateRangePickerContent=PickerContent;export const DateRangePickerGrid=PickerGrid;export const DateRangePickerCell=PickerCell;export const DateRangePickerMonthCell=PickerMonthCell;export const DateRangePickerStartInput=/* @__PURE__ */createPickerInput('start-input','SectileDateRangePickerStartInput');export const DateRangePickerEndInput=/* @__PURE__ */createPickerInput('end-input','SectileDateRangePickerEndInput');export const DateRangePickerPreviousWeek=/* @__PURE__ */createPickerMove('week',-1,'SectileDateRangePickerPreviousWeek');export const DateRangePickerNextWeek=/* @__PURE__ */createPickerMove('week',1,'SectileDateRangePickerNextWeek');export const DateRangePickerPreviousMonth=/* @__PURE__ */createPickerMove('month',-1,'SectileDateRangePickerPreviousMonth');export const DateRangePickerNextMonth=/* @__PURE__ */createPickerMove('month',1,'SectileDateRangePickerNextMonth');export const DateRangePickerPreviousYear=/* @__PURE__ */createPickerMove('year',-1,'SectileDateRangePickerPreviousYear');export const DateRangePickerNextYear=/* @__PURE__ */createPickerMove('year',1,'SectileDateRangePickerNextYear');export const DateRangePickerWeekViewTrigger=/* @__PURE__ */createPickerViewTrigger('week','SectileDateRangePickerWeekViewTrigger');export const DateRangePickerMonthViewTrigger=/* @__PURE__ */createPickerViewTrigger('month','SectileDateRangePickerMonthViewTrigger');export const DateRangePickerYearViewTrigger=/* @__PURE__ */createPickerViewTrigger('year','SectileDateRangePickerYearViewTrigger');
2
2
  //# sourceMappingURL=date-range-picker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker.js","names":["PickerAnchor","PickerCell","PickerContent","PickerGrid","PickerMonthCell","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerViewTrigger","specializePickerRootPart","createPickerRoot","dateRangePickerCapability","DateRangePickerRoot","DateRangePickerTrigger","DateRangePickerAnchor","DateRangePickerPortal","DateRangePickerContent","DateRangePickerGrid","DateRangePickerCell","DateRangePickerMonthCell","DateRangePickerStartInput","DateRangePickerEndInput","DateRangePickerPreviousWeek","DateRangePickerNextWeek","DateRangePickerPreviousMonth","DateRangePickerNextMonth","DateRangePickerPreviousYear","DateRangePickerNextYear","DateRangePickerWeekViewTrigger","DateRangePickerMonthViewTrigger","DateRangePickerYearViewTrigger"],"sources":["../../src/temporal/date-range-picker.ts"],"mappings":"OAGEA,aAAcC,WAAYC,cAAeC,WAAYC,gBAAiBC,aAAcC,cAAeC,kBAAmBC,iBAAkBC,wBAAyBC,yBACjKC,qBACK,qBACEC,8BAAiC,6CASnC,MAAMC,oBAAsBF,iBAAiBC,0BAA2B,qCAKxE,MAAME,uBAAyBJ,yBAAyB,aAAcJ,sBACtE,MAAMS,sBAAwBL,yBAAyB,aAAcV,qBACrE,MAAMgB,sBAAwBX,oBAC9B,MAAMY,sCAAyCP,yBAAyB,aAAcR,sBACtF,MAAMgB,oBAAsBR,yBAAyB,aAAcP,mBACnE,MAAMgB,oBAAsBlB,kBAC5B,MAAMmB,yBAA2BhB,uBACjC,MAAMiB,0BAA4Bd,kBAAkB,cAAe,2CACnE,MAAMe,wBAA0Bf,kBAAkB,YAAa,yCAC/D,MAAMgB,4BAA8Bb,yBAAyB,aAAcF,iBAAiB,QAAS,EAAG,8CACxG,MAAMgB,wBAA0Bd,yBAAyB,aAAcF,iBAAiB,OAAQ,EAAG,0CACnG,MAAMiB,6BAA+Bf,yBAAyB,aAAcF,iBAAiB,SAAU,EAAG,+CAC1G,MAAMkB,yBAA2BhB,yBAAyB,aAAcF,iBAAiB,QAAS,EAAG,2CACrG,MAAMmB,4BAA8BjB,yBAAyB,aAAcF,iBAAiB,QAAS,EAAG,8CACxG,MAAMoB,wBAA0BlB,yBAAyB,aAAcF,iBAAiB,OAAQ,EAAG,0CACnG,MAAMqB,+BAAiCnB,yBAAyB,aAAcD,wBAAwB,OAAQ,iDAC9G,MAAMqB,gCAAkCpB,yBAAyB,aAAcD,wBAAwB,QAAS,kDAChH,MAAMsB,+BAAiCrB,yBAAyB,aAAcD,wBAAwB,OAAQ","ignoreList":[]}
1
+ {"version":3,"file":"date-range-picker.js","names":["PickerAnchor","PickerCell","PickerContent","PickerGrid","PickerMonthCell","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerViewTrigger","createPickerRoot","dateRangePickerCapability","DateRangePickerRoot","DateRangePickerTrigger","DateRangePickerAnchor","DateRangePickerPortal","DateRangePickerContent","DateRangePickerGrid","DateRangePickerCell","DateRangePickerMonthCell","DateRangePickerStartInput","DateRangePickerEndInput","DateRangePickerPreviousWeek","DateRangePickerNextWeek","DateRangePickerPreviousMonth","DateRangePickerNextMonth","DateRangePickerPreviousYear","DateRangePickerNextYear","DateRangePickerWeekViewTrigger","DateRangePickerMonthViewTrigger","DateRangePickerYearViewTrigger"],"sources":["../../src/temporal/date-range-picker.ts"],"mappings":"OAGEA,aAAcC,WAAYC,cAAeC,WAAYC,gBAAiBC,aAAcC,cAAeC,kBAAmBC,iBAAkBC,wBACxIC,qBACK,qBACEC,8BAAiC,6CAUnC,MAAMC,mCAAsCF,iBAAiBC,0BAA2B,qCAMxF,MAAME,uBAAyBP,qBAC/B,MAAMQ,sBAAwBd,oBAC9B,MAAMe,sBAAwBV,oBAC9B,MAAMW,uBAAyBd,qBAC/B,MAAMe,oBAAsBd,kBAC5B,MAAMe,oBAAsBjB,kBAC5B,MAAMkB,yBAA2Bf,uBACjC,MAAMgB,yCAA4Cb,kBAAkB,cAAe,2CACnF,MAAMc,uCAA0Cd,kBAAkB,YAAa,yCAC/E,MAAMe,2CAA8Cd,iBAAiB,QAAS,EAAG,6CACjF,MAAMe,uCAA0Cf,iBAAiB,OAAQ,EAAG,yCAC5E,MAAMgB,4CAA+ChB,iBAAiB,SAAU,EAAG,8CACnF,MAAMiB,wCAA2CjB,iBAAiB,QAAS,EAAG,0CAC9E,MAAMkB,2CAA8ClB,iBAAiB,QAAS,EAAG,6CACjF,MAAMmB,uCAA0CnB,iBAAiB,OAAQ,EAAG,yCAC5E,MAAMoB,8CAAiDnB,wBAAwB,OAAQ,gDACvF,MAAMoB,+CAAkDpB,wBAAwB,QAAS,iDACzF,MAAMqB,8CAAiDrB,wBAAwB,OAAQ","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ import type { TimeFieldPrecision } from '@sectile/temporal/time-field';
1
2
  import { type DateTimeFieldOptions } from '@sectile/dom/temporal/date-time-field';
2
3
  export type DateTimeValue = NonNullable<DateTimeFieldOptions['value']>;
3
4
  export interface DateTimeFieldProps {
@@ -9,6 +10,8 @@ export interface DateTimeFieldProps {
9
10
  readonly required?: boolean;
10
11
  readonly label?: string;
11
12
  readonly native?: boolean;
13
+ /** Custom editing precision; Provider defaults to lossless milliseconds. Native mode retains ISO behavior. */
14
+ readonly precision?: TimeFieldPrecision;
12
15
  }
13
- export declare const DateTimeField: import("vue").DefineComponent<import("../input/native-field.js").NativeFieldPublicProps<import("@sectile/dom/temporal/date-time-field").DateTimeValue, import("@sectile/temporal").DateTimeFieldPolicies>>;
16
+ export declare const DateTimeField: import("vue").DefineComponent<import("../input/native-field.js").NativeFieldPublicProps<import("@sectile/temporal/date-time-field").DateTimeValue, import("@sectile/temporal/date-time-field").DateTimeFieldPolicies> & Pick<DateTimeFieldProps, "precision">>;
14
17
  export type DateTimeFieldValueChangeHandler = (value: DateTimeValue | null) => void;
@@ -1,2 +1,2 @@
1
- import{}from"vue";import{createDateTimeField,formatDateTimeValue}from"@sectile/dom/temporal/date-time-field";import{createNativeFieldComponent}from"../input/native-field.js";const DateTimeField=createNativeFieldComponent({name:"SectileDateTimeField",scope:"date-time-field",inputMode:"text",nativeInputType:"datetime-local",placeholder:"YYYY-MM-DDTHH:mm",formatValue:formatDateTimeValue,valueType:Object,create:options=>createDateTimeField({...options,...options.policies===void 0?{}:{policies:options.policies}})});export{DateTimeField};
1
+ import{}from'vue';import{unwrap}from'@sectile/core/result';import{createDateTimeFieldState,reformatDateTimeFieldState,formatDateTimeFieldValue}from'@sectile/temporal/date-time-field';import{createDateTimeField,formatDateTimeValue,getDateTimeFieldPlaceholder}from'@sectile/dom/temporal/date-time-field';import{createNativeFieldComponent}from'../input/native-field.js';import{useDateTimePresentation}from'./internal/time-presentation.js';function rebase(value,inputState,previousFormat,format){return unwrap(reformatDateTimeFieldState(createDateTimeFieldState(value,inputState,previousFormat),format)).inputState}export const DateTimeField=/* @__PURE__ */createNativeFieldComponent({name:'SectileDateTimeField',scope:'date-time-field',inputMode:'text',nativeInputType:'datetime-local',placeholder:'YYYY-MM-DDTHH:mm',formatValue:formatDateTimeValue,valueType:Object,create:createDateTimeField,presentationProps:{precision:{type:String,default:undefined}},rebase:(value,inputState,previousFormat)=>rebase(value,inputState,previousFormat),usePresentation(props){return useDateTimePresentation(props,format=>({format,inputMode:'text',placeholder:getDateTimeFieldPlaceholder(format),formatValue:value=>formatDateTimeFieldValue(value,format),create:options=>createDateTimeField({...options,format}),rebase:(value,inputState,previousFormat)=>rebase(value,inputState,previousFormat,format)}))}});
2
2
  //# sourceMappingURL=date-time-field.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/temporal/date-time-field.ts"],"mappings":"AAAA,YAA8B,MAC9B,OACE,oBACA,wBAGK,wCACP,OAAS,+BAAkE,2BAgBpE,MAAM,cAAgB,2BAAiE,CAC5F,KAAM,uBACN,MAAO,kBACP,UAAW,OACX,gBAAiB,iBACjB,YAAa,mBACb,YAAa,oBACb,UAAW,OACX,OAAS,SAAsG,oBAAoB,CACjI,GAAG,QACH,GAAI,QAAQ,WAAa,OACrB,CAAA,EACA,CAAE,SAAU,QAAQ,QAAQ,EACjC,EACF","names":[],"file":"date-time-field.js"}
1
+ {"version":3,"file":"date-time-field.js","names":["unwrap","createDateTimeFieldState","reformatDateTimeFieldState","formatDateTimeFieldValue","createDateTimeField","formatDateTimeValue","getDateTimeFieldPlaceholder","createNativeFieldComponent","useDateTimePresentation","rebase","value","inputState","previousFormat","format","DateTimeField","name","scope","inputMode","nativeInputType","placeholder","formatValue","valueType","Object","create","presentationProps","precision","type","String","default","undefined","usePresentation","props","options"],"sources":["../../src/temporal/date-time-field.ts"],"mappings":"YAA8B,aACrBA,WAAc,8BAEdC,yBAA0BC,2BAA4BC,6BAA0D,2CAEvHC,oBACAC,oBACAC,gCAEK,+CACEC,+BAAgE,kCAChEC,4BAA+B,kCAkBxC,SAASC,OAAOC,MAA6BC,WAA4DC,eAAiDC,QACxJ,OAAOb,OAAOE,2BAA2BD,yBAAyBS,MAAOC,WAAYC,gBAAiBC,SAASF,UACjH,QAEO,MAAMG,6BAAgCP,2BAA6H,CACxKQ,KAAM,uBACNC,MAAO,kBACPC,UAAW,OACXC,gBAAiB,iBACjBC,YAAa,mBACbC,YAAaf,oBACbgB,UAAWC,OACXC,OAAQnB,oBACRoB,kBAAmB,CAAEC,UAAW,CAAEC,KAAMC,OAAwCC,QAASC,YACzFpB,OAAQ,CAACC,MAAOC,WAAYC,iBAAmBH,OAAOC,MAAOC,WAAYC,gBACzE,eAAAkB,CAAgBC,OACd,OAAOvB,wBAA4GuB,MACjHlB,SAAU,CAAGA,OAAQI,UAAW,OAAQE,YAAab,4BAA4BO,QAC/EO,YAAaV,OAASP,yBAAyBO,MAAOG,QAASU,OAAQS,SAAW5B,oBAAoB,IAAK4B,QAASnB,SACpHJ,OAAQ,CAACC,MAAOC,WAAYC,iBAAmBH,OAAOC,MAAOC,WAAYC,eAAgBC,UAC/F","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  import type { DateTimePickerOptions } from '@sectile/dom/temporal/date-time-picker';
2
2
  import type { DateValue } from '@sectile/dom/temporal/date-field';
3
3
  import type { DateTimeValue } from '@sectile/dom/temporal/date-time-field';
4
- import { type PickerCellSlotProps, type PickerMonthCellSlotProps, type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps } from './picker.js';
4
+ import { type PickerRootPartComponent, type PickerCellSlotProps, type PickerMonthCellSlotProps, type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps } from './picker.js';
5
+ import type { PickerContentPartComponent, PickerContentSlotProps } from './picker.js';
5
6
  export interface DateTimePickerRootProps extends PickerPartProps, PickerPositionProps {
6
7
  readonly modelValue?: DateTimeValue | null;
7
8
  readonly defaultValue?: DateTimeValue | null;
@@ -19,11 +20,12 @@ export interface DateTimePickerRootProps extends PickerPartProps, PickerPosition
19
20
  }
20
21
  export declare const DateTimePickerRoot: import("./picker.js").PickerRootComponent<"date-time">;
21
22
  export type DateTimePickerRootSlotProps = PickerRootSlotProps<DateTimeValue | null>;
23
+ export type DateTimePickerContentSlotProps = PickerContentSlotProps<DateTimeValue | null>;
22
24
  export type DateTimePickerValueChangeHandler = NonNullable<InstanceType<typeof DateTimePickerRoot>['$props']['onUpdate:modelValue']>;
23
25
  export type DateTimePickerOpenChangeHandler = NonNullable<InstanceType<typeof DateTimePickerRoot>['$props']['onUpdate:open']>;
24
26
  export type DateTimePickerHighlightedValueChangeHandler = NonNullable<InstanceType<typeof DateTimePickerRoot>['$props']['onUpdate:highlightedValue']>;
25
- export declare const DateTimePickerTrigger: import("./picker.js").PickerRootPartComponent<"date-time">;
26
- export declare const DateTimePickerAnchor: import("./picker.js").PickerRootPartComponent<"date-time">;
27
+ export declare const DateTimePickerTrigger: PickerRootPartComponent<'date-time'>;
28
+ export declare const DateTimePickerAnchor: PickerRootPartComponent<'date-time'>;
27
29
  export declare const DateTimePickerPortal: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
28
30
  to: {
29
31
  type: import("vue").PropType<string | HTMLElement>;
@@ -55,8 +57,8 @@ export declare const DateTimePickerPortal: import("vue").DefineComponent<import(
55
57
  disabled: boolean;
56
58
  defer: boolean;
57
59
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
58
- export declare const DateTimePickerContent: import("./picker.js").PickerRootPartComponent<"date-time">;
59
- export declare const DateTimePickerGrid: import("./picker.js").PickerRootPartComponent<"date-time">;
60
+ export declare const DateTimePickerContent: PickerContentPartComponent<'date-time'>;
61
+ export declare const DateTimePickerGrid: PickerRootPartComponent<'date-time'>;
60
62
  export declare const DateTimePickerCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
61
63
  value: {
62
64
  type: import("vue").PropType<DateValue>;
@@ -241,13 +243,13 @@ export declare const DateTimePickerTimeInput: import("vue").DefineComponent<impo
241
243
  as: import("../primitive.js").PrimitiveAs;
242
244
  asChild: boolean;
243
245
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
244
- export declare const DateTimePickerPreviousWeek: import("./picker.js").PickerRootPartComponent<"date-time">;
245
- export declare const DateTimePickerNextWeek: import("./picker.js").PickerRootPartComponent<"date-time">;
246
- export declare const DateTimePickerPreviousMonth: import("./picker.js").PickerRootPartComponent<"date-time">;
247
- export declare const DateTimePickerNextMonth: import("./picker.js").PickerRootPartComponent<"date-time">;
248
- export declare const DateTimePickerPreviousYear: import("./picker.js").PickerRootPartComponent<"date-time">;
249
- export declare const DateTimePickerNextYear: import("./picker.js").PickerRootPartComponent<"date-time">;
250
- export declare const DateTimePickerWeekViewTrigger: import("./picker.js").PickerRootPartComponent<"date-time">;
251
- export declare const DateTimePickerMonthViewTrigger: import("./picker.js").PickerRootPartComponent<"date-time">;
252
- export declare const DateTimePickerYearViewTrigger: import("./picker.js").PickerRootPartComponent<"date-time">;
246
+ export declare const DateTimePickerPreviousWeek: PickerRootPartComponent<'date-time'>;
247
+ export declare const DateTimePickerNextWeek: PickerRootPartComponent<'date-time'>;
248
+ export declare const DateTimePickerPreviousMonth: PickerRootPartComponent<'date-time'>;
249
+ export declare const DateTimePickerNextMonth: PickerRootPartComponent<'date-time'>;
250
+ export declare const DateTimePickerPreviousYear: PickerRootPartComponent<'date-time'>;
251
+ export declare const DateTimePickerNextYear: PickerRootPartComponent<'date-time'>;
252
+ export declare const DateTimePickerWeekViewTrigger: PickerRootPartComponent<'date-time'>;
253
+ export declare const DateTimePickerMonthViewTrigger: PickerRootPartComponent<'date-time'>;
254
+ export declare const DateTimePickerYearViewTrigger: PickerRootPartComponent<'date-time'>;
253
255
  export type { DateTimeValue, DateValue, PickerCellSlotProps as DateTimePickerCellSlotProps, PickerMonthCellSlotProps as DateTimePickerMonthCellSlotProps, PickerPartProps as DateTimePickerPartProps, PickerPortalProps as DateTimePickerPortalProps };
@@ -1,2 +1,2 @@
1
- import{PickerAnchor,PickerCell,PickerContent,PickerGrid,PickerMonthCell,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerViewTrigger,specializePickerRootPart,createPickerRoot}from'./picker.js';import{dateTimePickerCapability}from'./capabilities/date-time-picker.js';export const DateTimePickerRoot=createPickerRoot(dateTimePickerCapability,'SectileDateTimePickerRoot');export const DateTimePickerTrigger=specializePickerRootPart('date-time',PickerTrigger);export const DateTimePickerAnchor=specializePickerRootPart('date-time',PickerAnchor);export const DateTimePickerPortal=PickerPortal;export const DateTimePickerContent=/* @__PURE__ */specializePickerRootPart('date-time',PickerContent);export const DateTimePickerGrid=specializePickerRootPart('date-time',PickerGrid);export const DateTimePickerCell=PickerCell;export const DateTimePickerMonthCell=PickerMonthCell;export const DateTimePickerDateTimeInput=createPickerInput('date-time-input','SectileDateTimePickerDateTimeInput');export const DateTimePickerDateInput=createPickerInput('date-input','SectileDateTimePickerDateInput');export const DateTimePickerTimeInput=createPickerInput('time-input','SectileDateTimePickerTimeInput');export const DateTimePickerPreviousWeek=specializePickerRootPart('date-time',createPickerMove('week',-1,'SectileDateTimePickerPreviousWeek'));export const DateTimePickerNextWeek=specializePickerRootPart('date-time',createPickerMove('week',1,'SectileDateTimePickerNextWeek'));export const DateTimePickerPreviousMonth=specializePickerRootPart('date-time',createPickerMove('month',-1,'SectileDateTimePickerPreviousMonth'));export const DateTimePickerNextMonth=specializePickerRootPart('date-time',createPickerMove('month',1,'SectileDateTimePickerNextMonth'));export const DateTimePickerPreviousYear=specializePickerRootPart('date-time',createPickerMove('year',-1,'SectileDateTimePickerPreviousYear'));export const DateTimePickerNextYear=specializePickerRootPart('date-time',createPickerMove('year',1,'SectileDateTimePickerNextYear'));export const DateTimePickerWeekViewTrigger=specializePickerRootPart('date-time',createPickerViewTrigger('week','SectileDateTimePickerWeekViewTrigger'));export const DateTimePickerMonthViewTrigger=specializePickerRootPart('date-time',createPickerViewTrigger('month','SectileDateTimePickerMonthViewTrigger'));export const DateTimePickerYearViewTrigger=specializePickerRootPart('date-time',createPickerViewTrigger('year','SectileDateTimePickerYearViewTrigger'));
1
+ import{PickerAnchor,PickerCell,PickerContent,PickerGrid,PickerMonthCell,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerViewTrigger,createPickerRoot,dateTimeSubmissionLayout}from'./picker.js';import{dateTimePickerCapability}from'./capabilities/date-time-picker.js';export const DateTimePickerRoot=/* @__PURE__ */createPickerRoot(dateTimePickerCapability,'SectileDateTimePickerRoot',{formLayout:dateTimeSubmissionLayout});export const DateTimePickerTrigger=PickerTrigger;export const DateTimePickerAnchor=PickerAnchor;export const DateTimePickerPortal=PickerPortal;export const DateTimePickerContent=PickerContent;export const DateTimePickerGrid=PickerGrid;export const DateTimePickerCell=PickerCell;export const DateTimePickerMonthCell=PickerMonthCell;export const DateTimePickerDateTimeInput=/* @__PURE__ */createPickerInput('date-time-input','SectileDateTimePickerDateTimeInput');export const DateTimePickerDateInput=/* @__PURE__ */createPickerInput('date-input','SectileDateTimePickerDateInput');export const DateTimePickerTimeInput=/* @__PURE__ */createPickerInput('time-input','SectileDateTimePickerTimeInput');export const DateTimePickerPreviousWeek=/* @__PURE__ */createPickerMove('week',-1,'SectileDateTimePickerPreviousWeek');export const DateTimePickerNextWeek=/* @__PURE__ */createPickerMove('week',1,'SectileDateTimePickerNextWeek');export const DateTimePickerPreviousMonth=/* @__PURE__ */createPickerMove('month',-1,'SectileDateTimePickerPreviousMonth');export const DateTimePickerNextMonth=/* @__PURE__ */createPickerMove('month',1,'SectileDateTimePickerNextMonth');export const DateTimePickerPreviousYear=/* @__PURE__ */createPickerMove('year',-1,'SectileDateTimePickerPreviousYear');export const DateTimePickerNextYear=/* @__PURE__ */createPickerMove('year',1,'SectileDateTimePickerNextYear');export const DateTimePickerWeekViewTrigger=/* @__PURE__ */createPickerViewTrigger('week','SectileDateTimePickerWeekViewTrigger');export const DateTimePickerMonthViewTrigger=/* @__PURE__ */createPickerViewTrigger('month','SectileDateTimePickerMonthViewTrigger');export const DateTimePickerYearViewTrigger=/* @__PURE__ */createPickerViewTrigger('year','SectileDateTimePickerYearViewTrigger');
2
2
  //# sourceMappingURL=date-time-picker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-time-picker.js","names":["PickerAnchor","PickerCell","PickerContent","PickerGrid","PickerMonthCell","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerViewTrigger","specializePickerRootPart","createPickerRoot","dateTimePickerCapability","DateTimePickerRoot","DateTimePickerTrigger","DateTimePickerAnchor","DateTimePickerPortal","DateTimePickerContent","DateTimePickerGrid","DateTimePickerCell","DateTimePickerMonthCell","DateTimePickerDateTimeInput","DateTimePickerDateInput","DateTimePickerTimeInput","DateTimePickerPreviousWeek","DateTimePickerNextWeek","DateTimePickerPreviousMonth","DateTimePickerNextMonth","DateTimePickerPreviousYear","DateTimePickerNextYear","DateTimePickerWeekViewTrigger","DateTimePickerMonthViewTrigger","DateTimePickerYearViewTrigger"],"sources":["../../src/temporal/date-time-picker.ts"],"mappings":"OAIEA,aAAcC,WAAYC,cAAeC,WAAYC,gBAAiBC,aAAcC,cAAeC,kBAAmBC,iBAAkBC,wBAAyBC,yBACjKC,qBACK,qBACEC,6BAAgC,4CASlC,MAAMC,mBAAqBF,iBAAiBC,yBAA0B,oCAKtE,MAAME,sBAAwBJ,yBAAyB,YAAaJ,sBACpE,MAAMS,qBAAuBL,yBAAyB,YAAaV,qBACnE,MAAMgB,qBAAuBX,oBAC7B,MAAMY,qCAAwCP,yBAAyB,YAAaR,sBACpF,MAAMgB,mBAAqBR,yBAAyB,YAAaP,mBACjE,MAAMgB,mBAAqBlB,kBAC3B,MAAMmB,wBAA0BhB,uBAChC,MAAMiB,4BAA8Bd,kBAAkB,kBAAmB,6CACzE,MAAMe,wBAA0Bf,kBAAkB,aAAc,yCAChE,MAAMgB,wBAA0BhB,kBAAkB,aAAc,yCAChE,MAAMiB,2BAA6Bd,yBAAyB,YAAaF,iBAAiB,QAAS,EAAG,6CACtG,MAAMiB,uBAAyBf,yBAAyB,YAAaF,iBAAiB,OAAQ,EAAG,yCACjG,MAAMkB,4BAA8BhB,yBAAyB,YAAaF,iBAAiB,SAAU,EAAG,8CACxG,MAAMmB,wBAA0BjB,yBAAyB,YAAaF,iBAAiB,QAAS,EAAG,0CACnG,MAAMoB,2BAA6BlB,yBAAyB,YAAaF,iBAAiB,QAAS,EAAG,6CACtG,MAAMqB,uBAAyBnB,yBAAyB,YAAaF,iBAAiB,OAAQ,EAAG,yCACjG,MAAMsB,8BAAgCpB,yBAAyB,YAAaD,wBAAwB,OAAQ,gDAC5G,MAAMsB,+BAAiCrB,yBAAyB,YAAaD,wBAAwB,QAAS,iDAC9G,MAAMuB,8BAAgCtB,yBAAyB,YAAaD,wBAAwB,OAAQ","ignoreList":[]}
1
+ {"version":3,"file":"date-time-picker.js","names":["PickerAnchor","PickerCell","PickerContent","PickerGrid","PickerMonthCell","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerViewTrigger","createPickerRoot","dateTimeSubmissionLayout","dateTimePickerCapability","DateTimePickerRoot","formLayout","DateTimePickerTrigger","DateTimePickerAnchor","DateTimePickerPortal","DateTimePickerContent","DateTimePickerGrid","DateTimePickerCell","DateTimePickerMonthCell","DateTimePickerDateTimeInput","DateTimePickerDateInput","DateTimePickerTimeInput","DateTimePickerPreviousWeek","DateTimePickerNextWeek","DateTimePickerPreviousMonth","DateTimePickerNextMonth","DateTimePickerPreviousYear","DateTimePickerNextYear","DateTimePickerWeekViewTrigger","DateTimePickerMonthViewTrigger","DateTimePickerYearViewTrigger"],"sources":["../../src/temporal/date-time-picker.ts"],"mappings":"OAIEA,aAAcC,WAAYC,cAAeC,WAAYC,gBAAiBC,aAAcC,cAAeC,kBAAmBC,iBAAkBC,wBACxIC,iBAAkBC,6BACb,qBACEC,6BAAgC,4CAUlC,MAAMC,kCAAqCH,iBAAiBE,yBAA0B,4BAA6B,CAAEE,WAAYH,kCAMjI,MAAMI,sBAAwBT,qBAC9B,MAAMU,qBAAuBhB,oBAC7B,MAAMiB,qBAAuBZ,oBAC7B,MAAMa,sBAAwBhB,qBAC9B,MAAMiB,mBAAqBhB,kBAC3B,MAAMiB,mBAAqBnB,kBAC3B,MAAMoB,wBAA0BjB,uBAChC,MAAMkB,2CAA8Cf,kBAAkB,kBAAmB,6CACzF,MAAMgB,uCAA0ChB,kBAAkB,aAAc,yCAChF,MAAMiB,uCAA0CjB,kBAAkB,aAAc,yCAChF,MAAMkB,0CAA6CjB,iBAAiB,QAAS,EAAG,4CAChF,MAAMkB,sCAAyClB,iBAAiB,OAAQ,EAAG,wCAC3E,MAAMmB,2CAA8CnB,iBAAiB,SAAU,EAAG,6CAClF,MAAMoB,uCAA0CpB,iBAAiB,QAAS,EAAG,yCAC7E,MAAMqB,0CAA6CrB,iBAAiB,QAAS,EAAG,4CAChF,MAAMsB,sCAAyCtB,iBAAiB,OAAQ,EAAG,wCAC3E,MAAMuB,6CAAgDtB,wBAAwB,OAAQ,+CACtF,MAAMuB,8CAAiDvB,wBAAwB,QAAS,gDACxF,MAAMwB,6CAAgDxB,wBAAwB,OAAQ","ignoreList":[]}
@@ -0,0 +1,158 @@
1
+ import { type PropType, type SlotsType, type VNodeChild } from 'vue';
2
+ import { type DateTimeRangeFieldPolicies, type DateTimeRange } from '@sectile/dom/temporal/date-time-range-field';
3
+ import type { TimeFieldPrecision } from '@sectile/temporal/time-field';
4
+ import type { PrimitiveAs } from '../primitive.js';
5
+ export interface DateTimeRangeFieldRootProps {
6
+ readonly name?: string | undefined;
7
+ readonly form?: string | undefined;
8
+ readonly modelValue?: DateTimeRange | null;
9
+ readonly defaultValue?: DateTimeRange | null;
10
+ readonly policies?: DateTimeRangeFieldPolicies;
11
+ readonly precision?: TimeFieldPrecision;
12
+ readonly disabled?: boolean;
13
+ readonly?: boolean;
14
+ readonly required?: boolean;
15
+ readonly startLabel?: string;
16
+ readonly endLabel?: string;
17
+ readonly as?: PrimitiveAs;
18
+ readonly asChild?: boolean;
19
+ }
20
+ export interface DateTimeRangeFieldRootSlotProps {
21
+ readonly value: DateTimeRange | null;
22
+ readonly startText: string;
23
+ readonly endText: string;
24
+ readonly active: 'start' | 'end';
25
+ readonly disabled: boolean;
26
+ readonly: boolean;
27
+ }
28
+ export declare const DateTimeRangeFieldRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
29
+ name: {
30
+ type: PropType<string | undefined>;
31
+ default: undefined;
32
+ };
33
+ form: {
34
+ type: PropType<string | undefined>;
35
+ default: undefined;
36
+ };
37
+ modelValue: {
38
+ type: PropType<DateTimeRange | null>;
39
+ default: undefined;
40
+ };
41
+ defaultValue: {
42
+ type: PropType<DateTimeRange | null>;
43
+ default: null;
44
+ };
45
+ policies: {
46
+ type: PropType<DateTimeRangeFieldPolicies>;
47
+ default: undefined;
48
+ };
49
+ precision: {
50
+ type: PropType<TimeFieldPrecision>;
51
+ default: undefined;
52
+ };
53
+ disabled: {
54
+ type: BooleanConstructor;
55
+ default: boolean;
56
+ };
57
+ readonly: {
58
+ type: BooleanConstructor;
59
+ default: boolean;
60
+ };
61
+ required: {
62
+ type: BooleanConstructor;
63
+ default: boolean;
64
+ };
65
+ startLabel: {
66
+ type: StringConstructor;
67
+ default: undefined;
68
+ };
69
+ endLabel: {
70
+ type: StringConstructor;
71
+ default: undefined;
72
+ };
73
+ as: {
74
+ type: PropType<PrimitiveAs>;
75
+ default: string;
76
+ };
77
+ asChild: {
78
+ type: BooleanConstructor;
79
+ default: boolean;
80
+ };
81
+ }>, () => VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
82
+ 'update:modelValue': (_value: DateTimeRange | null) => boolean;
83
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
84
+ name: {
85
+ type: PropType<string | undefined>;
86
+ default: undefined;
87
+ };
88
+ form: {
89
+ type: PropType<string | undefined>;
90
+ default: undefined;
91
+ };
92
+ modelValue: {
93
+ type: PropType<DateTimeRange | null>;
94
+ default: undefined;
95
+ };
96
+ defaultValue: {
97
+ type: PropType<DateTimeRange | null>;
98
+ default: null;
99
+ };
100
+ policies: {
101
+ type: PropType<DateTimeRangeFieldPolicies>;
102
+ default: undefined;
103
+ };
104
+ precision: {
105
+ type: PropType<TimeFieldPrecision>;
106
+ default: undefined;
107
+ };
108
+ disabled: {
109
+ type: BooleanConstructor;
110
+ default: boolean;
111
+ };
112
+ readonly: {
113
+ type: BooleanConstructor;
114
+ default: boolean;
115
+ };
116
+ required: {
117
+ type: BooleanConstructor;
118
+ default: boolean;
119
+ };
120
+ startLabel: {
121
+ type: StringConstructor;
122
+ default: undefined;
123
+ };
124
+ endLabel: {
125
+ type: StringConstructor;
126
+ default: undefined;
127
+ };
128
+ as: {
129
+ type: PropType<PrimitiveAs>;
130
+ default: string;
131
+ };
132
+ asChild: {
133
+ type: BooleanConstructor;
134
+ default: boolean;
135
+ };
136
+ }>> & Readonly<{
137
+ "onUpdate:modelValue"?: (_value: DateTimeRange | null) => any;
138
+ }>, {
139
+ name: string | undefined;
140
+ form: string | undefined;
141
+ modelValue: DateTimeRange | null;
142
+ defaultValue: DateTimeRange | null;
143
+ policies: DateTimeRangeFieldPolicies;
144
+ precision: TimeFieldPrecision;
145
+ disabled: boolean;
146
+ readonly: boolean;
147
+ required: boolean;
148
+ startLabel: string;
149
+ endLabel: string;
150
+ as: PrimitiveAs;
151
+ asChild: boolean;
152
+ }, SlotsType<{
153
+ default: (props: DateTimeRangeFieldRootSlotProps) => VNodeChild;
154
+ }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
155
+ export type DateTimeRangeFieldValueChangeHandler = (value: DateTimeRange | null) => void;
156
+ export declare const DateTimeRangeFieldStartInput: import("vue").DefineComponent<{}, () => VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
157
+ export declare const DateTimeRangeFieldEndInput: import("vue").DefineComponent<{}, () => VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
158
+ export type { DateTimeRange };
@@ -0,0 +1,2 @@
1
+ import{defineComponent}from'vue';import{createDateTimeRangeField,tryCreateDateTimeRangeFieldState}from'@sectile/dom/temporal/date-time-range-field';import{reformatDateTimeRangeFieldState}from'@sectile/temporal/date-time-range-field';import{getDateTimeFieldPlaceholder}from'@sectile/dom/temporal/date-time-field';import{setupNativeRangeField,createNativeRangeFieldInput}from'../input/native-range-field.js';import{useDateTimePresentation}from'./internal/time-presentation.js';const contextKey=Symbol('SectileDateTimeRangeField');const config={name:'DateTimeRangeFieldRoot',scope:'date-time-range-field',contextKey,reset:true,initial:tryCreateDateTimeRangeFieldState,create:createDateTimeRangeField,rebase:(state,start,end)=>reformatDateTimeRangeFieldState({...state,start:{...state.start,inputState:start},end:{...state.end,inputState:end}})};export const DateTimeRangeFieldRoot=/* @__PURE__ */defineComponent({__sectileFormLabelMode:'labelledby',name:'SectileDateTimeRangeFieldRoot',inheritAttrs:false,props:{name:{type:String,default:undefined},form:{type:String,default:undefined},modelValue:{type:Object,default:undefined},defaultValue:{type:Object,default:null},policies:{type:Object,default:undefined},precision:{type:String,default:undefined},disabled:{type:Boolean,default:false},readonly:{type:Boolean,default:false},required:{type:Boolean,default:false},startLabel:{type:String,default:undefined},endLabel:{type:String,default:undefined},as:{type:[String,Object,Function],default:'div'},asChild:{type:Boolean,default:false}},emits:{'update:modelValue':_value=>true},slots:Object,setup(props,context){const presentation=useDateTimePresentation(props,format=>({inputMode:format.time.dayPeriods===undefined?'numeric':'text',placeholder:getDateTimeFieldPlaceholder(format),initial:options=>tryCreateDateTimeRangeFieldState({...options,startFormat:format,endFormat:format}),create:options=>createDateTimeRangeField({...options,format}),rebase:(state,start,end)=>reformatDateTimeRangeFieldState({...state,start:{...state.start,inputState:start},end:{...state.end,inputState:end}},format)}));return setupNativeRangeField({...config,usePresentation:()=>presentation},props,context)}});export const DateTimeRangeFieldStartInput=/* @__PURE__ */createNativeRangeFieldInput(contextKey,'date-time-range-field','YYYY-MM-DDTHH:mm','start','SectileDateTimeRangeFieldStartInput','DateTimeRangeFieldRoot');export const DateTimeRangeFieldEndInput=/* @__PURE__ */createNativeRangeFieldInput(contextKey,'date-time-range-field','YYYY-MM-DDTHH:mm','end','SectileDateTimeRangeFieldEndInput','DateTimeRangeFieldRoot');
2
+ //# sourceMappingURL=date-time-range-field.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-time-range-field.js","names":["defineComponent","createDateTimeRangeField","tryCreateDateTimeRangeFieldState","reformatDateTimeRangeFieldState","getDateTimeFieldPlaceholder","setupNativeRangeField","createNativeRangeFieldInput","useDateTimePresentation","contextKey","Symbol","config","name","scope","reset","initial","create","rebase","state","start","end","inputState","DateTimeRangeFieldRoot","__sectileFormLabelMode","inheritAttrs","props","type","String","default","undefined","form","modelValue","Object","defaultValue","policies","precision","disabled","Boolean","readonly","required","startLabel","endLabel","as","Function","asChild","emits","_value","slots","setup","context","presentation","format","inputMode","time","dayPeriods","placeholder","options","startFormat","endFormat","usePresentation","DateTimeRangeFieldStartInput","DateTimeRangeFieldEndInput"],"sources":["../../src/temporal/date-time-range-field.ts"],"mappings":"OAASA,oBAAuE,aACvEC,yBAA0BC,qCAA2H,qDACrJC,oCAAuC,iDAEvCC,gCAAmC,+CACnCC,sBAAuBC,gCAA8F,wCACrHC,4BAA+B,kCA0BxC,MAAMC,WAAaC,OAAO,6BAC1B,MAAMC,OAAqG,CACzGC,KAAM,yBAA0BC,MAAO,wBAAyBJ,WAAYK,MAAO,KACnFC,QAASZ,iCAAkCa,OAAQd,yBACnDe,OAAQ,CAACC,MAAOC,MAAOC,MAAQhB,gCAAgC,IAAKc,MAAOC,MAAO,IAAKD,MAAMC,MAAOE,WAAYF,OAASC,IAAK,IAAKF,MAAME,IAAKC,WAAYD,eAErJ,MAAME,sCAAyCrB,gBAAgB,CACpEsB,uBAAwB,aACxBX,KAAM,gCAAiCY,aAAc,MACrDC,MAAO,CACLb,KAAM,CAAEc,KAAMC,OAAwCC,QAASC,WAAaC,KAAM,CAAEJ,KAAMC,OAAwCC,QAASC,WAC3IE,WAAY,CAAEL,KAAMM,OAA0CJ,QAASC,WACvEI,aAAc,CAAEP,KAAMM,OAA0CJ,QAAS,MACzEM,SAAU,CAAER,KAAMM,OAAgDJ,QAASC,WAC3EM,UAAW,CAAET,KAAMC,OAAwCC,QAASC,WACpEO,SAAU,CAAEV,KAAMW,QAAST,QAAS,OAASU,SAAU,CAAEZ,KAAMW,QAAST,QAAS,OACjFW,SAAU,CAAEb,KAAMW,QAAST,QAAS,OACpCY,WAAY,CAAEd,KAAMC,OAAQC,QAASC,WAAaY,SAAU,CAAEf,KAAMC,OAAQC,QAASC,WACrFa,GAAI,CAAEhB,KAAM,CAACC,OAAQK,OAAQW,UAAoCf,QAAS,OAC1EgB,QAAS,CAAElB,KAAMW,QAAST,QAAS,QAErCiB,MAAO,CAAE,oBAAsBC,QAA0C,MACzEC,MAAOf,OACP,KAAAgB,CAAMvB,MAAOwB,SACX,MAAMC,aAAe1C,wBAAqHiB,MAAO0B,SAAU,CACzJC,UAAWD,OAAOE,KAAKC,aAAezB,UAAY,UAAY,OAAQ0B,YAAalD,4BAA4B8C,QAC/GpC,QAASyC,SAAWrD,iCAAiC,IAAKqD,QAASC,YAAaN,OAAQO,UAAWP,SACnGnC,OAAQwC,SAAWtD,yBAAyB,IAAKsD,QAASL,SAC1DlC,OAAQ,CAACC,MAAOC,MAAOC,MAAQhB,gCAAgC,IAAKc,MAAOC,MAAO,IAAKD,MAAMC,MAAOE,WAAYF,OAASC,IAAK,IAAKF,MAAME,IAAKC,WAAYD,MAAS+B,WAErK,OAAO7C,sBAAsB,IAAKK,OAAQgD,gBAAiB,IAAMT,cAAgBzB,MAAOwB,QAC1F,WAGK,MAAMW,4CAA+CrD,4BAA4BE,WAAY,wBAAyB,mBAAoB,QAAS,sCAAuC,iCAC1L,MAAMoD,0CAA6CtD,4BAA4BE,WAAY,wBAAyB,mBAAoB,MAAO,oCAAqC","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  import type { DateTimeRangePickerOptions } from '@sectile/dom/temporal/date-time-range-picker';
2
2
  import type { DateValue } from '@sectile/dom/temporal/date-field';
3
3
  import type { DateTimeRange } from '@sectile/dom/temporal/date-time-field';
4
- import { type PickerCellSlotProps, type PickerMonthCellSlotProps, type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps } from './picker.js';
4
+ import { type PickerRootPartComponent, type PickerCellSlotProps, type PickerMonthCellSlotProps, type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps } from './picker.js';
5
+ import type { PickerContentPartComponent, PickerContentSlotProps } from './picker.js';
5
6
  export interface DateTimeRangePickerRootProps extends PickerPartProps, PickerPositionProps {
6
7
  readonly modelValue?: DateTimeRange | null;
7
8
  readonly defaultValue?: DateTimeRange | null;
@@ -19,11 +20,12 @@ export interface DateTimeRangePickerRootProps extends PickerPartProps, PickerPos
19
20
  }
20
21
  export declare const DateTimeRangePickerRoot: import("./picker.js").PickerRootComponent<"date-time-range">;
21
22
  export type DateTimeRangePickerRootSlotProps = PickerRootSlotProps<DateTimeRange | null>;
23
+ export type DateTimeRangePickerContentSlotProps = PickerContentSlotProps<DateTimeRange | null>;
22
24
  export type DateTimeRangePickerValueChangeHandler = NonNullable<InstanceType<typeof DateTimeRangePickerRoot>['$props']['onUpdate:modelValue']>;
23
25
  export type DateTimeRangePickerOpenChangeHandler = NonNullable<InstanceType<typeof DateTimeRangePickerRoot>['$props']['onUpdate:open']>;
24
26
  export type DateTimeRangePickerHighlightedValueChangeHandler = NonNullable<InstanceType<typeof DateTimeRangePickerRoot>['$props']['onUpdate:highlightedValue']>;
25
- export declare const DateTimeRangePickerTrigger: import("./picker.js").PickerRootPartComponent<"date-time-range">;
26
- export declare const DateTimeRangePickerAnchor: import("./picker.js").PickerRootPartComponent<"date-time-range">;
27
+ export declare const DateTimeRangePickerTrigger: PickerRootPartComponent<'date-time-range'>;
28
+ export declare const DateTimeRangePickerAnchor: PickerRootPartComponent<'date-time-range'>;
27
29
  export declare const DateTimeRangePickerPortal: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
28
30
  to: {
29
31
  type: import("vue").PropType<string | HTMLElement>;
@@ -55,8 +57,8 @@ export declare const DateTimeRangePickerPortal: import("vue").DefineComponent<im
55
57
  disabled: boolean;
56
58
  defer: boolean;
57
59
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
58
- export declare const DateTimeRangePickerContent: import("./picker.js").PickerRootPartComponent<"date-time-range">;
59
- export declare const DateTimeRangePickerGrid: import("./picker.js").PickerRootPartComponent<"date-time-range">;
60
+ export declare const DateTimeRangePickerContent: PickerContentPartComponent<'date-time-range'>;
61
+ export declare const DateTimeRangePickerGrid: PickerRootPartComponent<'date-time-range'>;
60
62
  export declare const DateTimeRangePickerCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
61
63
  value: {
62
64
  type: import("vue").PropType<DateValue>;
@@ -361,13 +363,13 @@ export declare const DateTimeRangePickerEndTimeInput: import("vue").DefineCompon
361
363
  as: import("../primitive.js").PrimitiveAs;
362
364
  asChild: boolean;
363
365
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
364
- export declare const DateTimeRangePickerPreviousWeek: import("./picker.js").PickerRootPartComponent<"date-time-range">;
365
- export declare const DateTimeRangePickerNextWeek: import("./picker.js").PickerRootPartComponent<"date-time-range">;
366
- export declare const DateTimeRangePickerPreviousMonth: import("./picker.js").PickerRootPartComponent<"date-time-range">;
367
- export declare const DateTimeRangePickerNextMonth: import("./picker.js").PickerRootPartComponent<"date-time-range">;
368
- export declare const DateTimeRangePickerPreviousYear: import("./picker.js").PickerRootPartComponent<"date-time-range">;
369
- export declare const DateTimeRangePickerNextYear: import("./picker.js").PickerRootPartComponent<"date-time-range">;
370
- export declare const DateTimeRangePickerWeekViewTrigger: import("./picker.js").PickerRootPartComponent<"date-time-range">;
371
- export declare const DateTimeRangePickerMonthViewTrigger: import("./picker.js").PickerRootPartComponent<"date-time-range">;
372
- export declare const DateTimeRangePickerYearViewTrigger: import("./picker.js").PickerRootPartComponent<"date-time-range">;
366
+ export declare const DateTimeRangePickerPreviousWeek: PickerRootPartComponent<'date-time-range'>;
367
+ export declare const DateTimeRangePickerNextWeek: PickerRootPartComponent<'date-time-range'>;
368
+ export declare const DateTimeRangePickerPreviousMonth: PickerRootPartComponent<'date-time-range'>;
369
+ export declare const DateTimeRangePickerNextMonth: PickerRootPartComponent<'date-time-range'>;
370
+ export declare const DateTimeRangePickerPreviousYear: PickerRootPartComponent<'date-time-range'>;
371
+ export declare const DateTimeRangePickerNextYear: PickerRootPartComponent<'date-time-range'>;
372
+ export declare const DateTimeRangePickerWeekViewTrigger: PickerRootPartComponent<'date-time-range'>;
373
+ export declare const DateTimeRangePickerMonthViewTrigger: PickerRootPartComponent<'date-time-range'>;
374
+ export declare const DateTimeRangePickerYearViewTrigger: PickerRootPartComponent<'date-time-range'>;
373
375
  export type { DateTimeRange, DateValue, PickerCellSlotProps as DateTimeRangePickerCellSlotProps, PickerMonthCellSlotProps as DateTimeRangePickerMonthCellSlotProps, PickerPartProps as DateTimeRangePickerPartProps, PickerPortalProps as DateTimeRangePickerPortalProps };
@@ -1,2 +1,2 @@
1
- import{PickerAnchor,PickerCell,PickerContent,PickerGrid,PickerMonthCell,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerViewTrigger,specializePickerRootPart,createPickerRoot}from'./picker.js';import{dateTimeRangePickerCapability}from'./capabilities/date-time-range-picker.js';export const DateTimeRangePickerRoot=createPickerRoot(dateTimeRangePickerCapability,'SectileDateTimeRangePickerRoot');export const DateTimeRangePickerTrigger=specializePickerRootPart('date-time-range',PickerTrigger);export const DateTimeRangePickerAnchor=specializePickerRootPart('date-time-range',PickerAnchor);export const DateTimeRangePickerPortal=PickerPortal;export const DateTimeRangePickerContent=/* @__PURE__ */specializePickerRootPart('date-time-range',PickerContent);export const DateTimeRangePickerGrid=specializePickerRootPart('date-time-range',PickerGrid);export const DateTimeRangePickerCell=PickerCell;export const DateTimeRangePickerMonthCell=PickerMonthCell;export const DateTimeRangePickerStartDateTimeInput=createPickerInput('start-date-time-input','SectileDateTimeRangePickerStartDateTimeInput');export const DateTimeRangePickerEndDateTimeInput=createPickerInput('end-date-time-input','SectileDateTimeRangePickerEndDateTimeInput');export const DateTimeRangePickerStartDateInput=createPickerInput('start-date-input','SectileDateTimeRangePickerStartDateInput');export const DateTimeRangePickerEndDateInput=createPickerInput('end-date-input','SectileDateTimeRangePickerEndDateInput');export const DateTimeRangePickerStartTimeInput=createPickerInput('start-time-input','SectileDateTimeRangePickerStartTimeInput');export const DateTimeRangePickerEndTimeInput=createPickerInput('end-time-input','SectileDateTimeRangePickerEndTimeInput');export const DateTimeRangePickerPreviousWeek=specializePickerRootPart('date-time-range',createPickerMove('week',-1,'SectileDateTimeRangePickerPreviousWeek'));export const DateTimeRangePickerNextWeek=specializePickerRootPart('date-time-range',createPickerMove('week',1,'SectileDateTimeRangePickerNextWeek'));export const DateTimeRangePickerPreviousMonth=specializePickerRootPart('date-time-range',createPickerMove('month',-1,'SectileDateTimeRangePickerPreviousMonth'));export const DateTimeRangePickerNextMonth=specializePickerRootPart('date-time-range',createPickerMove('month',1,'SectileDateTimeRangePickerNextMonth'));export const DateTimeRangePickerPreviousYear=specializePickerRootPart('date-time-range',createPickerMove('year',-1,'SectileDateTimeRangePickerPreviousYear'));export const DateTimeRangePickerNextYear=specializePickerRootPart('date-time-range',createPickerMove('year',1,'SectileDateTimeRangePickerNextYear'));export const DateTimeRangePickerWeekViewTrigger=specializePickerRootPart('date-time-range',createPickerViewTrigger('week','SectileDateTimeRangePickerWeekViewTrigger'));export const DateTimeRangePickerMonthViewTrigger=specializePickerRootPart('date-time-range',createPickerViewTrigger('month','SectileDateTimeRangePickerMonthViewTrigger'));export const DateTimeRangePickerYearViewTrigger=specializePickerRootPart('date-time-range',createPickerViewTrigger('year','SectileDateTimeRangePickerYearViewTrigger'));
1
+ import{PickerAnchor,PickerCell,PickerContent,PickerGrid,PickerMonthCell,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerViewTrigger,createPickerRoot,dateTimeSubmissionLayout}from'./picker.js';import{dateTimeRangePickerCapability}from'./capabilities/date-time-range-picker.js';export const DateTimeRangePickerRoot=/* @__PURE__ */createPickerRoot(dateTimeRangePickerCapability,'SectileDateTimeRangePickerRoot',{formLayout:dateTimeSubmissionLayout});export const DateTimeRangePickerTrigger=PickerTrigger;export const DateTimeRangePickerAnchor=PickerAnchor;export const DateTimeRangePickerPortal=PickerPortal;export const DateTimeRangePickerContent=PickerContent;export const DateTimeRangePickerGrid=PickerGrid;export const DateTimeRangePickerCell=PickerCell;export const DateTimeRangePickerMonthCell=PickerMonthCell;export const DateTimeRangePickerStartDateTimeInput=/* @__PURE__ */createPickerInput('start-date-time-input','SectileDateTimeRangePickerStartDateTimeInput');export const DateTimeRangePickerEndDateTimeInput=/* @__PURE__ */createPickerInput('end-date-time-input','SectileDateTimeRangePickerEndDateTimeInput');export const DateTimeRangePickerStartDateInput=/* @__PURE__ */createPickerInput('start-date-input','SectileDateTimeRangePickerStartDateInput');export const DateTimeRangePickerEndDateInput=/* @__PURE__ */createPickerInput('end-date-input','SectileDateTimeRangePickerEndDateInput');export const DateTimeRangePickerStartTimeInput=/* @__PURE__ */createPickerInput('start-time-input','SectileDateTimeRangePickerStartTimeInput');export const DateTimeRangePickerEndTimeInput=/* @__PURE__ */createPickerInput('end-time-input','SectileDateTimeRangePickerEndTimeInput');export const DateTimeRangePickerPreviousWeek=/* @__PURE__ */createPickerMove('week',-1,'SectileDateTimeRangePickerPreviousWeek');export const DateTimeRangePickerNextWeek=/* @__PURE__ */createPickerMove('week',1,'SectileDateTimeRangePickerNextWeek');export const DateTimeRangePickerPreviousMonth=/* @__PURE__ */createPickerMove('month',-1,'SectileDateTimeRangePickerPreviousMonth');export const DateTimeRangePickerNextMonth=/* @__PURE__ */createPickerMove('month',1,'SectileDateTimeRangePickerNextMonth');export const DateTimeRangePickerPreviousYear=/* @__PURE__ */createPickerMove('year',-1,'SectileDateTimeRangePickerPreviousYear');export const DateTimeRangePickerNextYear=/* @__PURE__ */createPickerMove('year',1,'SectileDateTimeRangePickerNextYear');export const DateTimeRangePickerWeekViewTrigger=/* @__PURE__ */createPickerViewTrigger('week','SectileDateTimeRangePickerWeekViewTrigger');export const DateTimeRangePickerMonthViewTrigger=/* @__PURE__ */createPickerViewTrigger('month','SectileDateTimeRangePickerMonthViewTrigger');export const DateTimeRangePickerYearViewTrigger=/* @__PURE__ */createPickerViewTrigger('year','SectileDateTimeRangePickerYearViewTrigger');
2
2
  //# sourceMappingURL=date-time-range-picker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-time-range-picker.js","names":["PickerAnchor","PickerCell","PickerContent","PickerGrid","PickerMonthCell","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerViewTrigger","specializePickerRootPart","createPickerRoot","dateTimeRangePickerCapability","DateTimeRangePickerRoot","DateTimeRangePickerTrigger","DateTimeRangePickerAnchor","DateTimeRangePickerPortal","DateTimeRangePickerContent","DateTimeRangePickerGrid","DateTimeRangePickerCell","DateTimeRangePickerMonthCell","DateTimeRangePickerStartDateTimeInput","DateTimeRangePickerEndDateTimeInput","DateTimeRangePickerStartDateInput","DateTimeRangePickerEndDateInput","DateTimeRangePickerStartTimeInput","DateTimeRangePickerEndTimeInput","DateTimeRangePickerPreviousWeek","DateTimeRangePickerNextWeek","DateTimeRangePickerPreviousMonth","DateTimeRangePickerNextMonth","DateTimeRangePickerPreviousYear","DateTimeRangePickerNextYear","DateTimeRangePickerWeekViewTrigger","DateTimeRangePickerMonthViewTrigger","DateTimeRangePickerYearViewTrigger"],"sources":["../../src/temporal/date-time-range-picker.ts"],"mappings":"OAIEA,aAAcC,WAAYC,cAAeC,WAAYC,gBAAiBC,aAAcC,cAAeC,kBAAmBC,iBAAkBC,wBAAyBC,yBACjKC,qBACK,qBACEC,kCAAqC,kDASvC,MAAMC,wBAA0BF,iBAAiBC,8BAA+B,yCAKhF,MAAME,2BAA6BJ,yBAAyB,kBAAmBJ,sBAC/E,MAAMS,0BAA4BL,yBAAyB,kBAAmBV,qBAC9E,MAAMgB,0BAA4BX,oBAClC,MAAMY,0CAA6CP,yBAAyB,kBAAmBR,sBAC/F,MAAMgB,wBAA0BR,yBAAyB,kBAAmBP,mBAC5E,MAAMgB,wBAA0BlB,kBAChC,MAAMmB,6BAA+BhB,uBACrC,MAAMiB,sCAAwCd,kBAAkB,wBAAyB,uDACzF,MAAMe,oCAAsCf,kBAAkB,sBAAuB,qDACrF,MAAMgB,kCAAoChB,kBAAkB,mBAAoB,mDAChF,MAAMiB,gCAAkCjB,kBAAkB,iBAAkB,iDAC5E,MAAMkB,kCAAoClB,kBAAkB,mBAAoB,mDAChF,MAAMmB,gCAAkCnB,kBAAkB,iBAAkB,iDAC5E,MAAMoB,gCAAkCjB,yBAAyB,kBAAmBF,iBAAiB,QAAS,EAAG,kDACjH,MAAMoB,4BAA8BlB,yBAAyB,kBAAmBF,iBAAiB,OAAQ,EAAG,8CAC5G,MAAMqB,iCAAmCnB,yBAAyB,kBAAmBF,iBAAiB,SAAU,EAAG,mDACnH,MAAMsB,6BAA+BpB,yBAAyB,kBAAmBF,iBAAiB,QAAS,EAAG,+CAC9G,MAAMuB,gCAAkCrB,yBAAyB,kBAAmBF,iBAAiB,QAAS,EAAG,kDACjH,MAAMwB,4BAA8BtB,yBAAyB,kBAAmBF,iBAAiB,OAAQ,EAAG,8CAC5G,MAAMyB,mCAAqCvB,yBAAyB,kBAAmBD,wBAAwB,OAAQ,qDACvH,MAAMyB,oCAAsCxB,yBAAyB,kBAAmBD,wBAAwB,QAAS,sDACzH,MAAM0B,mCAAqCzB,yBAAyB,kBAAmBD,wBAAwB,OAAQ","ignoreList":[]}
1
+ {"version":3,"file":"date-time-range-picker.js","names":["PickerAnchor","PickerCell","PickerContent","PickerGrid","PickerMonthCell","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerViewTrigger","createPickerRoot","dateTimeSubmissionLayout","dateTimeRangePickerCapability","DateTimeRangePickerRoot","formLayout","DateTimeRangePickerTrigger","DateTimeRangePickerAnchor","DateTimeRangePickerPortal","DateTimeRangePickerContent","DateTimeRangePickerGrid","DateTimeRangePickerCell","DateTimeRangePickerMonthCell","DateTimeRangePickerStartDateTimeInput","DateTimeRangePickerEndDateTimeInput","DateTimeRangePickerStartDateInput","DateTimeRangePickerEndDateInput","DateTimeRangePickerStartTimeInput","DateTimeRangePickerEndTimeInput","DateTimeRangePickerPreviousWeek","DateTimeRangePickerNextWeek","DateTimeRangePickerPreviousMonth","DateTimeRangePickerNextMonth","DateTimeRangePickerPreviousYear","DateTimeRangePickerNextYear","DateTimeRangePickerWeekViewTrigger","DateTimeRangePickerMonthViewTrigger","DateTimeRangePickerYearViewTrigger"],"sources":["../../src/temporal/date-time-range-picker.ts"],"mappings":"OAIEA,aAAcC,WAAYC,cAAeC,WAAYC,gBAAiBC,aAAcC,cAAeC,kBAAmBC,iBAAkBC,wBACxIC,iBAAkBC,6BACb,qBACEC,kCAAqC,kDAUvC,MAAMC,uCAA0CH,iBAAiBE,8BAA+B,iCAAkC,CAAEE,WAAYH,kCAMhJ,MAAMI,2BAA6BT,qBACnC,MAAMU,0BAA4BhB,oBAClC,MAAMiB,0BAA4BZ,oBAClC,MAAMa,2BAA6BhB,qBACnC,MAAMiB,wBAA0BhB,kBAChC,MAAMiB,wBAA0BnB,kBAChC,MAAMoB,6BAA+BjB,uBACrC,MAAMkB,qDAAwDf,kBAAkB,wBAAyB,uDACzG,MAAMgB,mDAAsDhB,kBAAkB,sBAAuB,qDACrG,MAAMiB,iDAAoDjB,kBAAkB,mBAAoB,mDAChG,MAAMkB,+CAAkDlB,kBAAkB,iBAAkB,iDAC5F,MAAMmB,iDAAoDnB,kBAAkB,mBAAoB,mDAChG,MAAMoB,+CAAkDpB,kBAAkB,iBAAkB,iDAC5F,MAAMqB,+CAAkDpB,iBAAiB,QAAS,EAAG,iDACrF,MAAMqB,2CAA8CrB,iBAAiB,OAAQ,EAAG,6CAChF,MAAMsB,gDAAmDtB,iBAAiB,SAAU,EAAG,kDACvF,MAAMuB,4CAA+CvB,iBAAiB,QAAS,EAAG,8CAClF,MAAMwB,+CAAkDxB,iBAAiB,QAAS,EAAG,iDACrF,MAAMyB,2CAA8CzB,iBAAiB,OAAQ,EAAG,6CAChF,MAAM0B,kDAAqDzB,wBAAwB,OAAQ,oDAC3F,MAAM0B,mDAAsD1B,wBAAwB,QAAS,qDAC7F,MAAM2B,kDAAqD3B,wBAAwB,OAAQ","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { type ComputedRef } from 'vue';
2
+ import { type TimeFieldFormat, type TimeFieldPrecision } from '@sectile/temporal/time-field';
3
+ import { type DateTimeFieldFormat } from '@sectile/temporal/date-time-field';
4
+ import { type TemporalFormatter } from '../temporal-provider.js';
5
+ interface PrecisionProps {
6
+ readonly native?: boolean | undefined;
7
+ readonly precision?: TimeFieldPrecision | undefined;
8
+ }
9
+ /** One computed owns precision selection; each field supplies its format owner. */
10
+ export declare function useTemporalPrecisionPresentation<T, Format>(props: PrecisionProps, resolve: (formatter: TemporalFormatter | undefined, precision: TimeFieldPrecision) => Format, project: (format: Format) => T): ComputedRef<T | undefined>;
11
+ /** One locale/precision boundary shared by scalar and range presentations. */
12
+ export declare function useTimePresentation<T>(props: PrecisionProps, project: (format: TimeFieldFormat) => T): ComputedRef<T | undefined>;
13
+ /** Scalar and range date-time inputs share one combined-format selection. */
14
+ export declare function useDateTimePresentation<T>(props: PrecisionProps, project: (format: DateTimeFieldFormat) => T): ComputedRef<T | undefined>;
15
+ export {};
@@ -0,0 +1,2 @@
1
+ import{computed}from"vue";import{unwrap}from"@sectile/core/result";import{createTimeFieldFormat}from"@sectile/temporal/time-field";import{createDateFieldFormat}from"@sectile/temporal/date-field";import{createDateTimeFieldFormat}from"@sectile/temporal/date-time-field";import{useTemporalFormatter}from"../temporal-provider.js";function useTemporalPrecisionPresentation(props,resolve,project){const formatter=useTemporalFormatter();return computed(()=>{if(props.native===true||formatter.value===void 0&&props.precision===void 0)return void 0;return project(resolve(formatter.value,props.precision??"millisecond"))})}function useTimePresentation(props,project){return useTemporalPrecisionPresentation(props,(formatter,precision)=>formatter===void 0?createTimeFieldFormat({precision}):unwrap(formatter.timeFieldFormat(precision)),project)}function useDateTimePresentation(props,project){return useTemporalPrecisionPresentation(props,(formatter,precision)=>formatter===void 0?createDateTimeFieldFormat({date:createDateFieldFormat({order:["year","month","day"]}),time:createTimeFieldFormat({precision}),separator:"T"}):unwrap(formatter.dateTimeFieldFormat(precision)),project)}export{useDateTimePresentation,useTemporalPrecisionPresentation,useTimePresentation};
2
+ //# sourceMappingURL=time-presentation.js.map