@abduljebar/text-editor 1.0.7 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/App.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import './index.css';
1
2
  declare function App(): import("react/jsx-runtime").JSX.Element;
2
3
  export default App;
3
4
  //# sourceMappingURL=App.d.ts.map
package/dist/App.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAKA,iBAAS,GAAG,4CAqCX;AAED,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAGrB,iBAAS,GAAG,4CAaX;AAED,eAAe,GAAG,CAAC"}
package/dist/index.css ADDED
@@ -0,0 +1 @@
1
+ @layer theme,base,components,utilities;@layer theme{@theme default{ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --color-red-50: oklch(97.1% .013 17.38); --color-red-100: oklch(93.6% .032 17.717); --color-red-200: oklch(88.5% .062 18.334); --color-red-300: oklch(80.8% .114 19.571); --color-red-400: oklch(70.4% .191 22.216); --color-red-500: oklch(63.7% .237 25.331); --color-red-600: oklch(57.7% .245 27.325); --color-red-700: oklch(50.5% .213 27.518); --color-red-800: oklch(44.4% .177 26.899); --color-red-900: oklch(39.6% .141 25.723); --color-red-950: oklch(25.8% .092 26.042); --color-orange-50: oklch(98% .016 73.684); --color-orange-100: oklch(95.4% .038 75.164); --color-orange-200: oklch(90.1% .076 70.697); --color-orange-300: oklch(83.7% .128 66.29); --color-orange-400: oklch(75% .183 55.934); --color-orange-500: oklch(70.5% .213 47.604); --color-orange-600: oklch(64.6% .222 41.116); --color-orange-700: oklch(55.3% .195 38.402); --color-orange-800: oklch(47% .157 37.304); --color-orange-900: oklch(40.8% .123 38.172); --color-orange-950: oklch(26.6% .079 36.259); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-100: oklch(96.2% .059 95.617); --color-amber-200: oklch(92.4% .12 95.746); --color-amber-300: oklch(87.9% .169 91.605); --color-amber-400: oklch(82.8% .189 84.429); --color-amber-500: oklch(76.9% .188 70.08); --color-amber-600: oklch(66.6% .179 58.318); --color-amber-700: oklch(55.5% .163 48.998); --color-amber-800: oklch(47.3% .137 46.201); --color-amber-900: oklch(41.4% .112 45.904); --color-amber-950: oklch(27.9% .077 45.635); --color-yellow-50: oklch(98.7% .026 102.212); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-200: oklch(94.5% .129 101.54); --color-yellow-300: oklch(90.5% .182 98.111); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-yellow-600: oklch(68.1% .162 75.834); --color-yellow-700: oklch(55.4% .135 66.442); --color-yellow-800: oklch(47.6% .114 61.907); --color-yellow-900: oklch(42.1% .095 57.708); --color-yellow-950: oklch(28.6% .066 53.813); --color-lime-50: oklch(98.6% .031 120.757); --color-lime-100: oklch(96.7% .067 122.328); --color-lime-200: oklch(93.8% .127 124.321); --color-lime-300: oklch(89.7% .196 126.665); --color-lime-400: oklch(84.1% .238 128.85); --color-lime-500: oklch(76.8% .233 130.85); --color-lime-600: oklch(64.8% .2 131.684); --color-lime-700: oklch(53.2% .157 131.589); --color-lime-800: oklch(45.3% .124 130.933); --color-lime-900: oklch(40.5% .101 131.063); --color-lime-950: oklch(27.4% .072 132.109); --color-green-50: oklch(98.2% .018 155.826); --color-green-100: oklch(96.2% .044 156.743); --color-green-200: oklch(92.5% .084 155.995); --color-green-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --color-green-500: oklch(72.3% .219 149.579); --color-green-600: oklch(62.7% .194 149.214); --color-green-700: oklch(52.7% .154 150.069); --color-green-800: oklch(44.8% .119 151.328); --color-green-900: oklch(39.3% .095 152.535); --color-green-950: oklch(26.6% .065 152.934); --color-emerald-50: oklch(97.9% .021 166.113); --color-emerald-100: oklch(95% .052 163.051); --color-emerald-200: oklch(90.5% .093 164.15); --color-emerald-300: oklch(84.5% .143 164.978); --color-emerald-400: oklch(76.5% .177 163.223); --color-emerald-500: oklch(69.6% .17 162.48); --color-emerald-600: oklch(59.6% .145 163.225); --color-emerald-700: oklch(50.8% .118 165.612); --color-emerald-800: oklch(43.2% .095 166.913); --color-emerald-900: oklch(37.8% .077 168.94); --color-emerald-950: oklch(26.2% .051 172.552); --color-teal-50: oklch(98.4% .014 180.72); --color-teal-100: oklch(95.3% .051 180.801); --color-teal-200: oklch(91% .096 180.426); --color-teal-300: oklch(85.5% .138 181.071); --color-teal-400: oklch(77.7% .152 181.912); --color-teal-500: oklch(70.4% .14 182.503); --color-teal-600: oklch(60% .118 184.704); --color-teal-700: oklch(51.1% .096 186.391); --color-teal-800: oklch(43.7% .078 188.216); --color-teal-900: oklch(38.6% .063 188.416); --color-teal-950: oklch(27.7% .046 192.524); --color-cyan-50: oklch(98.4% .019 200.873); --color-cyan-100: oklch(95.6% .045 203.388); --color-cyan-200: oklch(91.7% .08 205.041); --color-cyan-300: oklch(86.5% .127 207.078); --color-cyan-400: oklch(78.9% .154 211.53); --color-cyan-500: oklch(71.5% .143 215.221); --color-cyan-600: oklch(60.9% .126 221.723); --color-cyan-700: oklch(52% .105 223.128); --color-cyan-800: oklch(45% .085 224.283); --color-cyan-900: oklch(39.8% .07 227.392); --color-cyan-950: oklch(30.2% .056 229.695); --color-sky-50: oklch(97.7% .013 236.62); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-200: oklch(90.1% .058 230.902); --color-sky-300: oklch(82.8% .111 230.318); --color-sky-400: oklch(74.6% .16 232.661); --color-sky-500: oklch(68.5% .169 237.323); --color-sky-600: oklch(58.8% .158 241.966); --color-sky-700: oklch(50% .134 242.749); --color-sky-800: oklch(44.3% .11 240.79); --color-sky-900: oklch(39.1% .09 240.876); --color-sky-950: oklch(29.3% .066 243.157); --color-blue-50: oklch(97% .014 254.604); --color-blue-100: oklch(93.2% .032 255.585); --color-blue-200: oklch(88.2% .059 254.128); --color-blue-300: oklch(80.9% .105 251.813); --color-blue-400: oklch(70.7% .165 254.624); --color-blue-500: oklch(62.3% .214 259.815); --color-blue-600: oklch(54.6% .245 262.881); --color-blue-700: oklch(48.8% .243 264.376); --color-blue-800: oklch(42.4% .199 265.638); --color-blue-900: oklch(37.9% .146 265.522); --color-blue-950: oklch(28.2% .091 267.935); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-200: oklch(87% .065 274.039); --color-indigo-300: oklch(78.5% .115 274.713); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-500: oklch(58.5% .233 277.117); --color-indigo-600: oklch(51.1% .262 276.966); --color-indigo-700: oklch(45.7% .24 277.023); --color-indigo-800: oklch(39.8% .195 277.366); --color-indigo-900: oklch(35.9% .144 278.697); --color-indigo-950: oklch(25.7% .09 281.288); --color-violet-50: oklch(96.9% .016 293.756); --color-violet-100: oklch(94.3% .029 294.588); --color-violet-200: oklch(89.4% .057 293.283); --color-violet-300: oklch(81.1% .111 293.571); --color-violet-400: oklch(70.2% .183 293.541); --color-violet-500: oklch(60.6% .25 292.717); --color-violet-600: oklch(54.1% .281 293.009); --color-violet-700: oklch(49.1% .27 292.581); --color-violet-800: oklch(43.2% .232 292.759); --color-violet-900: oklch(38% .189 293.745); --color-violet-950: oklch(28.3% .141 291.089); --color-purple-50: oklch(97.7% .014 308.299); --color-purple-100: oklch(94.6% .033 307.174); --color-purple-200: oklch(90.2% .063 306.703); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-400: oklch(71.4% .203 305.504); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-purple-700: oklch(49.6% .265 301.924); --color-purple-800: oklch(43.8% .218 303.724); --color-purple-900: oklch(38.1% .176 304.987); --color-purple-950: oklch(29.1% .149 302.717); --color-fuchsia-50: oklch(97.7% .017 320.058); --color-fuchsia-100: oklch(95.2% .037 318.852); --color-fuchsia-200: oklch(90.3% .076 319.62); --color-fuchsia-300: oklch(83.3% .145 321.434); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-500: oklch(66.7% .295 322.15); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-fuchsia-700: oklch(51.8% .253 323.949); --color-fuchsia-800: oklch(45.2% .211 324.591); --color-fuchsia-900: oklch(40.1% .17 325.612); --color-fuchsia-950: oklch(29.3% .136 325.661); --color-pink-50: oklch(97.1% .014 343.198); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-200: oklch(89.9% .061 343.231); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-400: oklch(71.8% .202 349.761); --color-pink-500: oklch(65.6% .241 354.308); --color-pink-600: oklch(59.2% .249 .584); --color-pink-700: oklch(52.5% .223 3.958); --color-pink-800: oklch(45.9% .187 3.815); --color-pink-900: oklch(40.8% .153 2.432); --color-pink-950: oklch(28.4% .109 3.907); --color-rose-50: oklch(96.9% .015 12.422); --color-rose-100: oklch(94.1% .03 12.58); --color-rose-200: oklch(89.2% .058 10.001); --color-rose-300: oklch(81% .117 11.638); --color-rose-400: oklch(71.2% .194 13.428); --color-rose-500: oklch(64.5% .246 16.439); --color-rose-600: oklch(58.6% .253 17.585); --color-rose-700: oklch(51.4% .222 16.935); --color-rose-800: oklch(45.5% .188 13.697); --color-rose-900: oklch(41% .159 10.272); --color-rose-950: oklch(27.1% .105 12.094); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-slate-950: oklch(12.9% .042 264.695); --color-gray-50: oklch(98.5% .002 247.839); --color-gray-100: oklch(96.7% .003 264.542); --color-gray-200: oklch(92.8% .006 264.531); --color-gray-300: oklch(87.2% .01 258.338); --color-gray-400: oklch(70.7% .022 261.325); --color-gray-500: oklch(55.1% .027 264.364); --color-gray-600: oklch(44.6% .03 256.802); --color-gray-700: oklch(37.3% .034 259.733); --color-gray-800: oklch(27.8% .033 256.848); --color-gray-900: oklch(21% .034 264.665); --color-gray-950: oklch(13% .028 261.692); --color-zinc-50: oklch(98.5% 0 0); --color-zinc-100: oklch(96.7% .001 286.375); --color-zinc-200: oklch(92% .004 286.32); --color-zinc-300: oklch(87.1% .006 286.286); --color-zinc-400: oklch(70.5% .015 286.067); --color-zinc-500: oklch(55.2% .016 285.938); --color-zinc-600: oklch(44.2% .017 285.786); --color-zinc-700: oklch(37% .013 285.805); --color-zinc-800: oklch(27.4% .006 286.033); --color-zinc-900: oklch(21% .006 285.885); --color-zinc-950: oklch(14.1% .005 285.823); --color-neutral-50: oklch(98.5% 0 0); --color-neutral-100: oklch(97% 0 0); --color-neutral-200: oklch(92.2% 0 0); --color-neutral-300: oklch(87% 0 0); --color-neutral-400: oklch(70.8% 0 0); --color-neutral-500: oklch(55.6% 0 0); --color-neutral-600: oklch(43.9% 0 0); --color-neutral-700: oklch(37.1% 0 0); --color-neutral-800: oklch(26.9% 0 0); --color-neutral-900: oklch(20.5% 0 0); --color-neutral-950: oklch(14.5% 0 0); --color-stone-50: oklch(98.5% .001 106.423); --color-stone-100: oklch(97% .001 106.424); --color-stone-200: oklch(92.3% .003 48.717); --color-stone-300: oklch(86.9% .005 56.366); --color-stone-400: oklch(70.9% .01 56.259); --color-stone-500: oklch(55.3% .013 58.071); --color-stone-600: oklch(44.4% .011 73.639); --color-stone-700: oklch(37.4% .01 67.558); --color-stone-800: oklch(26.8% .007 34.298); --color-stone-900: oklch(21.6% .006 56.043); --color-stone-950: oklch(14.7% .004 49.25); --color-black: #000; --color-white: #fff; --spacing: .25rem; --breakpoint-sm: 40rem; --breakpoint-md: 48rem; --breakpoint-lg: 64rem; --breakpoint-xl: 80rem; --breakpoint-2xl: 96rem; --container-3xs: 16rem; --container-2xs: 18rem; --container-xs: 20rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --container-6xl: 72rem; --container-7xl: 80rem; --text-xs: .75rem; --text-xs--line-height: calc(1 / .75); --text-sm: .875rem; --text-sm--line-height: calc(1.25 / .875); --text-base: 1rem; --text-base--line-height: 1.5 ; --text-lg: 1.125rem; --text-lg--line-height: calc(1.75 / 1.125); --text-xl: 1.25rem; --text-xl--line-height: calc(1.75 / 1.25); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); --text-3xl: 1.875rem; --text-3xl--line-height: 1.2 ; --text-4xl: 2.25rem; --text-4xl--line-height: calc(2.5 / 2.25); --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --text-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; --font-weight-thin: 100; --font-weight-extralight: 200; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-extrabold: 800; --font-weight-black: 900; --tracking-tighter: -.05em; --tracking-tight: -.025em; --tracking-normal: 0em; --tracking-wide: .025em; --tracking-wider: .05em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; --leading-loose: 2; --radius-xs: .125rem; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-4xl: 2rem; --shadow-2xs: 0 1px rgb(0 0 0 / .05); --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05); --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25); --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / .05); --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / .05); --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / .05); --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / .05); --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / .15); --drop-shadow-md: 0 3px 3px rgb(0 0 0 / .12); --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / .15); --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / .1); --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / .15); --text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / .15); --text-shadow-xs: 0px 1px 1px rgb(0 0 0 / .2); --text-shadow-sm: 0px 1px 0px rgb(0 0 0 / .075), 0px 1px 1px rgb(0 0 0 / .075), 0px 2px 2px rgb(0 0 0 / .075); --text-shadow-md: 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1); --text-shadow-lg: 0px 1px 2px rgb(0 0 0 / .1), 0px 3px 2px rgb(0 0 0 / .1), 0px 4px 8px rgb(0 0 0 / .1); --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --animate-bounce: bounce 1s infinite; @keyframes spin { to { transform: rotate(360deg); } } @keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } } @keyframes pulse { 50% { opacity: .5; } } @keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, .2, 1); } } --blur-xs: 4px; --blur-sm: 8px; --blur-md: 12px; --blur-lg: 16px; --blur-xl: 24px; --blur-2xl: 40px; --blur-3xl: 64px; --perspective-dramatic: 100px; --perspective-near: 300px; --perspective-normal: 500px; --perspective-midrange: 800px; --perspective-distant: 1200px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: --theme(--font-sans, initial); --default-font-feature-settings: --theme( --font-sans--font-feature-settings, initial ); --default-font-variation-settings: --theme( --font-sans--font-variation-settings, initial ); --default-mono-font-family: --theme(--font-mono, initial); --default-mono-font-feature-settings: --theme( --font-mono--font-feature-settings, initial ); --default-mono-font-variation-settings: --theme( --font-mono--font-variation-settings, initial ); }@theme default inline reference{ --blur: 8px; --shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05); --drop-shadow: 0 1px 2px rgb(0 0 0 / .1), 0 1px 1px rgb(0 0 0 / .06); --radius: .25rem; --max-width-prose: 65ch; }}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:--theme(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:--theme(--default-font-feature-settings,normal);font-variation-settings:--theme(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:--theme(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:--theme(--default-mono-font-feature-settings,normal);font-variation-settings:--theme(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{@tailwind utilities;}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import './index.css';
1
2
  export { TextEditor } from './components/TextEditor';
2
3
  export { useTextEditor } from './hooks/useTextEditor';
3
4
  export type { TextEditorProps } from './types/editor';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,75 @@
1
+ (function(P,T){typeof exports=="object"&&typeof module<"u"?T(exports,require("react"),require("lucide-react")):typeof define=="function"&&define.amd?define(["exports","react","lucide-react"],T):(P=typeof globalThis<"u"?globalThis:P||self,T(P.TextEditor={},P.React,P.LucideReact))})(this,(function(P,T,I){"use strict";var Q={exports:{}},G={};/**
2
+ * @license React
3
+ * react-jsx-runtime.production.js
4
+ *
5
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var Se;function Pt(){if(Se)return G;Se=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,o,i){var c=null;if(i!==void 0&&(c=""+i),o.key!==void 0&&(c=""+o.key),"key"in o){i={};for(var a in o)a!=="key"&&(i[a]=o[a])}else i=o;return o=i.ref,{$$typeof:e,type:r,key:c,ref:o!==void 0?o:null,props:i}}return G.Fragment=t,G.jsx=n,G.jsxs=n,G}var H={};/**
10
+ * @license React
11
+ * react-jsx-runtime.development.js
12
+ *
13
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var Oe;function Rt(){return Oe||(Oe=1,process.env.NODE_ENV!=="production"&&(function(){function e(u){if(u==null)return null;if(typeof u=="function")return u.$$typeof===nc?null:u.displayName||u.name||null;if(typeof u=="string")return u;switch(u){case A:return"Fragment";case Y:return"Profiler";case M:return"StrictMode";case qi:return"Suspense";case Qi:return"SuspenseList";case tc:return"Activity"}if(typeof u=="object")switch(typeof u.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),u.$$typeof){case L:return"Portal";case C:return u.displayName||"Context";case j:return(u._context.displayName||"Context")+".Consumer";case V:var _=u.render;return u=u.displayName,u||(u=_.displayName||_.name||"",u=u!==""?"ForwardRef("+u+")":"ForwardRef"),u;case ec:return _=u.displayName||null,_!==null?_:e(u.type)||"Memo";case xe:_=u._payload,u=u._init;try{return e(u(_))}catch{}}return null}function t(u){return""+u}function n(u){try{t(u);var _=!1}catch{_=!0}if(_){_=console;var z=_.error,E=typeof Symbol=="function"&&Symbol.toStringTag&&u[Symbol.toStringTag]||u.constructor.name||"Object";return z.call(_,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",E),t(u)}}function r(u){if(u===A)return"<>";if(typeof u=="object"&&u!==null&&u.$$typeof===xe)return"<...>";try{var _=e(u);return _?"<"+_+">":"<...>"}catch{return"<...>"}}function o(){var u=Te.A;return u===null?null:u.getOwner()}function i(){return Error("react-stack-top-frame")}function c(u){if(At.call(u,"key")){var _=Object.getOwnPropertyDescriptor(u,"key").get;if(_&&_.isReactWarning)return!1}return u.key!==void 0}function a(u,_){function z(){jt||(jt=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",_))}z.isReactWarning=!0,Object.defineProperty(u,"key",{get:z,configurable:!0})}function f(){var u=e(this.type);return It[u]||(It[u]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),u=this.props.ref,u!==void 0?u:null}function d(u,_,z,E,fe,je){var $=z.ref;return u={$$typeof:x,type:u,key:_,props:z,_owner:E},($!==void 0?$:null)!==null?Object.defineProperty(u,"ref",{enumerable:!1,get:f}):Object.defineProperty(u,"ref",{enumerable:!1,value:null}),u._store={},Object.defineProperty(u._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(u,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(u,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:fe}),Object.defineProperty(u,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:je}),Object.freeze&&(Object.freeze(u.props),Object.freeze(u)),u}function l(u,_,z,E,fe,je){var $=_.children;if($!==void 0)if(E)if(rc($)){for(E=0;E<$.length;E++)g($[E]);Object.freeze&&Object.freeze($)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else g($);if(At.call(_,"key")){$=e(u);var J=Object.keys(_).filter(function(oc){return oc!=="key"});E=0<J.length?"{key: someKey, "+J.join(": ..., ")+": ...}":"{key: someKey}",Ct[$+E]||(J=0<J.length?"{"+J.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
+ let props = %s;
19
+ <%s {...props} />
20
+ React keys must be passed directly to JSX without using spread:
21
+ let props = %s;
22
+ <%s key={someKey} {...props} />`,E,$,J,$),Ct[$+E]=!0)}if($=null,z!==void 0&&(n(z),$=""+z),c(_)&&(n(_.key),$=""+_.key),"key"in _){z={};for(var Ie in _)Ie!=="key"&&(z[Ie]=_[Ie])}else z=_;return $&&a(z,typeof u=="function"?u.displayName||u.name||"Unknown":u),d(u,$,z,o(),fe,je)}function g(u){p(u)?u._store&&(u._store.validated=1):typeof u=="object"&&u!==null&&u.$$typeof===xe&&(u._payload.status==="fulfilled"?p(u._payload.value)&&u._payload.value._store&&(u._payload.value._store.validated=1):u._store&&(u._store.validated=1))}function p(u){return typeof u=="object"&&u!==null&&u.$$typeof===x}var v=T,x=Symbol.for("react.transitional.element"),L=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),M=Symbol.for("react.strict_mode"),Y=Symbol.for("react.profiler"),j=Symbol.for("react.consumer"),C=Symbol.for("react.context"),V=Symbol.for("react.forward_ref"),qi=Symbol.for("react.suspense"),Qi=Symbol.for("react.suspense_list"),ec=Symbol.for("react.memo"),xe=Symbol.for("react.lazy"),tc=Symbol.for("react.activity"),nc=Symbol.for("react.client.reference"),Te=v.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,At=Object.prototype.hasOwnProperty,rc=Array.isArray,Ae=console.createTask?console.createTask:function(){return null};v={react_stack_bottom_frame:function(u){return u()}};var jt,It={},St=v.react_stack_bottom_frame.bind(v,i)(),Ot=Ae(r(i)),Ct={};H.Fragment=A,H.jsx=function(u,_,z){var E=1e4>Te.recentlyCreatedOwnerStacks++;return l(u,_,z,!1,E?Error("react-stack-top-frame"):St,E?Ae(r(u)):Ot)},H.jsxs=function(u,_,z){var E=1e4>Te.recentlyCreatedOwnerStacks++;return l(u,_,z,!0,E?Error("react-stack-top-frame"):St,E?Ae(r(u)):Ot)}})()),H}var Ce;function Nt(){return Ce||(Ce=1,process.env.NODE_ENV==="production"?Q.exports=Pt():Q.exports=Rt()),Q.exports}var m=Nt();const Dt=({onCommand:e,onSave:t,onExport:n,onClear:r,hasUnsavedChanges:o})=>{const[i,c]=T.useState([]),a=()=>{const l=["bold","italic","underline","strikeThrough","justifyLeft","justifyCenter","justifyRight"],g=[];l.forEach(p=>{document.queryCommandState(p)&&g.push(p)}),c(g)};T.useEffect(()=>(document.addEventListener("selectionchange",a),()=>document.removeEventListener("selectionchange",a)),[]);const f=()=>{const l=prompt("Enter URL:");l&&e("createLink",l)},d=[{command:"bold",icon:m.jsx(I.Bold,{size:18}),title:"Bold"},{command:"italic",icon:m.jsx(I.Italic,{size:18}),title:"Italic"},{command:"underline",icon:m.jsx(I.Underline,{size:18}),title:"Underline"},{command:"strikeThrough",icon:m.jsx(I.Strikethrough,{size:18}),title:"Strikethrough"},{separator:!0},{command:"insertUnorderedList",icon:m.jsx(I.List,{size:18}),title:"Bullet List"},{command:"insertOrderedList",icon:m.jsx(I.ListOrdered,{size:18}),title:"Numbered List"},{separator:!0},{command:"formatBlock",value:"h1",icon:m.jsx(I.Heading1,{size:18}),title:"Heading 1"},{command:"formatBlock",value:"h2",icon:m.jsx(I.Heading2,{size:18}),title:"Heading 2"},{command:"formatBlock",value:"p",icon:m.jsx(I.Type,{size:18}),title:"Paragraph"},{separator:!0},{command:"justifyLeft",icon:m.jsx(I.AlignLeft,{size:18}),title:"Align Left"},{command:"justifyCenter",icon:m.jsx(I.AlignCenter,{size:18}),title:"Center"},{command:"justifyRight",icon:m.jsx(I.AlignRight,{size:18}),title:"Align Right"},{separator:!0},{command:"createLink",icon:m.jsx(I.Link,{size:18}),title:"Insert Link"}];return m.jsxs("div",{className:"flex flex-wrap justify-between items-center p-3 bg-gray-50 border-b border-gray-200",children:[m.jsx("div",{className:"flex flex-wrap items-center gap-1",children:d.map((l,g)=>{if("separator"in l)return m.jsx("div",{className:"w-px h-6 bg-gray-300 mx-2 inline"},g);const p=i.includes(l.command);return m.jsx("button",{onClick:()=>l.command==="createLink"?f():e(l.command,l.value),title:l.title,type:"button",className:`w-9 h-9 flex items-center justify-center rounded-md border border-gray-300 text-gray-700 hover:bg-gray-100 active:bg-gray-200 transition
23
+ ${p?"bg-blue-100 text-blue-600 border-blue-300":"bg-white"}`,children:l.icon},g)})}),m.jsxs("div",{className:"flex items-center gap-2 mt-2 sm:mt-0",children:[m.jsxs("button",{onClick:t,disabled:!o,title:"Save Document",className:"flex items-center gap-1 px-3 py-2 bg-blue-600 text-white text-sm font-medium rounded-md hover:bg-blue-700 disabled:bg-blue-300 disabled:cursor-not-allowed transition",children:[m.jsx(I.Save,{size:16})," Save"]}),m.jsxs("button",{onClick:n,title:"Export as HTML",className:"flex items-center gap-1 px-3 py-2 bg-green-600 text-white text-sm font-medium rounded-md hover:bg-green-700 transition",children:[m.jsx(I.FileDown,{size:16})," Export"]}),m.jsxs("button",{onClick:r,title:"Clear Editor",className:"flex items-center gap-1 px-3 py-2 bg-red-600 text-white text-sm font-medium rounded-md hover:bg-red-700 transition",children:[m.jsx(I.Trash2,{size:16})," Clear"]})]})]})},Ut=({wordCount:e,characterCount:t,hasUnsavedChanges:n})=>m.jsx("div",{className:"flex justify-between items-center px-5 py-3 bg-gray-50 border-t border-gray-200 text-sm text-gray-600",children:m.jsxs("div",{className:"flex items-center gap-6",children:[m.jsxs("div",{children:["Words: ",m.jsx("strong",{className:"text-gray-800",children:e})]}),m.jsxs("div",{children:["Characters: ",m.jsx("strong",{className:"text-gray-800",children:t})]}),m.jsxs("div",{children:["Status: ",m.jsx("strong",{className:n?"text-orange-600":"text-green-600",children:n?"Unsaved Changes":"Saved"})]})]})});function s(e,t,n){function r(a,f){var d;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(d=a._zod).traits??(d.traits=new Set),a._zod.traits.add(e),t(a,f);for(const l in c.prototype)l in a||Object.defineProperty(a,l,{value:c.prototype[l].bind(a)});a._zod.constr=c,a._zod.def=f}const o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function c(a){var f;const d=n?.Parent?new i:this;r(d,a),(f=d._zod).deferred??(f.deferred=[]);for(const l of d._zod.deferred)l();return d}return Object.defineProperty(c,"init",{value:r}),Object.defineProperty(c,Symbol.hasInstance,{value:a=>n?.Parent&&a instanceof n.Parent?!0:a?._zod?.traits?.has(e)}),Object.defineProperty(c,"name",{value:e}),c}class W extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Pe extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const Re={};function N(e){return Re}function Ft(e){const t=Object.values(e).filter(r=>typeof r=="number");return Object.entries(e).filter(([r,o])=>t.indexOf(+r)===-1).map(([r,o])=>o)}function he(e,t){return typeof t=="bigint"?t.toString():t}function pe(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function me(e){return e==null}function _e(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function Lt(e,t){const n=(e.toString().split(".")[1]||"").length,r=t.toString();let o=(r.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(r)){const f=r.match(/\d?e-(\d?)/);f?.[1]&&(o=Number.parseInt(f[1]))}const i=n>o?n:o,c=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return c%a/10**i}const Ne=Symbol("evaluating");function b(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Ne)return r===void 0&&(r=Ne,r=n()),r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function D(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function U(...e){const t={};for(const n of e){const r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}function De(e){return JSON.stringify(e)}const Ue="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function ee(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Mt=pe(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function X(e){if(ee(e)===!1)return!1;const t=e.constructor;if(t===void 0)return!0;const n=t.prototype;return!(ee(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Fe(e){return X(e)?{...e}:Array.isArray(e)?[...e]:e}const Vt=new Set(["string","number","symbol"]);function te(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function R(e,t,n){const r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function h(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Wt(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const Bt={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Yt(e,t){const n=e._zod.def,r=U(e._zod.def,{get shape(){const o={};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(o[i]=n.shape[i])}return D(this,"shape",o),o},checks:[]});return R(e,r)}function Jt(e,t){const n=e._zod.def,r=U(e._zod.def,{get shape(){const o={...e._zod.def.shape};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete o[i]}return D(this,"shape",o),o},checks:[]});return R(e,r)}function Gt(e,t){if(!X(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const o=U(e._zod.def,{get shape(){const i={...e._zod.def.shape,...t};return D(this,"shape",i),i},checks:[]});return R(e,o)}function Ht(e,t){if(!X(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const r={...e._zod.def.shape,...t};return D(this,"shape",r),r},checks:e._zod.def.checks};return R(e,n)}function Xt(e,t){const n=U(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t._zod.def.shape};return D(this,"shape",r),r},get catchall(){return t._zod.def.catchall},checks:[]});return R(e,n)}function Kt(e,t,n){const r=U(t._zod.def,{get shape(){const o=t._zod.def.shape,i={...o};if(n)for(const c in n){if(!(c in o))throw new Error(`Unrecognized key: "${c}"`);n[c]&&(i[c]=e?new e({type:"optional",innerType:o[c]}):o[c])}else for(const c in o)i[c]=e?new e({type:"optional",innerType:o[c]}):o[c];return D(this,"shape",i),i},checks:[]});return R(t,r)}function qt(e,t,n){const r=U(t._zod.def,{get shape(){const o=t._zod.def.shape,i={...o};if(n)for(const c in n){if(!(c in i))throw new Error(`Unrecognized key: "${c}"`);n[c]&&(i[c]=new e({type:"nonoptional",innerType:o[c]}))}else for(const c in o)i[c]=new e({type:"nonoptional",innerType:o[c]});return D(this,"shape",i),i},checks:[]});return R(t,r)}function B(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Le(e,t){return t.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function ne(e){return typeof e=="string"?e:e?.message}function F(e,t,n){const r={...e,path:e.path??[]};if(!e.message){const o=ne(e.inst?._zod.def?.error?.(e))??ne(t?.error?.(e))??ne(n.customError?.(e))??ne(n.localeError?.(e))??"Invalid input";r.message=o}return delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function ge(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function K(...e){const[t,n,r]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:r}:{...t}}const Me=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,he,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Ve=s("$ZodError",Me),We=s("$ZodError",Me,{Parent:Error});function Qt(e,t=n=>n.message){const n={},r=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):r.push(t(o));return{formErrors:r,fieldErrors:n}}function en(e,t){const n=t||function(i){return i.message},r={_errors:[]},o=i=>{for(const c of i.issues)if(c.code==="invalid_union"&&c.errors.length)c.errors.map(a=>o({issues:a}));else if(c.code==="invalid_key")o({issues:c.issues});else if(c.code==="invalid_element")o({issues:c.issues});else if(c.path.length===0)r._errors.push(n(c));else{let a=r,f=0;for(;f<c.path.length;){const d=c.path[f];f===c.path.length-1?(a[d]=a[d]||{_errors:[]},a[d]._errors.push(n(c))):a[d]=a[d]||{_errors:[]},a=a[d],f++}}};return o(e),r}const ve=e=>(t,n,r,o)=>{const i=r?Object.assign(r,{async:!1}):{async:!1},c=t._zod.run({value:n,issues:[]},i);if(c instanceof Promise)throw new W;if(c.issues.length){const a=new(o?.Err??e)(c.issues.map(f=>F(f,i,N())));throw Ue(a,o?.callee),a}return c.value},be=e=>async(t,n,r,o)=>{const i=r?Object.assign(r,{async:!0}):{async:!0};let c=t._zod.run({value:n,issues:[]},i);if(c instanceof Promise&&(c=await c),c.issues.length){const a=new(o?.Err??e)(c.issues.map(f=>F(f,i,N())));throw Ue(a,o?.callee),a}return c.value},re=e=>(t,n,r)=>{const o=r?{...r,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new W;return i.issues.length?{success:!1,error:new(e??Ve)(i.issues.map(c=>F(c,o,N())))}:{success:!0,data:i.value}},tn=re(We),oe=e=>async(t,n,r)=>{const o=r?Object.assign(r,{async:!0}):{async:!0};let i=t._zod.run({value:n,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(c=>F(c,o,N())))}:{success:!0,data:i.value}},nn=oe(We),rn=e=>(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ve(e)(t,n,o)},on=e=>(t,n,r)=>ve(e)(t,n,r),cn=e=>async(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return be(e)(t,n,o)},sn=e=>async(t,n,r)=>be(e)(t,n,r),an=e=>(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return re(e)(t,n,o)},un=e=>(t,n,r)=>re(e)(t,n,r),ln=e=>async(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return oe(e)(t,n,o)},dn=e=>async(t,n,r)=>oe(e)(t,n,r),fn=/^[cC][^\s-]{8,}$/,hn=/^[0-9a-z]+$/,pn=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,mn=/^[0-9a-vA-V]{20}$/,_n=/^[A-Za-z0-9]{27}$/,gn=/^[a-zA-Z0-9_-]{21}$/,vn=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,bn=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Be=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,wn=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,kn="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function zn(){return new RegExp(kn,"u")}const yn=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Zn=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,En=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,$n=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,xn=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ye=/^[A-Za-z0-9_-]*$/,Tn=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,An=/^\+(?:[0-9]){6,14}[0-9]$/,Je="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",jn=new RegExp(`^${Je}$`);function Ge(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function In(e){return new RegExp(`^${Ge(e)}$`)}function Sn(e){const t=Ge({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${t}(?:${n.join("|")})`;return new RegExp(`^${Je}T(?:${r})$`)}const On=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Cn=/^-?\d+$/,Pn=/^-?\d+(?:\.\d+)?/,Rn=/^(?:true|false)$/i,Nn=/^[^A-Z]*$/,Dn=/^[^a-z]*$/,S=s("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),He={number:"number",bigint:"bigint",object:"date"},Xe=s("$ZodCheckLessThan",(e,t)=>{S.init(e,t);const n=He[typeof t.value];e._zod.onattach.push(r=>{const o=r._zod.bag,i=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:"too_big",maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ke=s("$ZodCheckGreaterThan",(e,t)=>{S.init(e,t);const n=He[typeof t.value];e._zod.onattach.push(r=>{const o=r._zod.bag,i=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Un=s("$ZodCheckMultipleOf",(e,t)=>{S.init(e,t),e._zod.onattach.push(n=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%t.value===BigInt(0):Lt(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Fn=s("$ZodCheckNumberFormat",(e,t)=>{S.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),r=n?"int":"number",[o,i]=Bt[t.format];e._zod.onattach.push(c=>{const a=c._zod.bag;a.format=t.format,a.minimum=o,a.maximum=i,n&&(a.pattern=Cn)}),e._zod.check=c=>{const a=c.value;if(n){if(!Number.isInteger(a)){c.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){a>0?c.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort}):c.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort});return}}a<o&&c.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),a>i&&c.issues.push({origin:"number",input:a,code:"too_big",maximum:i,inst:e})}}),Ln=s("$ZodCheckMaxLength",(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!me(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(r._zod.bag.maximum=t.maximum)}),e._zod.check=r=>{const o=r.value;if(o.length<=t.maximum)return;const c=ge(o);r.issues.push({origin:c,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Mn=s("$ZodCheckMinLength",(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!me(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(r._zod.bag.minimum=t.minimum)}),e._zod.check=r=>{const o=r.value;if(o.length>=t.minimum)return;const c=ge(o);r.issues.push({origin:c,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Vn=s("$ZodCheckLengthEquals",(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!me(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=r=>{const o=r.value,i=o.length;if(i===t.length)return;const c=ge(o),a=i>t.length;r.issues.push({origin:c,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),ie=s("$ZodCheckStringFormat",(e,t)=>{var n,r;S.init(e,t),e._zod.onattach.push(o=>{const i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Wn=s("$ZodCheckRegex",(e,t)=>{ie.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Bn=s("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Nn),ie.init(e,t)}),Yn=s("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Dn),ie.init(e,t)}),Jn=s("$ZodCheckIncludes",(e,t)=>{S.init(e,t);const n=te(t.includes),r=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Gn=s("$ZodCheckStartsWith",(e,t)=>{S.init(e,t);const n=new RegExp(`^${te(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.startsWith(t.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),Hn=s("$ZodCheckEndsWith",(e,t)=>{S.init(e,t);const n=new RegExp(`.*${te(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.endsWith(t.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}}),Xn=s("$ZodCheckOverwrite",(e,t)=>{S.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class Kn{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const r=t.split(`
24
+ `).filter(c=>c),o=Math.min(...r.map(c=>c.length-c.trimStart().length)),i=r.map(c=>c.slice(o)).map(c=>" ".repeat(this.indent*2)+c);for(const c of i)this.content.push(c)}compile(){const t=Function,n=this?.args,o=[...(this?.content??[""]).map(i=>` ${i}`)];return new t(...n,o.join(`
25
+ `))}}const qn={major:4,minor:1,patch:11},y=s("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=qn;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const o of r)for(const i of o._zod.onattach)i(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const o=(c,a,f)=>{let d=B(c),l;for(const g of a){if(g._zod.def.when){if(!g._zod.def.when(c))continue}else if(d)continue;const p=c.issues.length,v=g._zod.check(c);if(v instanceof Promise&&f?.async===!1)throw new W;if(l||v instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await v,c.issues.length!==p&&(d||(d=B(c,p)))});else{if(c.issues.length===p)continue;d||(d=B(c,p))}}return l?l.then(()=>c):c},i=(c,a,f)=>{if(B(c))return c.aborted=!0,c;const d=o(a,r,f);if(d instanceof Promise){if(f.async===!1)throw new W;return d.then(l=>e._zod.parse(l,f))}return e._zod.parse(d,f)};e._zod.run=(c,a)=>{if(a.skipChecks)return e._zod.parse(c,a);if(a.direction==="backward"){const d=e._zod.parse({value:c.value,issues:[]},{...a,skipChecks:!0});return d instanceof Promise?d.then(l=>i(l,c,a)):i(d,c,a)}const f=e._zod.parse(c,a);if(f instanceof Promise){if(a.async===!1)throw new W;return f.then(d=>o(d,r,a))}return o(f,r,a)}}e["~standard"]={validate:o=>{try{const i=tn(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return nn(e,o).then(c=>c.success?{value:c.data}:{issues:c.error?.issues})}},vendor:"zod",version:1}}),we=s("$ZodString",(e,t)=>{y.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??On(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),w=s("$ZodStringFormat",(e,t)=>{ie.init(e,t),we.init(e,t)}),Qn=s("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=bn),w.init(e,t)}),er=s("$ZodUUID",(e,t)=>{if(t.version){const r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(r===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Be(r))}else t.pattern??(t.pattern=Be());w.init(e,t)}),tr=s("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=wn),w.init(e,t)}),nr=s("$ZodURL",(e,t)=>{w.init(e,t),e._zod.check=n=>{try{const r=n.value.trim(),o=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Tn.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=o.href:n.value=r;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),rr=s("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=zn()),w.init(e,t)}),or=s("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=gn),w.init(e,t)}),ir=s("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=fn),w.init(e,t)}),cr=s("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=hn),w.init(e,t)}),sr=s("$ZodULID",(e,t)=>{t.pattern??(t.pattern=pn),w.init(e,t)}),ar=s("$ZodXID",(e,t)=>{t.pattern??(t.pattern=mn),w.init(e,t)}),ur=s("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=_n),w.init(e,t)}),lr=s("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Sn(t)),w.init(e,t)}),dr=s("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=jn),w.init(e,t)}),fr=s("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=In(t)),w.init(e,t)}),hr=s("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=vn),w.init(e,t)}),pr=s("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=yn),w.init(e,t),e._zod.onattach.push(n=>{const r=n._zod.bag;r.format="ipv4"})}),mr=s("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Zn),w.init(e,t),e._zod.onattach.push(n=>{const r=n._zod.bag;r.format="ipv6"}),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),_r=s("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=En),w.init(e,t)}),gr=s("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=$n),w.init(e,t),e._zod.check=n=>{const r=n.value.split("/");try{if(r.length!==2)throw new Error;const[o,i]=r;if(!i)throw new Error;const c=Number(i);if(`${c}`!==i)throw new Error;if(c<0||c>128)throw new Error;new URL(`http://[${o}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function qe(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const vr=s("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=xn),w.init(e,t),e._zod.onattach.push(n=>{n._zod.bag.contentEncoding="base64"}),e._zod.check=n=>{qe(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function br(e){if(!Ye.test(e))return!1;const t=e.replace(/[-_]/g,r=>r==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return qe(n)}const wr=s("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ye),w.init(e,t),e._zod.onattach.push(n=>{n._zod.bag.contentEncoding="base64url"}),e._zod.check=n=>{br(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),kr=s("$ZodE164",(e,t)=>{t.pattern??(t.pattern=An),w.init(e,t)});function zr(e,t=null){try{const n=e.split(".");if(n.length!==3)return!1;const[r]=n;if(!r)return!1;const o=JSON.parse(atob(r));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}const yr=s("$ZodJWT",(e,t)=>{w.init(e,t),e._zod.check=n=>{zr(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),Qe=s("$ZodNumber",(e,t)=>{y.init(e,t),e._zod.pattern=e._zod.bag.pattern??Pn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}const o=n.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return n;const i=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...i?{received:i}:{}}),n}}),Zr=s("$ZodNumber",(e,t)=>{Fn.init(e,t),Qe.init(e,t)}),Er=s("$ZodBoolean",(e,t)=>{y.init(e,t),e._zod.pattern=Rn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}const o=n.value;return typeof o=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}}),$r=s("$ZodUnknown",(e,t)=>{y.init(e,t),e._zod.parse=n=>n}),xr=s("$ZodNever",(e,t)=>{y.init(e,t),e._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function et(e,t,n){e.issues.length&&t.issues.push(...Le(n,e.issues)),t.value[n]=e.value}const Tr=s("$ZodArray",(e,t)=>{y.init(e,t),e._zod.parse=(n,r)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const i=[];for(let c=0;c<o.length;c++){const a=o[c],f=t.element._zod.run({value:a,issues:[]},r);f instanceof Promise?i.push(f.then(d=>et(d,n,c))):et(f,n,c)}return i.length?Promise.all(i).then(()=>n):n}});function ce(e,t,n,r){e.issues.length&&t.issues.push(...Le(n,e.issues)),e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function tt(e){const t=Object.keys(e.shape);for(const r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);const n=Wt(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function nt(e,t,n,r,o,i){const c=[],a=o.keySet,f=o.catchall._zod,d=f.def.type;for(const l of Object.keys(t)){if(a.has(l))continue;if(d==="never"){c.push(l);continue}const g=f.run({value:t[l],issues:[]},r);g instanceof Promise?e.push(g.then(p=>ce(p,n,l,t))):ce(g,n,l,t)}return c.length&&n.issues.push({code:"unrecognized_keys",keys:c,input:t,inst:i}),e.length?Promise.all(e).then(()=>n):n}const Ar=s("$ZodObject",(e,t)=>{if(y.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const a=t.shape;Object.defineProperty(t,"shape",{get:()=>{const f={...a};return Object.defineProperty(t,"shape",{value:f}),f}})}const r=pe(()=>tt(t));b(e._zod,"propValues",()=>{const a=t.shape,f={};for(const d in a){const l=a[d]._zod;if(l.values){f[d]??(f[d]=new Set);for(const g of l.values)f[d].add(g)}}return f});const o=ee,i=t.catchall;let c;e._zod.parse=(a,f)=>{c??(c=r.value);const d=a.value;if(!o(d))return a.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),a;a.value={};const l=[],g=c.shape;for(const p of c.keys){const x=g[p]._zod.run({value:d[p],issues:[]},f);x instanceof Promise?l.push(x.then(L=>ce(L,a,p,d))):ce(x,a,p,d)}return i?nt(l,d,a,f,r.value,e):l.length?Promise.all(l).then(()=>a):a}}),jr=s("$ZodObjectJIT",(e,t)=>{Ar.init(e,t);const n=e._zod.parse,r=pe(()=>tt(t)),o=p=>{const v=new Kn(["shape","payload","ctx"]),x=r.value,L=j=>{const C=De(j);return`shape[${C}]._zod.run({ value: input[${C}], issues: [] }, ctx)`};v.write("const input = payload.value;");const A=Object.create(null);let M=0;for(const j of x.keys)A[j]=`key_${M++}`;v.write("const newResult = {};");for(const j of x.keys){const C=A[j],V=De(j);v.write(`const ${C} = ${L(j)};`),v.write(`
26
+ if (${C}.issues.length) {
27
+ payload.issues = payload.issues.concat(${C}.issues.map(iss => ({
28
+ ...iss,
29
+ path: iss.path ? [${V}, ...iss.path] : [${V}]
30
+ })));
31
+ }
32
+
33
+
34
+ if (${C}.value === undefined) {
35
+ if (${V} in input) {
36
+ newResult[${V}] = undefined;
37
+ }
38
+ } else {
39
+ newResult[${V}] = ${C}.value;
40
+ }
41
+
42
+ `)}v.write("payload.value = newResult;"),v.write("return payload;");const Y=v.compile();return(j,C)=>Y(p,j,C)};let i;const c=ee,a=!Re.jitless,d=a&&Mt.value,l=t.catchall;let g;e._zod.parse=(p,v)=>{g??(g=r.value);const x=p.value;return c(x)?a&&d&&v?.async===!1&&v.jitless!==!0?(i||(i=o(t.shape)),p=i(p,v),l?nt([],x,p,v,g,e):p):n(p,v):(p.issues.push({expected:"object",code:"invalid_type",input:x,inst:e}),p)}});function rt(e,t,n,r){for(const i of e)if(i.issues.length===0)return t.value=i.value,t;const o=e.filter(i=>!B(i));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(i=>i.issues.map(c=>F(c,r,N())))}),t)}const Ir=s("$ZodUnion",(e,t)=>{y.init(e,t),b(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),b(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),b(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),b(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){const o=t.options.map(i=>i._zod.pattern);return new RegExp(`^(${o.map(i=>_e(i.source)).join("|")})$`)}});const n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(n)return r(o,i);let c=!1;const a=[];for(const f of t.options){const d=f._zod.run({value:o.value,issues:[]},i);if(d instanceof Promise)a.push(d),c=!0;else{if(d.issues.length===0)return d;a.push(d)}}return c?Promise.all(a).then(f=>rt(f,o,e,i)):rt(a,o,e,i)}}),Sr=s("$ZodIntersection",(e,t)=>{y.init(e,t),e._zod.parse=(n,r)=>{const o=n.value,i=t.left._zod.run({value:o,issues:[]},r),c=t.right._zod.run({value:o,issues:[]},r);return i instanceof Promise||c instanceof Promise?Promise.all([i,c]).then(([f,d])=>ot(n,f,d)):ot(n,i,c)}});function ke(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(X(e)&&X(t)){const n=Object.keys(t),r=Object.keys(e).filter(i=>n.indexOf(i)!==-1),o={...e,...t};for(const i of r){const c=ke(e[i],t[i]);if(!c.valid)return{valid:!1,mergeErrorPath:[i,...c.mergeErrorPath]};o[i]=c.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let r=0;r<e.length;r++){const o=e[r],i=t[r],c=ke(o,i);if(!c.valid)return{valid:!1,mergeErrorPath:[r,...c.mergeErrorPath]};n.push(c.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function ot(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),B(e))return e;const r=ke(t.value,n.value);if(!r.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}const Or=s("$ZodEnum",(e,t)=>{y.init(e,t);const n=Ft(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter(o=>Vt.has(typeof o)).map(o=>typeof o=="string"?te(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{const c=o.value;return r.has(c)||o.issues.push({code:"invalid_value",values:n,input:c,inst:e}),o}}),Cr=s("$ZodTransform",(e,t)=>{y.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Pe(e.constructor.name);const o=t.transform(n.value,n);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then(c=>(n.value=c,n));if(o instanceof Promise)throw new W;return n.value=o,n}});function it(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const Pr=s("$ZodOptional",(e,t)=>{y.init(e,t),e._zod.optin="optional",e._zod.optout="optional",b(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),b(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${_e(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>it(i,n.value)):it(o,n.value)}return n.value===void 0?n:t.innerType._zod.run(n,r)}}),Rr=s("$ZodNullable",(e,t)=>{y.init(e,t),b(e._zod,"optin",()=>t.innerType._zod.optin),b(e._zod,"optout",()=>t.innerType._zod.optout),b(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${_e(n.source)}|null)$`):void 0}),b(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>n.value===null?n:t.innerType._zod.run(n,r)}),Nr=s("$ZodDefault",(e,t)=>{y.init(e,t),e._zod.optin="optional",b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>ct(i,t)):ct(o,t)}});function ct(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Dr=s("$ZodPrefault",(e,t)=>{y.init(e,t),e._zod.optin="optional",b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>(r.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,r))}),Ur=s("$ZodNonOptional",(e,t)=>{y.init(e,t),b(e._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(r=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>st(i,e)):st(o,e)}});function st(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Fr=s("$ZodCatch",(e,t)=>{y.init(e,t),b(e._zod,"optin",()=>t.innerType._zod.optin),b(e._zod,"optout",()=>t.innerType._zod.optout),b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>(n.value=i.value,i.issues.length&&(n.value=t.catchValue({...n,error:{issues:i.issues.map(c=>F(c,r,N()))},input:n.value}),n.issues=[]),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(i=>F(i,r,N()))},input:n.value}),n.issues=[]),n)}}),Lr=s("$ZodPipe",(e,t)=>{y.init(e,t),b(e._zod,"values",()=>t.in._zod.values),b(e._zod,"optin",()=>t.in._zod.optin),b(e._zod,"optout",()=>t.out._zod.optout),b(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){const i=t.out._zod.run(n,r);return i instanceof Promise?i.then(c=>se(c,t.in,r)):se(i,t.in,r)}const o=t.in._zod.run(n,r);return o instanceof Promise?o.then(i=>se(i,t.out,r)):se(o,t.out,r)}});function se(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Mr=s("$ZodReadonly",(e,t)=>{y.init(e,t),b(e._zod,"propValues",()=>t.innerType._zod.propValues),b(e._zod,"values",()=>t.innerType._zod.values),b(e._zod,"optin",()=>t.innerType._zod.optin),b(e._zod,"optout",()=>t.innerType._zod.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(at):at(o)}});function at(e){return e.value=Object.freeze(e.value),e}const Vr=s("$ZodCustom",(e,t)=>{S.init(e,t),y.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=n=>{const r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then(i=>ut(i,n,r,e));ut(o,n,r,e)}});function ut(e,t,n,r){if(!e){const o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),t.issues.push(K(o))}}class Wr{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){const r=n[0];if(this._map.set(t,r),r&&typeof r=="object"&&"id"in r){if(this._idmap.has(r.id))throw new Error(`ID ${r.id} already exists in the registry`);this._idmap.set(r.id,t)}return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const n=this._map.get(t);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(t),this}get(t){const n=t._zod.parent;if(n){const r={...this.get(n)??{}};delete r.id;const o={...r,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function Br(){return new Wr}const ae=Br();function Yr(e,t){return new e({type:"string",...h(t)})}function Jr(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...h(t)})}function lt(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...h(t)})}function Gr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...h(t)})}function Hr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...h(t)})}function Xr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...h(t)})}function Kr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...h(t)})}function qr(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...h(t)})}function Qr(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...h(t)})}function eo(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...h(t)})}function to(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...h(t)})}function no(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...h(t)})}function ro(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...h(t)})}function oo(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...h(t)})}function io(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...h(t)})}function co(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...h(t)})}function so(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...h(t)})}function ao(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...h(t)})}function uo(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...h(t)})}function lo(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...h(t)})}function fo(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...h(t)})}function ho(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...h(t)})}function po(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...h(t)})}function mo(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...h(t)})}function _o(e,t){return new e({type:"string",format:"date",check:"string_format",...h(t)})}function go(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...h(t)})}function vo(e,t){return new e({type:"string",format:"duration",check:"string_format",...h(t)})}function bo(e,t){return new e({type:"number",checks:[],...h(t)})}function wo(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...h(t)})}function ko(e,t){return new e({type:"boolean",...h(t)})}function zo(e){return new e({type:"unknown"})}function yo(e,t){return new e({type:"never",...h(t)})}function dt(e,t){return new Xe({check:"less_than",...h(t),value:e,inclusive:!1})}function ze(e,t){return new Xe({check:"less_than",...h(t),value:e,inclusive:!0})}function ft(e,t){return new Ke({check:"greater_than",...h(t),value:e,inclusive:!1})}function ye(e,t){return new Ke({check:"greater_than",...h(t),value:e,inclusive:!0})}function ht(e,t){return new Un({check:"multiple_of",...h(t),value:e})}function pt(e,t){return new Ln({check:"max_length",...h(t),maximum:e})}function ue(e,t){return new Mn({check:"min_length",...h(t),minimum:e})}function mt(e,t){return new Vn({check:"length_equals",...h(t),length:e})}function Zo(e,t){return new Wn({check:"string_format",format:"regex",...h(t),pattern:e})}function Eo(e){return new Bn({check:"string_format",format:"lowercase",...h(e)})}function $o(e){return new Yn({check:"string_format",format:"uppercase",...h(e)})}function xo(e,t){return new Jn({check:"string_format",format:"includes",...h(t),includes:e})}function To(e,t){return new Gn({check:"string_format",format:"starts_with",...h(t),prefix:e})}function Ao(e,t){return new Hn({check:"string_format",format:"ends_with",...h(t),suffix:e})}function q(e){return new Xn({check:"overwrite",tx:e})}function jo(e){return q(t=>t.normalize(e))}function Io(){return q(e=>e.trim())}function So(){return q(e=>e.toLowerCase())}function Oo(){return q(e=>e.toUpperCase())}function Co(e,t,n){return new e({type:"array",element:t,...h(n)})}function Po(e,t,n){return new e({type:"custom",check:"custom",fn:t,...h(n)})}function Ro(e){const t=No(n=>(n.addIssue=r=>{if(typeof r=="string")n.issues.push(K(r,n.value,t._zod.def));else{const o=r;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),n.issues.push(K(o))}},e(n.value,n)));return t}function No(e,t){const n=new S({check:"custom",...h(t)});return n._zod.check=e,n}const Do=s("ZodISODateTime",(e,t)=>{lr.init(e,t),k.init(e,t)});function Uo(e){return mo(Do,e)}const Fo=s("ZodISODate",(e,t)=>{dr.init(e,t),k.init(e,t)});function Lo(e){return _o(Fo,e)}const Mo=s("ZodISOTime",(e,t)=>{fr.init(e,t),k.init(e,t)});function Vo(e){return go(Mo,e)}const Wo=s("ZodISODuration",(e,t)=>{hr.init(e,t),k.init(e,t)});function Bo(e){return vo(Wo,e)}const O=s("ZodError",(e,t)=>{Ve.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>en(e,n)},flatten:{value:n=>Qt(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,he,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,he,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),Yo=ve(O),Jo=be(O),Go=re(O),Ho=oe(O),Xo=rn(O),Ko=on(O),qo=cn(O),Qo=sn(O),ei=an(O),ti=un(O),ni=ln(O),ri=dn(O),Z=s("ZodType",(e,t)=>(y.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone(U(t,{checks:[...t.checks??[],...n.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]})),e.clone=(n,r)=>R(e,n,r),e.brand=()=>e,e.register=((n,r)=>(n.add(e,r),e)),e.parse=(n,r)=>Yo(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>Go(e,n,r),e.parseAsync=async(n,r)=>Jo(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Ho(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>Xo(e,n,r),e.decode=(n,r)=>Ko(e,n,r),e.encodeAsync=async(n,r)=>qo(e,n,r),e.decodeAsync=async(n,r)=>Qo(e,n,r),e.safeEncode=(n,r)=>ei(e,n,r),e.safeDecode=(n,r)=>ti(e,n,r),e.safeEncodeAsync=async(n,r)=>ni(e,n,r),e.safeDecodeAsync=async(n,r)=>ri(e,n,r),e.refine=(n,r)=>e.check(Gi(n,r)),e.superRefine=n=>e.check(Hi(n)),e.overwrite=n=>e.check(q(n)),e.optional=()=>Zt(e),e.nullable=()=>Et(e),e.nullish=()=>Zt(Et(e)),e.nonoptional=n=>Li(e,n),e.array=()=>Ti(e),e.or=n=>Ii([e,n]),e.and=n=>Oi(e,n),e.transform=n=>xt(e,Pi(n)),e.default=n=>Di(e,n),e.prefault=n=>Fi(e,n),e.catch=n=>Vi(e,n),e.pipe=n=>xt(e,n),e.readonly=()=>Yi(e),e.describe=n=>{const r=e.clone();return ae.add(r,{description:n}),r},Object.defineProperty(e,"description",{get(){return ae.get(e)?.description},configurable:!0}),e.meta=(...n)=>{if(n.length===0)return ae.get(e);const r=e.clone();return ae.add(r,n[0]),r},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),_t=s("_ZodString",(e,t)=>{we.init(e,t),Z.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...r)=>e.check(Zo(...r)),e.includes=(...r)=>e.check(xo(...r)),e.startsWith=(...r)=>e.check(To(...r)),e.endsWith=(...r)=>e.check(Ao(...r)),e.min=(...r)=>e.check(ue(...r)),e.max=(...r)=>e.check(pt(...r)),e.length=(...r)=>e.check(mt(...r)),e.nonempty=(...r)=>e.check(ue(1,...r)),e.lowercase=r=>e.check(Eo(r)),e.uppercase=r=>e.check($o(r)),e.trim=()=>e.check(Io()),e.normalize=(...r)=>e.check(jo(...r)),e.toLowerCase=()=>e.check(So()),e.toUpperCase=()=>e.check(Oo())}),oi=s("ZodString",(e,t)=>{we.init(e,t),_t.init(e,t),e.email=n=>e.check(Jr(ii,n)),e.url=n=>e.check(qr(ci,n)),e.jwt=n=>e.check(po(ki,n)),e.emoji=n=>e.check(Qr(si,n)),e.guid=n=>e.check(lt(gt,n)),e.uuid=n=>e.check(Gr(de,n)),e.uuidv4=n=>e.check(Hr(de,n)),e.uuidv6=n=>e.check(Xr(de,n)),e.uuidv7=n=>e.check(Kr(de,n)),e.nanoid=n=>e.check(eo(ai,n)),e.guid=n=>e.check(lt(gt,n)),e.cuid=n=>e.check(to(ui,n)),e.cuid2=n=>e.check(no(li,n)),e.ulid=n=>e.check(ro(di,n)),e.base64=n=>e.check(lo(vi,n)),e.base64url=n=>e.check(fo(bi,n)),e.xid=n=>e.check(oo(fi,n)),e.ksuid=n=>e.check(io(hi,n)),e.ipv4=n=>e.check(co(pi,n)),e.ipv6=n=>e.check(so(mi,n)),e.cidrv4=n=>e.check(ao(_i,n)),e.cidrv6=n=>e.check(uo(gi,n)),e.e164=n=>e.check(ho(wi,n)),e.datetime=n=>e.check(Uo(n)),e.date=n=>e.check(Lo(n)),e.time=n=>e.check(Vo(n)),e.duration=n=>e.check(Bo(n))});function le(e){return Yr(oi,e)}const k=s("ZodStringFormat",(e,t)=>{w.init(e,t),_t.init(e,t)}),ii=s("ZodEmail",(e,t)=>{tr.init(e,t),k.init(e,t)}),gt=s("ZodGUID",(e,t)=>{Qn.init(e,t),k.init(e,t)}),de=s("ZodUUID",(e,t)=>{er.init(e,t),k.init(e,t)}),ci=s("ZodURL",(e,t)=>{nr.init(e,t),k.init(e,t)}),si=s("ZodEmoji",(e,t)=>{rr.init(e,t),k.init(e,t)}),ai=s("ZodNanoID",(e,t)=>{or.init(e,t),k.init(e,t)}),ui=s("ZodCUID",(e,t)=>{ir.init(e,t),k.init(e,t)}),li=s("ZodCUID2",(e,t)=>{cr.init(e,t),k.init(e,t)}),di=s("ZodULID",(e,t)=>{sr.init(e,t),k.init(e,t)}),fi=s("ZodXID",(e,t)=>{ar.init(e,t),k.init(e,t)}),hi=s("ZodKSUID",(e,t)=>{ur.init(e,t),k.init(e,t)}),pi=s("ZodIPv4",(e,t)=>{pr.init(e,t),k.init(e,t)}),mi=s("ZodIPv6",(e,t)=>{mr.init(e,t),k.init(e,t)}),_i=s("ZodCIDRv4",(e,t)=>{_r.init(e,t),k.init(e,t)}),gi=s("ZodCIDRv6",(e,t)=>{gr.init(e,t),k.init(e,t)}),vi=s("ZodBase64",(e,t)=>{vr.init(e,t),k.init(e,t)}),bi=s("ZodBase64URL",(e,t)=>{wr.init(e,t),k.init(e,t)}),wi=s("ZodE164",(e,t)=>{kr.init(e,t),k.init(e,t)}),ki=s("ZodJWT",(e,t)=>{yr.init(e,t),k.init(e,t)}),vt=s("ZodNumber",(e,t)=>{Qe.init(e,t),Z.init(e,t),e.gt=(r,o)=>e.check(ft(r,o)),e.gte=(r,o)=>e.check(ye(r,o)),e.min=(r,o)=>e.check(ye(r,o)),e.lt=(r,o)=>e.check(dt(r,o)),e.lte=(r,o)=>e.check(ze(r,o)),e.max=(r,o)=>e.check(ze(r,o)),e.int=r=>e.check(wt(r)),e.safe=r=>e.check(wt(r)),e.positive=r=>e.check(ft(0,r)),e.nonnegative=r=>e.check(ye(0,r)),e.negative=r=>e.check(dt(0,r)),e.nonpositive=r=>e.check(ze(0,r)),e.multipleOf=(r,o)=>e.check(ht(r,o)),e.step=(r,o)=>e.check(ht(r,o)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function bt(e){return bo(vt,e)}const zi=s("ZodNumberFormat",(e,t)=>{Zr.init(e,t),vt.init(e,t)});function wt(e){return wo(zi,e)}const yi=s("ZodBoolean",(e,t)=>{Er.init(e,t),Z.init(e,t)});function kt(e){return ko(yi,e)}const Zi=s("ZodUnknown",(e,t)=>{$r.init(e,t),Z.init(e,t)});function zt(){return zo(Zi)}const Ei=s("ZodNever",(e,t)=>{xr.init(e,t),Z.init(e,t)});function $i(e){return yo(Ei,e)}const xi=s("ZodArray",(e,t)=>{Tr.init(e,t),Z.init(e,t),e.element=t.element,e.min=(n,r)=>e.check(ue(n,r)),e.nonempty=n=>e.check(ue(1,n)),e.max=(n,r)=>e.check(pt(n,r)),e.length=(n,r)=>e.check(mt(n,r)),e.unwrap=()=>e.element});function Ti(e,t){return Co(xi,e,t)}const Ai=s("ZodObject",(e,t)=>{jr.init(e,t),Z.init(e,t),b(e,"shape",()=>t.shape),e.keyof=()=>$e(Object.keys(e._zod.def.shape)),e.catchall=n=>e.clone({...e._zod.def,catchall:n}),e.passthrough=()=>e.clone({...e._zod.def,catchall:zt()}),e.loose=()=>e.clone({...e._zod.def,catchall:zt()}),e.strict=()=>e.clone({...e._zod.def,catchall:$i()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=n=>Gt(e,n),e.safeExtend=n=>Ht(e,n),e.merge=n=>Xt(e,n),e.pick=n=>Yt(e,n),e.omit=n=>Jt(e,n),e.partial=(...n)=>Kt(yt,e,n[0]),e.required=(...n)=>qt($t,e,n[0])});function Ze(e,t){const n={type:"object",shape:e??{},...h(t)};return new Ai(n)}const ji=s("ZodUnion",(e,t)=>{Ir.init(e,t),Z.init(e,t),e.options=t.options});function Ii(e,t){return new ji({type:"union",options:e,...h(t)})}const Si=s("ZodIntersection",(e,t)=>{Sr.init(e,t),Z.init(e,t)});function Oi(e,t){return new Si({type:"intersection",left:e,right:t})}const Ee=s("ZodEnum",(e,t)=>{Or.init(e,t),Z.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(r,o)=>{const i={};for(const c of r)if(n.has(c))i[c]=t.entries[c];else throw new Error(`Key ${c} not found in enum`);return new Ee({...t,checks:[],...h(o),entries:i})},e.exclude=(r,o)=>{const i={...t.entries};for(const c of r)if(n.has(c))delete i[c];else throw new Error(`Key ${c} not found in enum`);return new Ee({...t,checks:[],...h(o),entries:i})}});function $e(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(r=>[r,r])):e;return new Ee({type:"enum",entries:n,...h(t)})}const Ci=s("ZodTransform",(e,t)=>{Cr.init(e,t),Z.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Pe(e.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(K(i,n.value,t));else{const c=i;c.fatal&&(c.continue=!1),c.code??(c.code="custom"),c.input??(c.input=n.value),c.inst??(c.inst=e),n.issues.push(K(c))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(i=>(n.value=i,n)):(n.value=o,n)}});function Pi(e){return new Ci({type:"transform",transform:e})}const yt=s("ZodOptional",(e,t)=>{Pr.init(e,t),Z.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Zt(e){return new yt({type:"optional",innerType:e})}const Ri=s("ZodNullable",(e,t)=>{Rr.init(e,t),Z.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Et(e){return new Ri({type:"nullable",innerType:e})}const Ni=s("ZodDefault",(e,t)=>{Nr.init(e,t),Z.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Di(e,t){return new Ni({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():Fe(t)}})}const Ui=s("ZodPrefault",(e,t)=>{Dr.init(e,t),Z.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Fi(e,t){return new Ui({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():Fe(t)}})}const $t=s("ZodNonOptional",(e,t)=>{Ur.init(e,t),Z.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Li(e,t){return new $t({type:"nonoptional",innerType:e,...h(t)})}const Mi=s("ZodCatch",(e,t)=>{Fr.init(e,t),Z.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Vi(e,t){return new Mi({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const Wi=s("ZodPipe",(e,t)=>{Lr.init(e,t),Z.init(e,t),e.in=t.in,e.out=t.out});function xt(e,t){return new Wi({type:"pipe",in:e,out:t})}const Bi=s("ZodReadonly",(e,t)=>{Mr.init(e,t),Z.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Yi(e){return new Bi({type:"readonly",innerType:e})}const Ji=s("ZodCustom",(e,t)=>{Vr.init(e,t),Z.init(e,t)});function Gi(e,t={}){return Po(Ji,e,t)}function Hi(e){return Ro(e)}const Xi=Ze({title:le().min(1,"Title is required").max(200,"Title too long"),content:le().min(1,"Content is required"),format:$e(["html","markdown"]).default("html"),metadata:Ze({createdAt:le().datetime(),updatedAt:le().datetime(),wordCount:bt().min(0),characterCount:bt().min(0)}).optional()});Ze({includeStyles:kt().default(!0),includeMeta:kt().default(!0),format:$e(["html","txt"]).default("html")});const Tt=(e="")=>{const[t,n]=T.useState({content:e,title:"Untitled Document",wordCount:e.trim()?e.trim().split(/\s+/).length:0,characterCount:e.length,hasUnsavedChanges:!1}),r=T.useRef(null);T.useEffect(()=>{r.current&&e!==t.content&&(r.current.innerHTML=e,n(l=>({...l,content:e,wordCount:e.trim()?e.trim().split(/\s+/).length:0,characterCount:e.length})))},[e]);const o=T.useCallback(l=>{const g=l.trim()?l.trim().split(/\s+/).length:0,p=l.length;n(v=>({...v,content:l,wordCount:g,characterCount:p,hasUnsavedChanges:!0}))},[]),i=T.useCallback(l=>{n(g=>({...g,title:l,hasUnsavedChanges:!0}))},[]),c=T.useCallback((l,g)=>{document.execCommand(l,!1,g),r.current?.focus()},[]),a=T.useCallback(()=>{try{return{success:!0,data:Xi.parse({title:t.title,content:t.content,metadata:{createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),wordCount:t.wordCount,characterCount:t.characterCount}})}}catch(l){return{success:!1,error:l instanceof Error?l.message:"Validation failed"}}},[t]),f=T.useCallback((l={includeStyles:!0,includeMeta:!0})=>{const g=a();if(!g.success)throw new Error(g.error);const{data:p}=g;let v=`<!DOCTYPE html>
43
+ <html>
44
+ <head>
45
+ <meta charset="UTF-8">
46
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
47
+ <title>${p?.title}</title>`;return l.includeStyles&&(v+=`
48
+ <style>
49
+ body {
50
+ font-family: Arial, sans-serif;
51
+ line-height: 1.6;
52
+ margin: 40px;
53
+ max-width: 800px;
54
+ }
55
+ .editor-content {
56
+ border: 1px solid #ddd;
57
+ padding: 20px;
58
+ border-radius: 8px;
59
+ background: white;
60
+ }
61
+ </style>`),v+=`
62
+ </head>
63
+ <body>`,l.includeMeta&&(v+=`
64
+ <div class="document-meta">
65
+ <h1>${p?.title}</h1>
66
+ <p><small>Created: ${new Date(p?.metadata.createdAt??"").toLocaleString()} |
67
+ Words: ${p?.metadata.wordCount} |
68
+ Characters: ${p?.metadata.characterCount}</small></p>
69
+ <hr>
70
+ </div>`),v+=`
71
+ <div class="editor-content">
72
+ ${p?.content}
73
+ </div>
74
+ </body>
75
+ </html>`,v},[a]),d=T.useCallback(()=>{n({content:"",title:"Untitled Document",wordCount:0,characterCount:0,hasUnsavedChanges:!1}),r.current&&(r.current.innerHTML="")},[]);return{editorState:t,editorRef:r,updateContent:o,updateTitle:i,executeCommand:c,getValidationResult:a,exportToHTML:f,clearEditor:d}},Ki=({initialContent:e="",onSave:t,onExport:n})=>{const{editorState:r,editorRef:o,updateContent:i,updateTitle:c,executeCommand:a,getValidationResult:f,exportToHTML:d,clearEditor:l}=Tt(e),[g,p]=T.useState(!1),v=()=>{if(f().success){const M=d();t?.(r.content,M)}else p(!0),setTimeout(()=>p(!1),3e3)},x=()=>{try{const A=d();n?.(A);const M=new Blob([A],{type:"text/html"}),Y=URL.createObjectURL(M),j=document.createElement("a");j.href=Y,j.download=`${r.title.replace(/\s+/g,"_")}.html`,document.body.appendChild(j),j.click(),document.body.removeChild(j),URL.revokeObjectURL(Y)}catch(A){alert("Export failed: "+(A instanceof Error?A.message:"Unknown error"))}},L=()=>{confirm("Are you sure you want to clear the editor? All unsaved changes will be lost.")&&l()};return m.jsxs("div",{className:"w-full max-w-6xl mx-auto bg-white rounded-xl shadow-lg overflow-hidden",children:[m.jsxs("div",{className:"p-6 border-b border-gray-200 bg-gray-50",children:[m.jsx("input",{type:"text",className:"w-full bg-transparent text-2xl font-bold text-gray-800 outline-none placeholder-gray-400",value:r.title,onChange:A=>c(A.target.value),placeholder:"Document Title"}),g&&m.jsx("div",{className:"text-red-600 text-sm mt-2 animate-fadeIn",children:"Please add content before saving"})]}),m.jsx(Dt,{onCommand:a,onSave:v,onExport:x,onClear:L,hasUnsavedChanges:r.hasUnsavedChanges}),m.jsx("div",{ref:o,className:"editor-content min-h-[500px] p-8 border-none outline-none resize-none text-gray-700 leading-relaxed prose max-w-none",contentEditable:!0,onInput:A=>i(A.currentTarget.innerHTML)}),m.jsx(Ut,{wordCount:r.wordCount,characterCount:r.characterCount,hasUnsavedChanges:r.hasUnsavedChanges})]})};P.TextEditor=Ki,P.useTextEditor=Tt,Object.defineProperty(P,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -1,12 +1,11 @@
1
1
  {
2
2
  "name": "@abduljebar/text-editor",
3
- "version": "1.0.7",
3
+ "version": "1.0.8",
4
4
  "description": "A professional React text editor with export, save, and validation features",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",
8
8
  "types": "./dist/index.d.ts",
9
- "style": "dist/index.css",
10
9
  "files": [
11
10
  "dist",
12
11
  "README.md"
@@ -16,8 +15,7 @@
16
15
  "import": "./dist/index.js",
17
16
  "types": "./dist/index.d.ts",
18
17
  "require": "./dist/index.js"
19
- },
20
- "./dist/index.css": "./dist/index.css"
18
+ }
21
19
  },
22
20
  "scripts": {
23
21
  "dev": "vite",