@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.
- package/README.md +53 -14
- package/dist/accordion.js +1 -1
- package/dist/accordion.js.map +1 -1
- package/dist/carousel.d.ts +20 -0
- package/dist/carousel.js +1 -1
- package/dist/carousel.js.map +1 -1
- package/dist/cascade-list.js +1 -1
- package/dist/cascade-list.js.map +1 -1
- package/dist/cascade-select.js +1 -1
- package/dist/cascade-select.js.map +1 -1
- package/dist/chart.js +1 -1
- package/dist/chart.js.map +1 -1
- package/dist/checkbox-group.js +1 -1
- package/dist/checkbox-group.js.map +1 -1
- package/dist/checkbox-tree.d.ts +102 -0
- package/dist/checkbox-tree.js +2 -0
- package/dist/checkbox-tree.js.map +1 -0
- package/dist/checkbox.js +1 -1
- package/dist/checkbox.js.map +1 -1
- package/dist/color-picker.d.ts +24 -0
- package/dist/color-picker.js +1 -1
- package/dist/color-picker.js.map +1 -1
- package/dist/combobox.d.ts +47 -1
- package/dist/combobox.js +1 -1
- package/dist/combobox.js.map +1 -1
- package/dist/component-handle.d.ts +8 -0
- package/dist/component-handle.js +2 -0
- package/dist/component-handle.js.map +1 -0
- package/dist/context-menu.d.ts +1 -0
- package/dist/context-menu.js +2 -0
- package/dist/context-menu.js.map +1 -0
- package/dist/drag-drop.d.ts +23 -0
- package/dist/drag-drop.js +2 -0
- package/dist/drag-drop.js.map +1 -0
- package/dist/editable.d.ts +3 -0
- package/dist/editable.js +1 -1
- package/dist/editable.js.map +1 -1
- package/dist/form/context.d.ts +3 -0
- package/dist/form/context.js +1 -1
- package/dist/form/context.js.map +1 -1
- package/dist/form/contracts.d.ts +1 -0
- package/dist/form/control-inventory.d.ts +20 -0
- package/dist/form/control-inventory.js +1 -1
- package/dist/form/control-inventory.js.map +1 -1
- package/dist/form/control.d.ts +44 -1
- package/dist/form/control.js +1 -1
- package/dist/form/control.js.map +1 -1
- package/dist/form/field.d.ts +10 -0
- package/dist/form/field.js +1 -1
- package/dist/form/field.js.map +1 -1
- package/dist/form/file-input.d.ts +229 -0
- package/dist/form/file-input.js +2 -0
- package/dist/form/file-input.js.map +1 -0
- package/dist/form/file-upload/group.d.ts +28 -0
- package/dist/form/file-upload/group.js +2 -0
- package/dist/form/file-upload/group.js.map +1 -0
- package/dist/form/file-upload.d.ts +26 -0
- package/dist/form/file-upload.js +2 -0
- package/dist/form/file-upload.js.map +1 -0
- package/dist/form/root.js +1 -1
- package/dist/form/root.js.map +1 -1
- package/dist/form-boundary.d.ts +2 -0
- package/dist/form-boundary.js +2 -0
- package/dist/form-boundary.js.map +1 -0
- package/dist/fullscreen.d.ts +16 -0
- package/dist/fullscreen.js +2 -0
- package/dist/fullscreen.js.map +1 -0
- package/dist/host-provider.d.ts +99 -1
- package/dist/host-provider.js +1 -1
- package/dist/host-provider.js.map +1 -1
- package/dist/image.d.ts +24 -0
- package/dist/image.js +2 -0
- package/dist/image.js.map +1 -0
- package/dist/index.d.ts +6 -5
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/input/native-field.d.ts +25 -6
- package/dist/input/native-field.js +1 -1
- package/dist/input/native-field.js.map +1 -1
- package/dist/input/native-range-field.d.ts +95 -0
- package/dist/input/native-range-field.js +2 -0
- package/dist/input/native-range-field.js.map +1 -0
- package/dist/internal/cascade-choice.js +1 -1
- package/dist/internal/cascade-choice.js.map +1 -1
- package/dist/internal/connection-lifetime.d.ts +10 -0
- package/dist/internal/connection-lifetime.js +2 -0
- package/dist/internal/connection-lifetime.js.map +1 -0
- package/dist/internal/controlled-state.js +1 -1
- package/dist/internal/controlled-state.js.map +1 -1
- package/dist/internal/popup-presentation.d.ts +32 -0
- package/dist/internal/popup-presentation.js +2 -0
- package/dist/internal/popup-presentation.js.map +1 -0
- package/dist/internal/portal-move.d.ts +11 -0
- package/dist/internal/portal-move.js +2 -0
- package/dist/internal/portal-move.js.map +1 -0
- package/dist/internal/scheduled-task.js +1 -1
- package/dist/internal/scheduled-task.js.map +1 -1
- package/dist/internal/tabs-context.d.ts +11 -0
- package/dist/internal/tabs-context.js +1 -1
- package/dist/internal/tabs-context.js.map +1 -1
- package/dist/internal/tree-parts.d.ts +142 -0
- package/dist/internal/tree-parts.js +2 -0
- package/dist/internal/tree-parts.js.map +1 -0
- package/dist/listbox.d.ts +11 -0
- package/dist/listbox.js +1 -1
- package/dist/listbox.js.map +1 -1
- package/dist/media-gesture.d.ts +20 -0
- package/dist/media-gesture.js +2 -0
- package/dist/media-gesture.js.map +1 -0
- package/dist/menu.d.ts +239 -0
- package/dist/menu.js +1 -1
- package/dist/menu.js.map +1 -1
- package/dist/meter-group.js +1 -1
- package/dist/meter-group.js.map +1 -1
- package/dist/multi-thumb-slider.js +1 -1
- package/dist/multi-thumb-slider.js.map +1 -1
- package/dist/overlay/dialog.d.ts +1 -0
- package/dist/overlay/dialog.js.map +1 -1
- package/dist/overlay/drawer.d.ts +33 -4
- package/dist/overlay/drawer.js +1 -1
- package/dist/overlay/drawer.js.map +1 -1
- package/dist/overlay/popover.d.ts +2 -1
- package/dist/overlay/popover.js.map +1 -1
- package/dist/overlay/popup.d.ts +46 -2
- package/dist/overlay/popup.js +1 -1
- package/dist/overlay/popup.js.map +1 -1
- package/dist/overlay/tooltip.d.ts +37 -3
- package/dist/overlay/tooltip.js +1 -1
- package/dist/overlay/tooltip.js.map +1 -1
- package/dist/pagination.js +1 -1
- package/dist/pagination.js.map +1 -1
- package/dist/pin-input.js +1 -1
- package/dist/pin-input.js.map +1 -1
- package/dist/presence/presence.d.ts +1 -1
- package/dist/presence/presence.js +1 -1
- package/dist/presence/presence.js.map +1 -1
- package/dist/primitive.d.ts +37 -3
- package/dist/primitive.js +1 -1
- package/dist/primitive.js.map +1 -1
- package/dist/quantity-field.js +1 -1
- package/dist/quantity-field.js.map +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/radio-group.js.map +1 -1
- package/dist/rating.js +1 -1
- package/dist/rating.js.map +1 -1
- package/dist/reorder.d.ts +156 -77
- package/dist/reorder.js +1 -1
- package/dist/reorder.js.map +1 -1
- package/dist/select.d.ts +21 -0
- package/dist/select.js +1 -1
- package/dist/select.js.map +1 -1
- package/dist/slider.js +1 -1
- package/dist/slider.js.map +1 -1
- package/dist/spin-button.d.ts +19 -0
- package/dist/spin-button.js +1 -1
- package/dist/spin-button.js.map +1 -1
- package/dist/stepper.js +1 -1
- package/dist/stepper.js.map +1 -1
- package/dist/switch.js +1 -1
- package/dist/switch.js.map +1 -1
- package/dist/tabs.d.ts +2 -0
- package/dist/tabs.js +1 -1
- package/dist/tabs.js.map +1 -1
- package/dist/tabular/components.d.ts +5 -0
- package/dist/tabular/components.js.map +1 -1
- package/dist/tabular/controller.d.ts +1 -0
- package/dist/tabular/controller.js +1 -1
- package/dist/tabular/controller.js.map +1 -1
- package/dist/tabular/data-grid.d.ts +4 -4
- package/dist/tabular/data-grid.js +1 -1
- package/dist/tabular/data-grid.js.map +1 -1
- package/dist/tabular/data-table.d.ts +4 -4
- package/dist/tabular/data-table.js +1 -1
- package/dist/tabular/data-table.js.map +1 -1
- package/dist/tabular/data-tree-grid.d.ts +4 -4
- package/dist/tabular/data-tree-grid.js +1 -1
- package/dist/tabular/data-tree-grid.js.map +1 -1
- package/dist/tabular/parts.d.ts +11 -1
- package/dist/tabular/parts.js +1 -1
- package/dist/tabular/parts.js.map +1 -1
- package/dist/tabular/source.js +1 -1
- package/dist/tabular/source.js.map +1 -1
- package/dist/tags-input.d.ts +12 -1
- package/dist/tags-input.js +1 -1
- package/dist/tags-input.js.map +1 -1
- package/dist/temporal/calendar.d.ts +27 -123
- package/dist/temporal/calendar.js +1 -1
- package/dist/temporal/calendar.js.map +1 -1
- package/dist/temporal/capabilities/date-picker.js +1 -1
- package/dist/temporal/capabilities/date-picker.js.map +1 -1
- package/dist/temporal/capabilities/date-time-picker.js +1 -1
- package/dist/temporal/capabilities/date-time-picker.js.map +1 -1
- package/dist/temporal/capabilities/date-time-range-picker.js +1 -1
- package/dist/temporal/capabilities/date-time-range-picker.js.map +1 -1
- package/dist/temporal/capability.d.ts +13 -1
- package/dist/temporal/capability.js.map +1 -1
- package/dist/temporal/date-field.d.ts +1 -1
- package/dist/temporal/date-field.js +1 -1
- package/dist/temporal/date-field.js.map +1 -1
- package/dist/temporal/date-picker.d.ts +16 -14
- package/dist/temporal/date-picker.js +1 -1
- package/dist/temporal/date-picker.js.map +1 -1
- package/dist/temporal/date-range-field.d.ts +21 -1
- package/dist/temporal/date-range-field.js +1 -1
- package/dist/temporal/date-range-field.js.map +1 -1
- package/dist/temporal/date-range-picker.d.ts +16 -14
- package/dist/temporal/date-range-picker.js +1 -1
- package/dist/temporal/date-range-picker.js.map +1 -1
- package/dist/temporal/date-time-field.d.ts +4 -1
- package/dist/temporal/date-time-field.js +1 -1
- package/dist/temporal/date-time-field.js.map +1 -1
- package/dist/temporal/date-time-picker.d.ts +16 -14
- package/dist/temporal/date-time-picker.js +1 -1
- package/dist/temporal/date-time-picker.js.map +1 -1
- package/dist/temporal/date-time-range-field.d.ts +158 -0
- package/dist/temporal/date-time-range-field.js +2 -0
- package/dist/temporal/date-time-range-field.js.map +1 -0
- package/dist/temporal/date-time-range-picker.d.ts +16 -14
- package/dist/temporal/date-time-range-picker.js +1 -1
- package/dist/temporal/date-time-range-picker.js.map +1 -1
- package/dist/temporal/internal/time-presentation.d.ts +15 -0
- package/dist/temporal/internal/time-presentation.js +2 -0
- package/dist/temporal/internal/time-presentation.js.map +1 -0
- package/dist/temporal/month-picker.d.ts +9 -7
- package/dist/temporal/month-picker.js +1 -1
- package/dist/temporal/month-picker.js.map +1 -1
- package/dist/temporal/month-range-picker.d.ts +9 -7
- package/dist/temporal/month-range-picker.js +1 -1
- package/dist/temporal/month-range-picker.js.map +1 -1
- package/dist/temporal/picker.d.ts +24 -3
- package/dist/temporal/picker.js +1 -1
- package/dist/temporal/picker.js.map +1 -1
- package/dist/temporal/range-calendar.d.ts +125 -8
- package/dist/temporal/range-calendar.js +1 -1
- package/dist/temporal/range-calendar.js.map +1 -1
- package/dist/temporal/temporal-provider.d.ts +23 -0
- package/dist/temporal/temporal-provider.js +1 -1
- package/dist/temporal/temporal-provider.js.map +1 -1
- package/dist/temporal/time-field.d.ts +4 -1
- package/dist/temporal/time-field.js +1 -1
- package/dist/temporal/time-field.js.map +1 -1
- package/dist/temporal/time-picker.d.ts +112 -0
- package/dist/temporal/time-picker.js +2 -0
- package/dist/temporal/time-picker.js.map +1 -0
- package/dist/temporal/time-range-field.d.ts +33 -2
- package/dist/temporal/time-range-field.js +1 -1
- package/dist/temporal/time-range-field.js.map +1 -1
- package/dist/temporal/year-picker.d.ts +9 -7
- package/dist/temporal/year-picker.js +1 -1
- package/dist/temporal/year-picker.js.map +1 -1
- package/dist/temporal/year-range-picker.d.ts +9 -7
- package/dist/temporal/year-range-picker.js +1 -1
- package/dist/temporal/year-range-picker.js.map +1 -1
- package/dist/text.d.ts +43 -1
- package/dist/text.js +1 -1
- package/dist/text.js.map +1 -1
- package/dist/timer.d.ts +16 -5
- package/dist/timer.js +1 -1
- package/dist/timer.js.map +1 -1
- package/dist/toast.js +1 -1
- package/dist/toast.js.map +1 -1
- package/dist/toggle-group.js +1 -1
- package/dist/toggle-group.js.map +1 -1
- package/dist/toolbar.js +1 -1
- package/dist/toolbar.js.map +1 -1
- package/dist/transfer.d.ts +191 -0
- package/dist/transfer.js +2 -0
- package/dist/transfer.js.map +1 -0
- package/dist/tree-grid.d.ts +122 -0
- package/dist/tree-grid.js +1 -1
- package/dist/tree-grid.js.map +1 -1
- package/dist/tree-select.d.ts +186 -0
- package/dist/tree-select.js +2 -0
- package/dist/tree-select.js.map +1 -0
- package/dist/tree-view.js +1 -1
- package/dist/tree-view.js.map +1 -1
- package/dist/virtual/virtual-collection.d.ts +3 -0
- package/dist/virtual/virtual-collection.js +1 -1
- package/dist/virtual/virtual-collection.js.map +1 -1
- package/dist/virtual/virtual-core.d.ts +1 -0
- package/dist/virtual/virtual-core.js +1 -1
- package/dist/virtual/virtual-core.js.map +1 -1
- package/dist/virtual/virtual-grid.d.ts +12 -2
- package/dist/virtual/virtual-grid.js +1 -1
- package/dist/virtual/virtual-grid.js.map +1 -1
- package/dist/virtual/virtual-list.d.ts +12 -3
- package/dist/virtual/virtual-list.js +1 -1
- package/dist/virtual/virtual-list.js.map +1 -1
- package/dist/virtual/virtual-masonry.d.ts +12 -2
- package/dist/virtual/virtual-masonry.js +1 -1
- package/dist/virtual/virtual-masonry.js.map +1 -1
- package/dist/virtual/virtual-spatial.d.ts +12 -2
- package/dist/virtual/virtual-spatial.js +1 -1
- package/dist/virtual/virtual-spatial.js.map +1 -1
- package/dist/window-splitter.js +1 -1
- package/dist/window-splitter.js.map +1 -1
- package/package.json +86 -16
package/dist/tags-input.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{computed,defineComponent,h,inject,mergeProps,nextTick,onBeforeUnmount,onMounted,provide,shallowRef,watch}from"vue";import{createTagsInput}from"@sectile/dom/tags-input";import{Primitive}from"./primitive.js";import{visuallyHiddenInputStyle}from"./input/native-input.js";import{provideFormControlOwner}from"./form/control.js";import{hiddenValueSubmissionCapabilities,useCompositeFormControl}from"./form/control.js";import{useHostDirection}from"./host-provider.js";const rootKey=Symbol("SectileTagsInputRoot");const itemKey=Symbol("SectileTagsInputItem");const partProps={as:{type:[String,Object,Function],default:"span"},asChild:{type:Boolean,default:false}};const TagsInputRoot=defineComponent({name:"SectileTagsInputRoot",inheritAttrs:false,props:{modelValue:{type:Array,default:void 0},defaultValue:{type:Array,default:()=>[]},inputValue:{type:String,default:void 0},defaultInputValue:{type:String,default:""},disabled:{type:Boolean,default:false},readonly:{type:Boolean,default:false},label:{type:String,default:"Tags"},name:{type:String,default:void 0},form:{type:String,default:void 0},required:{type:Boolean,default:false},policies:{type:Object,default:void 0},as:{type:[String,Object,Function],default:"div"},asChild:{type:Boolean,default:false}},emits:{"update:modelValue":_value=>true,"update:inputValue":_value=>true},slots:Object,setup(props,{attrs,emit,slots}){const direction=useHostDirection();const root=shallowRef(null);const input=shallowRef(null);const submissionElements=[];const initialTags=Object.freeze([...props.defaultValue]);const initialInput=props.defaultInputValue;const participation=useCompositeFormControl({root,focusTarget:input,submissions:()=>state.value.value.map((_,index)=>({element:()=>submissionElements[index]??null,capabilities:hiddenValueSubmissionCapabilities})),reset:()=>{queueMicrotask(()=>{if(!valueControlled)localTags.value=initialTags;if(!inputControlled)localInput.value=initialInput;connect()})}});provideFormControlOwner();const connection=shallowRef();const localTags=shallowRef(props.modelValue??initialTags);const localInput=shallowRef(props.inputValue??props.defaultInputValue);const valueControlled=props.modelValue!==void 0;const inputControlled=props.inputValue!==void 0;let proposedInputValue=null;let inputComposing=false;let reconnectPending=false;let reconnectTimer=null;let mounted=false;const state=computed(()=>Object.freeze({value:props.modelValue??localTags.value,inputValue:props.inputValue??localInput.value,disabled:props.disabled,readonly:props.readonly}));const refresh=()=>{const snapshot=connection.value?.getSnapshot().state;if(snapshot===void 0)return;localTags.value=snapshot.tags;localInput.value=snapshot.draft;refreshDeletes()};const refreshDeletes=()=>{if(root.value===null||connection.value===void 0)return;root.value.querySelectorAll("[data-sectile-tags-delete]").forEach(element=>{connection.value?.setTagAttributes(element,Number(element.dataset["sectileTagsDelete"]))})};const syncControlledValues=()=>{if(connection.value===void 0)return;const result=connection.value.syncControlledValues({...valueControlled?{value:props.modelValue}:{},...inputControlled?{inputValue:props.inputValue}:{}});if(!result.ok)throw new TypeError(result.error.message);refresh()};const connect=()=>{connection.value?.disconnect();connection.value=void 0;if(!mounted||root.value===null||input.value===null)return;connection.value=createTagsInput({root:root.value,input:input.value,direction:direction.value,...props.policies===void 0?{}:{policies:props.policies},...valueControlled?{value:props.modelValue}:{defaultValue:localTags.value},...inputControlled?{inputValue:proposedInputValue??props.inputValue}:{defaultInputValue:localInput.value},disabled:props.disabled,readOnly:props.readonly,label:props.label,onValueChange:next=>{localTags.value=next;emit("update:modelValue",next)},onInputValueChange:next=>{localInput.value=next;emit("update:inputValue",next);if(!inputControlled)return;proposedInputValue=next;const proposal=next;void nextTick(()=>{if(connection.value===void 0||proposedInputValue!==proposal)return;proposedInputValue=null;syncControlledValues()})},onUpdate:refresh});refresh()};const requestConnect=()=>{if(inputComposing||reconnectPending){reconnectPending=true;return}connect()};const setInputComposing=composing=>{inputComposing=composing;if(composing||!reconnectPending||reconnectTimer!==null)return;reconnectTimer=setTimeout(()=>{reconnectTimer=null;if(!mounted||inputComposing)return;reconnectPending=false;connect()},0)};provide(rootKey,{state,label:computed(()=>props.label),registerRoot:element=>{root.value=element??null},registerInput:element=>{input.value=element??null},registerDelete:(element,index)=>connection.value?.setTagAttributes(element,index),setInputComposing,clear:()=>{for(let index=state.value.value.length-1;index>=0;index-=1)connection.value?.handleEvent({type:"remove",index})}});onMounted(()=>{mounted=true;connect()});onBeforeUnmount(()=>{mounted=false;if(reconnectTimer!==null)clearTimeout(reconnectTimer);reconnectTimer=null;reconnectPending=false;proposedInputValue=null;connection.value?.disconnect();connection.value=void 0});watch([()=>props.disabled,()=>props.readonly,()=>props.label,()=>props.policies,direction],requestConnect);watch([()=>props.modelValue,()=>props.inputValue],()=>{proposedInputValue=null;syncControlledValues()});return()=>{const visual=h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>{root.value=node instanceof HTMLElement?node:null},role:"group","aria-label":props.label,dir:direction.value,"data-scope":"tags-input","data-part":"root","data-disabled":props.disabled?"":void 0,"data-readonly":props.readonly?"":void 0},participation.controlProps.value),{default:()=>slots["default"]?.(state.value)});if(!participation.participating&&props.name===void 0&&props.form===void 0)return visual;return[visual,...state.value.value.map((tag,index)=>h("input",{ref:element=>{submissionElements[index]=element instanceof HTMLInputElement?element:null},type:"hidden",name:props.name,form:props.form,value:tag,disabled:props.disabled,style:visuallyHiddenInputStyle}))]}}});const TagsInputItem=defineComponent({name:"SectileTagsInputItem",inheritAttrs:false,props:{index:{type:Number,required:true},...partProps},slots:Object,setup(props,{attrs,slots}){const root=useRoot("TagsInputItem");const state=computed(()=>({index:props.index,value:root.state.value.value[props.index]??"",disabled:root.state.value.disabled,readonly:root.state.value.readonly}));provide(itemKey,{state});return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,"data-scope":"tags-input","data-part":"item","data-index":props.index}),{default:()=>slots["default"]?.(state.value)})}});const TagsInputItemText=defineComponent({name:"SectileTagsInputItemText",inheritAttrs:false,props:partProps,slots:Object,setup(props,{attrs,slots}){const item=useItem("TagsInputItemText");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,"data-scope":"tags-input","data-part":"item-text"}),{default:()=>slots["default"]?.(item.state.value)??item.state.value.value})}});const TagsInputItemDelete=defineComponent({name:"SectileTagsInputItemDelete",inheritAttrs:false,props:{as:{type:[String,Object,Function],default:"button"},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot("TagsInputItemDelete");const item=useItem("TagsInputItemDelete");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==="button"?"button":void 0,elementRef:node=>{if(node instanceof HTMLElement)root.registerDelete(node,item.state.value.index)},"data-sectile-tags-delete":item.state.value.index,"data-scope":"tags-input","data-part":"item-delete",disabled:item.state.value.disabled||item.state.value.readonly}),{default:()=>slots["default"]?.(item.state.value)})}});const TagsInputInput=defineComponent({name:"SectileTagsInputInput",inheritAttrs:false,props:{as:{type:[String,Object,Function],default:"input"},asChild:{type:Boolean,default:false}},setup(props,{attrs}){const root=useRoot("TagsInputInput");const renderServerValue=typeof window==="undefined";return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>root.registerInput(node instanceof HTMLInputElement?node:void 0),type:"text",...renderServerValue?{value:root.state.value.inputValue}:{},disabled:root.state.value.disabled,readonly:root.state.value.readonly,"aria-label":root.label.value,onCompositionstart:()=>root.setInputComposing(true),onCompositionend:()=>root.setInputComposing(false),"data-scope":"tags-input","data-part":"input"}))}});const TagsInputClear=defineComponent({name:"SectileTagsInputClear",inheritAttrs:false,props:{as:{type:[String,Object,Function],default:"button"},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot("TagsInputClear");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==="button"?"button":void 0,disabled:root.state.value.disabled||root.state.value.readonly||root.state.value.value.length===0,onClick:root.clear,"data-scope":"tags-input","data-part":"clear"}),{default:()=>slots["default"]?.(root.state.value)})}});function useRoot(part){const root=inject(rootKey);if(root===void 0)throw new TypeError(`${part} must be used inside TagsInputRoot.`);return root}function useItem(part){const item=inject(itemKey);if(item===void 0)throw new TypeError(`${part} must be used inside TagsInputItem.`);return item}export{TagsInputClear,TagsInputInput,TagsInputItem,TagsInputItemDelete,TagsInputItemText,TagsInputRoot};
|
|
1
|
+
import{computed,defineComponent,h,inject,mergeProps,nextTick,onBeforeUnmount,onMounted,provide,shallowRef,watch}from"vue";import{createTagsInput}from"@sectile/dom/tags-input";import{Primitive}from"./primitive.js";import{visuallyHiddenInputStyle}from"./input/native-input.js";import{provideFormControlOwner}from"./form/control.js";import{hiddenValueSubmissionCapabilities,useCompositeFormControl,useFormSubmissionProps,useFormControlFlags}from"./form/control.js";import{useHostDirection}from"./host-provider.js";const rootKey=Symbol("SectileTagsInputRoot");const itemKey=Symbol("SectileTagsInputItem");const partProps={as:{type:[String,Object,Function],default:"span"},asChild:{type:Boolean,default:false}};const TagsInputRoot=defineComponent({__sectileFormLabelMode:"labelledby",name:"SectileTagsInputRoot",inheritAttrs:false,props:{modelValue:{type:Array,default:void 0},defaultValue:{type:Array,default:()=>[]},inputValue:{type:String,default:void 0},defaultInputValue:{type:String,default:""},disabled:{type:Boolean,default:false},readonly:{type:Boolean,default:false},label:{type:String,default:"Tags"},name:{type:String,default:void 0},removeLabel:{type:Function,default:void 0},form:{type:String,default:void 0},required:{type:Boolean,default:false},policies:{type:Object,default:void 0},as:{type:[String,Object,Function],default:"div"},asChild:{type:Boolean,default:false}},emits:{"update:modelValue":_value=>true,"update:inputValue":_value=>true},slots:Object,setup(props,{attrs,emit,slots}){const flags=useFormControlFlags(props);const direction=useHostDirection();const root=shallowRef(null);const input=shallowRef(null);const submissionElements=[];const initialTags=Object.freeze([...props.defaultValue]);const initialInput=props.defaultInputValue;const submissionProps=useFormSubmissionProps({element:()=>null,capabilities:hiddenValueSubmissionCapabilities},props);const participation=useCompositeFormControl({root,focusTarget:input,submissions:()=>state.value.value.map((_,index)=>({element:()=>submissionElements[index]??null,capabilities:hiddenValueSubmissionCapabilities})),reset:()=>{queueMicrotask(()=>{if(!valueControlled)localTags.value=initialTags;if(!inputControlled)localInput.value=initialInput;connect()})}});provideFormControlOwner();const connection=shallowRef();const localTags=shallowRef(props.modelValue??initialTags);const localInput=shallowRef(props.inputValue??props.defaultInputValue);const valueControlled=props.modelValue!==void 0;const inputControlled=props.inputValue!==void 0;let proposedInputValue=null;let inputComposing=false;let reconnectPending=false;let reconnectTimer=null;let mounted=false;const state=computed(()=>Object.freeze({value:props.modelValue??localTags.value,inputValue:props.inputValue??localInput.value,disabled:flags.value.disabled,readonly:flags.value.readonly}));const refresh=()=>{const snapshot=connection.value?.getSnapshot().state;if(snapshot===void 0)return;localTags.value=snapshot.tags;localInput.value=snapshot.draft;refreshDeletes()};const refreshDeletes=()=>{if(root.value===null||connection.value===void 0)return;root.value.querySelectorAll("[data-sectile-tags-delete]").forEach(element=>{connection.value?.setTagAttributes(element,Number(element.dataset["sectileTagsDelete"]))})};const syncControlledValues=()=>{if(connection.value===void 0)return;const result=connection.value.syncControlledValues({...valueControlled?{value:props.modelValue}:{},...inputControlled?{inputValue:props.inputValue}:{}});if(!result.ok){if(result.error.code==="invalid-tags-input-current"){requestConnect();return}throw new TypeError(result.error.message)}refresh()};const connect=()=>{connection.value?.disconnect();connection.value=void 0;if(!mounted||root.value===null||input.value===null)return;connection.value=createTagsInput({root:root.value,input:input.value,direction:direction.value,removeLabel:(value,index)=>props.removeLabel?.(value,index),...props.policies===void 0?{}:{policies:props.policies},...valueControlled?{value:props.modelValue}:{defaultValue:localTags.value},...inputControlled?{inputValue:proposedInputValue??props.inputValue}:{defaultInputValue:localInput.value},disabled:flags.value.disabled,readOnly:flags.value.readonly,label:props.label,onValueChange:next=>{localTags.value=next;emit("update:modelValue",next)},onInputValueChange:next=>{localInput.value=next;emit("update:inputValue",next);if(!inputControlled)return;proposedInputValue=next;const proposal=next;void nextTick(()=>{if(connection.value===void 0||proposedInputValue!==proposal)return;proposedInputValue=null;syncControlledValues()})},onUpdate:refresh});refresh()};const requestConnect=()=>{if(inputComposing||reconnectPending){reconnectPending=true;return}connect()};const setInputComposing=composing=>{inputComposing=composing;if(composing||!reconnectPending||reconnectTimer!==null)return;reconnectTimer=setTimeout(()=>{reconnectTimer=null;if(!mounted||inputComposing)return;reconnectPending=false;connect()},0)};provide(rootKey,{state,label:computed(()=>props.label),removeLabel:computed(()=>props.removeLabel),registerRoot:element=>{root.value=element??null},registerInput:element=>{input.value=element??null},registerDelete:(element,index)=>connection.value?.setTagAttributes(element,index),setInputComposing,clear:()=>{for(let index=state.value.value.length-1;index>=0;index-=1)connection.value?.handleEvent({type:"remove",index})}});onMounted(()=>{mounted=true;connect()});onBeforeUnmount(()=>{mounted=false;if(reconnectTimer!==null)clearTimeout(reconnectTimer);reconnectTimer=null;reconnectPending=false;proposedInputValue=null;connection.value?.disconnect();connection.value=void 0});watch([()=>flags.value.disabled,()=>flags.value.readonly,()=>props.label,()=>props.policies,direction],requestConnect);watch(()=>props.removeLabel,refreshDeletes,{flush:"post"});watch([()=>props.modelValue,()=>props.inputValue],()=>{proposedInputValue=null;syncControlledValues()});return()=>{const visual=h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>{root.value=node instanceof HTMLElement?node:null},role:"group","aria-label":props.label,dir:direction.value,"data-scope":"tags-input","data-part":"root","data-disabled":flags.value.disabled?"":void 0,"data-readonly":flags.value.readonly?"":void 0},participation.controlProps.value),{default:()=>slots["default"]?.(state.value)});if(!participation.participating&&props.name===void 0&&props.form===void 0)return visual;return[visual,...state.value.value.map((tag,index)=>h("input",{ref:element=>{submissionElements[index]=element instanceof HTMLInputElement?element:null},type:"hidden",...submissionProps.value,value:tag,style:visuallyHiddenInputStyle}))]}}});const TagsInputItem=defineComponent({name:"SectileTagsInputItem",inheritAttrs:false,props:{index:{type:Number,required:true},...partProps},slots:Object,setup(props,{attrs,slots}){const root=useRoot("TagsInputItem");const state=computed(()=>({index:props.index,value:root.state.value.value[props.index]??"",disabled:root.state.value.disabled,readonly:root.state.value.readonly}));provide(itemKey,{state});return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,"data-scope":"tags-input","data-part":"item","data-index":props.index}),{default:()=>slots["default"]?.(state.value)})}});const TagsInputItemText=defineComponent({name:"SectileTagsInputItemText",inheritAttrs:false,props:partProps,slots:Object,setup(props,{attrs,slots}){const item=useItem("TagsInputItemText");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,"data-scope":"tags-input","data-part":"item-text"}),{default:()=>slots["default"]?.(item.state.value)??item.state.value.value})}});const TagsInputItemDelete=defineComponent({name:"SectileTagsInputItemDelete",inheritAttrs:false,props:{as:{type:[String,Object,Function],default:"button"},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot("TagsInputItemDelete");const item=useItem("TagsInputItemDelete");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==="button"?"button":void 0,elementRef:node=>{if(node instanceof HTMLElement)root.registerDelete(node,item.state.value.index)},"aria-label":root.removeLabel.value?.(item.state.value.value,item.state.value.index)??attrs["aria-label"],"data-sectile-tags-delete":item.state.value.index,"data-scope":"tags-input","data-part":"item-delete",disabled:item.state.value.disabled||item.state.value.readonly}),{default:()=>slots["default"]?.(item.state.value)})}});const TagsInputInput=defineComponent({name:"SectileTagsInputInput",inheritAttrs:false,props:{as:{type:[String,Object,Function],default:"input"},asChild:{type:Boolean,default:false}},setup(props,{attrs}){const root=useRoot("TagsInputInput");const renderServerValue=typeof window==="undefined";return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>root.registerInput(node instanceof HTMLInputElement?node:void 0),type:"text",...renderServerValue?{value:root.state.value.inputValue}:{},disabled:root.state.value.disabled,readonly:root.state.value.readonly,"aria-label":root.label.value,onCompositionstart:()=>root.setInputComposing(true),onCompositionend:()=>root.setInputComposing(false),"data-scope":"tags-input","data-part":"input"}))}});const TagsInputClear=defineComponent({name:"SectileTagsInputClear",inheritAttrs:false,props:{as:{type:[String,Object,Function],default:"button"},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot("TagsInputClear");return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==="button"?"button":void 0,disabled:root.state.value.disabled||root.state.value.readonly||root.state.value.value.length===0,onClick:root.clear,"data-scope":"tags-input","data-part":"clear"}),{default:()=>slots["default"]?.(root.state.value)})}});function useRoot(part){const root=inject(rootKey);if(root===void 0)throw new TypeError(`${part} must be used inside TagsInputRoot.`);return root}function useItem(part){const item=inject(itemKey);if(item===void 0)throw new TypeError(`${part} must be used inside TagsInputItem.`);return item}export{TagsInputClear,TagsInputInput,TagsInputItem,TagsInputItemDelete,TagsInputItemText,TagsInputRoot};
|
|
2
2
|
//# sourceMappingURL=tags-input.js.map
|
package/dist/tags-input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/tags-input.ts"],"mappings":"AAAA,OACE,SAAU,gBAAiB,EAAG,OAAQ,WAAY,SAAU,gBAAiB,UAAW,QACxF,WAAY,UACP,MACP,OAAS,
|
|
1
|
+
{"version":3,"sources":["../src/tags-input.ts"],"mappings":"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","names":[],"file":"tags-input.js"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { CalendarMonthValue, CalendarPolicies, CalendarViewMode } from '@sectile/dom/temporal/calendar';
|
|
2
2
|
import type { DateValue } from '@sectile/dom/temporal/calendar';
|
|
3
|
-
import {
|
|
4
|
-
import { type PickerCellSlotProps, type PickerMonthCellSlotProps, type PickerPartProps, type PickerRootSlotProps } from './picker.js';
|
|
3
|
+
import type { DefineSetupFnComponent, SlotsType, VNodeChild } from 'vue';
|
|
4
|
+
import { type PickerRootPartComponent, type PickerCellSlotProps, type PickerMonthCellSlotProps, type PickerPartProps, type PickerRootSlotProps } from './picker.js';
|
|
5
5
|
export interface CalendarRootProps {
|
|
6
6
|
readonly modelValue?: DateValue | null;
|
|
7
7
|
readonly defaultValue?: DateValue | null;
|
|
@@ -24,119 +24,23 @@ export interface CalendarCellProps extends PickerPartProps {
|
|
|
24
24
|
export interface CalendarMonthCellProps extends PickerPartProps {
|
|
25
25
|
readonly value: CalendarMonthValue;
|
|
26
26
|
}
|
|
27
|
-
export declare const CalendarRoot:
|
|
28
|
-
modelValue:
|
|
29
|
-
|
|
30
|
-
default: undefined;
|
|
31
|
-
};
|
|
32
|
-
defaultValue: {
|
|
33
|
-
type: PropType<DateValue | null>;
|
|
34
|
-
default: null;
|
|
35
|
-
};
|
|
36
|
-
highlightedValue: {
|
|
37
|
-
type: PropType<DateValue>;
|
|
38
|
-
default: undefined;
|
|
39
|
-
};
|
|
40
|
-
defaultHighlightedValue: {
|
|
41
|
-
type: PropType<DateValue>;
|
|
42
|
-
default: undefined;
|
|
43
|
-
};
|
|
44
|
-
defaultView: {
|
|
45
|
-
type: PropType<CalendarViewMode>;
|
|
46
|
-
default: string;
|
|
47
|
-
};
|
|
48
|
-
disabled: {
|
|
49
|
-
type: BooleanConstructor;
|
|
50
|
-
default: boolean;
|
|
51
|
-
};
|
|
52
|
-
readonly: {
|
|
53
|
-
type: BooleanConstructor;
|
|
54
|
-
default: boolean;
|
|
55
|
-
};
|
|
56
|
-
required: {
|
|
57
|
-
type: BooleanConstructor;
|
|
58
|
-
default: boolean;
|
|
59
|
-
};
|
|
60
|
-
label: {
|
|
61
|
-
type: StringConstructor;
|
|
62
|
-
default: undefined;
|
|
63
|
-
};
|
|
64
|
-
policies: {
|
|
65
|
-
type: PropType<CalendarPolicies>;
|
|
66
|
-
default: undefined;
|
|
67
|
-
};
|
|
68
|
-
}>, () => VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
69
|
-
'update:modelValue': (_value: DateValue | null) => boolean;
|
|
70
|
-
'update:highlightedValue': (_value: DateValue) => boolean;
|
|
71
|
-
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
72
|
-
modelValue: {
|
|
73
|
-
type: PropType<DateValue | null>;
|
|
74
|
-
default: undefined;
|
|
75
|
-
};
|
|
76
|
-
defaultValue: {
|
|
77
|
-
type: PropType<DateValue | null>;
|
|
78
|
-
default: null;
|
|
79
|
-
};
|
|
80
|
-
highlightedValue: {
|
|
81
|
-
type: PropType<DateValue>;
|
|
82
|
-
default: undefined;
|
|
83
|
-
};
|
|
84
|
-
defaultHighlightedValue: {
|
|
85
|
-
type: PropType<DateValue>;
|
|
86
|
-
default: undefined;
|
|
87
|
-
};
|
|
88
|
-
defaultView: {
|
|
89
|
-
type: PropType<CalendarViewMode>;
|
|
90
|
-
default: string;
|
|
91
|
-
};
|
|
92
|
-
disabled: {
|
|
93
|
-
type: BooleanConstructor;
|
|
94
|
-
default: boolean;
|
|
95
|
-
};
|
|
96
|
-
readonly: {
|
|
97
|
-
type: BooleanConstructor;
|
|
98
|
-
default: boolean;
|
|
99
|
-
};
|
|
100
|
-
required: {
|
|
101
|
-
type: BooleanConstructor;
|
|
102
|
-
default: boolean;
|
|
103
|
-
};
|
|
104
|
-
label: {
|
|
105
|
-
type: StringConstructor;
|
|
106
|
-
default: undefined;
|
|
107
|
-
};
|
|
108
|
-
policies: {
|
|
109
|
-
type: PropType<CalendarPolicies>;
|
|
110
|
-
default: undefined;
|
|
111
|
-
};
|
|
112
|
-
}>> & Readonly<{
|
|
113
|
-
"onUpdate:highlightedValue"?: (_value: DateValue) => any;
|
|
114
|
-
"onUpdate:modelValue"?: (_value: DateValue | null) => any;
|
|
115
|
-
}>, {
|
|
116
|
-
modelValue: DateValue | null;
|
|
117
|
-
defaultValue: DateValue | null;
|
|
118
|
-
highlightedValue: DateValue;
|
|
119
|
-
defaultHighlightedValue: DateValue;
|
|
120
|
-
defaultView: CalendarViewMode;
|
|
121
|
-
disabled: boolean;
|
|
122
|
-
readonly: boolean;
|
|
123
|
-
required: boolean;
|
|
124
|
-
label: string;
|
|
125
|
-
policies: CalendarPolicies;
|
|
27
|
+
export declare const CalendarRoot: DefineSetupFnComponent<CalendarRootProps, {
|
|
28
|
+
'update:modelValue': (value: DateValue | null) => boolean;
|
|
29
|
+
'update:highlightedValue': (value: DateValue) => boolean;
|
|
126
30
|
}, SlotsType<{
|
|
127
31
|
default: (props: CalendarRootSlotProps) => VNodeChild;
|
|
128
|
-
}
|
|
32
|
+
}>>;
|
|
129
33
|
export type CalendarValueChangeHandler = NonNullable<InstanceType<typeof CalendarRoot>['$props']['onUpdate:modelValue']>;
|
|
130
34
|
export type CalendarHighlightedValueChangeHandler = NonNullable<InstanceType<typeof CalendarRoot>['$props']['onUpdate:highlightedValue']>;
|
|
131
|
-
export declare const CalendarContent:
|
|
132
|
-
export declare const CalendarGrid:
|
|
35
|
+
export declare const CalendarContent: PickerRootPartComponent<'calendar'>;
|
|
36
|
+
export declare const CalendarGrid: PickerRootPartComponent<'calendar'>;
|
|
133
37
|
export declare const CalendarCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
134
38
|
value: {
|
|
135
|
-
type: PropType<DateValue>;
|
|
39
|
+
type: import("vue").PropType<DateValue>;
|
|
136
40
|
required: true;
|
|
137
41
|
};
|
|
138
42
|
as: {
|
|
139
|
-
type: PropType<import("../primitive.js").PrimitiveAs>;
|
|
43
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
140
44
|
default: string;
|
|
141
45
|
};
|
|
142
46
|
asChild: {
|
|
@@ -145,11 +49,11 @@ export declare const CalendarCell: import("vue").DefineComponent<import("vue").E
|
|
|
145
49
|
};
|
|
146
50
|
}>, () => VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
147
51
|
value: {
|
|
148
|
-
type: PropType<DateValue>;
|
|
52
|
+
type: import("vue").PropType<DateValue>;
|
|
149
53
|
required: true;
|
|
150
54
|
};
|
|
151
55
|
as: {
|
|
152
|
-
type: PropType<import("../primitive.js").PrimitiveAs>;
|
|
56
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
153
57
|
default: string;
|
|
154
58
|
};
|
|
155
59
|
asChild: {
|
|
@@ -164,11 +68,11 @@ export declare const CalendarCell: import("vue").DefineComponent<import("vue").E
|
|
|
164
68
|
}>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
165
69
|
export declare const CalendarMonthCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
166
70
|
value: {
|
|
167
|
-
type: PropType<CalendarMonthValue>;
|
|
71
|
+
type: import("vue").PropType<CalendarMonthValue>;
|
|
168
72
|
required: true;
|
|
169
73
|
};
|
|
170
74
|
as: {
|
|
171
|
-
type: PropType<import("../primitive.js").PrimitiveAs>;
|
|
75
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
172
76
|
default: string;
|
|
173
77
|
};
|
|
174
78
|
asChild: {
|
|
@@ -177,11 +81,11 @@ export declare const CalendarMonthCell: import("vue").DefineComponent<import("vu
|
|
|
177
81
|
};
|
|
178
82
|
}>, () => VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
179
83
|
value: {
|
|
180
|
-
type: PropType<CalendarMonthValue>;
|
|
84
|
+
type: import("vue").PropType<CalendarMonthValue>;
|
|
181
85
|
required: true;
|
|
182
86
|
};
|
|
183
87
|
as: {
|
|
184
|
-
type: PropType<import("../primitive.js").PrimitiveAs>;
|
|
88
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
185
89
|
default: string;
|
|
186
90
|
};
|
|
187
91
|
asChild: {
|
|
@@ -204,7 +108,7 @@ export declare const CalendarInput: import("vue").DefineComponent<import("vue").
|
|
|
204
108
|
default: undefined;
|
|
205
109
|
};
|
|
206
110
|
as: {
|
|
207
|
-
type: PropType<import("../primitive.js").PrimitiveAs>;
|
|
111
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
208
112
|
default: string;
|
|
209
113
|
};
|
|
210
114
|
asChild: {
|
|
@@ -221,7 +125,7 @@ export declare const CalendarInput: import("vue").DefineComponent<import("vue").
|
|
|
221
125
|
default: undefined;
|
|
222
126
|
};
|
|
223
127
|
as: {
|
|
224
|
-
type: PropType<import("../primitive.js").PrimitiveAs>;
|
|
128
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
225
129
|
default: string;
|
|
226
130
|
};
|
|
227
131
|
asChild: {
|
|
@@ -234,13 +138,13 @@ export declare const CalendarInput: import("vue").DefineComponent<import("vue").
|
|
|
234
138
|
as: import("../primitive.js").PrimitiveAs;
|
|
235
139
|
asChild: boolean;
|
|
236
140
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
237
|
-
export declare const CalendarPreviousWeek:
|
|
238
|
-
export declare const CalendarNextWeek:
|
|
239
|
-
export declare const CalendarPreviousMonth:
|
|
240
|
-
export declare const CalendarNextMonth:
|
|
241
|
-
export declare const CalendarPreviousYear:
|
|
242
|
-
export declare const CalendarNextYear:
|
|
243
|
-
export declare const CalendarWeekViewTrigger:
|
|
244
|
-
export declare const CalendarMonthViewTrigger:
|
|
245
|
-
export declare const CalendarYearViewTrigger:
|
|
141
|
+
export declare const CalendarPreviousWeek: PickerRootPartComponent<'calendar'>;
|
|
142
|
+
export declare const CalendarNextWeek: PickerRootPartComponent<'calendar'>;
|
|
143
|
+
export declare const CalendarPreviousMonth: PickerRootPartComponent<'calendar'>;
|
|
144
|
+
export declare const CalendarNextMonth: PickerRootPartComponent<'calendar'>;
|
|
145
|
+
export declare const CalendarPreviousYear: PickerRootPartComponent<'calendar'>;
|
|
146
|
+
export declare const CalendarNextYear: PickerRootPartComponent<'calendar'>;
|
|
147
|
+
export declare const CalendarWeekViewTrigger: PickerRootPartComponent<'calendar'>;
|
|
148
|
+
export declare const CalendarMonthViewTrigger: PickerRootPartComponent<'calendar'>;
|
|
149
|
+
export declare const CalendarYearViewTrigger: PickerRootPartComponent<'calendar'>;
|
|
246
150
|
export type { CalendarMonthValue, CalendarPolicies, CalendarViewMode, DateValue, PickerCellSlotProps as CalendarCellSlotProps, PickerMonthCellSlotProps as CalendarMonthCellSlotProps, PickerPartProps as CalendarPartProps, };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{PickerCell,PickerContent,PickerGrid,PickerMonthCell,createPickerInput,createPickerMove,createPickerRoot,createPickerViewTrigger}from'./picker.js';import{calendarCapability}from'./capabilities/calendar.js';export const CalendarRoot=/* @__PURE__ */createPickerRoot(calendarCapability,'SectileCalendarRoot',{scope:'calendar',defaultOpen:true,defaultView:'month',inline:true});export const CalendarContent=PickerContent;export const CalendarGrid=PickerGrid;export const CalendarCell=PickerCell;export const CalendarMonthCell=PickerMonthCell;export const CalendarInput=/* @__PURE__ */createPickerInput('input','SectileCalendarInput','hidden');export const CalendarPreviousWeek=/* @__PURE__ */createPickerMove('week',-1,'SectileCalendarPreviousWeek');export const CalendarNextWeek=/* @__PURE__ */createPickerMove('week',1,'SectileCalendarNextWeek');export const CalendarPreviousMonth=/* @__PURE__ */createPickerMove('month',-1,'SectileCalendarPreviousMonth');export const CalendarNextMonth=/* @__PURE__ */createPickerMove('month',1,'SectileCalendarNextMonth');export const CalendarPreviousYear=/* @__PURE__ */createPickerMove('year',-1,'SectileCalendarPreviousYear');export const CalendarNextYear=/* @__PURE__ */createPickerMove('year',1,'SectileCalendarNextYear');export const CalendarWeekViewTrigger=/* @__PURE__ */createPickerViewTrigger('week','SectileCalendarWeekViewTrigger');export const CalendarMonthViewTrigger=/* @__PURE__ */createPickerViewTrigger('month','SectileCalendarMonthViewTrigger');export const CalendarYearViewTrigger=/* @__PURE__ */createPickerViewTrigger('year','SectileCalendarYearViewTrigger');
|
|
2
2
|
//# sourceMappingURL=calendar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar.js","names":["
|
|
1
|
+
{"version":3,"file":"calendar.js","names":["PickerCell","PickerContent","PickerGrid","PickerMonthCell","createPickerInput","createPickerMove","createPickerRoot","createPickerViewTrigger","calendarCapability","CalendarRoot","scope","defaultOpen","defaultView","inline","CalendarContent","CalendarGrid","CalendarCell","CalendarMonthCell","CalendarInput","CalendarPreviousWeek","CalendarNextWeek","CalendarPreviousMonth","CalendarNextMonth","CalendarPreviousYear","CalendarNextYear","CalendarWeekViewTrigger","CalendarMonthViewTrigger","CalendarYearViewTrigger"],"sources":["../../src/temporal/calendar.ts"],"mappings":"OAQEA,WACAC,cACAC,WACAC,gBACAC,kBACAC,iBACAC,iBACAC,4BAMK,qBACEC,uBAA0B,oCA2B5B,MAAMC,4BAA+BH,iBAAiBE,mBAAoB,sBAAuB,CACtGE,MAAO,WACPC,YAAa,KACbC,YAAa,QACbC,OAAQ,cAOH,MAAMC,gBAAkBb,qBACxB,MAAMc,aAAeb,kBACrB,MAAMc,aAAehB,kBACrB,MAAMiB,kBAAoBd,uBAC1B,MAAMe,6BAAgCd,kBAAkB,QAAS,uBAAwB,iBACzF,MAAMe,oCAAuCd,iBAAiB,QAAS,EAAG,sCAC1E,MAAMe,gCAAmCf,iBAAiB,OAAQ,EAAG,kCACrE,MAAMgB,qCAAwChB,iBAAiB,SAAU,EAAG,uCAC5E,MAAMiB,iCAAoCjB,iBAAiB,QAAS,EAAG,mCACvE,MAAMkB,oCAAuClB,iBAAiB,QAAS,EAAG,sCAC1E,MAAMmB,gCAAmCnB,iBAAiB,OAAQ,EAAG,kCACrE,MAAMoB,uCAA0ClB,wBAAwB,OAAQ,yCAChF,MAAMmB,wCAA2CnB,wBAAwB,QAAS,0CAClF,MAAMoB,uCAA0CpB,wBAAwB,OAAQ","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createDatePicker}from"@sectile/dom/temporal/date-picker";import{formatDateValue}from"@sectile/dom/temporal/date-field";import{definePickerFamilyCapability}from"../capability.js";const datePickerCapability=definePickerFamilyCapability({kind:"date",connect:options=>createDatePicker(options),formatInput:(granularity,_part,value)=>formatPeriod(value,granularity)});function formatPeriod(value,granularity){return granularity==="year"?String(value.year):granularity==="month"?`${String(value.year).padStart(4,"0")}-${String(value.month).padStart(2,"0")}`:formatDateValue(value)}export{datePickerCapability};
|
|
1
|
+
import{createDatePicker}from"@sectile/dom/temporal/date-picker";import{formatDateValue,getDateFieldPlaceholder}from"@sectile/dom/temporal/date-field";import{formatDateFieldValue}from"@sectile/temporal/date-field";import{unwrap}from"@sectile/core/result";import{definePickerFamilyCapability}from"../capability.js";const datePickerCapability=definePickerFamilyCapability({kind:"date",connect:options=>createDatePicker(options),presentation:formatter=>{const format=formatter===void 0?void 0:unwrap(formatter.dateFieldFormat());return{options:{format},attributes:{input:{placeholder:getDateFieldPlaceholder(format),inputmode:"numeric"}},formatInput:(part,value)=>part==="input"&&format!==void 0?formatDateFieldValue(value,format):void 0}},formatInput:(granularity,_part,value)=>formatPeriod(value,granularity)});function formatPeriod(value,granularity){return granularity==="year"?String(value.year):granularity==="month"?`${String(value.year).padStart(4,"0")}-${String(value.month).padStart(2,"0")}`:formatDateValue(value)}export{datePickerCapability};
|
|
2
2
|
//# sourceMappingURL=date-picker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/temporal/capabilities/date-picker.ts"],"mappings":"AAAA,OAAS,qBAAwB,oCACjC,OAAS,
|
|
1
|
+
{"version":3,"sources":["../../../src/temporal/capabilities/date-picker.ts"],"mappings":"AAAA,OAAS,qBAAwB,oCACjC,OAAS,gBAAiB,4BAA+C,mCACzE,OAAS,yBAA4B,+BACrC,OAAS,WAAc,uBACvB,OAAS,iCAAsE,mBAExE,MAAM,qBAAuB,6BAA6B,CAC/D,KAAM,OACN,QAAU,SAAY,iBAAiB,OAAgB,EACvD,aAAc,WAAY,CACxB,MAAM,OAAS,YAAc,OAAY,OAAY,OAAO,UAAU,gBAAe,CAAE,EACvF,MAAO,CAAE,QAAS,CAAE,MAAM,EAAI,WAAY,CAAE,MAAO,CAAE,YAAa,wBAAwB,MAAM,EAAG,UAAW,SAAS,CAAE,EACvH,YAAa,CAAC,KAAM,QAAU,OAAS,SAAW,SAAW,OAAY,qBAAqB,MAAoB,MAAM,EAAI,MAAS,CACzI,EACA,YAAa,CAAC,YAAa,MAAO,QAAU,aAAa,MAAoB,WAAW,EACzF,EAED,SAAS,aAAa,MAAkB,YAAwC,CAC9E,OAAO,cAAgB,OACnB,OAAO,MAAM,IAAI,EACjB,cAAgB,QACd,GAAG,OAAO,MAAM,IAAI,EAAE,SAAS,EAAG,GAAG,CAAC,IAAI,OAAO,MAAM,KAAK,EAAE,SAAS,EAAG,GAAG,CAAC,GAC9E,gBAAgB,KAAK,CAC7B","names":[],"file":"date-picker.js"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createDateTimePicker}from"@sectile/dom/temporal/date-time-picker";import{formatDateValue}from"@sectile/dom/temporal/date-field";import{formatDateTimeValue}from"@sectile/dom/temporal/date-time-field";import{formatTimeValue}from"@sectile/dom/temporal/time-field";import{definePickerFamilyCapability}from"../capability.js";const dateTimePickerCapability=definePickerFamilyCapability({kind:"date-time",connect:options=>createDateTimePicker(options),formatInput:(_granularity,part,value)=>{const dateTime=value;return part==="time-input"?formatTimeValue(dateTime.time):part==="date-input"?formatDateValue(dateTime.date):formatDateTimeValue(dateTime)}});export{dateTimePickerCapability};
|
|
1
|
+
import{createDateTimePicker}from"@sectile/dom/temporal/date-time-picker";import{formatDateValue,getDateFieldPlaceholder}from"@sectile/dom/temporal/date-field";import{formatDateTimeValue,getDateTimeFieldPlaceholder}from"@sectile/dom/temporal/date-time-field";import{formatTimeValue,getTimeFieldPlaceholder}from"@sectile/dom/temporal/time-field";import{formatDateFieldValue}from"@sectile/temporal/date-field";import{formatTimeFieldValue}from"@sectile/temporal/time-field";import{formatDateTimeFieldValue}from"@sectile/temporal/date-time-field";import{unwrap}from"@sectile/core/result";import{createDateTimePickerState}from"@sectile/temporal/date-time-picker";import{definePickerFamilyCapability}from"../capability.js";const dateTimePickerCapability=definePickerFamilyCapability({kind:"date-time",connect:options=>createDateTimePicker(options),presentation:formatter=>{const format=formatter===void 0?void 0:unwrap(formatter.dateTimeFieldFormat("millisecond"));const dateFormat=format?.date,timeFormat=format?.time;return{options:{format,dateFormat,timeFormat},attributes:{"date-time-input":{placeholder:getDateTimeFieldPlaceholder(format),inputmode:"text"},"date-input":{placeholder:getDateFieldPlaceholder(dateFormat),inputmode:"numeric"},"time-input":{placeholder:getTimeFieldPlaceholder(timeFormat),inputmode:timeFormat?.dayPeriods===void 0?"numeric":"text"}},formatInput:(part,value)=>{const dateTime=value;return format===void 0?void 0:part==="time-input"?formatTimeFieldValue(dateTime.time,timeFormat):part==="date-input"?formatDateFieldValue(dateTime.date,dateFormat):formatDateTimeFieldValue(dateTime,format)}}},initialInputValues:(referenceDate,policies,formatter)=>{const time=policies?.defaultTime;const state=createDateTimePickerState({referenceDate,...time===void 0?{}:{time}});return Object.freeze({"time-input":formatter===void 0?formatTimeValue(state.time):formatTimeFieldValue(state.time,unwrap(formatter.dateTimeFieldFormat("millisecond")).time)})},formatInput:(_granularity,part,value)=>{const dateTime=value;return part==="time-input"?formatTimeValue(dateTime.time):part==="date-input"?formatDateValue(dateTime.date):formatDateTimeValue(dateTime)}});export{dateTimePickerCapability};
|
|
2
2
|
//# sourceMappingURL=date-time-picker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/temporal/capabilities/date-time-picker.ts"],"mappings":"AAAA,OAAS,yBAA4B,yCACrC,OAAS,
|
|
1
|
+
{"version":3,"sources":["../../../src/temporal/capabilities/date-time-picker.ts"],"mappings":"AAAA,OAAS,yBAA4B,yCACrC,OAAS,gBAAiB,4BAA+B,mCACzD,OAAS,oBAAqB,gCAAuD,wCACrF,OAAS,gBAAiB,4BAA+B,mCACzD,OAAS,yBAA4B,+BACrC,OAAS,yBAA4B,+BACrC,OAAS,6BAAgC,oCACzC,OAAS,WAAc,uBACvB,OAAS,8BAA8D,qCACvE,OAAS,iCAAoC,mBAEtC,MAAM,yBAA2B,6BAA6B,CACnE,KAAM,YACN,QAAU,SAAY,qBAAqB,OAAgB,EAC3D,aAAc,WAAY,CACxB,MAAM,OAAS,YAAc,OAAY,OAAY,OAAO,UAAU,oBAAoB,aAAa,CAAC,EACxG,MAAM,WAAa,QAAQ,KAAM,WAAa,QAAQ,KACtD,MAAO,CAAE,QAAS,CAAE,OAAQ,WAAY,UAAU,EAAI,WAAY,CAChE,kBAAmB,CAAE,YAAa,4BAA4B,MAAM,EAAG,UAAW,MAAM,EACxF,aAAc,CAAE,YAAa,wBAAwB,UAAU,EAAG,UAAW,SAAS,EACtF,aAAc,CAAE,YAAa,wBAAwB,UAAU,EAAG,UAAW,YAAY,aAAe,OAAY,UAAY,MAAM,GACrI,YAAa,CAAC,KAAM,QAAS,CAC9B,MAAM,SAAW,MACjB,OAAO,SAAW,OAAY,OAAY,OAAS,aAAe,qBAAqB,SAAS,KAAM,UAAU,EAC5G,OAAS,aAAe,qBAAqB,SAAS,KAAM,UAAU,EAAI,yBAAyB,SAAU,MAAM,CACzH,CAAC,CACH,EACA,mBAAoB,CAAC,cAAe,SAAU,YAAa,CACzD,MAAM,KAAQ,UAAiD,YAC/D,MAAM,MAAQ,0BAA0B,CAAE,cAAe,GAAI,OAAS,OAAY,CAAA,EAAK,CAAE,IAAI,CAAG,CAAE,EAClG,OAAO,OAAO,OAAO,CAAE,aAAc,YAAc,OAAY,gBAAgB,MAAM,IAAI,EAAI,qBAAqB,MAAM,KAAM,OAAO,UAAU,oBAAoB,aAAa,CAAC,EAAE,IAAI,CAAC,CAAE,CAC5L,EACA,YAAa,CAAC,aAAc,KAAM,QAAS,CACzC,MAAM,SAAW,MACjB,OAAO,OAAS,aACZ,gBAAgB,SAAS,IAAI,EAC7B,OAAS,aACP,gBAAgB,SAAS,IAAI,EAC7B,oBAAoB,QAAQ,CACpC,EACD","names":[],"file":"date-time-picker.js"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createDateTimeRangePicker}from"@sectile/dom/temporal/date-time-range-picker";import{formatDateValue}from"@sectile/dom/temporal/date-field";import{formatDateTimeValue}from"@sectile/dom/temporal/date-time-field";import{formatTimeValue}from"@sectile/dom/temporal/time-field";import{definePickerFamilyCapability}from"../capability.js";const dateTimeRangePickerCapability=definePickerFamilyCapability({kind:"date-time-range",connect:options=>createDateTimeRangePicker(options),formatInput:(_granularity,part,value)=>{const range=value;const endpoint=part.startsWith("start")?range.start:range.end;return part.endsWith("time-input")&&!part.includes("date-time")?formatTimeValue(endpoint.time):part.endsWith("date-input")?formatDateValue(endpoint.date):formatDateTimeValue(endpoint)}});export{dateTimeRangePickerCapability};
|
|
1
|
+
import{createDateTimeRangePicker}from"@sectile/dom/temporal/date-time-range-picker";import{formatDateValue,getDateFieldPlaceholder}from"@sectile/dom/temporal/date-field";import{formatDateTimeValue}from"@sectile/dom/temporal/date-time-field";import{formatTimeValue,getTimeFieldPlaceholder}from"@sectile/dom/temporal/time-field";import{formatDateFieldValue}from"@sectile/temporal/date-field";import{formatTimeFieldValue}from"@sectile/temporal/time-field";import{unwrap}from"@sectile/core/result";import{createDateTimeRangePickerState}from"@sectile/temporal/date-time-range-picker";import{definePickerFamilyCapability}from"../capability.js";const dateTimeRangePickerCapability=definePickerFamilyCapability({kind:"date-time-range",connect:options=>createDateTimeRangePicker(options),presentation:formatter=>{const dateFormat=formatter===void 0?void 0:unwrap(formatter.dateFieldFormat());const timeFormat=formatter===void 0?void 0:unwrap(formatter.timeFieldFormat("millisecond"));const date={placeholder:getDateFieldPlaceholder(dateFormat),inputmode:"numeric"};const time={placeholder:getTimeFieldPlaceholder(timeFormat),inputmode:timeFormat?.dayPeriods===void 0?"numeric":"text"};return{options:{dateFormat,timeFormat},attributes:{"start-date-input":date,"end-date-input":date,"start-time-input":time,"end-time-input":time},formatInput:(part,value)=>{const endpoint=part.startsWith("start")?value.start:value.end;return part==="start-time-input"||part==="end-time-input"?timeFormat===void 0?void 0:formatTimeFieldValue(endpoint.time,timeFormat):part==="start-date-input"||part==="end-date-input"?dateFormat===void 0?void 0:formatDateFieldValue(endpoint.date,dateFormat):void 0}}},initialInputValues:(referenceDate,_policies,formatter)=>{const state=createDateTimeRangePickerState({referenceDate});const format=formatter===void 0?void 0:unwrap(formatter.timeFieldFormat("millisecond"));return Object.freeze({"start-time-input":formatTimeFieldValue(state.startTime,format),"end-time-input":formatTimeFieldValue(state.endTime,format)})},formatInput:(_granularity,part,value)=>{const range=value;const endpoint=part.startsWith("start")?range.start:range.end;return part.endsWith("time-input")&&!part.includes("date-time")?formatTimeValue(endpoint.time):part.endsWith("date-input")?formatDateValue(endpoint.date):formatDateTimeValue(endpoint)}});export{dateTimeRangePickerCapability};
|
|
2
2
|
//# sourceMappingURL=date-time-range-picker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/temporal/capabilities/date-time-range-picker.ts"],"mappings":"AAAA,OAAS,8BAAiC,+CAC1C,OAAS,
|
|
1
|
+
{"version":3,"sources":["../../../src/temporal/capabilities/date-time-range-picker.ts"],"mappings":"AAAA,OAAS,8BAAiC,+CAC1C,OAAS,gBAAiB,4BAA+B,mCACzD,OAAS,wBAA+C,wCACxD,OAAS,gBAAiB,4BAA+B,mCACzD,OAAS,yBAA4B,+BACrC,OAAS,yBAA4B,+BACrC,OAAS,WAAc,uBACvB,OAAS,mCAAsC,2CAC/C,OAAS,iCAAoC,mBAEtC,MAAM,8BAAgC,6BAA6B,CACxE,KAAM,kBACN,QAAU,SAAY,0BAA0B,OAAgB,EAChE,aAAc,WAAY,CACxB,MAAM,WAAa,YAAc,OAAY,OAAY,OAAO,UAAU,gBAAe,CAAE,EAC3F,MAAM,WAAa,YAAc,OAAY,OAAY,OAAO,UAAU,gBAAgB,aAAa,CAAC,EACxG,MAAM,KAAO,CAAE,YAAa,wBAAwB,UAAU,EAAG,UAAW,SAAkB,EAC9F,MAAM,KAAO,CAAE,YAAa,wBAAwB,UAAU,EAAG,UAAW,YAAY,aAAe,OAAY,UAAqB,MAAe,EACvJ,MAAO,CAAE,QAAS,CAAE,WAAY,UAAU,EAAI,WAAY,CAAE,mBAAoB,KAAM,iBAAkB,KAAM,mBAAoB,KAAM,iBAAkB,IAAI,EAC5J,YAAa,CAAC,KAAM,QAAS,CAC3B,MAAM,SAAW,KAAK,WAAW,OAAO,EAAK,MAAwB,MAAS,MAAwB,IACtG,OAAO,OAAS,oBAAsB,OAAS,iBAAmB,aAAe,OAAY,OAAY,qBAAqB,SAAS,KAAM,UAAU,EACnJ,OAAS,oBAAsB,OAAS,iBAAmB,aAAe,OAAY,OAAY,qBAAqB,SAAS,KAAM,UAAU,EAAI,MAC1J,CAAC,CACL,EACA,mBAAoB,CAAC,cAAe,UAAW,YAAa,CAC1D,MAAM,MAAQ,+BAA+B,CAAE,aAAa,CAAE,EAC9D,MAAM,OAAS,YAAc,OAAY,OAAY,OAAO,UAAU,gBAAgB,aAAa,CAAC,EACpG,OAAO,OAAO,OAAO,CAAE,mBAAoB,qBAAqB,MAAM,UAAW,MAAM,EAAG,iBAAkB,qBAAqB,MAAM,QAAS,MAAM,CAAC,CAAE,CAC3J,EACA,YAAa,CAAC,aAAc,KAAM,QAAS,CACzC,MAAM,MAAQ,MACd,MAAM,SAAW,KAAK,WAAW,OAAO,EAAI,MAAM,MAAQ,MAAM,IAChE,OAAO,KAAK,SAAS,YAAY,GAAK,CAAC,KAAK,SAAS,WAAW,EAC5D,gBAAgB,SAAS,IAAI,EAC7B,KAAK,SAAS,YAAY,EACxB,gBAAgB,SAAS,IAAI,EAC7B,oBAAoB,QAAQ,CACpC,EACD","names":[],"file":"date-time-range-picker.js"}
|
|
@@ -1,8 +1,18 @@
|
|
|
1
|
+
import type { TemporalFormatter } from '@sectile/dom/temporal/format';
|
|
1
2
|
export type PickerCapabilityGranularity = 'day' | 'month' | 'year';
|
|
2
|
-
export interface
|
|
3
|
+
export interface PickerInputPresentation {
|
|
4
|
+
readonly options: Readonly<Record<string, unknown>>;
|
|
5
|
+
readonly attributes: Readonly<Record<string, Readonly<{
|
|
6
|
+
placeholder: string;
|
|
7
|
+
inputmode: 'text' | 'numeric';
|
|
8
|
+
}>>>;
|
|
9
|
+
formatInput(part: string, value: unknown): string | undefined;
|
|
10
|
+
}
|
|
11
|
+
export interface PickerCapabilityConnection extends Pick<import('@sectile/dom/temporal/calendar').CalendarConnection, 'getActive' | 'suspend' | 'resume'>, Partial<Pick<import('@sectile/dom/temporal/date-picker').DatePickerConnection, 'getLayerOrder' | 'subscribeLayerPresentation' | 'syncLayerParent'>> {
|
|
3
12
|
getSnapshot(): {
|
|
4
13
|
readonly state: unknown;
|
|
5
14
|
};
|
|
15
|
+
getFieldStates?(): unknown;
|
|
6
16
|
getMonth(): readonly (readonly DateValue[])[];
|
|
7
17
|
getWeek(): readonly DateValue[];
|
|
8
18
|
getYear(): readonly (readonly CalendarMonthValue[])[];
|
|
@@ -21,6 +31,8 @@ export interface PickerFamilyCapability<Kind extends string> {
|
|
|
21
31
|
readonly kind: Kind;
|
|
22
32
|
connect(options: Record<string, unknown>): PickerCapabilityConnection;
|
|
23
33
|
formatInput(granularity: PickerCapabilityGranularity, part: string, value: unknown): string;
|
|
34
|
+
presentation?(formatter: TemporalFormatter | undefined): PickerInputPresentation;
|
|
35
|
+
initialInputValues?(referenceDate: DateValue, policies: unknown, formatter?: TemporalFormatter): Readonly<Record<string, string>>;
|
|
24
36
|
}
|
|
25
37
|
export declare function definePickerFamilyCapability<Kind extends string>(capability: PickerFamilyCapability<Kind>): PickerFamilyCapability<Kind>;
|
|
26
38
|
import type { CalendarMonthValue } from '@sectile/dom/temporal/calendar';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/temporal/capability.ts"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/temporal/capability.ts"],"mappings":"AA+BM,SAAU,6BACd,WAAwC,CAExC,OAAO,OAAO,OAAO,CAAE,GAAG,UAAU,CAAE,CACxC","names":[],"file":"capability.js"}
|
|
@@ -10,5 +10,5 @@ export interface DateFieldProps {
|
|
|
10
10
|
readonly label?: string;
|
|
11
11
|
readonly native?: boolean;
|
|
12
12
|
}
|
|
13
|
-
export declare const DateField: import("vue").DefineComponent<import("../input/native-field.js").NativeFieldPublicProps<import("@sectile/
|
|
13
|
+
export declare const DateField: import("vue").DefineComponent<import("../input/native-field.js").NativeFieldPublicProps<import("@sectile/temporal/date-field").DateValue, import("@sectile/temporal/date-field").DateFieldPolicies>>;
|
|
14
14
|
export type DateFieldValueChangeHandler = (value: DateValue | null) => void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{}from
|
|
1
|
+
import{computed}from'vue';import{unwrap}from'@sectile/core/result';import{createDateFieldState,formatDateFieldValue,reformatDateFieldState}from'@sectile/temporal/date-field';import{createDateField,formatDateValue,getDateFieldPlaceholder}from'@sectile/dom/temporal/date-field';import{createNativeFieldComponent}from'../input/native-field.js';import{useTemporalFormatter}from'./temporal-provider.js';function rebase(value,inputState,previousFormat,format){return unwrap(reformatDateFieldState(createDateFieldState(value,inputState,previousFormat),format)).inputState}export const DateField=/* @__PURE__ */createNativeFieldComponent({name:'SectileDateField',scope:'date-field',inputMode:'numeric',nativeInputType:'date',placeholder:'YYYY-MM-DD',formatValue:formatDateValue,valueType:Object,create:createDateField,rebase:(value,inputState,previousFormat)=>rebase(value,inputState,previousFormat),usePresentation(props){const formatter=useTemporalFormatter();return computed(()=>{if(props.native===true||formatter.value===undefined)return undefined;const format=unwrap(formatter.value.dateFieldFormat());return{format,placeholder:getDateFieldPlaceholder(format),formatValue:value=>formatDateFieldValue(value,format),create:options=>createDateField({...options,format}),rebase:(value,inputState,previousFormat)=>rebase(value,inputState,previousFormat,format)}})}});
|
|
2
2
|
//# sourceMappingURL=date-field.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/temporal/date-field.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"date-field.js","names":["computed","unwrap","createDateFieldState","formatDateFieldValue","reformatDateFieldState","createDateField","formatDateValue","getDateFieldPlaceholder","createNativeFieldComponent","useTemporalFormatter","rebase","value","inputState","previousFormat","format","DateField","name","scope","inputMode","nativeInputType","placeholder","formatValue","valueType","Object","create","usePresentation","props","formatter","native","undefined","dateFieldFormat","options"],"sources":["../../src/temporal/date-field.ts"],"mappings":"OAASA,aAA+B,aAC/BC,WAAc,8BACdC,qBAAsBC,qBAAsBC,2BAAoD,sCAEvGC,gBACAC,gBACAC,4BAEK,0CACEC,+BAAgE,kCAChEC,yBAA4B,yBAgBrC,SAASC,OAAOC,MAAyBC,WAAwDC,eAA6CC,QAC5I,OAAOb,OAAOG,uBAAuBF,qBAAqBS,MAAOC,WAAYC,gBAAiBC,SAASF,UACzG,QAEO,MAAMG,yBAA4BP,2BAA0E,CACjHQ,KAAM,mBACNC,MAAO,aACPC,UAAW,UACXC,gBAAiB,OACjBC,YAAa,aACbC,YAAaf,gBACbgB,UAAWC,OACXC,OAAQnB,gBACRK,OAAQ,CAACC,MAAOC,WAAYC,iBAAmBH,OAAOC,MAAOC,WAAYC,gBACzE,eAAAY,CAAgBC,OACd,MAAMC,UAAYlB,uBAClB,OAAOT,SAA6F,KAClG,GAAI0B,MAAME,SAAW,MAAQD,UAAUhB,QAAUkB,UAAW,OAAOA,UACnE,MAAMf,OAASb,OAAO0B,UAAUhB,MAAMmB,mBACtC,MAAO,CAAEhB,OAAQM,YAAab,wBAAwBO,QAASO,YAAcV,OAAqBR,qBAAqBQ,MAAOG,QAC5HU,OAAQO,SAAW1B,gBAAgB,IAAK0B,QAASjB,SACjDJ,OAAQ,CAACC,MAAOC,WAAYC,iBAAmBH,OAAOC,MAAOC,WAAYC,eAAgBC,UAE/F","ignoreList":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { DatePickerOptions } from '@sectile/dom/temporal/date-picker';
|
|
2
2
|
import type { 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 DatePickerRootProps extends PickerPartProps, PickerPositionProps {
|
|
5
6
|
readonly modelValue?: DateValue | null;
|
|
6
7
|
readonly defaultValue?: DateValue | null;
|
|
@@ -18,11 +19,12 @@ export interface DatePickerRootProps extends PickerPartProps, PickerPositionProp
|
|
|
18
19
|
}
|
|
19
20
|
export declare const DatePickerRoot: import("./picker.js").PickerRootComponent<"date">;
|
|
20
21
|
export type DatePickerRootSlotProps = PickerRootSlotProps<DateValue | null>;
|
|
22
|
+
export type DatePickerContentSlotProps = PickerContentSlotProps<DateValue | null>;
|
|
21
23
|
export type DatePickerValueChangeHandler = NonNullable<InstanceType<typeof DatePickerRoot>['$props']['onUpdate:modelValue']>;
|
|
22
24
|
export type DatePickerOpenChangeHandler = NonNullable<InstanceType<typeof DatePickerRoot>['$props']['onUpdate:open']>;
|
|
23
25
|
export type DatePickerHighlightedValueChangeHandler = NonNullable<InstanceType<typeof DatePickerRoot>['$props']['onUpdate:highlightedValue']>;
|
|
24
|
-
export declare const DatePickerTrigger:
|
|
25
|
-
export declare const DatePickerAnchor:
|
|
26
|
+
export declare const DatePickerTrigger: PickerRootPartComponent<'date'>;
|
|
27
|
+
export declare const DatePickerAnchor: PickerRootPartComponent<'date'>;
|
|
26
28
|
export declare const DatePickerPortal: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
27
29
|
to: {
|
|
28
30
|
type: import("vue").PropType<string | HTMLElement>;
|
|
@@ -54,8 +56,8 @@ export declare const DatePickerPortal: import("vue").DefineComponent<import("vue
|
|
|
54
56
|
disabled: boolean;
|
|
55
57
|
defer: boolean;
|
|
56
58
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
57
|
-
export declare const DatePickerContent:
|
|
58
|
-
export declare const DatePickerGrid:
|
|
59
|
+
export declare const DatePickerContent: PickerContentPartComponent<'date'>;
|
|
60
|
+
export declare const DatePickerGrid: PickerRootPartComponent<'date'>;
|
|
59
61
|
export declare const DatePickerCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
60
62
|
value: {
|
|
61
63
|
type: import("vue").PropType<DateValue>;
|
|
@@ -160,13 +162,13 @@ export declare const DatePickerInput: import("vue").DefineComponent<import("vue"
|
|
|
160
162
|
as: import("../primitive.js").PrimitiveAs;
|
|
161
163
|
asChild: boolean;
|
|
162
164
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
163
|
-
export declare const DatePickerPreviousWeek:
|
|
164
|
-
export declare const DatePickerNextWeek:
|
|
165
|
-
export declare const DatePickerPreviousMonth:
|
|
166
|
-
export declare const DatePickerNextMonth:
|
|
167
|
-
export declare const DatePickerPreviousYear:
|
|
168
|
-
export declare const DatePickerNextYear:
|
|
169
|
-
export declare const DatePickerWeekViewTrigger:
|
|
170
|
-
export declare const DatePickerMonthViewTrigger:
|
|
171
|
-
export declare const DatePickerYearViewTrigger:
|
|
165
|
+
export declare const DatePickerPreviousWeek: PickerRootPartComponent<'date'>;
|
|
166
|
+
export declare const DatePickerNextWeek: PickerRootPartComponent<'date'>;
|
|
167
|
+
export declare const DatePickerPreviousMonth: PickerRootPartComponent<'date'>;
|
|
168
|
+
export declare const DatePickerNextMonth: PickerRootPartComponent<'date'>;
|
|
169
|
+
export declare const DatePickerPreviousYear: PickerRootPartComponent<'date'>;
|
|
170
|
+
export declare const DatePickerNextYear: PickerRootPartComponent<'date'>;
|
|
171
|
+
export declare const DatePickerWeekViewTrigger: PickerRootPartComponent<'date'>;
|
|
172
|
+
export declare const DatePickerMonthViewTrigger: PickerRootPartComponent<'date'>;
|
|
173
|
+
export declare const DatePickerYearViewTrigger: PickerRootPartComponent<'date'>;
|
|
172
174
|
export type { DateValue, PickerCellSlotProps as DatePickerCellSlotProps, PickerMonthCellSlotProps as DatePickerMonthCellSlotProps, PickerPartProps as DatePickerPartProps, PickerPortalProps as DatePickerPortalProps };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{PickerAnchor,PickerCell,PickerContent,PickerGrid,PickerMonthCell,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerViewTrigger,
|
|
1
|
+
import{PickerAnchor,PickerCell,PickerContent,PickerGrid,PickerMonthCell,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerViewTrigger,createPickerRoot}from'./picker.js';import{datePickerCapability}from'./capabilities/date-picker.js';export const DatePickerRoot=/* @__PURE__ */createPickerRoot(datePickerCapability,'SectileDatePickerRoot');export const DatePickerTrigger=PickerTrigger;export const DatePickerAnchor=PickerAnchor;export const DatePickerPortal=PickerPortal;export const DatePickerContent=PickerContent;export const DatePickerGrid=PickerGrid;export const DatePickerCell=PickerCell;export const DatePickerMonthCell=PickerMonthCell;export const DatePickerInput=/* @__PURE__ */createPickerInput('input','SectileDatePickerInput');export const DatePickerPreviousWeek=/* @__PURE__ */createPickerMove('week',-1,'SectileDatePickerPreviousWeek');export const DatePickerNextWeek=/* @__PURE__ */createPickerMove('week',1,'SectileDatePickerNextWeek');export const DatePickerPreviousMonth=/* @__PURE__ */createPickerMove('month',-1,'SectileDatePickerPreviousMonth');export const DatePickerNextMonth=/* @__PURE__ */createPickerMove('month',1,'SectileDatePickerNextMonth');export const DatePickerPreviousYear=/* @__PURE__ */createPickerMove('year',-1,'SectileDatePickerPreviousYear');export const DatePickerNextYear=/* @__PURE__ */createPickerMove('year',1,'SectileDatePickerNextYear');export const DatePickerWeekViewTrigger=/* @__PURE__ */createPickerViewTrigger('week','SectileDatePickerWeekViewTrigger');export const DatePickerMonthViewTrigger=/* @__PURE__ */createPickerViewTrigger('month','SectileDatePickerMonthViewTrigger');export const DatePickerYearViewTrigger=/* @__PURE__ */createPickerViewTrigger('year','SectileDatePickerYearViewTrigger');
|
|
2
2
|
//# sourceMappingURL=date-picker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-picker.js","names":["PickerAnchor","PickerCell","PickerContent","PickerGrid","PickerMonthCell","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerViewTrigger","
|
|
1
|
+
{"version":3,"file":"date-picker.js","names":["PickerAnchor","PickerCell","PickerContent","PickerGrid","PickerMonthCell","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerViewTrigger","createPickerRoot","datePickerCapability","DatePickerRoot","DatePickerTrigger","DatePickerAnchor","DatePickerPortal","DatePickerContent","DatePickerGrid","DatePickerCell","DatePickerMonthCell","DatePickerInput","DatePickerPreviousWeek","DatePickerNextWeek","DatePickerPreviousMonth","DatePickerNextMonth","DatePickerPreviousYear","DatePickerNextYear","DatePickerWeekViewTrigger","DatePickerMonthViewTrigger","DatePickerYearViewTrigger"],"sources":["../../src/temporal/date-picker.ts"],"mappings":"OAGEA,aAAcC,WAAYC,cAAeC,WAAYC,gBAAiBC,aAAcC,cAAeC,kBAAmBC,iBAAkBC,wBACxIC,qBACK,qBACEC,yBAA4B,uCAU9B,MAAMC,8BAAiCF,iBAAiBC,qBAAsB,gCAM9E,MAAME,kBAAoBP,qBAC1B,MAAMQ,iBAAmBd,oBACzB,MAAMe,iBAAmBV,oBACzB,MAAMW,kBAAoBd,qBAC1B,MAAMe,eAAiBd,kBACvB,MAAMe,eAAiBjB,kBACvB,MAAMkB,oBAAsBf,uBAC5B,MAAMgB,+BAAkCb,kBAAkB,QAAS,iCACnE,MAAMc,sCAAyCb,iBAAiB,QAAS,EAAG,wCAC5E,MAAMc,kCAAqCd,iBAAiB,OAAQ,EAAG,oCACvE,MAAMe,uCAA0Cf,iBAAiB,SAAU,EAAG,yCAC9E,MAAMgB,mCAAsChB,iBAAiB,QAAS,EAAG,qCACzE,MAAMiB,sCAAyCjB,iBAAiB,QAAS,EAAG,wCAC5E,MAAMkB,kCAAqClB,iBAAiB,OAAQ,EAAG,oCACvE,MAAMmB,yCAA4ClB,wBAAwB,OAAQ,2CAClF,MAAMmB,0CAA6CnB,wBAAwB,QAAS,4CACpF,MAAMoB,yCAA4CpB,wBAAwB,OAAQ","ignoreList":[]}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { type PropType, type SlotsType, type VNodeChild } from 'vue';
|
|
2
2
|
import { type DateRangeFieldPolicies } from '@sectile/dom/temporal/date-range-field';
|
|
3
3
|
import type { DateRange } from '@sectile/dom/temporal/date-field';
|
|
4
|
-
import {
|
|
4
|
+
import type { PrimitiveAs } from '../primitive.js';
|
|
5
5
|
export interface DateRangeFieldRootProps {
|
|
6
|
+
readonly name?: string | undefined;
|
|
7
|
+
readonly form?: string | undefined;
|
|
6
8
|
readonly modelValue?: DateRange | null;
|
|
7
9
|
readonly defaultValue?: DateRange | null;
|
|
8
10
|
readonly policies?: DateRangeFieldPolicies;
|
|
@@ -23,6 +25,14 @@ export interface DateRangeFieldRootSlotProps {
|
|
|
23
25
|
readonly: boolean;
|
|
24
26
|
}
|
|
25
27
|
export declare const DateRangeFieldRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
28
|
+
name: {
|
|
29
|
+
type: PropType<string | undefined>;
|
|
30
|
+
default: undefined;
|
|
31
|
+
};
|
|
32
|
+
form: {
|
|
33
|
+
type: PropType<string | undefined>;
|
|
34
|
+
default: undefined;
|
|
35
|
+
};
|
|
26
36
|
modelValue: {
|
|
27
37
|
type: PropType<DateRange | null>;
|
|
28
38
|
default: undefined;
|
|
@@ -66,6 +76,14 @@ export declare const DateRangeFieldRoot: import("vue").DefineComponent<import("v
|
|
|
66
76
|
}>, () => VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
67
77
|
'update:modelValue': (_value: DateRange | null) => boolean;
|
|
68
78
|
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
79
|
+
name: {
|
|
80
|
+
type: PropType<string | undefined>;
|
|
81
|
+
default: undefined;
|
|
82
|
+
};
|
|
83
|
+
form: {
|
|
84
|
+
type: PropType<string | undefined>;
|
|
85
|
+
default: undefined;
|
|
86
|
+
};
|
|
69
87
|
modelValue: {
|
|
70
88
|
type: PropType<DateRange | null>;
|
|
71
89
|
default: undefined;
|
|
@@ -109,6 +127,8 @@ export declare const DateRangeFieldRoot: import("vue").DefineComponent<import("v
|
|
|
109
127
|
}>> & Readonly<{
|
|
110
128
|
"onUpdate:modelValue"?: (_value: DateRange | null) => any;
|
|
111
129
|
}>, {
|
|
130
|
+
name: string | undefined;
|
|
131
|
+
form: string | undefined;
|
|
112
132
|
modelValue: DateRange | null;
|
|
113
133
|
defaultValue: DateRange | null;
|
|
114
134
|
policies: DateRangeFieldPolicies;
|