maz-ui 4.7.9 → 4.8.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/dist/assets/MazAnimatedText.DlMKT0fR.css +1 -0
- package/dist/assets/MazPopover.Dp8fLLDj.css +1 -0
- package/dist/assets/MazTicker.BsD2uKvQ.css +1 -0
- package/dist/assets/MazTimeline.CoxWcpur.css +1 -0
- package/dist/chunks/{MazAccordion.mCiUv32a.js → MazAccordion.NcTvORgS.js} +1 -1
- package/dist/chunks/{MazAnimatedText.BSZ8FNf-.js → MazAnimatedText.B24YNZf-.js} +1 -1
- package/dist/chunks/{MazAvatar.Cp1uXsKn.js → MazAvatar.S8hOD0Nq.js} +1 -1
- package/dist/chunks/{MazBadge.BBZJgHXm.js → MazBadge.DdOkKlwi.js} +1 -1
- package/dist/chunks/{MazBottomSheet.BP6imeoW.js → MazBottomSheet.B3870y7t.js} +1 -1
- package/dist/chunks/{MazBtn.Cc9C1v2l.js → MazBtn.B0qldW6w.js} +1 -1
- package/dist/chunks/{MazCard.DJPT3P2P.js → MazCard.D9u5Z5KQ.js} +1 -1
- package/dist/chunks/{MazCheckbox.BY7myUIA.js → MazCheckbox.Cbw92q22.js} +1 -1
- package/dist/chunks/{MazChecklist.BaTDIjTl.js → MazChecklist.DxSqp9en.js} +1 -1
- package/dist/chunks/{MazCircularProgressBar.rATx_hD9.js → MazCircularProgressBar.xp7gmdti.js} +1 -1
- package/dist/chunks/{MazDatePicker.BzwCqOIk.js → MazDatePicker.D9T4maoH.js} +1 -1
- package/dist/chunks/{MazDialog.ebPvRGc_.js → MazDialog.CYYhj4tn.js} +1 -1
- package/dist/chunks/{MazDialogConfirm.DMu0btsN.js → MazDialogConfirm.B0sa2xzr.js} +1 -1
- package/dist/chunks/{MazDrawer.C2-iPeIq.js → MazDrawer.DGy1Nv0r.js} +1 -1
- package/dist/chunks/{MazDropdown.B-LRzouG.js → MazDropdown.DR8gPCyq.js} +1 -1
- package/dist/chunks/{MazDropzone.CjhXLgw8.js → MazDropzone.B_py1QOV.js} +1 -1
- package/dist/chunks/{MazFullscreenLoader.BIVRcZJ8.js → MazFullscreenLoader.b-30GI6G.js} +1 -1
- package/dist/chunks/{MazGallery.8Q8YcKlI.js → MazGallery.CefHn7NG.js} +1 -1
- package/dist/chunks/{MazInput.BlvZ4aiU.js → MazInput.C2gyftm8.js} +1 -1
- package/dist/chunks/{MazInputNumber.BMhBDScY.js → MazInputNumber.DUt4Z4Aq.js} +1 -1
- package/dist/chunks/{MazInputPhoneNumber.CLivThtK.js → MazInputPhoneNumber.CBVaFR3i.js} +1 -1
- package/dist/chunks/{MazInputPrice.B7-Yqxc3.js → MazInputPrice.DjB448fY.js} +1 -1
- package/dist/chunks/{MazInputTags.B_s-NU_a.js → MazInputTags.CN8TKOdh.js} +1 -1
- package/dist/chunks/{MazLazyImg.-EMwandx.js → MazLazyImg.Cs9QQqQF.js} +1 -1
- package/dist/chunks/{MazLink.BsjurisK.js → MazLink.CK1WIkI5.js} +1 -1
- package/dist/chunks/{MazPagination.YkbtNSlz.js → MazPagination.BDM965bu.js} +1 -1
- package/dist/chunks/{MazPickerCalendarGrid.DrUHBH6-.js → MazPickerCalendarGrid.3taryD_b.js} +1 -1
- package/dist/chunks/{MazPopover.Co8BEopX.js → MazPopover.CQ2wlHBw.js} +1 -1
- package/dist/chunks/{MazRadio.75ipjTw2.js → MazRadio.Bt-JCE4R.js} +1 -1
- package/dist/chunks/{MazRadioButtons.feOo8xvv.js → MazRadioButtons.C3L4oP3r.js} +1 -1
- package/dist/chunks/{MazReadMore.DGhAapjE.js → MazReadMore.B6BEGz19.js} +1 -1
- package/dist/chunks/{MazSelect.0sfOMZdb.js → MazSelect.BwcJEABw.js} +1 -1
- package/dist/chunks/{MazSelectCountry.BxLzzpXU.js → MazSelectCountry.3S7qey2j.js} +1 -1
- package/dist/chunks/{MazTableCell.5QbIplIh.js → MazTableCell.CbOqt4eo.js} +1 -1
- package/dist/chunks/{MazTableRow.CiNfddO6.js → MazTableRow.OnPs8b3_.js} +1 -1
- package/dist/chunks/{MazTableTitle.CwvNYUCY.js → MazTableTitle.Csekyzrg.js} +1 -1
- package/dist/chunks/{MazTextarea.B5xc-Nt-.js → MazTextarea.DFKZgGCc.js} +1 -1
- package/dist/chunks/MazTicker.CLv0ebNf.js +1 -0
- package/dist/chunks/MazTimeline.pvtteRl1.js +1 -0
- package/dist/chunks/{dialog.D8ltdMcR.js → dialog.ZWxtPz69.js} +1 -1
- package/dist/chunks/{vFullscreenImg.xzHmlZpV.js → vFullscreenImg.DID1pEZr.js} +1 -1
- package/dist/components/MazAccordion.js +1 -1
- package/dist/components/MazAlert.js +1 -1
- package/dist/components/MazAnimatedCounter.js +1 -1
- package/dist/components/MazAnimatedElement.js +1 -1
- package/dist/components/MazAnimatedText.js +1 -1
- package/dist/components/MazAvatar.js +1 -1
- package/dist/components/MazBackdrop.js +1 -1
- package/dist/components/MazBadge.js +1 -1
- package/dist/components/MazBottomSheet.js +1 -1
- package/dist/components/MazBtn.js +1 -1
- package/dist/components/MazBtnGroup.js +1 -1
- package/dist/components/MazCard.js +1 -1
- package/dist/components/MazCardSpotlight.js +1 -1
- package/dist/components/MazCarousel.js +1 -1
- package/dist/components/MazChart.js +1 -1
- package/dist/components/MazCheckbox.js +1 -1
- package/dist/components/MazChecklist.js +1 -1
- package/dist/components/MazCircularProgressBar.js +1 -1
- package/dist/components/MazContainer.js +1 -1
- package/dist/components/MazDatePicker/MazPickerCalendarMonth/MazPickerCalendarDays.js +1 -1
- package/dist/components/MazDatePicker/MazPickerCalendarMonth/MazPickerCalendarGrid.js +1 -1
- package/dist/components/MazDatePicker/MazPickerCalendarMonth/MazPickerCalendarMonth.js +1 -1
- package/dist/components/MazDatePicker/MazPickerCalendarSwitcher.js +1 -1
- package/dist/components/MazDatePicker/MazPickerContainer.js +1 -1
- package/dist/components/MazDatePicker/MazPickerMonthSwitcher.js +1 -1
- package/dist/components/MazDatePicker/MazPickerShortcuts.js +1 -1
- package/dist/components/MazDatePicker/MazPickerTime.js +1 -1
- package/dist/components/MazDatePicker/MazPickerYearSwitcher.js +1 -1
- package/dist/components/MazDatePicker.js +1 -1
- package/dist/components/MazDialog.js +1 -1
- package/dist/components/MazDialogConfirm.js +1 -1
- package/dist/components/MazDrawer.js +1 -1
- package/dist/components/MazDropdown.js +1 -1
- package/dist/components/MazDropzone.js +1 -1
- package/dist/components/MazExpandAnimation.js +1 -1
- package/dist/components/MazFullscreenLoader.js +1 -1
- package/dist/components/MazGallery.js +1 -1
- package/dist/components/MazIcon.js +1 -1
- package/dist/components/MazInput.js +1 -1
- package/dist/components/MazInputCode.js +1 -1
- package/dist/components/MazInputNumber.js +1 -1
- package/dist/components/MazInputPhoneNumber/PhoneInput.js +1 -1
- package/dist/components/MazInputPhoneNumber.js +1 -1
- package/dist/components/MazInputPrice.js +1 -1
- package/dist/components/MazInputTags.js +1 -1
- package/dist/components/MazLazyImg.js +1 -1
- package/dist/components/MazLink.js +1 -1
- package/dist/components/MazLoadingBar.js +1 -1
- package/dist/components/MazPagination.js +1 -1
- package/dist/components/MazPopover.js +1 -1
- package/dist/components/MazPullToRefresh.js +1 -1
- package/dist/components/MazRadio.js +1 -1
- package/dist/components/MazRadioButtons.js +1 -1
- package/dist/components/MazReadMore.js +1 -1
- package/dist/components/MazReadingProgressBar.js +1 -1
- package/dist/components/MazSelect.js +1 -1
- package/dist/components/MazSelectCountry.js +1 -1
- package/dist/components/MazSkeleton.js +1 -1
- package/dist/components/MazSlider.js +1 -1
- package/dist/components/MazSpinner.js +1 -1
- package/dist/components/MazStepper.js +1 -1
- package/dist/components/MazSwitch.js +1 -1
- package/dist/components/MazTable.js +1 -1
- package/dist/components/MazTableCell.js +1 -1
- package/dist/components/MazTableRow.js +1 -1
- package/dist/components/MazTableTitle.js +1 -1
- package/dist/components/MazTabs.js +1 -1
- package/dist/components/MazTabsBar.js +1 -1
- package/dist/components/MazTabsContent.js +1 -1
- package/dist/components/MazTabsContentItem.js +1 -1
- package/dist/components/MazTextarea.js +1 -1
- package/dist/components/MazTicker.js +1 -0
- package/dist/components/MazTicker.vue.d.ts +81 -0
- package/dist/components/MazTimeline.js +1 -0
- package/dist/components/MazTimeline.vue.d.ts +157 -0
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.js +1 -1
- package/dist/composables/useFormField.js +1 -1
- package/dist/composables/useFormValidator.js +1 -1
- package/dist/directives/index.js +1 -1
- package/dist/directives/vFullscreenImg.js +1 -1
- package/dist/directives/vLazyImg.js +1 -1
- package/dist/directives/vTooltip.js +1 -1
- package/dist/directives/vZoomImg.js +1 -1
- package/dist/plugins/dialog.js +1 -1
- package/dist/plugins/index.js +1 -1
- package/dist/plugins/toast.js +1 -1
- package/package.json +7 -7
- package/dist/assets/MazAnimatedText.CoEetpNd.css +0 -1
- package/dist/assets/MazPopover.-QaA_4Xd.css +0 -1
- /package/dist/chunks/{MazAlert.DL8uAFMy.js → MazAlert.h7IrSU8k.js} +0 -0
- /package/dist/chunks/{MazAnimatedCounter.GLLYbZAz.js → MazAnimatedCounter.CaBoMmfg.js} +0 -0
- /package/dist/chunks/{MazAnimatedElement._8NY8WgC.js → MazAnimatedElement.C-h6YzBA.js} +0 -0
- /package/dist/chunks/{MazBackdrop.CgjnE9up.js → MazBackdrop.B2_glRzR.js} +0 -0
- /package/dist/chunks/{MazBtnGroup.3B1XcqWM.js → MazBtnGroup.CAYb08sG.js} +0 -0
- /package/dist/chunks/{MazCardSpotlight.DHVKl7pc.js → MazCardSpotlight.Bo4Ucmy6.js} +0 -0
- /package/dist/chunks/{MazCarousel.OEdQTm3H.js → MazCarousel.zkUWvXi3.js} +0 -0
- /package/dist/chunks/{MazChart.CDZ2PBTC.js → MazChart.DK9eK8Vm.js} +0 -0
- /package/dist/chunks/{MazContainer.zXcfMOs-.js → MazContainer._5YIP1t7.js} +0 -0
- /package/dist/chunks/{MazExpandAnimation.CMMwtuQA.js → MazExpandAnimation.g4fQdHBT.js} +0 -0
- /package/dist/chunks/{MazIcon.ZWAk25ZX.js → MazIcon.CjRqfhiK.js} +0 -0
- /package/dist/chunks/{MazInputCode.DKnl3i-X.js → MazInputCode.CZcDO8ps.js} +0 -0
- /package/dist/chunks/{MazLoadingBar.C86AX2Tk.js → MazLoadingBar.CrZbpsGG.js} +0 -0
- /package/dist/chunks/{MazPickerCalendarDays.CSZZbk5Z.js → MazPickerCalendarDays.D5Acexwg.js} +0 -0
- /package/dist/chunks/{MazPickerContainer.BZ74M74V.js → MazPickerContainer.DiGs4rUB.js} +0 -0
- /package/dist/chunks/{MazPullToRefresh.DMtb6Oa3.js → MazPullToRefresh.BdUjDSJk.js} +0 -0
- /package/dist/chunks/{MazReadingProgressBar.828Y0mxA.js → MazReadingProgressBar.CQ8sYmRd.js} +0 -0
- /package/dist/chunks/{MazSkeleton.BewTYJC2.js → MazSkeleton.BUlU5xqm.js} +0 -0
- /package/dist/chunks/{MazSlider.BS5QHWK6.js → MazSlider.D7xXoWt3.js} +0 -0
- /package/dist/chunks/{MazSpinner.D3NN2pow.js → MazSpinner.PD7Xh3sG.js} +0 -0
- /package/dist/chunks/{MazStepper.D32yakNR.js → MazStepper.DotkcvGw.js} +0 -0
- /package/dist/chunks/{MazSwitch.Dvmj-rTW.js → MazSwitch.g3gASAjy.js} +0 -0
- /package/dist/chunks/{MazTable.NHFcmFxn.js → MazTable.CbTqc2Lu.js} +0 -0
- /package/dist/chunks/{MazTabs.-0-YP3QQ.js → MazTabs.C2G4iYWL.js} +0 -0
- /package/dist/chunks/{MazTabsBar.D2JVKMS7.js → MazTabsBar.DDKGnocr.js} +0 -0
- /package/dist/chunks/{MazTabsContent.C9omK25X.js → MazTabsContent.DPwDfpNu.js} +0 -0
- /package/dist/chunks/{MazTabsContentItem.mJEAS5R8.js → MazTabsContentItem.B-ayZKwu.js} +0 -0
- /package/dist/chunks/{dom-events.BPrKJiCz.js → dom-events.CyiheUR-.js} +0 -0
- /package/dist/chunks/{resolveLinkComponent.DAc3sqGH.js → resolveLinkComponent.Bc6lvxWm.js} +0 -0
- /package/dist/chunks/{toast.D9xr1dJH.js → toast.C5BJk7z2.js} +0 -0
- /package/dist/chunks/{types.DDbvTVqf.js → types.Cz3GY4VA.js} +0 -0
- /package/dist/chunks/{useMazInputPhoneNumber.B_qQ0ldP.js → useMazInputPhoneNumber.D0iOm44I.js} +0 -0
- /package/dist/chunks/{vLazyImg.CXmd3Lp0.js → vLazyImg.DnJQAVAF.js} +0 -0
- /package/dist/chunks/{vZoomImg.CaAHb98S.js → vZoomImg.Bro1AoK9.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useDropzone}from"../composables/useDropzone.js";import{t as MazLink_default}from"./MazLink.BsjurisK.js";import{t as MazBtn_default}from"./MazBtn.Cc9C1v2l.js";import{t as MazIcon_default}from"./MazIcon.ZWAk25ZX.js";import{Fragment,Transition,TransitionGroup,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineAsyncComponent,defineComponent,mergeModels,mergeProps,normalizeClass,normalizeStyle,onBeforeMount,openBlock,ref,renderList,renderSlot,toDisplayString,unref,useModel,withCtx,withModifiers}from"vue";import{sleep}from"@maz-ui/utils/helpers/sleep";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{MazCheckCircle}from"@maz-ui/icons/lazy/MazCheckCircle";import{MazTrash}from"@maz-ui/icons/lazy/MazTrash";import{MazArchiveBox}from"@maz-ui/icons/lazy/MazArchiveBox";import{MazArrowUpOnSquare}from"@maz-ui/icons/lazy/MazArrowUpOnSquare";import{MazCodeBracket}from"@maz-ui/icons/lazy/MazCodeBracket";import{MazCog}from"@maz-ui/icons/lazy/MazCog";import{MazCommandLine}from"@maz-ui/icons/lazy/MazCommandLine";import{MazDocumentIcon}from"@maz-ui/icons/lazy/MazDocumentIcon";import{MazDocumentText}from"@maz-ui/icons/lazy/MazDocumentText";import{MazFilm}from"@maz-ui/icons/lazy/MazFilm";import{MazLogoAndroid}from"@maz-ui/icons/lazy/MazLogoAndroid";import{MazLogoApple}from"@maz-ui/icons/lazy/MazLogoApple";import{MazLogoCsv}from"@maz-ui/icons/lazy/MazLogoCsv";import{MazLogoHtml}from"@maz-ui/icons/lazy/MazLogoHtml";import{MazLogoJs}from"@maz-ui/icons/lazy/MazLogoJs";import{MazLogoJson}from"@maz-ui/icons/lazy/MazLogoJson";import{MazLogoMarkdown}from"@maz-ui/icons/lazy/MazLogoMarkdown";import{MazLogoProperties}from"@maz-ui/icons/lazy/MazLogoProperties";import{MazLogoReact}from"@maz-ui/icons/lazy/MazLogoReact";import{MazLogoTxt}from"@maz-ui/icons/lazy/MazLogoTxt";import{MazLogoTypescript}from"@maz-ui/icons/lazy/MazLogoTypescript";import{MazLogoVue}from"@maz-ui/icons/lazy/MazLogoVue";import{MazLogoXliff}from"@maz-ui/icons/lazy/MazLogoXliff";import{MazLogoXls}from"@maz-ui/icons/lazy/MazLogoXls";import{MazLogoXml}from"@maz-ui/icons/lazy/MazLogoXml";import{MazPaintBrush}from"@maz-ui/icons/lazy/MazPaintBrush";import{MazPencilSquare}from"@maz-ui/icons/lazy/MazPencilSquare";import{MazPhoto}from"@maz-ui/icons/lazy/MazPhoto";import{MazPresentationChartBar}from"@maz-ui/icons/lazy/MazPresentationChartBar";import{MazSpeakerWave}from"@maz-ui/icons/lazy/MazSpeakerWave";import{MazXCircle}from"@maz-ui/icons/lazy/MazXCircle";import '../assets/MazDropzone.DRD0eN8E.css';var _hoisted_1=[`for`];var _hoisted_2={class:`m-dropzone__icon-container`};var _hoisted_3={key:3,class:`m-dropzone__file-icon-wrapper`};var _hoisted_4={class:`m-dropzone__description`};var _hoisted_5={class:`m-dropzone__file-info`};var _hoisted_6={class:`m-dropzone__file-name`};var _hoisted_7={class:`m-dropzone__file-size`};var _hoisted_8={class:`m-dropzone__content`};var _hoisted_9={class:`m-dropzone__upload-text`};var _hoisted_10={key:0,class:`m-dropzone__info-text`};var _hoisted_11={key:0};var _hoisted_12={key:1};var _hoisted_13={key:2};var _hoisted_14=[`id`,`multiple`,`accept`,`disabled`];var MazDropzone_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazDropzone`,props:mergeModels({id:{},multiple:{type:Boolean,default:!1},dataTypes:{},preventDefaultForUnhandled:{type:Boolean,default:!0},maxFileSize:{},maxFiles:{},disabled:{type:Boolean,default:!1},preview:{type:Boolean,default:!0},minFileSize:{},allowDuplicates:{type:Boolean,default:!1},translations:{},color:{default:`primary`},removeFileBtnProps:{default:()=>({})},spinnerProps:{default:()=>({})},autoUpload:{type:[String,Boolean],default:!1},url:{},requestOptions:{},transformBody:{type:Function},maxConcurrentUploads:{default:5}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:mergeModels([`drop`,`enter`,`leave`,`over`,`add`,`remove`,`error`,`upload-error`,`upload-error-multiple`,`upload-success`,`upload-success-multiple`],[`update:modelValue`]),setup(__props,{expose:__expose,emit:__emit}){let emits=__emit;let MazSpinner=defineAsyncComponent(()=>import(`../components/MazSpinner.js`));let filesData=useModel(__props,`modelValue`);onBeforeMount(async()=>{filesData.value.length&&(filesData.value=await Promise.all(filesData.value.map(fileData=>getFileData(fileData.file))))});let dropZoneRef=ref();let isUploading=ref(!1);let hasMultiple=computed(()=>__props.multiple||(__props.maxFiles?__props.maxFiles>1:!1)||__props.autoUpload===`multiple`);let instanceId=useInstanceUniqId({componentName:`MazDropzone`,providedId:__props.id});function uploadFile(formData){if(!__props.url)throw emits(`error`,{files:null,event:null,code:`NO_URL`}),Error(`NO_URL`);try{let body=__props.transformBody?.(formData)??formData;return fetch(__props.url,{method:`POST`,body,...__props.requestOptions})}catch{emits(`error`,{files:null,event:null,code:`FILE_UPLOAD_ERROR`})}}function getFormData(file){let formData=new FormData;return formData.append(`file`,file),formData}function getFormDataMultiple(){let formData=new FormData;return filesData.value.forEach(fileData=>formData.append(`files`,fileData.file)),formData}async function uploadFilesMultiple(){if(!filesData.value.length){emits(`error`,{files:filesData.value.map(f=>f.file),event:null,code:`NO_FILES_TO_UPLOAD`});return}try{isUploading.value=!0,filesData.value=filesData.value.map(f=>({...f,uploading:!0,success:!1,error:!1}));let response=await uploadFile(getFormDataMultiple());filesData.value=filesData.value.map(f=>({...f,uploading:!1,success:!0,error:!1})),emits(`upload-success-multiple`,{files:filesData.value.map(f=>f.file),response})}catch(error){filesData.value=filesData.value.map(f=>({...f,uploading:!1,success:!1,error:!0})),emits(`upload-error-multiple`,{files:filesData.value.map(f=>f.file),code:`FILE_UPLOAD_ERROR_MULTIPLE`,error})}finally{isUploading.value=!1,await sleep(1e3),filesData.value=filesData.value.filter(f=>f.error)}}async function uploadFiles(){if(!filesData.value.length)throw emits(`error`,{files:filesData.value.map(f=>f.file),event:null,code:`NO_FILES_TO_UPLOAD`}),Error(`NO_FILES_TO_UPLOAD`);try{isUploading.value=!0;let queue=[...filesData.value];let activeUploads=[];async function uploadFileData(fileData){let formData=getFormData(fileData.file);try{fileData.error=!1,fileData.uploading=!0;let response=await uploadFile(formData);emits(`upload-success`,{file:fileData.file,response}),fileData.success=!0}catch(error){fileData.error=!0,emits(`upload-error`,{file:fileData.file,code:`FILE_UPLOAD_ERROR`,error})}finally{fileData.uploading=!1}}async function processQueue(){for(;queue.length>0;){let fileData=queue.shift();fileData&&await uploadFileData(fileData)}}for(let i=0;i<Math.min(__props.maxConcurrentUploads,filesData.value.length);i++)activeUploads.push(processQueue());await Promise.allSettled(activeUploads)}finally{isUploading.value=!1,await sleep(1e3),filesData.value=filesData.value.filter(f=>f.error)}}async function getFileData(file){let fileData={file,name:file.name,size:file.size,type:file.type,lastModified:file.lastModified,sizeInMb:(file.size/1024/1024).toFixed(2),lastModifiedDate:new Date(file.lastModified),url:URL.createObjectURL(file),thumbnail:void 0,uploading:!1,success:!1,error:!1};return file.type.startsWith(`image/`)&&await new Promise(resolve=>{let reader=new FileReader;reader.onload=event=>{fileData.thumbnail=event.target?.result||void 0,resolve(null)},reader.readAsDataURL(file)}),__props.maxFileSize&&file.size>__props.maxFileSize*1024*1024&&emits(`error`,{files:[file],event:null,code:`FILE_SIZE_EXCEEDED`}),__props.minFileSize&&file.size<__props.minFileSize*1024*1024&&emits(`error`,{files:[file],event:null,code:`FILE_SIZE_TOO_SMALL`}),fileData}async function handleFiles(files){if(__props.disabled||!files)return null;for await(let file of files){if(!isFileTypeAllowed(file)){emits(`error`,{files:[file],event:null,code:`FILE_TYPE_NOT_ALLOWED`});continue}if(!hasMultiple.value&&filesData.value.length>=1){emits(`error`,{files:[file],event:null,code:`MAX_FILES_EXCEEDED`});continue}if(__props.maxFiles&&filesData.value.length>=__props.maxFiles){emits(`error`,{files:[file],event:null,code:`MAX_FILES_EXCEEDED`});continue}if(__props.maxFileSize&&file.size>__props.maxFileSize*1024*1024){emits(`error`,{files:[file],event:null,code:`FILE_SIZE_EXCEEDED`});continue}if(__props.minFileSize&&file.size<__props.minFileSize*1024*1024){emits(`error`,{files:[file],event:null,code:`FILE_SIZE_TOO_SMALL`});continue}if(!__props.allowDuplicates&&filesData.value.some(f=>f.name===file.name&&f.size===file.size&&f.type===file.type)){emits(`error`,{files:[file],event:null,code:`FILE_DUPLICATED`});continue}let fileData=await getFileData(file);filesData.value=[...filesData.value,fileData],emits(`add`,fileData.file)}return __props.autoUpload===`single`?uploadFiles():__props.autoUpload===`multiple`&&uploadFilesMultiple(),filesData.value}async function onDrop(files,event){await handleFiles(files),emits(`drop`,{files,event})}function onError(files,event){emits(`error`,{files,event,code:`FILE_TYPE_NOT_ALLOWED`})}function onEnter(files,event){emits(`enter`,{files,event})}function onLeave(files,event){emits(`leave`,{files,event})}function onOver(files,event){emits(`over`,{files,event})}let{isOverDropZone,isOverError}=useDropzone(dropZoneRef,{dataTypes:__props.dataTypes,onDrop,preventDefaultForUnhandled:__props.preventDefaultForUnhandled,multiple:hasMultiple.value,onError,onEnter,onLeave,onOver});let fileInput=ref();function handleFileUpload(event){let input=event.target;let files=input?.files;files&&handleFiles(files),setTimeout(()=>{input.value=``},3e3)}let extensionIconMap=(()=>{let map=new Map;let groups=[[MazLogoJs,[`js`,`mjs`,`cjs`]],[MazLogoTypescript,[`ts`,`tsx`,`mts`,`cts`]],[MazLogoVue,[`vue`]],[MazLogoReact,[`jsx`]],[MazLogoJson,[`json`,`jsonc`,`json5`]],[MazLogoXml,[`xml`]],[MazLogoHtml,[`html`,`htm`]],[MazLogoMarkdown,[`md`,`markdown`,`mdx`]],[MazLogoProperties,[`properties`]],[MazLogoTxt,[`txt`]],[MazLogoCsv,[`csv`]],[MazLogoXls,[`xls`,`xlsx`]],[MazLogoXliff,[`xliff`,`xlf`]],[MazLogoApple,[`strings`,`stringsdict`,`xcstrings`]],[MazLogoAndroid,[`apk`]],[MazPhoto,[`jpeg`,`jpg`,`png`,`tiff`,`bmp`,`webp`,`svg`,`ico`,`gif`,`heic`,`heif`,`avif`]],[MazFilm,[`mp4`,`webm`,`avi`,`mov`,`mkv`,`flv`,`wmv`,`m4v`,`mpeg`,`mpg`,`3gp`,`ogv`]],[MazSpeakerWave,[`mp3`,`wav`,`m4a`,`aac`,`flac`,`ogg`,`oga`,`opus`,`wma`,`alac`,`aiff`]],[MazArchiveBox,[`zip`,`rar`,`tar`,`gz`,`7z`,`bz2`,`xz`]],[MazCommandLine,[`exe`,`dll`,`so`,`dylib`,`dmg`,`deb`,`rpm`,`app`,`bat`,`cmd`]],[MazCodeBracket,`css.scss.sass.less.py.java.cpp.c.h.hpp.go.rs.rust.php.rb.swift.kt.kotlin.sql.sh.bash.zsh.yaml.yml.toml.ini`.split(`.`)],[MazCog,[`conf`,`config`,`env`,`cfg`]],[MazPresentationChartBar,[`ppt`,`pptx`,`key`,`odp`]],[MazDocumentText,[`rtf`,`odt`]],[MazPencilSquare,[`ttf`,`otf`,`woff`,`woff2`,`eot`]],[MazPaintBrush,[`ai`,`psd`,`sketch`,`fig`,`xd`,`eps`]],[MazDocumentIcon,[`pdf`,`doc`,`docx`,`tsv`,`document`]]];for(let[icon,extensions]of groups)for(let ext of extensions)map.set(ext,icon);return map})();function getIconComponent(fileData){let type=fileData.file.type.split(`/`)?.[1]?.split(`+`)?.[0]?.toLowerCase();let extension=fileData.file.name.split(`.`).pop()?.toLowerCase();return extensionIconMap.get(type)||extension&&extensionIconMap.get(extension)||extensionIconMap.get(`document`)}function handleFileInputClick(){fileInput.value&&fileInput.value.click()}function handleFileRemove(fileData){fileData.url&&URL.revokeObjectURL(fileData.url),filesData.value=filesData.value.filter(f=>f.file!==fileData.file),emits(`remove`,fileData.file)}let selectAreaCanBeDisplayed=ref(!0);let dataTypesString=computed(()=>__props.dataTypes?.map(formatReadable).join(`, `));let allFileIsAccepted=computed(()=>__props.dataTypes?.length===1&&__props.dataTypes[0]===`*/*`);let{t}=useTranslations();let messages=computed(()=>{let customTranslations=__props.translations||{};return{dragAndDrop:customTranslations.dragAndDrop??t(`dropzone.dragAndDrop`),fileMaxCount:__props.maxFiles?customTranslations.fileMaxCount??t(`dropzone.fileMaxCount`,{count:__props.maxFiles}):void 0,fileMaxSize:__props.maxFileSize?customTranslations.fileMaxSize??t(`dropzone.fileMaxSize`,{size:__props.maxFileSize}):void 0,fileTypes:dataTypesString.value?customTranslations.fileTypes??t(`dropzone.fileTypes`,{types:dataTypesString.value}):void 0,selectFile:customTranslations.selectFile??t(`dropzone.selectFile`),divider:customTranslations.divider??t(`dropzone.divider`)}});function formatReadable(fmt){if(fmt.startsWith(`.`))return fmt;if(fmt.includes(`/`)){let[type,subtype]=fmt.split(`/`);if(subtype===`*`){let customTypes=__props.translations?.types||{};switch(type){case`image`:return customTypes.image??t(`dropzone.types.image`);case`video`:return customTypes.video??t(`dropzone.types.video`);case`audio`:return customTypes.audio??t(`dropzone.types.audio`);case`text`:return customTypes.text??t(`dropzone.types.text`);default:return fmt}}return subtype}return fmt}function reset(){filesData.value.forEach(fileData=>{fileData.url&&URL.revokeObjectURL(fileData.url)}),filesData.value=[]}function addFile(file){handleFiles([file])}function removeFile(file){filesData.value=filesData.value.filter(f=>f.file!==file)}function isFileTypeAllowed(file){return!__props.dataTypes||__props.dataTypes.includes(`*/*`)?!0:__props.dataTypes.some(type=>type.startsWith(`.`)?file.name.toLowerCase().endsWith(type.toLowerCase()):type.endsWith(`/*`)?file.type.startsWith(type.slice(0,-1)):file.type===type)}return __expose({uploadFiles,uploadFilesMultiple,getFormData,getFormDataMultiple,reset,isUploading,addFile,removeFile}),(_ctx,_cache)=>(openBlock(),createElementBlock(`label`,{ref_key:`dropZoneRef`,ref:dropZoneRef,role:`button`,tabindex:`0`,for:`input-file-uploader-${unref(instanceId)}`,class:normalizeClass([`m-dropzone m-reset-css`,{"m-dropzone--disabled":__props.disabled,"m-dropzone--is-over-drop-zone":unref(isOverDropZone)&&!unref(isOverError),"m-dropzone--is-over-error":unref(isOverError)}]),style:normalizeStyle({"--active-color":`hsl(var(--maz-${__props.color}))`})},[renderSlot(_ctx.$slots,`files-area`,{filesData:filesData.value},()=>[createVNode(TransitionGroup,{name:`file-scale`,tag:`div`,class:`m-dropzone__files-container`,onBeforeEnter:_cache[1]||=$event=>selectAreaCanBeDisplayed.value=!1,onAfterLeave:_cache[2]||=$event=>selectAreaCanBeDisplayed.value=filesData.value.length===0},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(filesData.value,file=>(openBlock(),createElementBlock(`div`,{key:`${file.name}-${file.size}-${file}`,class:`m-dropzone__file-item group`,onClick:_cache[0]||=withModifiers(()=>{},[`prevent`])},[renderSlot(_ctx.$slots,`file-item`,{file},()=>[file.thumbnail&&__props.preview?(openBlock(),createElementBlock(Fragment,{key:0},[createElementVNode(`div`,{style:normalizeStyle({backgroundImage:`url(${file.thumbnail})`,backgroundSize:`cover`,backgroundPosition:`center`}),class:`m-dropzone__thumbnail`},null,4),_cache[4]||=createElementVNode(`div`,{class:`m-dropzone__overlay`},null,-1)],64)):createCommentVNode(``,!0),createElementVNode(`div`,_hoisted_2,[createVNode(Transition,{name:`icon-scale`},{default:withCtx(()=>[file.uploading?(openBlock(),createBlock(unref(MazSpinner),mergeProps({key:0,color:__props.color,class:`m-dropzone__spinner`},{ref_for:!0},__props.spinnerProps),null,16,[`color`])):file.success?(openBlock(),createBlock(unref(MazCheckCircle),{key:1,class:`m-dropzone__success-icon`})):file.error?(openBlock(),createBlock(unref(MazXCircle),{key:2,class:`m-dropzone__error-icon`})):(openBlock(),createElementBlock(`div`,_hoisted_3,[createVNode(MazIcon_default,{icon:getIconComponent(file),size:`lg`,class:`m-dropzone__file-icon`},null,8,[`icon`])]))]),_:2},1024)]),createElementVNode(`div`,_hoisted_4,[createElementVNode(`div`,_hoisted_5,[createElementVNode(`span`,_hoisted_6,toDisplayString(file.name),1),createElementVNode(`span`,_hoisted_7,toDisplayString(file.sizeInMb)+` MB`,1)]),!file.uploading&&!file.success?(openBlock(),createBlock(MazBtn_default,mergeProps({key:0,size:`xs`,icon:unref(MazTrash),disabled:__props.disabled,color:`destructive`,pastel:``},{ref_for:!0},__props.removeFileBtnProps,{onClick:withModifiers($event=>handleFileRemove(file),[`prevent`])}),null,16,[`icon`,`disabled`,`onClick`])):createCommentVNode(``,!0)])],!0)]))),128))]),_:3})],!0),filesData.value.length===0&&selectAreaCanBeDisplayed.value?renderSlot(_ctx.$slots,`no-files-area`,{key:0,selectFile:handleFileInputClick},()=>[createElementVNode(`div`,_hoisted_8,[renderSlot(_ctx.$slots,`upload-icon`,{},()=>[createVNode(unref(MazArrowUpOnSquare),{class:`m-dropzone__upload-icon`})],!0),createElementVNode(`span`,_hoisted_9,[createTextVNode(toDisplayString(messages.value.dragAndDrop)+` `+toDisplayString(messages.value.divider)+` `,1),createVNode(MazLink_default,{color:`inherit`,underline:``,onClick:_cache[3]||=withModifiers($event=>!__props.disabled&&handleFileInputClick(),[`prevent`])},{default:withCtx(()=>[createTextVNode(toDisplayString(messages.value.selectFile),1)]),_:1})])]),!allFileIsAccepted.value&&(messages.value.fileMaxCount||messages.value.fileMaxSize||messages.value.fileTypes)?(openBlock(),createElementBlock(`p`,_hoisted_10,[messages.value.fileMaxCount?(openBlock(),createElementBlock(`span`,_hoisted_11,toDisplayString(messages.value.fileMaxCount),1)):createCommentVNode(``,!0),messages.value.fileMaxSize?(openBlock(),createElementBlock(`span`,_hoisted_12,toDisplayString(messages.value.fileMaxSize),1)):createCommentVNode(``,!0),messages.value.fileTypes?(openBlock(),createElementBlock(`span`,_hoisted_13,toDisplayString(messages.value.fileTypes),1)):createCommentVNode(``,!0)])):createCommentVNode(``,!0)],!0):createCommentVNode(``,!0),createElementVNode(`input`,{id:`input-file-uploader-${unref(instanceId)}`,ref_key:`fileInput`,ref:fileInput,multiple:hasMultiple.value,type:`file`,accept:__props.dataTypes?.join(`,`),tabindex:`-1`,disabled:__props.disabled,class:`m-dropzone__file-input`,onChange:handleFileUpload},null,40,_hoisted_14)],14,_hoisted_1))}}),[[`__scopeId`,`data-v-7a36205a`]]);export{MazDropzone_default as t};
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{useDropzone}from"../composables/useDropzone.js";import{t as MazLink_default}from"./MazLink.CK1WIkI5.js";import{t as MazBtn_default}from"./MazBtn.B0qldW6w.js";import{t as MazIcon_default}from"./MazIcon.CjRqfhiK.js";import{Fragment,Transition,TransitionGroup,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineAsyncComponent,defineComponent,mergeModels,mergeProps,normalizeClass,normalizeStyle,onBeforeMount,openBlock,ref,renderList,renderSlot,toDisplayString,unref,useModel,withCtx,withModifiers}from"vue";import{sleep}from"@maz-ui/utils/helpers/sleep";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{MazCheckCircle}from"@maz-ui/icons/lazy/MazCheckCircle";import{MazTrash}from"@maz-ui/icons/lazy/MazTrash";import{MazArchiveBox}from"@maz-ui/icons/lazy/MazArchiveBox";import{MazArrowUpOnSquare}from"@maz-ui/icons/lazy/MazArrowUpOnSquare";import{MazCodeBracket}from"@maz-ui/icons/lazy/MazCodeBracket";import{MazCog}from"@maz-ui/icons/lazy/MazCog";import{MazCommandLine}from"@maz-ui/icons/lazy/MazCommandLine";import{MazDocumentIcon}from"@maz-ui/icons/lazy/MazDocumentIcon";import{MazDocumentText}from"@maz-ui/icons/lazy/MazDocumentText";import{MazFilm}from"@maz-ui/icons/lazy/MazFilm";import{MazLogoAndroid}from"@maz-ui/icons/lazy/MazLogoAndroid";import{MazLogoApple}from"@maz-ui/icons/lazy/MazLogoApple";import{MazLogoCsv}from"@maz-ui/icons/lazy/MazLogoCsv";import{MazLogoHtml}from"@maz-ui/icons/lazy/MazLogoHtml";import{MazLogoJs}from"@maz-ui/icons/lazy/MazLogoJs";import{MazLogoJson}from"@maz-ui/icons/lazy/MazLogoJson";import{MazLogoMarkdown}from"@maz-ui/icons/lazy/MazLogoMarkdown";import{MazLogoProperties}from"@maz-ui/icons/lazy/MazLogoProperties";import{MazLogoReact}from"@maz-ui/icons/lazy/MazLogoReact";import{MazLogoTxt}from"@maz-ui/icons/lazy/MazLogoTxt";import{MazLogoTypescript}from"@maz-ui/icons/lazy/MazLogoTypescript";import{MazLogoVue}from"@maz-ui/icons/lazy/MazLogoVue";import{MazLogoXliff}from"@maz-ui/icons/lazy/MazLogoXliff";import{MazLogoXls}from"@maz-ui/icons/lazy/MazLogoXls";import{MazLogoXml}from"@maz-ui/icons/lazy/MazLogoXml";import{MazPaintBrush}from"@maz-ui/icons/lazy/MazPaintBrush";import{MazPencilSquare}from"@maz-ui/icons/lazy/MazPencilSquare";import{MazPhoto}from"@maz-ui/icons/lazy/MazPhoto";import{MazPresentationChartBar}from"@maz-ui/icons/lazy/MazPresentationChartBar";import{MazSpeakerWave}from"@maz-ui/icons/lazy/MazSpeakerWave";import{MazXCircle}from"@maz-ui/icons/lazy/MazXCircle";import '../assets/MazDropzone.DRD0eN8E.css';var _hoisted_1=[`for`];var _hoisted_2={class:`m-dropzone__icon-container`};var _hoisted_3={key:3,class:`m-dropzone__file-icon-wrapper`};var _hoisted_4={class:`m-dropzone__description`};var _hoisted_5={class:`m-dropzone__file-info`};var _hoisted_6={class:`m-dropzone__file-name`};var _hoisted_7={class:`m-dropzone__file-size`};var _hoisted_8={class:`m-dropzone__content`};var _hoisted_9={class:`m-dropzone__upload-text`};var _hoisted_10={key:0,class:`m-dropzone__info-text`};var _hoisted_11={key:0};var _hoisted_12={key:1};var _hoisted_13={key:2};var _hoisted_14=[`id`,`multiple`,`accept`,`disabled`];var MazDropzone_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazDropzone`,props:mergeModels({id:{},multiple:{type:Boolean,default:!1},dataTypes:{},preventDefaultForUnhandled:{type:Boolean,default:!0},maxFileSize:{},maxFiles:{},disabled:{type:Boolean,default:!1},preview:{type:Boolean,default:!0},minFileSize:{},allowDuplicates:{type:Boolean,default:!1},translations:{},color:{default:`primary`},removeFileBtnProps:{default:()=>({})},spinnerProps:{default:()=>({})},autoUpload:{type:[String,Boolean],default:!1},url:{},requestOptions:{},transformBody:{type:Function},maxConcurrentUploads:{default:5}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:mergeModels([`drop`,`enter`,`leave`,`over`,`add`,`remove`,`error`,`upload-error`,`upload-error-multiple`,`upload-success`,`upload-success-multiple`],[`update:modelValue`]),setup(__props,{expose:__expose,emit:__emit}){let emits=__emit;let MazSpinner=defineAsyncComponent(()=>import(`../components/MazSpinner.js`));let filesData=useModel(__props,`modelValue`);onBeforeMount(async()=>{filesData.value.length&&(filesData.value=await Promise.all(filesData.value.map(fileData=>getFileData(fileData.file))))});let dropZoneRef=ref();let isUploading=ref(!1);let hasMultiple=computed(()=>__props.multiple||(__props.maxFiles?__props.maxFiles>1:!1)||__props.autoUpload===`multiple`);let instanceId=useInstanceUniqId({componentName:`MazDropzone`,providedId:__props.id});function uploadFile(formData){if(!__props.url)throw emits(`error`,{files:null,event:null,code:`NO_URL`}),Error(`NO_URL`);try{let body=__props.transformBody?.(formData)??formData;return fetch(__props.url,{method:`POST`,body,...__props.requestOptions})}catch{emits(`error`,{files:null,event:null,code:`FILE_UPLOAD_ERROR`})}}function getFormData(file){let formData=new FormData;return formData.append(`file`,file),formData}function getFormDataMultiple(){let formData=new FormData;return filesData.value.forEach(fileData=>formData.append(`files`,fileData.file)),formData}async function uploadFilesMultiple(){if(!filesData.value.length){emits(`error`,{files:filesData.value.map(f=>f.file),event:null,code:`NO_FILES_TO_UPLOAD`});return}try{isUploading.value=!0,filesData.value=filesData.value.map(f=>({...f,uploading:!0,success:!1,error:!1}));let response=await uploadFile(getFormDataMultiple());filesData.value=filesData.value.map(f=>({...f,uploading:!1,success:!0,error:!1})),emits(`upload-success-multiple`,{files:filesData.value.map(f=>f.file),response})}catch(error){filesData.value=filesData.value.map(f=>({...f,uploading:!1,success:!1,error:!0})),emits(`upload-error-multiple`,{files:filesData.value.map(f=>f.file),code:`FILE_UPLOAD_ERROR_MULTIPLE`,error})}finally{isUploading.value=!1,await sleep(1e3),filesData.value=filesData.value.filter(f=>f.error)}}async function uploadFiles(){if(!filesData.value.length)throw emits(`error`,{files:filesData.value.map(f=>f.file),event:null,code:`NO_FILES_TO_UPLOAD`}),Error(`NO_FILES_TO_UPLOAD`);try{isUploading.value=!0;let queue=[...filesData.value];let activeUploads=[];async function uploadFileData(fileData){let formData=getFormData(fileData.file);try{fileData.error=!1,fileData.uploading=!0;let response=await uploadFile(formData);emits(`upload-success`,{file:fileData.file,response}),fileData.success=!0}catch(error){fileData.error=!0,emits(`upload-error`,{file:fileData.file,code:`FILE_UPLOAD_ERROR`,error})}finally{fileData.uploading=!1}}async function processQueue(){for(;queue.length>0;){let fileData=queue.shift();fileData&&await uploadFileData(fileData)}}for(let i=0;i<Math.min(__props.maxConcurrentUploads,filesData.value.length);i++)activeUploads.push(processQueue());await Promise.allSettled(activeUploads)}finally{isUploading.value=!1,await sleep(1e3),filesData.value=filesData.value.filter(f=>f.error)}}async function getFileData(file){let fileData={file,name:file.name,size:file.size,type:file.type,lastModified:file.lastModified,sizeInMb:(file.size/1024/1024).toFixed(2),lastModifiedDate:new Date(file.lastModified),url:URL.createObjectURL(file),thumbnail:void 0,uploading:!1,success:!1,error:!1};return file.type.startsWith(`image/`)&&await new Promise(resolve=>{let reader=new FileReader;reader.onload=event=>{fileData.thumbnail=event.target?.result||void 0,resolve(null)},reader.readAsDataURL(file)}),__props.maxFileSize&&file.size>__props.maxFileSize*1024*1024&&emits(`error`,{files:[file],event:null,code:`FILE_SIZE_EXCEEDED`}),__props.minFileSize&&file.size<__props.minFileSize*1024*1024&&emits(`error`,{files:[file],event:null,code:`FILE_SIZE_TOO_SMALL`}),fileData}async function handleFiles(files){if(__props.disabled||!files)return null;for await(let file of files){if(!isFileTypeAllowed(file)){emits(`error`,{files:[file],event:null,code:`FILE_TYPE_NOT_ALLOWED`});continue}if(!hasMultiple.value&&filesData.value.length>=1){emits(`error`,{files:[file],event:null,code:`MAX_FILES_EXCEEDED`});continue}if(__props.maxFiles&&filesData.value.length>=__props.maxFiles){emits(`error`,{files:[file],event:null,code:`MAX_FILES_EXCEEDED`});continue}if(__props.maxFileSize&&file.size>__props.maxFileSize*1024*1024){emits(`error`,{files:[file],event:null,code:`FILE_SIZE_EXCEEDED`});continue}if(__props.minFileSize&&file.size<__props.minFileSize*1024*1024){emits(`error`,{files:[file],event:null,code:`FILE_SIZE_TOO_SMALL`});continue}if(!__props.allowDuplicates&&filesData.value.some(f=>f.name===file.name&&f.size===file.size&&f.type===file.type)){emits(`error`,{files:[file],event:null,code:`FILE_DUPLICATED`});continue}let fileData=await getFileData(file);filesData.value=[...filesData.value,fileData],emits(`add`,fileData.file)}return __props.autoUpload===`single`?uploadFiles():__props.autoUpload===`multiple`&&uploadFilesMultiple(),filesData.value}async function onDrop(files,event){await handleFiles(files),emits(`drop`,{files,event})}function onError(files,event){emits(`error`,{files,event,code:`FILE_TYPE_NOT_ALLOWED`})}function onEnter(files,event){emits(`enter`,{files,event})}function onLeave(files,event){emits(`leave`,{files,event})}function onOver(files,event){emits(`over`,{files,event})}let{isOverDropZone,isOverError}=useDropzone(dropZoneRef,{dataTypes:__props.dataTypes,onDrop,preventDefaultForUnhandled:__props.preventDefaultForUnhandled,multiple:hasMultiple.value,onError,onEnter,onLeave,onOver});let fileInput=ref();function handleFileUpload(event){let input=event.target;let files=input?.files;files&&handleFiles(files),setTimeout(()=>{input.value=``},3e3)}let extensionIconMap=(()=>{let map=new Map;let groups=[[MazLogoJs,[`js`,`mjs`,`cjs`]],[MazLogoTypescript,[`ts`,`tsx`,`mts`,`cts`]],[MazLogoVue,[`vue`]],[MazLogoReact,[`jsx`]],[MazLogoJson,[`json`,`jsonc`,`json5`]],[MazLogoXml,[`xml`]],[MazLogoHtml,[`html`,`htm`]],[MazLogoMarkdown,[`md`,`markdown`,`mdx`]],[MazLogoProperties,[`properties`]],[MazLogoTxt,[`txt`]],[MazLogoCsv,[`csv`]],[MazLogoXls,[`xls`,`xlsx`]],[MazLogoXliff,[`xliff`,`xlf`]],[MazLogoApple,[`strings`,`stringsdict`,`xcstrings`]],[MazLogoAndroid,[`apk`]],[MazPhoto,[`jpeg`,`jpg`,`png`,`tiff`,`bmp`,`webp`,`svg`,`ico`,`gif`,`heic`,`heif`,`avif`]],[MazFilm,[`mp4`,`webm`,`avi`,`mov`,`mkv`,`flv`,`wmv`,`m4v`,`mpeg`,`mpg`,`3gp`,`ogv`]],[MazSpeakerWave,[`mp3`,`wav`,`m4a`,`aac`,`flac`,`ogg`,`oga`,`opus`,`wma`,`alac`,`aiff`]],[MazArchiveBox,[`zip`,`rar`,`tar`,`gz`,`7z`,`bz2`,`xz`]],[MazCommandLine,[`exe`,`dll`,`so`,`dylib`,`dmg`,`deb`,`rpm`,`app`,`bat`,`cmd`]],[MazCodeBracket,`css.scss.sass.less.py.java.cpp.c.h.hpp.go.rs.rust.php.rb.swift.kt.kotlin.sql.sh.bash.zsh.yaml.yml.toml.ini`.split(`.`)],[MazCog,[`conf`,`config`,`env`,`cfg`]],[MazPresentationChartBar,[`ppt`,`pptx`,`key`,`odp`]],[MazDocumentText,[`rtf`,`odt`]],[MazPencilSquare,[`ttf`,`otf`,`woff`,`woff2`,`eot`]],[MazPaintBrush,[`ai`,`psd`,`sketch`,`fig`,`xd`,`eps`]],[MazDocumentIcon,[`pdf`,`doc`,`docx`,`tsv`,`document`]]];for(let[icon,extensions]of groups)for(let ext of extensions)map.set(ext,icon);return map})();function getIconComponent(fileData){let type=fileData.file.type.split(`/`)?.[1]?.split(`+`)?.[0]?.toLowerCase();let extension=fileData.file.name.split(`.`).pop()?.toLowerCase();return extensionIconMap.get(type)||extension&&extensionIconMap.get(extension)||extensionIconMap.get(`document`)}function handleFileInputClick(){fileInput.value&&fileInput.value.click()}function handleFileRemove(fileData){fileData.url&&URL.revokeObjectURL(fileData.url),filesData.value=filesData.value.filter(f=>f.file!==fileData.file),emits(`remove`,fileData.file)}let selectAreaCanBeDisplayed=ref(!0);let dataTypesString=computed(()=>__props.dataTypes?.map(formatReadable).join(`, `));let allFileIsAccepted=computed(()=>__props.dataTypes?.length===1&&__props.dataTypes[0]===`*/*`);let{t}=useTranslations();let messages=computed(()=>{let customTranslations=__props.translations||{};return{dragAndDrop:customTranslations.dragAndDrop??t(`dropzone.dragAndDrop`),fileMaxCount:__props.maxFiles?customTranslations.fileMaxCount??t(`dropzone.fileMaxCount`,{count:__props.maxFiles}):void 0,fileMaxSize:__props.maxFileSize?customTranslations.fileMaxSize??t(`dropzone.fileMaxSize`,{size:__props.maxFileSize}):void 0,fileTypes:dataTypesString.value?customTranslations.fileTypes??t(`dropzone.fileTypes`,{types:dataTypesString.value}):void 0,selectFile:customTranslations.selectFile??t(`dropzone.selectFile`),divider:customTranslations.divider??t(`dropzone.divider`)}});function formatReadable(fmt){if(fmt.startsWith(`.`))return fmt;if(fmt.includes(`/`)){let[type,subtype]=fmt.split(`/`);if(subtype===`*`){let customTypes=__props.translations?.types||{};switch(type){case`image`:return customTypes.image??t(`dropzone.types.image`);case`video`:return customTypes.video??t(`dropzone.types.video`);case`audio`:return customTypes.audio??t(`dropzone.types.audio`);case`text`:return customTypes.text??t(`dropzone.types.text`);default:return fmt}}return subtype}return fmt}function reset(){filesData.value.forEach(fileData=>{fileData.url&&URL.revokeObjectURL(fileData.url)}),filesData.value=[]}function addFile(file){handleFiles([file])}function removeFile(file){filesData.value=filesData.value.filter(f=>f.file!==file)}function isFileTypeAllowed(file){return!__props.dataTypes||__props.dataTypes.includes(`*/*`)?!0:__props.dataTypes.some(type=>type.startsWith(`.`)?file.name.toLowerCase().endsWith(type.toLowerCase()):type.endsWith(`/*`)?file.type.startsWith(type.slice(0,-1)):file.type===type)}return __expose({uploadFiles,uploadFilesMultiple,getFormData,getFormDataMultiple,reset,isUploading,addFile,removeFile}),(_ctx,_cache)=>(openBlock(),createElementBlock(`label`,{ref_key:`dropZoneRef`,ref:dropZoneRef,role:`button`,tabindex:`0`,for:`input-file-uploader-${unref(instanceId)}`,class:normalizeClass([`m-dropzone m-reset-css`,{"m-dropzone--disabled":__props.disabled,"m-dropzone--is-over-drop-zone":unref(isOverDropZone)&&!unref(isOverError),"m-dropzone--is-over-error":unref(isOverError)}]),style:normalizeStyle({"--active-color":`hsl(var(--maz-${__props.color}))`})},[renderSlot(_ctx.$slots,`files-area`,{filesData:filesData.value},()=>[createVNode(TransitionGroup,{name:`file-scale`,tag:`div`,class:`m-dropzone__files-container`,onBeforeEnter:_cache[1]||=$event=>selectAreaCanBeDisplayed.value=!1,onAfterLeave:_cache[2]||=$event=>selectAreaCanBeDisplayed.value=filesData.value.length===0},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(filesData.value,file=>(openBlock(),createElementBlock(`div`,{key:`${file.name}-${file.size}-${file}`,class:`m-dropzone__file-item group`,onClick:_cache[0]||=withModifiers(()=>{},[`prevent`])},[renderSlot(_ctx.$slots,`file-item`,{file},()=>[file.thumbnail&&__props.preview?(openBlock(),createElementBlock(Fragment,{key:0},[createElementVNode(`div`,{style:normalizeStyle({backgroundImage:`url(${file.thumbnail})`,backgroundSize:`cover`,backgroundPosition:`center`}),class:`m-dropzone__thumbnail`},null,4),_cache[4]||=createElementVNode(`div`,{class:`m-dropzone__overlay`},null,-1)],64)):createCommentVNode(``,!0),createElementVNode(`div`,_hoisted_2,[createVNode(Transition,{name:`icon-scale`},{default:withCtx(()=>[file.uploading?(openBlock(),createBlock(unref(MazSpinner),mergeProps({key:0,color:__props.color,class:`m-dropzone__spinner`},{ref_for:!0},__props.spinnerProps),null,16,[`color`])):file.success?(openBlock(),createBlock(unref(MazCheckCircle),{key:1,class:`m-dropzone__success-icon`})):file.error?(openBlock(),createBlock(unref(MazXCircle),{key:2,class:`m-dropzone__error-icon`})):(openBlock(),createElementBlock(`div`,_hoisted_3,[createVNode(MazIcon_default,{icon:getIconComponent(file),size:`lg`,class:`m-dropzone__file-icon`},null,8,[`icon`])]))]),_:2},1024)]),createElementVNode(`div`,_hoisted_4,[createElementVNode(`div`,_hoisted_5,[createElementVNode(`span`,_hoisted_6,toDisplayString(file.name),1),createElementVNode(`span`,_hoisted_7,toDisplayString(file.sizeInMb)+` MB`,1)]),!file.uploading&&!file.success?(openBlock(),createBlock(MazBtn_default,mergeProps({key:0,size:`xs`,icon:unref(MazTrash),disabled:__props.disabled,color:`destructive`,pastel:``},{ref_for:!0},__props.removeFileBtnProps,{onClick:withModifiers($event=>handleFileRemove(file),[`prevent`])}),null,16,[`icon`,`disabled`,`onClick`])):createCommentVNode(``,!0)])],!0)]))),128))]),_:3})],!0),filesData.value.length===0&&selectAreaCanBeDisplayed.value?renderSlot(_ctx.$slots,`no-files-area`,{key:0,selectFile:handleFileInputClick},()=>[createElementVNode(`div`,_hoisted_8,[renderSlot(_ctx.$slots,`upload-icon`,{},()=>[createVNode(unref(MazArrowUpOnSquare),{class:`m-dropzone__upload-icon`})],!0),createElementVNode(`span`,_hoisted_9,[createTextVNode(toDisplayString(messages.value.dragAndDrop)+` `+toDisplayString(messages.value.divider)+` `,1),createVNode(MazLink_default,{color:`inherit`,underline:``,onClick:_cache[3]||=withModifiers($event=>!__props.disabled&&handleFileInputClick(),[`prevent`])},{default:withCtx(()=>[createTextVNode(toDisplayString(messages.value.selectFile),1)]),_:1})])]),!allFileIsAccepted.value&&(messages.value.fileMaxCount||messages.value.fileMaxSize||messages.value.fileTypes)?(openBlock(),createElementBlock(`p`,_hoisted_10,[messages.value.fileMaxCount?(openBlock(),createElementBlock(`span`,_hoisted_11,toDisplayString(messages.value.fileMaxCount),1)):createCommentVNode(``,!0),messages.value.fileMaxSize?(openBlock(),createElementBlock(`span`,_hoisted_12,toDisplayString(messages.value.fileMaxSize),1)):createCommentVNode(``,!0),messages.value.fileTypes?(openBlock(),createElementBlock(`span`,_hoisted_13,toDisplayString(messages.value.fileTypes),1)):createCommentVNode(``,!0)])):createCommentVNode(``,!0)],!0):createCommentVNode(``,!0),createElementVNode(`input`,{id:`input-file-uploader-${unref(instanceId)}`,ref_key:`fileInput`,ref:fileInput,multiple:hasMultiple.value,type:`file`,accept:__props.dataTypes?.join(`,`),tabindex:`-1`,disabled:__props.disabled,class:`m-dropzone__file-input`,onChange:handleFileUpload},null,40,_hoisted_14)],14,_hoisted_1))}}),[[`__scopeId`,`data-v-7a36205a`]]);export{MazDropzone_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as MazSpinner_default}from"./MazSpinner.
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as MazSpinner_default}from"./MazSpinner.PD7Xh3sG.js";import{Teleport,createBlock,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineComponent,mergeProps,onMounted,onUnmounted,openBlock,renderSlot}from"vue";import '../assets/MazFullscreenLoader.BzVX-jFd.css';var _hoisted_1={key:0};var MazFullscreenLoader_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazFullscreenLoader`,props:{color:{default:`primary`},size:{default:`3em`},teleportSelector:{default:`body`}},setup(__props){function addClassToDocument(){document.documentElement.classList.add(`--maz-fullscreen-loader-present`)}function removeClassFromDocument(){document.documentElement.classList.remove(`--maz-fullscreen-loader-present`)}return onMounted(()=>{addClassToDocument()}),onUnmounted(()=>{removeClassFromDocument()}),(_ctx,_cache)=>(openBlock(),createBlock(Teleport,{to:__props.teleportSelector},[createElementVNode(`div`,mergeProps({class:`m-fullscreen-loader m-reset-css`},_ctx.$attrs),[createVNode(MazSpinner_default,{color:__props.color,size:__props.size},null,8,[`color`,`size`]),_ctx.$slots.default?(openBlock(),createElementBlock(`span`,_hoisted_1,[renderSlot(_ctx.$slots,`default`,{},void 0,!0)])):createCommentVNode(``,!0)],16)],8,[`to`]))}}),[[`__scopeId`,`data-v-62bb4284`]]);export{MazFullscreenLoader_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{n as directive}from"./vLazyImg.
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{n as directive}from"./vLazyImg.DnJQAVAF.js";import{n as directive$1}from"./vFullscreenImg.DID1pEZr.js";import{Fragment,computed,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineComponent,normalizeClass,normalizeStyle,onBeforeMount,openBlock,renderList,toDisplayString,unref,withDirectives}from"vue";import{MazNoImage}from"@maz-ui/icons/lazy/MazNoImage";import '../assets/MazGallery.DMolLXB6.css';var _hoisted_1={class:`m-gallery__wrapper maz-flex maz-flex-1`};var _hoisted_2=[`alt`];var _hoisted_3={key:0,class:`m-gallery__remaining-layer`};var MazGallery_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazGallery`,props:{images:{default:()=>[]},displayedCount:{default:5},remaining:{type:Boolean,default:!0},height:{type:[Number,String,Boolean],default:`100%`},width:{type:[Number,String,Boolean],default:`100%`},radius:{type:Boolean,default:!0},zoom:{type:Boolean,default:!0},hasEmptyLayer:{type:Boolean,default:!0},lazy:{type:Boolean,default:!0},blur:{type:Boolean,default:!0},scale:{type:Boolean,default:!0},separatorColor:{default:`transparent`},backgroundColor:{default:()=>void 0}},setup(__props){onBeforeMount(()=>{__props.displayedCount>5&&console.warn(`[MazUI](m-gallery) The maximum of "displayed-count" is 5`)});let sizeStyle=computed(()=>({...__props.width===!1?{}:{flex:`0 0 ${typeof __props.width}`==`number`?`${__props.width}px`:__props.width,width:typeof __props.width==`number`?`${__props.width}px`:__props.width},...__props.height===!1?{}:{height:typeof __props.height==`number`?`${__props.height}px`:`${__props.height}`,minHeight:typeof __props.height==`number`?`${__props.height}px`:`${__props.height}`}}));let imagesCount=computed(()=>__props.displayedCount<=5?__props.displayedCount:5);let numberImagesRemaining=computed(()=>__props.images.length-(__props.images.length<imagesCount.value?__props.images.length:imagesCount.value));let imagesNormalized=computed(()=>__props.images.map(image=>typeof image==`object`?{...image,thumbnail:image.thumbnail??image.src}:{src:image,thumbnail:image,alt:void 0}));let imagesShown=computed(()=>imagesNormalized.value.slice(0,imagesCount.value));let imagesHidden=computed(()=>imagesNormalized.value.slice(imagesCount.value,__props.images.length));function shouldHaveRemainingLayer(index){return __props.remaining?(numberImagesRemaining.value&&index+1)===imagesShown.value.length:!1}return(_ctx,_cache)=>__props.images.length>0||__props.hasEmptyLayer?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`m-gallery m-reset-css`,{"--radius":__props.radius,"--has-background-color":!!__props.backgroundColor}]),style:normalizeStyle([sizeStyle.value,{"--gallery-separator-color":__props.separatorColor,"--gallery-background-color":__props.backgroundColor}])},[createElementVNode(`section`,_hoisted_1,[(openBlock(!0),createElementBlock(Fragment,null,renderList(imagesShown.value,(image,i)=>(openBlock(),createElementBlock(`figure`,{key:i,class:normalizeClass([`m-gallery__item !maz-my-0 maz-flex maz-flex-center`,[`m-gallery__item--${i+1}`]])},[withDirectives(createElementVNode(`img`,{class:`m-gallery__item__image maz-flex-1`,src:`data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7`,alt:image.alt,loading:`lazy`},null,8,_hoisted_2),[[unref(directive),{src:image.thumbnail,disabled:!__props.lazy},`bg-image`],[unref(directive$1),{src:image.src,alt:image.alt,disabled:!__props.zoom||shouldHaveRemainingLayer(i),blurOnHover:__props.blur,scaleOnHover:__props.scale}]]),shouldHaveRemainingLayer(i)?withDirectives((openBlock(),createElementBlock(`div`,_hoisted_3,[createElementVNode(`span`,null,`+`+toDisplayString(numberImagesRemaining.value),1)])),[[unref(directive$1),{src:image.src,alt:image.alt,disabled:!__props.zoom,blurOnHover:!1,scaleOnHover:__props.scale}]]):createCommentVNode(``,!0)],2))),128)),__props.hasEmptyLayer&&__props.images.length===0?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`m-gallery__empty-layer`,{"maz-rounded-xl":__props.radius}]),style:normalizeStyle([sizeStyle.value])},[createVNode(unref(MazNoImage),{class:`maz-size-8`})],6)):createCommentVNode(``,!0)]),(openBlock(!0),createElementBlock(Fragment,null,renderList(imagesHidden.value,(image,i)=>withDirectives((openBlock(),createElementBlock(`div`,{key:i,class:`m-gallery__hidden`})),[[unref(directive$1),{src:image.src,disabled:!__props.zoom}]])),128))],6)):createCommentVNode(``,!0)}}),[[`__scopeId`,`data-v-11cd1618`]]);export{MazGallery_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineAsyncComponent,defineComponent,mergeProps,normalizeClass,normalizeStyle,onMounted,openBlock,ref,renderSlot,resolveDynamicComponent,toDisplayString,toHandlers,unref,useSlots,vModelDynamic,withCtx,withDirectives,withModifiers}from"vue";import{debounce}from"@maz-ui/utils/helpers/debounce";import{MazEye}from"@maz-ui/icons/lazy/MazEye";import{MazEyeSlash}from"@maz-ui/icons/lazy/MazEyeSlash";import '../assets/MazInput.2qQaFY0l.css';var _hoisted_1=[`for`];var _hoisted_2={key:0,class:`m-input-wrapper-left`};var _hoisted_3=[`id`,`placeholder`,`aria-label`,`type`,`inputmode`,`name`,`autocomplete`,`disabled`,`readonly`,`required`];var _hoisted_4={key:1,class:`m-input-wrapper-right`};var MazInput_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazInput`,props:{style:{type:[Boolean,null,String,Object,Array],default:void 0},class:{type:[Boolean,null,String,Object,Array],default:void 0},modelValue:{default:void 0},placeholder:{default:void 0},label:{default:void 0},topLabel:{},assistiveText:{},color:{default:`primary`},type:{default:`text`},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean},id:{default:void 0},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},warning:{type:Boolean,default:!1},hint:{default:void 0},inputClasses:{default:void 0},border:{type:Boolean,default:!0},inputmode:{default:`text`},size:{default:`md`},debounce:{type:[Boolean,Number],default:!1},autoFocus:{type:Boolean,default:!1},borderActive:{type:Boolean,default:!1},leftIcon:{type:[String,Function,Object],default:void 0},rightIcon:{type:[String,Function,Object],default:void 0},roundedSize:{default:`lg`},block:{type:Boolean},name:{},autocomplete:{},loading:{type:Boolean,default:!1}},emits:[`update:model-value`,`focus`,`blur`,`click`,`change`,`input`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let MazIcon=defineAsyncComponent(()=>import(`../components/MazIcon.js`));let MazBtn=defineAsyncComponent(()=>import(`../components/MazBtn.js`));let MazSpinner=defineAsyncComponent(()=>import(`../components/MazSpinner.js`));let hasPasswordVisible=ref(!1);let isFocused=ref(!1);let input=ref();let instanceId=useInstanceUniqId({componentName:`MazInput`,providedId:props.id});onMounted(()=>{props.autoFocus&&input.value?.focus()});let isPasswordType=computed(()=>props.type===`password`);let inputType=computed(()=>hasPasswordVisible.value?`text`:props.type);let borderStyle=computed(()=>{if(props.border){if(props.error&&!isFocused.value)return`maz-border-destructive`;if(props.success&&!isFocused.value)return`maz-border-success`;if(props.warning&&!isFocused.value)return`maz-border-warning`;if(isFocused.value||props.borderActive){if(props.color===`destructive`)return`maz-border-destructive`;if(props.color===`info`)return`maz-border-info`;if(props.color===`primary`)return`maz-border-primary`;if(props.color===`secondary`)return`maz-border-secondary`;if(props.color===`success`)return`maz-border-success`;if(props.color===`warning`)return`maz-border-warning`;if(props.color===`accent`)return`maz-border-accent`;if(props.color===`contrast`)return`maz-border-contrast`}return`--default-border`}});let slots=useSlots();let debounceEmitValue=debounce(value=>{emits(`update:model-value`,value)},typeof props.debounce==`number`?props.debounce:500);function emitValue(value){if(props.debounce)return debounceEmitValue(value);emits(`update:model-value`,value)}let model=computed({get:()=>props.modelValue,set:value=>emitValue(value)});let hasValue=computed(()=>model.value!==void 0&&model.value!==``);let shouldUp=computed(()=>(!!props.label||!!props.hint)&&(!!hasValue.value||!!props.placeholder||[`date`,`month`,`week`].includes(props.type)));let hasLabel=computed(()=>!!props.label||!!props.hint);function hasRightPart(){return!!slots[`right-icon`]||isPasswordType.value||!!props.rightIcon||props.loading}function hasLeftPart(){return!!slots[`left-icon`]||!!props.leftIcon}function focus(event){emits(`focus`,event),isFocused.value=!0}function blur(event){emits(`blur`,event),isFocused.value=!1}function change(event){return emits(`change`,event)}function emitInputEvent(event){return emits(`input`,event)}let stateColor=computed(()=>{if(props.error)return`!maz-text-destructive-600`;if(props.success)return`!maz-text-success-600`;if(props.warning)return`!maz-text-warning-600`});return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`m-input m-reset-css`,[{"--is-focused":isFocused.value||__props.borderActive,"--should-up":shouldUp.value,"--has-label":hasLabel.value,"--is-readonly":__props.readonly,"--has-z-2":__props.error||__props.warning||__props.success,"--has-state":__props.error||__props.warning||__props.success,"--block":__props.block},props.class,`--${__props.color}`]]),style:normalizeStyle([__props.style,{"--maz-input-color":`hsl(var(--maz-${__props.color}-100))`}])},[__props.topLabel?(openBlock(),createElementBlock(`label`,{key:0,for:unref(instanceId),class:normalizeClass([`m-input-top-label`,stateColor.value])},toDisplayString(__props.topLabel),11,_hoisted_1)):createCommentVNode(``,!0),createElementVNode(`div`,{class:normalizeClass([`m-input-wrapper`,[__props.inputClasses,borderStyle.value,`--rounded-${__props.roundedSize}`,{"--block":__props.block,"--border":__props.border}]])},[hasLeftPart()?(openBlock(),createElementBlock(`div`,_hoisted_2,[_ctx.$slots[`left-icon`]||__props.leftIcon?renderSlot(_ctx.$slots,`left-icon`,{key:0},()=>[typeof __props.leftIcon==`string`?(openBlock(),createBlock(unref(MazIcon),{key:0,name:__props.leftIcon,class:normalizeClass([`maz-text-xl`,stateColor.value||`maz-text-muted`])},null,8,[`name`,`class`])):__props.leftIcon?(openBlock(),createBlock(resolveDynamicComponent(__props.leftIcon),{key:1,class:normalizeClass([`maz-text-xl`,stateColor.value||`maz-text-muted`])},null,8,[`class`])):createCommentVNode(``,!0)],!0):createCommentVNode(``,!0)])):createCommentVNode(``,!0),createElementVNode(`div`,{class:normalizeClass([`m-input-wrapper-input`,[`--${__props.size}`,{"--top-label":!!__props.topLabel,"--has-left-icon":hasLeftPart(),"--has-right-icon":hasRightPart()}]])},[withDirectives(createElementVNode(`input`,mergeProps({id:unref(instanceId)},_ctx.$attrs,{ref_key:`input`,ref:input,"onUpdate:modelValue":_cache[0]||=$event=>model.value=$event,placeholder:__props.placeholder,"aria-label":__props.label||__props.placeholder,type:inputType.value,inputmode:__props.inputmode,name:__props.name,autocomplete:__props.autocomplete,disabled:__props.disabled,readonly:__props.readonly,required:__props.required,class:`m-input-input`},toHandlers({blur,focus,change,input:emitInputEvent},!0),{onClick:_cache[1]||=$event=>_ctx.$emit(`click`,$event)}),null,16,_hoisted_3),[[vModelDynamic,model.value]]),__props.label||__props.hint?(openBlock(),createElementBlock(`span`,{key:0,class:normalizeClass([`m-input-label`,stateColor.value])},toDisplayString(__props.hint||__props.label),3)):createCommentVNode(``,!0)],2),hasRightPart()?(openBlock(),createElementBlock(`div`,_hoisted_4,[_ctx.$slots[`right-icon`]||__props.rightIcon?renderSlot(_ctx.$slots,`right-icon`,{key:0},()=>[typeof __props.rightIcon==`string`?(openBlock(),createBlock(unref(MazIcon),{key:0,name:__props.rightIcon,class:normalizeClass([`maz-text-xl`,stateColor.value||`maz-text-muted`])},null,8,[`name`,`class`])):__props.rightIcon?(openBlock(),createBlock(resolveDynamicComponent(__props.rightIcon),{key:1,class:normalizeClass([`maz-text-xl`,stateColor.value||`maz-text-muted`])},null,8,[`class`])):createCommentVNode(``,!0)],!0):createCommentVNode(``,!0),isPasswordType.value?(openBlock(),createBlock(unref(MazBtn),{key:1,color:`transparent`,tabindex:`-1`,size:`mini`,onClick:_cache[2]||=withModifiers($event=>hasPasswordVisible.value=!hasPasswordVisible.value,[`stop`])},{default:withCtx(()=>[hasPasswordVisible.value?(openBlock(),createBlock(unref(MazEyeSlash),{key:0,class:`maz-text-xl maz-text-muted`})):(openBlock(),createBlock(unref(MazEye),{key:1,class:`maz-text-xl maz-text-muted`}))]),_:1})):createCommentVNode(``,!0),__props.loading?renderSlot(_ctx.$slots,`loader`,{key:2},()=>[createVNode(unref(MazSpinner),{color:__props.color},null,8,[`color`])],!0):createCommentVNode(``,!0)])):createCommentVNode(``,!0)],2),__props.assistiveText?(openBlock(),createElementBlock(`div`,{key:1,class:normalizeClass([`m-input-bottom-text`,[{"maz-text-destructive-600":__props.error,"maz-text-success-600":__props.success,"maz-text-warning-600":__props.warning,"maz-text-muted":!__props.error&&!__props.success&&!__props.warning}]])},toDisplayString(__props.assistiveText),3)):createCommentVNode(``,!0)],6))}}),[[`__scopeId`,`data-v-a190b9d9`]]);export{MazInput_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as MazInput_default}from"./MazInput.C2gyftm8.js";import{computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineAsyncComponent,defineComponent,mergeProps,normalizeClass,normalizeStyle,openBlock,toDisplayString,unref,withCtx,withKeys,withModifiers}from"vue";import{throttle}from"@maz-ui/utils/helpers/throttle";import{MazMinus}from"@maz-ui/icons/static/MazMinus";import{MazPlus}from"@maz-ui/icons/static/MazPlus";import '../assets/MazInputNumber.DUZcdtem.css';var _hoisted_1=[`for`];var _hoisted_2={class:`m-input-number__wrapper`};var MazInputNumber_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazInputNumber`,props:{id:{default:()=>void 0},style:{type:[Boolean,null,String,Object,Array],default:()=>void 0},class:{type:[Boolean,null,String,Object,Array],default:()=>void 0},modelValue:{default:()=>void 0},disabled:{type:Boolean,default:!1},max:{default:()=>1/0},min:{default:()=>-1/0},step:{default:1},size:{default:`md`},hideButtons:{type:Boolean},textCenter:{type:Boolean,default:!0},inputmode:{default:`numeric`},block:{type:Boolean},error:{type:Boolean,default:!1},hint:{},success:{type:Boolean,default:!1},warning:{type:Boolean,default:!1},inputProps:{},topLabel:{default:()=>void 0}},emits:[`update:model-value`,`focus`,`blur`,`click`,`change`],setup(__props,{emit:__emit}){let emits=__emit;let instanceId=useInstanceUniqId({componentName:`MazInput`,providedId:__props.id});let MazBtn=defineAsyncComponent(()=>import(`../components/MazBtn.js`));let currentValue=computed({get:()=>__props.modelValue,set:value=>emitValue(value)});function findClosestStep(number){return Math.round(number/__props.step)*__props.step}function checkValue(value){if(typeof value==`number`)return value<=__props.min?__props.min:value>=__props.max?__props.max:findClosestStep(value)}let emitThrottled=throttle(value=>emitValue(value),300);function emitValue(newValue){newValue=checkValue(newValue),currentValue.value!==newValue&&emits(`update:model-value`,newValue)}emitValue(currentValue.value);let incrementDisabled=computed(()=>__props.modelValue&&__props.modelValue>=__props.max);let decrementDisabled=computed(()=>__props.modelValue&&__props.modelValue<=__props.min);function increment(){if(!(__props.disabled||incrementDisabled.value)){if((currentValue.value===void 0||currentValue.value===null)&&Number.isFinite(__props.min)){currentValue.value=__props.min;return}currentValue.value=(currentValue.value??0)+1*__props.step}}function decrement(){if(!(__props.disabled||decrementDisabled.value)){if((currentValue.value===void 0||currentValue.value===null)&&Number.isFinite(__props.min)){currentValue.value=__props.min;return}currentValue.value=(currentValue.value??0)-1*__props.step}}let stateColor=computed(()=>{if(__props.error)return`!maz-text-destructive-600`;if(__props.success)return`!maz-text-success-600`;if(__props.warning)return`!maz-text-warning-600`});return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`m-input-number m-reset-css`,[`m-input-number--${__props.size}`,__props.class,{"--block":__props.block}]]),style:normalizeStyle(__props.style)},[__props.topLabel?(openBlock(),createElementBlock(`label`,{key:0,for:unref(instanceId),class:normalizeClass([`m-input-number__top-label`,stateColor.value])},toDisplayString(__props.topLabel),11,_hoisted_1)):createCommentVNode(``,!0),createElementVNode(`div`,_hoisted_2,[__props.hideButtons?createCommentVNode(``,!0):(openBlock(),createBlock(unref(MazBtn),{key:0,color:`transparent`,size:__props.size,class:`m-input-number__button m-input-number__decrement-button`,disabled:decrementDisabled.value||__props.disabled,onClick:decrement},{default:withCtx(()=>[createVNode(unref(MazMinus),{class:`m-input-number__button__icon`})]),_:1},8,[`size`,`disabled`])),createVNode(MazInput_default,mergeProps({..._ctx.$attrs,...__props.inputProps},{id:unref(instanceId),"model-value":currentValue.value,type:`number`,class:[`m-input-number__input`,{"--no-buttons":__props.hideButtons,"--text-center":__props.textCenter}],disabled:__props.disabled,min:__props.min,max:__props.max,step:__props.step,error:__props.error,success:__props.success,warning:__props.warning,hint:__props.hint,inputmode:__props.inputmode,size:__props.size,block:``,onKeydown:[withKeys(withModifiers(increment,[`prevent`]),[`up`]),withKeys(withModifiers(decrement,[`prevent`]),[`down`])],onFocus:_cache[0]||=$event=>_ctx.$emit(`focus`,$event),onChange:_cache[1]||=$event=>_ctx.$emit(`change`,$event),onBlur:_cache[2]||=$event=>_ctx.$emit(`blur`,$event),onClick:_cache[3]||=$event=>_ctx.$emit(`click`,$event),"onUpdate:modelValue":_cache[4]||=$event=>unref(emitThrottled)($event)}),null,16,[`id`,`model-value`,`class`,`disabled`,`min`,`max`,`step`,`error`,`success`,`warning`,`hint`,`inputmode`,`size`,`onKeydown`]),__props.hideButtons?createCommentVNode(``,!0):(openBlock(),createBlock(unref(MazBtn),{key:1,color:`transparent`,size:__props.size,class:`m-input-number__button m-input-number__increment-button`,disabled:incrementDisabled.value||__props.disabled,onClick:increment},{default:withCtx(()=>[createVNode(unref(MazPlus),{class:`m-input-number__button__icon`})]),_:1},8,[`size`,`disabled`]))])],6))}}),[[`__scopeId`,`data-v-770e9b23`]]);export{MazInputNumber_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{n as useLibphonenumber,t as useMazInputPhoneNumber}from"./useMazInputPhoneNumber.B_qQ0ldP.js";import{computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineAsyncComponent,defineComponent,mergeProps,nextTick,normalizeClass,normalizeStyle,onBeforeMount,onMounted,openBlock,provide,ref,renderSlot,toDisplayString,unref,watch,withCtx}from"vue";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import '../assets/MazInputPhoneNumber.CW4VVpBq.css';var _hoisted_1=[`id`];var _hoisted_2={class:`m-input-phone-number__country-list-code`};var MazInputPhoneNumber_default=_plugin_vue_export_helper_default(defineComponent({name:`MazInputPhoneNumber`,inheritAttrs:!1,__name:`MazInputPhoneNumber`,props:{style:{type:[Boolean,null,String,Object,Array]},class:{type:[Boolean,null,String,Object,Array]},modelValue:{},countryCode:{},id:{},placeholder:{},label:{},preferredCountries:{},ignoredCountries:{},onlyCountries:{},translations:{},listPosition:{default:`bottom-start`},color:{default:`primary`},size:{default:`md`},hideFlags:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},example:{type:Boolean,default:!0},search:{type:Boolean,default:!0},searchThreshold:{default:.75},useBrowserLocale:{type:Boolean,default:!0},fetchCountry:{type:Boolean},hideCountrySelect:{type:Boolean,default:!1},showCodeInList:{type:Boolean,default:!1},customCountriesList:{default:void 0},autoFormat:{type:[String,Boolean],default:`blur`},countryLocale:{default:void 0},validationError:{type:Boolean,default:!0},validationSuccess:{type:Boolean,default:!0},success:{type:Boolean},error:{type:Boolean},displayCountryName:{type:Boolean,default:!1},block:{type:Boolean},orientation:{default:`responsive`},countrySelectAttributes:{default:()=>({name:`country`,autocomplete:`off`,style:{width:`14rem`}})},phoneInputAttributes:{default:()=>({name:`phone`,autocomplete:`tel`,inputmode:`tel`})}},emits:[`update:model-value`,`country-code`,`update:country-code`,`data`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let MazSelectCountry=defineAsyncComponent(()=>import(`../components/MazSelectCountry.js`));let PhoneInput=defineAsyncComponent(()=>import(`../components/MazInputPhoneNumber/PhoneInput.js`));let{fetchCountryCode,getBrowserLocale,getCountryList}=useMazInputPhoneNumber();let{isCountryAvailable,getPhoneNumberResults}=useLibphonenumber();let instanceId=useInstanceUniqId({componentName:`MazInputPhoneNumber`,providedId:props.id});let phoneNumber=ref();let selectedCountry=ref();let{t}=useTranslations();let messages=computed(()=>({countrySelect:{error:props.translations?.countrySelect?.error||t(`inputPhoneNumber.countrySelect.error`),placeholder:props.translations?.countrySelect?.placeholder||t(`inputPhoneNumber.countrySelect.placeholder`),searchPlaceholder:props.translations?.countrySelect?.searchPlaceholder||t(`inputPhoneNumber.countrySelect.searchPlaceholder`)},phoneInput:{placeholder:props.translations?.phoneInput?.placeholder||t(`inputPhoneNumber.phoneInput.placeholder`),example:props.translations?.phoneInput?.example}}));let isPhoneNumberInternalUpdate=ref(!1);let isCountryInternalUpdate=ref(!1);let results=ref({isValid:!1,countryCode:props.countryCode,phoneNumber:props.modelValue});let PhoneInputRef=ref();onBeforeMount(async()=>{if(props.countryCode&&!selectedCountry.value&&onCountryChanged({countryCode:props.countryCode}),props.fetchCountry&&!selectedCountry.value){let{data:countryCode,error}=await fetchCountryCode();if(error){console.error(`[MazInputPhoneNumber](onBeforeMount) Error while fetching country code - ${error.message}`);return}onCountryChanged({countryCode})}}),onMounted(()=>{if(!selectedCountry.value&&props.useBrowserLocale){let countryCode=getBrowserLocale()?.locale;countryCode&&isCountryAvailable(countryCode)&&onCountryChanged({countryCode})}});function updateTheResults({phone=phoneNumber.value||props.modelValue,countryCode=selectedCountry.value,checkCountryCode=!1}){results.value=getPhoneNumberResults({phoneNumber:phone,countryCode,checkCountryCode})}async function selectPhoneNumberInput(){await nextTick(),setTimeout(()=>{PhoneInputRef.value?.focus()},100)}function setSelectedCountry(countryCode){if(countryCode){if(!isCountryAvailable(countryCode)){console.warn(`[MazInputPhoneNumber] Country code not available: "${countryCode}"`),selectedCountry.value=void 0;return}selectedCountry.value=countryCode}}let isLetterRegex=/\D/g;function onPhoneNumberChanged({newPhoneNumber}){updateTheResults({phone:newPhoneNumber}),results.value.parsedCountryCode&&results.value.parsedCountryCode!==selectedCountry.value&&onCountryChanged({countryCode:results.value.parsedCountryCode,updateResults:!1}),results.value.isValid&&(props.autoFormat===`blur`||props.autoFormat===`typing`)?phoneNumber.value=results.value.formatNational?.trim().replaceAll(isLetterRegex,``):phoneNumber.value=newPhoneNumber,isPhoneNumberInternalUpdate.value=!0,results.value.e164?emits(`update:model-value`,results.value.e164):emits(`update:model-value`,results.value.phoneNumber),setTimeout(()=>{isPhoneNumberInternalUpdate.value=!1},0)}function onCountryChanged({countryCode,updateResults=!0,selectPhoneNumber=!1}){if(!countryCode){selectedCountry.value=void 0;return}isCountryInternalUpdate.value=!0,countryCode!==selectedCountry.value&&setSelectedCountry(countryCode),updateResults&&updateTheResults({countryCode:selectedCountry.value,checkCountryCode:!0});let code=selectedCountry.value;emits(`country-code`,code),emits(`update:country-code`,code),selectPhoneNumber&&!results.value.isValid&&selectPhoneNumberInput(),setTimeout(()=>{isCountryInternalUpdate.value=!1},0)}let countriesList=computed(()=>{let list=getCountryList(props.countryLocale,props.customCountriesList);return props.onlyCountries&&(list=list?.filter(country=>props.onlyCountries?.includes(country.code))),props.ignoredCountries&&(list=list?.filter(country=>!props.ignoredCountries?.includes(country.code))),props.preferredCountries&&(list=list?.sort((a,b)=>{let indexA=props.preferredCountries?.indexOf(a.code)??-1;let indexB=props.preferredCountries?.indexOf(b.code)??-1;return indexA>=0&&indexB>=0?indexA-indexB:indexA>=0?-1:indexB>=0?1:0})),list??[]});return watch(()=>props.modelValue,(value,oldValue)=>{!isPhoneNumberInternalUpdate.value&&value!==oldValue&&value!==phoneNumber.value&&onPhoneNumberChanged({newPhoneNumber:value})},{immediate:!0}),watch(()=>props.countryCode,(value,oldValue)=>{!isCountryInternalUpdate.value&&value&&value!==oldValue&&value!==selectedCountry.value&&onCountryChanged({countryCode:value})},{immediate:!0}),watch(results,value=>emits(`data`,value),{immediate:!0}),provide(`mazInputPhoneNumberData`,{selectedCountry,phoneNumber,results}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{id:unref(instanceId),class:normalizeClass([`m-input-phone-number m-reset-css`,[props.class,{"--block":__props.block},__props.orientation?`--${__props.orientation}`:void 0]]),style:normalizeStyle(__props.style)},[__props.hideCountrySelect?createCommentVNode(``,!0):(openBlock(),createBlock(unref(MazSelectCountry),mergeProps({key:0,id:`${unref(instanceId)}-country`,class:`m-input-phone-number__country-select`},__props.countrySelectAttributes,{"model-value":selectedCountry.value,"option-input-value-key":__props.displayCountryName?`name`:`dialCode`,color:__props.color,size:__props.size,locale:__props.countryLocale,"countries-list":__props.customCountriesList,"list-position":__props.listPosition,"hide-flags":__props.hideFlags,search:__props.search,block:__props.block,error:__props.error||(__props.validationError?!!phoneNumber.value&&!selectedCountry.value:!1),success:__props.success||(__props.validationSuccess?results.value?.isValid:!1),translations:messages.value.countrySelect,hint:phoneNumber.value&&!selectedCountry.value?messages.value.countrySelect.error:void 0,options:countriesList.value,disabled:__props.disabled,required:__props.required,"search-threshold":__props.searchThreshold,"format-input-value":__props.displayCountryName||!selectedCountry.value?void 0:value=>`+${value}`,"show-code-in-list":__props.showCodeInList,label:messages.value.countrySelect.placeholder,"onUpdate:modelValue":_cache[0]||=$event=>onCountryChanged({countryCode:$event,selectPhoneNumber:!0})}),{"no-results":withCtx(()=>[renderSlot(_ctx.$slots,`no-results`,{},void 0,!0)]),"selector-flag":withCtx(({countryCode:codeCountry})=>[renderSlot(_ctx.$slots,`selector-flag`,{countryCode:codeCountry},void 0,!0)]),"country-list-flag":withCtx(({isSelected,option})=>[renderSlot(_ctx.$slots,`country-list-flag`,{countryCode:option.code,option,isSelected},void 0,!0)]),"country-list-code":withCtx(({option})=>[createElementVNode(`span`,_hoisted_2,` +`+toDisplayString(option.dialCode),1)]),_:3},16,[`id`,`model-value`,`option-input-value-key`,`color`,`size`,`locale`,`countries-list`,`list-position`,`hide-flags`,`search`,`block`,`error`,`success`,`translations`,`hint`,`options`,`disabled`,`required`,`search-threshold`,`format-input-value`,`show-code-in-list`,`label`])),createVNode(unref(PhoneInput),mergeProps({id:`${unref(instanceId)}-phone`,ref_key:`PhoneInputRef`,ref:PhoneInputRef,class:`m-input-phone-number__phone-input`,"model-value":phoneNumber.value},{..._ctx.$attrs,...__props.phoneInputAttributes},{color:__props.color,size:__props.size,"auto-format":__props.autoFormat,example:__props.example,block:``,disabled:__props.disabled,required:__props.required,name:__props.phoneInputAttributes.name,"has-radius":!__props.hideCountrySelect,success:__props.success||(__props.validationSuccess?results.value.isValid:!1),error:__props.error||(__props.validationError?!!phoneNumber.value&&!results.value.isValid:!1),locales:messages.value.phoneInput,label:__props.label,placeholder:__props.placeholder,"onUpdate:modelValue":_cache[1]||=$event=>onPhoneNumberChanged({newPhoneNumber:$event})}),null,16,[`id`,`model-value`,`color`,`size`,`auto-format`,`example`,`disabled`,`required`,`name`,`has-radius`,`success`,`error`,`locales`,`label`,`placeholder`])],14,_hoisted_1))}}),[[`__scopeId`,`data-v-cc259039`]]);export{MazInputPhoneNumber_default as t};
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{n as useLibphonenumber,t as useMazInputPhoneNumber}from"./useMazInputPhoneNumber.D0iOm44I.js";import{computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineAsyncComponent,defineComponent,mergeProps,nextTick,normalizeClass,normalizeStyle,onBeforeMount,onMounted,openBlock,provide,ref,renderSlot,toDisplayString,unref,watch,withCtx}from"vue";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import '../assets/MazInputPhoneNumber.CW4VVpBq.css';var _hoisted_1=[`id`];var _hoisted_2={class:`m-input-phone-number__country-list-code`};var MazInputPhoneNumber_default=_plugin_vue_export_helper_default(defineComponent({name:`MazInputPhoneNumber`,inheritAttrs:!1,__name:`MazInputPhoneNumber`,props:{style:{type:[Boolean,null,String,Object,Array]},class:{type:[Boolean,null,String,Object,Array]},modelValue:{},countryCode:{},id:{},placeholder:{},label:{},preferredCountries:{},ignoredCountries:{},onlyCountries:{},translations:{},listPosition:{default:`bottom-start`},color:{default:`primary`},size:{default:`md`},hideFlags:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},example:{type:Boolean,default:!0},search:{type:Boolean,default:!0},searchThreshold:{default:.75},useBrowserLocale:{type:Boolean,default:!0},fetchCountry:{type:Boolean},hideCountrySelect:{type:Boolean,default:!1},showCodeInList:{type:Boolean,default:!1},customCountriesList:{default:void 0},autoFormat:{type:[String,Boolean],default:`blur`},countryLocale:{default:void 0},validationError:{type:Boolean,default:!0},validationSuccess:{type:Boolean,default:!0},success:{type:Boolean},error:{type:Boolean},displayCountryName:{type:Boolean,default:!1},block:{type:Boolean},orientation:{default:`responsive`},countrySelectAttributes:{default:()=>({name:`country`,autocomplete:`off`,style:{width:`14rem`}})},phoneInputAttributes:{default:()=>({name:`phone`,autocomplete:`tel`,inputmode:`tel`})}},emits:[`update:model-value`,`country-code`,`update:country-code`,`data`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let MazSelectCountry=defineAsyncComponent(()=>import(`../components/MazSelectCountry.js`));let PhoneInput=defineAsyncComponent(()=>import(`../components/MazInputPhoneNumber/PhoneInput.js`));let{fetchCountryCode,getBrowserLocale,getCountryList}=useMazInputPhoneNumber();let{isCountryAvailable,getPhoneNumberResults}=useLibphonenumber();let instanceId=useInstanceUniqId({componentName:`MazInputPhoneNumber`,providedId:props.id});let phoneNumber=ref();let selectedCountry=ref();let{t}=useTranslations();let messages=computed(()=>({countrySelect:{error:props.translations?.countrySelect?.error||t(`inputPhoneNumber.countrySelect.error`),placeholder:props.translations?.countrySelect?.placeholder||t(`inputPhoneNumber.countrySelect.placeholder`),searchPlaceholder:props.translations?.countrySelect?.searchPlaceholder||t(`inputPhoneNumber.countrySelect.searchPlaceholder`)},phoneInput:{placeholder:props.translations?.phoneInput?.placeholder||t(`inputPhoneNumber.phoneInput.placeholder`),example:props.translations?.phoneInput?.example}}));let isPhoneNumberInternalUpdate=ref(!1);let isCountryInternalUpdate=ref(!1);let results=ref({isValid:!1,countryCode:props.countryCode,phoneNumber:props.modelValue});let PhoneInputRef=ref();onBeforeMount(async()=>{if(props.countryCode&&!selectedCountry.value&&onCountryChanged({countryCode:props.countryCode}),props.fetchCountry&&!selectedCountry.value){let{data:countryCode,error}=await fetchCountryCode();if(error){console.error(`[MazInputPhoneNumber](onBeforeMount) Error while fetching country code - ${error.message}`);return}onCountryChanged({countryCode})}}),onMounted(()=>{if(!selectedCountry.value&&props.useBrowserLocale){let countryCode=getBrowserLocale()?.locale;countryCode&&isCountryAvailable(countryCode)&&onCountryChanged({countryCode})}});function updateTheResults({phone=phoneNumber.value||props.modelValue,countryCode=selectedCountry.value,checkCountryCode=!1}){results.value=getPhoneNumberResults({phoneNumber:phone,countryCode,checkCountryCode})}async function selectPhoneNumberInput(){await nextTick(),setTimeout(()=>{PhoneInputRef.value?.focus()},100)}function setSelectedCountry(countryCode){if(countryCode){if(!isCountryAvailable(countryCode)){console.warn(`[MazInputPhoneNumber] Country code not available: "${countryCode}"`),selectedCountry.value=void 0;return}selectedCountry.value=countryCode}}let isLetterRegex=/\D/g;function onPhoneNumberChanged({newPhoneNumber}){updateTheResults({phone:newPhoneNumber}),results.value.parsedCountryCode&&results.value.parsedCountryCode!==selectedCountry.value&&onCountryChanged({countryCode:results.value.parsedCountryCode,updateResults:!1}),results.value.isValid&&(props.autoFormat===`blur`||props.autoFormat===`typing`)?phoneNumber.value=results.value.formatNational?.trim().replaceAll(isLetterRegex,``):phoneNumber.value=newPhoneNumber,isPhoneNumberInternalUpdate.value=!0,results.value.e164?emits(`update:model-value`,results.value.e164):emits(`update:model-value`,results.value.phoneNumber),setTimeout(()=>{isPhoneNumberInternalUpdate.value=!1},0)}function onCountryChanged({countryCode,updateResults=!0,selectPhoneNumber=!1}){if(!countryCode){selectedCountry.value=void 0;return}isCountryInternalUpdate.value=!0,countryCode!==selectedCountry.value&&setSelectedCountry(countryCode),updateResults&&updateTheResults({countryCode:selectedCountry.value,checkCountryCode:!0});let code=selectedCountry.value;emits(`country-code`,code),emits(`update:country-code`,code),selectPhoneNumber&&!results.value.isValid&&selectPhoneNumberInput(),setTimeout(()=>{isCountryInternalUpdate.value=!1},0)}let countriesList=computed(()=>{let list=getCountryList(props.countryLocale,props.customCountriesList);return props.onlyCountries&&(list=list?.filter(country=>props.onlyCountries?.includes(country.code))),props.ignoredCountries&&(list=list?.filter(country=>!props.ignoredCountries?.includes(country.code))),props.preferredCountries&&(list=list?.sort((a,b)=>{let indexA=props.preferredCountries?.indexOf(a.code)??-1;let indexB=props.preferredCountries?.indexOf(b.code)??-1;return indexA>=0&&indexB>=0?indexA-indexB:indexA>=0?-1:indexB>=0?1:0})),list??[]});return watch(()=>props.modelValue,(value,oldValue)=>{!isPhoneNumberInternalUpdate.value&&value!==oldValue&&value!==phoneNumber.value&&onPhoneNumberChanged({newPhoneNumber:value})},{immediate:!0}),watch(()=>props.countryCode,(value,oldValue)=>{!isCountryInternalUpdate.value&&value&&value!==oldValue&&value!==selectedCountry.value&&onCountryChanged({countryCode:value})},{immediate:!0}),watch(results,value=>emits(`data`,value),{immediate:!0}),provide(`mazInputPhoneNumberData`,{selectedCountry,phoneNumber,results}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{id:unref(instanceId),class:normalizeClass([`m-input-phone-number m-reset-css`,[props.class,{"--block":__props.block},__props.orientation?`--${__props.orientation}`:void 0]]),style:normalizeStyle(__props.style)},[__props.hideCountrySelect?createCommentVNode(``,!0):(openBlock(),createBlock(unref(MazSelectCountry),mergeProps({key:0,id:`${unref(instanceId)}-country`,class:`m-input-phone-number__country-select`},__props.countrySelectAttributes,{"model-value":selectedCountry.value,"option-input-value-key":__props.displayCountryName?`name`:`dialCode`,color:__props.color,size:__props.size,locale:__props.countryLocale,"countries-list":__props.customCountriesList,"list-position":__props.listPosition,"hide-flags":__props.hideFlags,search:__props.search,block:__props.block,error:__props.error||(__props.validationError?!!phoneNumber.value&&!selectedCountry.value:!1),success:__props.success||(__props.validationSuccess?results.value?.isValid:!1),translations:messages.value.countrySelect,hint:phoneNumber.value&&!selectedCountry.value?messages.value.countrySelect.error:void 0,options:countriesList.value,disabled:__props.disabled,required:__props.required,"search-threshold":__props.searchThreshold,"format-input-value":__props.displayCountryName||!selectedCountry.value?void 0:value=>`+${value}`,"show-code-in-list":__props.showCodeInList,label:messages.value.countrySelect.placeholder,"onUpdate:modelValue":_cache[0]||=$event=>onCountryChanged({countryCode:$event,selectPhoneNumber:!0})}),{"no-results":withCtx(()=>[renderSlot(_ctx.$slots,`no-results`,{},void 0,!0)]),"selector-flag":withCtx(({countryCode:codeCountry})=>[renderSlot(_ctx.$slots,`selector-flag`,{countryCode:codeCountry},void 0,!0)]),"country-list-flag":withCtx(({isSelected,option})=>[renderSlot(_ctx.$slots,`country-list-flag`,{countryCode:option.code,option,isSelected},void 0,!0)]),"country-list-code":withCtx(({option})=>[createElementVNode(`span`,_hoisted_2,` +`+toDisplayString(option.dialCode),1)]),_:3},16,[`id`,`model-value`,`option-input-value-key`,`color`,`size`,`locale`,`countries-list`,`list-position`,`hide-flags`,`search`,`block`,`error`,`success`,`translations`,`hint`,`options`,`disabled`,`required`,`search-threshold`,`format-input-value`,`show-code-in-list`,`label`])),createVNode(unref(PhoneInput),mergeProps({id:`${unref(instanceId)}-phone`,ref_key:`PhoneInputRef`,ref:PhoneInputRef,class:`m-input-phone-number__phone-input`,"model-value":phoneNumber.value},{..._ctx.$attrs,...__props.phoneInputAttributes},{color:__props.color,size:__props.size,"auto-format":__props.autoFormat,example:__props.example,block:``,disabled:__props.disabled,required:__props.required,name:__props.phoneInputAttributes.name,"has-radius":!__props.hideCountrySelect,success:__props.success||(__props.validationSuccess?results.value.isValid:!1),error:__props.error||(__props.validationError?!!phoneNumber.value&&!results.value.isValid:!1),locales:messages.value.phoneInput,label:__props.label,placeholder:__props.placeholder,"onUpdate:modelValue":_cache[1]||=$event=>onPhoneNumberChanged({newPhoneNumber:$event})}),null,16,[`id`,`model-value`,`color`,`size`,`auto-format`,`example`,`disabled`,`required`,`name`,`has-radius`,`success`,`error`,`locales`,`label`,`placeholder`])],14,_hoisted_1))}}),[[`__scopeId`,`data-v-cc259039`]]);export{MazInputPhoneNumber_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as MazInput_default}from"./MazInput.
|
|
1
|
+
import{t as MazInput_default}from"./MazInput.C2gyftm8.js";import{computed,createBlock,defineComponent,nextTick,onMounted,openBlock,ref,unref,watch,withKeys}from"vue";import{MazBanknotes}from"@maz-ui/icons/lazy/MazBanknotes";import{formatCurrency}from"@maz-ui/utils/helpers/formatCurrency";var MazInputPrice_default=defineComponent({__name:`MazInputPrice`,props:{modelValue:{default:void 0},currency:{default:`EUR`},locale:{default:`fr-FR`},min:{default:-1/0},max:{default:1/0},noIcon:{type:Boolean,default:!1},block:{type:Boolean},error:{type:Boolean},hint:{},success:{type:Boolean},warning:{type:Boolean},currencyOptions:{}},emits:[`update:model-value`,`input`,`formatted`,`blur`,`focus`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let internalValue=ref(getAdjustedPrice(props.modelValue));watch(()=>props.modelValue,updateInternalValue);let isActive=ref(!1);let valueString=computed(()=>props.modelValue?.toString());let valueNumber=computed(()=>props.modelValue);let priceFormatted=computed(()=>typeof valueNumber.value==`number`?formatCurrency(valueNumber.value,props.locale,{...props.currencyOptions,currency:props.currency}):void 0);let isLetterRegex=/[^\d.]/g;function getAdjustedPrice(value){let isNegative=typeof value==`string`&&value.startsWith(`-`);let newValue=typeof value==`string`?Number.parseFloat(value.replace(`,`,`.`).replaceAll(isLetterRegex,``)):value;return newValue=isNegative&&newValue?-newValue:newValue,(typeof newValue!=`number`||Number.isNaN(newValue))&&(newValue=void 0),newValue&&newValue<props.min&&(newValue=props.min),newValue&&newValue>props.max&&(newValue=props.max),newValue}let displayPrice=computed(()=>{if(isActive.value)return valueString.value;if(typeof props.modelValue==`number`)return priceFormatted.value});async function emitValues(newValue){emits(`update:model-value`,getAdjustedPrice(newValue)),await nextTick(),emits(`formatted`,priceFormatted.value)}onMounted(()=>{emitValues(props.modelValue)});function onBlur(event){isActive.value=!1,emitValues(internalValue.value),emits(`blur`,event)}function onFocus(event){isActive.value=!0,emits(`focus`,event)}function onInput(){emits(`input`,internalValue.value),emitValues(internalValue.value)}function updateInternalValue(value){internalValue.value=getAdjustedPrice(value)}return(_ctx,_cache)=>(openBlock(),createBlock(MazInput_default,{"model-value":displayPrice.value,class:`maz-input-price m-reset-css`,block:__props.block,error:__props.error,success:__props.success,warning:__props.warning,hint:__props.hint,"left-icon":__props.noIcon?void 0:unref(MazBanknotes),onFocus,onBlur,onInput,onKeydown:_cache[0]||=withKeys($event=>emitValues(internalValue.value),[`enter`]),"onUpdate:modelValue":_cache[1]||=$event=>updateInternalValue($event)},null,8,[`model-value`,`block`,`error`,`success`,`warning`,`hint`,`left-icon`]))}});export{MazInputPrice_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as MazInput_default}from"./MazInput.
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as MazInput_default}from"./MazInput.C2gyftm8.js";import{t as MazBtn_default}from"./MazBtn.B0qldW6w.js";import{Fragment,TransitionGroup,computed,createElementBlock,createTextVNode,createVNode,defineComponent,mergeProps,normalizeClass,normalizeStyle,openBlock,ref,renderList,toDisplayString,unref,withCtx,withKeys,withModifiers}from"vue";import{truthyFilter}from"@maz-ui/utils/helpers/truthyFilter";import{MazTrash}from"@maz-ui/icons/lazy/MazTrash";import '../assets/MazInputTags.BmtP1QsH.css';var MazInputTags_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazInputTags`,props:{style:{type:[Boolean,null,String,Object,Array],default:void 0},class:{type:[Boolean,null,String,Object,Array],default:void 0},modelValue:{default:void 0},placeholder:{default:void 0},label:{default:void 0},disabled:{type:Boolean,default:!1},error:{type:Boolean,default:!1},success:{type:Boolean,default:!1},warning:{type:Boolean,default:!1},size:{default:`md`},color:{default:`primary`},block:{type:Boolean},addTagsOnBlur:{type:Boolean,default:!0},hint:{}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let isFocused=ref(!1);let inputValue=ref();let tagsHoveredId=ref();let lastIdToDelete=ref();let currentDeleteTimeout=ref();let tags=computed(()=>props.modelValue?.map(tag=>({tag,id:`${Date.now()}-${Math.random().toString(36).slice(2)}`})));function addTags(event){if(inputValue.value){lastIdToDelete.value=void 0,event.preventDefault();let newValues=inputValue.value.trim().split(`,`).map(value=>value.trim()===`,`?void 0:value.trim()).filter(truthyFilter).filter(value=>!props.modelValue?.filter(truthyFilter)?.includes(value));emits(`update:model-value`,props.modelValue?[...props.modelValue,...newValues]:[...newValues]),inputValue.value=void 0}}let borderStyle=computed(()=>{if(props.error)return`maz-border-destructive`;if(props.success)return`maz-border-success`;if(props.warning)return`maz-border-warning`;if(isFocused.value){if(props.color===`primary`)return`maz-border-primary`;if(props.color===`secondary`)return`maz-border-secondary`;if(props.color===`info`)return`maz-border-info`;if(props.color===`destructive`)return`maz-border-destructive`;if(props.color===`success`)return`maz-border-success`;if(props.color===`warning`)return`maz-border-warning`}return``});function removeLastTag(){inputValue.value||tags.value&&tags.value?.length===0||(currentDeleteTimeout.value&&clearTimeout(currentDeleteTimeout.value),lastIdToDelete.value?(removeTag(lastIdToDelete.value),lastIdToDelete.value=void 0):(lastIdToDelete.value=tags.value?.at(-1)?.id,currentDeleteTimeout.value=setTimeout(()=>{lastIdToDelete.value=void 0},2e3)))}function removeTag(id){let tagsArray=tags.value?.filter(tag=>tag.id!==id).map(tag=>tag.tag);emits(`update:model-value`,tagsArray)}let buttonSize=computed(()=>props.size===`mini`||props.size===`xs`?`mini`:props.size===`sm`?`xs`:props.size===`md`?`sm`:props.size===`lg`?`md`:props.size===`xl`?`lg`:props.size);return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`m-input-tags m-reset-css`,[borderStyle.value,`--${__props.color}`,`--${__props.size}`,props.class,{"--block":__props.block}]]),style:normalizeStyle(__props.style),onFocusCapture:_cache[4]||=$event=>isFocused.value=!0,onBlurCapture:_cache[5]||=$event=>isFocused.value=!1},[createVNode(TransitionGroup,{name:`maz-tags`},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(tags.value,({tag,id},i)=>(openBlock(),createElementBlock(`div`,{key:`tag-${i}`,class:`m-input-tags__wrapper`},[createVNode(MazBtn_default,{class:`m-input-tags__tag`,disabled:__props.disabled,size:buttonSize.value,color:tagsHoveredId.value===id||lastIdToDelete.value===id?`destructive`:__props.color,"right-icon":tagsHoveredId.value===id||lastIdToDelete.value===id?unref(MazTrash):void 0,onClick:withModifiers($event=>removeTag(id),[`stop`]),onMouseenter:$event=>tagsHoveredId.value=id,onFocus:$event=>tagsHoveredId.value=id,onMouseleave:_cache[0]||=$event=>tagsHoveredId.value=void 0,onBlur:_cache[1]||=$event=>tagsHoveredId.value=void 0},{default:withCtx(()=>[createTextVNode(toDisplayString(tag),1)]),_:2},1032,[`disabled`,`size`,`color`,`right-icon`,`onClick`,`onMouseenter`,`onFocus`])]))),128))]),_:1}),createVNode(MazInput_default,mergeProps({key:`input-tags`,modelValue:inputValue.value,"onUpdate:modelValue":_cache[2]||=$event=>inputValue.value=$event},_ctx.$attrs,{placeholder:__props.placeholder,label:__props.label,"aria-label":__props.label||__props.placeholder,error:__props.error,hint:__props.hint,success:__props.success,warning:__props.warning,disabled:__props.disabled,"top-label":void 0,"assistive-text":void 0,color:__props.color,block:__props.block,size:__props.size,"input-classes":`maz-w-full`,border:!1,class:`m-input-tags__input`,onKeydown:[withKeys(addTags,[`enter`]),withKeys(removeLastTag,[`delete`])],onBlur:_cache[3]||=$event=>__props.addTagsOnBlur?addTags($event):void 0}),null,16,[`modelValue`,`placeholder`,`label`,`aria-label`,`error`,`hint`,`success`,`warning`,`disabled`,`color`,`block`,`size`])],38))}}),[[`__scopeId`,`data-v-4c169294`]]);export{MazInputTags_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{n as directive}from"./vLazyImg.
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{n as directive}from"./vLazyImg.DnJQAVAF.js";import{Fragment,computed,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineAsyncComponent,defineComponent,mergeProps,normalizeClass,normalizeStyle,openBlock,renderList,renderSlot,unref,withDirectives}from"vue";import '../assets/MazLazyImg.Dbt2sxHJ.css';var _hoisted_1=[`data-lazy-srcset`,`media`];var _hoisted_2=[`alt`];var _hoisted_3={key:0,class:`m-lazy-img-component-loader`};var MazLazyImg_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazLazyImg`,props:{style:{type:[Boolean,null,String,Object,Array],default:void 0},class:{type:[Boolean,null,String,Object,Array],default:void 0},src:{default:void 0},alt:{default:void 0},hideLoader:{type:Boolean},observerOnce:{type:Boolean,default:!0},loadOnce:{type:Boolean},imageHeightFull:{type:Boolean},observerOptions:{default:void 0},fallbackSrc:{default:void 0},imgClass:{type:[Boolean,null,String,Object,Array]},block:{type:Boolean}},emits:[`intersecting`,`loading`,`loaded`,`error`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let MazSpinner=defineAsyncComponent(()=>import(`../components/MazSpinner.js`));let sources=computed(()=>typeof props.src==`string`?[{srcset:props.src}]:props.src?.sources);return(_ctx,_cache)=>withDirectives((openBlock(),createElementBlock(`picture`,{class:normalizeClass([`m-lazy-img-component m-reset-css`,[{"--use-loader":!__props.hideLoader,"--height-full":__props.imageHeightFull,"--block":__props.block},props.class]]),style:normalizeStyle(__props.style)},[(openBlock(!0),createElementBlock(Fragment,null,renderList(sources.value,({srcset,media},sourceIndex)=>(openBlock(),createElementBlock(`source`,{key:sourceIndex,"data-lazy-srcset":srcset,media},null,8,_hoisted_1))),128)),createElementVNode(`img`,mergeProps(_ctx.$attrs,{src:`data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7`,loading:`lazy`,alt:__props.alt,class:__props.imgClass}),null,16,_hoisted_2),__props.hideLoader?createCommentVNode(``,!0):(openBlock(),createElementBlock(`div`,_hoisted_3,[createVNode(unref(MazSpinner),{size:`2em`})])),renderSlot(_ctx.$slots,`default`,{},void 0,!0)],6)),[[unref(directive),{loadOnce:__props.loadOnce,observerOptions:__props.observerOptions,fallbackSrc:__props.fallbackSrc,observerOnce:__props.observerOnce,onIntersecting:el=>emits(`intersecting`,el),onLoading:el=>emits(`loading`,el),onLoaded:el=>emits(`loaded`,el),onError:el=>emits(`error`,el)}]])}}),[[`__scopeId`,`data-v-e0df9318`]]);export{MazLazyImg_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as getColor}from"./types.Cz3GY4VA.js";import{t as resolveLinkComponent}from"./resolveLinkComponent.Bc6lvxWm.js";import{computed,createBlock,createCommentVNode,createVNode,defineAsyncComponent,defineComponent,mergeProps,openBlock,renderSlot,resolveDynamicComponent,unref,withCtx}from"vue";import{MazArrowTopRightOnSquare}from"@maz-ui/icons/lazy/MazArrowTopRightOnSquare";import '../assets/MazLink.B4ItPZ9Q.css';var MazLink_default=_plugin_vue_export_helper_default(defineComponent({inheritAttrs:!1,__name:`MazLink`,props:{class:{type:[Boolean,null,String,Object,Array]},style:{type:[Boolean,null,String,Object,Array]},as:{},id:{},title:{},href:{},to:{},color:{default:`primary`},target:{default:`_self`},download:{},rel:{},ariaLabel:{},underline:{type:Boolean,default:!1},underlineHover:{type:Boolean,default:!0},autoExternal:{type:Boolean,default:!0},leftIcon:{type:[String,Function,Object]},rightIcon:{type:[String,Function,Object]},disabled:{type:Boolean}},setup(__props){let MazIcon=defineAsyncComponent(()=>import(`../components/MazIcon.js`));let instanceId=useInstanceUniqId({componentName:`MazLink`,providedId:__props.id});let component=computed(()=>__props.as?__props.as:__props.to?resolveLinkComponent():__props.href?`a`:`button`);let isButton=computed(()=>component.value===`button`);return(_ctx,_cache)=>(openBlock(),createBlock(resolveDynamicComponent(component.value),mergeProps({id:unref(instanceId),class:[`m-link m-reset-css`,[{"--underline":__props.underline,"--underline-hover":!__props.underline&&__props.underlineHover},__props.color!==`inherit`&&`--${unref(getColor)(__props.color)}`,__props.class]],to:__props.to,href:__props.href,title:__props.title,target:!isButton.value&&__props.target,rel:!isButton.value&&__props.rel,download:!isButton.value&&__props.download,"aria-label":!isButton.value&&__props.ariaLabel,type:isButton.value&&`button`,disabled:isButton.value&&__props.disabled,style:__props.style},_ctx.$attrs),{default:withCtx(()=>[renderSlot(_ctx.$slots,`left-icon`,{},()=>[typeof __props.leftIcon==`string`?(openBlock(),createBlock(unref(MazIcon),{key:0,name:__props.leftIcon},null,8,[`name`])):__props.leftIcon?(openBlock(),createBlock(resolveDynamicComponent(__props.leftIcon),{key:1})):createCommentVNode(``,!0)],!0),renderSlot(_ctx.$slots,`default`,{},void 0,!0),renderSlot(_ctx.$slots,`right-icon`,{},()=>[typeof __props.rightIcon==`string`?(openBlock(),createBlock(unref(MazIcon),{key:0,name:__props.rightIcon},null,8,[`name`])):__props.rightIcon?(openBlock(),createBlock(resolveDynamicComponent(__props.rightIcon),{key:1})):createCommentVNode(``,!0)],!0),__props.autoExternal&&__props.target===`_blank`?renderSlot(_ctx.$slots,`external-icon`,{key:0},()=>[createVNode(unref(MazArrowTopRightOnSquare))],!0):createCommentVNode(``,!0)]),_:3},16,[`id`,`class`,`to`,`href`,`title`,`target`,`rel`,`download`,`aria-label`,`type`,`disabled`,`style`]))}}),[[`__scopeId`,`data-v-a670df6f`]]);export{MazLink_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as MazBtn_default}from"./MazBtn.
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as MazBtn_default}from"./MazBtn.B0qldW6w.js";import{Fragment,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineComponent,mergeProps,openBlock,renderList,renderSlot,toDisplayString,unref,withCtx}from"vue";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import{MazEllipsisHorizontal}from"@maz-ui/icons/lazy/MazEllipsisHorizontal";import{MazChevronDoubleLeft}from"@maz-ui/icons/static/MazChevronDoubleLeft";import{MazChevronLeft}from"@maz-ui/icons/static/MazChevronLeft";import '../assets/MazPagination.C3Dkf1HA.css';var _hoisted_1=[`aria-label`];var _hoisted_2={class:`maz-sr-only`};var _hoisted_3={class:`maz-sr-only`};var _hoisted_4=[`id`];var _hoisted_5={class:`maz-sr-only`};var _hoisted_6={class:`maz-sr-only`};var _hoisted_7={class:`maz-sr-only`};var MazPagination_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazPagination`,props:{modelValue:{default:1},buttonProps:{},activeColor:{default:`background`},size:{default:`md`},totalPages:{},pageRange:{default:1},loading:{type:Boolean}},emits:[`update:model-value`],setup(__props,{emit:__emit}){let emits=__emit;let DEFAULT_BUTTONS_PROPS={size:`md`,color:`background`,outlined:!0,fab:!0};let{t}=useTranslations();let buttonsPropsMerged=computed(()=>({...DEFAULT_BUTTONS_PROPS,...__props.buttonProps}));let previousPage=computed(()=>__props.modelValue>1?__props.modelValue-1:1);let nextPage=computed(()=>__props.modelValue<__props.totalPages?__props.modelValue+1:__props.totalPages);let allPages=computed(()=>Array.from({length:__props.totalPages},(_,index)=>{let itemNumber=index+1;return{number:itemNumber,isActive:itemNumber===__props.modelValue,loading:itemNumber===__props.modelValue&&__props.loading}}));let firstOne=computed(()=>__props.modelValue-__props.pageRange>1?allPages.value.slice(0,1):[]);let lastOne=computed(()=>__props.modelValue<__props.totalPages-__props.pageRange?allPages.value.slice(-1):[]);let rangeStartAt=computed(()=>{let baseStart=__props.modelValue-__props.pageRange-1;return baseStart<0?0:baseStart>__props.totalPages-__props.pageRange?__props.totalPages-__props.pageRange:baseStart});let rangeEndAt=computed(()=>{let baseEnd=__props.modelValue+__props.pageRange;return baseEnd>__props.totalPages?__props.totalPages:baseEnd<__props.pageRange?__props.pageRange:baseEnd});let range=computed(()=>allPages.value.slice(rangeStartAt.value,rangeEndAt.value));let firstDivider=computed(()=>__props.modelValue-__props.pageRange>2?[{divider:!0}]:[]);let lastDivider=computed(()=>__props.modelValue<__props.totalPages-__props.pageRange-1?[{divider:!0}]:[]);let pages=computed(()=>[...firstOne.value,...firstDivider.value,...range.value,...lastDivider.value,...lastOne.value]);function setPageNumber(page){page!==__props.modelValue&&emits(`update:model-value`,page)}return(_ctx,_cache)=>(openBlock(),createElementBlock(`nav`,{class:`m-pagination m-reset-css`,role:`navigation`,"aria-label":unref(t)(`pagination.navAriaLabel`)},[createElementVNode(`ul`,null,[createElementVNode(`li`,null,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===1,"aria-label":`First Page, Page 1`,size:__props.size,onClick:_cache[0]||=$event=>setPageNumber(1)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_2,[renderSlot(_ctx.$slots,`first-page-sr`,{page:1},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.firstPage`,{page:1})),1)],!0)]),createVNode(unref(MazChevronDoubleLeft))]),_:3},16,[`disabled`,`size`])]),createElementVNode(`li`,null,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===1,"aria-label":`Previous Page, Page ${previousPage.value}`,size:__props.size,onClick:_cache[1]||=$event=>setPageNumber(previousPage.value)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_3,[renderSlot(_ctx.$slots,`previous-page-sr`,{page:previousPage.value},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.previousPage`,{page:previousPage.value})),1)],!0)]),createVNode(unref(MazChevronLeft))]),_:3},16,[`disabled`,`aria-label`,`size`])]),(openBlock(!0),createElementBlock(Fragment,null,renderList(pages.value,(page,i)=>(openBlock(),createElementBlock(`li`,{id:`number`in page?`button-${i}-${page.number}`:`ellipsis-${i}`,key:`number`in page?`button-${i}-${page.number}`:`ellipsis-${i}`},[`number`in page?(openBlock(),createBlock(MazBtn_default,mergeProps({key:0,ref_for:!0},{...buttonsPropsMerged.value,color:page.isActive?__props.activeColor:buttonsPropsMerged.value.color,outlined:page.isActive?!1:buttonsPropsMerged.value.outlined},{size:__props.size,"aria-label":`Page ${page.number}`,"aria-current":page.isActive?`page`:void 0,loading:page.loading,class:{active:page.isActive},onClick:$event=>page.isActive?void 0:setPageNumber(page.number)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_5,[renderSlot(_ctx.$slots,`page-sr`,{page:page.number},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.page`,{page:page.number})),1)],!0)]),createTextVNode(` `+toDisplayString(page.number),1)]),_:2},1040,[`size`,`aria-label`,`aria-current`,`loading`,`class`,`onClick`])):page.divider?(openBlock(),createElementBlock(`div`,mergeProps({key:1,ref_for:!0},buttonsPropsMerged.value,{class:`flex-center flex p-2`}),[createVNode(unref(MazEllipsisHorizontal))],16)):createCommentVNode(``,!0)],8,_hoisted_4))),128)),createElementVNode(`li`,null,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===__props.totalPages,"aria-label":`Next Page, Page ${nextPage.value}`,size:__props.size,onClick:_cache[2]||=$event=>setPageNumber(nextPage.value)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_6,[renderSlot(_ctx.$slots,`next-page-sr`,{page:nextPage.value},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.nextPage`,{page:nextPage.value})),1)],!0)]),createVNode(unref(MazChevronLeft),{class:`-maz-rotate-180`})]),_:3},16,[`disabled`,`aria-label`,`size`])]),createElementVNode(`li`,null,[createVNode(MazBtn_default,mergeProps(buttonsPropsMerged.value,{disabled:__props.modelValue===__props.totalPages,"aria-label":`Next Page, Page ${__props.totalPages}`,size:__props.size,onClick:_cache[3]||=$event=>setPageNumber(__props.totalPages)}),{default:withCtx(()=>[createElementVNode(`span`,_hoisted_7,[renderSlot(_ctx.$slots,`last-page-sr`,{page:__props.totalPages},()=>[createTextVNode(toDisplayString(unref(t)(`pagination.screenReader.lastPage`,{page:__props.totalPages})),1)],!0)]),createVNode(unref(MazChevronDoubleLeft),{class:`-maz-rotate-180`})]),_:3},16,[`disabled`,`aria-label`,`size`])])])],8,_hoisted_1))}}),[[`__scopeId`,`data-v-38d8a2f9`]]);export{MazPagination_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as isRangeValue,f as isSameDate,m as isValidDate,o as getFirstDayOfMonth,p as isSameDay,r as getDaysInMonth}from"./utils.B8bfGQxN.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as MazBtn_default}from"./MazBtn.
|
|
1
|
+
import{d as isRangeValue,f as isSameDate,m as isValidDate,o as getFirstDayOfMonth,p as isSameDay,r as getDaysInMonth}from"./utils.B8bfGQxN.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as MazBtn_default}from"./MazBtn.B0qldW6w.js";import{Fragment,TransitionGroup,computed,createBlock,createElementBlock,createElementVNode,createVNode,defineComponent,normalizeClass,openBlock,ref,renderList,toDisplayString,useCssVars,watch,withCtx}from"vue";import{debounce}from"@maz-ui/utils/helpers/debounce";import dayjs from"dayjs";import '../assets/MazPickerCalendarGrid.Ba1xBVlX.css';var DaySelect=function(DaySelect){return DaySelect[DaySelect.UNSELECTED=0]=`UNSELECTED`,DaySelect[DaySelect.SELECTED=1]=`SELECTED`,DaySelect[DaySelect.BETWEEN=2]=`BETWEEN`,DaySelect[DaySelect.BETWEEN_HOVERRED=3]=`BETWEEN_HOVERRED`,DaySelect}(DaySelect||{});var MazPickerCalendarGrid_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazPickerCalendarGrid`,props:{modelValue:{type:[String,Object],default:void 0},calendarDate:{type:String,required:!0},hasTime:{type:Boolean,required:!0},locale:{type:String,required:!0},firstDayOfWeek:{type:Number,required:!0},color:{type:String,required:!0},minDate:{type:String,default:void 0},inline:{type:Boolean,required:!0},maxDate:{type:String,default:void 0},disabledWeekly:{type:Array,required:!0},disabledDates:{type:Array,required:!0},hoverredDay:{type:Object,default:void 0},disabled:{type:Boolean,required:!0},range:{type:Boolean,required:!0}},emits:[`update:model-value`,`update:hoverred-day`],setup(__props,{emit:__emit}){useCssVars(_ctx=>({v56c06bd6:hoverColor.value,v50f9c030:hoverTextColor.value}));let props=__props;let emits=__emit;let MazDatePickerGrid=ref();let transitionName=ref(`maz-slidenext`);let calendarDateArray=computed(()=>[props.calendarDate]);let hoverColor=computed(()=>`hsl(var(--maz-${props.color}) / 20%)`);let hoverTextColor=computed(()=>`hsl(var(--maz-${props.color}-foreground))`);let modelValue=computed({get:()=>props.modelValue,set:value=>emits(`update:model-value`,value)});let monthDays=computed(()=>Array.from({length:getDaysInMonth(props.calendarDate)},(_v,i)=>i+1).map(day=>({label:day,date:dayjs(props.calendarDate).set(`date`,day)})));let emptyDaysCount=computed(()=>(getFirstDayOfMonth(props.calendarDate)-props.firstDayOfWeek+7)%7);function setHoverredDay(day){let value=props.modelValue;!value||!isRangeValue(value)||(value.start&&!value.end&&day&&day.isAfter(value.start)?emits(`update:hoverred-day`,day):emits(`update:hoverred-day`))}function isBetweenHoverred(day){let value=props.modelValue;if(!(!value||!isRangeValue(value)||!value.start||!props.hoverredDay))return dayjs(day).isBetween(value.start,props.hoverredDay,`date`,`()`)?DaySelect.BETWEEN_HOVERRED:void 0}function isLastDayHoverred(day){if(props.hoverredDay)return dayjs(day).isSame(props.hoverredDay)}function isFirstDay(day){return props.modelValue&&props.modelValue&&typeof props.modelValue==`object`&&props.modelValue?.start?isSameDate(day,props.modelValue.start,`date`):!1}function isLastDay(day){return props.modelValue&&props.modelValue&&typeof props.modelValue==`object`&&props.modelValue?.end?isSameDate(day,props.modelValue.end,`date`):!1}function getDayButtonColor(date){let value=props.modelValue;if(typeof value==`object`){let isStartDate=value.start?isSameDate(date,value.start,`date`):!1;let isEndDate=value.end?isSameDate(date,value.end,`date`):!1;let isBetweenDates=checkIsBetween(date);return isStartDate||isEndDate||isBetweenDates?props.color:`transparent`}else return checkIsSameDate(date)?props.color:`transparent`}function isSelectedOrBetween(day){if(props.modelValue&&typeof props.modelValue==`object`){if(props.modelValue.start&&isSameDate(day,props.modelValue.start,`date`))return DaySelect.SELECTED;if(props.modelValue.end){if(isSameDate(day,props.modelValue.end,`date`))return DaySelect.SELECTED;if(checkIsBetween(day))return DaySelect.BETWEEN}}else if(checkIsSameDate(day))return DaySelect.SELECTED;return DaySelect.UNSELECTED}function selectDay(value){props.range&&setHoverredDay();let valueFormatted=value.format();if(typeof modelValue.value==`object`){let values=modelValue.value;values.start&&values.end&&(values={start:void 0,end:void 0});let isBeforeStartDate=dayjs(valueFormatted).isBefore(values.start,`date`);modelValue.value=!values.start||isBeforeStartDate?{start:valueFormatted,end:void 0}:{start:values.start,end:valueFormatted}}else modelValue.value=valueFormatted}function checkIsSameDate(day){let value=props.modelValue;return!value||!isValidDate(value)?!1:isSameDate(day,value,`date`)}function checkIsBetween(day){let value=props.modelValue;return!isRangeValue(value)||!value.start||!value.end?!1:dayjs(day).isBetween(value.start,value.end,`date`,`()`)}function isSmallerMinDate(day){return props.minDate?dayjs(day).isBefore(props.minDate,`date`):!1}function isDisabledWeekly(day){return props.disabledWeekly?.length?props.disabledWeekly.some(disabledDay=>isSameDay(day,disabledDay)):!1}function isDisabledDate(day){return props.disabledDates?.length?props.disabledDates.some(disabledDay=>isSameDate(day,disabledDay,`date`)):!1}function isBiggerMaxDate(day){return props.maxDate?dayjs(day).isAfter(props.maxDate,`date`):!1}let removeContainerHeight=debounce(()=>{MazDatePickerGrid.value&&(MazDatePickerGrid.value.style.minHeight=``)},400);function setContainerHeight(){MazDatePickerGrid.value&&(MazDatePickerGrid.value.style.minHeight=`${MazDatePickerGrid.value?.clientHeight||176}px`,removeContainerHeight())}return watch(()=>props.calendarDate,(calendarDate,oldCalendarValue)=>{transitionName.value=dayjs(calendarDate).isAfter(oldCalendarValue,`date`)?`maz-slidenext`:`maz-slideprev`,setContainerHeight()}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{ref_key:`MazDatePickerGrid`,ref:MazDatePickerGrid,class:`maz-picker-calendar-grid`},[createVNode(TransitionGroup,{name:transitionName.value},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList([calendarDateArray.value],(dateArray,dateIndex)=>(openBlock(),createElementBlock(`div`,{key:`${dateArray[dateIndex]}`,class:normalizeClass([`maz-picker-calendar-grid__container`,{"--is-range":__props.range}])},[(openBlock(!0),createElementBlock(Fragment,null,renderList(emptyDaysCount.value,first=>(openBlock(),createElementBlock(`div`,{key:first}))),128)),(openBlock(!0),createElementBlock(Fragment,null,renderList(monthDays.value,({label,date},i)=>(openBlock(),createBlock(MazBtn_default,{key:i,size:`mini`,color:getDayButtonColor(date),type:`button`,block:__props.inline,disabled:__props.disabled||isSmallerMinDate(date)||isBiggerMaxDate(date)||isDisabledWeekly(date)||isDisabledDate(date),class:normalizeClass({"--is-first":isFirstDay(date)&&isSelectedOrBetween(date)===DaySelect.SELECTED,"--is-last":isLastDay(date)&&isSelectedOrBetween(date)===DaySelect.SELECTED,"--is-last-hoverred":isLastDayHoverred(date),"--is-selected":isSelectedOrBetween(date)===DaySelect.SELECTED,"--is-between":isSelectedOrBetween(date)===DaySelect.BETWEEN,"--is-between-hoverred":__props.range?isBetweenHoverred(date)===DaySelect.BETWEEN_HOVERRED:void 0}),onClick:$event=>selectDay(date),onMouseover:$event=>__props.range?setHoverredDay(date):void 0,onMouseleave:_cache[0]||=$event=>__props.range?setHoverredDay():void 0,onFocus:$event=>__props.range?setHoverredDay(date):void 0,onBlur:_cache[1]||=$event=>__props.range?setHoverredDay():void 0},{default:withCtx(()=>[createElementVNode(`span`,null,toDisplayString(label),1)]),_:2},1032,[`color`,`block`,`disabled`,`class`,`onClick`,`onMouseover`,`onFocus`]))),128))],2))),128))]),_:1},8,[`name`])],512))}}),[[`__scopeId`,`data-v-f69e1470`]]);export{MazPickerCalendarGrid_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{vClickOutside as directive}from"../directives/vClickOutside.js";import{t as getColor}from"./types.DDbvTVqf.js";import{Fragment,Teleport,Transition,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineComponent,mergeModels,mergeProps,nextTick,normalizeClass,normalizeStyle,onBeforeUnmount,onMounted,onUnmounted,openBlock,renderSlot,unref,useAttrs,useModel,useTemplateRef,watch,withCtx,withDirectives}from"vue";import{isClient}from"@maz-ui/utils/helpers/isClient";import{autoPlacement,autoUpdate,flip,hide,offset,shift,useFloating}from"@floating-ui/vue";import '../assets/MazPopover.-QaA_4Xd.css';var _hoisted_1=[`id`,`aria-expanded`,`aria-haspopup`,`aria-describedby`,`aria-labelledby`,`aria-controls`];var _hoisted_2=[`id`,`role`,`aria-label`,`aria-labelledby`,`aria-describedby`,`aria-modal`,`tabindex`,`aria-live`];var MazPopover_default=_plugin_vue_export_helper_default(defineComponent({name:`MazPopover`,inheritAttrs:!1,__name:`MazPopover`,props:mergeModels({modelValue:{type:Boolean},position:{default:`auto`},preferPosition:{},fallbackPosition:{},trigger:{default:`click`},role:{default:`dialog`},ariaLabel:{},announceChanges:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},offset:{default:8},delay:{default:0},hoverDelay:{default:150},transition:{default:`scale-pop`},teleportTo:{default:`body`},overlayClass:{type:[Boolean,null,String,Object,Array]},panelClass:{type:[Boolean,null,String,Object,Array]},panelStyle:{type:[Boolean,null,String,Object,Array]},closeOnClickOutside:{type:Boolean,default:!0},closeOnEscape:{type:Boolean,default:!0},persistent:{type:Boolean,default:!1},id:{},ariaLabelledby:{},ariaDescribedby:{},color:{default:`background`},trapFocus:{type:Boolean,default:!0},keepOpenOnHover:{type:Boolean,default:!1},block:{type:Boolean,default:!1},positionReference:{}},{modelValue:{default:!1},modelModifiers:{}}),emits:mergeModels([`update:model-value`,`open`,`close`,`after-close-animation`,`toggle`],[`update:modelValue`]),setup(__props,{expose:__expose,emit:__emit}){let emits=__emit;let triggerId=useInstanceUniqId({componentName:`MazPopover`,providedId:__props.id});let attrs=useAttrs();let triggerRef=useTemplateRef(`trigger`);let panelRef=useTemplateRef(`panel`);let middleware=computed(()=>{let middleware=[offset(__props.offset),hide(),shift({padding:5})];return middleware.push(__props.position===`auto`&&!__props.preferPosition&&!__props.fallbackPosition?autoPlacement({allowedPlacements:[`top`,`bottom`,`left`,`right`]}):flip({fallbackPlacements:__props.fallbackPosition?[__props.fallbackPosition]:void 0})),middleware});let floatingPosition=computed(()=>__props.position===`auto`?__props.preferPosition:__props.position);let transitionName=computed(()=>[`scale-pop`,`scale-fade`].includes(__props.transition)?`maz-${__props.transition}`:__props.transition);let positionRef=computed(()=>__props.positionReference?typeof __props.positionReference==`string`?triggerRef.value?.querySelector(__props.positionReference)||(isClient()?document.querySelector(__props.positionReference):null):__props.positionReference:triggerRef.value);let{floatingStyles,placement,update,middlewareData}=useFloating(computed(()=>positionRef.value||triggerRef.value),panelRef,{placement:floatingPosition,middleware,transform:!1,whileElementsMounted:autoUpdate});let computedPosition=computed(()=>placement.value??floatingPosition.value);let isOpen=useModel(__props,`modelValue`);let openTimeout=null;let closeTimeout=null;let initialFocusElement=null;let ignoreNextClickOutside=!1;let panelId=computed(()=>`${triggerId.value}-panel`);let rootStyles=computed(()=>attrs.style);let panelStyles=computed(()=>({...floatingStyles.value,pointerEvents:isOpen.value?`auto`:`none`}));let isTouchDevice=computed(()=>isClient()?`ontouchstart`in globalThis||navigator.maxTouchPoints>0:!1);let effectiveTrigger=computed(()=>__props.trigger===`adaptive`?isTouchDevice.value?`click`:`hover`:__props.trigger);let triggerEvents=computed(()=>{if(__props.disabled||effectiveTrigger.value===`manual`)return{};let events={};return effectiveTrigger.value===`hover`&&(events.onMouseenter=()=>{clearCloseTimeout(),open()},events.onMouseleave=close),effectiveTrigger.value===`click`&&(events.onClick=toggle),events});let panelEvents=computed(()=>effectiveTrigger.value===`hover`?{onMouseenter:()=>{__props.keepOpenOnHover&&clearCloseTimeout()},onMouseleave:()=>{__props.keepOpenOnHover&&close()}}:{});let panelClasses=computed(()=>[__props.overlayClass,__props.panelClass,`--position-${computedPosition.value}`,`--${getColor(__props.color)}`]);function cleanup(){clearOpenTimeout(),clearCloseTimeout(),isClient()&&document.removeEventListener(`keydown`,onKeydown)}function open(){__props.disabled||(clearCloseTimeout(),effectiveTrigger.value===`click`&&(ignoreNextClickOutside=!0),__props.delay>0?openTimeout=setTimeout(()=>{setOpen(!0)},__props.delay):setOpen(!0))}function close(){clearOpenTimeout(),__props.delay>0&&effectiveTrigger.value===`hover`?closeTimeout=setTimeout(()=>{setOpen(!1)},__props.delay):effectiveTrigger.value===`hover`&&__props.keepOpenOnHover?closeTimeout=setTimeout(()=>{setOpen(!1)},__props.hoverDelay):setOpen(!1)}function toggle(){isOpen.value?close():open()}function setOpen(value){isOpen.value=value,ignoreNextClickOutside=!1,value?(emits(`open`),emits(`toggle`,value),nextTick(()=>{update(),setupFocusTrap()})):(emits(`toggle`,value),emits(`close`),__props.trapFocus&&restoreFocus())}function clearOpenTimeout(){openTimeout&&=(clearTimeout(openTimeout),null)}function clearCloseTimeout(){closeTimeout&&=(clearTimeout(closeTimeout),null)}function getTransformOrigin(position){switch(position){case`top`:return`center bottom`;case`top-start`:return`left bottom`;case`top-end`:return`right bottom`;case`bottom`:return`center top`;case`bottom-start`:return`left top`;case`bottom-end`:return`right top`;case`left`:return`right center`;case`left-start`:return`right top`;case`left-end`:return`right bottom`;case`right`:return`left center`;case`right-start`:return`left top`;case`right-end`:return`left bottom`;default:return`center`}}function setupFocusTrap(){__props.role===`tooltip`||effectiveTrigger.value===`hover`||!__props.trapFocus||!isClient()||(initialFocusElement=document.activeElement,nextTick(()=>{let focusableElements=panelRef.value?.querySelectorAll(`a[href], button, textarea, input[type="text"], input[type="radio"], input[type="checkbox"], select, [tabindex]:not([tabindex="-1"])`);focusableElements&&focusableElements.length>0?focusableElements[0].focus({preventScroll:!0}):panelRef.value?.focus({preventScroll:!0})}))}function restoreFocus(){__props.role===`tooltip`||effectiveTrigger.value===`hover`||!__props.trapFocus||!isClient()||nextTick(()=>{initialFocusElement?.focus({preventScroll:!0})})}function onKeydown(event){isOpen.value&&(event.key===`Escape`&&__props.closeOnEscape&&!__props.persistent&&(event.preventDefault(),close()),event.key===`Tab`&&__props.trapFocus&&handleTrapFocus(event))}function handleTrapFocus(event){if(!panelRef.value||!isClient())return;let focusableElements=panelRef.value.querySelectorAll(`a[href], button, textarea, input[type="text"], input[type="radio"], input[type="checkbox"], select, [tabindex]:not([tabindex="-1"])`);if(focusableElements.length===0)return;let firstElement=focusableElements[0];let lastElement=focusableElements[focusableElements.length-1];event.shiftKey?document.activeElement===firstElement&&(event.preventDefault(),lastElement.focus()):document.activeElement===lastElement&&(event.preventDefault(),firstElement.focus())}function onClickOutside(event){if(effectiveTrigger.value!==`manual`){if(ignoreNextClickOutside){ignoreNextClickOutside=!1;return}if(__props.closeOnClickOutside&&!__props.persistent){if(triggerRef.value&&triggerRef.value.contains(event.target))return;close()}}}return watch(isOpen,(value,oldValue)=>{!isClient()||value===oldValue||(value?open():oldValue&&!value&&close())},{immediate:!0}),watch(()=>__props.position,()=>{isOpen.value&&nextTick(()=>update())}),onMounted(()=>{document.addEventListener(`keydown`,onKeydown)}),onBeforeUnmount(cleanup),onUnmounted(cleanup),__expose({open,close,toggle,isOpen,updatePosition:update,panelRef}),(_ctx,_cache)=>(openBlock(),createElementBlock(Fragment,null,[_ctx.$slots.trigger?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`m-popover m-reset-css`,[unref(attrs).class,{"--open":isOpen.value,"--disabled":__props.disabled,"--block":__props.block}]]),style:normalizeStyle(rootStyles.value)},[createElementVNode(`div`,mergeProps({id:unref(triggerId),ref:`trigger`,role:`button`,class:`m-popover-trigger`,"aria-expanded":__props.role===`dialog`||__props.role===`menu`?isOpen.value:void 0,"aria-haspopup":__props.role===`dialog`?`dialog`:void 0,"aria-describedby":__props.role===`tooltip`&&isOpen.value?panelId.value:__props.ariaDescribedby,"aria-labelledby":__props.ariaLabelledby,"aria-controls":panelId.value},triggerEvents.value),[renderSlot(_ctx.$slots,`trigger`,{open,close,toggle,isOpen:isOpen.value,trigger:effectiveTrigger.value},void 0,!0)],16,_hoisted_1)],6)):createCommentVNode(``,!0),(openBlock(),createBlock(Teleport,{to:__props.teleportTo},[createVNode(Transition,{name:transitionName.value,appear:``,onAfterLeave:_cache[0]||=$event=>emits(`after-close-animation`)},{default:withCtx(()=>[isOpen.value?withDirectives((openBlock(),createElementBlock(`div`,mergeProps({key:0,id:panelId.value,ref:`panel`,role:__props.role,"aria-label":__props.ariaLabel,"aria-labelledby":__props.role===`dialog`?__props.ariaLabelledby||unref(triggerId):void 0,"aria-describedby":__props.role===`dialog`?__props.ariaDescribedby:void 0,"aria-modal":__props.role===`dialog`?`true`:void 0,tabindex:__props.role===`dialog`?`-1`:void 0,class:[`m-popover-panel`,panelClasses.value],"aria-live":__props.announceChanges?`polite`:void 0,style:[__props.panelStyle,panelStyles.value,{transformOrigin:getTransformOrigin(computedPosition.value),visibility:unref(middlewareData).hide?.referenceHidden?`hidden`:`visible`}]},panelEvents.value),[renderSlot(_ctx.$slots,`default`,{open,close,toggle,isOpen:isOpen.value},void 0,!0)],16,_hoisted_2)),[[unref(directive),onClickOutside]]):createCommentVNode(``,!0)]),_:3},8,[`name`])],8,[`to`]))],64))}}),[[`__scopeId`,`data-v-08b18b31`]]);export{MazPopover_default as t};
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{vClickOutside as directive}from"../directives/vClickOutside.js";import{t as getColor}from"./types.Cz3GY4VA.js";import{Fragment,Teleport,Transition,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createVNode,defineComponent,mergeModels,mergeProps,nextTick,normalizeClass,normalizeStyle,onBeforeUnmount,onMounted,onUnmounted,openBlock,renderSlot,unref,useAttrs,useModel,useTemplateRef,watch,withCtx,withDirectives}from"vue";import{isClient}from"@maz-ui/utils/helpers/isClient";import{autoPlacement,autoUpdate,flip,hide,offset,shift,useFloating}from"@floating-ui/vue";import '../assets/MazPopover.Dp8fLLDj.css';var _hoisted_1=[`id`,`aria-expanded`,`aria-haspopup`,`aria-describedby`,`aria-labelledby`,`aria-controls`];var _hoisted_2=[`id`,`role`,`aria-label`,`aria-labelledby`,`aria-describedby`,`aria-modal`,`tabindex`,`aria-live`];var MazPopover_default=_plugin_vue_export_helper_default(defineComponent({name:`MazPopover`,inheritAttrs:!1,__name:`MazPopover`,props:mergeModels({modelValue:{type:Boolean},position:{default:`auto`},preferPosition:{},fallbackPosition:{},trigger:{default:`click`},role:{default:`dialog`},ariaLabel:{},announceChanges:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},offset:{default:8},delay:{default:0},hoverDelay:{default:150},transition:{default:`scale-pop`},teleportTo:{default:`body`},overlayClass:{type:[Boolean,null,String,Object,Array]},panelClass:{type:[Boolean,null,String,Object,Array]},panelStyle:{type:[Boolean,null,String,Object,Array]},closeOnClickOutside:{type:Boolean,default:!0},closeOnEscape:{type:Boolean,default:!0},persistent:{type:Boolean,default:!1},id:{},ariaLabelledby:{},ariaDescribedby:{},color:{default:`background`},trapFocus:{type:Boolean,default:!0},keepOpenOnHover:{type:Boolean,default:!1},block:{type:Boolean,default:!1},positionReference:{}},{modelValue:{default:!1},modelModifiers:{}}),emits:mergeModels([`update:model-value`,`open`,`close`,`after-close-animation`,`toggle`],[`update:modelValue`]),setup(__props,{expose:__expose,emit:__emit}){let emits=__emit;let triggerId=useInstanceUniqId({componentName:`MazPopover`,providedId:__props.id});let attrs=useAttrs();let triggerRef=useTemplateRef(`trigger`);let panelRef=useTemplateRef(`panel`);let middleware=computed(()=>{let middleware=[offset(__props.offset),hide(),shift({padding:5})];return middleware.push(__props.position===`auto`&&!__props.preferPosition&&!__props.fallbackPosition?autoPlacement({allowedPlacements:[`top`,`bottom`,`left`,`right`]}):flip({fallbackPlacements:__props.fallbackPosition?[__props.fallbackPosition]:void 0})),middleware});let floatingPosition=computed(()=>__props.position===`auto`?__props.preferPosition:__props.position);let transitionName=computed(()=>[`scale-pop`,`scale-fade`].includes(__props.transition)?`maz-${__props.transition}`:__props.transition);let positionRef=computed(()=>__props.positionReference?typeof __props.positionReference==`string`?triggerRef.value?.querySelector(__props.positionReference)||(isClient()?document.querySelector(__props.positionReference):null):__props.positionReference:triggerRef.value);let{floatingStyles,placement,update,middlewareData}=useFloating(computed(()=>positionRef.value||triggerRef.value),panelRef,{placement:floatingPosition,middleware,transform:!1,whileElementsMounted:autoUpdate});let computedPosition=computed(()=>placement.value??floatingPosition.value);let isOpen=useModel(__props,`modelValue`);let openTimeout=null;let closeTimeout=null;let initialFocusElement=null;let ignoreNextClickOutside=!1;let panelId=computed(()=>`${triggerId.value}-panel`);let rootStyles=computed(()=>attrs.style);let panelStyles=computed(()=>({...floatingStyles.value,pointerEvents:isOpen.value?`auto`:`none`}));let isTouchDevice=computed(()=>isClient()?`ontouchstart`in globalThis||navigator.maxTouchPoints>0:!1);let effectiveTrigger=computed(()=>__props.trigger===`adaptive`?isTouchDevice.value?`click`:`hover`:__props.trigger);let triggerEvents=computed(()=>{if(__props.disabled||effectiveTrigger.value===`manual`)return{};let events={};return effectiveTrigger.value===`hover`&&(events.onMouseenter=()=>{clearCloseTimeout(),open()},events.onMouseleave=close),effectiveTrigger.value===`click`&&(events.onClick=toggle),events});let panelEvents=computed(()=>effectiveTrigger.value===`hover`?{onMouseenter:()=>{__props.keepOpenOnHover&&clearCloseTimeout()},onMouseleave:()=>{__props.keepOpenOnHover&&close()}}:{});let panelClasses=computed(()=>[__props.overlayClass,__props.panelClass,`--position-${computedPosition.value}`,`--${getColor(__props.color)}`]);function cleanup(){clearOpenTimeout(),clearCloseTimeout(),isClient()&&document.removeEventListener(`keydown`,onKeydown)}function open(){__props.disabled||(clearCloseTimeout(),effectiveTrigger.value===`click`&&(ignoreNextClickOutside=!0),__props.delay>0?openTimeout=setTimeout(()=>{setOpen(!0)},__props.delay):setOpen(!0))}function close(){clearOpenTimeout(),__props.delay>0&&effectiveTrigger.value===`hover`?closeTimeout=setTimeout(()=>{setOpen(!1)},__props.delay):effectiveTrigger.value===`hover`&&__props.keepOpenOnHover?closeTimeout=setTimeout(()=>{setOpen(!1)},__props.hoverDelay):setOpen(!1)}function toggle(){isOpen.value?close():open()}function setOpen(value){isOpen.value=value,ignoreNextClickOutside=!1,value?(emits(`open`),emits(`toggle`,value),nextTick(()=>{update(),setupFocusTrap()})):(emits(`toggle`,value),emits(`close`),__props.trapFocus&&restoreFocus())}function clearOpenTimeout(){openTimeout&&=(clearTimeout(openTimeout),null)}function clearCloseTimeout(){closeTimeout&&=(clearTimeout(closeTimeout),null)}function getTransformOrigin(position){switch(position){case`top`:return`center bottom`;case`top-start`:return`left bottom`;case`top-end`:return`right bottom`;case`bottom`:return`center top`;case`bottom-start`:return`left top`;case`bottom-end`:return`right top`;case`left`:return`right center`;case`left-start`:return`right top`;case`left-end`:return`right bottom`;case`right`:return`left center`;case`right-start`:return`left top`;case`right-end`:return`left bottom`;default:return`center`}}function setupFocusTrap(){__props.role===`tooltip`||effectiveTrigger.value===`hover`||!__props.trapFocus||!isClient()||(initialFocusElement=document.activeElement,nextTick(()=>{let focusableElements=panelRef.value?.querySelectorAll(`a[href], button, textarea, input[type="text"], input[type="radio"], input[type="checkbox"], select, [tabindex]:not([tabindex="-1"])`);focusableElements&&focusableElements.length>0?focusableElements[0].focus({preventScroll:!0}):panelRef.value?.focus({preventScroll:!0})}))}function restoreFocus(){__props.role===`tooltip`||effectiveTrigger.value===`hover`||!__props.trapFocus||!isClient()||nextTick(()=>{initialFocusElement?.focus({preventScroll:!0})})}function onKeydown(event){isOpen.value&&(event.key===`Escape`&&__props.closeOnEscape&&!__props.persistent&&(event.preventDefault(),close()),event.key===`Tab`&&__props.trapFocus&&handleTrapFocus(event))}function handleTrapFocus(event){if(!panelRef.value||!isClient())return;let focusableElements=panelRef.value.querySelectorAll(`a[href], button, textarea, input[type="text"], input[type="radio"], input[type="checkbox"], select, [tabindex]:not([tabindex="-1"])`);if(focusableElements.length===0)return;let firstElement=focusableElements[0];let lastElement=focusableElements[focusableElements.length-1];event.shiftKey?document.activeElement===firstElement&&(event.preventDefault(),lastElement.focus()):document.activeElement===lastElement&&(event.preventDefault(),firstElement.focus())}function onClickOutside(event){if(effectiveTrigger.value!==`manual`){if(ignoreNextClickOutside){ignoreNextClickOutside=!1;return}if(__props.closeOnClickOutside&&!__props.persistent){if(triggerRef.value&&triggerRef.value.contains(event.target))return;close()}}}return watch(isOpen,(value,oldValue)=>{!isClient()||value===oldValue||(value?open():oldValue&&!value&&close())},{immediate:!0}),watch(()=>__props.position,()=>{isOpen.value&&nextTick(()=>update())}),onMounted(()=>{document.addEventListener(`keydown`,onKeydown)}),onBeforeUnmount(cleanup),onUnmounted(cleanup),__expose({open,close,toggle,isOpen,updatePosition:update,panelRef}),(_ctx,_cache)=>(openBlock(),createElementBlock(Fragment,null,[_ctx.$slots.trigger?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`m-popover m-reset-css`,[unref(attrs).class,{"--open":isOpen.value,"--disabled":__props.disabled,"--block":__props.block}]]),style:normalizeStyle(rootStyles.value)},[createElementVNode(`div`,mergeProps({id:unref(triggerId),ref:`trigger`,role:`button`,class:`m-popover-trigger`,"aria-expanded":__props.role===`dialog`||__props.role===`menu`?isOpen.value:void 0,"aria-haspopup":__props.role===`dialog`?`dialog`:void 0,"aria-describedby":__props.role===`tooltip`&&isOpen.value?panelId.value:__props.ariaDescribedby,"aria-labelledby":__props.ariaLabelledby,"aria-controls":panelId.value},triggerEvents.value),[renderSlot(_ctx.$slots,`trigger`,{open,close,toggle,isOpen:isOpen.value,trigger:effectiveTrigger.value},void 0,!0)],16,_hoisted_1)],6)):createCommentVNode(``,!0),(openBlock(),createBlock(Teleport,{to:__props.teleportTo},[createVNode(Transition,{name:transitionName.value,appear:``,onAfterLeave:_cache[0]||=$event=>emits(`after-close-animation`)},{default:withCtx(()=>[isOpen.value?withDirectives((openBlock(),createElementBlock(`div`,mergeProps({key:0,id:panelId.value,ref:`panel`,role:__props.role,"aria-label":__props.ariaLabel,"aria-labelledby":__props.role===`dialog`?__props.ariaLabelledby||unref(triggerId):void 0,"aria-describedby":__props.role===`dialog`?__props.ariaDescribedby:void 0,"aria-modal":__props.role===`dialog`?`true`:void 0,tabindex:__props.role===`dialog`?`-1`:void 0,class:[`m-popover-panel`,panelClasses.value],"aria-live":__props.announceChanges?`polite`:void 0,style:[__props.panelStyle,panelStyles.value,{transformOrigin:getTransformOrigin(computedPosition.value),visibility:unref(middlewareData).hide?.referenceHidden?`hidden`:`visible`}]},panelEvents.value),[renderSlot(_ctx.$slots,`default`,{open,close,toggle,isOpen:isOpen.value},void 0,!0)],16,_hoisted_2)),[[unref(directive),onClickOutside]]):createCommentVNode(``,!0)]),_:3},8,[`name`])],8,[`to`]))],64))}}),[[`__scopeId`,`data-v-4370ab5e`]]);export{MazPopover_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{computed,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,defineComponent,mergeProps,normalizeClass,normalizeStyle,openBlock,ref,renderSlot,toDisplayString,unref}from"vue";import '../assets/MazRadio.BwJxf7ZC.css';var _hoisted_1=[`for`,`aria-checked`];var _hoisted_2=[`id`,`value`,`disabled`,`name`,`checked`];var _hoisted_3={class:`m-radio__text`};var MazRadio_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazRadio`,props:{style:{type:[Boolean,null,String,Object,Array],default:void 0},class:{type:[Boolean,null,String,Object,Array],default:void 0},id:{default:void 0},modelValue:{default:void 0},value:{},name:{},label:{default:void 0},color:{default:`primary`},size:{default:`md`},disabled:{type:Boolean,default:!1},error:{type:Boolean},success:{type:Boolean},warning:{type:Boolean},hint:{}},emits:[`update:model-value`,`change`,`blur`,`focus`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;let instanceId=useInstanceUniqId({componentName:`MazRadio`,providedId:props.id});let inputRef=ref();let isFocused=ref(!1);let isSelected=computed(()=>props.modelValue===props.value);let radioSize=computed(()=>{switch(props.size){case`xl`:return`2.25rem`;case`lg`:return`2rem`;case`sm`:return`1.425rem`;case`xs`:return`1.325rem`;case`mini`:return`1.2rem`;default:return`1.625rem`}});let radioSelectedColor=computed(()=>`hsl(var(--maz-${props.color}))`);let radioBoxShadow=computed(()=>props.error&&!isFocused.value?`hsl(var(--maz-destructive))`:props.warning&&!isFocused.value?`hsl(var(--maz-warning))`:props.success&&!isFocused.value?`hsl(var(--maz-success))`:[`transparent`,`contrast`].includes(props.color)?`hsl(var(--maz-muted))`:`hsl(var(--maz-${props.color}) / 60%)`);function keyboardHandler(event){[`Space`].includes(event.code)&&(event.preventDefault(),emitValue())}function emitValue(){emits(`update:model-value`,props.value),emits(`change`,props.value)}function onBlur(event){isFocused.value=!1,inputRef.value?.dispatchEvent(new Event(`blur`)),emits(`blur`,event)}function onFocus(event){isFocused.value=!0,inputRef.value?.dispatchEvent(new Event(`focus`)),emits(`focus`,event)}return(_ctx,_cache)=>(openBlock(),createElementBlock(`label`,{for:unref(instanceId),class:normalizeClass([`m-radio m-reset-css`,[{"--selected":isSelected.value,"--error":__props.error,"--warning":__props.warning,"--success":__props.success},props.class]]),tabindex:`0`,role:`radio`,style:normalizeStyle([__props.style,{"--radio-size":radioSize.value,"--radio-selected-color":radioSelectedColor.value,"--radio-box-shadow":radioBoxShadow.value}]),"aria-checked":isSelected.value,onBlur,onFocus,onKeydown:keyboardHandler},[createElementVNode(`input`,mergeProps({id:unref(instanceId),ref_key:`inputRef`,ref:inputRef,value:__props.value},_ctx.$attrs,{tabindex:`-1`,disabled:__props.disabled,name:__props.name,type:`radio`,checked:isSelected.value,onChange:_cache[0]||=$event=>emitValue()}),null,16,_hoisted_2),_cache[1]||=createElementVNode(`span`,null,[createElementVNode(`span`,{class:`round`})],-1),createElementVNode(`div`,_hoisted_3,[renderSlot(_ctx.$slots,`default`,{isSelected:isSelected.value,value:__props.value},()=>[createTextVNode(toDisplayString(__props.label),1)],!0),__props.hint?(openBlock(),createElementBlock(`span`,{key:0,class:normalizeClass([`m-radio__hint`,{"--error":__props.error,"--success":__props.success,"--warning":__props.warning}])},toDisplayString(__props.hint),3)):createCommentVNode(``,!0)])],46,_hoisted_1))}}),[[`__scopeId`,`data-v-e9c69959`]]);export{MazRadio_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as getColor}from"./types.
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{t as getColor}from"./types.Cz3GY4VA.js";import{Fragment,Transition,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,createVNode,defineComponent,normalizeClass,normalizeStyle,openBlock,ref,renderList,renderSlot,toDisplayString,unref,vShow,withCtx,withDirectives}from"vue";import{MazCheck}from"@maz-ui/icons/lazy/MazCheck";import '../assets/MazRadioButtons.BSCUQjD5.css';var _hoisted_1={class:`m-radio-buttons m-reset-css`};var _hoisted_2=[`for`,`aria-checked`,`onKeydown`,`onBlur`,`onFocus`];var _hoisted_3=[`id`,`name`,`value`,`onChange`];var _hoisted_4={key:0,class:`m-radio-buttons__items__checkbox`};var MazRadioButtons_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazRadioButtons`,props:{modelValue:{default:void 0},options:{},name:{default:`MazButtonsRadio`},color:{default:`primary`},elevation:{type:Boolean,default:!1},orientation:{default:`row`},wrap:{type:Boolean,default:!0},equalSize:{type:Boolean,default:!1},selector:{type:Boolean,default:!1},block:{type:Boolean,default:!1},error:{type:Boolean},success:{type:Boolean},warning:{type:Boolean},hint:{},size:{default:`md`}},emits:[`update:model-value`,`change`,`blur`,`focus`],setup(__props,{emit:__emit}){let props=__props;let emits=__emit;function selectOption(option){emits(`update:model-value`,option.value),emits(`change`,option.value)}function isSelected(value){return props.modelValue===value}function keyboardHandler(event,option){[`Space`].includes(event.code)&&(event.preventDefault(),selectOption(option))}function getOptionId(option,i){return`option-${i}-${option.value.toString()}-${props.name}`}let inputRef=ref();function onBlur(index,event){inputRef.value?.[index]?.dispatchEvent(new Event(`blur`)),emits(`blur`,event)}function onFocus(index,event){inputRef.value?.[index]?.dispatchEvent(new Event(`focus`)),emits(`focus`,event)}return(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,_hoisted_1,[createElementVNode(`div`,{class:normalizeClass([`m-radio-buttons__wrapper`,[`--${__props.orientation}`,{"--wrap":__props.wrap,"--block":__props.block}]])},[(openBlock(!0),createElementBlock(Fragment,null,renderList(__props.options,(option,i)=>(openBlock(),createElementBlock(`label`,{key:getOptionId(option,i),for:getOptionId(option,i),class:normalizeClass([`m-radio-buttons__items maz-group`,[`--size-${__props.size}`,{"--is-selected":isSelected(option.value),"--elevation":__props.elevation,"--equal-size":__props.equalSize},option.classes]]),tabindex:`0`,style:normalizeStyle([isSelected(option.value)?{color:`hsl(var(--maz-${unref(getColor)(__props.color)}-foreground))`,backgroundColor:`hsl(var(--maz-${unref(getColor)(__props.color)}))`,borderColor:`hsl(var(--maz-${unref(getColor)(__props.color)}))`}:{},option.style]),role:`radio`,"aria-checked":isSelected(option.value),onKeydown:$event=>keyboardHandler($event,option),onBlur:$event=>onBlur(i,$event),onFocus:$event=>onFocus(i,$event)},[createElementVNode(`input`,{id:getOptionId(option,i),ref_for:!0,ref_key:`inputRef`,ref:inputRef,type:`radio`,tabindex:`-1`,name:__props.name,value:option.value,class:`maz-hidden`,onChange:$event=>selectOption(option)},null,40,_hoisted_3),__props.selector?(openBlock(),createElementBlock(`div`,_hoisted_4,[createElementVNode(`span`,{class:normalizeClass({"--is-selected":isSelected(option.value)}),style:normalizeStyle([isSelected(option.value)?{backgroundColor:`hsl(var(--maz-${unref(getColor)(props.color)}-600))`,color:`hsl(var(--maz-${unref(getColor)(props.color)}-foreground))`}:{}])},[createVNode(Transition,{name:`maz-radio-buttons-scale`},{default:withCtx(()=>[withDirectives(createVNode(unref(MazCheck),{class:`maz-size-full`},null,512),[[vShow,isSelected(option.value)]])]),_:2},1024)],6)])):createCommentVNode(``,!0),renderSlot(_ctx.$slots,`default`,{option,selected:isSelected(option.value)},()=>[createTextVNode(toDisplayString(option.label),1)],!0)],46,_hoisted_2))),128))],2),__props.hint?(openBlock(),createElementBlock(`span`,{key:0,class:normalizeClass([`m-radio-buttons__hint`,{"--error":__props.error,"--success":__props.success,"--warning":__props.warning}])},toDisplayString(__props.hint),3)):createCommentVNode(``,!0)]))}}),[[`__scopeId`,`data-v-735b3c49`]]);export{MazRadioButtons_default as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{t as _plugin_vue_export_helper_default}from"./_plugin-vue_export-helper.ChmETRGw.js";import{useInstanceUniqId}from"../composables/useInstanceUniqId.js";import{t as MazLink_default}from"./MazLink.CK1WIkI5.js";import{Fragment,computed,createBlock,createCommentVNode,createElementBlock,createElementVNode,createTextVNode,defineComponent,nextTick,normalizeClass,normalizeStyle,onMounted,openBlock,ref,renderSlot,toDisplayString,unref,useSlots,withCtx}from"vue";import{useTranslations}from"@maz-ui/translations/composables/useTranslations";import '../assets/MazReadMore.BnowLxq5.css';var _hoisted_1=[`id`];var _hoisted_2=[`id`,`aria-label`,`aria-expanded`];var MazReadMore_default=_plugin_vue_export_helper_default(defineComponent({__name:`MazReadMore`,props:{text:{},maxLines:{default:()=>void 0},maxChars:{default:()=>void 0},color:{default:`primary`},collapseText:{},expandText:{},id:{},ariaLabel:{}},setup(__props){let{t}=useTranslations();let maxLinesValue=computed(()=>__props.maxChars?void 0:__props.maxLines||4);let instanceId=useInstanceUniqId({componentName:`MazReadMore`,providedId:__props.id});let contentId=computed(()=>`${instanceId.value}-content`);let buttonId=computed(()=>`${instanceId.value}-button`);let collapseTextValue=computed(()=>__props.collapseText||t(`readMore.collapse`));let expandTextValue=computed(()=>__props.expandText||t(`readMore.expand`));let ariaLabelValue=computed(()=>__props.ariaLabel||t(`readMore.ariaLabel`));let slots=useSlots();let contentRef=ref();let hiddenSlotRef=ref();let isExpanded=ref(!1);let slotTextContent=ref(``);let hasSlot=computed(()=>!!slots.default);let shouldShowButton=ref(!1);let truncateStyle=computed(()=>isExpanded.value?{}:maxLinesValue.value?{display:`-webkit-box`,"-webkit-line-clamp":maxLinesValue.value.toString(),"-webkit-box-orient":`vertical`,overflow:`hidden`}:{});let displayedText=computed(()=>{if(!__props.maxChars||isExpanded.value)return __props.text;let content=hasSlot.value?slotTextContent.value:__props.text;return content&&content.length>__props.maxChars?`${content.slice(0,__props.maxChars)}...`:content});let showTruncatedText=computed(()=>__props.maxChars&&hasSlot.value&&!isExpanded.value&&slotTextContent.value.length>__props.maxChars);function toggleExpanded(){isExpanded.value=!isExpanded.value}function checkIfTruncated(){if(__props.maxChars&&hiddenSlotRef.value){slotTextContent.value=hiddenSlotRef.value.textContent||``,shouldShowButton.value=slotTextContent.value.length>__props.maxChars;return}if(!contentRef.value)return;let element=contentRef.value;if(maxLinesValue.value){let maxHeight=Number.parseFloat(getComputedStyle(element).lineHeight)*maxLinesValue.value;shouldShowButton.value=element.scrollHeight>maxHeight;return}__props.maxChars&&(shouldShowButton.value=(__props.text||``).length>__props.maxChars)}return onMounted(()=>{nextTick(()=>{checkIfTruncated()})}),(_ctx,_cache)=>(openBlock(),createElementBlock(`div`,{id:unref(instanceId),class:`m-read-more m-reset-css`},[hasSlot.value&&__props.maxChars?(openBlock(),createElementBlock(`div`,{key:0,ref_key:`hiddenSlotRef`,ref:hiddenSlotRef,class:`m-read-more__hidden`,"aria-hidden":`true`},[renderSlot(_ctx.$slots,`default`,{},void 0,!0)],512)):createCommentVNode(``,!0),createElementVNode(`div`,{id:contentId.value,ref_key:`contentRef`,ref:contentRef,class:normalizeClass([`m-read-more__content`,{"m-read-more__content--truncated":!isExpanded.value}]),style:normalizeStyle(truncateStyle.value),role:`region`,"aria-label":ariaLabelValue.value,"aria-expanded":shouldShowButton.value?isExpanded.value:void 0},[showTruncatedText.value?(openBlock(),createElementBlock(Fragment,{key:0},[createTextVNode(toDisplayString(displayedText.value),1)],64)):hasSlot.value?renderSlot(_ctx.$slots,`default`,{key:1},void 0,!0):(openBlock(),createElementBlock(Fragment,{key:2},[createTextVNode(toDisplayString(displayedText.value),1)],64))],14,_hoisted_2),shouldShowButton.value?(openBlock(),createBlock(MazLink_default,{key:1,id:buttonId.value,size:`sm`,class:`mt-2`,color:__props.color,underline:``,role:`button`,"aria-expanded":isExpanded.value,"aria-controls":contentId.value,onClick:toggleExpanded},{default:withCtx(()=>[createTextVNode(toDisplayString(isExpanded.value?collapseTextValue.value:expandTextValue.value),1)]),_:1},8,[`id`,`color`,`aria-expanded`,`aria-controls`])):createCommentVNode(``,!0)],8,_hoisted_1))}}),[[`__scopeId`,`data-v-1670b582`]]);export{MazReadMore_default as t};
|