@nice2dev/ui 1.0.8 → 1.0.11
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/NiceErrorBoundary-B5nF-OVn.cjs +1 -0
- package/dist/NiceErrorBoundary-BZEHCXNM.cjs +1 -0
- package/dist/NiceErrorBoundary-D6jw6wwD.js +762 -0
- package/dist/NiceErrorBoundary-D75yr_WE.js +762 -0
- package/dist/NiceForm-BgR-m8T9.cjs +382 -0
- package/dist/NiceForm-CKoJA6NG.js +5131 -0
- package/dist/NiceForm-D7xnpnRJ.cjs +382 -0
- package/dist/NiceForm-DYKciCeR.js +5131 -0
- package/dist/NiceForm.css +1 -0
- package/dist/NiceModal-1QX7NhyH.js +95 -0
- package/dist/NiceModal-Br3J9jOV.cjs +1 -0
- package/dist/NiceModal-CAwsKVQ2.cjs +1 -0
- package/dist/NiceModal-DVAsBzHP.js +95 -0
- package/dist/NiceModuleLifecyclePanel-C9xMSjOF.cjs +1 -0
- package/dist/NiceModuleLifecyclePanel-CMrPbSw9.js +5249 -0
- package/dist/NiceModuleLifecyclePanel-D3azLDdj.js +5249 -0
- package/dist/NiceModuleLifecyclePanel-DEfAIhFf.cjs +1 -0
- package/dist/NiceModuleLifecyclePanel.css +1 -0
- package/dist/NicePagination-CbB5P1N_.js +171 -0
- package/dist/NicePagination-DbE-uOkl.js +171 -0
- package/dist/NicePagination-DlealakT.cjs +1 -0
- package/dist/NicePagination-UGjzvRUS.cjs +1 -0
- package/dist/NicePinCodeInput-B8cI8zu8.js +11830 -0
- package/dist/NicePinCodeInput-BmRO9HSQ.js +11830 -0
- package/dist/NicePinCodeInput-D91uvVsF.cjs +419 -0
- package/dist/NicePinCodeInput-SGQaHvpE.cjs +419 -0
- package/dist/NicePinCodeInput.css +1 -1
- package/dist/NiceSavedQueryPanel-7nZe46t8.cjs +596 -0
- package/dist/NiceSavedQueryPanel-BSGzs7Oc.js +6449 -0
- package/dist/NiceSavedQueryPanel-CZ5bYOe_.js +6449 -0
- package/dist/NiceSavedQueryPanel-Ce2s060j.cjs +596 -0
- package/dist/NiceTabs-BeaxZzAO.js +1636 -0
- package/dist/NiceTabs-DcbYFIWR.cjs +1 -0
- package/dist/NiceTabs-DvOmxKyQ.cjs +1 -0
- package/dist/NiceTabs-DzLHzwuA.js +1636 -0
- package/dist/NiceWindow-Bga9fOkg.js +1409 -0
- package/dist/NiceWindow-CVgkxcCz.cjs +1 -0
- package/dist/NiceWindow-CxWTj5xH.cjs +1 -0
- package/dist/NiceWindow-DeC83yfE.js +1409 -0
- package/dist/charts-BAS21jkC.js +4621 -0
- package/dist/charts-BcvKWYUl.cjs +759 -0
- package/dist/charts-DShUbWrP.cjs +759 -0
- package/dist/charts-DZvmvfhM.js +4621 -0
- package/dist/charts.cjs +1 -1
- package/dist/charts.d.ts +42 -45
- package/dist/charts.mjs +1 -1
- package/dist/core-B4b1BmHt.js +22177 -0
- package/dist/core-C2ZmWe_u.cjs +96 -0
- package/dist/core-CjmLbclt.cjs +96 -0
- package/dist/core-Da43q-pO.js +22094 -0
- package/dist/data-branching-CJlrg8qf.cjs +1 -0
- package/dist/data-branching-DCUwI53s.js +6121 -0
- package/dist/data-branching.cjs +1 -1
- package/dist/data-branching.d.ts +1 -38
- package/dist/data-branching.mjs +1 -1
- package/dist/data.cjs +1 -1
- package/dist/data.d.ts +206 -192
- package/dist/data.mjs +1 -1
- package/dist/devops-CXynFG3X.cjs +17 -0
- package/dist/devops-D0TfzV5B.js +7660 -0
- package/dist/devops.cjs +1 -1
- package/dist/devops.d.ts +1 -38
- package/dist/devops.mjs +1 -1
- package/dist/editors.cjs +1 -1
- package/dist/editors.d.ts +311 -393
- package/dist/editors.mjs +61 -64
- package/dist/feedback.cjs +1 -1
- package/dist/feedback.d.ts +3 -44
- package/dist/feedback.mjs +11 -10
- package/dist/index-B8wxZ8Ps.cjs +5192 -0
- package/dist/index-DlHlXz8e.js +57319 -0
- package/dist/index-Dx726U90.cjs +5192 -0
- package/dist/index-pAuGTbuB.js +57319 -0
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +2249 -11141
- package/dist/index.mjs +880 -1018
- package/dist/lazy.cjs +1 -1
- package/dist/lazy.d.ts +7 -39
- package/dist/lazy.mjs +24 -24
- package/dist/navigation.cjs +1 -1
- package/dist/navigation.d.ts +151 -216
- package/dist/navigation.mjs +52 -46
- package/dist/no-code-B5bzduNP.cjs +332 -0
- package/dist/no-code-D8RJ7lx0.js +7064 -0
- package/dist/no-code.cjs +1 -1
- package/dist/no-code.d.ts +1 -38
- package/dist/no-code.mjs +1 -1
- package/dist/overlays.cjs +1 -1
- package/dist/overlays.d.ts +13 -45
- package/dist/overlays.mjs +243 -233
- package/package.json +5 -3
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),$=require("./core-CjmLbclt.cjs"),s=require("react"),_e=require("./NiceTabs-DcbYFIWR.cjs"),Be=s.forwardRef(({label:n,helperText:i,error:a,required:l,disabled:t,readOnly:r,size:d="md",name:o,id:b,className:T,style:Z,accessMode:g,displayStyle:m,value:Y,defaultValue:ie,onChange:G,onBlur:F,onKeyDown:q,placeholder:O,rows:z=3,maxLength:B,resize:se="vertical",autoFocus:J,showCount:L,counterPlacement:v="bottom",submitOnEnter:P,onSubmit:u,showKeyboardHints:y,labelPlacement:K,errorPlacement:ne,loading:j,labelWidth:M,controlWidth:w,displayMode:H},V)=>{const S=$.Ns(g,b);if(S==="hidden")return null;S==="disabled"&&(t=!0),S==="readOnly"&&(r=!0);const{t:ee}=$.Wo(),I=$.cs(b),_=$.Ui("input",m),f=$.Gi("input",m),x=Y?.length??0,ae=B?x>B:!1,ce=$.Qi({enabled:H,readOnly:r,disabled:t}),k={key:"Enter",ctrl:!0,description:ee("shortcuts.submit","Submit")},W=s.useCallback(c=>{P&&$._s(c,k)&&(c.preventDefault(),u?.()),q?.(c)},[P,u,q,k]),C=s.useMemo(()=>{const c=[];return P&&c.push(k),c.push({key:"Tab",description:ee("shortcuts.indent","Indent (when supported)")}),c},[P,ee,k]);return e.jsxs("div",{className:`nice-field nice-field--${d} ${K==="left"?"nice-field--label-left":""} ${j?"nice-field--loading":""} ${T||""}`,style:{...Z,...M!=null&&{"--nice-field-label-width":typeof M=="number"?`${M}px`:M},...w!=null&&{"--nice-field-control-width":typeof w=="number"?`${w}px`:w}},"aria-busy":j||void 0,children:[n&&e.jsxs("label",{htmlFor:I,className:`nice-field__label ${l?"nice-field__label--required":""}`,children:[n,y&&C.length>0&&e.jsx($.Hr,{shortcuts:C,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control nice-field__control--textarea",children:[ce.isDisplay?e.jsx($.Zi,{value:Y??ie??"",placeholder:O,disabled:t,readOnly:r,onActivate:ce.enterEdit,ariaLabel:n,className:"nice-display-value--textarea"}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",flex:"1 1 auto",minWidth:0},children:[e.jsx("textarea",{ref:c=>{typeof V=="function"?V(c):V&&(V.current=c),ce.autoFocusRef(c)},id:I,className:`nice-textarea nice-input--${d} nice-textarea--ds-${f} ${a?"nice-textarea--error":""} ${t?"nice-textarea--disabled":""}`,style:{..._,resize:se},name:o,value:Y,defaultValue:ie,placeholder:O,rows:z,maxLength:B,disabled:t||j,readOnly:r,autoFocus:J,"aria-invalid":!!a,"aria-describedby":a?`${I}-error`:i?`${I}-helper`:void 0,onChange:c=>G?.(c.target.value),onBlur:c=>{H&&ce.exitEdit(),F?.(c)},onKeyDown:W}),v!=="right"&&(L||B)&&e.jsxs("div",{className:`nice-textarea__counter ${ae?"nice-textarea__counter--over":""}`,children:[x,B?` / ${B}`:""]})]}),v==="right"&&(L||B)&&e.jsxs("div",{className:`nice-textarea__counter nice-textarea__counter--right ${ae?"nice-textarea__counter--over":""}`,children:[x,B?` / ${B}`:""]})]}),j&&e.jsx("span",{className:"nice-field__spinner nice-field__spinner--textarea",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),ne==="right"&&a&&e.jsx("div",{id:`${I}-error`,className:"nice-field__error",role:"alert",children:a}),ne==="right"&&!a&&i&&e.jsx("div",{id:`${I}-helper`,className:"nice-field__helper",children:i})]}),ne!=="right"&&a&&e.jsx("div",{id:`${I}-error`,className:"nice-field__error",role:"alert",children:a}),ne!=="right"&&!a&&i&&e.jsx("div",{id:`${I}-helper`,className:"nice-field__helper",children:i})]})});Be.displayName="NiceTextArea";const bn={"date-local":{inputType:"date",localized:!0},"date-utc":{inputType:"date",localized:!1},"datetime-local":{inputType:"datetime-local",localized:!0},"datetime-utc":{inputType:"datetime-local",localized:!1},"month-local":{inputType:"month",localized:!0},"month-utc":{inputType:"month",localized:!1},week:{inputType:"week",localized:!1},time:{inputType:"time",localized:!1}},Cn={date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm",month:"yyyy-MM",week:"yyyy-Www",time:"HH:mm"},_n={"yyyy-MM-dd":"YYYY-MM-DD","yyyy-MM-ddTHH:mm":"YYYY-MM-DDTHH:MM","yyyy-MM":"YYYY-MM","yyyy-Www":"YYYY-Www","HH:mm":"HH:MM"};function Ue(n){const i=(n||"").toLowerCase().replace("_","-"),a=i.split("-")[0],l={pl:"dd.MM.yyyy","pl-pl":"dd.MM.yyyy",de:"dd.MM.yyyy","de-de":"dd.MM.yyyy","de-at":"dd.MM.yyyy","de-ch":"dd.MM.yyyy",cs:"dd.MM.yyyy","cs-cz":"dd.MM.yyyy",sk:"dd.MM.yyyy","sk-sk":"dd.MM.yyyy",ru:"dd.MM.yyyy","ru-ru":"dd.MM.yyyy",fi:"dd.MM.yyyy","fi-fi":"dd.MM.yyyy",no:"dd.MM.yyyy",nb:"dd.MM.yyyy",nn:"dd.MM.yyyy",da:"dd.MM.yyyy","da-dk":"dd.MM.yyyy",tr:"dd.MM.yyyy","tr-tr":"dd.MM.yyyy",sl:"dd.MM.yyyy",hr:"dd.MM.yyyy",sr:"dd.MM.yyyy",ro:"dd.MM.yyyy",bg:"dd.MM.yyyy",uk:"dd.MM.yyyy",is:"dd.MM.yyyy",et:"dd.MM.yyyy",lv:"dd.MM.yyyy",lt:"dd.MM.yyyy","en-gb":"dd/MM/yyyy","en-au":"dd/MM/yyyy","en-ie":"dd/MM/yyyy","en-nz":"dd/MM/yyyy","en-in":"dd/MM/yyyy",fr:"dd/MM/yyyy","fr-fr":"dd/MM/yyyy","fr-be":"dd/MM/yyyy",es:"dd/MM/yyyy","es-es":"dd/MM/yyyy",pt:"dd/MM/yyyy","pt-pt":"dd/MM/yyyy","pt-br":"dd/MM/yyyy",it:"dd/MM/yyyy","it-it":"dd/MM/yyyy",nl:"dd-MM-yyyy","nl-nl":"dd-MM-yyyy","nl-be":"dd/MM/yyyy",el:"dd/MM/yyyy",hu:"yyyy.MM.dd",en:"MM/dd/yyyy","en-us":"MM/dd/yyyy","en-ca":"MM/dd/yyyy",ja:"yyyy/MM/dd","ja-jp":"yyyy/MM/dd",ko:"yyyy.MM.dd","ko-kr":"yyyy.MM.dd",zh:"yyyy/MM/dd","zh-cn":"yyyy/MM/dd","zh-tw":"yyyy/MM/dd",sv:"yyyy-MM-dd","sv-se":"yyyy-MM-dd"};if(l[i])return l[i];if(l[a])return l[a];try{const r=new Intl.DateTimeFormat(n,{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(2024,0,15));let d="";for(const o of r)if(o.type==="day")d+="dd";else if(o.type==="month")d+="MM";else if(o.type==="year")d+="yyyy";else if(o.type==="literal"){const b=o.value.replace(/[\u00A0\u202F\u2009]/g," ").trim();d+=b||"."}return!/y/.test(d)||!/M/.test(d)||!/d/.test(d)?"yyyy-MM-dd":d}catch{return"yyyy-MM-dd"}}function Nn(n){const a=Ue(n).replace(/dd[^\w]*/g,"").replace(/[^\w]*dd/g,"");return!/y/.test(a)||!/M/.test(a)?"yyyy-MM":a}function vn(){if(typeof document<"u"){const n=document.documentElement?.lang;if(n&&/^[a-zA-Z]{2,}/.test(n))return n}return typeof navigator<"u"&&navigator.language?navigator.language:"en-US"}function jn(n,i,a){const l=Cn[n];let t=l;i&&(n==="date"||n==="datetime-local"||n==="month")&&(n==="date"?t=Ue(a):n==="datetime-local"?t=`${Ue(a)} HH:mm`:t=Nn(a));const r=_n[t]??t.replace(/y/g,"Y").replace(/M/g,"M").replace(/d/g,"D").replace(/H/g,"H").replace(/m/g,"M");return{displayTpl:t,isoTpl:l,placeholder:r}}const kn=new Set(["y","M","d","H","m","w"]);function Se(n){return kn.has(n)}function Ge(n){let i=0;for(const a of n)Se(a)&&i++;return i}function Pe(n,i){let a="",l=0;for(const t of n)if(Se(t)){if(l>=i.length)break;a+=i[l++]}else{if(l===0)break;l>=i.length,a+=t}return a}function Mn(n,i,a){if(a.length===0)return"";const l={};let t=0;for(const o of n)Se(o)&&(t>=a.length?(l[o]??(l[o]=[])).push(""):(l[o]??(l[o]=[])).push(a[t]),t++);const r={};let d="";for(const o of i)if(Se(o)){const b=l[o]??[],T=r[o]??0;d+=b[T]??"",r[o]=T+1}return d}function Re(n,i,a){if(a.length===0)return"";const l={};let t=0;for(const o of i)Se(o)&&((l[o]??(l[o]=[])).push(a[t]??""),t++);const r={};let d="";for(const o of n)if(Se(o)){const b=l[o]??[],T=r[o]??0;d+=b[T]??"",r[o]=T+1}return d.replace(/\s+$/,"")}function wn(n,i,a){const l=Ge(i);if(a.length<l)return"";const t=Mn(n,i,a);if(t.length<l)return"";let r="",d=0;for(const o of i)Se(o)?r+=t[d++]:r+=o;return r}function Fe(n,i){if(!n)return"";const a=n.replace(/[^0-9]/g,""),l=Ge(i);return a.slice(0,l)}function we(n,i,a){const l=Pe(n,a);let t=0;const r=Math.min(i,l.length);for(let d=0;d<r;d++)Se(n[d])&&t++;return Math.min(t,a.length)}function $n(n,i,a){if(a<=0)return 0;const l=Pe(n,i);let t=0;for(let r=0;r<l.length;r++)if(Se(n[r])&&(t++,t===a)){let d=r+1;for(;d<l.length&&!Se(n[d]);)d++;return d}return l.length}const He=s.forwardRef(({label:n,helperText:i,error:a,required:l,disabled:t,readOnly:r,size:d="md",name:o,id:b,className:T,style:Z,accessMode:g,value:m,onChange:Y,onBlur:ie,onKeyDown:G,min:F,max:q,type:O,dateFormatPreset:z,submitOnEnter:B,onSubmit:se,showKeyboardHints:J,displayStyle:L,labelPlacement:v,errorPlacement:P,loading:u,labelWidth:y,controlWidth:K,placeholder:ne,clearable:j=!1,showPickerButton:M=!0,displayLocale:w},H)=>{const V=$.Ui("input",L),S=$.Gi("input",L),ee=$.Ns(g,b);if(ee==="hidden")return null;ee==="disabled"&&(t=!0),ee==="readOnly"&&(r=!0);const{t:I}=$.Wo(),_=$.cs(b),f=s.useRef(null),x=s.useRef(null),ae=z?bn[z]:null,ce=ae?.inputType??O??"date",k=ae?.localized??!1,W=w??vn(),C=s.useMemo(()=>jn(ce,k,W),[ce,k,W]),c=s.useMemo(()=>Ge(C.isoTpl),[C.isoTpl]),[A,te]=s.useState(()=>{const p=Fe(m,C.isoTpl);return Re(C.displayTpl,C.isoTpl,p)}),ue=s.useRef(A);s.useEffect(()=>{ue.current=A},[A]);const ge=s.useRef(m??""),be=s.useRef(null);s.useEffect(()=>{const p=m??"";if(p===ge.current)return;const X=Fe(p,C.isoTpl),U=Re(C.displayTpl,C.isoTpl,X);te(U),ge.current=p},[m,C.displayTpl,C.isoTpl]),s.useEffect(()=>{const p=Fe(m,C.isoTpl);te(Re(C.displayTpl,C.isoTpl,p))},[C.displayTpl,C.isoTpl]),s.useEffect(()=>{if(be.current==null)return;const p=be.current;be.current=null;const X=f.current;if(X&&document.activeElement===X)try{X.setSelectionRange(p,p)}catch{}});const Ce=s.useMemo(()=>Pe(C.displayTpl,A),[C.displayTpl,A]),h=ne??C.placeholder,R=Math.max(C.displayTpl.length+1,9),Q=$.Xs({enabled:B,onSubmit:se}),he=s.useCallback((p,X)=>{const U=p.slice(0,c);ue.current=U,te(U),be.current=$n(C.displayTpl,U,Math.max(0,Math.min(U.length,X)));const xe=wn(C.displayTpl,C.isoTpl,U);xe!==ge.current&&(ge.current=xe,Y?.(xe))},[Y,C.displayTpl,C.isoTpl,c]),ye=s.useCallback(p=>{if(Q(p),r||t){G?.(p);return}const X=p.key;if(p.ctrlKey||p.metaKey||p.altKey){G?.(p);return}const U=ue.current;if(X==="Escape"&&U.length>0){p.preventDefault(),he("",0),G?.(p);return}const xe=p.currentTarget,ve=xe.selectionStart??0,ke=xe.selectionEnd??0;if(/^[0-9]$/.test(X)){p.preventDefault();const me=we(C.displayTpl,ve,U),Ne=we(C.displayTpl,ke,U),je=U.slice(0,me),$e=U.slice(Ne);let De=(je+X+$e).slice(0,c);me===Ne&&je.length+1+$e.length>c&&(De=(je+X+$e.slice(1)).slice(0,c)),he(De,me+1),G?.(p);return}if(X==="Backspace"){if(p.preventDefault(),ve!==ke){const me=we(C.displayTpl,ve,U),Ne=we(C.displayTpl,ke,U),je=U.slice(0,me)+U.slice(Ne);he(je,me)}else{const me=we(C.displayTpl,ve,U);if(me===0){G?.(p);return}const Ne=U.slice(0,me-1)+U.slice(me);he(Ne,me-1)}G?.(p);return}if(X==="Delete"){if(p.preventDefault(),ve!==ke){const me=we(C.displayTpl,ve,U),Ne=we(C.displayTpl,ke,U),je=U.slice(0,me)+U.slice(Ne);he(je,me)}else{const me=we(C.displayTpl,ve,U);if(me>=U.length){G?.(p);return}const Ne=U.slice(0,me)+U.slice(me+1);he(Ne,me)}G?.(p);return}G?.(p)},[he,t,Q,G,r,C.displayTpl,c]),de=s.useCallback(p=>{if(r||t)return;const X=p.clipboardData.getData("text");if(!X)return;p.preventDefault();const U=ue.current,xe=X.replace(/[^0-9]/g,"");let ve;xe.length===c&&(X.includes("-")||X.includes("T"))?ve=Re(C.displayTpl,C.isoTpl,xe):ve=xe.slice(0,c);const ke=p.currentTarget,me=ke.selectionStart??0,Ne=ke.selectionEnd??0,je=we(C.displayTpl,me,U),$e=we(C.displayTpl,Ne,U),De=U.slice(0,je),Ae=U.slice($e),xn=(De+ve+Ae).slice(0,c);he(xn,Math.min(c,De.length+ve.length))},[he,t,r,C.displayTpl,C.isoTpl,c]),E=s.useCallback(p=>{const X=p;if(X.inputType==="insertText"||X.inputType==="insertCompositionText"||X.inputType==="insertFromComposition"){const U=X.data??"";if(!/^[0-9]+$/.test(U)){p.preventDefault();return}if(U.length>1){p.preventDefault();const xe=p.currentTarget,ve=xe.selectionStart??0,ke=xe.selectionEnd??0,me=ue.current,Ne=we(C.displayTpl,ve,me),je=we(C.displayTpl,ke,me),$e=me.slice(0,Ne),De=me.slice(je),Ae=($e+U+De).slice(0,c);he(Ae,Math.min(c,$e.length+U.length))}}},[he,C.displayTpl,c]),le=s.useCallback(p=>{if(r||t)return;const X=p.target.value,U=X.replace(/[^0-9]/g,"").slice(0,c);if(U!==ue.current)if(U.length===c&&(X.includes("-")||X.includes("T")||X.includes(":"))){const xe=Re(C.displayTpl,C.isoTpl,U);he(xe,xe.length)}else he(U,U.length)},[he,t,r,C.displayTpl,C.isoTpl,c]),oe=s.useCallback(()=>{he("",0),requestAnimationFrame(()=>f.current?.focus())},[he]),N=s.useCallback(()=>{const p=x.current;if(!p||t||r)return;const X=p;try{if(typeof X.showPicker=="function"){X.showPicker();return}}catch{}p.focus(),p.click()},[t,r]),D=s.useCallback(p=>{const X=p.target.value,U=Fe(X,C.isoTpl),xe=Re(C.displayTpl,C.isoTpl,U);ge.current=X,te(xe),Y?.(X),requestAnimationFrame(()=>f.current?.focus())},[Y,C.displayTpl,C.isoTpl]),re=s.useCallback(p=>{f.current=p,typeof H=="function"?H(p):H&&(H.current=p)},[H]),pe=s.useMemo(()=>{const p=[];return B&&p.push($.Ws.submit),p.push({key:"Esc",description:I("shortcuts.clearDate","Clear value")}),p},[B,I]),fe=ce==="time";return e.jsxs("div",{className:`nice-field nice-field--${d}${v?` nice-field--label-${v}`:""}${P==="right"?" nice-field--error-right":""} ${u?"nice-field--loading":""} ${T||""}`,style:{...Z,...y!=null&&{"--nice-field-label-width":typeof y=="number"?`${y}px`:y},...K!=null&&{"--nice-field-control-width":typeof K=="number"?`${K}px`:K}},"aria-busy":u||void 0,children:[n&&e.jsxs("label",{htmlFor:_,className:`nice-field__label ${l?"nice-field__label--required":""}`,children:[n,J&&pe.length>0&&e.jsx($.Hr,{shortcuts:pe,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{className:`nice-input nice-input--date nice-input--${d} nice-input--ds-${S} ${a?"nice-input--error":""} ${t?"nice-input--disabled":""} ${r?"nice-input--readonly":""}`,style:{...V,width:"fit-content",position:"relative"},children:[e.jsx("input",{ref:re,id:_,className:"nice-input__native nice-masked-input",type:"text",name:o,value:Ce,placeholder:h,disabled:t||u,readOnly:r,autoComplete:"off",spellCheck:!1,inputMode:"numeric","aria-invalid":!!a,"aria-label":n?void 0:I("controls.date","Date"),"data-display-tpl":C.displayTpl,"data-iso-tpl":C.isoTpl,style:{width:`${R}ch`,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontVariantNumeric:"tabular-nums"},onBeforeInput:E,onChange:le,onBlur:ie,onKeyDown:ye,onPaste:de}),M&&!t&&!r&&e.jsxs(e.Fragment,{children:[e.jsx("button",{type:"button",className:"nice-input__picker-trigger",onClick:N,"aria-label":I("controls.openPicker","Open picker"),tabIndex:-1,children:fe?e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",focusable:"false",children:[e.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"1.8"}),e.jsx("path",{d:"M12 7v5l3.5 2",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round"})]}):e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",focusable:"false",children:[e.jsx("rect",{x:"3.25",y:"4.5",width:"17.5",height:"16.5",rx:"2",stroke:"currentColor",strokeWidth:"1.7"}),e.jsx("line",{x1:"16",y1:"2.5",x2:"16",y2:"6.5",stroke:"currentColor",strokeWidth:"1.7",strokeLinecap:"round"}),e.jsx("line",{x1:"8",y1:"2.5",x2:"8",y2:"6.5",stroke:"currentColor",strokeWidth:"1.7",strokeLinecap:"round"}),e.jsx("line",{x1:"3.25",y1:"9.75",x2:"20.75",y2:"9.75",stroke:"currentColor",strokeWidth:"1.5"})]})}),e.jsx("input",{ref:x,type:ce,className:"nice-input__picker-companion",value:m??"",min:F,max:q,onChange:D,tabIndex:-1,"aria-hidden":"true",style:{position:"absolute",width:0,height:0,opacity:0,pointerEvents:"none",border:0,padding:0,left:0,bottom:0}})]}),j&&!t&&!r&&e.jsx("button",{type:"button",className:"nice-input__clear",onClick:oe,disabled:!m,"aria-label":I("controls.clear","Clear"),tabIndex:m?0:-1,children:"✕"})]}),u&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),P==="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),P==="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]}),P!=="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),P!=="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]})});He.displayName="NiceDatePicker";const ln=({label:n,helperText:i,error:a,required:l,disabled:t,size:r="md",name:d,id:o,className:b,style:T,accessMode:Z,options:g,value:m,onChange:Y,direction:ie="horizontal",showKeyboardHints:G,displayStyle:F,labelPlacement:q,errorPlacement:O,labelWidth:z,controlWidth:B,loading:se})=>{$.Gi("toggle",F);const J=$.Ns(Z,o);if(J==="hidden")return null;(J==="disabled"||J==="readOnly")&&(t=!0);const{t:L}=$.Wo(),v=$.cs(o),P=d||v,u=s.useMemo(()=>[{key:"ArrowUp",description:L("shortcuts.previousOption","Previous option")},{key:"ArrowDown",description:L("shortcuts.nextOption","Next option")},{key:"Space",description:L("shortcuts.select","Select")}],[L]);return e.jsxs("div",{className:`nice-field nice-field--inline nice-field--inline-block nice-field--${r} ${q==="left"?"nice-field--label-left":""} ${O==="right"?"nice-field--error-right":""} ${se?"nice-field--loading":""} ${b||""}`,style:{...T,...z!=null&&{"--nice-field-label-width":typeof z=="number"?`${z}px`:z},...B!=null&&{"--nice-field-control-width":typeof B=="number"?`${B}px`:B}},role:"radiogroup","aria-labelledby":`${v}-label`,"aria-busy":se||void 0,children:[n&&e.jsxs("span",{id:`${v}-label`,className:`nice-field__label ${l?"nice-field__label--required":""}`,children:[n,G&&e.jsx($.Hr,{shortcuts:u,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control",children:[e.jsx("div",{className:`nice-radio-group ${ie==="vertical"?"nice-radio-group--vertical":""}`,children:g.map(y=>e.jsxs("label",{className:`nice-radio ${t||y.disabled||se?"nice-radio--disabled":""}`,children:[e.jsx("input",{type:"radio",className:"nice-radio__input",name:P,value:y.value,checked:m===y.value,disabled:t||y.disabled||se,onChange:()=>Y?.(y.value)}),e.jsx("span",{className:"nice-radio__circle",children:e.jsx("span",{className:"nice-radio__dot"})}),e.jsx("span",{children:y.label})]},y.value))}),se&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),O==="right"&&a&&e.jsx("div",{id:`${v}-error`,className:"nice-field__error",role:"alert",children:a}),O==="right"&&!a&&i&&e.jsx("div",{id:`${v}-helper`,className:"nice-field__helper",children:i})]}),O!=="right"&&a&&e.jsx("div",{id:`${v}-error`,className:"nice-field__error",role:"alert",children:a}),O!=="right"&&!a&&i&&e.jsx("div",{id:`${v}-helper`,className:"nice-field__helper",children:i})]})},Ke=s.forwardRef(({label:n,helperText:i,error:a,required:l,disabled:t,id:r,className:d,style:o,accessMode:b,value:T=0,onChange:Z,min:g=0,max:m=100,step:Y=1,showValue:ie=!0,showMinMax:G=!1,formatValue:F,showKeyboardHints:q,displayStyle:O,size:z="md",labelPlacement:B,errorPlacement:se,labelWidth:J,controlWidth:L,loading:v,showTicks:P=!1,tickInterval:u,maxTicks:y=21,showTickLabels:K=!1},ne)=>{$.Gi("input",O);const j=$.Ns(b,r);if(j==="hidden")return null;(j==="disabled"||j==="readOnly")&&(t=!0);const{t:M}=$.Wo(),w=$.cs(r),H=s.useMemo(()=>(T-g)/(m-g)*100,[T,g,m]),V=F?F(T):T.toString(),S=s.useMemo(()=>{if(!P)return[];const _=m-g;if(_<=0)return[g,m];let f=u??Y,x=Math.floor(_/f)+1;return x>y&&(f=_/(y-1),x=y),Array.from({length:x},(ae,ce)=>{const k=g+ce*f;return ce===x-1?m:k})},[P,g,m,Y,u,y]),ee=s.useMemo(()=>[$.Ws.increment,$.Ws.decrement,$.Ws.first,$.Ws.last,$.Ws.incrementBig,$.Ws.decrementBig],[]),I=B==="left";return e.jsxs("div",{className:`nice-field nice-field--${z} ${I?"nice-field--label-left":""} ${v?"nice-field--loading":""} ${d||""}`,style:{...o,...J!=null&&{"--nice-field-label-width":typeof J=="number"?`${J}px`:J},...L!=null&&{"--nice-field-control-width":typeof L=="number"?`${L}px`:L}},"aria-busy":v||void 0,children:[I?n&&e.jsxs("label",{htmlFor:w,className:`nice-field__label ${l?"nice-field__label--required":""}`,children:[n,q&&e.jsx($.Hr,{shortcuts:ee,size:"sm"})]}):(n||ie||q)&&e.jsxs("div",{className:"nice-slider__header",children:[n?e.jsxs("label",{htmlFor:w,className:`nice-field__label ${l?"nice-field__label--required":""}`,children:[n,q&&e.jsx($.Hr,{shortcuts:ee,size:"sm"})]}):e.jsx("span",{}),ie&&e.jsx("span",{className:"nice-slider__value nice-slider__value--header",children:V})]}),e.jsxs("div",{className:"nice-field__control nice-field__control--slider",children:[e.jsxs("div",{className:`nice-slider ${t||v?"nice-slider--disabled":""} ${P?"nice-slider--with-ticks":""}`,children:[e.jsxs("div",{className:"nice-slider__track-wrapper",children:[e.jsx("div",{className:"nice-slider__track",children:e.jsx("div",{className:"nice-slider__fill",style:{width:`${H}%`}})}),P&&S.length>0&&e.jsx("div",{className:"nice-slider__ticks","aria-hidden":"true",children:S.map((_,f)=>{const x=(_-g)/(m-g)*100,ae=_<=T;return e.jsx("span",{className:`nice-slider__tick ${ae?"nice-slider__tick--active":""}`,style:{left:`${x}%`},children:K&&e.jsx("span",{className:"nice-slider__tick-label",children:F?F(_):_})},f)})}),e.jsx("input",{ref:ne,id:w,type:"range",className:"nice-slider__native",min:g,max:m,step:Y,value:T,disabled:t||v,"aria-valuenow":T,"aria-valuemin":g,"aria-valuemax":m,onChange:_=>Z?.(parseFloat(_.target.value))}),e.jsx("div",{className:"nice-slider__thumb-visual",style:{left:`${H}%`}})]}),G&&e.jsxs("div",{className:"nice-slider__labels",children:[e.jsx("span",{children:F?F(g):g}),e.jsx("span",{children:F?F(m):m})]})]}),I&&ie&&e.jsx("span",{className:"nice-slider__value nice-slider__value--inline",children:V}),v&&e.jsx("span",{className:"nice-field__spinner nice-field__spinner--slider",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),se==="right"&&a&&e.jsx("div",{className:"nice-field__error nice-field__error--slider",role:"alert",children:a}),se==="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper nice-field__helper--slider",children:i})]}),se!=="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),se!=="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]})});Ke.displayName="NiceSlider";function Sn({text:n,query:i}){if(!i)return e.jsx(e.Fragment,{children:n});const a=n.toLowerCase().indexOf(i.toLowerCase());return a<0?e.jsx(e.Fragment,{children:n}):e.jsxs("span",{children:[n.slice(0,a),e.jsx("strong",{children:n.slice(a,a+i.length)}),n.slice(a+i.length)]})}const cn=({options:n,value:i,onChange:a,minSearchLength:l=1,maxResults:t=10,onSearch:r,clearable:d,loading:o,multiple:b,renderOption:T,highlightMatch:Z=!0,label:g,error:m,helperText:Y,required:ie,disabled:G,size:F="md",id:q,className:O,style:z,accessMode:B,showKeyboardHints:se,displayStyle:J,labelPlacement:L,errorPlacement:v,labelWidth:P,controlWidth:u})=>{$.Ui("input",J),$.Gi("input",J);const y=$.Ns(B,q);if(y==="hidden")return null;(y==="disabled"||y==="readOnly")&&(G=!0);const K=$.cs(q),{t:ne}=$.Wo(),j=s.useMemo(()=>b?Array.isArray(i)?i:i?[i]:[]:[],[i,b]),[M,w]=s.useState(b||Array.isArray(i)?"":i),[H,V]=s.useState(!1),[S,ee]=s.useState(-1),I=s.useRef(null),_=s.useRef(null);$.ds(I,()=>V(!1));const f=s.useMemo(()=>{const c=[$.Ws.moveDown,$.Ws.moveUp,$.Ws.submit,$.Ws.cancel];return b&&c.push({key:"Backspace",description:ne("shortcuts.removeLastTag","Remove last tag")}),c},[b,ne]);s.useEffect(()=>{b||w(Array.isArray(i)?"":i)},[i,b]);const x=s.useMemo(()=>{if(M.length<l)return[];if(r)return n.slice(0,t);const c=M.toLowerCase();return n.filter(A=>A.label.toLowerCase().includes(c)).slice(0,t)},[n,M,l,t,r]),ae=s.useMemo(()=>{const c=new Map;for(const A of x){const te=A.group||"";c.has(te)||c.set(te,[]),c.get(te).push(A)}return c},[x]),ce=s.useCallback(c=>{w(c),V(c.length>=l),ee(0),r?.(c)},[l,r]),k=s.useCallback(c=>{if(b){const A=String(c.value),te=j.includes(A)?j.filter(ue=>ue!==A):[...j,A];a?.(te),w("")}else w(c.label),a?.(String(c.value)),V(!1)},[a,b,j]),W=c=>{if(b&&c.key==="Backspace"&&!M&&j.length>0){a?.(j.slice(0,-1));return}if(!H&&(c.key==="ArrowDown"||c.key==="ArrowUp")){c.preventDefault(),V(!0),ee(0);return}H&&(c.key==="ArrowDown"?(c.preventDefault(),ee(A=>A<0?0:Math.min(A+1,x.length-1))):c.key==="ArrowUp"?(c.preventDefault(),ee(A=>A<=0?x.length-1:A-1)):(c.key==="Enter"||c.key==="Tab")&&S>=0&&S<x.length?(c.preventDefault(),k(x[S])):c.key==="Escape"&&V(!1))},C=s.useCallback(c=>{a?.(j.filter(A=>A!==c))},[j,a]);return e.jsxs("div",{className:`nice-field nice-field--${F} ${L==="left"?"nice-field--label-left":""} ${o?"nice-field--loading":""} ${O||""}`,style:{width:"fit-content",...z,...P!=null&&{"--nice-field-label-width":typeof P=="number"?`${P}px`:P},...u!=null&&{"--nice-field-control-width":typeof u=="number"?`${u}px`:u}},ref:I,"aria-busy":o||void 0,children:[g&&e.jsxs("label",{className:`nice-field__label ${ie?"nice-field__label--required":""}`,htmlFor:K,children:[g,se&&e.jsx($.Hr,{shortcuts:f,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control",style:{position:"relative"},children:[e.jsx("div",{className:`nice-input nice-input--${F} ${m?"nice-input--error":""} ${G?"nice-input--disabled":""}`,style:{width:"220px"},children:e.jsxs("div",{className:"nice-field__input-wrap",style:{display:"flex",flexWrap:b?"wrap":"nowrap",gap:4,alignItems:"center",flex:1,minWidth:0},children:[b&&j.map(c=>{const A=n.find(te=>String(te.value)===c);return e.jsxs("span",{className:"nice-autocomplete__tag",children:[A?.label||c,e.jsx("button",{type:"button",className:"nice-autocomplete__tag-remove",onClick:()=>C(c),children:"✕"})]},c)}),e.jsx("input",{ref:_,id:K,type:"text",className:"nice-input__native",value:M,onChange:c=>ce(c.target.value),onFocus:()=>M.length>=l&&V(!0),onKeyDown:W,disabled:G,required:ie,role:"combobox","aria-expanded":H,"aria-autocomplete":"list",autoComplete:"off",style:{flex:1,minWidth:60,border:"none",outline:"none",background:"transparent",color:"inherit",padding:0,font:"inherit"}}),d&&!b&&M&&!G&&e.jsx("button",{type:"button",className:"nice-field__clear",onClick:()=>{w(""),a?.("")},"aria-label":ne("controls.clear","Clear"),children:"✕"})]})}),H&&x.length>0&&e.jsx("ul",{className:"nice-dropdown__list",role:"listbox",children:Array.from(ae.entries()).map(([c,A])=>e.jsxs(s.Fragment,{children:[c&&e.jsx("li",{className:"nice-dropdown__group-label",children:c}),A.map(te=>{const ge=x.indexOf(te)===S,be=b&&j.includes(String(te.value));return e.jsx("li",{role:"option",className:`nice-dropdown__option ${ge?"nice-dropdown__option--active":""} ${be?"nice-dropdown__option--selected":""}`,onMouseDown:Ce=>{Ce.preventDefault(),k(te)},"aria-selected":ge,children:T?T(te,M):Z?e.jsx(Sn,{text:te.label,query:M}):te.label},String(te.value))})]},c))}),o&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),v==="right"&&m&&e.jsx("div",{id:`${K}-error`,className:"nice-field__error",role:"alert",children:m}),v==="right"&&!m&&Y&&e.jsx("div",{id:`${K}-helper`,className:"nice-field__helper",children:Y})]}),v!=="right"&&m&&e.jsx("div",{id:`${K}-error`,className:"nice-field__error",role:"alert",children:m}),v!=="right"&&!m&&Y&&e.jsx("div",{id:`${K}-helper`,className:"nice-field__helper",children:Y})]})},rn=({options:n,suggestions:i,value:a,onChange:l,searchable:t=!0,clearable:r,maxTags:d,allowCustom:o,placeholder:b,label:T,error:Z,helperText:g,required:m,disabled:Y,size:ie="md",loading:G,id:F,className:q,style:O,accessMode:z,showKeyboardHints:B,labelPlacement:se,errorPlacement:J,labelWidth:L,controlWidth:v,autoExpand:P=!1})=>{const u=$.Ns(z,F);if(u==="hidden")return null;(u==="disabled"||u==="readOnly")&&(Y=!0);const y=$.cs(F),{t:K}=$.Wo(),[ne,j]=s.useState(!1),[M,w]=s.useState(""),H=s.useRef(null),V=s.useRef(null);$.ds(H,()=>j(!1));const S=s.useMemo(()=>[$.Ws.submit,$.Ws.cancel,{key:"Backspace",description:K("shortcuts.removeLastTag","Remove last tag")}],[K]),ee=s.useMemo(()=>Array.isArray(n)&&n.length>0?n:Array.isArray(i)?i.map(k=>({label:k,value:k})):[],[n,i]),I=s.useMemo(()=>Array.isArray(a)?a:[],[a]),_=s.useMemo(()=>{let k=ee.filter(W=>!I.includes(String(W.value)));if(M){const W=M.toLowerCase();k=k.filter(C=>C.label.toLowerCase().includes(W))}return k},[ee,I,M]),f=s.useCallback(k=>{d&&I.length>=d||(I.includes(k)||l([...I,k]),w(""))},[I,l,d]),x=s.useCallback(k=>{l(I.filter(W=>W!==k))},[I,l]),ae=k=>{k.key==="Backspace"&&!M&&I.length>0?x(I[I.length-1]):k.key==="Enter"&&M?(k.preventDefault(),_.length>0?f(String(_[0].value)):o&&f(M)):k.key==="Escape"&&j(!1)},ce=k=>ee.find(W=>String(W.value)===k)?.label??k;return e.jsxs("div",{className:`nice-field nice-field--${ie} ${se==="left"?"nice-field--label-left":""} ${G?"nice-field--loading":""} ${q||""}`,style:{...O,...L!=null&&{"--nice-field-label-width":typeof L=="number"?`${L}px`:L},...v!=null&&{"--nice-field-control-width":typeof v=="number"?`${v}px`:v}},ref:H,"aria-busy":G||void 0,children:[T&&e.jsxs("label",{className:`nice-field__label ${m?"nice-field__label--required":""}`,htmlFor:y,children:[T,B&&e.jsx($.Hr,{shortcuts:S,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{className:`nice-tagbox nice-tagbox--${ie} ${P?"nice-tagbox--expand":"nice-tagbox--fixed"} ${Z?"nice-tagbox--error":""} ${Y?"nice-tagbox--disabled":""}`,onClick:()=>{!Y&&!G&&(j(!0),V.current?.focus())},style:{position:"relative",cursor:Y||G?"not-allowed":"text"},children:[e.jsxs("div",{className:"nice-tagbox__tags",children:[I.map(k=>e.jsxs("span",{className:"nice-tag nice-tagbox__tag",children:[ce(k),!Y&&e.jsx("button",{type:"button",className:"nice-tag__remove",onClick:W=>{W.stopPropagation(),x(k)},children:"✕"})]},k)),t&&e.jsx("input",{ref:V,id:y,type:"text",className:"nice-tagbox__input nice-input__native",value:M,onChange:k=>{w(k.target.value),j(!0)},onFocus:()=>j(!0),onKeyDown:ae,placeholder:I.length===0?b||K("controls.select","Select..."):"",disabled:Y||G,autoComplete:"off",style:{border:"none",outline:"none",background:"transparent",color:"inherit",flex:1,minWidth:80,padding:0,font:"inherit",caretColor:"var(--color-primary)"}})]}),r&&I.length>0&&!Y&&e.jsx("button",{type:"button",className:"nice-field__clear",onClick:k=>{k.stopPropagation(),l([])},"aria-label":K("controls.clear","Clear"),children:"✕"}),ne&&(_.length>0||o&&M)&&e.jsxs("ul",{className:"nice-dropdown__list nice-tagbox__dropdown",role:"listbox",children:[_.map(k=>e.jsx("li",{role:"option",className:"nice-dropdown__option",onMouseDown:W=>{W.preventDefault(),f(String(k.value))},children:k.label},String(k.value))),o&&M&&!_.some(k=>String(k.value).toLowerCase()===M.toLowerCase())&&e.jsxs("li",{role:"option",className:"nice-dropdown__option nice-dropdown__option--add",onMouseDown:k=>{k.preventDefault(),f(M)},children:["+ ",K("controls.add","Add")," “",M,"”"]})]})]}),G&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),J==="right"&&Z&&e.jsx("div",{id:`${y}-error`,className:"nice-field__error",role:"alert",children:Z}),J==="right"&&!Z&&g&&e.jsx("div",{id:`${y}-helper`,className:"nice-field__helper",children:g})]}),J!=="right"&&Z&&e.jsx("div",{id:`${y}-error`,className:"nice-field__error",role:"alert",children:Z}),J!=="right"&&!Z&&g&&e.jsx("div",{id:`${y}-helper`,className:"nice-field__helper",children:g})]})},on={phone:"(999) 999-9999","credit-card":"9999 9999 9999 9999",date:"99/99/9999",ssn:"999-99-9999",zip:"99-999",time:"99:99",iban:"aa99 9999 9999 9999 9999 9999"};function Dn(n){return[...n].map(i=>i==="9"?{type:"digit"}:i==="a"?{type:"letter"}:i==="*"?{type:"alphanum"}:{type:"literal",literal:i})}function Tn(n,i){return i.type==="digit"?/\d/.test(n):i.type==="letter"?/[a-zA-Z]/.test(n):i.type==="alphanum"?/[a-zA-Z0-9]/.test(n):!1}function en(n,i,a){let l=0,t="";for(const r of i)r.type==="literal"?t+=r.literal:l<n.length?(t+=n[l],l++):t+=a;return t}function An(n,i){return n.map(a=>a.type==="literal"?a.literal:i).join("")}const Ve=s.forwardRef(({label:n,helperText:i,error:a,required:l,disabled:t,readOnly:r,size:d="md",name:o,id:b,className:T,style:Z,value:g="",onChange:m,onBlur:Y,onKeyDown:ie,mask:G,maskPreset:F,maskChar:q="_",placeholder:O,showMaskAsPlaceholder:z=!0,clearable:B=!1,autoFocus:se,labelPlacement:J,errorPlacement:L,loading:v,labelWidth:P,controlWidth:u,...y},K)=>{const{t:ne}=$.Wo(),j=$.cs(b),M=s.useRef(null),[w,H]=s.useState(!1),V=G||(F?on[F]:"")||"999",S=s.useMemo(()=>Dn(V),[V]),ee=s.useMemo(()=>en(g,S,q),[g,S,q]),I=w||g?ee:"",_=O??(z?An(S,q):void 0),f=s.useCallback(c=>{M.current=c,typeof K=="function"?K(c):K&&(K.current=c)},[K]),x=s.useCallback(c=>{const A=en(c,S,q);m?.(c,A)},[m,S,q]),ae=s.useCallback(c=>{const A=c.currentTarget,te=A.value,ue=A.selectionStart??te.length;let ge="",be=0;for(let Ce=0;Ce<te.length&&be<S.length;Ce++){const h=te[Ce];for(;be<S.length&&S[be].type==="literal";)be++;if(be>=S.length)break;Tn(h,S[be])&&(ge+=h,be++)}x(ge),requestAnimationFrame(()=>{let Ce=0,h=0;for(let R=0;R<S.length;R++){if(S[R].type==="literal")Ce=R+1;else if(h<ge.length)h++,Ce=R+1;else{Ce=R;break}if(Ce>=ue&&h>=ge.length)break}h>=ge.length&&ge.length>0&&(Ce=Math.min(Ce,S.length)),A.setSelectionRange(Ce,Ce)})},[S,x]),ce=s.useCallback(c=>{if(c.key==="Backspace"&&g.length>0){c.preventDefault();const A=g.slice(0,-1);x(A)}ie?.(c)},[g,x,ie]),k=s.useCallback(()=>H(!0),[]),W=s.useCallback(c=>{H(!1),Y?.(c)},[Y]),C=s.useCallback(()=>{x(""),M.current?.focus()},[x]);return e.jsxs("div",{className:`nice-field nice-field--masked nice-field--${d} ${J==="left"?"nice-field--label-left":""} ${v?"nice-field--loading":""} ${T||""}`,style:{...Z,...P!=null&&{"--nice-field-label-width":typeof P=="number"?`${P}px`:P},...u!=null&&{"--nice-field-control-width":typeof u=="number"?`${u}px`:u}},"aria-busy":v||void 0,children:[n&&e.jsx("label",{htmlFor:j,className:`nice-field__label ${l?"nice-field__label--required":""}`,children:n}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{className:`nice-input nice-input--${d} ${a?"nice-input--error":""} ${t?"nice-input--disabled":""} ${r?"nice-input--readonly":""}`,style:{width:"fit-content",minWidth:0},children:[e.jsx("input",{ref:f,id:j,className:"nice-input__native nice-masked-input",type:"text",name:o,value:I,placeholder:_,disabled:t||v,readOnly:r,autoFocus:se,style:{width:`${V.length}ch`,minWidth:0,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontVariantNumeric:"tabular-nums"},"aria-invalid":!!a,"aria-describedby":a?`${j}-error`:i?`${j}-helper`:void 0,onInput:ae,onChange:()=>{},onKeyDown:ce,onFocus:k,onBlur:W,...y}),B&&g&&e.jsx("button",{type:"button",className:"nice-input__clear",disabled:t||r,onClick:C,"aria-label":ne("controls.clear","Clear"),children:"✕"})]}),v&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),L==="right"&&a&&e.jsx("div",{id:`${j}-error`,className:"nice-field__error",role:"alert",children:a}),L==="right"&&!a&&i&&e.jsx("div",{id:`${j}-helper`,className:"nice-field__helper",children:i})]}),L!=="right"&&a&&e.jsx("div",{id:`${j}-error`,className:"nice-field__error",role:"alert",children:a}),L!=="right"&&!a&&i&&e.jsx("div",{id:`${j}-helper`,className:"nice-field__helper",children:i})]})});Ve.displayName="NiceMaskedInput";const Rn=[{label:"Polska",value:"PL"},{label:"Deutschland",value:"DE"},{label:"Česko",value:"CZ"},{label:"Slovensko",value:"SK"},{label:"United Kingdom",value:"GB"},{label:"United States",value:"US"},{label:"France",value:"FR"},{label:"Italia",value:"IT"},{label:"España",value:"ES"},{label:"Nederland",value:"NL"}],Ze=({label:n,helperText:i,error:a,errorPlacement:l="bottom",required:t,disabled:r,readOnly:d,loading:o,size:b="md",className:T,style:Z,accessMode:g,id:m,value:Y,defaultValue:ie,onChange:G,columns:F=2,showState:q=!1,showBuilding:O=!0,showApartment:z=!0,showCountry:B=!0,countryOptions:se=Rn,defaultCountry:J="PL",fieldLabels:L,fieldPlaceholders:v,showLabel:P=!0,labelPlacement:u,labelWidth:y,controlWidth:K})=>{const ne=$.Ns(g,m);if(ne==="hidden")return null;ne==="disabled"&&(r=!0),ne==="readOnly"&&(d=!0);const{t:j}=$.Wo(),M=Y!==void 0,[w,H]=s.useState(ie??{}),V=M?Y:w,S=W=>{const C={...V,...W};M||H(C),G?.(C)},ee={street:L?.street??j("address.street","Street"),building:L?.building??j("address.building","Building"),apartment:L?.apartment??j("address.apartment","Apt."),postalCode:L?.postalCode??j("address.postalCode","Postal code"),city:L?.city??j("address.city","City"),state:L?.state??j("address.state","State / Region"),country:L?.country??j("address.country","Country")},I=v??{},_=V.country??J,f=u==="left"?"left":"top",x={...Z,...y!=null&&{"--nice-field-label-width":typeof y=="number"?`${y}px`:y},...K!=null&&{"--nice-field-control-width":typeof K=="number"?`${K}px`:K}},ae={display:"grid",gridTemplateColumns:`repeat(${F}, minmax(0, 1fr))`,gap:"8px 12px"},ce=F===2?{gridColumn:"span 2"}:{},k={size:b,disabled:r||o,readOnly:d,labelPlacement:f};return e.jsxs("div",{className:`nice-field nice-field--${b} nice-address nice-address--cols-${F} ${o?"nice-field--loading":""} ${T||""}`,style:x,"aria-busy":o||void 0,children:[P&&n&&e.jsx("label",{className:`nice-field__label ${t?"nice-field__label--required":""}`,children:n}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{className:"nice-address__grid",style:ae,children:[e.jsx("div",{style:ce,children:e.jsx(_e.NiceTextInput,{...k,label:ee.street,value:V.street??"",onChange:W=>S({street:W}),placeholder:I.street,required:t})}),O&&e.jsx(_e.NiceTextInput,{...k,label:ee.building,value:V.building??"",onChange:W=>S({building:W}),placeholder:I.building}),z&&e.jsx(_e.NiceTextInput,{...k,label:ee.apartment,value:V.apartment??"",onChange:W=>S({apartment:W}),placeholder:I.apartment}),e.jsx(_e.NiceTextInput,{...k,label:ee.postalCode,value:V.postalCode??"",onChange:W=>S({postalCode:W}),placeholder:I.postalCode??"00-000",required:t}),e.jsx(_e.NiceTextInput,{...k,label:ee.city,value:V.city??"",onChange:W=>S({city:W}),placeholder:I.city,required:t}),q&&e.jsx(_e.NiceTextInput,{...k,label:ee.state,value:V.state??"",onChange:W=>S({state:W}),placeholder:I.state}),B&&e.jsx(_e.NiceSelect,{...k,label:ee.country,value:_,onChange:W=>S({country:typeof W=="string"?W:String(W??"")}),options:se,required:t})]}),o&&e.jsx("span",{className:"nice-field__spinner nice-field__spinner--address",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),l==="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),l==="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]}),l!=="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),l!=="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]})};Ze.displayName="NiceAddress";const En=Object.freeze({AR:["#74acdf","#ffffff","#74acdf"],AT:["#ed2939","#ffffff","#ed2939"],AU:["#012169","#ffffff","#e4002b"],BE:["#000000","#fae042","#ed2939"],BR:["#009c3b","#ffdf00","#002776"],CA:["#ff0000","#ffffff","#ff0000"],CH:["#d52b1e","#ffffff","#d52b1e"],CN:["#de2910","#ffde00","#de2910"],CZ:["#11457e","#ffffff","#d7141a"],DE:["#000000","#dd0000","#ffce00"],DK:["#c8102e","#ffffff","#c8102e"],EE:["#0072ce","#000000","#ffffff"],EG:["#ce1126","#ffffff","#000000"],ES:["#aa151b","#f1bf00","#aa151b"],FI:["#ffffff","#003580","#ffffff"],FR:["#0055a4","#ffffff","#ef4135"],GB:["#012169","#ffffff","#c8102e"],GR:["#0d5eaf","#ffffff","#0d5eaf"],HR:["#171796","#ffffff","#ff0000"],HU:["#ce2939","#ffffff","#477050"],IE:["#169b62","#ffffff","#ff883e"],IL:["#ffffff","#0038b8","#ffffff"],IN:["#ff9933","#ffffff","#138808"],IS:["#02529c","#ffffff","#dc1e35"],IT:["#009246","#ffffff","#ce2b37"],JP:["#ffffff","#bc002d","#ffffff"],KR:["#ffffff","#cd2e3a","#0047a0"],LT:["#fdb913","#006a44","#c1272d"],LU:["#ed2939","#ffffff","#00a1de"],LV:["#9e3039","#ffffff","#9e3039"],MX:["#006847","#ffffff","#ce1126"],NL:["#ae1c28","#ffffff","#21468b"],NO:["#ef2b2d","#ffffff","#002868"],NZ:["#012169","#ffffff","#cc142b"],PL:["#ffffff","#dc143c"],PT:["#006600","#ff0000"],RO:["#002b7f","#fcd116","#ce1126"],RU:["#ffffff","#0039a6","#d52b1e"],SE:["#006aa7","#fecc00","#006aa7"],SK:["#ffffff","#0b4ea2","#ee1c25"],TR:["#e30a17","#ffffff","#e30a17"],UA:["#005bbb","#ffd500"],US:["#b22234","#ffffff","#3c3b6e"],VN:["#da251d","#ffff00","#da251d"],ZA:["#007a4d","#ffffff","#de3831"],AD:["#10069f","#fedf00","#d50032"],AE:["#00732f","#ffffff","#000000"],AF:["#000000","#d32011","#007a36"],AG:["#ce1126","#fcd116","#000000"],AL:["#e41e20","#000000","#e41e20"],AM:["#d90012","#0033a0","#f2a800"],AO:["#ce1126","#000000","#ffc500"],AZ:["#0092bc","#ed2939","#509e2f"],BA:["#002395","#fecb00","#ffffff"],BB:["#00267f","#ffc726","#00267f"],BD:["#006a4e","#f42a41","#006a4e"],BF:["#ef2b2d","#009e49","#fcd116"],BG:["#ffffff","#00966e","#d62612"],BH:["#ffffff","#ce1126","#ce1126"],BI:["#1eb53a","#ffffff","#ce1126"],BJ:["#008751","#fcd116","#e8112d"],BN:["#f7e017","#ffffff","#000000"],BO:["#d52b1e","#f9e300","#007934"],BS:["#00778b","#ffc72c","#000000"],BT:["#ffcc33","#ff4e12","#ffcc33"],BW:["#75aadb","#ffffff","#000000"],BY:["#c8313e","#007c30","#ffffff"],BZ:["#003f87","#ce1126","#003f87"],CD:["#007fff","#f7d618","#ce1021"],CF:["#003082","#ffffff","#289728"],CG:["#009543","#fbde4a","#dc241f"],CI:["#f77f00","#ffffff","#009e60"],CM:["#007a5e","#ce1126","#fcd116"],CO:["#fcd116","#003893","#ce1126"],CR:["#002b7f","#ffffff","#ce1126"],CU:["#002590","#ffffff","#cf142b"],CV:["#003893","#ffffff","#cf2027"],CY:["#ffffff","#d57800","#ffffff"],DJ:["#6ab2e7","#ffffff","#12ad2b"],DM:["#006b3f","#ffffff","#000000"],DO:["#002d62","#ffffff","#ce1126"],DZ:["#006233","#ffffff","#d21034"],EC:["#ffd100","#034ea2","#ed1c24"],ER:["#ea0437","#0084c9","#418fde"],ET:["#078930","#fcdd09","#da121a"],FJ:["#68bfe5","#cc0000","#ffffff"],GA:["#3a75c4","#ffe700","#009e60"],GD:["#ce1126","#fcd116","#007a5e"],GE:["#ffffff","#ff0000","#ffffff"],GH:["#ce1126","#fcd116","#006b3f"],GM:["#ce1126","#ffffff","#0c1c8c"],GN:["#ce1126","#fcd116","#009460"],GQ:["#3e9a00","#ffffff","#e32118"],GT:["#4997d0","#ffffff","#4997d0"],GW:["#ce1126","#fcd116","#009e49"],GY:["#009e49","#ffffff","#fcd116"],HK:["#de2910","#ffffff","#de2910"],HN:["#0073cf","#ffffff","#0073cf"],HT:["#00209f","#d21034","#00209f"],ID:["#ff0000","#ffffff","#ff0000"],IQ:["#ce1126","#ffffff","#000000"],IR:["#239f40","#ffffff","#da0000"],JM:["#000000","#fed100","#009b3a"],JO:["#000000","#ffffff","#007a3d"],KE:["#000000","#bb0000","#006600"],KG:["#ff0000","#fcd116","#ff0000"],KH:["#032ea1","#e00025","#032ea1"],KM:["#fcd116","#ffffff","#ce1126"],KP:["#024fa2","#ed1c27","#024fa2"],KW:["#007a3d","#ffffff","#ce1126"],KZ:["#00afca","#fec50c","#00afca"],LA:["#ce1126","#002868","#ce1126"],LB:["#ed1c24","#ffffff","#ed1c24"],LI:["#002780","#ce1126","#002780"],LK:["#ffbe29","#8d153a","#00534e"],LR:["#bf0a30","#ffffff","#002868"],LS:["#00209f","#ffffff","#009543"],LY:["#e70013","#000000","#239e46"],MA:["#c1272d","#006233","#c1272d"],MD:["#0046ae","#ffd200","#cc092f"],ME:["#d4af37","#cc0033","#d4af37"],MG:["#ffffff","#fc3d32","#007e3a"],MH:["#003893","#dd7500","#ffffff"],MK:["#d20000","#ffe600","#d20000"],ML:["#14b53a","#fcd116","#ce1126"],MM:["#fecb00","#34b233","#ea2839"],MN:["#c4272f","#015197","#c4272f"],MO:["#00785a","#ffd700","#ffffff"],MR:["#006233","#ffc400","#d01c1f"],MT:["#ffffff","#cf142b","#ffffff"],MU:["#ea2839","#1a206d","#00a04d"],MV:["#d21034","#007e3a","#ffffff"],MW:["#000000","#ce1126","#339e35"],MY:["#cc0000","#ffffff","#010066"],MZ:["#009a44","#ffffff","#000000"],NA:["#003580","#ffffff","#009543"],NE:["#ff8000","#ffffff","#0db02b"],NG:["#008753","#ffffff","#008753"],NI:["#0067c6","#ffffff","#0067c6"],NP:["#dc143c","#003893","#dc143c"],OM:["#dc241f","#ffffff","#008000"],PA:["#ffffff","#cc0033","#005aa7"],PE:["#d91023","#ffffff","#d91023"],PG:["#ce1126","#000000","#fcd116"],PH:["#0038a8","#ffffff","#ce1126"],PK:["#ffffff","#01411c","#01411c"],PS:["#000000","#ffffff","#007a3d"],PY:["#d52b1e","#ffffff","#0038a8"],QA:["#ffffff","#8a1538","#8a1538"],RS:["#c6363c","#0c4076","#ffffff"],RW:["#00a1de","#fad201","#00a651"],SA:["#006c35","#ffffff","#006c35"],SB:["#0051ba","#fcd116","#215b33"],SC:["#003f87","#fcd116","#d62828"],SD:["#d21034","#ffffff","#000000"],SG:["#ed2939","#ffffff","#ed2939"],SI:["#ffffff","#0000ff","#ff0000"],SL:["#1eb53a","#ffffff","#0072c6"],SM:["#ffffff","#5eb6e4","#ffffff"],SN:["#00853f","#fdef42","#e31b23"],SO:["#4189dd","#ffffff","#4189dd"],SR:["#377e3f","#ffffff","#b40a2d"],SS:["#000000","#ce1126","#078930"],ST:["#12ad2b","#ffce00","#d21034"],SV:["#0047ab","#ffffff","#0047ab"],SY:["#ce1126","#ffffff","#000000"],SZ:["#3e5eb9","#ffd900","#b10c0c"],TD:["#002664","#fecb00","#c60c30"],TG:["#006a4e","#fcd116","#d21034"],TH:["#ed1c24","#ffffff","#241d4f"],TJ:["#cc0000","#ffffff","#006600"],TL:["#dc241f","#ffc726","#000000"],TM:["#00853e","#ffffff","#cc0000"],TN:["#e70013","#ffffff","#e70013"],TO:["#ffffff","#c10000","#c10000"],TT:["#ce1126","#ffffff","#000000"],TW:["#fe0000","#000095","#fe0000"],TZ:["#1eb53a","#fcd116","#00a3dd"],UG:["#000000","#fcdc04","#d90000"],UY:["#ffffff","#0038a8","#ffffff"],UZ:["#1eb53a","#ffffff","#0099b5"],VA:["#ffe000","#ffffff","#ffe000"],VE:["#fcd116","#00247d","#cf142b"],VU:["#000000","#ce1126","#009543"],WS:["#002b7f","#ffffff","#cc0033"],YE:["#ce1126","#ffffff","#000000"],ZM:["#198a00","#de2010","#ef7d00"],ZW:["#078930","#fcd116","#cf2027"]}),nn=["#cbd5e1","#94a3b8","#cbd5e1"];function Fn(n){return n?En[n.toUpperCase()]??nn:nn}const an=({code:n,size:i=18})=>{const a=Fn(n);return e.jsx("span",{className:"nice-country-picker__flag-swatch",role:"img","aria-label":`${n} flag`,style:{display:"inline-flex",width:i,height:Math.round(i*.7),border:"1px solid rgba(0,0,0,0.15)",borderRadius:2,overflow:"hidden",flexShrink:0,verticalAlign:"middle"},children:a.map((l,t)=>e.jsx("span",{style:{flex:1,background:l}},t))})},dn=[{code:"US",name:"United States",dialCode:"+1",flag:"🇺🇸"},{code:"GB",name:"United Kingdom",dialCode:"+44",flag:"🇬🇧"},{code:"DE",name:"Germany",dialCode:"+49",flag:"🇩🇪"},{code:"FR",name:"France",dialCode:"+33",flag:"🇫🇷"},{code:"PL",name:"Poland",dialCode:"+48",flag:"🇵🇱"},{code:"ES",name:"Spain",dialCode:"+34",flag:"🇪🇸"},{code:"IT",name:"Italy",dialCode:"+39",flag:"🇮🇹"},{code:"NL",name:"Netherlands",dialCode:"+31",flag:"🇳🇱"},{code:"BE",name:"Belgium",dialCode:"+32",flag:"🇧🇪"},{code:"AT",name:"Austria",dialCode:"+43",flag:"🇦🇹"},{code:"CH",name:"Switzerland",dialCode:"+41",flag:"🇨🇭"},{code:"SE",name:"Sweden",dialCode:"+46",flag:"🇸🇪"},{code:"NO",name:"Norway",dialCode:"+47",flag:"🇳🇴"},{code:"DK",name:"Denmark",dialCode:"+45",flag:"🇩🇰"},{code:"FI",name:"Finland",dialCode:"+358",flag:"🇫🇮"},{code:"PT",name:"Portugal",dialCode:"+351",flag:"🇵🇹"},{code:"IE",name:"Ireland",dialCode:"+353",flag:"🇮🇪"},{code:"CZ",name:"Czech Republic",dialCode:"+420",flag:"🇨🇿"},{code:"SK",name:"Slovakia",dialCode:"+421",flag:"🇸🇰"},{code:"HU",name:"Hungary",dialCode:"+36",flag:"🇭🇺"},{code:"RO",name:"Romania",dialCode:"+40",flag:"🇷🇴"},{code:"BG",name:"Bulgaria",dialCode:"+359",flag:"🇧🇬"},{code:"GR",name:"Greece",dialCode:"+30",flag:"🇬🇷"},{code:"UA",name:"Ukraine",dialCode:"+380",flag:"🇺🇦"},{code:"RU",name:"Russia",dialCode:"+7",flag:"🇷🇺"},{code:"CA",name:"Canada",dialCode:"+1",flag:"🇨🇦"},{code:"AU",name:"Australia",dialCode:"+61",flag:"🇦🇺"},{code:"NZ",name:"New Zealand",dialCode:"+64",flag:"🇳🇿"},{code:"JP",name:"Japan",dialCode:"+81",flag:"🇯🇵"},{code:"KR",name:"South Korea",dialCode:"+82",flag:"🇰🇷"},{code:"CN",name:"China",dialCode:"+86",flag:"🇨🇳"},{code:"IN",name:"India",dialCode:"+91",flag:"🇮🇳"},{code:"SG",name:"Singapore",dialCode:"+65",flag:"🇸🇬"},{code:"MY",name:"Malaysia",dialCode:"+60",flag:"🇲🇾"},{code:"TH",name:"Thailand",dialCode:"+66",flag:"🇹🇭"},{code:"VN",name:"Vietnam",dialCode:"+84",flag:"🇻🇳"},{code:"ID",name:"Indonesia",dialCode:"+62",flag:"🇮🇩"},{code:"PH",name:"Philippines",dialCode:"+63",flag:"🇵🇭"},{code:"BR",name:"Brazil",dialCode:"+55",flag:"🇧🇷"},{code:"MX",name:"Mexico",dialCode:"+52",flag:"🇲🇽"},{code:"AR",name:"Argentina",dialCode:"+54",flag:"🇦🇷"},{code:"CL",name:"Chile",dialCode:"+56",flag:"🇨🇱"},{code:"CO",name:"Colombia",dialCode:"+57",flag:"🇨🇴"},{code:"PE",name:"Peru",dialCode:"+51",flag:"🇵🇪"},{code:"ZA",name:"South Africa",dialCode:"+27",flag:"🇿🇦"},{code:"EG",name:"Egypt",dialCode:"+20",flag:"🇪🇬"},{code:"NG",name:"Nigeria",dialCode:"+234",flag:"🇳🇬"},{code:"KE",name:"Kenya",dialCode:"+254",flag:"🇰🇪"},{code:"AE",name:"United Arab Emirates",dialCode:"+971",flag:"🇦🇪"},{code:"SA",name:"Saudi Arabia",dialCode:"+966",flag:"🇸🇦"},{code:"IL",name:"Israel",dialCode:"+972",flag:"🇮🇱"},{code:"TR",name:"Turkey",dialCode:"+90",flag:"🇹🇷"},{code:"AF",name:"Afghanistan",dialCode:"+93",flag:"🇦🇫"},{code:"AL",name:"Albania",dialCode:"+355",flag:"🇦🇱"},{code:"DZ",name:"Algeria",dialCode:"+213",flag:"🇩🇿"},{code:"AD",name:"Andorra",dialCode:"+376",flag:"🇦🇩"},{code:"AO",name:"Angola",dialCode:"+244",flag:"🇦🇴"},{code:"AG",name:"Antigua and Barbuda",dialCode:"+1268",flag:"🇦🇬"},{code:"AM",name:"Armenia",dialCode:"+374",flag:"🇦🇲"},{code:"AZ",name:"Azerbaijan",dialCode:"+994",flag:"🇦🇿"},{code:"BS",name:"Bahamas",dialCode:"+1242",flag:"🇧🇸"},{code:"BH",name:"Bahrain",dialCode:"+973",flag:"🇧🇭"},{code:"BD",name:"Bangladesh",dialCode:"+880",flag:"🇧🇩"},{code:"BB",name:"Barbados",dialCode:"+1246",flag:"🇧🇧"},{code:"BY",name:"Belarus",dialCode:"+375",flag:"🇧🇾"},{code:"BZ",name:"Belize",dialCode:"+501",flag:"🇧🇿"},{code:"BJ",name:"Benin",dialCode:"+229",flag:"🇧🇯"},{code:"BT",name:"Bhutan",dialCode:"+975",flag:"🇧🇹"},{code:"BO",name:"Bolivia",dialCode:"+591",flag:"🇧🇴"},{code:"BA",name:"Bosnia and Herzegovina",dialCode:"+387",flag:"🇧🇦"},{code:"BW",name:"Botswana",dialCode:"+267",flag:"🇧🇼"},{code:"BN",name:"Brunei",dialCode:"+673",flag:"🇧🇳"},{code:"BF",name:"Burkina Faso",dialCode:"+226",flag:"🇧🇫"},{code:"BI",name:"Burundi",dialCode:"+257",flag:"🇧🇮"},{code:"CV",name:"Cape Verde",dialCode:"+238",flag:"🇨🇻"},{code:"KH",name:"Cambodia",dialCode:"+855",flag:"🇰🇭"},{code:"CM",name:"Cameroon",dialCode:"+237",flag:"🇨🇲"},{code:"CF",name:"Central African Republic",dialCode:"+236",flag:"🇨🇫"},{code:"TD",name:"Chad",dialCode:"+235",flag:"🇹🇩"},{code:"KM",name:"Comoros",dialCode:"+269",flag:"🇰🇲"},{code:"CG",name:"Congo",dialCode:"+242",flag:"🇨🇬"},{code:"CD",name:"DR Congo",dialCode:"+243",flag:"🇨🇩"},{code:"CR",name:"Costa Rica",dialCode:"+506",flag:"🇨🇷"},{code:"CI",name:"Côte d'Ivoire",dialCode:"+225",flag:"🇨🇮"},{code:"HR",name:"Croatia",dialCode:"+385",flag:"🇭🇷"},{code:"CU",name:"Cuba",dialCode:"+53",flag:"🇨🇺"},{code:"CY",name:"Cyprus",dialCode:"+357",flag:"🇨🇾"},{code:"DJ",name:"Djibouti",dialCode:"+253",flag:"🇩🇯"},{code:"DM",name:"Dominica",dialCode:"+1767",flag:"🇩🇲"},{code:"DO",name:"Dominican Republic",dialCode:"+1809",flag:"🇩🇴"},{code:"EC",name:"Ecuador",dialCode:"+593",flag:"🇪🇨"},{code:"SV",name:"El Salvador",dialCode:"+503",flag:"🇸🇻"},{code:"GQ",name:"Equatorial Guinea",dialCode:"+240",flag:"🇬🇶"},{code:"ER",name:"Eritrea",dialCode:"+291",flag:"🇪🇷"},{code:"EE",name:"Estonia",dialCode:"+372",flag:"🇪🇪"},{code:"SZ",name:"Eswatini",dialCode:"+268",flag:"🇸🇿"},{code:"ET",name:"Ethiopia",dialCode:"+251",flag:"🇪🇹"},{code:"FJ",name:"Fiji",dialCode:"+679",flag:"🇫🇯"},{code:"GA",name:"Gabon",dialCode:"+241",flag:"🇬🇦"},{code:"GM",name:"Gambia",dialCode:"+220",flag:"🇬🇲"},{code:"GE",name:"Georgia",dialCode:"+995",flag:"🇬🇪"},{code:"GH",name:"Ghana",dialCode:"+233",flag:"🇬🇭"},{code:"GD",name:"Grenada",dialCode:"+1473",flag:"🇬🇩"},{code:"GT",name:"Guatemala",dialCode:"+502",flag:"🇬🇹"},{code:"GN",name:"Guinea",dialCode:"+224",flag:"🇬🇳"},{code:"GW",name:"Guinea-Bissau",dialCode:"+245",flag:"🇬🇼"},{code:"GY",name:"Guyana",dialCode:"+592",flag:"🇬🇾"},{code:"HT",name:"Haiti",dialCode:"+509",flag:"🇭🇹"},{code:"HN",name:"Honduras",dialCode:"+504",flag:"🇭🇳"},{code:"HK",name:"Hong Kong",dialCode:"+852",flag:"🇭🇰"},{code:"IS",name:"Iceland",dialCode:"+354",flag:"🇮🇸"},{code:"IQ",name:"Iraq",dialCode:"+964",flag:"🇮🇶"},{code:"IR",name:"Iran",dialCode:"+98",flag:"🇮🇷"},{code:"JM",name:"Jamaica",dialCode:"+1876",flag:"🇯🇲"},{code:"JO",name:"Jordan",dialCode:"+962",flag:"🇯🇴"},{code:"KZ",name:"Kazakhstan",dialCode:"+7",flag:"🇰🇿"},{code:"KW",name:"Kuwait",dialCode:"+965",flag:"🇰🇼"},{code:"KG",name:"Kyrgyzstan",dialCode:"+996",flag:"🇰🇬"},{code:"LA",name:"Laos",dialCode:"+856",flag:"🇱🇦"},{code:"LV",name:"Latvia",dialCode:"+371",flag:"🇱🇻"},{code:"LB",name:"Lebanon",dialCode:"+961",flag:"🇱🇧"},{code:"LS",name:"Lesotho",dialCode:"+266",flag:"🇱🇸"},{code:"LR",name:"Liberia",dialCode:"+231",flag:"🇱🇷"},{code:"LY",name:"Libya",dialCode:"+218",flag:"🇱🇾"},{code:"LI",name:"Liechtenstein",dialCode:"+423",flag:"🇱🇮"},{code:"LT",name:"Lithuania",dialCode:"+370",flag:"🇱🇹"},{code:"LU",name:"Luxembourg",dialCode:"+352",flag:"🇱🇺"},{code:"MO",name:"Macau",dialCode:"+853",flag:"🇲🇴"},{code:"MK",name:"North Macedonia",dialCode:"+389",flag:"🇲🇰"},{code:"MG",name:"Madagascar",dialCode:"+261",flag:"🇲🇬"},{code:"MW",name:"Malawi",dialCode:"+265",flag:"🇲🇼"},{code:"MV",name:"Maldives",dialCode:"+960",flag:"🇲🇻"},{code:"ML",name:"Mali",dialCode:"+223",flag:"🇲🇱"},{code:"MT",name:"Malta",dialCode:"+356",flag:"🇲🇹"},{code:"MR",name:"Mauritania",dialCode:"+222",flag:"🇲🇷"},{code:"MU",name:"Mauritius",dialCode:"+230",flag:"🇲🇺"},{code:"MD",name:"Moldova",dialCode:"+373",flag:"🇲🇩"},{code:"MC",name:"Monaco",dialCode:"+377",flag:"🇲🇨"},{code:"MN",name:"Mongolia",dialCode:"+976",flag:"🇲🇳"},{code:"ME",name:"Montenegro",dialCode:"+382",flag:"🇲🇪"},{code:"MA",name:"Morocco",dialCode:"+212",flag:"🇲🇦"},{code:"MZ",name:"Mozambique",dialCode:"+258",flag:"🇲🇿"},{code:"MM",name:"Myanmar",dialCode:"+95",flag:"🇲🇲"},{code:"NA",name:"Namibia",dialCode:"+264",flag:"🇳🇦"},{code:"NP",name:"Nepal",dialCode:"+977",flag:"🇳🇵"},{code:"NI",name:"Nicaragua",dialCode:"+505",flag:"🇳🇮"},{code:"NE",name:"Niger",dialCode:"+227",flag:"🇳🇪"},{code:"KP",name:"North Korea",dialCode:"+850",flag:"🇰🇵"},{code:"OM",name:"Oman",dialCode:"+968",flag:"🇴🇲"},{code:"PK",name:"Pakistan",dialCode:"+92",flag:"🇵🇰"},{code:"PS",name:"Palestine",dialCode:"+970",flag:"🇵🇸"},{code:"PA",name:"Panama",dialCode:"+507",flag:"🇵🇦"},{code:"PG",name:"Papua New Guinea",dialCode:"+675",flag:"🇵🇬"},{code:"PY",name:"Paraguay",dialCode:"+595",flag:"🇵🇾"},{code:"QA",name:"Qatar",dialCode:"+974",flag:"🇶🇦"},{code:"RW",name:"Rwanda",dialCode:"+250",flag:"🇷🇼"},{code:"WS",name:"Samoa",dialCode:"+685",flag:"🇼🇸"},{code:"SM",name:"San Marino",dialCode:"+378",flag:"🇸🇲"},{code:"ST",name:"São Tomé and Príncipe",dialCode:"+239",flag:"🇸🇹"},{code:"SN",name:"Senegal",dialCode:"+221",flag:"🇸🇳"},{code:"RS",name:"Serbia",dialCode:"+381",flag:"🇷🇸"},{code:"SC",name:"Seychelles",dialCode:"+248",flag:"🇸🇨"},{code:"SL",name:"Sierra Leone",dialCode:"+232",flag:"🇸🇱"},{code:"SI",name:"Slovenia",dialCode:"+386",flag:"🇸🇮"},{code:"SB",name:"Solomon Islands",dialCode:"+677",flag:"🇸🇧"},{code:"SO",name:"Somalia",dialCode:"+252",flag:"🇸🇴"},{code:"SS",name:"South Sudan",dialCode:"+211",flag:"🇸🇸"},{code:"LK",name:"Sri Lanka",dialCode:"+94",flag:"🇱🇰"},{code:"SD",name:"Sudan",dialCode:"+249",flag:"🇸🇩"},{code:"SR",name:"Suriname",dialCode:"+597",flag:"🇸🇷"},{code:"SY",name:"Syria",dialCode:"+963",flag:"🇸🇾"},{code:"TW",name:"Taiwan",dialCode:"+886",flag:"🇹🇼"},{code:"TJ",name:"Tajikistan",dialCode:"+992",flag:"🇹🇯"},{code:"TZ",name:"Tanzania",dialCode:"+255",flag:"🇹🇿"},{code:"TL",name:"Timor-Leste",dialCode:"+670",flag:"🇹🇱"},{code:"TG",name:"Togo",dialCode:"+228",flag:"🇹🇬"},{code:"TO",name:"Tonga",dialCode:"+676",flag:"🇹🇴"},{code:"TT",name:"Trinidad and Tobago",dialCode:"+1868",flag:"🇹🇹"},{code:"TN",name:"Tunisia",dialCode:"+216",flag:"🇹🇳"},{code:"TM",name:"Turkmenistan",dialCode:"+993",flag:"🇹🇲"},{code:"UG",name:"Uganda",dialCode:"+256",flag:"🇺🇬"},{code:"UY",name:"Uruguay",dialCode:"+598",flag:"🇺🇾"},{code:"UZ",name:"Uzbekistan",dialCode:"+998",flag:"🇺🇿"},{code:"VU",name:"Vanuatu",dialCode:"+678",flag:"🇻🇺"},{code:"VA",name:"Vatican City",dialCode:"+379",flag:"🇻🇦"},{code:"VE",name:"Venezuela",dialCode:"+58",flag:"🇻🇪"},{code:"YE",name:"Yemen",dialCode:"+967",flag:"🇾🇪"},{code:"ZM",name:"Zambia",dialCode:"+260",flag:"🇿🇲"},{code:"ZW",name:"Zimbabwe",dialCode:"+263",flag:"🇿🇼"}],Ye=({value:n,defaultValue:i,onChange:a,placeholder:l,showSearch:t=!0,searchPlaceholder:r,showDialCode:d=!0,showFlag:o=!0,disabled:b=!1,countries:T,priorityCountries:Z=["US","GB","DE","FR","PL"],allowClear:g=!0,size:m="md",className:Y="",style:ie,label:G,helperText:F,error:q,required:O,readOnly:z,loading:B,labelPlacement:se,errorPlacement:J,labelWidth:L,controlWidth:v,id:P,"data-testid":u="nice-country-picker"})=>{const{t:y}=$.Wo(),K=s.useRef(null),ne=s.useRef(null),[j,M]=s.useState(i),[w,H]=s.useState(!1),[V,S]=s.useState(""),[ee,I]=s.useState(0),_=n!==void 0?n:j,f=s.useMemo(()=>{let c=dn;if(T){const A=new Set(T.map(te=>te.toUpperCase()));c=c.filter(te=>A.has(te.code))}return c},[T]),x=s.useMemo(()=>{if(!Z?.length)return f;const c=new Set(Z.map(ue=>ue.toUpperCase())),A=f.filter(ue=>c.has(ue.code)),te=f.filter(ue=>!c.has(ue.code));return[...A,...te]},[f,Z]),ae=s.useMemo(()=>{if(!V)return x;const c=V.toLowerCase();return x.filter(A=>A.name.toLowerCase().includes(c)||A.code.toLowerCase().includes(c)||A.dialCode.includes(c))},[x,V]),ce=s.useMemo(()=>_?f.find(c=>c.code===_)??null:null,[_,f]);s.useEffect(()=>{if(!w)return;const c=A=>{K.current&&!K.current.contains(A.target)&&(H(!1),S(""))};return document.addEventListener("mousedown",c),()=>document.removeEventListener("mousedown",c)},[w]),s.useEffect(()=>{w&&t&&ne.current&&ne.current.focus()},[w,t]),s.useEffect(()=>{I(0)},[V]);const k=s.useCallback(c=>{n===void 0&&M(c.code),a?.(c),H(!1),S("")},[n,a]),W=s.useCallback(c=>{c.stopPropagation(),n===void 0&&M(void 0),a?.(null)},[n,a]),C=s.useCallback(c=>{if(!w){(c.key==="Enter"||c.key===" "||c.key==="ArrowDown")&&(c.preventDefault(),H(!0));return}switch(c.key){case"ArrowDown":c.preventDefault(),I(A=>Math.min(A+1,ae.length-1));break;case"ArrowUp":c.preventDefault(),I(A=>Math.max(A-1,0));break;case"Enter":c.preventDefault(),ae[ee]&&k(ae[ee]);break;case"Escape":c.preventDefault(),H(!1),S("");break}},[w,ae,ee,k]);return e.jsxs("div",{ref:K,className:`nice-field nice-field--${m} nice-field--country-picker ${se==="left"?"nice-field--label-left":""} ${J==="right"?"nice-field--error-right":""} ${q?"nice-field--error":""} ${B?"nice-field--loading":""} nice-country-picker nice-country-picker--${m} ${w?"nice-country-picker--open":""} ${b?"nice-country-picker--disabled":""} ${Y}`,style:{...ie,...L!=null&&{"--nice-field-label-width":typeof L=="number"?`${L}px`:L},...v!=null&&{"--nice-field-control-width":typeof v=="number"?`${v}px`:v}},"data-testid":u,"aria-busy":B||void 0,children:[G&&e.jsxs("label",{className:"nice-field__label",htmlFor:P,children:[G,O&&e.jsx("span",{className:"nice-field__required",children:"*"})]}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("button",{type:"button",className:"nice-country-picker__trigger",onClick:()=>!b&&!z&&H(!w),onKeyDown:C,disabled:b,id:P,"aria-haspopup":"listbox","aria-expanded":w,"aria-invalid":q?!0:void 0,"data-testid":`${u}-trigger`,children:[ce?e.jsxs("span",{className:"nice-country-picker__value",children:[o&&e.jsx("span",{className:"nice-country-picker__flag","aria-hidden":"true",children:e.jsx(an,{code:ce.code})}),e.jsx("span",{className:"nice-country-picker__name",children:ce.name}),d&&e.jsxs("span",{className:"nice-country-picker__dial-code",children:["(",ce.dialCode,")"]})]}):e.jsx("span",{className:"nice-country-picker__placeholder",children:l??y("controls.select","Select country")}),e.jsxs("span",{className:"nice-country-picker__icons",children:[g&&ce&&!b&&!z&&e.jsx("span",{className:"nice-country-picker__clear",onClick:W,"aria-label":y("clear","Clear"),children:"✕"}),e.jsx("span",{className:"nice-country-picker__arrow",children:w?"▲":"▼"})]})]}),w&&e.jsxs("div",{className:"nice-country-picker__dropdown",role:"listbox","data-testid":`${u}-dropdown`,children:[t&&e.jsx("div",{className:"nice-country-picker__search",children:e.jsx("input",{ref:ne,type:"text",value:V,onChange:c=>S(c.target.value),onKeyDown:C,placeholder:r??y("search","Search"),className:"nice-country-picker__search-input","data-testid":`${u}-search`})}),e.jsx("div",{className:"nice-country-picker__list",children:ae.length===0?e.jsx("div",{className:"nice-country-picker__empty",children:y("noData","No countries found")}):ae.map((c,A)=>e.jsxs("div",{className:`nice-country-picker__option ${c.code===_?"nice-country-picker__option--selected":""} ${A===ee?"nice-country-picker__option--highlighted":""}`,onClick:()=>k(c),onMouseEnter:()=>I(A),role:"option","aria-selected":c.code===_,"data-testid":`${u}-option-${c.code}`,children:[o&&e.jsx("span",{className:"nice-country-picker__flag","aria-hidden":"true",children:e.jsx(an,{code:c.code})}),e.jsx("span",{className:"nice-country-picker__name",children:c.name}),d&&e.jsx("span",{className:"nice-country-picker__dial-code",children:c.dialCode})]},c.code))})]}),B&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),J==="right"&&q&&e.jsx("div",{className:"nice-field__error",role:"alert",children:q}),J==="right"&&!q&&F&&e.jsx("div",{className:"nice-field__helper",children:F})]}),J!=="right"&&q&&e.jsx("div",{className:"nice-field__error",role:"alert",children:q}),J!=="right"&&!q&&F&&e.jsx("div",{className:"nice-field__helper",children:F})]})};Ye.displayName="NiceCountryPicker";function Te(n){return n.toString().padStart(2,"0")}function zn(n){if(!n)return{date:"",hours:0,minutes:0,seconds:0};const i=new Date(n);if(isNaN(i.getTime()))return{date:"",hours:0,minutes:0,seconds:0};const a=i.getFullYear(),l=Te(i.getMonth()+1),t=Te(i.getDate());return{date:`${a}-${l}-${t}`,hours:i.getHours(),minutes:i.getMinutes(),seconds:i.getSeconds()}}function Ln(n,i,a,l){return n?`${n}T${Te(i)}:${Te(a)}:${Te(l)}`:""}const qe=s.forwardRef(({label:n,helperText:i,error:a,required:l,disabled:t,readOnly:r,size:d="md",name:o,id:b,className:T,style:Z,value:g,onChange:m,onBlur:Y,min:ie,max:G,hourFormat:F="24",minuteStep:q=1,showSeconds:O=!1,showNow:z=!1,clearable:B=!1,...se},J)=>{const{t:L}=$.Wo(),v=$.cs(b),P=s.useRef(null),u=s.useMemo(()=>zn(g),[g]),y=s.useCallback((f,x,ae,ce)=>{m?.(Ln(f,x,ae,ce))},[m]),K=s.useCallback(f=>{y(f.target.value,u.hours,u.minutes,u.seconds)},[y,u]),ne=s.useCallback(f=>{const x=Math.max(0,Math.min(23,parseInt(f.target.value,10)||0));y(u.date,x,u.minutes,u.seconds)},[y,u]),j=s.useCallback(f=>{const x=Math.max(0,Math.min(59,parseInt(f.target.value,10)||0));y(u.date,u.hours,x,u.seconds)},[y,u]),M=s.useCallback(f=>{const x=Math.max(0,Math.min(59,parseInt(f.target.value,10)||0));y(u.date,u.hours,u.minutes,x)},[y,u]),w=s.useCallback(()=>{const f=u.hours>=12?u.hours-12:u.hours+12;y(u.date,f,u.minutes,u.seconds)},[y,u]),H=s.useCallback(()=>{const f=new Date,x=`${f.getFullYear()}-${Te(f.getMonth()+1)}-${Te(f.getDate())}`;y(x,f.getHours(),f.getMinutes(),f.getSeconds())},[y]),V=s.useCallback(()=>{m?.("")},[m]),S=F==="12"?u.hours===0?12:u.hours>12?u.hours-12:u.hours:u.hours,ee=u.hours>=12?"PM":"AM",I=ie?ie.split("T")[0]:void 0,_=G?G.split("T")[0]:void 0;return e.jsxs("div",{ref:J,className:`nice-field ${T||""}`,style:Z,...se,children:[n&&e.jsx("label",{htmlFor:v,className:`nice-field__label ${l?"nice-field__label--required":""}`,children:n}),e.jsxs("div",{className:`nice-datetime nice-datetime--${d} ${a?"nice-datetime--error":""} ${t?"nice-datetime--disabled":""} ${r?"nice-datetime--readonly":""}`,children:[e.jsx("input",{ref:P,id:v,type:"date",className:"nice-datetime__date",name:o?`${o}_date`:void 0,value:u.date,min:I,max:_,disabled:t,readOnly:r,"aria-invalid":!!a,"aria-describedby":a?`${v}-error`:i?`${v}-helper`:void 0,onChange:K,onBlur:Y}),e.jsx("span",{className:"nice-datetime__separator",children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{d:"M10 2a8 8 0 100 16 8 8 0 000-16zm.75 4a.75.75 0 00-1.5 0v4c0 .2.08.39.22.53l2 2a.75.75 0 101.06-1.06L10.75 9.69V6z"})})}),e.jsx("input",{type:"number",className:"nice-datetime__time-part",value:S,min:F==="12"?1:0,max:F==="12"?12:23,disabled:t,readOnly:r,"aria-label":L("datetime.hours","Hours"),onChange:ne}),e.jsx("span",{className:"nice-datetime__colon",children:":"}),e.jsx("input",{type:"number",className:"nice-datetime__time-part",value:Te(u.minutes),min:0,max:59,step:q,disabled:t,readOnly:r,"aria-label":L("datetime.minutes","Minutes"),onChange:j}),O&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"nice-datetime__colon",children:":"}),e.jsx("input",{type:"number",className:"nice-datetime__time-part",value:Te(u.seconds),min:0,max:59,disabled:t,readOnly:r,"aria-label":L("datetime.seconds","Seconds"),onChange:M})]}),F==="12"&&e.jsx("button",{type:"button",className:"nice-datetime__ampm",disabled:t||r,onClick:w,"aria-label":L("datetime.toggleAmPm","Toggle AM/PM"),children:ee}),z&&e.jsx("button",{type:"button",className:"nice-datetime__now",disabled:t||r,onClick:H,"aria-label":L("datetime.now","Now"),children:L("datetime.now","Now")}),B&&g&&e.jsx("button",{type:"button",className:"nice-input__clear",disabled:t||r,onClick:V,"aria-label":L("controls.clear","Clear"),children:"✕"})]}),a&&e.jsx("div",{id:`${v}-error`,className:"nice-field__error",role:"alert",children:a}),!a&&i&&e.jsx("div",{id:`${v}-helper`,className:"nice-field__helper",children:i})]})});qe.displayName="NiceDateTimePicker";function Me(n){return n.toString().padStart(2,"0")}function ze(n){if(!n)return{hours:0,minutes:0,seconds:0};const i=n.split(":").map(Number);return{hours:Math.max(0,Math.min(23,i[0]||0)),minutes:Math.max(0,Math.min(59,i[1]||0)),seconds:Math.max(0,Math.min(59,i[2]||0))}}function In(n,i,a,l){return l?`${Me(n)}:${Me(i)}:${Me(a)}`:`${Me(n)}:${Me(i)}`}function Un(n,i,a){const{hours:l,minutes:t,seconds:r}=ze(n),d=new Date(a);if(i!=null){const b=typeof i=="string"?new Date(i):new Date(i.getTime());if(!Number.isNaN(b.getTime()))return b.setHours(l,t,r,0),b}const o=new Date(d);return o.setHours(l,t,r,0),o.getTime()<=d.getTime()&&o.setDate(o.getDate()+1),o}function fn(n,i){if(n<=0)return i;const a=Math.floor(n/864e5),l=Math.floor(n%864e5/36e5),t=Math.floor(n%36e5/6e4),r=Math.floor(n%6e4/1e3),d=`${Me(l)}:${Me(t)}:${Me(r)}`;return a>0?`${a}d ${d}`:d}function Bn(n,i){if(n<=0)return i;const a=Math.floor(n/864e5),l=Math.floor(n%864e5/36e5),t=Math.floor(n%36e5/6e4),r=Math.floor(n%6e4/1e3),d=[];return a&&d.push(`${a}d`),(a||l)&&d.push(`${l}h`),(a||l||t)&&d.push(`${t}m`),d.push(`${r}s`),d.join(" ")}function Gn(n,i){if(n<=0)return i;const a=Math.floor(n/1e3),l=Math.floor(a/3600),t=Math.floor(a%3600/60),r=a%60;return l>0?`${Me(l)}:${Me(t)}:${Me(r)}`:`${Me(t)}:${Me(r)}`}function Pn(n,i){if(n<=0)return i;const a=Math.floor(n/1e3),l=Math.floor(a/86400);if(l)return`${l}d`;const t=Math.floor(a/3600);if(t)return`${t}h`;const r=Math.floor(a/60);return r?`${r}m`:`${a}s`}function Hn(n,i){if(n<=0)return i;const a=Math.floor(n/1e3),l=Math.floor(a/86400),t=Math.floor(a%86400/3600),r=Math.floor(a%3600/60),d=[];return l&&d.push(`${l} ${l===1?"day":"days"}`),t&&d.push(`${t} ${t===1?"hour":"hours"}`),r&&d.push(`${r} ${r===1?"minute":"minutes"}`),d.length?d.join(", "):"less than a minute"}const Kn={verbose:fn,compact:Bn,short:Gn,minimal:Pn,words:Hn},Oe=s.forwardRef(({label:n,helperText:i,error:a,required:l,disabled:t,readOnly:r,size:d="md",name:o,id:b,className:T,style:Z,value:g,onChange:m,onBlur:Y,hourFormat:ie="24",minuteStep:G=1,showSeconds:F=!1,min:q,max:O,clearable:z=!1,labelPlacement:B,errorPlacement:se,loading:J,labelWidth:L,controlWidth:v,targetDate:P,onTargetChange:u,countdown:y=!1,countdownFormat:K="verbose",formatCountdown:ne,countdownLabel:j,countdownInterval:M=1e3,countdownDoneText:w="now",...H},V)=>{const{t:S}=$.Wo(),ee=$.cs(b),I=s.useRef(null),_=s.useMemo(()=>ze(g),[g]),f=F?6:4,x=s.useCallback(le=>{const oe=le.slice(0,f);if(oe.length===0)return"";let N=oe.slice(0,2);return oe.length>2&&(N+=":"+oe.slice(2,4)),F&&oe.length>4&&(N+=":"+oe.slice(4,6)),N},[f,F]),ae=s.useCallback(le=>le.replace(/\D/g,"").slice(0,f),[f]),ce=s.useMemo(()=>g?ae(g):"",[g,ae]),k=x(ce),[W,C]=s.useState(()=>Date.now());s.useEffect(()=>{if(!y)return;const le=window.setInterval(()=>C(Date.now()),Math.max(100,M));return()=>window.clearInterval(le)},[y,M]);const c=s.useMemo(()=>Un(g,P,W),[g,P,W]),A=s.useRef(0);s.useEffect(()=>{if(!u)return;const le=c.getTime();le!==A.current&&(A.current=le,u(c))},[c,u]);const te=s.useMemo(()=>{if(!y)return null;const le=c.getTime()-W;return ne?ne(le,c):(Kn[K]??fn)(le,w)},[y,c,W,ne,K,w]),ue=s.useCallback((le,oe,N)=>{m?.(In(le,oe,N,F))},[m,F]),ge=s.useCallback((le,oe,N)=>{if(q){const D=ze(q),re=D.hours*3600+D.minutes*60+D.seconds;if(le*3600+oe*60+N<re)return[D.hours,D.minutes,D.seconds]}if(O){const D=ze(O),re=D.hours*3600+D.minutes*60+D.seconds;if(le*3600+oe*60+N>re)return[D.hours,D.minutes,D.seconds]}return[le,oe,N]},[q,O]),be=s.useCallback(()=>{const le=_.hours>=12?_.hours-12:_.hours+12,[oe,N,D]=ge(le,_.minutes,_.seconds);ue(oe,N,D)},[ue,_,ge]),Ce=s.useCallback(()=>{m?.("")},[m]),h=s.useCallback(le=>{if(r||t)return;if(le.length===0){m?.("");return}const oe=parseInt(le.slice(0,2)||"0",10),N=parseInt(le.slice(2,4)||"0",10),D=F?parseInt(le.slice(4,6)||"0",10):0,re=Math.max(0,Math.min(23,isNaN(oe)?0:oe)),pe=Math.max(0,Math.min(59,isNaN(N)?0:N)),fe=Math.max(0,Math.min(59,isNaN(D)?0:D)),[p,X,U]=ge(re,pe,fe);if(le.length<f){m?.(x(le));return}ue(p,X,U)},[r,t,F,f,x,ge,ue,m]),R=s.useCallback(le=>{const oe=ae(le.currentTarget.value);h(oe)},[ae,h]),Q=s.useCallback(le=>{if(!(r||t)){if(le.key==="ArrowUp"||le.key==="ArrowDown"){le.preventDefault();const oe=le.key==="ArrowUp"?1:-1,N=_.hours;let D=_.minutes,re=_.seconds;F?re=((re+oe)%60+60)%60:D=((D+oe*G)%60+60)%60;const[pe,fe,p]=ge(N,D,re);ue(pe,fe,p);return}le.key==="Escape"&&g&&(le.preventDefault(),m?.(""))}},[r,t,_,F,G,ge,ue,g,m]),he=_.hours>=12?"PM":"AM",ye=s.useCallback(le=>{le.target.select()},[]),de=s.useCallback(le=>{Y?.(le)},[Y]),E=y&&te!=null&&e.jsxs("span",{className:"nice-timepicker__countdown",title:c.toLocaleString(),"aria-live":"polite",children:[j&&e.jsx("span",{className:"nice-timepicker__countdown-label",children:j}),e.jsx("span",{className:"nice-timepicker__countdown-value",children:te})]});return e.jsxs("div",{ref:V,className:`nice-field nice-field--${d} ${B==="left"?"nice-field--label-left":""} ${J?"nice-field--loading":""} ${T||""}`,style:{...Z,...L!=null&&{"--nice-field-label-width":typeof L=="number"?`${L}px`:L},...v!=null&&{"--nice-field-control-width":typeof v=="number"?`${v}px`:v}},"aria-busy":J||void 0,...H,children:[n&&e.jsx("label",{htmlFor:ee,className:`nice-field__label ${l?"nice-field__label--required":""}`,children:n}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{className:`nice-timepicker nice-timepicker--${d} ${a?"nice-timepicker--error":""} ${t?"nice-timepicker--disabled":""} ${r?"nice-timepicker--readonly":""}`,children:[e.jsx("input",{ref:I,id:ee,type:"text",inputMode:"numeric",autoComplete:"off",spellCheck:!1,className:"nice-timepicker__input nice-input__native nice-masked-input",value:k,placeholder:F?"HH:MM:SS":"HH:MM",disabled:t||J,readOnly:r,name:o,"aria-invalid":!!a,"aria-describedby":a?`${ee}-error`:i?`${ee}-helper`:void 0,"aria-label":S("datetime.time","Time"),style:{width:`${F?9:6}ch`,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontVariantNumeric:"tabular-nums"},onInput:R,onChange:()=>{},onKeyDown:Q,onFocus:ye,onBlur:de}),ie==="12"&&e.jsx("button",{type:"button",className:"nice-timepicker__ampm",disabled:t||r,onClick:be,"aria-label":S("datetime.toggleAmPm","Toggle AM/PM"),children:he}),z&&e.jsx("button",{type:"button",className:"nice-input__clear",disabled:t||r||!g,onClick:Ce,"aria-label":S("controls.clear","Clear"),tabIndex:g?0:-1,children:"✕"})]}),E,J&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),se==="right"&&a&&e.jsx("div",{id:`${ee}-error`,className:"nice-field__error",role:"alert",children:a}),se==="right"&&!a&&i&&e.jsx("div",{id:`${ee}-helper`,className:"nice-field__helper",children:i})]}),se!=="right"&&a&&e.jsx("div",{id:`${ee}-error`,className:"nice-field__error",role:"alert",children:a}),se!=="right"&&!a&&i&&e.jsx("div",{id:`${ee}-helper`,className:"nice-field__helper",children:i})]})});Oe.displayName="NiceTimePicker";const Vn=({filled:n,size:i})=>e.jsxs("svg",{width:i,height:i,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[n==="half"&&e.jsx("defs",{children:e.jsxs("linearGradient",{id:"halfGrad",children:[e.jsx("stop",{offset:"50%",stopColor:"currentColor"}),e.jsx("stop",{offset:"50%",stopColor:"transparent"})]})}),e.jsx("path",{d:"M12 2l3.09 6.26L22 9.27l-5 4.87L18.18 22 12 18.27 5.82 22 7 14.14l-5-4.87 6.91-1.01L12 2z",fill:n==="full"?"currentColor":n==="half"?"url(#halfGrad)":"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round"})]}),Zn={xxs:10,xs:14,sm:18,md:22,lg:28,xl:34,xxl:42},Je=s.forwardRef(({value:n=0,onChange:i,count:a=5,half:l=!1,readOnly:t=!1,disabled:r=!1,size:d="md",label:o,icon:b,name:T,error:Z,helperText:g,required:m,id:Y,className:ie,style:G,labelPlacement:F,errorPlacement:q,labelWidth:O,controlWidth:z,valuePlacement:B="none",valueTemplate:se,loading:J,...L},v)=>{const{t:P}=$.Wo(),u=$.cs(Y),[y,K]=s.useState(null),ne=Zn[d],j=!t&&!r&&!J,M=y??n,w=_=>M>=_+1?"full":l&&M>=_+.5?"half":"empty",H=s.useCallback((_,f)=>{if(!j)return;const x=f&&l?_+.5:_+1;i?.(x===n?0:x)},[j,l,i,n]),V=s.useCallback((_,f)=>{if(j)if(l){const x=f.currentTarget.getBoundingClientRect(),ae=f.clientX-x.left<x.width/2;K(ae?_+.5:_+1)}else K(_+1)},[j,l]),S=s.useCallback(()=>{j&&K(null)},[j]),ee=s.useCallback(_=>{if(!j)return;const f=l?.5:1;if(_.key==="ArrowRight"||_.key==="ArrowUp"){_.preventDefault();const x=Math.min(a,n+f);i?.(x)}else if(_.key==="ArrowLeft"||_.key==="ArrowDown"){_.preventDefault();const x=Math.max(0,n-f);i?.(x)}},[j,l,a,n,i]),I=se?se.replace("{value}",String(n)):String(n);return e.jsxs("div",{className:`nice-field nice-field--${d} ${F==="left"?"nice-field--label-left":""} ${J?"nice-field--loading":""} ${ie||""}`,style:{...G,...O!=null&&{"--nice-field-label-width":typeof O=="number"?`${O}px`:O},...z!=null&&{"--nice-field-control-width":typeof z=="number"?`${z}px`:z}},"aria-busy":J||void 0,...L,children:[o&&e.jsx("label",{htmlFor:u,className:`nice-field__label ${m?"nice-field__label--required":""}`,children:o}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{ref:v,id:u,className:`nice-rating nice-rating--${d} ${r?"nice-rating--disabled":""} ${t?"nice-rating--readonly":""}`,role:"slider","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":a,"aria-label":o||P("controls.rating","Rating"),"aria-invalid":!!Z,tabIndex:j?0:-1,onMouseLeave:S,onKeyDown:ee,children:[T&&e.jsx("input",{type:"hidden",name:T,value:n}),Array.from({length:a},(_,f)=>{const x=w(f);return e.jsx("span",{className:`nice-rating__star nice-rating__star--${x}`,onClick:ae=>{if(!j)return;const ce=ae.currentTarget.getBoundingClientRect(),k=l&&ae.clientX-ce.left<ce.width/2;H(f,k)},onMouseMove:ae=>V(f,ae),"aria-label":`${f+1} ${P("controls.star","star")}`,children:b?b(x):e.jsx(Vn,{filled:x,size:ne})},f)})]}),B==="right"&&e.jsx("span",{className:"nice-rating__value",children:I}),B==="bottom"&&e.jsx("div",{className:"nice-rating__value nice-rating__value--bottom",children:I}),J&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),q==="right"&&Z&&e.jsx("div",{id:`${u}-error`,className:"nice-field__error",role:"alert",children:Z}),q==="right"&&!Z&&g&&e.jsx("div",{id:`${u}-helper`,className:"nice-field__helper",children:g})]}),q!=="right"&&Z&&e.jsx("div",{id:`${u}-error`,className:"nice-field__error",role:"alert",children:Z}),q!=="right"&&!Z&&g&&e.jsx("div",{id:`${u}-helper`,className:"nice-field__helper",children:g})]})});Je.displayName="NiceRating";const Yn=[{id:"length",label:"At least 8 characters",test:n=>n.length>=8},{id:"uppercase",label:"At least one uppercase letter",test:n=>/[A-Z]/.test(n)},{id:"lowercase",label:"At least one lowercase letter",test:n=>/[a-z]/.test(n)},{id:"digit",label:"At least one digit",test:n=>/\d/.test(n)},{id:"special",label:"At least one special character",test:n=>/[^a-zA-Z0-9]/.test(n)}];function qn(n,i){if(!n)return{level:"none",passed:[],ratio:0};const a=i.filter(r=>r.test(n)).map(r=>r.id),l=a.length/i.length;let t="weak";return l>=1?t="strong":l>=.75?t="good":l>=.5&&(t="fair"),{level:t,passed:a,ratio:l}}const We=s.forwardRef(({label:n,helperText:i,error:a,required:l,disabled:t,readOnly:r,size:d="md",name:o,id:b,className:T,style:Z,value:g="",onChange:m,onBlur:Y,onKeyDown:ie,placeholder:G,maxLength:F,showToggle:q=!0,showStrength:O=!1,strengthRules:z,validationPlacement:B="bottom",autoFocus:se,autoComplete:J,labelPlacement:L,errorPlacement:v,loading:P,labelWidth:u,controlWidth:y,...K},ne)=>{const{t:j}=$.Wo(),M=$.cs(b),[w,H]=s.useState(!1),V=z??Yn,S=s.useMemo(()=>O?qn(g,V):null,[O,g,V]),ee=s.useCallback(()=>H(_=>!_),[]),I=O&&S&&g?e.jsxs("div",{className:`nice-password__strength ${B==="right"?"nice-password__strength--right":""}`,children:[e.jsx("div",{className:"nice-password__meter",children:e.jsx("div",{className:`nice-password__meter-fill nice-password__meter-fill--${S.level}`,style:{width:`${S.ratio*100}%`}})}),e.jsx("span",{className:`nice-password__strength-label nice-password__strength-label--${S.level}`,children:j(`password.strength.${S.level}`,S.level.charAt(0).toUpperCase()+S.level.slice(1))}),e.jsx("ul",{className:"nice-password__rules",children:V.map(_=>{const f=S.passed.includes(_.id);return e.jsxs("li",{className:`nice-password__rule ${f?"nice-password__rule--passed":""}`,children:[e.jsx("span",{className:"nice-password__rule-icon",children:f?"✓":"✗"}),_.label]},_.id)})})]}):null;return e.jsxs("div",{className:`nice-field nice-field--${d} ${L==="left"?"nice-field--label-left":""} ${P?"nice-field--loading":""} ${T||""}`,style:{...Z,...u!=null&&{"--nice-field-label-width":typeof u=="number"?`${u}px`:u},...y!=null&&{"--nice-field-control-width":typeof y=="number"?`${y}px`:y}},"aria-busy":P||void 0,children:[n&&e.jsx("label",{htmlFor:M,className:`nice-field__label ${l?"nice-field__label--required":""}`,style:B==="right"&&L==="left"?{alignSelf:"flex-start",paddingTop:6}:void 0,children:n}),e.jsxs("div",{className:"nice-field__control",style:B==="right"?{alignItems:"flex-start"}:void 0,children:[e.jsxs("div",{style:B==="right"?{display:"flex",flexDirection:"column",flex:"1 1 auto",minWidth:0}:{display:"contents"},children:[e.jsxs("div",{className:`nice-input nice-input--${d} ${a?"nice-input--error":""} ${t?"nice-input--disabled":""} ${r?"nice-input--readonly":""}`,children:[e.jsx("input",{ref:ne,id:M,className:"nice-input__native",type:w?"text":"password",name:o,value:g,placeholder:G,disabled:t||P,readOnly:r,maxLength:F,autoFocus:se,autoComplete:J,"aria-invalid":!!a,"aria-describedby":a?`${M}-error`:i?`${M}-helper`:void 0,onChange:_=>m?.(_.target.value),onBlur:Y,onKeyDown:ie,...K}),q&&e.jsx("button",{type:"button",className:"nice-password__toggle",onClick:ee,disabled:t,tabIndex:-1,"aria-label":w?j("password.hide","Hide password"):j("password.show","Show password"),children:w?e.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M17.94 17.94A10.07 10.07 0 0112 20c-7 0-11-8-11-8a18.45 18.45 0 015.06-5.94M9.9 4.24A9.12 9.12 0 0112 4c7 0 11 8 11 8a18.5 18.5 0 01-2.16 3.19m-6.72-1.07a3 3 0 11-4.24-4.24"}),e.jsx("line",{x1:"1",y1:"1",x2:"23",y2:"23"})]}):e.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"}),e.jsx("circle",{cx:"12",cy:"12",r:"3"})]})})]}),B==="right"&&v!=="right"&&a&&e.jsx("div",{id:`${M}-error`,className:"nice-field__error",role:"alert",children:a}),B==="right"&&v!=="right"&&!a&&i&&e.jsx("div",{id:`${M}-helper`,className:"nice-field__helper",children:i})]}),P&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),B==="right"&&I,v==="right"&&a&&e.jsx("div",{id:`${M}-error`,className:"nice-field__error",role:"alert",children:a}),v==="right"&&!a&&i&&e.jsx("div",{id:`${M}-helper`,className:"nice-field__helper",children:i})]}),B!=="right"&&I,B!=="right"&&v!=="right"&&a&&e.jsx("div",{id:`${M}-error`,className:"nice-field__error",role:"alert",children:a}),B!=="right"&&v!=="right"&&!a&&i&&e.jsx("div",{id:`${M}-helper`,className:"nice-field__helper",children:i})]})});We.displayName="NicePasswordInput";const On=[{code:"PL",dialCode:"+48",name:"Poland",mask:"### ### ###"},{code:"US",dialCode:"+1",name:"United States",mask:"(###) ###-####"},{code:"GB",dialCode:"+44",name:"United Kingdom",mask:"#### ######"},{code:"DE",dialCode:"+49",name:"Germany",mask:"### ########"},{code:"FR",dialCode:"+33",name:"France",mask:"# ## ## ## ##"},{code:"CZ",dialCode:"+420",name:"Czech Republic",mask:"### ### ###"},{code:"SK",dialCode:"+421",name:"Slovakia",mask:"### ### ###"}],sn=127397;function Jn(n){return String.fromCodePoint(n.charCodeAt(0)+sn,n.charCodeAt(1)+sn)}function Wn(n,i){if(!i)return n;const a=n.replace(/\D/g,"");let l="",t=0;for(let r=0;r<i.length&&t<a.length;r++)i[r]==="#"?l+=a[t++]:l+=i[r];return l}function Le(n,i){return`${n}${i.replace(/\D/g,"")}`}const Qe=s.forwardRef(({label:n,helperText:i,error:a,required:l,disabled:t,readOnly:r,size:d="md",name:o,id:b,className:T,style:Z,accessMode:g,value:m={},onChange:Y,onBlur:ie,countryCodes:G=On,defaultCountry:F="PL",placeholder:q,showFlag:O=!0,validateE164:z=!1},B)=>{const se=$.Ns(g,b);if(se==="hidden")return null;se==="disabled"&&(t=!0),se==="readOnly"&&(r=!0);const{t:J}=$.Wo(),L=$.cs(b),v=s.useMemo(()=>{const w=m.countryCode??F;return G.find(H=>H.code===w)??G[0]},[m.countryCode,F,G]),[P,u]=s.useState(),y=s.useMemo(()=>Wn(m.number??"",v?.mask),[m.number,v]),K=s.useCallback(w=>{const H=G.find(S=>S.code===w);if(!H)return;const V=m.number??"";Y?.({countryCode:H.code,dialCode:H.dialCode,number:V,e164:Le(H.dialCode,V)})},[G,m.number,Y]),ne=s.useCallback(w=>{const H=w.replace(/\D/g,""),V=v;Y?.({countryCode:V?.code,dialCode:V?.dialCode,number:H,e164:V?Le(V.dialCode,H):H}),u(void 0)},[v,Y]),j=s.useCallback(w=>{if(z&&m.number){const H=Le(v?.dialCode??"",m.number);/^\+\d{7,15}$/.test(H)||u(J("invalidPhone","Invalid phone number"))}ie?.(w)},[z,m.number,v,ie,J]),M=a||P;return e.jsxs("div",{ref:B,id:L,className:`nice-phone nice-size-${d}${T?` ${T}`:""}${M?" nice-error":""}${t?" nice-disabled":""}`,style:Z,children:[n&&e.jsxs("label",{className:"nice-phone__label",children:[n,l&&e.jsx("span",{className:"nice-required",children:"*"})]}),e.jsxs("div",{className:"nice-phone__row",children:[e.jsx("select",{className:"nice-phone__country nice-select",value:v?.code,onChange:w=>K(w.target.value),disabled:t,"aria-label":J("countryCode","Country code"),children:G.map(w=>e.jsxs("option",{value:w.code,children:[O?`${Jn(w.code)} `:"",w.dialCode," ",w.name]},w.code))}),e.jsx("input",{className:"nice-input nice-phone__number",type:"tel",name:o,value:y,onChange:w=>ne(w.target.value),onBlur:j,placeholder:q??v?.mask?.replace(/#/g,"_")??"",disabled:t,readOnly:r,"aria-label":J("phoneNumber","Phone number")})]}),i&&e.jsx("span",{className:"nice-helper-text",children:i}),M&&typeof M=="string"&&e.jsx("span",{className:"nice-error-text",children:M})]})});Qe.displayName="NicePhoneInput";const un=s.createContext(null),pn=()=>{const n=s.useContext(un);if(!n)throw new Error("useUploadContext must be used within NiceFileUpload");return n},Qn=()=>`file-${Date.now()}-${Math.random().toString(36).slice(2,11)}`,Ee=n=>{if(n===0)return"0 B";const i=1024,a=["B","KB","MB","GB","TB"],l=Math.floor(Math.log(n)/Math.log(i));return parseFloat((n/Math.pow(i,l)).toFixed(2))+" "+a[l]},mn=n=>n.startsWith("image/")?"🖼️":n.startsWith("video/")?"🎬":n.startsWith("audio/")?"🎵":n.includes("pdf")?"📄":n.includes("word")||n.includes("document")?"📝":n.includes("excel")||n.includes("spreadsheet")?"📊":n.includes("powerpoint")||n.includes("presentation")?"📽️":n.includes("zip")||n.includes("rar")||n.includes("7z")?"📦":n.includes("text/")||n.includes("json")||n.includes("xml")?"📃":"📁",hn=n=>n.startsWith("image/"),gn=n=>n.startsWith("video/"),Xn=n=>n.startsWith("audio/"),ea=n=>{if(hn(n.type)||gn(n.type)||Xn(n.type))return URL.createObjectURL(n)},na=(n,i)=>async a=>{const l=new FormData;a.chunk?(l.append("chunk",a.chunk),l.append("chunkIndex",String(a.chunkIndex)),l.append("totalChunks",String(a.totalChunks)),l.append("fileName",a.file.name),l.append("fileId",a.fileId||"")):l.append("file",a.file);const t=new XMLHttpRequest;return new Promise((r,d)=>{t.upload.addEventListener("progress",o=>{o.lengthComputable&&a.onProgress&&a.onProgress(o.loaded/o.total*100)}),t.addEventListener("load",()=>{if(t.status>=200&&t.status<300)try{const o=JSON.parse(t.responseText);r({success:!0,url:o.url,fileId:o.fileId||o.id,metadata:o})}catch{r({success:!0,url:t.responseText})}else r({success:!1,error:`Upload failed: ${t.status} ${t.statusText}`})}),t.addEventListener("error",()=>{r({success:!1,error:"Network error"})}),t.addEventListener("abort",()=>{r({success:!1,error:"Upload cancelled"})}),a.signal&&a.signal.addEventListener("abort",()=>t.abort()),t.open("POST",n),i&&Object.entries(i).forEach(([o,b])=>{t.setRequestHeader(o,b)}),t.send(l)})},Ie=({progress:n,status:i})=>{const a=()=>{switch(i){case"success":return"var(--color-success, #22c55e)";case"error":return"var(--color-error, #ef4444)";case"cancelled":return"var(--text-muted, #6b7280)";default:return"var(--color-primary, #3b82f6)"}};return e.jsxs("div",{className:"nice-upload-progress",children:[e.jsx("div",{className:"nice-upload-progress-bar",style:{width:`${n}%`,backgroundColor:a()}}),e.jsxs("span",{className:"nice-upload-progress-text",children:[Math.round(n),"%"]})]})},tn=({file:n,size:i="md",customRender:a})=>{if(a)return e.jsx(e.Fragment,{children:a(n)});const t={xxs:24,xs:32,sm:48,md:80,lg:120,xl:160,xxl:200}[i]??80;return n.previewUrl&&hn(n.type)?e.jsx("div",{className:"nice-upload-preview",style:{width:t,height:t},children:e.jsx("img",{src:n.previewUrl,alt:n.name,style:{width:"100%",height:"100%",objectFit:"cover",borderRadius:4}})}):n.previewUrl&&gn(n.type)?e.jsxs("div",{className:"nice-upload-preview",style:{width:t,height:t},children:[e.jsx("video",{src:n.previewUrl,style:{width:"100%",height:"100%",objectFit:"cover",borderRadius:4},muted:!0}),e.jsx("span",{className:"nice-upload-preview-overlay",children:"▶️"})]}):e.jsx("div",{className:"nice-upload-preview nice-upload-preview-icon",style:{width:t,height:t,fontSize:t*.5},children:mn(n.type)})},aa=({file:n,actions:i,showPreview:a=!0,previewSize:l="md",customRenderPreview:t,customRender:r,mode:d="list"})=>{const{disabled:o,readOnly:b}=pn();if(r)return e.jsx(e.Fragment,{children:r(n,i)});const T=()=>{switch(n.status){case"pending":return e.jsx("span",{className:"nice-upload-badge pending",children:"Oczekuje"});case"uploading":return e.jsx("span",{className:"nice-upload-badge uploading",children:"Wysyłanie..."});case"success":return e.jsx("span",{className:"nice-upload-badge success",children:"✓ Przesłano"});case"error":return e.jsx("span",{className:"nice-upload-badge error",children:"✗ Błąd"});case"cancelled":return e.jsx("span",{className:"nice-upload-badge cancelled",children:"Anulowano"})}};return d==="compact"?e.jsxs("div",{className:`nice-upload-item compact ${n.status}`,children:[e.jsx("span",{className:"nice-upload-item-icon",children:mn(n.type)}),e.jsx("span",{className:"nice-upload-item-name",title:n.name,children:n.name}),e.jsx("span",{className:"nice-upload-item-size",children:Ee(n.size)}),n.status==="uploading"&&e.jsx(Ie,{progress:n.progress,status:n.status}),T(),!b&&!o&&n.status!=="uploading"&&e.jsx("button",{className:"nice-upload-item-remove",onClick:i.remove,title:"Usuń",children:"✕"})]}):d==="grid"?e.jsxs("div",{className:`nice-upload-item grid ${n.status}`,children:[a&&e.jsx(tn,{file:n,size:"lg",customRender:t}),e.jsxs("div",{className:"nice-upload-item-info",children:[e.jsx("span",{className:"nice-upload-item-name",title:n.name,children:n.name}),e.jsx("span",{className:"nice-upload-item-size",children:Ee(n.size)})]}),n.status==="uploading"&&e.jsx(Ie,{progress:n.progress,status:n.status}),T(),n.error&&e.jsx("span",{className:"nice-upload-item-error",children:n.error}),!b&&!o&&e.jsxs("div",{className:"nice-upload-item-actions",children:[n.status==="pending"&&e.jsx("button",{onClick:i.upload,className:"nice-upload-btn upload",children:"Wyślij"}),n.status==="uploading"&&e.jsx("button",{onClick:i.cancel,className:"nice-upload-btn cancel",children:"Anuluj"}),n.status==="error"&&e.jsx("button",{onClick:i.retry,className:"nice-upload-btn retry",children:"Ponów"}),n.status!=="uploading"&&e.jsx("button",{onClick:i.remove,className:"nice-upload-btn remove",children:"Usuń"})]})]}):e.jsxs("div",{className:`nice-upload-item list ${n.status}`,children:[a&&e.jsx(tn,{file:n,size:l,customRender:t}),e.jsxs("div",{className:"nice-upload-item-content",children:[e.jsxs("div",{className:"nice-upload-item-header",children:[e.jsx("span",{className:"nice-upload-item-name",title:n.name,children:n.name}),T()]}),e.jsx("span",{className:"nice-upload-item-size",children:Ee(n.size)}),n.status==="uploading"&&e.jsx(Ie,{progress:n.progress,status:n.status}),n.error&&e.jsx("span",{className:"nice-upload-item-error",children:n.error}),n.uploadedUrl&&e.jsx("a",{href:n.uploadedUrl,target:"_blank",rel:"noopener noreferrer",className:"nice-upload-item-link",children:"Otwórz plik"})]}),!b&&!o&&e.jsxs("div",{className:"nice-upload-item-actions",children:[n.status==="pending"&&e.jsx("button",{onClick:i.upload,className:"nice-upload-btn upload",title:"Wyślij",children:"⬆️"}),n.status==="uploading"&&e.jsx("button",{onClick:i.cancel,className:"nice-upload-btn cancel",title:"Anuluj",children:"⏹️"}),n.status==="error"&&e.jsx("button",{onClick:i.retry,className:"nice-upload-btn retry",title:"Ponów",children:"🔄"}),n.status!=="uploading"&&e.jsx("button",{onClick:i.remove,className:"nice-upload-btn remove",title:"Usuń",children:"🗑️"})]})]})},ia=({files:n,mode:i="list",showPreview:a=!0,previewSize:l,renderPreview:t,renderFileItem:r})=>{const d=pn();return n.length===0?null:e.jsx("div",{className:`nice-upload-list ${i}`,children:n.map(o=>{const b={upload:()=>d.uploadFile(o.id),cancel:()=>d.cancelFile(o.id),retry:()=>d.retryFile(o.id),remove:()=>d.removeFile(o.id)};return e.jsx(aa,{file:o,actions:b,mode:i,showPreview:a,previewSize:l,customRenderPreview:t,customRender:r},o.id)})})},sa=({onFiles:n,accept:i,multiple:a=!0,disabled:l,readOnly:t,dropzoneText:r="Przeciągnij pliki tutaj lub",browseText:d="wybierz z dysku",dragActiveText:o="Upuść pliki tutaj",className:b,inputRef:T})=>{const[Z,g]=s.useState(!1),m=s.useRef(0),Y=s.useCallback(z=>{z.preventDefault(),z.stopPropagation(),m.current++,z.dataTransfer.items&&z.dataTransfer.items.length>0&&g(!0)},[]),ie=s.useCallback(z=>{z.preventDefault(),z.stopPropagation(),m.current--,m.current===0&&g(!1)},[]),G=s.useCallback(z=>{z.preventDefault(),z.stopPropagation()},[]),F=s.useCallback(z=>{if(z.preventDefault(),z.stopPropagation(),g(!1),m.current=0,l||t)return;const B=Array.from(z.dataTransfer.files);B.length>0&&n(a?B:[B[0]])},[l,t,a,n]),q=s.useCallback(()=>{!l&&!t&&T.current&&T.current.click()},[l,t,T]),O=s.useCallback(z=>{const B=z.target.files?Array.from(z.target.files):[];B.length>0&&n(B),T.current&&(T.current.value="")},[n,T]);return e.jsxs("div",{className:`nice-upload-dropzone ${Z?"drag-active":""} ${l?"disabled":""} ${t?"readonly":""} ${b||""}`,onDragEnter:Y,onDragLeave:ie,onDragOver:G,onDrop:F,onClick:q,children:[e.jsx("input",{ref:T,type:"file",accept:i,multiple:a,onChange:O,style:{display:"none"},disabled:l||t}),e.jsxs("div",{className:"nice-upload-dropzone-content",children:[e.jsx("span",{className:"nice-upload-dropzone-icon",children:"📁"}),Z?e.jsx("span",{className:"nice-upload-dropzone-text active",children:o}):e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"nice-upload-dropzone-text",children:r}),e.jsx("button",{type:"button",className:"nice-upload-browse-btn",disabled:l||t,children:d})]})]})]})},Xe=s.forwardRef((n,i)=>{const{accept:a,multiple:l=!0,maxFileSize:t,maxFiles:r,minFileSize:d,chunkSize:o=5*1024*1024,chunkThreshold:b=10*1024*1024,autoUpload:T=!1,uploadHandler:Z,uploadUrl:g,uploadHeaders:m,onFilesAdded:Y,onUploadComplete:ie,onUploadError:G,onProgress:F,onFileRemoved:q,onChange:O,renderPreview:z,renderFileItem:B,showPreview:se=!0,showFileList:J=!0,listMode:L="list",previewSize:v="md",dropzoneText:P,browseText:u,dragActiveText:y,disabled:K,readOnly:ne,dropzoneClassName:j,maxRetries:M=3,concurrentUploads:w=3,validateFile:H,keepFilesAfterUpload:V=!0,initialFiles:S=[],className:ee,style:I,..._}=n,[f,x]=s.useState(S),ae=s.useRef(null),ce=s.useRef(new Map),k=s.useRef([]),W=s.useRef(new Set);s.useEffect(()=>()=>{f.forEach(N=>{N.previewUrl&&URL.revokeObjectURL(N.previewUrl)})},[]),s.useEffect(()=>{O?.(f)},[f,O]);const C=s.useCallback(()=>Z||(g?na(g,m):null),[Z,g,m]),c=s.useCallback(N=>{if(H){const D=H(N);if(D)return D}if(t&&N.size>t)return`Plik jest za duży. Maksymalny rozmiar: ${Ee(t)}`;if(d&&N.size<d)return`Plik jest za mały. Minimalny rozmiar: ${Ee(d)}`;if(a){const D=a.split(",").map(p=>p.trim().toLowerCase()),re=N.type.toLowerCase(),pe="."+N.name.split(".").pop()?.toLowerCase();if(!D.some(p=>p.startsWith(".")?pe===p:p.endsWith("/*")?re.startsWith(p.replace("/*","/")):re===p))return`Niedozwolony typ pliku. Akceptowane typy: ${a}`}return null},[H,t,d,a]),A=s.useCallback(N=>{if(K||ne)return;const D=f.length;let re=N;r&&D+re.length>r&&(re=re.slice(0,r-D));const pe=re.map(fe=>{const p=c(fe);return{id:Qn(),file:fe,name:fe.name,size:fe.size,type:fe.type,status:p?"error":"pending",progress:0,error:p||void 0,previewUrl:ea(fe)}});x(fe=>[...fe,...pe]),Y?.(pe),T&&(pe.filter(p=>p.status==="pending").forEach(p=>{k.current.push(p.id)}),te())},[K,ne,f.length,r,c,T,Y]),te=s.useCallback(()=>{const N=C();if(N)for(;k.current.length>0&&W.current.size<w;){const D=k.current.shift();D&&ue(D,N)}},[w,C]),ue=s.useCallback(async(N,D)=>{const re=f.find(fe=>fe.id===N);if(!re||re.status==="uploading"||re.status==="success")return;const pe=new AbortController;ce.current.set(N,pe),W.current.add(N),x(fe=>fe.map(p=>p.id===N?{...p,status:"uploading",progress:0,error:void 0}:p));try{const fe=re.file;let p;if(fe.size>b?p=await ge(re,D,pe.signal):p=await D({file:fe,onProgress:X=>{x(U=>U.map(xe=>xe.id===N?{...xe,progress:X}:xe)),F?.(re,X)},signal:pe.signal}),p.success)x(X=>X.map(U=>U.id===N?{...U,status:"success",progress:100,uploadedUrl:p.url,uploadedAt:new Date}:U)),ie?.({...re,status:"success",uploadedUrl:p.url});else throw new Error(p.error||"Upload failed")}catch(fe){if(fe.name==="AbortError"||fe.message==="Upload cancelled")x(p=>p.map(X=>X.id===N?{...X,status:"cancelled",error:"Anulowano"}:X));else{const p=fe.message||"Błąd uploadu";x(X=>X.map(U=>U.id===N?{...U,status:"error",error:p}:U)),G?.(re,p)}}finally{ce.current.delete(N),W.current.delete(N),te()}},[f,b,F,ie,G,te]),ge=async(N,D,re)=>{const pe=N.file,fe=Math.ceil(pe.size/o);let p=0,X={success:!1};for(let U=0;U<fe;U++){if(re.aborted)throw new Error("Upload cancelled");const xe=U*o,ve=Math.min(xe+o,pe.size),ke=pe.slice(xe,ve);let me=0,Ne=!1;for(;!Ne&&me<M;)try{X=await D({file:pe,chunk:ke,chunkIndex:U,totalChunks:fe,fileId:N.id,onProgress:je=>{const $e=(p+ke.size*je/100)/pe.size*100;x(De=>De.map(Ae=>Ae.id===N.id?{...Ae,progress:$e}:Ae))},signal:re}),X.success?(Ne=!0,p+=ke.size):me++}catch(je){if(me++,me>=M)throw je}if(!Ne)throw new Error(`Failed to upload chunk ${U+1}/${fe}`)}return X},be=s.useCallback(N=>{const D=C();if(!D){console.error("No upload handler configured");return}ue(N,D)},[C,ue]),Ce=s.useCallback(N=>{const D=ce.current.get(N);D&&D.abort(),x(re=>re.map(pe=>pe.id===N&&pe.status==="uploading"?{...pe,status:"cancelled",error:"Anulowano"}:pe))},[]),h=s.useCallback(N=>{x(D=>D.map(re=>re.id===N?{...re,status:"pending",progress:0,error:void 0}:re)),be(N)},[be]),R=s.useCallback(N=>{const D=f.find(re=>re.id===N);if(D){const re=ce.current.get(N);re&&re.abort(),D.previewUrl&&URL.revokeObjectURL(D.previewUrl),x(pe=>pe.filter(fe=>fe.id!==N)),q?.(D)}},[f,q]),Q=s.useCallback(()=>{f.filter(D=>D.status==="pending").forEach(D=>{k.current.push(D.id)}),te()},[f,te]),he=s.useCallback(()=>{ce.current.forEach(N=>N.abort()),x(N=>N.map(D=>D.status==="uploading"?{...D,status:"cancelled",error:"Anulowano"}:D))},[]),ye=s.useCallback(()=>{he(),f.forEach(N=>{N.previewUrl&&URL.revokeObjectURL(N.previewUrl)}),x([])},[he,f]),de=s.useCallback(()=>{f.filter(D=>D.status==="error").forEach(D=>h(D.id))},[f,h]),E=s.useCallback(()=>{ae.current?.click()},[]);s.useImperativeHandle(i,()=>({addFiles:A,uploadAll:Q,cancelAll:he,clearAll:ye,getFiles:()=>f,getFile:N=>f.find(D=>D.id===N),retryFailed:de,openFileBrowser:E}),[A,Q,he,ye,f,de,E]);const le=s.useMemo(()=>({files:f,uploadFile:be,cancelFile:Ce,retryFile:h,removeFile:R,disabled:K,readOnly:ne}),[f,be,Ce,h,R,K,ne]),oe=s.useMemo(()=>({total:f.length,pending:f.filter(N=>N.status==="pending").length,uploading:f.filter(N=>N.status==="uploading").length,success:f.filter(N=>N.status==="success").length,error:f.filter(N=>N.status==="error").length}),[f]);return e.jsx(un.Provider,{value:le,children:e.jsxs("div",{className:`nice-file-upload ${K?"disabled":""} ${ne?"readonly":""} ${ee||""}`,style:I,..._,children:[!ne&&e.jsx(sa,{onFiles:A,accept:a,multiple:l,disabled:K,readOnly:ne,dropzoneText:P,browseText:u,dragActiveText:y,className:j,inputRef:ae}),J&&f.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"nice-upload-stats",children:[e.jsxs("span",{children:[oe.total," ",oe.total===1?"plik":"plików"]}),oe.pending>0&&e.jsxs("span",{className:"pending",children:[oe.pending," oczekuje"]}),oe.uploading>0&&e.jsxs("span",{className:"uploading",children:[oe.uploading," wysyłanie"]}),oe.success>0&&e.jsxs("span",{className:"success",children:[oe.success," przesłano"]}),oe.error>0&&e.jsxs("span",{className:"error",children:[oe.error," błędów"]})]}),!ne&&!K&&oe.pending>0&&e.jsxs("div",{className:"nice-upload-actions",children:[e.jsxs("button",{onClick:Q,className:"nice-upload-btn primary",children:["Wyślij wszystkie (",oe.pending,")"]}),oe.error>0&&e.jsxs("button",{onClick:de,className:"nice-upload-btn secondary",children:["Ponów nieudane (",oe.error,")"]}),e.jsx("button",{onClick:ye,className:"nice-upload-btn danger",children:"Wyczyść"})]}),e.jsx(ia,{files:f,mode:L,showPreview:se,previewSize:v,renderPreview:z,renderFileItem:B})]}),e.jsx("style",{children:`
|
|
2
|
+
.nice-file-upload {
|
|
3
|
+
font-family: system-ui, -apple-system, sans-serif;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.nice-file-upload.disabled {
|
|
7
|
+
opacity: 0.5;
|
|
8
|
+
pointer-events: none;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.nice-upload-dropzone {
|
|
12
|
+
border: 2px dashed #d1d5db;
|
|
13
|
+
border-radius: 12px;
|
|
14
|
+
padding: 40px 24px;
|
|
15
|
+
text-align: center;
|
|
16
|
+
cursor: pointer;
|
|
17
|
+
transition: all 0.2s ease;
|
|
18
|
+
background: #fafafa;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.nice-upload-dropzone:hover:not(.disabled):not(.readonly) {
|
|
22
|
+
border-color: #3b82f6;
|
|
23
|
+
background: #eff6ff;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.nice-upload-dropzone.drag-active {
|
|
27
|
+
border-color: #3b82f6;
|
|
28
|
+
background: #dbeafe;
|
|
29
|
+
transform: scale(1.01);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.nice-upload-dropzone.disabled,
|
|
33
|
+
.nice-upload-dropzone.readonly {
|
|
34
|
+
cursor: default;
|
|
35
|
+
background: #f3f4f6;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.nice-upload-dropzone-content {
|
|
39
|
+
display: flex;
|
|
40
|
+
flex-direction: column;
|
|
41
|
+
align-items: center;
|
|
42
|
+
gap: 12px;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.nice-upload-dropzone-icon {
|
|
46
|
+
font-size: 48px;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.nice-upload-dropzone-text {
|
|
50
|
+
font-size: 14px;
|
|
51
|
+
color: #6b7280;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.nice-upload-dropzone-text.active {
|
|
55
|
+
font-size: 16px;
|
|
56
|
+
color: #3b82f6;
|
|
57
|
+
font-weight: 500;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.nice-upload-browse-btn {
|
|
61
|
+
background: #3b82f6;
|
|
62
|
+
color: white;
|
|
63
|
+
border: none;
|
|
64
|
+
padding: 8px 20px;
|
|
65
|
+
border-radius: 6px;
|
|
66
|
+
font-size: 14px;
|
|
67
|
+
cursor: pointer;
|
|
68
|
+
transition: background 0.2s;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.nice-upload-browse-btn:hover:not(:disabled) {
|
|
72
|
+
background: #2563eb;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.nice-upload-browse-btn:disabled {
|
|
76
|
+
background: #9ca3af;
|
|
77
|
+
cursor: not-allowed;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.nice-upload-stats {
|
|
81
|
+
display: flex;
|
|
82
|
+
gap: 16px;
|
|
83
|
+
padding: 12px 0;
|
|
84
|
+
font-size: 13px;
|
|
85
|
+
color: #6b7280;
|
|
86
|
+
border-bottom: 1px solid var(--border-color, #e5e7eb);
|
|
87
|
+
margin-top: 16px;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.nice-upload-stats .pending { color: #f59e0b; }
|
|
91
|
+
.nice-upload-stats .uploading { color: #3b82f6; }
|
|
92
|
+
.nice-upload-stats .success { color: #22c55e; }
|
|
93
|
+
.nice-upload-stats .error { color: #ef4444; }
|
|
94
|
+
|
|
95
|
+
.nice-upload-actions {
|
|
96
|
+
display: flex;
|
|
97
|
+
gap: 8px;
|
|
98
|
+
padding: 12px 0;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.nice-upload-btn {
|
|
102
|
+
padding: 6px 14px;
|
|
103
|
+
border-radius: 6px;
|
|
104
|
+
font-size: 13px;
|
|
105
|
+
cursor: pointer;
|
|
106
|
+
border: 1px solid transparent;
|
|
107
|
+
transition: all 0.2s;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.nice-upload-btn.primary {
|
|
111
|
+
background: #3b82f6;
|
|
112
|
+
color: white;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.nice-upload-btn.primary:hover {
|
|
116
|
+
background: #2563eb;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.nice-upload-btn.secondary {
|
|
120
|
+
background: white;
|
|
121
|
+
border-color: #d1d5db;
|
|
122
|
+
color: #374151;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.nice-upload-btn.secondary:hover {
|
|
126
|
+
background: #f3f4f6;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.nice-upload-btn.danger {
|
|
130
|
+
background: white;
|
|
131
|
+
border-color: #fca5a5;
|
|
132
|
+
color: #dc2626;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.nice-upload-btn.danger:hover {
|
|
136
|
+
background: #fef2f2;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.nice-upload-btn.upload { background: #22c55e; color: white; border: none; }
|
|
140
|
+
.nice-upload-btn.cancel { background: #f59e0b; color: white; border: none; }
|
|
141
|
+
.nice-upload-btn.retry { background: #3b82f6; color: white; border: none; }
|
|
142
|
+
.nice-upload-btn.remove { background: #ef4444; color: white; border: none; }
|
|
143
|
+
|
|
144
|
+
.nice-upload-list {
|
|
145
|
+
margin-top: 12px;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.nice-upload-list.grid {
|
|
149
|
+
display: grid;
|
|
150
|
+
grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
|
|
151
|
+
gap: 16px;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.nice-upload-item {
|
|
155
|
+
display: flex;
|
|
156
|
+
align-items: center;
|
|
157
|
+
gap: 12px;
|
|
158
|
+
padding: 12px;
|
|
159
|
+
background: #f9fafb;
|
|
160
|
+
border-radius: 8px;
|
|
161
|
+
border: 1px solid var(--border-color, #e5e7eb);
|
|
162
|
+
margin-bottom: 8px;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.nice-upload-item.error {
|
|
166
|
+
border-color: #fca5a5;
|
|
167
|
+
background: #fef2f2;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.nice-upload-item.success {
|
|
171
|
+
border-color: #86efac;
|
|
172
|
+
background: #f0fdf4;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
.nice-upload-item.grid {
|
|
176
|
+
flex-direction: column;
|
|
177
|
+
text-align: center;
|
|
178
|
+
padding: 16px;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.nice-upload-item.compact {
|
|
182
|
+
padding: 8px 12px;
|
|
183
|
+
font-size: 13px;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
.nice-upload-preview {
|
|
187
|
+
flex-shrink: 0;
|
|
188
|
+
display: flex;
|
|
189
|
+
align-items: center;
|
|
190
|
+
justify-content: center;
|
|
191
|
+
background: #e5e7eb;
|
|
192
|
+
border-radius: 6px;
|
|
193
|
+
overflow: hidden;
|
|
194
|
+
position: relative;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
.nice-upload-preview-icon {
|
|
198
|
+
background: #f3f4f6;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.nice-upload-preview-overlay {
|
|
202
|
+
position: absolute;
|
|
203
|
+
font-size: 24px;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
.nice-upload-item-content {
|
|
207
|
+
flex: 1;
|
|
208
|
+
min-width: 0;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.nice-upload-item-header {
|
|
212
|
+
display: flex;
|
|
213
|
+
align-items: center;
|
|
214
|
+
gap: 8px;
|
|
215
|
+
margin-bottom: 4px;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
.nice-upload-item-name {
|
|
219
|
+
font-weight: 500;
|
|
220
|
+
font-size: 14px;
|
|
221
|
+
color: #111827;
|
|
222
|
+
overflow: hidden;
|
|
223
|
+
text-overflow: ellipsis;
|
|
224
|
+
white-space: nowrap;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
.nice-upload-item-size {
|
|
228
|
+
font-size: 12px;
|
|
229
|
+
color: #6b7280;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
.nice-upload-item-error {
|
|
233
|
+
font-size: 12px;
|
|
234
|
+
color: #dc2626;
|
|
235
|
+
margin-top: 4px;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
.nice-upload-item-link {
|
|
239
|
+
font-size: 12px;
|
|
240
|
+
color: #3b82f6;
|
|
241
|
+
text-decoration: none;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
.nice-upload-item-link:hover {
|
|
245
|
+
text-decoration: underline;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
.nice-upload-item-actions {
|
|
249
|
+
display: flex;
|
|
250
|
+
gap: 4px;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
.nice-upload-item-actions button {
|
|
254
|
+
padding: 4px 8px;
|
|
255
|
+
font-size: 12px;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
.nice-upload-item-remove {
|
|
259
|
+
background: none;
|
|
260
|
+
border: none;
|
|
261
|
+
color: #9ca3af;
|
|
262
|
+
cursor: pointer;
|
|
263
|
+
padding: 4px;
|
|
264
|
+
font-size: 14px;
|
|
265
|
+
line-height: 1;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
.nice-upload-item-remove:hover {
|
|
269
|
+
color: #ef4444;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
.nice-upload-badge {
|
|
273
|
+
font-size: 11px;
|
|
274
|
+
padding: 2px 8px;
|
|
275
|
+
border-radius: 10px;
|
|
276
|
+
font-weight: 500;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
.nice-upload-badge.pending { background: #fef3c7; color: #92400e; }
|
|
280
|
+
.nice-upload-badge.uploading { background: #dbeafe; color: #1e40af; }
|
|
281
|
+
.nice-upload-badge.success { background: #dcfce7; color: #166534; }
|
|
282
|
+
.nice-upload-badge.error { background: #fee2e2; color: #991b1b; }
|
|
283
|
+
.nice-upload-badge.cancelled { background: #f3f4f6; color: #4b5563; }
|
|
284
|
+
|
|
285
|
+
.nice-upload-progress {
|
|
286
|
+
height: 6px;
|
|
287
|
+
background: #e5e7eb;
|
|
288
|
+
border-radius: 3px;
|
|
289
|
+
overflow: hidden;
|
|
290
|
+
margin-top: 6px;
|
|
291
|
+
position: relative;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
.nice-upload-progress-bar {
|
|
295
|
+
height: 100%;
|
|
296
|
+
transition: width 0.2s ease;
|
|
297
|
+
border-radius: 3px;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
.nice-upload-progress-text {
|
|
301
|
+
position: absolute;
|
|
302
|
+
right: 0;
|
|
303
|
+
top: -18px;
|
|
304
|
+
font-size: 11px;
|
|
305
|
+
color: #6b7280;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
.nice-upload-item.compact .nice-upload-progress {
|
|
309
|
+
flex: 1;
|
|
310
|
+
margin: 0 8px;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
.nice-upload-item.compact .nice-upload-progress-text {
|
|
314
|
+
position: static;
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
.nice-upload-item-info {
|
|
318
|
+
margin-top: 8px;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
.nice-upload-item.grid .nice-upload-item-name {
|
|
322
|
+
font-size: 13px;
|
|
323
|
+
max-width: 100%;
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
@media (max-width: 640px) {
|
|
327
|
+
.nice-upload-dropzone {
|
|
328
|
+
padding: 24px 16px;
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
.nice-upload-actions {
|
|
332
|
+
flex-wrap: wrap;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.nice-upload-list.grid {
|
|
336
|
+
grid-template-columns: repeat(2, 1fr);
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
`})]})})});Xe.displayName="NiceFileUpload";const ta=({onFiles:n,accept:i,multiple:a=!0,disabled:l,children:t,dropzoneText:r="Przeciągnij pliki tutaj",dragActiveText:d="Upuść pliki",className:o,style:b,...T})=>{const[Z,g]=s.useState(!1),m=s.useRef(null),Y=s.useCallback(O=>{if(O.preventDefault(),g(!1),l)return;const z=Array.from(O.dataTransfer.files);z.length>0&&n(a?z:[z[0]])},[l,a,n]),ie=s.useCallback(O=>{O.preventDefault(),l||g(!0)},[l]),G=s.useCallback(()=>{g(!1)},[]),F=s.useCallback(()=>{l||m.current?.click()},[l]),q=s.useCallback(O=>{const z=O.target.files?Array.from(O.target.files):[];z.length>0&&n(z),m.current&&(m.current.value="")},[n]);return e.jsxs("div",{className:`nice-dropzone ${Z?"active":""} ${l?"disabled":""} ${o||""}`,style:b,onDrop:Y,onDragOver:ie,onDragLeave:G,onClick:F,...T,children:[e.jsx("input",{ref:m,type:"file",accept:i,multiple:a,onChange:q,style:{display:"none"},disabled:l}),t||e.jsx("div",{className:"nice-dropzone-content",children:e.jsx("span",{children:Z?d:r})}),e.jsx("style",{children:`
|
|
340
|
+
.nice-dropzone {
|
|
341
|
+
border: 2px dashed #d1d5db;
|
|
342
|
+
border-radius: 8px;
|
|
343
|
+
padding: 24px;
|
|
344
|
+
text-align: center;
|
|
345
|
+
cursor: pointer;
|
|
346
|
+
transition: all 0.2s;
|
|
347
|
+
}
|
|
348
|
+
.nice-dropzone:hover:not(.disabled) {
|
|
349
|
+
border-color: #3b82f6;
|
|
350
|
+
background: #eff6ff;
|
|
351
|
+
}
|
|
352
|
+
.nice-dropzone.active {
|
|
353
|
+
border-color: #3b82f6;
|
|
354
|
+
background: #dbeafe;
|
|
355
|
+
}
|
|
356
|
+
.nice-dropzone.disabled {
|
|
357
|
+
opacity: 0.5;
|
|
358
|
+
cursor: not-allowed;
|
|
359
|
+
}
|
|
360
|
+
.nice-dropzone-content {
|
|
361
|
+
color: #6b7280;
|
|
362
|
+
font-size: 14px;
|
|
363
|
+
}
|
|
364
|
+
`})]})},la=({onFiles:n,accept:i,multiple:a=!0,disabled:l,children:t,className:r,style:d,...o})=>{const b=s.useRef(null),T=s.useCallback(()=>{l||b.current?.click()},[l]),Z=s.useCallback(g=>{const m=g.target.files?Array.from(g.target.files):[];m.length>0&&n(m),b.current&&(b.current.value="")},[n]);return e.jsxs(e.Fragment,{children:[e.jsx("button",{type:"button",onClick:T,disabled:l,className:`nice-file-picker-btn ${r||""}`,style:d,...o,children:t||"Wybierz pliki"}),e.jsx("input",{ref:b,type:"file",accept:i,multiple:a,onChange:Z,style:{display:"none"},disabled:l}),e.jsx("style",{children:`
|
|
365
|
+
.nice-file-picker-btn {
|
|
366
|
+
padding: 8px 16px;
|
|
367
|
+
background: #3b82f6;
|
|
368
|
+
color: white;
|
|
369
|
+
border: none;
|
|
370
|
+
border-radius: 6px;
|
|
371
|
+
cursor: pointer;
|
|
372
|
+
font-size: 14px;
|
|
373
|
+
transition: background 0.2s;
|
|
374
|
+
}
|
|
375
|
+
.nice-file-picker-btn:hover:not(:disabled) {
|
|
376
|
+
background: #2563eb;
|
|
377
|
+
}
|
|
378
|
+
.nice-file-picker-btn:disabled {
|
|
379
|
+
opacity: 0.5;
|
|
380
|
+
cursor: not-allowed;
|
|
381
|
+
}
|
|
382
|
+
`})]})},yn=({items:n,data:i,onFieldChange:a,onSubmit:l,dataSource:t,recordKey:r,columns:d=1,responsiveColumns:o,gap:b=16,labelPosition:T="top",size:Z="md",readOnly:g,disabled:m,className:Y,style:ie,accessMode:G,id:F,autoSaveDelay:q,onDirtyChange:O,showActions:z,submitLabel:B="Submit",resetLabel:se="Reset",onCancel:J,cancelLabel:L="Cancel"})=>{const v=$.Ns(G,F);if(v==="hidden")return null;v==="disabled"&&(m=!0),v==="readOnly"&&(g=!0);const P=$.La(t??null,r),u=!!t&&r!=null,y=u?P.editData:i??{},[K]=s.useState(()=>({...y})),[ne,j]=s.useState([]),M=s.useMemo(()=>Object.keys(y).some(h=>y[h]!==K[h]),[y,K]),w=s.useRef(!1);s.useEffect(()=>{M!==w.current&&(w.current=M,O?.(M))},[M,O]);const H=s.useRef(null),V=s.useCallback(()=>{q&&(H.current&&clearTimeout(H.current),H.current=setTimeout(()=>{u?P.save():l?.(y)},q))},[q,u,P,l,y]),S=s.useCallback((h,R)=>{g||m||(j(Q=>[...Q,{field:h,prev:y[h]}]),u?P.set(h,R):a?.(h,R),V())},[u,P,a,g,m,y,V]),ee=s.useCallback(()=>{if(ne.length===0)return;const h=ne[ne.length-1];j(R=>R.slice(0,-1)),u?P.set(h.field,h.prev):a?.(h.field,h.prev)},[ne,u,P,a]),I=s.useCallback(h=>{h.preventDefault(),H.current&&clearTimeout(H.current),u?P.save():l?.(y)},[y,l,u,P]),_=s.useRef(null),[f,x]=s.useState(d);s.useEffect(()=>{if(!o||!_.current){x(d);return}const h=_.current,R=new ResizeObserver(Q=>{const he=Q[0]?.contentRect.width??0,ye=Object.keys(o).map(Number).sort((de,E)=>E-de);for(const de of ye)if(he>=de){x(o[de]);return}x(d)});return R.observe(h),()=>R.disconnect()},[o,d]);const ae=s.useMemo(()=>n.filter(h=>!(h.visible===!1||h.visibleWhen&&!h.visibleWhen(y))),[n,y]),ce=s.useMemo(()=>{const h=[];let R=null;for(const Q of ae)!R||R.name!==Q.group?(R={name:Q.group,items:[Q]},h.push(R)):R.items.push(Q);return h},[ae]),k=s.useCallback(h=>{const R=y[h.field]!==void 0?y[h.field]:h.defaultValue,Q=E=>S(h.field,E);if(h.render)return h.render(R,Q);const he=h.type||"text",ye=h.options?.map(E=>typeof E=="string"?{label:E,value:E}:{label:E.label,value:String(E.value)}),de={size:Z,disabled:m,readOnly:g};switch(he){case"number":return e.jsx(_e.NiceNumberInput,{...de,value:R??null,onChange:E=>Q(E),required:h.required});case"currency":return e.jsx(_e.NiceNumberInput,{...de,value:R??null,onChange:E=>Q(E),required:h.required,precision:h.precision??2,step:h.step??100,suffix:h.unit??"PLN",formatPreset:"money"});case"textarea":return e.jsx(Be,{...de,value:R??"",onChange:E=>Q(E),rows:3});case"address":return e.jsx(Ze,{...de,value:R??{},onChange:E=>Q(E),required:h.required,columns:h.columns??2});case"select":return e.jsx(_e.NiceSelect,{...de,value:R??"",onChange:E=>Q(E),options:ye??[]});case"autocomplete":return e.jsx(cn,{...de,value:R??"",onChange:E=>Q(E),options:ye??[],suggestions:(ye??[]).map(E=>E.label)});case"radio":return e.jsx(ln,{...de,value:R??"",onChange:E=>Q(E),options:ye??[]});case"checkbox":return e.jsx(_e.NiceCheckbox,{...de,checked:!!R,onChange:E=>Q(E),label:h.label});case"toggle":return e.jsx(_e.NiceToggle,{...de,checked:!!R,onChange:E=>Q(E)});case"date":return e.jsx(He,{...de,value:R??"",onChange:E=>Q(E)});case"time":return e.jsx(Oe,{...de,value:R??"",onChange:E=>Q(E)});case"datetime":return e.jsx(qe,{...de,value:R??"",onChange:E=>Q(E)});case"color":return e.jsx(_e.NiceColorPicker,{...de,value:R??"var(--text-primary, #000000)",onChange:E=>Q(E)});case"slider":return e.jsx(Ke,{...de,value:typeof R=="number"?R:0,onChange:E=>Q(E)});case"rating":return e.jsx(Je,{...de,value:typeof R=="number"?R:0,onChange:E=>Q(E)});case"password":return e.jsx(We,{...de,value:R??"",onChange:E=>Q(E),required:h.required});case"phone":case"tel":return e.jsx(Qe,{...de,value:R??"",onChange:E=>Q(E)});case"country":return e.jsx(Ye,{...de,value:R??"",onChange:E=>Q(E)});case"tags":return e.jsx(rn,{...de,value:Array.isArray(R)?R:[],onChange:E=>Q(E),options:ye??[]});case"masked":return e.jsx(Ve,{...de,value:R??"",mask:h.mask??"999-999-9999",onChange:E=>Q(E)});case"file":return e.jsx(Xe,{...de,onFilesAdded:E=>Q(E)});case"email":return e.jsx(_e.NiceTextInput,{...de,type:"email",value:R??"",onChange:E=>Q(E),required:h.required});case"url":return e.jsx(_e.NiceTextInput,{...de,type:"url",value:R??"",onChange:E=>Q(E),required:h.required});default:return e.jsx(_e.NiceTextInput,{...de,value:R??"",onChange:E=>Q(E),required:h.required})}},[y,S,m,g,Z]),W=h=>e.jsxs("div",{className:"nice-form__item",style:{gridColumn:h.colSpan?`span ${h.colSpan}`:void 0},children:[h.label&&e.jsxs("label",{className:"nice-form__label",children:[h.label,h.required&&e.jsx("span",{className:"nice-field__required",children:"*"})]}),e.jsx("div",{className:"nice-form__control",children:k(h)}),h.hint&&e.jsx("div",{className:"nice-form__hint",children:h.hint})]},h.field),C={display:"grid",gridTemplateColumns:`repeat(${f}, 1fr)`,gap:b},c=ce.some(h=>h.name!=null),A=s.useMemo(()=>{const h=new Set,R=[];for(const Q of ae)Q.tab&&!h.has(Q.tab)&&(h.add(Q.tab),R.push(Q.tab));return R},[ae]),te=A.length>0,[ue,ge]=s.useState("");s.useEffect(()=>{te&&!A.includes(ue)&&ge(A[0])},[te,A,ue]);const be=h=>{const R=[];let Q=null;for(const ye of h)!Q||Q.name!==ye.group?(Q={name:ye.group,items:[ye]},R.push(Q)):Q.items.push(ye);return R.some(ye=>ye.name!=null)?R.map((ye,de)=>e.jsxs("fieldset",{className:ye.name?"nice-form__group":"nice-form__group nice-form__group--no-title",children:[ye.name&&e.jsx("legend",{className:"nice-form__group-title",children:ye.name}),e.jsx("div",{style:C,children:ye.items.map(W)})]},de)):e.jsx("div",{style:C,children:h.map(W)})},Ce=z?e.jsxs("div",{className:"nice-form__actions",children:[e.jsxs("div",{className:"nice-form__actions-left",children:[J&&e.jsx(_e.NiceButton,{type:"button",variant:"secondary",size:Z,onClick:J,children:L}),e.jsx(_e.NiceButton,{type:"button",variant:"ghost",size:Z,onClick:ee,disabled:ne.length===0,children:se})]}),e.jsx("div",{className:"nice-form__actions-right",children:e.jsx(_e.NiceButton,{type:"submit",variant:"primary",size:Z,children:B})})]}):null;return e.jsxs("form",{ref:_,className:`nice-form nice-form--label-${T}${M?" nice-form--dirty":""} ${Y||""}`,style:c||te?{...ie}:{...C,...ie},onSubmit:I,noValidate:!0,children:[te?e.jsx(_e.NiceTabs,{className:"nice-form__tabs",activeTab:ue||A[0],onChange:ge,tabs:A.map(h=>({id:h,label:h,content:e.jsx("div",{className:"nice-form__tab-panel",children:be(ae.filter(R=>(R.tab??A[0])===h))})}))}):c?ce.map((h,R)=>e.jsxs("fieldset",{className:h.name?"nice-form__group":"nice-form__group nice-form__group--no-title",children:[h.name&&e.jsx("legend",{className:"nice-form__group-title",children:h.name}),e.jsx("div",{style:C,children:h.items.map(W)})]},R)):ae.map(W),Ce]})};yn.displayName="NiceForm";exports.COUNTRIES=dn;exports.MASK_PRESETS=on;exports.NiceAddress=Ze;exports.NiceAutocomplete=cn;exports.NiceCountryPicker=Ye;exports.NiceDatePicker=He;exports.NiceDateTimePicker=qe;exports.NiceDropZone=ta;exports.NiceFilePickerButton=la;exports.NiceFileUpload=Xe;exports.NiceForm=yn;exports.NiceMaskedInput=Ve;exports.NicePasswordInput=We;exports.NicePhoneInput=Qe;exports.NiceRadioGroup=ln;exports.NiceRating=Je;exports.NiceSlider=Ke;exports.NiceTagBox=rn;exports.NiceTextArea=Be;exports.NiceTimePicker=Oe;
|