@nice2dev/ui 1.0.18 → 1.0.20
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/CHANGELOG.md +64 -0
- package/dist/NiceErrorBoundary-Bzx-bOeb.cjs +1 -0
- package/dist/NiceErrorBoundary-DBCCmeyl.js +770 -0
- package/dist/NiceErrorBoundary-DvA00DOz.cjs +1 -0
- package/dist/NiceErrorBoundary-V6wkSSLP.cjs +1 -0
- package/dist/NiceErrorBoundary-eTwBEuSH.js +770 -0
- package/dist/NiceErrorBoundary-qp4IJ18o.js +770 -0
- package/dist/NiceForm-B1Okz7SW.cjs +382 -0
- package/dist/NiceForm-BXHPoTcH.cjs +382 -0
- package/dist/NiceForm-DL7Kxsi2.js +5383 -0
- package/dist/NiceForm-DLADlHAQ.js +5383 -0
- package/dist/NiceForm-DUkduLqG.cjs +382 -0
- package/dist/NiceForm-D_XZxq3a.js +5383 -0
- package/dist/NiceForm.css +1 -1
- package/dist/NiceModal-0Sg2HxIb.cjs +1 -0
- package/dist/NiceModal-BRih_XEH.js +95 -0
- package/dist/NiceModal-C4HIsjrn.js +95 -0
- package/dist/NiceModal-CUdeVj-j.js +95 -0
- package/dist/NiceModal-Cc8R-DpX.cjs +1 -0
- package/dist/NiceModal-DieswZtd.cjs +1 -0
- package/dist/NiceModuleLifecyclePanel-4UEsYB5r.js +6553 -0
- package/dist/NiceModuleLifecyclePanel-C6agdtTI.cjs +1 -0
- package/dist/NiceModuleLifecyclePanel-CEfeJxw_.cjs +1 -0
- package/dist/NiceModuleLifecyclePanel-D4xWUswk.js +6777 -0
- package/dist/NiceModuleLifecyclePanel-jDzEfvDM.js +6553 -0
- package/dist/NiceModuleLifecyclePanel-sBJLlhJp.cjs +1 -0
- package/dist/NiceModuleLifecyclePanel.css +1 -1
- package/dist/NicePagination-B2TC6MTL.cjs +1 -0
- package/dist/NicePagination-BAywVGwT.js +171 -0
- package/dist/NicePagination-Cqr3Pe_F.js +171 -0
- package/dist/NicePagination-DnnypBiE.js +171 -0
- package/dist/NicePagination-DyWWdtb3.cjs +1 -0
- package/dist/NicePagination-F8NyMfgc.cjs +1 -0
- package/dist/NicePinCodeInput-Bo8Ahkae.js +12240 -0
- package/dist/NicePinCodeInput-C6zJxUVf.cjs +419 -0
- package/dist/NicePinCodeInput-CpPtHZsK.js +12240 -0
- package/dist/NicePinCodeInput-Cpa01Yfg.cjs +419 -0
- package/dist/NicePinCodeInput-JvYd_LB_.cjs +419 -0
- package/dist/NicePinCodeInput-ltwzQf4r.js +12240 -0
- package/dist/NicePinCodeInput.css +1 -1
- package/dist/NiceSavedQueryPanel-BIXW0y1X.js +6455 -0
- package/dist/NiceSavedQueryPanel-BOBULytX.js +6455 -0
- package/dist/NiceSavedQueryPanel-CFHwMDIx.cjs +596 -0
- package/dist/NiceSavedQueryPanel-CTfC-qwV.cjs +596 -0
- package/dist/NiceSavedQueryPanel-DuonbEem.js +6584 -0
- package/dist/NiceSavedQueryPanel-MdKdGYNg.cjs +596 -0
- package/dist/NiceSavedQueryPanel.css +1 -1
- package/dist/NiceTabs-B9zxj6qd.js +1657 -0
- package/dist/NiceTabs-BjBtazRn.cjs +1 -0
- package/dist/NiceTabs-C-VQXNIa.cjs +1 -0
- package/dist/NiceTabs-CJ8G2t0-.js +1657 -0
- package/dist/NiceTabs-CNauJ4fu.cjs +1 -0
- package/dist/NiceTabs-v7HfeXIw.js +1657 -0
- package/dist/NiceWindow-BMiF-so6.cjs +1 -0
- package/dist/NiceWindow-Bo_yCa1o.js +1418 -0
- package/dist/NiceWindow-CysIgnn3.js +1418 -0
- package/dist/NiceWindow-D6SjpDc4.cjs +1 -0
- package/dist/NiceWindow-DPzJxOfx.cjs +1 -0
- package/dist/NiceWindow-DUTRQOaP.js +1418 -0
- package/dist/charts-C60va95_.js +4657 -0
- package/dist/charts-CJlMAHJG.cjs +761 -0
- package/dist/charts-CX4jiyVh.cjs +761 -0
- package/dist/charts-CYpqDxHd.js +4657 -0
- package/dist/charts-D_I1iwel.cjs +761 -0
- package/dist/charts-P6qura0j.js +4657 -0
- package/dist/charts.cjs +1 -1
- package/dist/charts.css +1 -1
- package/dist/charts.mjs +1 -1
- package/dist/core-Bcc4sz15.cjs +96 -0
- package/dist/core-BfeyB9A8.cjs +96 -0
- package/dist/core-BgGSTko-.js +22401 -0
- package/dist/core-DDJKu5LZ.cjs +96 -0
- package/dist/core-Da1dGJN3.js +22401 -0
- package/dist/core-XsWxyBHD.js +22767 -0
- package/dist/data.cjs +1 -1
- package/dist/data.d.ts +5 -0
- package/dist/data.mjs +1 -1
- package/dist/editors.cjs +1 -1
- package/dist/editors.d.ts +44 -1
- package/dist/editors.mjs +3 -3
- package/dist/feedback.cjs +1 -1
- package/dist/feedback.mjs +2 -2
- package/dist/index-CQIDqjZp.cjs +5194 -0
- package/dist/index-CXVXf_HY.cjs +5194 -0
- package/dist/index-CtikFbFa.js +64337 -0
- package/dist/index-DCDfWfAt.js +64336 -0
- package/dist/index-DpiCo0_e.cjs +5194 -0
- package/dist/index-xVJiF843.js +65040 -0
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +450 -6
- package/dist/index.mjs +874 -860
- package/dist/lazy.cjs +1 -1
- package/dist/lazy.mjs +3 -3
- package/dist/navigation.cjs +1 -1
- package/dist/navigation.d.ts +50 -3
- package/dist/navigation.mjs +30 -30
- package/dist/overlays.cjs +1 -1
- package/dist/overlays.mjs +53 -53
- package/dist/style.css +6 -6
- package/package.json +3 -3
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),w=require("./core-Bcc4sz15.cjs"),t=require("react"),ke=require("./NiceTabs-CNauJ4fu.cjs"),kn=require("./vendor-DHEorsoy.cjs"),Be=t.forwardRef(({label:n,helperText:i,error:a,required:c,disabled:s,readOnly:r,size:d="md",name:o,id:b,className:$,style:I,accessMode:m,displayStyle:p,value:K,defaultValue:se,onChange:F,onBlur:A,onKeyDown:X,placeholder:q,rows:T=3,maxLength:L,resize:le="vertical",autoFocus:ce,showCount:U,counterPlacement:z="bottom",submitOnEnter:E,onSubmit:g,showKeyboardHints:k,labelPlacement:_,errorPlacement:Q,loading:V,labelWidth:D,controlWidth:B,displayMode:H},P)=>{const N=w.Zs(m,b),ie=N==="hidden";N==="disabled"&&(s=!0),N==="readOnly"&&(r=!0);const{t:ne}=w.$o(),h=w.Hs(b),f=w.vs("input",p),M=w.Ss("input",p),Z=K?.length??0,pe=L?Z>L:!1,ge=w.Ms({enabled:H,readOnly:r,disabled:s}),x={key:"Enter",ctrl:!0,description:ne("shortcuts.submit","Submit")},Y=t.useCallback(l=>{E&&w.pc(l,x)&&(l.preventDefault(),g?.()),X?.(l)},[E,g,X,x]),ae=t.useMemo(()=>{const l=[];return E&&l.push(x),l.push({key:"Tab",description:ne("shortcuts.indent","Indent (when supported)")}),l},[E,ne,x]);return ie?null:e.jsxs("div",{className:`nice-field nice-field--${d} ${_==="left"?"nice-field--label-left":""} ${V?"nice-field--loading":""} ${$||""}`,style:{...I,...D!=null&&{"--nice-field-label-width":typeof D=="number"?`${D}px`:D},...B!=null&&{"--nice-field-control-width":typeof B=="number"?`${B}px`:B}},"aria-busy":V||void 0,children:[n&&e.jsxs("label",{htmlFor:h,className:`nice-field__label ${c?"nice-field__label--required":""}`,children:[n,k&&ae.length>0&&e.jsx(w.Kr,{shortcuts:ae,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control nice-field__control--textarea",children:[ge.isDisplay?e.jsx(w.Cs,{value:K??se??"",placeholder:q,disabled:s,readOnly:r,onActivate:ge.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:l=>{typeof P=="function"?P(l):P&&(P.current=l),ge.autoFocusRef(l)},id:h,className:`nice-textarea nice-input--${d} nice-textarea--ds-${M} ${a?"nice-textarea--error":""} ${s?"nice-textarea--disabled":""}`,style:{...f,resize:le},name:o,value:K,defaultValue:se,placeholder:q,rows:T,maxLength:L,disabled:s||V,readOnly:r,autoFocus:ce,"aria-invalid":!!a,"aria-describedby":a?`${h}-error`:i?`${h}-helper`:void 0,onChange:l=>F?.(l.target.value),onBlur:l=>{H&&ge.exitEdit(),A?.(l)},onKeyDown:Y}),z!=="right"&&(U||L)&&e.jsxs("div",{className:`nice-textarea__counter ${pe?"nice-textarea__counter--over":""}`,children:[Z,L?` / ${L}`:""]})]}),z==="right"&&(U||L)&&e.jsxs("div",{className:`nice-textarea__counter nice-textarea__counter--right ${pe?"nice-textarea__counter--over":""}`,children:[Z,L?` / ${L}`:""]})]}),V&&e.jsx("span",{className:"nice-field__spinner nice-field__spinner--textarea",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),Q==="right"&&a&&e.jsx("div",{id:`${h}-error`,className:"nice-field__error",role:"alert",children:a}),Q==="right"&&!a&&i&&e.jsx("div",{id:`${h}-helper`,className:"nice-field__helper",children:i})]}),Q!=="right"&&a&&e.jsx("div",{id:`${h}-error`,className:"nice-field__error",role:"alert",children:a}),Q!=="right"&&!a&&i&&e.jsx("div",{id:`${h}-helper`,className:"nice-field__helper",children:i})]})});Be.displayName="NiceTextArea";const Mn=Object.freeze(Object.defineProperty({__proto__:null,NiceTextArea:Be},Symbol.toStringTag,{value:"Module"})),wn={"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}},$n={date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm",month:"yyyy-MM",week:"yyyy-Www",time:"HH:mm"},Sn={"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 Ye(n){const i=(n||"").toLowerCase().replace("_","-"),a=i.split("-")[0],c={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(c[i])return c[i];if(c[a])return c[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 Tn(n){const a=Ye(n).replace(/dd[^\w]*/g,"").replace(/[^\w]*dd/g,"");return!/y/.test(a)||!/M/.test(a)?"yyyy-MM":a}function Dn(){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 An(n,i,a){const c=$n[n];let s=c;i&&(n==="date"||n==="datetime-local"||n==="month")&&(n==="date"?s=Ye(a):n==="datetime-local"?s=`${Ye(a)} HH:mm`:s=Tn(a));const r=Sn[s]??s.replace(/y/g,"Y").replace(/M/g,"M").replace(/d/g,"D").replace(/H/g,"H").replace(/m/g,"M");return{displayTpl:s,isoTpl:c,placeholder:r}}const Rn=new Set(["y","M","d","H","m","w"]);function Ae(n){return Rn.has(n)}function qe(n){let i=0;for(const a of n)Ae(a)&&i++;return i}function Je(n,i){let a="",c=0;for(const s of n)if(Ae(s)){if(c>=i.length)break;a+=i[c++]}else{if(c===0)break;c>=i.length,a+=s}return a}function En(n,i,a){if(a.length===0)return"";const c={};let s=0;for(const o of n)Ae(o)&&(s>=a.length?(c[o]??(c[o]=[])).push(""):(c[o]??(c[o]=[])).push(a[s]),s++);const r={};let d="";for(const o of i)if(Ae(o)){const b=c[o]??[],$=r[o]??0;d+=b[$]??"",r[o]=$+1}return d}function ze(n,i,a){if(a.length===0)return"";const c={};let s=0;for(const o of i)Ae(o)&&((c[o]??(c[o]=[])).push(a[s]??""),s++);const r={};let d="";for(const o of n)if(Ae(o)){const b=c[o]??[],$=r[o]??0;d+=b[$]??"",r[o]=$+1}return d.replace(/\s+$/,"")}function Fn(n,i,a){const c=qe(i);if(a.length<c)return"";const s=En(n,i,a);if(s.length<c)return"";let r="",d=0;for(const o of i)Ae(o)?r+=s[d++]:r+=o;return r}function Le(n,i){if(!n)return"";const a=n.replace(/[^0-9]/g,""),c=qe(i);return a.slice(0,c)}function Te(n,i,a){const c=Je(n,a);let s=0;const r=Math.min(i,c.length);for(let d=0;d<r;d++)Ae(n[d])&&s++;return Math.min(s,a.length)}function zn(n,i,a){if(a<=0)return 0;const c=Je(n,i);let s=0;for(let r=0;r<c.length;r++)if(Ae(n[r])&&(s++,s===a)){let d=r+1;for(;d<c.length&&!Ae(n[d]);)d++;return d}return c.length}const He=t.forwardRef(({label:n,helperText:i,error:a,required:c,disabled:s,readOnly:r,size:d="md",name:o,id:b,className:$,style:I,accessMode:m,value:p,onChange:K,onBlur:se,onKeyDown:F,min:A,max:X,type:q,dateFormatPreset:T,submitOnEnter:L,onSubmit:le,showKeyboardHints:ce,displayStyle:U,labelPlacement:z,errorPlacement:E,loading:g,labelWidth:k,controlWidth:_,placeholder:Q,clearable:V=!1,showPickerButton:D=!0,displayLocale:B,keyboardShortcuts:H=!0},P)=>{const N=w.vs("input",U),ie=w.Ss("input",U),ne=w.Zs(m,b),h=ne==="hidden";ne==="disabled"&&(s=!0),ne==="readOnly"&&(r=!0);const{t:f}=w.$o(),M=w.Hs(b),Z=t.useRef(null),pe=t.useRef(null),ge=T?wn[T]:null,x=ge?.inputType??q??"date",Y=ge?.localized??!1,ae=B??Dn(),l=t.useMemo(()=>An(x,Y,ae),[x,Y,ae]),R=t.useMemo(()=>qe(l.isoTpl),[l.isoTpl]),[fe,ye]=t.useState(()=>{const v=Le(p,l.isoTpl);return ze(l.displayTpl,l.isoTpl,v)}),be=t.useRef(fe);t.useEffect(()=>{be.current=fe},[fe]);const xe=t.useRef(p??""),ve=t.useRef(null);t.useEffect(()=>{const v=p??"";if(v===xe.current)return;const J=Le(v,l.isoTpl),te=ze(l.displayTpl,l.isoTpl,J);ye(te),xe.current=v},[p,l.displayTpl,l.isoTpl]),t.useEffect(()=>{const v=Le(p,l.isoTpl);ye(ze(l.displayTpl,l.isoTpl,v))},[l.displayTpl,l.isoTpl]),t.useEffect(()=>{if(ve.current==null)return;const v=ve.current;ve.current=null;const J=Z.current;if(J&&document.activeElement===J)try{J.setSelectionRange(v,v)}catch{}});const y=t.useMemo(()=>Je(l.displayTpl,fe),[l.displayTpl,fe]),G=Q??l.placeholder,O=Math.max(l.displayTpl.length+1,9),Me=w.gc({enabled:L,onSubmit:le}),W=t.useCallback((v,J)=>{const te=v.slice(0,R);be.current=te,ye(te),ve.current=zn(l.displayTpl,te,Math.max(0,Math.min(te.length,J)));const Ce=Fn(l.displayTpl,l.isoTpl,te);Ce!==xe.current&&(xe.current=Ce,K?.(Ce))},[K,l.displayTpl,l.isoTpl,R]),ue=t.useCallback(v=>{if(Me(v),r||s){F?.(v);return}const J=v.key;if(v.ctrlKey||v.metaKey||v.altKey){F?.(v);return}const te=be.current;if(J==="Escape"&&te.length>0){v.preventDefault(),W("",0),F?.(v);return}if(H&&(l.isoTpl==="yyyy-MM-dd"||l.isoTpl==="yyyy-MM-ddTHH:mm"||l.isoTpl==="yyyy-MM")){const me=he=>{const je=String(he.getFullYear()).padStart(4,"0"),De=String(he.getMonth()+1).padStart(2,"0"),Ee=String(he.getDate()).padStart(2,"0");let Fe="";if(l.isoTpl==="yyyy-MM")Fe=je+De;else if(l.isoTpl==="yyyy-MM-dd")Fe=je+De+Ee;else{const Nn=String(he.getHours()).padStart(2,"0"),jn=String(he.getMinutes()).padStart(2,"0");Fe=je+De+Ee+Nn+jn}W(Fe.slice(0,R),R)},Ne=()=>{if(p&&/^\d{4}-\d{2}/.test(p)){const he=new Date(p);if(!Number.isNaN(he.getTime()))return he}return new Date};if(J==="t"||J==="T"){v.preventDefault(),me(new Date),F?.(v);return}if(J==="+"||J==="="||J==="-"){v.preventDefault();const he=J==="-"?-1:1,je=Ne();je.setDate(je.getDate()+he),me(je),F?.(v);return}if(J==="m"||J==="M"){v.preventDefault();const he=Ne();he.setMonth(he.getMonth()+(J==="M"?-1:1)),me(he),F?.(v);return}if(J==="y"||J==="Y"){v.preventDefault();const he=Ne();he.setFullYear(he.getFullYear()+(J==="Y"?-1:1)),me(he),F?.(v);return}}const Ce=v.currentTarget,we=Ce.selectionStart??0,$e=Ce.selectionEnd??0;if(/^[0-9]$/.test(J)){v.preventDefault();const me=Te(l.displayTpl,we,te),Ne=Te(l.displayTpl,$e,te),he=te.slice(0,me),je=te.slice(Ne);let De=(he+J+je).slice(0,R);me===Ne&&he.length+1+je.length>R&&(De=(he+J+je.slice(1)).slice(0,R)),W(De,me+1),F?.(v);return}if(J==="Backspace"){if(v.preventDefault(),we!==$e){const me=Te(l.displayTpl,we,te),Ne=Te(l.displayTpl,$e,te),he=te.slice(0,me)+te.slice(Ne);W(he,me)}else{const me=Te(l.displayTpl,we,te);if(me===0){F?.(v);return}const Ne=te.slice(0,me-1)+te.slice(me);W(Ne,me-1)}F?.(v);return}if(J==="Delete"){if(v.preventDefault(),we!==$e){const me=Te(l.displayTpl,we,te),Ne=Te(l.displayTpl,$e,te),he=te.slice(0,me)+te.slice(Ne);W(he,me)}else{const me=Te(l.displayTpl,we,te);if(me>=te.length){F?.(v);return}const Ne=te.slice(0,me)+te.slice(me+1);W(Ne,me)}F?.(v);return}F?.(v)},[W,s,Me,F,r,l.displayTpl,l.isoTpl,R,H,p]),u=t.useCallback(v=>{if(r||s)return;const J=v.clipboardData.getData("text");if(!J)return;v.preventDefault();const te=be.current,Ce=J.replace(/[^0-9]/g,"");let we;Ce.length===R&&(J.includes("-")||J.includes("T"))?we=ze(l.displayTpl,l.isoTpl,Ce):we=Ce.slice(0,R);const $e=v.currentTarget,me=$e.selectionStart??0,Ne=$e.selectionEnd??0,he=Te(l.displayTpl,me,te),je=Te(l.displayTpl,Ne,te),De=te.slice(0,he),Ee=te.slice(je),Fe=(De+we+Ee).slice(0,R);W(Fe,Math.min(R,De.length+we.length))},[W,s,r,l.displayTpl,l.isoTpl,R]),re=t.useCallback(v=>{const J=v;if(J.inputType==="insertText"||J.inputType==="insertCompositionText"||J.inputType==="insertFromComposition"){const te=J.data??"";if(!/^[0-9]+$/.test(te)){v.preventDefault();return}if(te.length>1){v.preventDefault();const Ce=v.currentTarget,we=Ce.selectionStart??0,$e=Ce.selectionEnd??0,me=be.current,Ne=Te(l.displayTpl,we,me),he=Te(l.displayTpl,$e,me),je=me.slice(0,Ne),De=me.slice(he),Ee=(je+te+De).slice(0,R);W(Ee,Math.min(R,je.length+te.length))}}},[W,l.displayTpl,R]),C=t.useCallback(v=>{if(r||s)return;const J=v.target.value,te=J.replace(/[^0-9]/g,"").slice(0,R);if(te!==be.current)if(te.length===R&&(J.includes("-")||J.includes("T")||J.includes(":"))){const Ce=ze(l.displayTpl,l.isoTpl,te);W(Ce,Ce.length)}else W(te,te.length)},[W,s,r,l.displayTpl,l.isoTpl,R]),S=t.useCallback(()=>{W("",0),requestAnimationFrame(()=>Z.current?.focus())},[W]),de=t.useCallback(()=>{const v=pe.current;if(!v||s||r)return;const J=v;try{if(typeof J.showPicker=="function"){J.showPicker();return}}catch{}v.focus(),v.click()},[s,r]),j=t.useCallback(v=>{const J=v.target.value,te=Le(J,l.isoTpl),Ce=ze(l.displayTpl,l.isoTpl,te);xe.current=J,ye(Ce),K?.(J),requestAnimationFrame(()=>Z.current?.focus())},[K,l.displayTpl,l.isoTpl]),ee=t.useCallback(v=>{Z.current=v,typeof P=="function"?P(v):P&&(P.current=v)},[P]),oe=t.useMemo(()=>{const v=[];return L&&v.push(w.mc.submit),v.push({key:"Esc",description:f("shortcuts.clearDate","Clear value")}),v},[L,f]),_e=x==="time";return h?null:e.jsxs("div",{className:`nice-field nice-field--${d}${z?` nice-field--label-${z}`:""}${E==="right"?" nice-field--error-right":""} ${g?"nice-field--loading":""} ${$||""}`,style:{...I,...k!=null&&{"--nice-field-label-width":typeof k=="number"?`${k}px`:k},..._!=null&&{"--nice-field-control-width":typeof _=="number"?`${_}px`:_}},"aria-busy":g||void 0,children:[n&&e.jsxs("label",{htmlFor:M,className:`nice-field__label ${c?"nice-field__label--required":""}`,children:[n,ce&&oe.length>0&&e.jsx(w.Kr,{shortcuts:oe,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-${ie} ${a?"nice-input--error":""} ${s?"nice-input--disabled":""} ${r?"nice-input--readonly":""}`,style:{...N,width:"fit-content",position:"relative"},children:[e.jsx("input",{ref:ee,id:M,className:"nice-input__native nice-masked-input",type:"text",name:o,value:y,placeholder:G,disabled:s||g,readOnly:r,autoComplete:"off",spellCheck:!1,inputMode:"numeric","aria-invalid":!!a,"aria-label":n?void 0:f("controls.date","Date"),"data-display-tpl":l.displayTpl,"data-iso-tpl":l.isoTpl,style:{width:`${O}ch`,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontVariantNumeric:"tabular-nums"},onBeforeInput:re,onChange:C,onBlur:se,onKeyDown:ue,onPaste:u}),D&&!s&&!r&&e.jsxs(e.Fragment,{children:[e.jsx("button",{type:"button",className:"nice-input__picker-trigger",onClick:de,"aria-label":f("controls.openPicker","Open picker"),tabIndex:-1,children:_e?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:pe,type:x,className:"nice-input__picker-companion",value:p??"",min:A,max:X,onChange:j,tabIndex:-1,"aria-hidden":"true",style:{position:"absolute",width:0,height:0,opacity:0,pointerEvents:"none",border:0,padding:0,left:0,bottom:0}})]}),V&&!s&&!r&&e.jsx("button",{type:"button",className:"nice-input__clear",onClick:S,disabled:!p,"aria-label":f("controls.clear","Clear"),tabIndex:p?0:-1,children:"✕"})]}),g&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),E==="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),E==="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]}),E!=="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),E!=="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]})});He.displayName="NiceDatePicker";const In=Object.freeze(Object.defineProperty({__proto__:null,NiceDatePicker:He},Symbol.toStringTag,{value:"Module"})),Qe=({label:n,helperText:i,error:a,required:c,disabled:s,size:r="md",name:d,id:o,className:b,style:$,accessMode:I,options:m,value:p,onChange:K,direction:se="horizontal",showKeyboardHints:F,displayStyle:A,labelPlacement:X,errorPlacement:q,labelWidth:T,controlWidth:L,loading:le})=>{w.Ss("toggle",A);const ce=w.Zs(I,o),U=ce==="hidden";(ce==="disabled"||ce==="readOnly")&&(s=!0);const{t:z}=w.$o(),E=w.Hs(o),g=d||E,k=t.useMemo(()=>[{key:"ArrowUp",description:z("shortcuts.previousOption","Previous option")},{key:"ArrowDown",description:z("shortcuts.nextOption","Next option")},{key:"Space",description:z("shortcuts.select","Select")}],[z]);return U?null:e.jsxs("div",{className:`nice-field nice-field--inline nice-field--inline-block nice-field--${r} ${X==="left"?"nice-field--label-left":""} ${q==="right"?"nice-field--error-right":""} ${le?"nice-field--loading":""} ${b||""}`,style:{...$,...T!=null&&{"--nice-field-label-width":typeof T=="number"?`${T}px`:T},...L!=null&&{"--nice-field-control-width":typeof L=="number"?`${L}px`:L}},role:"radiogroup","aria-labelledby":`${E}-label`,"aria-busy":le||void 0,children:[n&&e.jsxs("span",{id:`${E}-label`,className:`nice-field__label ${c?"nice-field__label--required":""}`,children:[n,F&&e.jsx(w.Kr,{shortcuts:k,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control",children:[e.jsx("div",{className:`nice-radio-group ${se==="vertical"?"nice-radio-group--vertical":""}`,children:m.map(_=>e.jsxs("label",{className:`nice-radio ${s||_.disabled||le?"nice-radio--disabled":""}`,children:[e.jsx("input",{type:"radio",className:"nice-radio__input",name:g,value:_.value,checked:p===_.value,disabled:s||_.disabled||le,onChange:()=>K?.(_.value)}),e.jsx("span",{className:"nice-radio__circle",children:e.jsx("span",{className:"nice-radio__dot"})}),e.jsx("span",{children:_.label})]},_.value))}),le&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),q==="right"&&a&&e.jsx("div",{id:`${E}-error`,className:"nice-field__error",role:"alert",children:a}),q==="right"&&!a&&i&&e.jsx("div",{id:`${E}-helper`,className:"nice-field__helper",children:i})]}),q!=="right"&&a&&e.jsx("div",{id:`${E}-error`,className:"nice-field__error",role:"alert",children:a}),q!=="right"&&!a&&i&&e.jsx("div",{id:`${E}-helper`,className:"nice-field__helper",children:i})]})},Ln=Object.freeze(Object.defineProperty({__proto__:null,NiceRadioGroup:Qe},Symbol.toStringTag,{value:"Module"})),Pe=t.forwardRef(({label:n,helperText:i,error:a,required:c,disabled:s,id:r,className:d,style:o,accessMode:b,value:$=0,onChange:I,min:m=0,max:p=100,step:K=1,showValue:se=!0,showMinMax:F=!1,formatValue:A,showKeyboardHints:X,displayStyle:q,size:T="md",labelPlacement:L,errorPlacement:le,labelWidth:ce,controlWidth:U,loading:z,showTicks:E=!1,tickInterval:g,maxTicks:k=21,showTickLabels:_=!1},Q)=>{w.Ss("input",q);const V=w.Zs(b,r),D=V==="hidden";(V==="disabled"||V==="readOnly")&&(s=!0);const{t:B}=w.$o(),H=w.Hs(r),P=t.useMemo(()=>($-m)/(p-m)*100,[$,m,p]),N=A?A($):$.toString(),ie=t.useMemo(()=>{if(!E)return[];const f=p-m;if(f<=0)return[m,p];let M=g??K,Z=Math.floor(f/M)+1;return Z>k&&(M=f/(k-1),Z=k),Array.from({length:Z},(pe,ge)=>{const x=m+ge*M;return ge===Z-1?p:x})},[E,m,p,K,g,k]),ne=t.useMemo(()=>[w.mc.increment,w.mc.decrement,w.mc.first,w.mc.last,w.mc.incrementBig,w.mc.decrementBig],[]),h=L==="left";return D?null:e.jsxs("div",{className:`nice-field nice-field--${T} ${h?"nice-field--label-left":""} ${z?"nice-field--loading":""} ${d||""}`,style:{...o,...ce!=null&&{"--nice-field-label-width":typeof ce=="number"?`${ce}px`:ce},...U!=null&&{"--nice-field-control-width":typeof U=="number"?`${U}px`:U}},"aria-busy":z||void 0,children:[h?n&&e.jsxs("label",{htmlFor:H,className:`nice-field__label ${c?"nice-field__label--required":""}`,children:[n,X&&e.jsx(w.Kr,{shortcuts:ne,size:"sm"})]}):(n||se||X)&&e.jsxs("div",{className:"nice-slider__header",children:[n?e.jsxs("label",{htmlFor:H,className:`nice-field__label ${c?"nice-field__label--required":""}`,children:[n,X&&e.jsx(w.Kr,{shortcuts:ne,size:"sm"})]}):e.jsx("span",{}),se&&e.jsx("span",{className:"nice-slider__value nice-slider__value--header",children:N})]}),e.jsxs("div",{className:"nice-field__control nice-field__control--slider",children:[e.jsxs("div",{className:`nice-slider ${s||z?"nice-slider--disabled":""} ${E?"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:`${P}%`}})}),E&&ie.length>0&&e.jsx("div",{className:"nice-slider__ticks","aria-hidden":"true",children:ie.map((f,M)=>{const Z=(f-m)/(p-m)*100,pe=f<=$;return e.jsx("span",{className:`nice-slider__tick ${pe?"nice-slider__tick--active":""}`,style:{left:`${Z}%`},children:_&&e.jsx("span",{className:"nice-slider__tick-label",children:A?A(f):f})},M)})}),e.jsx("input",{ref:Q,id:H,type:"range",className:"nice-slider__native",min:m,max:p,step:K,value:$,disabled:s||z,"aria-valuenow":$,"aria-valuemin":m,"aria-valuemax":p,onChange:f=>I?.(parseFloat(f.target.value))}),e.jsx("div",{className:"nice-slider__thumb-visual",style:{left:`${P}%`}})]}),F&&e.jsxs("div",{className:"nice-slider__labels",children:[e.jsx("span",{children:A?A(m):m}),e.jsx("span",{children:A?A(p):p})]})]}),h&&se&&e.jsx("span",{className:"nice-slider__value nice-slider__value--inline",children:N}),z&&e.jsx("span",{className:"nice-field__spinner nice-field__spinner--slider",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),le==="right"&&a&&e.jsx("div",{className:"nice-field__error nice-field__error--slider",role:"alert",children:a}),le==="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper nice-field__helper--slider",children:i})]}),le!=="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),le!=="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]})});Pe.displayName="NiceSlider";const Un=Object.freeze(Object.defineProperty({__proto__:null,NiceSlider:Pe},Symbol.toStringTag,{value:"Module"}));function Bn({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 dn=({options:n,value:i,onChange:a,minSearchLength:c=1,maxResults:s=10,onSearch:r,clearable:d,loading:o,multiple:b,renderOption:$,highlightMatch:I=!0,label:m,error:p,helperText:K,required:se,disabled:F,size:A="md",id:X,className:q,style:T,accessMode:L,showKeyboardHints:le,displayStyle:ce,labelPlacement:U,errorPlacement:z,labelWidth:E,controlWidth:g})=>{w.vs("input",ce),w.Ss("input",ce);const k=w.Zs(L,X),_=k==="hidden";(k==="disabled"||k==="readOnly")&&(F=!0);const Q=w.Hs(X),{t:V}=w.$o(),D=t.useMemo(()=>b?Array.isArray(i)?i:i?[i]:[]:[],[i,b]),[B,H]=t.useState(b||Array.isArray(i)?"":i),[P,N]=t.useState(!1),[ie,ne]=t.useState(-1),h=t.useRef(null),f=t.useRef(null);w.$s(h,()=>N(!1));const M=t.useMemo(()=>{const l=[w.mc.moveDown,w.mc.moveUp,w.mc.submit,w.mc.cancel];return b&&l.push({key:"Backspace",description:V("shortcuts.removeLastTag","Remove last tag")}),l},[b,V]);t.useEffect(()=>{b||H(Array.isArray(i)?"":i)},[i,b]);const Z=t.useMemo(()=>{if(B.length<c)return[];if(r)return n.slice(0,s);const l=B.toLowerCase();return n.filter(R=>R.label.toLowerCase().includes(l)).slice(0,s)},[n,B,c,s,r]),pe=t.useMemo(()=>{const l=new Map;for(const R of Z){const fe=R.group||"";l.has(fe)||l.set(fe,[]),l.get(fe).push(R)}return l},[Z]),ge=t.useCallback(l=>{H(l),N(l.length>=c),ne(0),r?.(l)},[c,r]),x=t.useCallback(l=>{if(b){const R=String(l.value),fe=D.includes(R)?D.filter(ye=>ye!==R):[...D,R];a?.(fe),H("")}else H(l.label),a?.(String(l.value)),N(!1)},[a,b,D]),Y=l=>{if(b&&l.key==="Backspace"&&!B&&D.length>0){a?.(D.slice(0,-1));return}if(!P&&(l.key==="ArrowDown"||l.key==="ArrowUp")){l.preventDefault(),N(!0),ne(0);return}P&&(l.key==="ArrowDown"?(l.preventDefault(),ne(R=>R<0?0:Math.min(R+1,Z.length-1))):l.key==="ArrowUp"?(l.preventDefault(),ne(R=>R<=0?Z.length-1:R-1)):(l.key==="Enter"||l.key==="Tab")&&ie>=0&&ie<Z.length?(l.preventDefault(),x(Z[ie])):l.key==="Escape"&&N(!1))},ae=t.useCallback(l=>{a?.(D.filter(R=>R!==l))},[D,a]);return _?null:e.jsxs("div",{className:`nice-field nice-field--${A} ${U==="left"?"nice-field--label-left":""} ${o?"nice-field--loading":""} ${q||""}`,style:{width:"fit-content",...T,...E!=null&&{"--nice-field-label-width":typeof E=="number"?`${E}px`:E},...g!=null&&{"--nice-field-control-width":typeof g=="number"?`${g}px`:g}},ref:h,"aria-busy":o||void 0,children:[m&&e.jsxs("label",{className:`nice-field__label ${se?"nice-field__label--required":""}`,htmlFor:Q,children:[m,le&&e.jsx(w.Kr,{shortcuts:M,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control",style:{position:"relative"},children:[e.jsx("div",{className:`nice-input nice-input--${A} ${p?"nice-input--error":""} ${F?"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&&D.map(l=>{const R=n.find(fe=>String(fe.value)===l);return e.jsxs("span",{className:"nice-autocomplete__tag",children:[R?.label||l,e.jsx("button",{type:"button",className:"nice-autocomplete__tag-remove",onClick:()=>ae(l),children:"✕"})]},l)}),e.jsx("input",{ref:f,id:Q,type:"text",className:"nice-input__native",value:B,onChange:l=>ge(l.target.value),onFocus:()=>B.length>=c&&N(!0),onKeyDown:Y,disabled:F,required:se,role:"combobox","aria-expanded":P,"aria-autocomplete":"list",autoComplete:"off",style:{flex:1,minWidth:60,border:"none",outline:"none",background:"transparent",color:"inherit",padding:0,font:"inherit"}}),d&&!b&&B&&!F&&e.jsx("button",{type:"button",className:"nice-field__clear",onClick:()=>{H(""),a?.("")},"aria-label":V("controls.clear","Clear"),children:"✕"})]})}),P&&Z.length>0&&e.jsx("ul",{className:"nice-dropdown__list",role:"listbox",children:Array.from(pe.entries()).map(([l,R])=>e.jsxs(t.Fragment,{children:[l&&e.jsx("li",{className:"nice-dropdown__group-label",children:l}),R.map(fe=>{const be=Z.indexOf(fe)===ie,xe=b&&D.includes(String(fe.value));return e.jsx("li",{role:"option",className:`nice-dropdown__option ${be?"nice-dropdown__option--active":""} ${xe?"nice-dropdown__option--selected":""}`,onMouseDown:ve=>{ve.preventDefault(),x(fe)},"aria-selected":be,children:$?$(fe,B):I?e.jsx(Bn,{text:fe.label,query:B}):fe.label},String(fe.value))})]},l))}),o&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),z==="right"&&p&&e.jsx("div",{id:`${Q}-error`,className:"nice-field__error",role:"alert",children:p}),z==="right"&&!p&&K&&e.jsx("div",{id:`${Q}-helper`,className:"nice-field__helper",children:K})]}),z!=="right"&&p&&e.jsx("div",{id:`${Q}-error`,className:"nice-field__error",role:"alert",children:p}),z!=="right"&&!p&&K&&e.jsx("div",{id:`${Q}-helper`,className:"nice-field__helper",children:K})]})},fn=({options:n,suggestions:i,value:a,onChange:c,searchable:s=!0,clearable:r,maxTags:d,allowCustom:o,placeholder:b,label:$,error:I,helperText:m,required:p,disabled:K,size:se="md",loading:F,id:A,className:X,style:q,accessMode:T,showKeyboardHints:L,labelPlacement:le,errorPlacement:ce,labelWidth:U,controlWidth:z,autoExpand:E=!1})=>{const g=w.Zs(T,A),k=g==="hidden";(g==="disabled"||g==="readOnly")&&(K=!0);const _=w.Hs(A),{t:Q}=w.$o(),[V,D]=t.useState(!1),[B,H]=t.useState(""),P=t.useRef(null),N=t.useRef(null);w.$s(P,()=>D(!1));const ie=t.useMemo(()=>[w.mc.submit,w.mc.cancel,{key:"Backspace",description:Q("shortcuts.removeLastTag","Remove last tag")}],[Q]),ne=t.useMemo(()=>Array.isArray(n)&&n.length>0?n:Array.isArray(i)?i.map(x=>({label:x,value:x})):[],[n,i]),h=t.useMemo(()=>Array.isArray(a)?a:[],[a]),f=t.useMemo(()=>{let x=ne.filter(Y=>!h.includes(String(Y.value)));if(B){const Y=B.toLowerCase();x=x.filter(ae=>ae.label.toLowerCase().includes(Y))}return x},[ne,h,B]),M=t.useCallback(x=>{d&&h.length>=d||(h.includes(x)||c([...h,x]),H(""))},[h,c,d]),Z=t.useCallback(x=>{c(h.filter(Y=>Y!==x))},[h,c]),pe=x=>{x.key==="Backspace"&&!B&&h.length>0?Z(h[h.length-1]):x.key==="Enter"&&B?(x.preventDefault(),f.length>0?M(String(f[0].value)):o&&M(B)):x.key==="Escape"&&D(!1)},ge=x=>ne.find(Y=>String(Y.value)===x)?.label??x;return k?null:e.jsxs("div",{className:`nice-field nice-field--${se} ${le==="left"?"nice-field--label-left":""} ${F?"nice-field--loading":""} ${X||""}`,style:{...q,...U!=null&&{"--nice-field-label-width":typeof U=="number"?`${U}px`:U},...z!=null&&{"--nice-field-control-width":typeof z=="number"?`${z}px`:z}},ref:P,"aria-busy":F||void 0,children:[$&&e.jsxs("label",{className:`nice-field__label ${p?"nice-field__label--required":""}`,htmlFor:_,children:[$,L&&e.jsx(w.Kr,{shortcuts:ie,size:"sm"})]}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{className:`nice-tagbox nice-tagbox--${se} ${E?"nice-tagbox--expand":"nice-tagbox--fixed"} ${I?"nice-tagbox--error":""} ${K?"nice-tagbox--disabled":""}`,onClick:()=>{!K&&!F&&(D(!0),N.current?.focus())},style:{position:"relative",cursor:K||F?"not-allowed":"text"},children:[e.jsxs("div",{className:"nice-tagbox__tags",children:[h.map(x=>e.jsxs("span",{className:"nice-tag nice-tagbox__tag",children:[ge(x),!K&&e.jsx("button",{type:"button",className:"nice-tag__remove",onClick:Y=>{Y.stopPropagation(),Z(x)},children:"✕"})]},x)),s&&e.jsx("input",{ref:N,id:_,type:"text",className:"nice-tagbox__input nice-input__native",value:B,onChange:x=>{H(x.target.value),D(!0)},onFocus:()=>D(!0),onKeyDown:pe,placeholder:h.length===0?b||Q("controls.select","Select..."):"",disabled:K||F,autoComplete:"off",style:{border:"none",outline:"none",background:"transparent",color:"inherit",flex:1,minWidth:80,padding:0,font:"inherit",caretColor:"var(--color-primary)"}})]}),r&&h.length>0&&!K&&e.jsx("button",{type:"button",className:"nice-field__clear",onClick:x=>{x.stopPropagation(),c([])},"aria-label":Q("controls.clear","Clear"),children:"✕"}),V&&(f.length>0||o&&B)&&e.jsxs("ul",{className:"nice-dropdown__list nice-tagbox__dropdown",role:"listbox",children:[f.map(x=>e.jsx("li",{role:"option",className:"nice-dropdown__option",onMouseDown:Y=>{Y.preventDefault(),M(String(x.value))},children:x.label},String(x.value))),o&&B&&!f.some(x=>String(x.value).toLowerCase()===B.toLowerCase())&&e.jsxs("li",{role:"option",className:"nice-dropdown__option nice-dropdown__option--add",onMouseDown:x=>{x.preventDefault(),M(B)},children:["+ ",Q("controls.add","Add")," “",B,"”"]})]})]}),F&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),ce==="right"&&I&&e.jsx("div",{id:`${_}-error`,className:"nice-field__error",role:"alert",children:I}),ce==="right"&&!I&&m&&e.jsx("div",{id:`${_}-helper`,className:"nice-field__helper",children:m})]}),ce!=="right"&&I&&e.jsx("div",{id:`${_}-error`,className:"nice-field__error",role:"alert",children:I}),ce!=="right"&&!I&&m&&e.jsx("div",{id:`${_}-helper`,className:"nice-field__helper",children:m})]})},un={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 Hn(n){return[...n].map(i=>i==="9"?{type:"digit"}:i==="a"?{type:"letter"}:i==="*"?{type:"alphanum"}:{type:"literal",literal:i})}function Pn(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 cn(n,i,a){let c=0,s="";for(const r of i)r.type==="literal"?s+=r.literal:c<n.length?(s+=n[c],c++):s+=a;return s}function Gn(n,i){return n.map(a=>a.type==="literal"?a.literal:i).join("")}const Xe=t.forwardRef(({label:n,helperText:i,error:a,required:c,disabled:s,readOnly:r,size:d="md",name:o,id:b,className:$,style:I,value:m="",onChange:p,onBlur:K,onKeyDown:se,mask:F,maskPreset:A,maskChar:X="_",placeholder:q,showMaskAsPlaceholder:T=!0,clearable:L=!1,autoFocus:le,labelPlacement:ce,errorPlacement:U,loading:z,labelWidth:E,controlWidth:g,...k},_)=>{const{t:Q}=w.$o(),V=w.Hs(b),D=t.useRef(null),[B,H]=t.useState(!1),P=F||(A?un[A]:"")||"999",N=t.useMemo(()=>Hn(P),[P]),ie=t.useMemo(()=>cn(m,N,X),[m,N,X]),ne=B||m?ie:"",h=q??(T?Gn(N,X):void 0),f=t.useCallback(ae=>{D.current=ae,typeof _=="function"?_(ae):_&&(_.current=ae)},[_]),M=t.useCallback(ae=>{const l=cn(ae,N,X);p?.(ae,l)},[p,N,X]),Z=t.useCallback(ae=>{const l=ae.currentTarget,R=l.value,fe=l.selectionStart??R.length;let ye="",be=0;for(let xe=0;xe<R.length&&be<N.length;xe++){const ve=R[xe];for(;be<N.length&&N[be].type==="literal";)be++;if(be>=N.length)break;Pn(ve,N[be])&&(ye+=ve,be++)}M(ye),requestAnimationFrame(()=>{let xe=0,ve=0;for(let y=0;y<N.length;y++){if(N[y].type==="literal")xe=y+1;else if(ve<ye.length)ve++,xe=y+1;else{xe=y;break}if(xe>=fe&&ve>=ye.length)break}ve>=ye.length&&ye.length>0&&(xe=Math.min(xe,N.length)),l.setSelectionRange(xe,xe)})},[N,M]),pe=t.useCallback(ae=>{if(ae.key==="Backspace"&&m.length>0){ae.preventDefault();const l=m.slice(0,-1);M(l)}se?.(ae)},[m,M,se]),ge=t.useCallback(()=>H(!0),[]),x=t.useCallback(ae=>{H(!1),K?.(ae)},[K]),Y=t.useCallback(()=>{M(""),D.current?.focus()},[M]);return e.jsxs("div",{className:`nice-field nice-field--masked nice-field--${d} ${ce==="left"?"nice-field--label-left":""} ${z?"nice-field--loading":""} ${$||""}`,style:{...I,...E!=null&&{"--nice-field-label-width":typeof E=="number"?`${E}px`:E},...g!=null&&{"--nice-field-control-width":typeof g=="number"?`${g}px`:g}},"aria-busy":z||void 0,children:[n&&e.jsx("label",{htmlFor:V,className:`nice-field__label ${c?"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":""} ${s?"nice-input--disabled":""} ${r?"nice-input--readonly":""}`,style:{width:"fit-content",minWidth:0},children:[e.jsx("input",{ref:f,id:V,className:"nice-input__native nice-masked-input",type:"text",name:o,value:ne,placeholder:h,disabled:s||z,readOnly:r,autoFocus:le,style:{width:`${P.length}ch`,minWidth:0,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontVariantNumeric:"tabular-nums"},"aria-invalid":!!a,"aria-describedby":a?`${V}-error`:i?`${V}-helper`:void 0,onInput:Z,onChange:()=>{},onKeyDown:pe,onFocus:ge,onBlur:x,...k}),L&&m&&e.jsx("button",{type:"button",className:"nice-input__clear",disabled:s||r,onClick:Y,"aria-label":Q("controls.clear","Clear"),children:"✕"})]}),z&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),U==="right"&&a&&e.jsx("div",{id:`${V}-error`,className:"nice-field__error",role:"alert",children:a}),U==="right"&&!a&&i&&e.jsx("div",{id:`${V}-helper`,className:"nice-field__helper",children:i})]}),U!=="right"&&a&&e.jsx("div",{id:`${V}-error`,className:"nice-field__error",role:"alert",children:a}),U!=="right"&&!a&&i&&e.jsx("div",{id:`${V}-helper`,className:"nice-field__helper",children:i})]})});Xe.displayName="NiceMaskedInput";const Kn=[{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 Vn(n,i){if(!n)return{level:"none",passed:[],ratio:0};const a=i.filter(r=>r.test(n)).map(r=>r.id),c=a.length/i.length;let s="weak";return c>=1?s="strong":c>=.75?s="good":c>=.5&&(s="fair"),{level:s,passed:a,ratio:c}}const We=t.forwardRef(({label:n,helperText:i,error:a,required:c,disabled:s,readOnly:r,size:d="md",name:o,id:b,className:$,style:I,value:m="",onChange:p,onBlur:K,onKeyDown:se,placeholder:F,maxLength:A,showToggle:X=!0,showStrength:q=!1,strengthRules:T,validationPlacement:L="bottom",autoFocus:le,autoComplete:ce,labelPlacement:U,errorPlacement:z,loading:E,labelWidth:g,controlWidth:k,..._},Q)=>{const{t:V}=w.$o(),D=w.Hs(b),[B,H]=t.useState(!1),P=T??Kn,N=t.useMemo(()=>q?Vn(m,P):null,[q,m,P]),ie=t.useCallback(()=>H(h=>!h),[]),ne=q&&N&&m?e.jsxs("div",{className:`nice-password__strength ${L==="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--${N.level}`,style:{width:`${N.ratio*100}%`}})}),e.jsx("span",{className:`nice-password__strength-label nice-password__strength-label--${N.level}`,children:V(`password.strength.${N.level}`,N.level.charAt(0).toUpperCase()+N.level.slice(1))}),e.jsx("ul",{className:"nice-password__rules",children:P.map(h=>{const f=N.passed.includes(h.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?"✓":"✗"}),h.label]},h.id)})})]}):null;return e.jsxs("div",{className:`nice-field nice-field--${d} ${U==="left"?"nice-field--label-left":""} ${E?"nice-field--loading":""} ${$||""}`,style:{...I,...g!=null&&{"--nice-field-label-width":typeof g=="number"?`${g}px`:g},...k!=null&&{"--nice-field-control-width":typeof k=="number"?`${k}px`:k}},"aria-busy":E||void 0,children:[n&&e.jsx("label",{htmlFor:D,className:`nice-field__label ${c?"nice-field__label--required":""}`,style:L==="right"&&U==="left"?{alignSelf:"flex-start",paddingTop:6}:void 0,children:n}),e.jsxs("div",{className:"nice-field__control",style:L==="right"?{alignItems:"flex-start"}:void 0,children:[e.jsxs("div",{style:L==="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":""} ${s?"nice-input--disabled":""} ${r?"nice-input--readonly":""}`,children:[e.jsx("input",{ref:Q,id:D,className:"nice-input__native",type:B?"text":"password",name:o,value:m,placeholder:F,disabled:s||E,readOnly:r,maxLength:A,autoFocus:le,autoComplete:ce,"aria-invalid":!!a,"aria-describedby":a?`${D}-error`:i?`${D}-helper`:void 0,onChange:h=>p?.(h.target.value),onBlur:K,onKeyDown:se,..._}),X&&e.jsx("button",{type:"button",className:"nice-password__toggle",onClick:ie,disabled:s,tabIndex:-1,"aria-label":B?V("password.hide","Hide password"):V("password.show","Show password"),children:B?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"})]})})]}),L==="right"&&z!=="right"&&a&&e.jsx("div",{id:`${D}-error`,className:"nice-field__error",role:"alert",children:a}),L==="right"&&z!=="right"&&!a&&i&&e.jsx("div",{id:`${D}-helper`,className:"nice-field__helper",children:i})]}),E&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),L==="right"&&ne,z==="right"&&a&&e.jsx("div",{id:`${D}-error`,className:"nice-field__error",role:"alert",children:a}),z==="right"&&!a&&i&&e.jsx("div",{id:`${D}-helper`,className:"nice-field__helper",children:i})]}),L!=="right"&&ne,L!=="right"&&z!=="right"&&a&&e.jsx("div",{id:`${D}-error`,className:"nice-field__error",role:"alert",children:a}),L!=="right"&&z!=="right"&&!a&&i&&e.jsx("div",{id:`${D}-helper`,className:"nice-field__helper",children:i})]})});We.displayName="NicePasswordInput";const Zn=[{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:"### ### ###"}],rn=127397;function Yn(n){return String.fromCodePoint(n.charCodeAt(0)+rn,n.charCodeAt(1)+rn)}function On(n,i){if(!i)return n;const a=n.replace(/\D/g,"");let c="",s=0;for(let r=0;r<i.length&&s<a.length;r++)i[r]==="#"?c+=a[s++]:c+=i[r];return c}function Ve(n,i){return`${n}${i.replace(/\D/g,"")}`}const en=t.forwardRef(({label:n,helperText:i,error:a,required:c,disabled:s,readOnly:r,size:d="md",name:o,id:b,className:$,style:I,accessMode:m,value:p={},onChange:K,onBlur:se,countryCodes:F=Zn,defaultCountry:A="PL",placeholder:X,showFlag:q=!0,validateE164:T=!1},L)=>{const le=w.Zs(m,b),ce=le==="hidden";le==="disabled"&&(s=!0),le==="readOnly"&&(r=!0);const{t:U}=w.$o(),z=w.Hs(b),E=t.useMemo(()=>{const H=p.countryCode??A;return F.find(P=>P.code===H)??F[0]},[p.countryCode,A,F]),[g,k]=t.useState(),_=t.useMemo(()=>On(p.number??"",E?.mask),[p.number,E]),Q=t.useCallback(H=>{const P=F.find(ie=>ie.code===H);if(!P)return;const N=p.number??"";K?.({countryCode:P.code,dialCode:P.dialCode,number:N,e164:Ve(P.dialCode,N)})},[F,p.number,K]),V=t.useCallback(H=>{const P=H.replace(/\D/g,""),N=E;K?.({countryCode:N?.code,dialCode:N?.dialCode,number:P,e164:N?Ve(N.dialCode,P):P}),k(void 0)},[E,K]),D=t.useCallback(H=>{if(T&&p.number){const P=Ve(E?.dialCode??"",p.number);/^\+\d{7,15}$/.test(P)||k(U("invalidPhone","Invalid phone number"))}se?.(H)},[T,p.number,E,se,U]),B=a||g;return ce?null:e.jsxs("div",{ref:L,id:z,className:`nice-phone nice-size-${d}${$?` ${$}`:""}${B?" nice-error":""}${s?" nice-disabled":""}`,style:I,children:[n&&e.jsxs("label",{className:"nice-phone__label",children:[n,c&&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:E?.code,onChange:H=>Q(H.target.value),disabled:s,"aria-label":U("countryCode","Country code"),children:F.map(H=>e.jsxs("option",{value:H.code,children:[q?`${Yn(H.code)} `:"",H.dialCode," ",H.name]},H.code))}),e.jsx("input",{className:"nice-input nice-phone__number",type:"tel",name:o,value:_,onChange:H=>V(H.target.value),onBlur:D,placeholder:X??E?.mask?.replace(/#/g,"_")??"",disabled:s,readOnly:r,"aria-label":U("phoneNumber","Phone number")})]}),i&&e.jsx("span",{className:"nice-helper-text",children:i}),B&&typeof B=="string"&&e.jsx("span",{className:"nice-error-text",children:B})]})});en.displayName="NicePhoneInput";const qn=({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"})]}),Jn={xxs:10,xs:14,sm:18,md:22,lg:28,xl:34,xxl:42},Ge=t.forwardRef(({value:n=0,onChange:i,count:a=5,half:c=!1,readOnly:s=!1,disabled:r=!1,size:d="md",label:o,icon:b,name:$,error:I,helperText:m,required:p,id:K,className:se,style:F,labelPlacement:A,errorPlacement:X,labelWidth:q,controlWidth:T,valuePlacement:L="none",valueTemplate:le,loading:ce,...U},z)=>{const{t:E}=w.$o(),g=w.Hs(K),[k,_]=t.useState(null),Q=Jn[d],V=!s&&!r&&!ce,D=k??n,B=h=>D>=h+1?"full":c&&D>=h+.5?"half":"empty",H=t.useCallback((h,f)=>{if(!V)return;const M=f&&c?h+.5:h+1;i?.(M===n?0:M)},[V,c,i,n]),P=t.useCallback((h,f)=>{if(V)if(c){const M=f.currentTarget.getBoundingClientRect(),Z=f.clientX-M.left<M.width/2;_(Z?h+.5:h+1)}else _(h+1)},[V,c]),N=t.useCallback(()=>{V&&_(null)},[V]),ie=t.useCallback(h=>{if(!V)return;const f=c?.5:1;if(h.key==="ArrowRight"||h.key==="ArrowUp"){h.preventDefault();const M=Math.min(a,n+f);i?.(M)}else if(h.key==="ArrowLeft"||h.key==="ArrowDown"){h.preventDefault();const M=Math.max(0,n-f);i?.(M)}},[V,c,a,n,i]),ne=le?le.replace("{value}",String(n)):String(n);return e.jsxs("div",{className:`nice-field nice-field--${d} ${A==="left"?"nice-field--label-left":""} ${ce?"nice-field--loading":""} ${se||""}`,style:{...F,...q!=null&&{"--nice-field-label-width":typeof q=="number"?`${q}px`:q},...T!=null&&{"--nice-field-control-width":typeof T=="number"?`${T}px`:T}},"aria-busy":ce||void 0,...U,children:[o&&e.jsx("label",{htmlFor:g,className:`nice-field__label ${p?"nice-field__label--required":""}`,children:o}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{ref:z,id:g,className:`nice-rating nice-rating--${d} ${r?"nice-rating--disabled":""} ${s?"nice-rating--readonly":""}`,role:"slider","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":a,"aria-label":o||E("controls.rating","Rating"),"aria-invalid":!!I,tabIndex:V?0:-1,onMouseLeave:N,onKeyDown:ie,children:[$&&e.jsx("input",{type:"hidden",name:$,value:n}),Array.from({length:a},(h,f)=>{const M=B(f);return e.jsx("span",{className:`nice-rating__star nice-rating__star--${M}`,onClick:Z=>{if(!V)return;const pe=Z.currentTarget.getBoundingClientRect(),ge=c&&Z.clientX-pe.left<pe.width/2;H(f,ge)},onMouseMove:Z=>P(f,Z),"aria-label":`${f+1} ${E("controls.star","star")}`,children:b?b(M):e.jsx(qn,{filled:M,size:Q})},f)})]}),L==="right"&&e.jsx("span",{className:"nice-rating__value",children:ne}),L==="bottom"&&e.jsx("div",{className:"nice-rating__value nice-rating__value--bottom",children:ne}),ce&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),X==="right"&&I&&e.jsx("div",{id:`${g}-error`,className:"nice-field__error",role:"alert",children:I}),X==="right"&&!I&&m&&e.jsx("div",{id:`${g}-helper`,className:"nice-field__helper",children:m})]}),X!=="right"&&I&&e.jsx("div",{id:`${g}-error`,className:"nice-field__error",role:"alert",children:I}),X!=="right"&&!I&&m&&e.jsx("div",{id:`${g}-helper`,className:"nice-field__helper",children:m})]})});Ge.displayName="NiceRating";const Qn=Object.freeze(Object.defineProperty({__proto__:null,NiceRating:Ge},Symbol.toStringTag,{value:"Module"})),Xn=[{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"}],nn=({label:n,helperText:i,error:a,errorPlacement:c="bottom",required:s,disabled:r,readOnly:d,loading:o,size:b="md",className:$,style:I,accessMode:m,id:p,value:K,defaultValue:se,onChange:F,columns:A=2,showState:X=!1,showBuilding:q=!0,showApartment:T=!0,showCountry:L=!0,countryOptions:le=Xn,defaultCountry:ce="PL",fieldLabels:U,fieldPlaceholders:z,showLabel:E=!0,labelPlacement:g,labelWidth:k,controlWidth:_})=>{const Q=w.Zs(m,p),V=Q==="hidden";Q==="disabled"&&(r=!0),Q==="readOnly"&&(d=!0);const{t:D}=w.$o(),B=K!==void 0,[H,P]=t.useState(se??{}),N=B?K:H,ie=Y=>{const ae={...N,...Y};B||P(ae),F?.(ae)},ne={street:U?.street??D("address.street","Street"),building:U?.building??D("address.building","Building"),apartment:U?.apartment??D("address.apartment","Apt."),postalCode:U?.postalCode??D("address.postalCode","Postal code"),city:U?.city??D("address.city","City"),state:U?.state??D("address.state","State / Region"),country:U?.country??D("address.country","Country")},h=z??{},f=N.country??ce,M=g==="left"?"left":"top",Z={...I,...k!=null&&{"--nice-field-label-width":typeof k=="number"?`${k}px`:k},..._!=null&&{"--nice-field-control-width":typeof _=="number"?`${_}px`:_}},pe={display:"grid",gridTemplateColumns:`repeat(${A}, minmax(0, 1fr))`,gap:"8px 12px"},ge=A===2?{gridColumn:"span 2"}:{},x={size:b,disabled:r||o,readOnly:d,labelPlacement:M};return V?null:e.jsxs("div",{className:`nice-field nice-field--${b} nice-address nice-address--cols-${A} ${o?"nice-field--loading":""} ${$||""}`,style:Z,"aria-busy":o||void 0,children:[E&&n&&e.jsx("label",{className:`nice-field__label ${s?"nice-field__label--required":""}`,children:n}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("div",{className:"nice-address__grid",style:pe,children:[e.jsx("div",{style:ge,children:e.jsx(ke.NiceTextInput,{...x,label:ne.street,value:N.street??"",onChange:Y=>ie({street:Y}),placeholder:h.street,required:s})}),q&&e.jsx(ke.NiceTextInput,{...x,label:ne.building,value:N.building??"",onChange:Y=>ie({building:Y}),placeholder:h.building}),T&&e.jsx(ke.NiceTextInput,{...x,label:ne.apartment,value:N.apartment??"",onChange:Y=>ie({apartment:Y}),placeholder:h.apartment}),e.jsx(ke.NiceTextInput,{...x,label:ne.postalCode,value:N.postalCode??"",onChange:Y=>ie({postalCode:Y}),placeholder:h.postalCode??"00-000",required:s}),e.jsx(ke.NiceTextInput,{...x,label:ne.city,value:N.city??"",onChange:Y=>ie({city:Y}),placeholder:h.city,required:s}),X&&e.jsx(ke.NiceTextInput,{...x,label:ne.state,value:N.state??"",onChange:Y=>ie({state:Y}),placeholder:h.state}),L&&e.jsx(ke.NiceSelect,{...x,label:ne.country,value:f,onChange:Y=>ie({country:typeof Y=="string"?Y:String(Y??"")}),options:le,required:s})]}),o&&e.jsx("span",{className:"nice-field__spinner nice-field__spinner--address",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),c==="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),c==="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]}),c!=="right"&&a&&e.jsx("div",{className:"nice-field__error",role:"alert",children:a}),c!=="right"&&!a&&i&&e.jsx("div",{className:"nice-field__helper",children:i})]})};nn.displayName="NiceAddress";const Wn=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"]}),ln=["#cbd5e1","#94a3b8","#cbd5e1"];function ea(n){return n?Wn[n.toUpperCase()]??ln:ln}const na=kn.Flags3x2,Oe=({code:n,size:i=22,className:a})=>{const c=n?.toUpperCase(),s=c?na[c]:void 0,r=i,d=Math.round(i*2/3);return s?e.jsx("span",{className:a,role:"img","aria-label":`${c} flag`,style:{display:"inline-block",width:r,height:d,boxSizing:"content-box",border:"1px solid var(--nice-overlay-15, rgba(0, 0, 0, 0.15))",borderRadius:2,overflow:"hidden",flexShrink:0,verticalAlign:"middle",lineHeight:0},dangerouslySetInnerHTML:{__html:s.replace("<svg ",`<svg width="${r}" height="${d}" preserveAspectRatio="xMidYMid slice" `)}}):e.jsx(pn,{code:n,size:i,className:a})},pn=({code:n,size:i=18,className:a})=>{const c=ea(n);return e.jsx("span",{className:a,role:"img","aria-label":`${n} flag`,style:{display:"inline-flex",width:i,height:Math.round(i*.7),boxSizing:"content-box",border:"1px solid var(--nice-overlay-15, rgba(0, 0, 0, 0.15))",borderRadius:2,overflow:"hidden",flexShrink:0,verticalAlign:"middle"},children:c.map((s,r)=>e.jsx("span",{style:{flex:1,background:s}},r))})};function mn(n,i,a,c=280){const[s,r]=t.useState(a==="left"?"left":"right"),d=t.useCallback(()=>{if(a!=="auto"){r(a);return}const o=i.current;if(!o||typeof window>"u")return;const b=o.getBoundingClientRect(),I=window.innerWidth-b.left,m=b.right;I>=c&&I>m?r("left"):r("right")},[a,i,c]);return t.useEffect(()=>{if(n)return d(),window.addEventListener("resize",d),window.addEventListener("scroll",d,!0),()=>{window.removeEventListener("resize",d),window.removeEventListener("scroll",d,!0)}},[n,d]),s}const aa=({colors:n,size:i=28,shape:a="page",className:c})=>{const s=i,r=Math.round(i*.75),d=n.border??"color-mix(in srgb, currentColor 30%, transparent)";if(a==="swatch"){const p=[n.primary,n.background,n.backgroundSecondary??n.background,n.textColor];return e.jsx("span",{className:c,role:"img","aria-label":"Theme preview",style:{display:"inline-flex",width:s,height:r,border:`1px solid ${d}`,borderRadius:2,overflow:"hidden",flexShrink:0,verticalAlign:"middle"},children:p.map((K,se)=>e.jsx("span",{style:{flex:1,background:K}},se))})}const o=Math.max(2,Math.round(r*.22)),b=n.backgroundSecondary?Math.max(3,Math.round(s*.28)):0,$=Math.max(1,Math.round(r*.08)),I=Math.max(1,Math.round(r*.05)),m=Math.max(2,Math.round(s*.08));return e.jsxs("span",{className:c,role:"img","aria-label":"Theme preview",style:{position:"relative",display:"inline-block",width:s,height:r,boxSizing:"content-box",background:n.background,border:`1px solid ${d}`,borderRadius:2,overflow:"hidden",flexShrink:0,verticalAlign:"middle"},children:[e.jsx("span",{style:{position:"absolute",top:0,left:0,right:0,height:o,background:n.primary}}),b>0&&e.jsx("span",{style:{position:"absolute",top:o,left:0,bottom:0,width:b,background:n.backgroundSecondary}}),e.jsx("span",{style:{position:"absolute",top:o+I,left:b+m,right:m,height:$,background:n.textColor,opacity:.8,borderRadius:1}}),e.jsx("span",{style:{position:"absolute",top:o+I*2+$,left:b+m,width:`${Math.max(20,s-b-m*2-4)}px`,height:$,background:n.textColor,opacity:.5,borderRadius:1}})]})},gn=[{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:"🇿🇼"}],an=({value:n,defaultValue:i,onChange:a,placeholder:c,showSearch:s=!0,searchPlaceholder:r,showDialCode:d,showFlag:o,showFlagInValue:b,showFlagInMenu:$,showTextInValue:I,showTextInMenu:m,showDialCodeInValue:p,showDialCodeInMenu:K,showCodeInValue:se=!1,showCodeInMenu:F=!1,compact:A=!1,variant:X="default",dropdownAlign:q,disabled:T=!1,countries:L,priorityCountries:le=["US","GB","DE","FR","PL"],allowClear:ce=!1,size:U="md",className:z="",style:E,label:g,helperText:k,error:_,required:Q,readOnly:V,loading:D,labelPlacement:B,errorPlacement:H,labelWidth:P,controlWidth:N,id:ie,"data-testid":ne="nice-country-picker"})=>{const{t:h}=w.$o(),f=t.useRef(null),M=t.useRef(null),Z=t.useRef(null),[pe,ge]=t.useState(i),[x,Y]=t.useState(!1),[ae,l]=t.useState(""),[R,fe]=t.useState(0),ye=b??o??!0,be=$??o??!0,xe=I??!A,ve=m??!0,y=p??d??!A,G=K??d??!0,O=mn(x,M,q??(A?"auto":"left")),Me=n!==void 0?n:pe,W=t.useMemo(()=>{let j=gn;if(L){const ee=new Set(L.map(oe=>oe.toUpperCase()));j=j.filter(oe=>ee.has(oe.code))}return j},[L]),ue=t.useMemo(()=>{if(!le?.length)return W;const j=new Set(le.map(_e=>_e.toUpperCase())),ee=W.filter(_e=>j.has(_e.code)),oe=W.filter(_e=>!j.has(_e.code));return[...ee,...oe]},[W,le]),u=t.useMemo(()=>{if(!ae)return ue;const j=ae.toLowerCase();return ue.filter(ee=>ee.name.toLowerCase().includes(j)||ee.code.toLowerCase().includes(j)||ee.dialCode.includes(j))},[ue,ae]),re=t.useMemo(()=>Me?W.find(j=>j.code===Me)??null:null,[Me,W]);t.useEffect(()=>{if(!x)return;const j=ee=>{f.current&&!f.current.contains(ee.target)&&(Y(!1),l(""))};return document.addEventListener("mousedown",j),()=>document.removeEventListener("mousedown",j)},[x]),t.useEffect(()=>{x&&s&&Z.current&&Z.current.focus()},[x,s]),t.useEffect(()=>{fe(0)},[ae]);const C=t.useCallback(j=>{n===void 0&&ge(j.code),a?.(j),Y(!1),l("")},[n,a]),S=t.useCallback(j=>{j.stopPropagation(),n===void 0&&ge(void 0),a?.(null)},[n,a]),de=t.useCallback(j=>{if(!x){(j.key==="Enter"||j.key===" "||j.key==="ArrowDown")&&(j.preventDefault(),Y(!0));return}switch(j.key){case"ArrowDown":j.preventDefault(),fe(ee=>Math.min(ee+1,u.length-1));break;case"ArrowUp":j.preventDefault(),fe(ee=>Math.max(ee-1,0));break;case"Enter":j.preventDefault(),u[R]&&C(u[R]);break;case"Escape":j.preventDefault(),Y(!1),l("");break}},[x,u,R,C]);return e.jsxs("div",{ref:f,className:`nice-field nice-field--${U} nice-field--country-picker ${B==="left"?"nice-field--label-left":""} ${H==="right"?"nice-field--error-right":""} ${_?"nice-field--error":""} ${D?"nice-field--loading":""} nice-country-picker nice-country-picker--${U} ${A?"nice-country-picker--compact":""} ${X==="ghost"?"nice-country-picker--ghost":""} ${x?"nice-country-picker--open":""} ${T?"nice-country-picker--disabled":""} ${z}`,style:{...E,...P!=null&&{"--nice-field-label-width":typeof P=="number"?`${P}px`:P},...N!=null&&{"--nice-field-control-width":typeof N=="number"?`${N}px`:N}},"data-testid":ne,"aria-busy":D||void 0,children:[g&&e.jsxs("label",{className:"nice-field__label",htmlFor:ie,children:[g,Q&&e.jsx("span",{className:"nice-field__required",children:"*"})]}),e.jsxs("div",{className:"nice-field__control",children:[e.jsxs("button",{ref:M,type:"button",className:"nice-country-picker__trigger",onClick:()=>!T&&!V&&Y(!x),onKeyDown:de,disabled:T,id:ie,"aria-haspopup":"listbox","aria-expanded":x,"aria-invalid":_?!0:void 0,"data-testid":`${ne}-trigger`,children:[re?e.jsxs("span",{className:"nice-country-picker__value",children:[ye&&e.jsx("span",{className:"nice-country-picker__flag","aria-hidden":"true",children:e.jsx(Oe,{code:re.code})}),xe&&e.jsx("span",{className:"nice-country-picker__name",children:re.name}),se&&e.jsx("span",{className:"nice-country-picker__code",children:re.code}),y&&e.jsxs("span",{className:"nice-country-picker__dial-code",children:["(",re.dialCode,")"]})]}):e.jsx("span",{className:"nice-country-picker__placeholder",children:A?"":c??h("controls.select","Select country")}),e.jsxs("span",{className:"nice-country-picker__icons",children:[ce&&re&&!T&&!V&&e.jsx("span",{className:"nice-country-picker__clear",onClick:S,"aria-label":h("clear","Clear"),children:"✕"}),X!=="ghost"&&e.jsx("span",{className:"nice-country-picker__arrow",children:x?"▲":"▼"})]})]}),x&&e.jsxs("div",{className:`nice-country-picker__dropdown nice-country-picker__dropdown--align-${O}`,role:"listbox","data-testid":`${ne}-dropdown`,children:[s&&e.jsx("div",{className:"nice-country-picker__search",children:e.jsx("input",{ref:Z,type:"text",value:ae,onChange:j=>l(j.target.value),onKeyDown:de,placeholder:r??h("search","Search"),className:"nice-country-picker__search-input","data-testid":`${ne}-search`})}),e.jsx("div",{className:"nice-country-picker__list",children:u.length===0?e.jsx("div",{className:"nice-country-picker__empty",children:h("noData","No countries found")}):u.map((j,ee)=>e.jsxs("div",{className:`nice-country-picker__option ${j.code===Me?"nice-country-picker__option--selected":""} ${ee===R?"nice-country-picker__option--highlighted":""}`,onClick:()=>C(j),onMouseEnter:()=>fe(ee),role:"option","aria-selected":j.code===Me,"data-testid":`${ne}-option-${j.code}`,children:[be&&e.jsx("span",{className:"nice-country-picker__flag","aria-hidden":"true",children:e.jsx(Oe,{code:j.code})}),ve&&e.jsx("span",{className:"nice-country-picker__name",children:j.name}),F&&e.jsx("span",{className:"nice-country-picker__code",children:j.code}),G&&e.jsx("span",{className:"nice-country-picker__dial-code",children:j.dialCode})]},j.code))})]}),D&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),H==="right"&&_&&e.jsx("div",{className:"nice-field__error",role:"alert",children:_}),H==="right"&&!_&&k&&e.jsx("div",{className:"nice-field__helper",children:k})]}),H!=="right"&&_&&e.jsx("div",{className:"nice-field__error",role:"alert",children:_}),H!=="right"&&!_&&k&&e.jsx("div",{className:"nice-field__helper",children:k})]})};an.displayName="NiceCountryPicker";function Re(n){return n.toString().padStart(2,"0")}function ia(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(),c=Re(i.getMonth()+1),s=Re(i.getDate());return{date:`${a}-${c}-${s}`,hours:i.getHours(),minutes:i.getMinutes(),seconds:i.getSeconds()}}function ta(n,i,a,c){return n?`${n}T${Re(i)}:${Re(a)}:${Re(c)}`:""}const tn=t.forwardRef(({label:n,helperText:i,error:a,required:c,disabled:s,readOnly:r,size:d="md",name:o,id:b,className:$,style:I,value:m,onChange:p,onBlur:K,min:se,max:F,hourFormat:A="24",minuteStep:X=1,showSeconds:q=!1,showNow:T=!1,clearable:L=!1,...le},ce)=>{const{t:U}=w.$o(),z=w.Hs(b),E=t.useRef(null),g=t.useMemo(()=>ia(m),[m]),k=t.useCallback((f,M,Z,pe)=>{p?.(ta(f,M,Z,pe))},[p]),_=t.useCallback(f=>{k(f.target.value,g.hours,g.minutes,g.seconds)},[k,g]),Q=t.useCallback(f=>{const M=Math.max(0,Math.min(23,parseInt(f.target.value,10)||0));k(g.date,M,g.minutes,g.seconds)},[k,g]),V=t.useCallback(f=>{const M=Math.max(0,Math.min(59,parseInt(f.target.value,10)||0));k(g.date,g.hours,M,g.seconds)},[k,g]),D=t.useCallback(f=>{const M=Math.max(0,Math.min(59,parseInt(f.target.value,10)||0));k(g.date,g.hours,g.minutes,M)},[k,g]),B=t.useCallback(()=>{const f=g.hours>=12?g.hours-12:g.hours+12;k(g.date,f,g.minutes,g.seconds)},[k,g]),H=t.useCallback(()=>{const f=new Date,M=`${f.getFullYear()}-${Re(f.getMonth()+1)}-${Re(f.getDate())}`;k(M,f.getHours(),f.getMinutes(),f.getSeconds())},[k]),P=t.useCallback(()=>{p?.("")},[p]),N=A==="12"?g.hours===0?12:g.hours>12?g.hours-12:g.hours:g.hours,ie=g.hours>=12?"PM":"AM",ne=se?se.split("T")[0]:void 0,h=F?F.split("T")[0]:void 0;return e.jsxs("div",{ref:ce,className:`nice-field ${$||""}`,style:I,...le,children:[n&&e.jsx("label",{htmlFor:z,className:`nice-field__label ${c?"nice-field__label--required":""}`,children:n}),e.jsxs("div",{className:`nice-datetime nice-datetime--${d} ${a?"nice-datetime--error":""} ${s?"nice-datetime--disabled":""} ${r?"nice-datetime--readonly":""}`,children:[e.jsx("input",{ref:E,id:z,type:"date",className:"nice-datetime__date",name:o?`${o}_date`:void 0,value:g.date,min:ne,max:h,disabled:s,readOnly:r,"aria-invalid":!!a,"aria-describedby":a?`${z}-error`:i?`${z}-helper`:void 0,onChange:_,onBlur:K}),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:N,min:A==="12"?1:0,max:A==="12"?12:23,disabled:s,readOnly:r,"aria-label":U("datetime.hours","Hours"),onChange:Q}),e.jsx("span",{className:"nice-datetime__colon",children:":"}),e.jsx("input",{type:"number",className:"nice-datetime__time-part",value:Re(g.minutes),min:0,max:59,step:X,disabled:s,readOnly:r,"aria-label":U("datetime.minutes","Minutes"),onChange:V}),q&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"nice-datetime__colon",children:":"}),e.jsx("input",{type:"number",className:"nice-datetime__time-part",value:Re(g.seconds),min:0,max:59,disabled:s,readOnly:r,"aria-label":U("datetime.seconds","Seconds"),onChange:D})]}),A==="12"&&e.jsx("button",{type:"button",className:"nice-datetime__ampm",disabled:s||r,onClick:B,"aria-label":U("datetime.toggleAmPm","Toggle AM/PM"),children:ie}),T&&e.jsx("button",{type:"button",className:"nice-datetime__now",disabled:s||r,onClick:H,"aria-label":U("datetime.now","Now"),children:U("datetime.now","Now")}),L&&m&&e.jsx("button",{type:"button",className:"nice-input__clear",disabled:s||r,onClick:P,"aria-label":U("controls.clear","Clear"),children:"✕"})]}),a&&e.jsx("div",{id:`${z}-error`,className:"nice-field__error",role:"alert",children:a}),!a&&i&&e.jsx("div",{id:`${z}-helper`,className:"nice-field__helper",children:i})]})});tn.displayName="NiceDateTimePicker";function Se(n){return n.toString().padStart(2,"0")}function Ue(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 sa(n,i,a,c){return c?`${Se(n)}:${Se(i)}:${Se(a)}`:`${Se(n)}:${Se(i)}`}function ca(n,i,a){const{hours:c,minutes:s,seconds:r}=Ue(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(c,s,r,0),b}const o=new Date(d);return o.setHours(c,s,r,0),o.getTime()<=d.getTime()&&o.setDate(o.getDate()+1),o}function hn(n,i){if(n<=0)return i;const a=Math.floor(n/864e5),c=Math.floor(n%864e5/36e5),s=Math.floor(n%36e5/6e4),r=Math.floor(n%6e4/1e3),d=`${Se(c)}:${Se(s)}:${Se(r)}`;return a>0?`${a}d ${d}`:d}function ra(n,i){if(n<=0)return i;const a=Math.floor(n/864e5),c=Math.floor(n%864e5/36e5),s=Math.floor(n%36e5/6e4),r=Math.floor(n%6e4/1e3),d=[];return a&&d.push(`${a}d`),(a||c)&&d.push(`${c}h`),(a||c||s)&&d.push(`${s}m`),d.push(`${r}s`),d.join(" ")}function la(n,i){if(n<=0)return i;const a=Math.floor(n/1e3),c=Math.floor(a/3600),s=Math.floor(a%3600/60),r=a%60;return c>0?`${Se(c)}:${Se(s)}:${Se(r)}`:`${Se(s)}:${Se(r)}`}function oa(n,i){if(n<=0)return i;const a=Math.floor(n/1e3),c=Math.floor(a/86400);if(c)return`${c}d`;const s=Math.floor(a/3600);if(s)return`${s}h`;const r=Math.floor(a/60);return r?`${r}m`:`${a}s`}function da(n,i){if(n<=0)return i;const a=Math.floor(n/1e3),c=Math.floor(a/86400),s=Math.floor(a%86400/3600),r=Math.floor(a%3600/60),d=[];return c&&d.push(`${c} ${c===1?"day":"days"}`),s&&d.push(`${s} ${s===1?"hour":"hours"}`),r&&d.push(`${r} ${r===1?"minute":"minutes"}`),d.length?d.join(", "):"less than a minute"}const fa={verbose:hn,compact:ra,short:la,minimal:oa,words:da},Ke=t.forwardRef(({label:n,helperText:i,error:a,required:c,disabled:s,readOnly:r,size:d="md",name:o,id:b,className:$,style:I,value:m,onChange:p,onBlur:K,hourFormat:se="24",minuteStep:F=1,showSeconds:A=!1,min:X,max:q,clearable:T=!1,labelPlacement:L,errorPlacement:le,loading:ce,labelWidth:U,controlWidth:z,targetDate:E,onTargetChange:g,countdown:k=!1,countdownFormat:_="verbose",formatCountdown:Q,countdownLabel:V,countdownInterval:D=1e3,countdownDoneText:B="now",...H},P)=>{const{t:N}=w.$o(),ie=w.Hs(b),ne=t.useRef(null),h=t.useMemo(()=>Ue(m),[m]),f=A?6:4,M=t.useCallback(u=>{const re=u.slice(0,f);if(re.length===0)return"";let C=re.slice(0,2);return re.length>2&&(C+=":"+re.slice(2,4)),A&&re.length>4&&(C+=":"+re.slice(4,6)),C},[f,A]),Z=t.useCallback(u=>u.replace(/\D/g,"").slice(0,f),[f]),pe=t.useMemo(()=>m?Z(m):"",[m,Z]),ge=M(pe),[x,Y]=t.useState(()=>Date.now());t.useEffect(()=>{if(!k)return;const u=window.setInterval(()=>Y(Date.now()),Math.max(100,D));return()=>window.clearInterval(u)},[k,D]);const ae=t.useMemo(()=>ca(m,E,x),[m,E,x]),l=t.useRef(0);t.useEffect(()=>{if(!g)return;const u=ae.getTime();u!==l.current&&(l.current=u,g(ae))},[ae,g]);const R=t.useMemo(()=>{if(!k)return null;const u=ae.getTime()-x;return Q?Q(u,ae):(fa[_]??hn)(u,B)},[k,ae,x,Q,_,B]),fe=t.useCallback((u,re,C)=>{p?.(sa(u,re,C,A))},[p,A]),ye=t.useCallback((u,re,C)=>{if(X){const S=Ue(X),de=S.hours*3600+S.minutes*60+S.seconds;if(u*3600+re*60+C<de)return[S.hours,S.minutes,S.seconds]}if(q){const S=Ue(q),de=S.hours*3600+S.minutes*60+S.seconds;if(u*3600+re*60+C>de)return[S.hours,S.minutes,S.seconds]}return[u,re,C]},[X,q]),be=t.useCallback(()=>{const u=h.hours>=12?h.hours-12:h.hours+12,[re,C,S]=ye(u,h.minutes,h.seconds);fe(re,C,S)},[fe,h,ye]),xe=t.useCallback(()=>{p?.("")},[p]),ve=t.useCallback(u=>{if(r||s)return;if(u.length===0){p?.("");return}const re=parseInt(u.slice(0,2)||"0",10),C=parseInt(u.slice(2,4)||"0",10),S=A?parseInt(u.slice(4,6)||"0",10):0,de=Math.max(0,Math.min(23,isNaN(re)?0:re)),j=Math.max(0,Math.min(59,isNaN(C)?0:C)),ee=Math.max(0,Math.min(59,isNaN(S)?0:S)),[oe,_e,v]=ye(de,j,ee);if(u.length<f){p?.(M(u));return}fe(oe,_e,v)},[r,s,A,f,M,ye,fe,p]),y=t.useCallback(u=>{const re=Z(u.currentTarget.value);ve(re)},[Z,ve]),G=t.useCallback(u=>{if(!(r||s)){if(u.key==="ArrowUp"||u.key==="ArrowDown"){u.preventDefault();const re=u.key==="ArrowUp"?1:-1,C=h.hours;let S=h.minutes,de=h.seconds;A?de=((de+re)%60+60)%60:S=((S+re*F)%60+60)%60;const[j,ee,oe]=ye(C,S,de);fe(j,ee,oe);return}u.key==="Escape"&&m&&(u.preventDefault(),p?.(""))}},[r,s,h,A,F,ye,fe,m,p]),O=h.hours>=12?"PM":"AM",Me=t.useCallback(u=>{u.target.select()},[]),W=t.useCallback(u=>{K?.(u)},[K]),ue=k&&R!=null&&e.jsxs("span",{className:"nice-timepicker__countdown",title:ae.toLocaleString(),"aria-live":"polite",children:[V&&e.jsx("span",{className:"nice-timepicker__countdown-label",children:V}),e.jsx("span",{className:"nice-timepicker__countdown-value",children:R})]});return e.jsxs("div",{ref:P,className:`nice-field nice-field--${d} ${L==="left"?"nice-field--label-left":""} ${ce?"nice-field--loading":""} ${$||""}`,style:{...I,...U!=null&&{"--nice-field-label-width":typeof U=="number"?`${U}px`:U},...z!=null&&{"--nice-field-control-width":typeof z=="number"?`${z}px`:z}},"aria-busy":ce||void 0,...H,children:[n&&e.jsx("label",{htmlFor:ie,className:`nice-field__label ${c?"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":""} ${s?"nice-timepicker--disabled":""} ${r?"nice-timepicker--readonly":""}`,children:[e.jsx("input",{ref:ne,id:ie,type:"text",inputMode:"numeric",autoComplete:"off",spellCheck:!1,className:"nice-timepicker__input nice-input__native nice-masked-input",value:ge,placeholder:A?"HH:MM:SS":"HH:MM",disabled:s||ce,readOnly:r,name:o,"aria-invalid":!!a,"aria-describedby":a?`${ie}-error`:i?`${ie}-helper`:void 0,"aria-label":N("datetime.time","Time"),style:{width:`${A?9:6}ch`,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontVariantNumeric:"tabular-nums"},onInput:y,onChange:()=>{},onKeyDown:G,onFocus:Me,onBlur:W}),se==="12"&&e.jsx("button",{type:"button",className:"nice-timepicker__ampm",disabled:s||r,onClick:be,"aria-label":N("datetime.toggleAmPm","Toggle AM/PM"),children:O}),T&&e.jsx("button",{type:"button",className:"nice-input__clear",disabled:s||r||!m,onClick:xe,"aria-label":N("controls.clear","Clear"),tabIndex:m?0:-1,children:"✕"})]}),ue,ce&&e.jsx("span",{className:"nice-field__spinner",children:e.jsx("span",{className:"nice-spinner nice-spinner--sm"})}),le==="right"&&a&&e.jsx("div",{id:`${ie}-error`,className:"nice-field__error",role:"alert",children:a}),le==="right"&&!a&&i&&e.jsx("div",{id:`${ie}-helper`,className:"nice-field__helper",children:i})]}),le!=="right"&&a&&e.jsx("div",{id:`${ie}-error`,className:"nice-field__error",role:"alert",children:a}),le!=="right"&&!a&&i&&e.jsx("div",{id:`${ie}-helper`,className:"nice-field__helper",children:i})]})});Ke.displayName="NiceTimePicker";const ua=Object.freeze(Object.defineProperty({__proto__:null,NiceTimePicker:Ke},Symbol.toStringTag,{value:"Module"})),yn=t.createContext(null),bn=()=>{const n=t.useContext(yn);if(!n)throw new Error("useUploadContext must be used within NiceFileUpload");return n},pa=()=>`file-${Date.now()}-${Math.random().toString(36).slice(2,11)}`,Ie=n=>{if(n===0)return"0 B";const i=1024,a=["B","KB","MB","GB","TB"],c=Math.floor(Math.log(n)/Math.log(i));return parseFloat((n/Math.pow(i,c)).toFixed(2))+" "+a[c]},xn=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")?"📃":"📁",vn=n=>n.startsWith("image/"),_n=n=>n.startsWith("video/"),ma=n=>n.startsWith("audio/"),ga=n=>{if(vn(n.type)||_n(n.type)||ma(n.type))return URL.createObjectURL(n)},ha=(n,i)=>async a=>{const c=new FormData;a.chunk?(c.append("chunk",a.chunk),c.append("chunkIndex",String(a.chunkIndex)),c.append("totalChunks",String(a.totalChunks)),c.append("fileName",a.file.name),c.append("fileId",a.fileId||"")):c.append("file",a.file);const s=new XMLHttpRequest;return new Promise((r,d)=>{s.upload.addEventListener("progress",o=>{o.lengthComputable&&a.onProgress&&a.onProgress(o.loaded/o.total*100)}),s.addEventListener("load",()=>{if(s.status>=200&&s.status<300)try{const o=JSON.parse(s.responseText);r({success:!0,url:o.url,fileId:o.fileId||o.id,metadata:o})}catch{r({success:!0,url:s.responseText})}else r({success:!1,error:`Upload failed: ${s.status} ${s.statusText}`})}),s.addEventListener("error",()=>{r({success:!1,error:"Network error"})}),s.addEventListener("abort",()=>{r({success:!1,error:"Upload cancelled"})}),a.signal&&a.signal.addEventListener("abort",()=>s.abort()),s.open("POST",n),i&&Object.entries(i).forEach(([o,b])=>{s.setRequestHeader(o,b)}),s.send(c)})},Ze=({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),"%"]})]})},on=({file:n,size:i="md",customRender:a})=>{if(a)return e.jsx(e.Fragment,{children:a(n)});const s={xxs:24,xs:32,sm:48,md:80,lg:120,xl:160,xxl:200}[i]??80;return n.previewUrl&&vn(n.type)?e.jsx("div",{className:"nice-upload-preview",style:{width:s,height:s},children:e.jsx("img",{src:n.previewUrl,alt:n.name,style:{width:"100%",height:"100%",objectFit:"cover",borderRadius:4}})}):n.previewUrl&&_n(n.type)?e.jsxs("div",{className:"nice-upload-preview",style:{width:s,height:s},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:s,height:s,fontSize:s*.5},children:xn(n.type)})},ya=({file:n,actions:i,showPreview:a=!0,previewSize:c="md",customRenderPreview:s,customRender:r,mode:d="list"})=>{const{disabled:o,readOnly:b}=bn();if(r)return e.jsx(e.Fragment,{children:r(n,i)});const $=()=>{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:xn(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:Ie(n.size)}),n.status==="uploading"&&e.jsx(Ze,{progress:n.progress,status:n.status}),$(),!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(on,{file:n,size:"lg",customRender:s}),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:Ie(n.size)})]}),n.status==="uploading"&&e.jsx(Ze,{progress:n.progress,status:n.status}),$(),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(on,{file:n,size:c,customRender:s}),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}),$()]}),e.jsx("span",{className:"nice-upload-item-size",children:Ie(n.size)}),n.status==="uploading"&&e.jsx(Ze,{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:"🗑️"})]})]})},ba=({files:n,mode:i="list",showPreview:a=!0,previewSize:c,renderPreview:s,renderFileItem:r})=>{const d=bn();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(ya,{file:o,actions:b,mode:i,showPreview:a,previewSize:c,customRenderPreview:s,customRender:r},o.id)})})},xa=({onFiles:n,accept:i,multiple:a=!0,disabled:c,readOnly:s,dropzoneText:r="Przeciągnij pliki tutaj lub",browseText:d="wybierz z dysku",dragActiveText:o="Upuść pliki tutaj",className:b,inputRef:$})=>{const[I,m]=t.useState(!1),p=t.useRef(0),K=t.useCallback(T=>{T.preventDefault(),T.stopPropagation(),p.current++,T.dataTransfer.items&&T.dataTransfer.items.length>0&&m(!0)},[]),se=t.useCallback(T=>{T.preventDefault(),T.stopPropagation(),p.current--,p.current===0&&m(!1)},[]),F=t.useCallback(T=>{T.preventDefault(),T.stopPropagation()},[]),A=t.useCallback(T=>{if(T.preventDefault(),T.stopPropagation(),m(!1),p.current=0,c||s)return;const L=Array.from(T.dataTransfer.files);L.length>0&&n(a?L:[L[0]])},[c,s,a,n]),X=t.useCallback(()=>{!c&&!s&&$.current&&$.current.click()},[c,s,$]),q=t.useCallback(T=>{const L=T.target.files?Array.from(T.target.files):[];L.length>0&&n(L),$.current&&($.current.value="")},[n,$]);return e.jsxs("div",{className:`nice-upload-dropzone ${I?"drag-active":""} ${c?"disabled":""} ${s?"readonly":""} ${b||""}`,onDragEnter:K,onDragLeave:se,onDragOver:F,onDrop:A,onClick:X,children:[e.jsx("input",{ref:$,type:"file",accept:i,multiple:a,onChange:q,style:{display:"none"},disabled:c||s}),e.jsxs("div",{className:"nice-upload-dropzone-content",children:[e.jsx("span",{className:"nice-upload-dropzone-icon",children:"📁"}),I?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:c||s,children:d})]})]})]})},sn=t.forwardRef((n,i)=>{const{accept:a,multiple:c=!0,maxFileSize:s,maxFiles:r,minFileSize:d,chunkSize:o=5*1024*1024,chunkThreshold:b=10*1024*1024,autoUpload:$=!1,uploadHandler:I,uploadUrl:m,uploadHeaders:p,onFilesAdded:K,onUploadComplete:se,onUploadError:F,onProgress:A,onFileRemoved:X,onChange:q,renderPreview:T,renderFileItem:L,showPreview:le=!0,showFileList:ce=!0,listMode:U="list",previewSize:z="md",dropzoneText:E,browseText:g,dragActiveText:k,disabled:_,readOnly:Q,dropzoneClassName:V,maxRetries:D=3,concurrentUploads:B=3,validateFile:H,keepFilesAfterUpload:P=!0,initialFiles:N=[],className:ie,style:ne,...h}=n,[f,M]=t.useState(N),Z=t.useRef(null),pe=t.useRef(new Map),ge=t.useRef([]),x=t.useRef(new Set);t.useEffect(()=>()=>{f.forEach(C=>{C.previewUrl&&URL.revokeObjectURL(C.previewUrl)})},[]),t.useEffect(()=>{q?.(f)},[f,q]);const Y=t.useCallback(()=>I||(m?ha(m,p):null),[I,m,p]),ae=t.useCallback(C=>{if(H){const S=H(C);if(S)return S}if(s&&C.size>s)return`Plik jest za duży. Maksymalny rozmiar: ${Ie(s)}`;if(d&&C.size<d)return`Plik jest za mały. Minimalny rozmiar: ${Ie(d)}`;if(a){const S=a.split(",").map(oe=>oe.trim().toLowerCase()),de=C.type.toLowerCase(),j="."+C.name.split(".").pop()?.toLowerCase();if(!S.some(oe=>oe.startsWith(".")?j===oe:oe.endsWith("/*")?de.startsWith(oe.replace("/*","/")):de===oe))return`Niedozwolony typ pliku. Akceptowane typy: ${a}`}return null},[H,s,d,a]),l=t.useCallback(C=>{if(_||Q)return;const S=f.length;let de=C;r&&S+de.length>r&&(de=de.slice(0,r-S));const j=de.map(ee=>{const oe=ae(ee);return{id:pa(),file:ee,name:ee.name,size:ee.size,type:ee.type,status:oe?"error":"pending",progress:0,error:oe||void 0,previewUrl:ga(ee)}});M(ee=>[...ee,...j]),K?.(j),$&&(j.filter(oe=>oe.status==="pending").forEach(oe=>{ge.current.push(oe.id)}),R())},[_,Q,f.length,r,ae,$,K]),R=t.useCallback(()=>{const C=Y();if(C)for(;ge.current.length>0&&x.current.size<B;){const S=ge.current.shift();S&&fe(S,C)}},[B,Y]),fe=t.useCallback(async(C,S)=>{const de=f.find(ee=>ee.id===C);if(!de||de.status==="uploading"||de.status==="success")return;const j=new AbortController;pe.current.set(C,j),x.current.add(C),M(ee=>ee.map(oe=>oe.id===C?{...oe,status:"uploading",progress:0,error:void 0}:oe));try{const ee=de.file;let oe;if(ee.size>b?oe=await ye(de,S,j.signal):oe=await S({file:ee,onProgress:_e=>{M(v=>v.map(J=>J.id===C?{...J,progress:_e}:J)),A?.(de,_e)},signal:j.signal}),oe.success)M(_e=>_e.map(v=>v.id===C?{...v,status:"success",progress:100,uploadedUrl:oe.url,uploadedAt:new Date}:v)),se?.({...de,status:"success",uploadedUrl:oe.url});else throw new Error(oe.error||"Upload failed")}catch(ee){if(ee.name==="AbortError"||ee.message==="Upload cancelled")M(oe=>oe.map(_e=>_e.id===C?{..._e,status:"cancelled",error:"Anulowano"}:_e));else{const oe=ee.message||"Błąd uploadu";M(_e=>_e.map(v=>v.id===C?{...v,status:"error",error:oe}:v)),F?.(de,oe)}}finally{pe.current.delete(C),x.current.delete(C),R()}},[f,b,A,se,F,R]),ye=async(C,S,de)=>{const j=C.file,ee=Math.ceil(j.size/o);let oe=0,_e={success:!1};for(let v=0;v<ee;v++){if(de.aborted)throw new Error("Upload cancelled");const J=v*o,te=Math.min(J+o,j.size),Ce=j.slice(J,te);let we=0,$e=!1;for(;!$e&&we<D;)try{_e=await S({file:j,chunk:Ce,chunkIndex:v,totalChunks:ee,fileId:C.id,onProgress:me=>{const Ne=(oe+Ce.size*me/100)/j.size*100;M(he=>he.map(je=>je.id===C.id?{...je,progress:Ne}:je))},signal:de}),_e.success?($e=!0,oe+=Ce.size):we++}catch(me){if(we++,we>=D)throw me}if(!$e)throw new Error(`Failed to upload chunk ${v+1}/${ee}`)}return _e},be=t.useCallback(C=>{const S=Y();if(!S){console.error("No upload handler configured");return}fe(C,S)},[Y,fe]),xe=t.useCallback(C=>{const S=pe.current.get(C);S&&S.abort(),M(de=>de.map(j=>j.id===C&&j.status==="uploading"?{...j,status:"cancelled",error:"Anulowano"}:j))},[]),ve=t.useCallback(C=>{M(S=>S.map(de=>de.id===C?{...de,status:"pending",progress:0,error:void 0}:de)),be(C)},[be]),y=t.useCallback(C=>{const S=f.find(de=>de.id===C);if(S){const de=pe.current.get(C);de&&de.abort(),S.previewUrl&&URL.revokeObjectURL(S.previewUrl),M(j=>j.filter(ee=>ee.id!==C)),X?.(S)}},[f,X]),G=t.useCallback(()=>{f.filter(S=>S.status==="pending").forEach(S=>{ge.current.push(S.id)}),R()},[f,R]),O=t.useCallback(()=>{pe.current.forEach(C=>C.abort()),M(C=>C.map(S=>S.status==="uploading"?{...S,status:"cancelled",error:"Anulowano"}:S))},[]),Me=t.useCallback(()=>{O(),f.forEach(C=>{C.previewUrl&&URL.revokeObjectURL(C.previewUrl)}),M([])},[O,f]),W=t.useCallback(()=>{f.filter(S=>S.status==="error").forEach(S=>ve(S.id))},[f,ve]),ue=t.useCallback(()=>{Z.current?.click()},[]);t.useImperativeHandle(i,()=>({addFiles:l,uploadAll:G,cancelAll:O,clearAll:Me,getFiles:()=>f,getFile:C=>f.find(S=>S.id===C),retryFailed:W,openFileBrowser:ue}),[l,G,O,Me,f,W,ue]);const u=t.useMemo(()=>({files:f,uploadFile:be,cancelFile:xe,retryFile:ve,removeFile:y,disabled:_,readOnly:Q}),[f,be,xe,ve,y,_,Q]),re=t.useMemo(()=>({total:f.length,pending:f.filter(C=>C.status==="pending").length,uploading:f.filter(C=>C.status==="uploading").length,success:f.filter(C=>C.status==="success").length,error:f.filter(C=>C.status==="error").length}),[f]);return e.jsx(yn.Provider,{value:u,children:e.jsxs("div",{className:`nice-file-upload ${_?"disabled":""} ${Q?"readonly":""} ${ie||""}`,style:ne,...h,children:[!Q&&e.jsx(xa,{onFiles:l,accept:a,multiple:c,disabled:_,readOnly:Q,dropzoneText:E,browseText:g,dragActiveText:k,className:V,inputRef:Z}),ce&&f.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"nice-upload-stats",children:[e.jsxs("span",{children:[re.total," ",re.total===1?"plik":"plików"]}),re.pending>0&&e.jsxs("span",{className:"pending",children:[re.pending," oczekuje"]}),re.uploading>0&&e.jsxs("span",{className:"uploading",children:[re.uploading," wysyłanie"]}),re.success>0&&e.jsxs("span",{className:"success",children:[re.success," przesłano"]}),re.error>0&&e.jsxs("span",{className:"error",children:[re.error," błędów"]})]}),!Q&&!_&&re.pending>0&&e.jsxs("div",{className:"nice-upload-actions",children:[e.jsxs("button",{onClick:G,className:"nice-upload-btn primary",children:["Wyślij wszystkie (",re.pending,")"]}),re.error>0&&e.jsxs("button",{onClick:W,className:"nice-upload-btn secondary",children:["Ponów nieudane (",re.error,")"]}),e.jsx("button",{onClick:Me,className:"nice-upload-btn danger",children:"Wyczyść"})]}),e.jsx(ba,{files:f,mode:U,showPreview:le,previewSize:z,renderPreview:T,renderFileItem:L})]}),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 var(--nice-border, #d1d5db);
|
|
13
|
+
border-radius: var(--nice-radius-xl, 12px);
|
|
14
|
+
padding: var(--nice-space-10, 40px) var(--nice-space-6, 24px);
|
|
15
|
+
text-align: center;
|
|
16
|
+
cursor: pointer;
|
|
17
|
+
transition: all 0.2s ease;
|
|
18
|
+
background: var(--nice-bg-secondary, #fafafa);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.nice-upload-dropzone:hover:not(.disabled):not(.readonly) {
|
|
22
|
+
border-color: var(--nice-primary, #3b82f6);
|
|
23
|
+
background: var(--nice-primary-bg, #eff6ff);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.nice-upload-dropzone.drag-active {
|
|
27
|
+
border-color: var(--nice-primary, #3b82f6);
|
|
28
|
+
background: var(--nice-primary-bg, #dbeafe);
|
|
29
|
+
transform: scale(1.01);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.nice-upload-dropzone.disabled,
|
|
33
|
+
.nice-upload-dropzone.readonly {
|
|
34
|
+
cursor: default;
|
|
35
|
+
background: var(--nice-bg-secondary, #f3f4f6);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.nice-upload-dropzone-content {
|
|
39
|
+
display: flex;
|
|
40
|
+
flex-direction: column;
|
|
41
|
+
align-items: center;
|
|
42
|
+
gap: var(--nice-space-3, 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: var(--nice-text-secondary, #6b7280);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.nice-upload-dropzone-text.active {
|
|
55
|
+
font-size: 16px;
|
|
56
|
+
color: var(--nice-primary, #3b82f6);
|
|
57
|
+
font-weight: 500;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.nice-upload-browse-btn {
|
|
61
|
+
background: var(--nice-primary, #3b82f6);
|
|
62
|
+
color: white;
|
|
63
|
+
border: none;
|
|
64
|
+
padding: var(--nice-space-2, 8px) var(--nice-space-5, 20px);
|
|
65
|
+
border-radius: var(--nice-radius-md, 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: var(--nice-primary-hover, #2563eb);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.nice-upload-browse-btn:disabled {
|
|
76
|
+
background: var(--nice-text-muted, #9ca3af);
|
|
77
|
+
cursor: not-allowed;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.nice-upload-stats {
|
|
81
|
+
display: flex;
|
|
82
|
+
gap: var(--nice-space-4, 16px);
|
|
83
|
+
padding: var(--nice-space-3, 12px) 0;
|
|
84
|
+
font-size: 13px;
|
|
85
|
+
color: var(--nice-text-secondary, #6b7280);
|
|
86
|
+
border-bottom: 1px solid var(--border-color, #e5e7eb);
|
|
87
|
+
margin-top: var(--nice-space-4, 16px);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.nice-upload-stats .pending { color: var(--nice-warning, #f59e0b); }
|
|
91
|
+
.nice-upload-stats .uploading { color: var(--nice-primary, #3b82f6); }
|
|
92
|
+
.nice-upload-stats .success { color: var(--nice-success, #22c55e); }
|
|
93
|
+
.nice-upload-stats .error { color: var(--nice-danger, #ef4444); }
|
|
94
|
+
|
|
95
|
+
.nice-upload-actions {
|
|
96
|
+
display: flex;
|
|
97
|
+
gap: var(--nice-space-2, 8px);
|
|
98
|
+
padding: var(--nice-space-3, 12px) 0;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.nice-upload-btn {
|
|
102
|
+
padding: var(--nice-space-1-5, 6px) var(--nice-space-3-5, 14px);
|
|
103
|
+
border-radius: var(--nice-radius-md, 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: var(--nice-primary, #3b82f6);
|
|
112
|
+
color: white;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.nice-upload-btn.primary:hover {
|
|
116
|
+
background: var(--nice-primary-hover, #2563eb);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.nice-upload-btn.secondary {
|
|
120
|
+
background: white;
|
|
121
|
+
border-color: var(--nice-border, #d1d5db);
|
|
122
|
+
color: var(--nice-text, #374151);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.nice-upload-btn.secondary:hover {
|
|
126
|
+
background: var(--nice-bg-secondary, #f3f4f6);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.nice-upload-btn.danger {
|
|
130
|
+
background: white;
|
|
131
|
+
border-color: var(--nice-danger-bg, #fca5a5);
|
|
132
|
+
color: var(--nice-danger-dark, #dc2626);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.nice-upload-btn.danger:hover {
|
|
136
|
+
background: var(--nice-danger-bg, #fef2f2);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.nice-upload-btn.upload { background: var(--nice-success, #22c55e); color: white; border: none; }
|
|
140
|
+
.nice-upload-btn.cancel { background: var(--nice-warning, #f59e0b); color: white; border: none; }
|
|
141
|
+
.nice-upload-btn.retry { background: var(--nice-primary, #3b82f6); color: white; border: none; }
|
|
142
|
+
.nice-upload-btn.remove { background: var(--nice-danger, #ef4444); color: white; border: none; }
|
|
143
|
+
|
|
144
|
+
.nice-upload-list {
|
|
145
|
+
margin-top: var(--nice-space-3, 12px);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.nice-upload-list.grid {
|
|
149
|
+
display: grid;
|
|
150
|
+
grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
|
|
151
|
+
gap: var(--nice-space-4, 16px);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.nice-upload-item {
|
|
155
|
+
display: flex;
|
|
156
|
+
align-items: center;
|
|
157
|
+
gap: var(--nice-space-3, 12px);
|
|
158
|
+
padding: var(--nice-space-3, 12px);
|
|
159
|
+
background: var(--nice-bg-secondary, #f9fafb);
|
|
160
|
+
border-radius: var(--nice-radius-lg, 8px);
|
|
161
|
+
border: 1px solid var(--border-color, #e5e7eb);
|
|
162
|
+
margin-bottom: var(--nice-space-2, 8px);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.nice-upload-item.error {
|
|
166
|
+
border-color: var(--nice-danger-bg, #fca5a5);
|
|
167
|
+
background: var(--nice-danger-bg, #fef2f2);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.nice-upload-item.success {
|
|
171
|
+
border-color: var(--nice-success-light, #86efac);
|
|
172
|
+
background: var(--nice-success-bg, #f0fdf4);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
.nice-upload-item.grid {
|
|
176
|
+
flex-direction: column;
|
|
177
|
+
text-align: center;
|
|
178
|
+
padding: var(--nice-space-4, 16px);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.nice-upload-item.compact {
|
|
182
|
+
padding: var(--nice-space-2, 8px) var(--nice-space-3, 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: var(--nice-border, #e5e7eb);
|
|
192
|
+
border-radius: var(--nice-radius-md, 6px);
|
|
193
|
+
overflow: hidden;
|
|
194
|
+
position: relative;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
.nice-upload-preview-icon {
|
|
198
|
+
background: var(--nice-bg-secondary, #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: var(--nice-space-2, 8px);
|
|
215
|
+
margin-bottom: var(--nice-space-1, 4px);
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
.nice-upload-item-name {
|
|
219
|
+
font-weight: 500;
|
|
220
|
+
font-size: 14px;
|
|
221
|
+
color: var(--nice-text, #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: var(--nice-text-secondary, #6b7280);
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
.nice-upload-item-error {
|
|
233
|
+
font-size: 12px;
|
|
234
|
+
color: var(--nice-danger-dark, #dc2626);
|
|
235
|
+
margin-top: var(--nice-space-1, 4px);
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
.nice-upload-item-link {
|
|
239
|
+
font-size: 12px;
|
|
240
|
+
color: var(--nice-primary, #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: var(--nice-space-1, 4px);
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
.nice-upload-item-actions button {
|
|
254
|
+
padding: var(--nice-space-1, 4px) var(--nice-space-2, 8px);
|
|
255
|
+
font-size: 12px;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
.nice-upload-item-remove {
|
|
259
|
+
background: none;
|
|
260
|
+
border: none;
|
|
261
|
+
color: var(--nice-text-muted, #9ca3af);
|
|
262
|
+
cursor: pointer;
|
|
263
|
+
padding: var(--nice-space-1, 4px);
|
|
264
|
+
font-size: 14px;
|
|
265
|
+
line-height: 1;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
.nice-upload-item-remove:hover {
|
|
269
|
+
color: var(--nice-danger, #ef4444);
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
.nice-upload-badge {
|
|
273
|
+
font-size: 11px;
|
|
274
|
+
padding: var(--nice-space-0-5, 2px) var(--nice-space-2, 8px);
|
|
275
|
+
border-radius: var(--nice-radius-lg, 10px);
|
|
276
|
+
font-weight: 500;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
.nice-upload-badge.pending { background: var(--nice-warning-bg, #fef3c7); color: var(--nice-warning-dark, #92400e); }
|
|
280
|
+
.nice-upload-badge.uploading { background: var(--nice-primary-bg, #dbeafe); color: var(--nice-primary-dark, #1e40af); }
|
|
281
|
+
.nice-upload-badge.success { background: var(--nice-success-bg, #dcfce7); color: var(--nice-success-dark, #166534); }
|
|
282
|
+
.nice-upload-badge.error { background: var(--nice-danger-bg, #fee2e2); color: var(--nice-danger-dark, #991b1b); }
|
|
283
|
+
.nice-upload-badge.cancelled { background: var(--nice-bg-secondary, #f3f4f6); color: var(--nice-text-secondary, #4b5563); }
|
|
284
|
+
|
|
285
|
+
.nice-upload-progress {
|
|
286
|
+
height: 6px;
|
|
287
|
+
background: var(--nice-border, #e5e7eb);
|
|
288
|
+
border-radius: var(--nice-radius-sm, 3px);
|
|
289
|
+
overflow: hidden;
|
|
290
|
+
margin-top: var(--nice-space-1-5, 6px);
|
|
291
|
+
position: relative;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
.nice-upload-progress-bar {
|
|
295
|
+
height: 100%;
|
|
296
|
+
transition: width 0.2s ease;
|
|
297
|
+
border-radius: var(--nice-radius-sm, 3px);
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
.nice-upload-progress-text {
|
|
301
|
+
position: absolute;
|
|
302
|
+
right: 0;
|
|
303
|
+
top: -18px;
|
|
304
|
+
font-size: 11px;
|
|
305
|
+
color: var(--nice-text-secondary, #6b7280);
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
.nice-upload-item.compact .nice-upload-progress {
|
|
309
|
+
flex: 1;
|
|
310
|
+
margin: 0 var(--nice-space-2, 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: var(--nice-space-2, 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: var(--nice-space-6, 24px) var(--nice-space-4, 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
|
+
`})]})})});sn.displayName="NiceFileUpload";const va=({onFiles:n,accept:i,multiple:a=!0,disabled:c,children:s,dropzoneText:r="Przeciągnij pliki tutaj",dragActiveText:d="Upuść pliki",className:o,style:b,...$})=>{const[I,m]=t.useState(!1),p=t.useRef(null),K=t.useCallback(q=>{if(q.preventDefault(),m(!1),c)return;const T=Array.from(q.dataTransfer.files);T.length>0&&n(a?T:[T[0]])},[c,a,n]),se=t.useCallback(q=>{q.preventDefault(),c||m(!0)},[c]),F=t.useCallback(()=>{m(!1)},[]),A=t.useCallback(()=>{c||p.current?.click()},[c]),X=t.useCallback(q=>{const T=q.target.files?Array.from(q.target.files):[];T.length>0&&n(T),p.current&&(p.current.value="")},[n]);return e.jsxs("div",{className:`nice-dropzone ${I?"active":""} ${c?"disabled":""} ${o||""}`,style:b,onDrop:K,onDragOver:se,onDragLeave:F,onClick:A,...$,children:[e.jsx("input",{ref:p,type:"file",accept:i,multiple:a,onChange:X,style:{display:"none"},disabled:c}),s||e.jsx("div",{className:"nice-dropzone-content",children:e.jsx("span",{children:I?d:r})}),e.jsx("style",{children:`
|
|
340
|
+
.nice-dropzone {
|
|
341
|
+
border: 2px dashed var(--nice-border, #d1d5db);
|
|
342
|
+
border-radius: var(--nice-radius-lg, 8px);
|
|
343
|
+
padding: var(--nice-space-6, 24px);
|
|
344
|
+
text-align: center;
|
|
345
|
+
cursor: pointer;
|
|
346
|
+
transition: all 0.2s;
|
|
347
|
+
}
|
|
348
|
+
.nice-dropzone:hover:not(.disabled) {
|
|
349
|
+
border-color: var(--nice-primary, #3b82f6);
|
|
350
|
+
background: var(--nice-primary-bg, #eff6ff);
|
|
351
|
+
}
|
|
352
|
+
.nice-dropzone.active {
|
|
353
|
+
border-color: var(--nice-primary, #3b82f6);
|
|
354
|
+
background: var(--nice-primary-bg, #dbeafe);
|
|
355
|
+
}
|
|
356
|
+
.nice-dropzone.disabled {
|
|
357
|
+
opacity: 0.5;
|
|
358
|
+
cursor: not-allowed;
|
|
359
|
+
}
|
|
360
|
+
.nice-dropzone-content {
|
|
361
|
+
color: var(--nice-text-secondary, #6b7280);
|
|
362
|
+
font-size: 14px;
|
|
363
|
+
}
|
|
364
|
+
`})]})},_a=({onFiles:n,accept:i,multiple:a=!0,disabled:c,children:s,className:r,style:d,...o})=>{const b=t.useRef(null),$=t.useCallback(()=>{c||b.current?.click()},[c]),I=t.useCallback(m=>{const p=m.target.files?Array.from(m.target.files):[];p.length>0&&n(p),b.current&&(b.current.value="")},[n]);return e.jsxs(e.Fragment,{children:[e.jsx("button",{type:"button",onClick:$,disabled:c,className:`nice-file-picker-btn ${r||""}`,style:d,...o,children:s||"Wybierz pliki"}),e.jsx("input",{ref:b,type:"file",accept:i,multiple:a,onChange:I,style:{display:"none"},disabled:c}),e.jsx("style",{children:`
|
|
365
|
+
.nice-file-picker-btn {
|
|
366
|
+
padding: var(--nice-space-2, 8px) var(--nice-space-4, 16px);
|
|
367
|
+
background: var(--nice-primary, #3b82f6);
|
|
368
|
+
color: white;
|
|
369
|
+
border: none;
|
|
370
|
+
border-radius: var(--nice-radius-md, 6px);
|
|
371
|
+
cursor: pointer;
|
|
372
|
+
font-size: 14px;
|
|
373
|
+
transition: background 0.2s;
|
|
374
|
+
}
|
|
375
|
+
.nice-file-picker-btn:hover:not(:disabled) {
|
|
376
|
+
background: var(--nice-primary-hover, #2563eb);
|
|
377
|
+
}
|
|
378
|
+
.nice-file-picker-btn:disabled {
|
|
379
|
+
opacity: 0.5;
|
|
380
|
+
cursor: not-allowed;
|
|
381
|
+
}
|
|
382
|
+
`})]})},Cn=({items:n,data:i,onFieldChange:a,onSubmit:c,dataSource:s,recordKey:r,columns:d=1,responsiveColumns:o,gap:b=16,labelPosition:$="top",size:I="md",readOnly:m,disabled:p,className:K,style:se,accessMode:F,id:A,autoSaveDelay:X,onDirtyChange:q,showActions:T,submitLabel:L="Submit",resetLabel:le="Reset",onCancel:ce,cancelLabel:U="Cancel"})=>{const z=w.Zs(F,A),E=z==="hidden";z==="disabled"&&(p=!0),z==="readOnly"&&(m=!0);const g=w.qa(s??null,r),k=!!s&&r!=null,_=k?g.editData:i??{},[Q]=t.useState(()=>({..._})),[V,D]=t.useState([]),B=t.useMemo(()=>Object.keys(_).some(y=>_[y]!==Q[y]),[_,Q]),H=t.useRef(!1);t.useEffect(()=>{B!==H.current&&(H.current=B,q?.(B))},[B,q]);const P=t.useRef(null),N=t.useCallback(()=>{X&&(P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{k?g.save():c?.(_)},X))},[X,k,g,c,_]),ie=t.useCallback((y,G)=>{m||p||(D(O=>[...O,{field:y,prev:_[y]}]),k?g.set(y,G):a?.(y,G),N())},[k,g,a,m,p,_,N]),ne=t.useCallback(()=>{if(V.length===0)return;const y=V[V.length-1];D(G=>G.slice(0,-1)),k?g.set(y.field,y.prev):a?.(y.field,y.prev)},[V,k,g,a]),h=t.useCallback(y=>{y.preventDefault(),P.current&&clearTimeout(P.current),k?g.save():c?.(_)},[_,c,k,g]),f=t.useRef(null),[M,Z]=t.useState(d);t.useEffect(()=>{if(!o||!f.current){Z(d);return}const y=f.current,G=new ResizeObserver(O=>{const Me=O[0]?.contentRect.width??0,W=Object.keys(o).map(Number).sort((ue,u)=>u-ue);for(const ue of W)if(Me>=ue){Z(o[ue]);return}Z(d)});return G.observe(y),()=>G.disconnect()},[o,d]);const pe=t.useMemo(()=>n.filter(y=>!(y.visible===!1||y.visibleWhen&&!y.visibleWhen(_))),[n,_]),ge=t.useMemo(()=>{const y=[];let G=null;for(const O of pe)!G||G.name!==O.group?(G={name:O.group,items:[O]},y.push(G)):G.items.push(O);return y},[pe]),x=t.useCallback(y=>{const G=_[y.field]!==void 0?_[y.field]:y.defaultValue,O=u=>ie(y.field,u);if(y.render)return y.render(G,O);const Me=y.type||"text",W=y.options?.map(u=>typeof u=="string"?{label:u,value:u}:{label:u.label,value:String(u.value)}),ue={size:I,disabled:p,readOnly:m};switch(Me){case"number":return e.jsx(ke.NiceNumberInput,{...ue,value:G??null,onChange:u=>O(u),required:y.required});case"currency":return e.jsx(ke.NiceNumberInput,{...ue,value:G??null,onChange:u=>O(u),required:y.required,precision:y.precision??2,step:y.step??100,suffix:y.unit??"PLN",formatPreset:"money"});case"textarea":return e.jsx(Be,{...ue,value:G??"",onChange:u=>O(u),rows:3});case"address":return e.jsx(nn,{...ue,value:G??{},onChange:u=>O(u),required:y.required,columns:y.columns??2});case"select":return e.jsx(ke.NiceSelect,{...ue,value:G??"",onChange:u=>O(u),options:W??[]});case"autocomplete":return e.jsx(dn,{...ue,value:G??"",onChange:u=>O(u),options:W??[],suggestions:(W??[]).map(u=>u.label)});case"radio":return e.jsx(Qe,{...ue,value:G??"",onChange:u=>O(u),options:W??[]});case"checkbox":return e.jsx(ke.NiceCheckbox,{...ue,checked:!!G,onChange:u=>O(u),label:y.label});case"toggle":return e.jsx(ke.NiceToggle,{...ue,checked:!!G,onChange:u=>O(u)});case"date":return e.jsx(He,{...ue,value:G??"",onChange:u=>O(u)});case"time":return e.jsx(Ke,{...ue,value:G??"",onChange:u=>O(u)});case"datetime":return e.jsx(tn,{...ue,value:G??"",onChange:u=>O(u)});case"color":return e.jsx(ke.NiceColorPicker,{...ue,value:G??"var(--text-primary, #000000)",onChange:u=>O(u)});case"slider":return e.jsx(Pe,{...ue,value:typeof G=="number"?G:0,onChange:u=>O(u)});case"rating":return e.jsx(Ge,{...ue,value:typeof G=="number"?G:0,onChange:u=>O(u)});case"password":return e.jsx(We,{...ue,value:G??"",onChange:u=>O(u),required:y.required});case"phone":case"tel":return e.jsx(en,{...ue,value:G??"",onChange:u=>O(u)});case"country":return e.jsx(an,{...ue,value:G??"",onChange:u=>O(u)});case"tags":return e.jsx(fn,{...ue,value:Array.isArray(G)?G:[],onChange:u=>O(u),options:W??[]});case"masked":return e.jsx(Xe,{...ue,value:G??"",mask:y.mask??"999-999-9999",onChange:u=>O(u)});case"file":return e.jsx(sn,{...ue,onFilesAdded:u=>O(u)});case"email":return e.jsx(ke.NiceTextInput,{...ue,type:"email",value:G??"",onChange:u=>O(u),required:y.required});case"url":return e.jsx(ke.NiceTextInput,{...ue,type:"url",value:G??"",onChange:u=>O(u),required:y.required});default:return e.jsx(ke.NiceTextInput,{...ue,value:G??"",onChange:u=>O(u),required:y.required})}},[_,ie,p,m,I]),Y=y=>e.jsxs("div",{className:"nice-form__item",style:{gridColumn:y.colSpan?`span ${y.colSpan}`:void 0},children:[y.label&&e.jsxs("label",{className:"nice-form__label",children:[y.label,y.required&&e.jsx("span",{className:"nice-field__required",children:"*"})]}),e.jsx("div",{className:"nice-form__control",children:x(y)}),y.hint&&e.jsx("div",{className:"nice-form__hint",children:y.hint})]},y.field),ae={display:"grid",gridTemplateColumns:`repeat(${M}, 1fr)`,gap:b},l=ge.some(y=>y.name!=null),R=t.useMemo(()=>{const y=new Set,G=[];for(const O of pe)O.tab&&!y.has(O.tab)&&(y.add(O.tab),G.push(O.tab));return G},[pe]),fe=R.length>0,[ye,be]=t.useState("");t.useEffect(()=>{fe&&!R.includes(ye)&&be(R[0])},[fe,R,ye]);const xe=y=>{const G=[];let O=null;for(const W of y)!O||O.name!==W.group?(O={name:W.group,items:[W]},G.push(O)):O.items.push(W);return G.some(W=>W.name!=null)?G.map((W,ue)=>e.jsxs("fieldset",{className:W.name?"nice-form__group":"nice-form__group nice-form__group--no-title",children:[W.name&&e.jsx("legend",{className:"nice-form__group-title",children:W.name}),e.jsx("div",{style:ae,children:W.items.map(Y)})]},ue)):e.jsx("div",{style:ae,children:y.map(Y)})},ve=T?e.jsxs("div",{className:"nice-form__actions",children:[e.jsxs("div",{className:"nice-form__actions-left",children:[ce&&e.jsx(ke.NiceButton,{type:"button",variant:"secondary",size:I,onClick:ce,children:U}),e.jsx(ke.NiceButton,{type:"button",variant:"ghost",size:I,onClick:ne,disabled:V.length===0,children:le})]}),e.jsx("div",{className:"nice-form__actions-right",children:e.jsx(ke.NiceButton,{type:"submit",variant:"primary",size:I,children:L})})]}):null;return E?null:e.jsxs("form",{ref:f,className:`nice-form nice-form--label-${$}${B?" nice-form--dirty":""} ${K||""}`,style:l||fe?{...se}:{...ae,...se},onSubmit:h,noValidate:!0,children:[fe?e.jsx(ke.NiceTabs,{className:"nice-form__tabs",activeTab:ye||R[0],onChange:be,tabs:R.map(y=>({id:y,label:y,content:e.jsx("div",{className:"nice-form__tab-panel",children:xe(pe.filter(G=>(G.tab??R[0])===y))})}))}):l?ge.map((y,G)=>e.jsxs("fieldset",{className:y.name?"nice-form__group":"nice-form__group nice-form__group--no-title",children:[y.name&&e.jsx("legend",{className:"nice-form__group-title",children:y.name}),e.jsx("div",{style:ae,children:y.items.map(Y)})]},G)):pe.map(Y),ve]})};Cn.displayName="NiceForm";exports.COUNTRIES=gn;exports.FlagIcon=Oe;exports.FlagSwatch=pn;exports.MASK_PRESETS=un;exports.NiceAddress=nn;exports.NiceAutocomplete=dn;exports.NiceCountryPicker=an;exports.NiceDatePicker=He;exports.NiceDatePicker$1=In;exports.NiceDateTimePicker=tn;exports.NiceDropZone=va;exports.NiceFilePickerButton=_a;exports.NiceFileUpload=sn;exports.NiceForm=Cn;exports.NiceMaskedInput=Xe;exports.NicePasswordInput=We;exports.NicePhoneInput=en;exports.NiceRadioGroup=Qe;exports.NiceRadioGroup$1=Ln;exports.NiceRating=Ge;exports.NiceRating$1=Qn;exports.NiceSlider=Pe;exports.NiceSlider$1=Un;exports.NiceTagBox=fn;exports.NiceTextArea=Be;exports.NiceTextArea$1=Mn;exports.NiceTimePicker=Ke;exports.NiceTimePicker$1=ua;exports.ThemePreviewSwatch=aa;exports.useDropdownAlignment=mn;
|