@nice2dev/ui 1.0.8 → 1.0.10

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