@opencode-ai/cli-windows-arm64 0.0.0-beta-202606050413 → 0.0.0-beta-202606050635
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/bin/{chunk-yjd4gfrw.js.map → chunk-01045avw.js.map} +1 -1
- package/bin/{chunk-7e33eexw.js.map → chunk-04aztn0b.js.map} +1 -1
- package/bin/{chunk-0w8srq86.js.map → chunk-15h0rnzn.js.map} +1 -1
- package/bin/{chunk-c405mav2.js.map → chunk-1sytpc6f.js.map} +1 -1
- package/bin/{chunk-yrctbw5z.js.map → chunk-261ddjb6.js.map} +1 -1
- package/bin/{chunk-g75pjf1s.js.map → chunk-2byrf7ep.js.map} +1 -1
- package/bin/{chunk-pzcbqccc.js.map → chunk-2rgvh087.js.map} +1 -1
- package/bin/{chunk-v5t5sfsa.js.map → chunk-2x3cdftk.js.map} +1 -1
- package/bin/{chunk-6t6j2syw.js.map → chunk-30axpd3c.js.map} +1 -1
- package/bin/{chunk-p7vb6q61.js.map → chunk-33dpck4r.js.map} +1 -1
- package/bin/{chunk-0zaxan0f.js.map → chunk-3a78h791.js.map} +1 -1
- package/bin/{chunk-37mqnge5.js.map → chunk-3ksmv4c2.js.map} +1 -1
- package/bin/{chunk-tp53m8fs.js.map → chunk-3nen48r7.js.map} +1 -1
- package/bin/{chunk-qxp1n90a.js.map → chunk-3q9y0mvz.js.map} +1 -1
- package/bin/{chunk-f5tfppa3.js.map → chunk-3ykfzv15.js.map} +1 -1
- package/bin/{chunk-753zwk10.js.map → chunk-40an6rst.js.map} +1 -1
- package/bin/{chunk-9pxszgex.js.map → chunk-4x714waw.js.map} +1 -1
- package/bin/{chunk-rt3p96q3.js.map → chunk-4xkbmehz.js.map} +1 -1
- package/bin/{chunk-b16pmd6c.js.map → chunk-4zhtpsfq.js.map} +1 -1
- package/bin/{chunk-9rp9xyz4.js.map → chunk-5h92s4pv.js.map} +2 -2
- package/bin/{chunk-7h3thzht.js.map → chunk-5jxfft74.js.map} +1 -1
- package/bin/{chunk-10g9mzpr.js.map → chunk-5kpn8vaw.js.map} +1 -1
- package/bin/{chunk-de8e7pt7.js.map → chunk-5qsmqhwr.js.map} +1 -1
- package/bin/{chunk-0m0ysqkf.js.map → chunk-64907mep.js.map} +1 -1
- package/bin/{chunk-en70h511.js.map → chunk-67nxqrwy.js.map} +2 -2
- package/bin/{chunk-mww4n4f4.js.map → chunk-6g2chb5m.js.map} +1 -1
- package/bin/chunk-6ytt419c.js.map +9 -0
- package/bin/{chunk-s6p78e64.js.map → chunk-7c6917we.js.map} +1 -1
- package/bin/{chunk-wzt86v8e.js.map → chunk-7dawkz9f.js.map} +1 -1
- package/bin/{chunk-j49r3r0h.js.map → chunk-7sbdkr3p.js.map} +1 -1
- package/bin/{chunk-rcbp13zr.js.map → chunk-7trxbwky.js.map} +1 -1
- package/bin/{chunk-vht6r6mg.js.map → chunk-7ttdyjym.js.map} +1 -1
- package/bin/{chunk-cxavw1f9.js.map → chunk-7vde01x1.js.map} +1 -1
- package/bin/{chunk-cq3s2bc3.js.map → chunk-7we8fer2.js.map} +2 -2
- package/bin/{chunk-0fd7e98q.js.map → chunk-80y0nhj5.js.map} +1 -1
- package/bin/{chunk-tx4d8n2c.js.map → chunk-86ey16ga.js.map} +1 -1
- package/bin/{chunk-ymbn2qrb.js.map → chunk-8hca861v.js.map} +1 -1
- package/bin/{chunk-sy53xwps.js.map → chunk-8p4fw9fs.js.map} +1 -1
- package/bin/chunk-8xynca5d.js.map +9 -0
- package/bin/{chunk-z6004x1f.js.map → chunk-93nep7kv.js.map} +1 -1
- package/bin/{chunk-1xcexrst.js.map → chunk-980aeczs.js.map} +2 -2
- package/bin/chunk-98cfxgcf.js.map +9 -0
- package/bin/{chunk-hhes0fb4.js.map → chunk-9fx74p59.js.map} +1 -1
- package/bin/{chunk-5vshf5d9.js.map → chunk-9gjqyzv9.js.map} +1 -1
- package/bin/{chunk-mb38k8t0.js.map → chunk-9ytt0sw5.js.map} +1 -1
- package/bin/{chunk-q8d3f8vv.js.map → chunk-a9y62fd0.js.map} +1 -1
- package/bin/chunk-ad029h3p.js.map +9 -0
- package/bin/{chunk-ppjn2gwr.js.map → chunk-agegs70a.js.map} +1 -1
- package/bin/{chunk-y1y94hd9.js.map → chunk-aq9vzzfd.js.map} +1 -1
- package/bin/{chunk-8g9cx71s.js.map → chunk-aqs1bcwb.js.map} +1 -1
- package/bin/{chunk-vqn23nvj.js.map → chunk-b0r7h3v7.js.map} +1 -1
- package/bin/{chunk-3n2hpq8t.js.map → chunk-bg6bs48j.js.map} +1 -1
- package/bin/{chunk-78g08k7w.js.map → chunk-bkxkz2gr.js.map} +1 -1
- package/bin/{chunk-4kkfbnqc.js.map → chunk-bkzz4gmj.js.map} +2 -2
- package/bin/{chunk-07t8c27r.js.map → chunk-bvg6tgkp.js.map} +22 -18
- package/bin/{chunk-59ag69w3.js.map → chunk-bwcw4v9v.js.map} +1 -1
- package/bin/{chunk-qsj8gt5c.js.map → chunk-cc2rmfa1.js.map} +1 -1
- package/bin/{chunk-6m6559kj.js.map → chunk-cmkpmz1t.js.map} +1 -1
- package/bin/{chunk-bt4a2b38.js.map → chunk-ddj7jhhs.js.map} +2 -2
- package/bin/{chunk-kbksyj8q.js.map → chunk-dm5bqjyj.js.map} +1 -1
- package/bin/{chunk-9y4bxd9z.js.map → chunk-dqfpb4xf.js.map} +1 -1
- package/bin/{chunk-61ex0ysa.js.map → chunk-dwt61cf9.js.map} +1 -1
- package/bin/{chunk-aqr51qaz.js.map → chunk-e9802ppg.js.map} +1 -1
- package/bin/{chunk-m31nxbnx.js.map → chunk-eajygmt3.js.map} +1 -1
- package/bin/{chunk-n5f9tqke.js.map → chunk-egxn625f.js.map} +1 -1
- package/bin/{chunk-1qafz13b.js.map → chunk-er0jf84x.js.map} +1 -1
- package/bin/chunk-et47enz9.js.map +9 -0
- package/bin/{chunk-8m4e6jm9.js.map → chunk-eyyhecap.js.map} +1 -1
- package/bin/{chunk-jwpekcgc.js.map → chunk-f3134cq8.js.map} +1 -1
- package/bin/{chunk-3s93j8bp.js.map → chunk-fcrwp5aw.js.map} +1 -1
- package/bin/{chunk-hcrstn1a.js.map → chunk-fczsbfxn.js.map} +1 -1
- package/bin/{chunk-087s56gx.js.map → chunk-fhmz5jzq.js.map} +2 -2
- package/bin/{chunk-jen69edq.js.map → chunk-g7js2td3.js.map} +2 -2
- package/bin/{chunk-9777kknm.js.map → chunk-g9257jec.js.map} +1 -1
- package/bin/{chunk-xtwd1g04.js.map → chunk-grhfspvr.js.map} +1 -1
- package/bin/{chunk-3n6fe6h1.js.map → chunk-grzxag2s.js.map} +1 -1
- package/bin/{chunk-vn7d3q1a.js.map → chunk-hbnsd8zc.js.map} +1 -1
- package/bin/{chunk-mjtn9njj.js.map → chunk-hdx1bfpk.js.map} +1 -1
- package/bin/{chunk-d2d2qyc8.js.map → chunk-hg7b8aq0.js.map} +1 -1
- package/bin/chunk-jd0wj7bc.js.map +10 -0
- package/bin/{chunk-24ytprtt.js.map → chunk-jngpmhcr.js.map} +1 -1
- package/bin/{chunk-aspg97y0.js.map → chunk-js3nmfy2.js.map} +1 -1
- package/bin/{chunk-bvgxtvy5.js.map → chunk-k553zsep.js.map} +1 -1
- package/bin/{chunk-sfvtysgk.js.map → chunk-kghggch5.js.map} +1 -1
- package/bin/{chunk-1v1eg9ea.js.map → chunk-kq6f5vzs.js.map} +1 -1
- package/bin/{chunk-778262wk.js.map → chunk-ktxh41y6.js.map} +1 -1
- package/bin/{chunk-v4k8v6ad.js.map → chunk-m2g8e58p.js.map} +1 -1
- package/bin/{chunk-wsc1m3ya.js.map → chunk-mdswrx0q.js.map} +1 -1
- package/bin/chunk-ndm1rc9r.js.map +9 -0
- package/bin/{chunk-r4xfgh1d.js.map → chunk-ng9550j6.js.map} +1 -1
- package/bin/{chunk-tjaapjgk.js.map → chunk-njtgwkja.js.map} +1 -1
- package/bin/{chunk-5czy6c2t.js.map → chunk-nrh3s9kj.js.map} +1 -1
- package/bin/{chunk-1m5frevr.js.map → chunk-pw5jrvsz.js.map} +1 -1
- package/bin/{chunk-0fxqxahr.js.map → chunk-q4nry60b.js.map} +1 -1
- package/bin/{chunk-4q3zgnq0.js.map → chunk-q95nk89x.js.map} +1 -1
- package/bin/{chunk-9t3ktng1.js.map → chunk-qb31328t.js.map} +1 -1
- package/bin/{chunk-addegf2c.js.map → chunk-qq9amzwy.js.map} +1 -1
- package/bin/{chunk-pvt3zcpb.js.map → chunk-qwj18b0z.js.map} +1 -1
- package/bin/{chunk-xnyqakct.js.map → chunk-rdm3kdj5.js.map} +2 -2
- package/bin/{chunk-6c8zad0q.js.map → chunk-rrwzn8rb.js.map} +1 -1
- package/bin/{chunk-f1dc53f5.js.map → chunk-rwny8wxq.js.map} +1 -1
- package/bin/{chunk-7p88mnrp.js.map → chunk-s6g5ddx9.js.map} +1 -1
- package/bin/{chunk-58crwv73.js.map → chunk-skmzxmeg.js.map} +1 -1
- package/bin/{chunk-9av9p5be.js.map → chunk-spxphc8w.js.map} +1 -1
- package/bin/{chunk-yj84ce63.js.map → chunk-t92mwyn8.js.map} +1 -1
- package/bin/{chunk-k12sqt5c.js.map → chunk-t994hgps.js.map} +1 -1
- package/bin/{chunk-z9nnfhja.js.map → chunk-tc8qmjh2.js.map} +1 -1
- package/bin/{chunk-m5rn1t9e.js.map → chunk-tdbzvbw1.js.map} +1 -1
- package/bin/{chunk-0twas8m4.js.map → chunk-tk15nqcn.js.map} +1 -1
- package/bin/{chunk-d6q844vr.js.map → chunk-tynrv6ej.js.map} +2 -2
- package/bin/{chunk-g2hzewm5.js.map → chunk-v2x99gvq.js.map} +2 -2
- package/bin/{chunk-1ks336sp.js.map → chunk-vk4g295y.js.map} +1 -1
- package/bin/{chunk-v6m6x911.js.map → chunk-vtkxz24g.js.map} +1 -1
- package/bin/chunk-vxqtbnnp.js.map +9 -0
- package/bin/chunk-vzay7hnb.js.map +9 -0
- package/bin/{chunk-m6jr02jt.js.map → chunk-w0j45wn7.js.map} +1 -1
- package/bin/{chunk-3h1gycas.js.map → chunk-w5mg9mph.js.map} +5 -4
- package/bin/{chunk-q2z8hcc9.js.map → chunk-wgqmktrv.js.map} +1 -1
- package/bin/{chunk-p9fsk8xk.js.map → chunk-wkjpmvj8.js.map} +1 -1
- package/bin/{chunk-047brskp.js.map → chunk-x2f3bprg.js.map} +1 -1
- package/bin/{chunk-d7en3gra.js.map → chunk-xp90638w.js.map} +1 -1
- package/bin/{chunk-1zdchkt5.js.map → chunk-y5r0p4x1.js.map} +2 -2
- package/bin/chunk-y77ez1ej.js.map +9 -0
- package/bin/{chunk-77cxfwjv.js.map → chunk-y9pjf57f.js.map} +1 -1
- package/bin/{chunk-6bm18v4w.js.map → chunk-ybv69n13.js.map} +1 -1
- package/bin/{chunk-x0j6zt83.js.map → chunk-yjnxmdx5.js.map} +1 -1
- package/bin/chunk-yqn407a0.js.map +9 -0
- package/bin/{chunk-tb0f4dfz.js.map → chunk-yzh9qfef.js.map} +1 -1
- package/bin/index.js.map +1 -1
- package/bin/lildax.exe +0 -0
- package/package.json +1 -1
- package/bin/chunk-h6jav6rr.js.map +0 -9
- package/bin/chunk-h77hc9q0.js.map +0 -9
- package/bin/chunk-j96y437a.js.map +0 -9
- package/bin/chunk-jscajwnx.js.map +0 -9
- package/bin/chunk-n4bc2p29.js.map +0 -9
- package/bin/chunk-ny339t5n.js.map +0 -9
- package/bin/chunk-ph8xj7gz.js.map +0 -9
- package/bin/chunk-qt4k35pb.js.map +0 -9
- package/bin/chunk-rg3jde5f.js.map +0 -9
- package/bin/chunk-z24btbc0.js.map +0 -9
- /package/bin/{chunk-c8jy587n.js.map → chunk-5cyqcfga.js.map} +0 -0
- /package/bin/{chunk-nyhw1wge.js.map → chunk-he4ra84x.js.map} +0 -0
- /package/bin/{chunk-fr19nwzq.js.map → chunk-m0gxctaj.js.map} +0 -0
- /package/bin/{chunk-mxmh510w.js.map → chunk-rvya8phr.js.map} +0 -0
- /package/bin/{chunk-z8txj8wr.js.map → chunk-v7w3zb97.js.map} +0 -0
- /package/bin/{chunk-ar99dprb.js.map → chunk-wcgtbzx3.js.map} +0 -0
- /package/bin/{chunk-a0wmwbtm.js.map → chunk-zc8g703n.js.map} +0 -0
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"/**\n * The `Ref` module provides fiber-safe mutable references for state inside\n * Effect programs. A `Ref<A>` holds one value of type `A` and exposes reads,\n * writes, and atomic transformations as effects, so state changes compose with\n * Effect's concurrency model.\n *\n * **Mental model**\n *\n * - {@link make} creates a reference with an initial value\n * - {@link get} reads the current value, and {@link set} replaces it\n * - {@link update}, {@link updateAndGet}, and {@link getAndUpdate} transform\n * the current value atomically\n * - {@link modify} updates the value and returns a separate result computed\n * from the previous value\n * - The `Some` variants use `Option` to leave the value unchanged when a\n * partial update does not apply\n *\n * **Common tasks**\n *\n * - Create refs: {@link make}, {@link makeUnsafe}\n * - Read and write: {@link get}, {@link set}, {@link getAndSet},\n * {@link setAndGet}\n * - Update state: {@link update}, {@link updateAndGet}, {@link getAndUpdate}\n * - Update conditionally: {@link updateSome}, {@link updateSomeAndGet},\n * {@link getAndUpdateSome}, {@link modifySome}\n * - Compute while updating: {@link modify}\n *\n * **Example** (Updating shared state)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(0)\n *\n * const next = yield* Ref.updateAndGet(counter, (n) => n + 1)\n * const label = yield* Ref.modify(counter, (n) => [`count=${n}`, n + 1])\n *\n * return { label, next }\n * })\n * ```\n *\n * **Gotchas**\n *\n * - Each `Ref` operation is atomic for that reference, but multiple refs are\n * not updated transactionally as a group\n * - If the new value depends on the old value, prefer {@link update} or\n * {@link modify} over a separate {@link get} followed by {@link set}\n * - Unsafe operations are synchronous low-level accessors; prefer effectful\n * operations in application code\n *\n * @since 2.0.0\n */\nimport * as Effect from \"./Effect.js\";\nimport { dual, identity } from \"./Function.js\";\nimport { PipeInspectableProto } from \"./internal/core.js\";\nimport * as MutableRef from \"./MutableRef.js\";\nconst TypeId = \"~effect/Ref\";\nconst RefProto = {\n [TypeId]: {\n _A: identity\n },\n ...PipeInspectableProto,\n toJSON() {\n return {\n _id: \"Ref\",\n ref: this.ref\n };\n }\n};\n/**\n * Creates a new Ref with the specified initial value (unsafe version).\n *\n * **When to use**\n *\n * Use when you need immediate synchronous construction and can guarantee\n * that creating the `Ref` outside of `Effect` is safe.\n *\n * **Gotchas**\n *\n * Prefer `Ref.make` for Effect-wrapped creation in Effect programs.\n *\n * **Example** (Creating a ref unsafely)\n *\n * ```ts\n * import { Ref } from \"effect\"\n *\n * // Create a ref directly without Effect\n * const counter = Ref.makeUnsafe(0)\n *\n * // Get the current value\n * const value = Ref.getUnsafe(counter)\n * console.log(value) // 0\n *\n * // Note: This is unsafe and should be used carefully\n * // Prefer Ref.make for Effect-wrapped creation\n * ```\n *\n * @category constructors\n * @since 4.0.0\n */\nexport const makeUnsafe = value => {\n const self = Object.create(RefProto);\n self.ref = MutableRef.make(value);\n return self;\n};\n/**\n * Creates a new Ref with the specified initial value.\n *\n * **When to use**\n *\n * Use to create shared mutable state inside an Effect program.\n *\n * **Example** (Creating a ref)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const ref = yield* Ref.make(42)\n * const value = yield* Ref.get(ref)\n * console.log(value) // 42\n * })\n * ```\n *\n * @see {@link makeUnsafe} for synchronous construction outside Effect code\n *\n * @category constructors\n * @since 2.0.0\n */\nexport const make = value => Effect.sync(() => makeUnsafe(value));\n/**\n * Gets the current value of the Ref.\n *\n * **When to use**\n *\n * Use to read the current value without changing it.\n *\n * **Example** (Getting the current value)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const ref = yield* Ref.make(42)\n * const value = yield* Ref.get(ref)\n * console.log(value) // 42\n * })\n * ```\n *\n * @see {@link set} for replacing the current value\n *\n * @category getters\n * @since 2.0.0\n */\nexport const get = self => Effect.sync(() => self.ref.current);\n/**\n * Sets the value of the Ref to the specified value.\n *\n * **When to use**\n *\n * Use to replace the current value with a known value.\n *\n * **Example** (Setting a value)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const ref = yield* Ref.make(0)\n * yield* Ref.set(ref, 42)\n * const value = yield* Ref.get(ref)\n * console.log(value) // 42\n * })\n *\n * // Using multiple operations\n * const program2 = Effect.gen(function*() {\n * const ref = yield* Ref.make(0)\n * yield* Ref.set(ref, 100)\n * const value = yield* Ref.get(ref)\n * console.log(value) // 100\n * })\n * ```\n *\n * @see {@link getAndSet} for setting while returning the previous value\n * @see {@link setAndGet} for setting while returning the new value\n *\n * @category setters\n * @since 2.0.0\n */\nexport const set = /*#__PURE__*/dual(2, (self, value) => Effect.sync(() => MutableRef.set(self.ref, value)));\n/**\n * Gets the current value of the Ref, sets it to the specified value, and returns the previous value atomically.\n *\n * **When to use**\n *\n * Use to replace the value while returning the previous value.\n *\n * **Example** (Replacing a value atomically)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const ref = yield* Ref.make(\"initial\")\n *\n * // Get current value and set new value atomically\n * const previous = yield* Ref.getAndSet(ref, \"updated\")\n * console.log(previous) // \"initial\"\n *\n * const current = yield* Ref.get(ref)\n * console.log(current) // \"updated\"\n * })\n * ```\n *\n * @see {@link set} for setting without returning the previous value\n * @see {@link getAndUpdate} for deriving the new value from the previous value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const getAndSet = /*#__PURE__*/dual(2, (self, value) => Effect.sync(() => {\n const current = self.ref.current;\n self.ref.current = value;\n return current;\n}));\n/**\n * Gets the current value of the Ref, updates it with the given function, and returns the previous value atomically.\n *\n * **When to use**\n *\n * Use to derive a new value while returning the previous value.\n *\n * **Example** (Updating and returning the previous value)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(10)\n *\n * // Get current value and update it atomically\n * const previous = yield* Ref.getAndUpdate(counter, (n) => n * 2)\n * console.log(previous) // 10\n *\n * const current = yield* Ref.get(counter)\n * console.log(current) // 20\n * })\n * ```\n *\n * @see {@link update} for updating without returning the previous value\n * @see {@link updateAndGet} for returning the new value instead\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const getAndUpdate = /*#__PURE__*/dual(2, (self, f) => Effect.sync(() => {\n const current = self.ref.current;\n self.ref.current = f(current);\n return current;\n}));\n/**\n * Gets the current value of the Ref and updates it atomically with the given partial function.\n *\n * **When to use**\n *\n * Use to return the previous value while applying a conditional update.\n *\n * **Details**\n *\n * If the partial function returns `Option.some`, the Ref is updated with the\n * new value. If it returns `Option.none`, the Ref is left unchanged. The effect\n * always returns the value that was in the Ref before the attempted update.\n *\n * **Example** (Conditionally updating and returning the previous value)\n *\n * ```ts\n * import { Effect, Option, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(5)\n *\n * // Only update if value is greater than 3\n * const previous1 = yield* Ref.getAndUpdateSome(\n * counter,\n * (n) => n > 3 ? Option.some(n * 2) : Option.none()\n * )\n * console.log(previous1) // 5\n *\n * const current1 = yield* Ref.get(counter)\n * console.log(current1) // 10\n *\n * // Try to update again (won't update since 10 > 3 is true but let's say condition is n < 3)\n * const previous2 = yield* Ref.getAndUpdateSome(\n * counter,\n * (n) => n < 3 ? Option.some(n * 2) : Option.none()\n * )\n * console.log(previous2) // 10\n *\n * const current2 = yield* Ref.get(counter)\n * console.log(current2) // 10 (unchanged)\n * })\n * ```\n *\n * @see {@link getAndUpdate} for always applying an update\n * @see {@link updateSome} for conditional updates without returning the previous value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const getAndUpdateSome = /*#__PURE__*/dual(2, (self, pf) => Effect.sync(() => {\n const current = self.ref.current;\n const option = pf(current);\n if (option._tag === \"Some\") {\n self.ref.current = option.value;\n }\n return current;\n}));\n/**\n * Sets the value of the Ref atomically to the specified value and returns the new value.\n *\n * **When to use**\n *\n * Use when you want to set a value and immediately get it back in one\n * atomic operation.\n *\n * **Example** (Setting and returning the new value)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const ref = yield* Ref.make(10)\n *\n * // Set new value and get it back in one operation\n * const newValue = yield* Ref.setAndGet(ref, 42)\n * console.log(newValue) // 42\n *\n * // Verify the ref contains the new value\n * const current = yield* Ref.get(ref)\n * console.log(current) // 42\n * })\n *\n * // Useful for sequential operations\n * const program2 = Effect.gen(function*() {\n * const counter = yield* Ref.make(0)\n *\n * const newValue = yield* Ref.setAndGet(counter, 20)\n * console.log(newValue) // 20\n * })\n * ```\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const setAndGet = /*#__PURE__*/dual(2, (self, value) => Effect.sync(() => self.ref.current = value));\n/**\n * Modifies the value of the Ref atomically using the given function.\n *\n * **When to use**\n *\n * Use to compute both a separate return value and the next stored value in one\n * atomic update.\n *\n * **Details**\n *\n * The function receives the current value and returns a tuple of\n * `[result, newValue]`. The Ref is updated with `newValue`, and `result` is\n * returned by the effect.\n *\n * **Example** (Modifying a value atomically)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(10)\n *\n * // Modify the ref and return some computation result\n * const result = yield* Ref.modify(counter, (n) => [\n * `Previous value was ${n}`, // Return value\n * n * 2 // New ref value\n * ])\n *\n * console.log(result) // \"Previous value was 10\"\n *\n * const current = yield* Ref.get(counter)\n * console.log(current) // 20\n * })\n *\n * // Example with more complex computation\n * const program2 = Effect.gen(function*() {\n * const state = yield* Ref.make({ count: 0, total: 0 })\n *\n * const incremented = yield* Ref.modify(state, (s) => [\n * s.count, // Return previous count\n * { count: s.count + 1, total: s.total + s.count + 1 } // New state\n * ])\n *\n * console.log(incremented) // 0\n * })\n * ```\n *\n * @see {@link updateAndGet} for returning the new stored value\n * @see {@link modifySome} for optionally updating while returning a separate result\n *\n * @category setters\n * @since 2.0.0\n */\nexport const modify = /*#__PURE__*/dual(2, (self, f) => Effect.sync(() => {\n const [b, a] = f(self.ref.current);\n self.ref.current = a;\n return b;\n}));\n/**\n * Computes a result atomically and optionally updates the value of the `Ref`.\n *\n * **When to use**\n *\n * Use to compute a return value while optionally updating the stored value.\n *\n * **Details**\n *\n * The callback receives the current value and returns `[result, nextValue]`,\n * where `nextValue` is an `Option`. If `nextValue` is `Option.some(value)`,\n * the `Ref` is updated to `value`; if it is `Option.none()`, the `Ref` is left\n * unchanged. The returned effect always succeeds with `result`.\n *\n * **Example** (Conditionally modifying a value)\n *\n * ```ts\n * import { Effect, Option, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(5)\n *\n * // Only modify if value is greater than 3\n * const result1 = yield* Ref.modifySome(\n * counter,\n * (n) =>\n * n > 3\n * ? [`incremented ${n}`, Option.some(n + 10)]\n * : [\"no change\", Option.none()]\n * )\n *\n * console.log(result1) // \"incremented 5\"\n *\n * const current1 = yield* Ref.get(counter)\n * console.log(current1) // 15\n *\n * // Try to modify with a condition that fails\n * const result2 = yield* Ref.modifySome(\n * counter,\n * (n) =>\n * n < 10\n * ? [`decremented ${n}`, Option.some(n - 5)]\n * : [\"no change\", Option.none()]\n * )\n *\n * console.log(result2) // \"no change\"\n *\n * const current2 = yield* Ref.get(counter)\n * console.log(current2) // 15 (unchanged)\n * })\n * ```\n *\n * @see {@link modify} for always storing a new value\n * @see {@link updateSome} for optional updates without a separate return value\n *\n * @category setters\n * @since 2.0.0\n */\nexport const modifySome = /*#__PURE__*/dual(2, (self, pf) => modify(self, value => {\n const [b, option] = pf(value);\n return [b, option._tag === \"None\" ? value : option.value];\n}));\n/**\n * Updates the value of the Ref atomically using the given function.\n *\n * **When to use**\n *\n * Use to apply a state transition without returning a value.\n *\n * **Example** (Updating a value)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(5)\n *\n * // Update the value\n * yield* Ref.update(counter, (n) => n * 2)\n *\n * const value = yield* Ref.get(counter)\n * console.log(value) // 10\n * })\n *\n * // Using multiple operations\n * const program2 = Effect.gen(function*() {\n * const counter = yield* Ref.make(5)\n * yield* Ref.update(counter, (n: number) => n + 10)\n * const value = yield* Ref.get(counter)\n * console.log(value) // 15\n * })\n * ```\n *\n * @see {@link updateAndGet} for returning the new value\n * @see {@link getAndUpdate} for returning the previous value\n *\n * @category setters\n * @since 2.0.0\n */\nexport const update = /*#__PURE__*/dual(2, (self, f) => Effect.sync(() => {\n self.ref.current = f(self.ref.current);\n}));\n/**\n * Updates the value of the Ref atomically using the given function and returns the new value.\n *\n * **When to use**\n *\n * Use to apply a state transition and return the new stored value.\n *\n * **Example** (Updating and returning the new value)\n *\n * ```ts\n * import { Effect, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(5)\n *\n * // Update and get the new value in one operation\n * const newValue = yield* Ref.updateAndGet(counter, (n) => n * 3)\n * console.log(newValue) // 15\n *\n * // Verify the ref contains the new value\n * const current = yield* Ref.get(counter)\n * console.log(current) // 15\n * })\n * ```\n *\n * @see {@link update} for updating without returning the new value\n * @see {@link getAndUpdate} for returning the previous value instead\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateAndGet = /*#__PURE__*/dual(2, (self, f) => Effect.sync(() => self.ref.current = f(self.ref.current)));\n/**\n * Updates the value of the Ref atomically using the given partial function.\n *\n * **When to use**\n *\n * Use to apply a conditional update without returning a value.\n *\n * **Details**\n *\n * If the partial function returns `Option.some`, the Ref is updated with the\n * new value. If it returns `Option.none`, the Ref is left unchanged.\n *\n * **Example** (Conditionally updating a value)\n *\n * ```ts\n * import { Effect, Option, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(5)\n *\n * // Only update if value is even\n * yield* Ref.updateSome(\n * counter,\n * (n) => n % 2 === 0 ? Option.some(n * 2) : Option.none()\n * )\n *\n * let current = yield* Ref.get(counter)\n * console.log(current) // 5 (unchanged because 5 is odd)\n *\n * // Set to even number and try again\n * yield* Ref.set(counter, 6)\n * yield* Ref.updateSome(\n * counter,\n * (n) => n % 2 === 0 ? Option.some(n * 2) : Option.none()\n * )\n *\n * current = yield* Ref.get(counter)\n * console.log(current) // 12 (updated because 6 is even)\n * })\n * ```\n *\n * @see {@link update} for always applying an update\n * @see {@link updateSomeAndGet} for returning the resulting current value\n *\n * @category setters\n * @since 2.0.0\n */\nexport const updateSome = /*#__PURE__*/dual(2, (self, f) => Effect.sync(() => {\n const option = f(self.ref.current);\n if (option._tag === \"Some\") {\n self.ref.current = option.value;\n }\n}));\n/**\n * Updates the value of the Ref atomically using the given partial function and returns the current value.\n *\n * **When to use**\n *\n * Use to apply a conditional update and return the resulting current value.\n *\n * **Details**\n *\n * If the partial function returns `Option.some`, the Ref is updated with the\n * new value. If it returns `Option.none`, the Ref is left unchanged. The effect\n * returns the current value of the Ref after the potential update.\n *\n * **Example** (Conditionally updating and returning the current value)\n *\n * ```ts\n * import { Effect, Option, Ref } from \"effect\"\n *\n * const program = Effect.gen(function*() {\n * const counter = yield* Ref.make(10)\n *\n * // Only update if value is greater than 5\n * const result1 = yield* Ref.updateSomeAndGet(\n * counter,\n * (n) => n > 5 ? Option.some(n / 2) : Option.none()\n * )\n * console.log(result1) // 5 (updated and returned)\n *\n * // Try to update again with same condition\n * const result2 = yield* Ref.updateSomeAndGet(\n * counter,\n * (n) => n > 5 ? Option.some(n / 2) : Option.none()\n * )\n * console.log(result2) // 5 (unchanged because 5 is not > 5)\n * })\n * ```\n *\n * @see {@link updateSome} for conditional updates without returning a value\n * @see {@link updateAndGet} for always updating and returning the new value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateSomeAndGet = /*#__PURE__*/dual(2, (self, pf) => Effect.sync(() => {\n const option = pf(self.ref.current);\n if (option._tag === \"Some\") {\n self.ref.current = option.value;\n }\n return self.ref.current;\n}));\n/**\n * Gets the current value of the Ref synchronously (unsafe version).\n *\n * **When to use**\n *\n * Use when you need immediate synchronous access and can guarantee that\n * reading the `Ref` outside of `Effect` is safe.\n *\n * **Gotchas**\n *\n * Prefer `Ref.get` for Effect-wrapped access in Effect programs.\n *\n * **Example** (Reading a ref unsafely)\n *\n * ```ts\n * import { Ref } from \"effect\"\n *\n * // Create a ref directly\n * const counter = Ref.makeUnsafe(42)\n *\n * // Get the value synchronously\n * const value = Ref.getUnsafe(counter)\n * console.log(value) // 42\n *\n * // Note: This is unsafe and should be used carefully\n * // Prefer Ref.get for Effect-wrapped access\n * ```\n *\n * @category getters\n * @since 4.0.0\n */\nexport const getUnsafe = self => self.ref.current;\n//# sourceMappingURL=Ref.js.map",
|
|
10
10
|
"/**\n * The `SynchronizedRef` module provides mutable references whose updates are\n * serialized, including updates that run effects before deciding the next\n * value. A `SynchronizedRef<A>` behaves like a `Ref<A>` for reading and basic\n * updates, but uses an internal semaphore so concurrent modifications observe a\n * consistent current value and apply one at a time.\n *\n * **When to use**\n *\n * Use to coordinate shared state that may be updated by many fibers\n * - Running effectful state transitions that must not overlap\n * - Computing both a return value and a new stored value atomically\n * - Applying partial updates with `Option`, where `None` leaves the value\n * unchanged\n *\n * **Gotchas**\n *\n * - Effectful update functions run while the semaphore is held, so long-running\n * effects delay other updates to the same ref\n * - Failed effectful updates do not replace the stored value\n * - `getUnsafe` and `makeUnsafe` bypass the `Effect` API and should be reserved\n * for low-level or carefully controlled code\n *\n * @since 2.0.0\n */\nimport * as Effect from \"./Effect.js\";\nimport { dual } from \"./Function.js\";\nimport { PipeInspectableProto } from \"./internal/core.js\";\nimport * as Option from \"./Option.js\";\nimport * as Ref from \"./Ref.js\";\nimport * as Semaphore from \"./Semaphore.js\";\nconst TypeId = \"~effect/SynchronizedRef\";\nconst Proto = {\n ...PipeInspectableProto,\n [TypeId]: TypeId,\n toJSON() {\n return {\n _id: \"SynchronizedRef\",\n value: this.backing.ref.current\n };\n }\n};\n/**\n * Creates a `SynchronizedRef` synchronously from an initial value.\n *\n * **When to use**\n *\n * Use when synchronous construction is required outside an Effect workflow.\n *\n * @category constructors\n * @since 4.0.0\n */\nexport const makeUnsafe = value => {\n const self = Object.create(Proto);\n self.semaphore = Semaphore.makeUnsafe(1);\n self.backing = Ref.makeUnsafe(value);\n return self;\n};\n/**\n * Creates a `SynchronizedRef` from an initial value, wrapped in an `Effect`.\n *\n * **When to use**\n *\n * Use to create a synchronized reference inside an Effect program when later\n * updates may run effects and must be serialized.\n *\n * **Details**\n *\n * The returned effect constructs a fresh `SynchronizedRef` by delegating to\n * `makeUnsafe` when the effect is evaluated.\n *\n * @see {@link makeUnsafe} for synchronous construction when the caller controls safe initialization\n * @see {@link Ref.make} for a plain `Ref` when updates do not need effectful synchronization\n *\n * @category constructors\n * @since 2.0.0\n */\nexport const make = value => Effect.sync(() => makeUnsafe(value));\n/**\n * Reads the current value synchronously, bypassing the `Effect` API and the\n * ref's semaphore.\n *\n * **When to use**\n *\n * Use when you need immediate synchronous access to a `SynchronizedRef` value\n * in low-level code that can safely read outside an `Effect`.\n *\n * @see {@link get} for the Effect-wrapped read when composing inside Effect programs\n *\n * @category getters\n * @since 4.0.0\n */\nexport const getUnsafe = self => self.backing.ref.current;\n/**\n * Returns an `Effect` that reads the current value of the `SynchronizedRef`.\n *\n * **When to use**\n *\n * Use to read the current value of a `SynchronizedRef` inside an `Effect`\n * program without changing it.\n *\n * @see {@link getUnsafe} for synchronous reads when the caller controls safe access outside `Effect`\n *\n * @category getters\n * @since 2.0.0\n */\nexport const get = self => Effect.sync(() => getUnsafe(self));\n/**\n * Sets a new value atomically and returns the previous value, serialized by the\n * ref's semaphore.\n *\n * **When to use**\n *\n * Use to replace a `SynchronizedRef` with a known value when the previous value\n * is also needed.\n *\n * @see {@link set} for setting a value without returning the previous value\n * @see {@link setAndGet} for setting a value and returning the new value\n * @see {@link getAndUpdate} for deriving the new value from the current value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const getAndSet = /*#__PURE__*/dual(2, (self, value) => self.semaphore.withPermit(Ref.getAndSet(self.backing, value)));\n/**\n * Updates the current value atomically with a function and returns the previous\n * value, serialized by the ref's semaphore.\n *\n * **When to use**\n *\n * Use to run a pure state update when the previous stored value is also needed.\n *\n * @see {@link update} for updating without returning a value\n * @see {@link updateAndGet} for updating and returning the new value\n * @see {@link getAndUpdateEffect} for effectful updates that return the previous value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const getAndUpdate = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Ref.getAndUpdate(self.backing, f)));\n/**\n * Runs an effectful update atomically while holding the ref's semaphore, sets\n * the new value if the effect succeeds, and returns the previous value.\n *\n * **When to use**\n *\n * Use when an effectful state transition must return the previous stored value.\n *\n * @see {@link getAndUpdate} for pure updates that return the previous value\n * @see {@link updateEffect} for effectful updates without returning a value\n * @see {@link updateAndGetEffect} for effectful updates that return the new value\n * @see {@link modifyEffect} for effectful updates with a custom return value\n * @see {@link getAndUpdateSomeEffect} for conditional effectful updates that return the previous value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const getAndUpdateEffect = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Effect.suspend(() => {\n const value = getUnsafe(self);\n return Effect.map(f(value), newValue => {\n self.backing.ref.current = newValue;\n return value;\n });\n})));\n/**\n * Applies a partial update atomically and returns the previous value. If the\n * function returns `Option.some`, the ref is updated; if it returns\n * `Option.none`, the ref is left unchanged.\n *\n * **When to use**\n *\n * Use to return the previous value while applying a pure conditional update.\n *\n * @see {@link getAndUpdate} for always applying a pure update\n * @see {@link updateSome} for applying a pure conditional update without returning the previous value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const getAndUpdateSome = /*#__PURE__*/dual(2, (self, pf) => self.semaphore.withPermit(Ref.getAndUpdateSome(self, pf)));\n/**\n * Runs an effectful partial update atomically while holding the ref's semaphore\n * and returns the previous value. `Option.some` updates the ref; `Option.none`\n * leaves it unchanged.\n *\n * **When to use**\n *\n * Use to return the previous value while running an effectful conditional\n * update.\n *\n * @see {@link getAndUpdateSome} for the pure conditional variant\n * @see {@link updateSomeEffect} for effectful conditional updates without returning the previous value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const getAndUpdateSomeEffect = /*#__PURE__*/dual(2, (self, pf) => self.semaphore.withPermit(Effect.suspend(() => {\n const value = getUnsafe(self);\n return Effect.flatMap(pf(value), option => {\n if (Option.isNone(option)) {\n return Effect.succeed(value);\n }\n self.backing.ref.current = option.value;\n return Effect.succeed(value);\n });\n})));\n/**\n * Computes a return value and a new ref value atomically, stores the new value,\n * and returns the computed result.\n *\n * **When to use**\n *\n * Use to derive a separate result and the next stored value from the same\n * current value in one serialized pure update.\n *\n * @see {@link modifyEffect} for effectfully deriving both the result and next stored value\n * @see {@link modifySome} for deriving a result and optionally updating the stored value\n * @see {@link updateAndGet} for returning the new stored value instead of a separate result\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const modify = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Ref.modify(self.backing, f)));\n/**\n * Runs an effectful modification atomically while holding the ref's semaphore,\n * stores the new value if the effect succeeds, and returns the computed result.\n *\n * **When to use**\n *\n * Use to effectfully compute both a separate return value and the next stored\n * value in one serialized update.\n *\n * @see {@link modify} for the pure variant\n * @see {@link updateEffect} for effectfully storing a new value without a separate result\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const modifyEffect = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Effect.suspend(() => {\n const value = getUnsafe(self);\n return Effect.map(f(value), ([b, a]) => {\n self.backing.ref.current = a;\n return b;\n });\n})));\n/**\n * Computes a return value and an optional new ref value atomically.\n * `Option.some` updates the ref; `Option.none` leaves it unchanged.\n *\n * **When to use**\n *\n * Use to compute a return value while optionally updating the stored value.\n *\n * @see {@link modify} for always storing a new value\n * @see {@link updateSome} for optional updates without a separate return value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const modifySome = /*#__PURE__*/dual(2, (self, pf) => self.semaphore.withPermit(Ref.modifySome(self.backing, pf)));\n/**\n * Runs an effectful modification atomically while holding the ref's semaphore.\n * The effect computes a return value and an optional new ref value;\n * `Option.some` updates the ref and `Option.none` leaves it unchanged.\n *\n * **When to use**\n *\n * Use to effectfully compute a return value while optionally updating the\n * stored value.\n *\n * @see {@link modifySome} for the pure variant\n * @see {@link updateSomeEffect} for effectful optional updates without a separate return value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const modifySomeEffect = /*#__PURE__*/dual(2, (self, pf) => self.semaphore.withPermit(Effect.suspend(() => {\n const value = getUnsafe(self);\n return Effect.flatMap(pf(value), ([b, maybeA]) => {\n if (Option.isNone(maybeA)) {\n return Effect.succeed(b);\n }\n self.backing.ref.current = maybeA.value;\n return Effect.succeed(b);\n });\n})));\n/**\n * Sets the value of the `SynchronizedRef`, serialized by the ref's semaphore.\n *\n * **When to use**\n *\n * Use to replace the current value of a `SynchronizedRef` with a known value\n * while keeping the write serialized with other synchronized updates.\n *\n * @see {@link getAndSet} for replacing the value when the previous value is needed\n * @see {@link setAndGet} for replacing the value when the new value should be returned\n * @see {@link update} for deriving the next value from the current value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const set = /*#__PURE__*/dual(2, (self, value) => self.semaphore.withPermit(Ref.set(self.backing, value)));\n/**\n * Sets the value of the `SynchronizedRef` and returns the new value.\n *\n * **When to use**\n *\n * Use to replace the current value with a known value and return that new\n * value.\n *\n * @see {@link set} for setting without returning a value\n * @see {@link getAndSet} for setting while returning the previous value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const setAndGet = /*#__PURE__*/dual(2, (self, value) => self.semaphore.withPermit(Ref.setAndGet(self.backing, value)));\n/**\n * Updates the value of the `SynchronizedRef` with a function, serialized by the\n * ref's semaphore.\n *\n * **When to use**\n *\n * Use to apply a pure state transition to a `SynchronizedRef` as a serialized\n * `Effect`.\n *\n * @see {@link updateEffect} for effectfully deriving the next value\n * @see {@link updateAndGet} for returning the new stored value\n * @see {@link getAndUpdate} for returning the previous stored value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const update = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Ref.update(self.backing, f)));\n/**\n * Runs an effectful update while holding the ref's semaphore and stores the new\n * value if the effect succeeds.\n *\n * **When to use**\n *\n * Use to run an effectful state transition on a `SynchronizedRef` when storing\n * the new value is the only result you need.\n *\n * @see {@link update} for a pure state transition\n * @see {@link getAndUpdateEffect} for returning the previous stored value\n * @see {@link updateAndGetEffect} for returning the new stored value\n * @see {@link modifyEffect} for returning a separate result while storing a new value\n * @see {@link updateSomeEffect} for effectfully applying only some state transitions\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateEffect = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Effect.suspend(() => {\n const value = getUnsafe(self);\n return Effect.map(f(value), newValue => {\n self.backing.ref.current = newValue;\n });\n})));\n/**\n * Updates the value of the `SynchronizedRef` with a function and returns the\n * new value.\n *\n * **When to use**\n *\n * Use to apply a pure state transition and return the new stored value.\n *\n * @see {@link update} for updating without returning the new value\n * @see {@link getAndUpdate} for updating while returning the previous value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateAndGet = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Ref.updateAndGet(self.backing, f)));\n/**\n * Runs an effectful update while holding the ref's semaphore, stores the new\n * value if the effect succeeds, and returns that new value.\n *\n * **When to use**\n *\n * Use to run an effectful state transition and return the new stored value.\n *\n * @see {@link updateEffect} for effectful updates without returning the new value\n * @see {@link updateAndGet} for the pure variant\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateAndGetEffect = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Effect.suspend(() => {\n const value = getUnsafe(self);\n return Effect.map(f(value), newValue => {\n self.backing.ref.current = newValue;\n return newValue;\n });\n})));\n/**\n * Applies a partial update to the current value. `Option.some` stores the new\n * value; `Option.none` leaves the ref unchanged.\n *\n * **When to use**\n *\n * Use to apply a pure conditional update without returning a value.\n *\n * @see {@link update} for always applying a pure update\n * @see {@link updateSomeAndGet} for returning the resulting current value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateSome = /*#__PURE__*/dual(2, (self, f) => self.semaphore.withPermit(Ref.updateSome(self.backing, f)));\n/**\n * Runs an effectful partial update while holding the ref's semaphore.\n * `Option.some` stores the new value; `Option.none` leaves the ref unchanged.\n *\n * **When to use**\n *\n * Use to run an effectful conditional update without returning a value.\n *\n * @see {@link updateSome} for the pure conditional variant\n * @see {@link updateEffect} for effectful updates that always store a new value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateSomeEffect = /*#__PURE__*/dual(2, (self, pf) => self.semaphore.withPermit(Effect.suspend(() => {\n const value = getUnsafe(self);\n return Effect.map(pf(value), option => {\n if (Option.isNone(option)) {\n return;\n }\n self.backing.ref.current = option.value;\n });\n})));\n/**\n * Applies a partial update and returns the resulting current value.\n * `Option.some` stores and returns the new value; `Option.none` returns the\n * unchanged value.\n *\n * **When to use**\n *\n * Use to apply a pure conditional update and return the resulting current\n * value.\n *\n * @see {@link updateSome} for conditional updates without returning a value\n * @see {@link updateAndGet} for always applying a pure update and returning the new value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateSomeAndGet = /*#__PURE__*/dual(2, (self, pf) => self.semaphore.withPermit(Ref.updateSomeAndGet(self.backing, pf)));\n/**\n * Runs an effectful partial update while holding the ref's semaphore and\n * returns the resulting current value. `Option.some` stores and returns the new\n * value; `Option.none` returns the unchanged value.\n *\n * **When to use**\n *\n * Use to run an effectful conditional update and return the resulting current\n * value.\n *\n * @see {@link updateSomeEffect} for effectful conditional updates without returning a value\n * @see {@link updateAndGetEffect} for effectful updates that always store and return a new value\n *\n * @category mutations\n * @since 2.0.0\n */\nexport const updateSomeAndGetEffect = /*#__PURE__*/dual(2, (self, pf) => self.semaphore.withPermit(Effect.suspend(() => {\n const value = getUnsafe(self);\n return Effect.flatMap(pf(value), option => {\n if (Option.isNone(option)) {\n return Effect.succeed(value);\n }\n self.backing.ref.current = option.value;\n return Effect.succeed(option.value);\n });\n})));\n//# sourceMappingURL=SynchronizedRef.js.map"
|
|
11
11
|
],
|
|
12
|
-
"mappings": "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",
|
|
13
|
-
"debugId": "
|
|
12
|
+
"mappings": "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",
|
|
13
|
+
"debugId": "CF32A305AE9DF9B064756E2164756E21",
|
|
14
14
|
"names": []
|
|
15
15
|
}
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"import { Effect } from \"effect\"\nimport type { DatabaseMigration } from \"../migration\"\n\nexport default {\n id: \"20260213144116_wakeful_the_professor\",\n up(tx) {\n return Effect.gen(function* () {\n yield* tx.run(`\n CREATE TABLE \\`control_account\\` (\n \\`email\\` text NOT NULL,\n \\`url\\` text NOT NULL,\n \\`access_token\\` text NOT NULL,\n \\`refresh_token\\` text NOT NULL,\n \\`token_expiry\\` integer,\n \\`active\\` integer NOT NULL,\n \\`time_created\\` integer NOT NULL,\n \\`time_updated\\` integer NOT NULL,\n CONSTRAINT \\`control_account_pk\\` PRIMARY KEY(\\`email\\`, \\`url\\`)\n );\n `)\n })\n },\n} satisfies DatabaseMigration.Migration\n"
|
|
6
6
|
],
|
|
7
7
|
"mappings": ";wHAGA,SAAe,QACb,GAAI,uCACJ,EAAE,CAAC,EAAI,CACL,OAAO,EAAO,IAAI,SAAU,EAAG,CAC7B,MAAO,EAAG,IAAI,6bAYb,EACF,EAEL",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "1F99F5376996546464756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
"// src/combine-headers.ts\nfunction combineHeaders(...headers) {\n return headers.reduce(\n (combinedHeaders, currentHeaders) => ({\n ...combinedHeaders,\n ...currentHeaders != null ? currentHeaders : {}\n }),\n {}\n );\n}\n\n// src/convert-async-iterator-to-readable-stream.ts\nfunction convertAsyncIteratorToReadableStream(iterator) {\n let cancelled = false;\n return new ReadableStream({\n /**\n * Called when the consumer wants to pull more data from the stream.\n *\n * @param {ReadableStreamDefaultController<T>} controller - The controller to enqueue data into the stream.\n * @returns {Promise<void>}\n */\n async pull(controller) {\n if (cancelled) return;\n try {\n const { value, done } = await iterator.next();\n if (done) {\n controller.close();\n } else {\n controller.enqueue(value);\n }\n } catch (error) {\n controller.error(error);\n }\n },\n /**\n * Called when the consumer cancels the stream.\n */\n async cancel(reason) {\n cancelled = true;\n if (iterator.return) {\n try {\n await iterator.return(reason);\n } catch (e) {\n }\n }\n }\n });\n}\n\n// src/create-tool-name-mapping.ts\nfunction createToolNameMapping({\n tools = [],\n providerToolNames,\n resolveProviderToolName\n}) {\n var _a2;\n const customToolNameToProviderToolName = {};\n const providerToolNameToCustomToolName = {};\n for (const tool2 of tools) {\n if (tool2.type === \"provider\") {\n const providerToolName = (_a2 = resolveProviderToolName == null ? void 0 : resolveProviderToolName(tool2)) != null ? _a2 : tool2.id in providerToolNames ? providerToolNames[tool2.id] : void 0;\n if (providerToolName == null) {\n continue;\n }\n customToolNameToProviderToolName[tool2.name] = providerToolName;\n providerToolNameToCustomToolName[providerToolName] = tool2.name;\n }\n }\n return {\n toProviderToolName: (customToolName) => {\n var _a3;\n return (_a3 = customToolNameToProviderToolName[customToolName]) != null ? _a3 : customToolName;\n },\n toCustomToolName: (providerToolName) => {\n var _a3;\n return (_a3 = providerToolNameToCustomToolName[providerToolName]) != null ? _a3 : providerToolName;\n }\n };\n}\n\n// src/delay.ts\nasync function delay(delayInMs, options) {\n if (delayInMs == null) {\n return Promise.resolve();\n }\n const signal = options == null ? void 0 : options.abortSignal;\n return new Promise((resolve2, reject) => {\n if (signal == null ? void 0 : signal.aborted) {\n reject(createAbortError());\n return;\n }\n const timeoutId = setTimeout(() => {\n cleanup();\n resolve2();\n }, delayInMs);\n const cleanup = () => {\n clearTimeout(timeoutId);\n signal == null ? void 0 : signal.removeEventListener(\"abort\", onAbort);\n };\n const onAbort = () => {\n cleanup();\n reject(createAbortError());\n };\n signal == null ? void 0 : signal.addEventListener(\"abort\", onAbort);\n });\n}\nfunction createAbortError() {\n return new DOMException(\"Delay was aborted\", \"AbortError\");\n}\n\n// src/delayed-promise.ts\nvar DelayedPromise = class {\n constructor() {\n this.status = { type: \"pending\" };\n this._resolve = void 0;\n this._reject = void 0;\n }\n get promise() {\n if (this._promise) {\n return this._promise;\n }\n this._promise = new Promise((resolve2, reject) => {\n if (this.status.type === \"resolved\") {\n resolve2(this.status.value);\n } else if (this.status.type === \"rejected\") {\n reject(this.status.error);\n }\n this._resolve = resolve2;\n this._reject = reject;\n });\n return this._promise;\n }\n resolve(value) {\n var _a2;\n this.status = { type: \"resolved\", value };\n if (this._promise) {\n (_a2 = this._resolve) == null ? void 0 : _a2.call(this, value);\n }\n }\n reject(error) {\n var _a2;\n this.status = { type: \"rejected\", error };\n if (this._promise) {\n (_a2 = this._reject) == null ? void 0 : _a2.call(this, error);\n }\n }\n isResolved() {\n return this.status.type === \"resolved\";\n }\n isRejected() {\n return this.status.type === \"rejected\";\n }\n isPending() {\n return this.status.type === \"pending\";\n }\n};\n\n// src/extract-response-headers.ts\nfunction extractResponseHeaders(response) {\n return Object.fromEntries([...response.headers]);\n}\n\n// src/uint8-utils.ts\nvar { btoa, atob } = globalThis;\nfunction convertBase64ToUint8Array(base64String) {\n const base64Url = base64String.replace(/-/g, \"+\").replace(/_/g, \"/\");\n const latin1string = atob(base64Url);\n return Uint8Array.from(latin1string, (byte) => byte.codePointAt(0));\n}\nfunction convertUint8ArrayToBase64(array) {\n let latin1string = \"\";\n for (let i = 0; i < array.length; i++) {\n latin1string += String.fromCodePoint(array[i]);\n }\n return btoa(latin1string);\n}\nfunction convertToBase64(value) {\n return value instanceof Uint8Array ? convertUint8ArrayToBase64(value) : value;\n}\n\n// src/convert-image-model-file-to-data-uri.ts\nfunction convertImageModelFileToDataUri(file) {\n if (file.type === \"url\") return file.url;\n return `data:${file.mediaType};base64,${typeof file.data === \"string\" ? file.data : convertUint8ArrayToBase64(file.data)}`;\n}\n\n// src/convert-to-form-data.ts\nfunction convertToFormData(input, options = {}) {\n const { useArrayBrackets = true } = options;\n const formData = new FormData();\n for (const [key, value] of Object.entries(input)) {\n if (value == null) {\n continue;\n }\n if (Array.isArray(value)) {\n if (value.length === 1) {\n formData.append(key, value[0]);\n continue;\n }\n const arrayKey = useArrayBrackets ? `${key}[]` : key;\n for (const item of value) {\n formData.append(arrayKey, item);\n }\n continue;\n }\n formData.append(key, value);\n }\n return formData;\n}\n\n// src/download-error.ts\nimport { AISDKError } from \"@ai-sdk/provider\";\nvar name = \"AI_DownloadError\";\nvar marker = `vercel.ai.error.${name}`;\nvar symbol = Symbol.for(marker);\nvar _a, _b;\nvar DownloadError = class extends (_b = AISDKError, _a = symbol, _b) {\n constructor({\n url,\n statusCode,\n statusText,\n cause,\n message = cause == null ? `Failed to download ${url}: ${statusCode} ${statusText}` : `Failed to download ${url}: ${cause}`\n }) {\n super({ name, message, cause });\n this[_a] = true;\n this.url = url;\n this.statusCode = statusCode;\n this.statusText = statusText;\n }\n static isInstance(error) {\n return AISDKError.hasMarker(error, marker);\n }\n};\n\n// src/read-response-with-size-limit.ts\nvar DEFAULT_MAX_DOWNLOAD_SIZE = 2 * 1024 * 1024 * 1024;\nasync function readResponseWithSizeLimit({\n response,\n url,\n maxBytes = DEFAULT_MAX_DOWNLOAD_SIZE\n}) {\n const contentLength = response.headers.get(\"content-length\");\n if (contentLength != null) {\n const length = parseInt(contentLength, 10);\n if (!isNaN(length) && length > maxBytes) {\n throw new DownloadError({\n url,\n message: `Download of ${url} exceeded maximum size of ${maxBytes} bytes (Content-Length: ${length}).`\n });\n }\n }\n const body = response.body;\n if (body == null) {\n return new Uint8Array(0);\n }\n const reader = body.getReader();\n const chunks = [];\n let totalBytes = 0;\n try {\n while (true) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n totalBytes += value.length;\n if (totalBytes > maxBytes) {\n throw new DownloadError({\n url,\n message: `Download of ${url} exceeded maximum size of ${maxBytes} bytes.`\n });\n }\n chunks.push(value);\n }\n } finally {\n try {\n await reader.cancel();\n } finally {\n reader.releaseLock();\n }\n }\n const result = new Uint8Array(totalBytes);\n let offset = 0;\n for (const chunk of chunks) {\n result.set(chunk, offset);\n offset += chunk.length;\n }\n return result;\n}\n\n// src/validate-download-url.ts\nfunction validateDownloadUrl(url) {\n let parsed;\n try {\n parsed = new URL(url);\n } catch (e) {\n throw new DownloadError({\n url,\n message: `Invalid URL: ${url}`\n });\n }\n if (parsed.protocol === \"data:\") {\n return;\n }\n if (parsed.protocol !== \"http:\" && parsed.protocol !== \"https:\") {\n throw new DownloadError({\n url,\n message: `URL scheme must be http, https, or data, got ${parsed.protocol}`\n });\n }\n const hostname = parsed.hostname;\n if (!hostname) {\n throw new DownloadError({\n url,\n message: `URL must have a hostname`\n });\n }\n if (hostname === \"localhost\" || hostname.endsWith(\".local\") || hostname.endsWith(\".localhost\")) {\n throw new DownloadError({\n url,\n message: `URL with hostname ${hostname} is not allowed`\n });\n }\n if (hostname.startsWith(\"[\") && hostname.endsWith(\"]\")) {\n const ipv6 = hostname.slice(1, -1);\n if (isPrivateIPv6(ipv6)) {\n throw new DownloadError({\n url,\n message: `URL with IPv6 address ${hostname} is not allowed`\n });\n }\n return;\n }\n if (isIPv4(hostname)) {\n if (isPrivateIPv4(hostname)) {\n throw new DownloadError({\n url,\n message: `URL with IP address ${hostname} is not allowed`\n });\n }\n return;\n }\n}\nfunction isIPv4(hostname) {\n const parts = hostname.split(\".\");\n if (parts.length !== 4) return false;\n return parts.every((part) => {\n const num = Number(part);\n return Number.isInteger(num) && num >= 0 && num <= 255 && String(num) === part;\n });\n}\nfunction isPrivateIPv4(ip) {\n const parts = ip.split(\".\").map(Number);\n const [a, b] = parts;\n if (a === 0) return true;\n if (a === 10) return true;\n if (a === 127) return true;\n if (a === 169 && b === 254) return true;\n if (a === 172 && b >= 16 && b <= 31) return true;\n if (a === 192 && b === 168) return true;\n return false;\n}\nfunction isPrivateIPv6(ip) {\n const normalized = ip.toLowerCase();\n if (normalized === \"::1\") return true;\n if (normalized === \"::\") return true;\n if (normalized.startsWith(\"::ffff:\")) {\n const mappedPart = normalized.slice(7);\n if (isIPv4(mappedPart)) {\n return isPrivateIPv4(mappedPart);\n }\n const hexParts = mappedPart.split(\":\");\n if (hexParts.length === 2) {\n const high = parseInt(hexParts[0], 16);\n const low = parseInt(hexParts[1], 16);\n if (!isNaN(high) && !isNaN(low)) {\n const a = high >> 8 & 255;\n const b = high & 255;\n const c = low >> 8 & 255;\n const d = low & 255;\n return isPrivateIPv4(`${a}.${b}.${c}.${d}`);\n }\n }\n }\n if (normalized.startsWith(\"fc\") || normalized.startsWith(\"fd\")) return true;\n if (normalized.startsWith(\"fe80\")) return true;\n return false;\n}\n\n// src/download-blob.ts\nasync function downloadBlob(url, options) {\n var _a2, _b2;\n validateDownloadUrl(url);\n try {\n const response = await fetch(url, {\n signal: options == null ? void 0 : options.abortSignal\n });\n if (response.redirected) {\n validateDownloadUrl(response.url);\n }\n if (!response.ok) {\n throw new DownloadError({\n url,\n statusCode: response.status,\n statusText: response.statusText\n });\n }\n const data = await readResponseWithSizeLimit({\n response,\n url,\n maxBytes: (_a2 = options == null ? void 0 : options.maxBytes) != null ? _a2 : DEFAULT_MAX_DOWNLOAD_SIZE\n });\n const contentType = (_b2 = response.headers.get(\"content-type\")) != null ? _b2 : void 0;\n return new Blob([data], contentType ? { type: contentType } : void 0);\n } catch (error) {\n if (DownloadError.isInstance(error)) {\n throw error;\n }\n throw new DownloadError({ url, cause: error });\n }\n}\n\n// src/generate-id.ts\nimport { InvalidArgumentError } from \"@ai-sdk/provider\";\nvar createIdGenerator = ({\n prefix,\n size = 16,\n alphabet = \"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\",\n separator = \"-\"\n} = {}) => {\n const generator = () => {\n const alphabetLength = alphabet.length;\n const chars = new Array(size);\n for (let i = 0; i < size; i++) {\n chars[i] = alphabet[Math.random() * alphabetLength | 0];\n }\n return chars.join(\"\");\n };\n if (prefix == null) {\n return generator;\n }\n if (alphabet.includes(separator)) {\n throw new InvalidArgumentError({\n argument: \"separator\",\n message: `The separator \"${separator}\" must not be part of the alphabet \"${alphabet}\".`\n });\n }\n return () => `${prefix}${separator}${generator()}`;\n};\nvar generateId = createIdGenerator();\n\n// src/get-error-message.ts\nfunction getErrorMessage(error) {\n if (error == null) {\n return \"unknown error\";\n }\n if (typeof error === \"string\") {\n return error;\n }\n if (error instanceof Error) {\n return error.message;\n }\n return JSON.stringify(error);\n}\n\n// src/get-from-api.ts\nimport { APICallError as APICallError2 } from \"@ai-sdk/provider\";\n\n// src/handle-fetch-error.ts\nimport { APICallError } from \"@ai-sdk/provider\";\n\n// src/is-abort-error.ts\nfunction isAbortError(error) {\n return (error instanceof Error || error instanceof DOMException) && (error.name === \"AbortError\" || error.name === \"ResponseAborted\" || // Next.js\n error.name === \"TimeoutError\");\n}\n\n// src/handle-fetch-error.ts\nvar FETCH_FAILED_ERROR_MESSAGES = [\"fetch failed\", \"failed to fetch\"];\nvar BUN_ERROR_CODES = [\n \"ConnectionRefused\",\n \"ConnectionClosed\",\n \"FailedToOpenSocket\",\n \"ECONNRESET\",\n \"ECONNREFUSED\",\n \"ETIMEDOUT\",\n \"EPIPE\"\n];\nfunction isBunNetworkError(error) {\n if (!(error instanceof Error)) {\n return false;\n }\n const code = error.code;\n if (typeof code === \"string\" && BUN_ERROR_CODES.includes(code)) {\n return true;\n }\n return false;\n}\nfunction handleFetchError({\n error,\n url,\n requestBodyValues\n}) {\n if (isAbortError(error)) {\n return error;\n }\n if (error instanceof TypeError && FETCH_FAILED_ERROR_MESSAGES.includes(error.message.toLowerCase())) {\n const cause = error.cause;\n if (cause != null) {\n return new APICallError({\n message: `Cannot connect to API: ${cause.message}`,\n cause,\n url,\n requestBodyValues,\n isRetryable: true\n // retry when network error\n });\n }\n }\n if (isBunNetworkError(error)) {\n return new APICallError({\n message: `Cannot connect to API: ${error.message}`,\n cause: error,\n url,\n requestBodyValues,\n isRetryable: true\n });\n }\n return error;\n}\n\n// src/get-runtime-environment-user-agent.ts\nfunction getRuntimeEnvironmentUserAgent(globalThisAny = globalThis) {\n var _a2, _b2, _c;\n if (globalThisAny.window) {\n return `runtime/browser`;\n }\n if ((_a2 = globalThisAny.navigator) == null ? void 0 : _a2.userAgent) {\n return `runtime/${globalThisAny.navigator.userAgent.toLowerCase()}`;\n }\n if ((_c = (_b2 = globalThisAny.process) == null ? void 0 : _b2.versions) == null ? void 0 : _c.node) {\n return `runtime/node.js/${globalThisAny.process.version.substring(0)}`;\n }\n if (globalThisAny.EdgeRuntime) {\n return `runtime/vercel-edge`;\n }\n return \"runtime/unknown\";\n}\n\n// src/normalize-headers.ts\nfunction normalizeHeaders(headers) {\n if (headers == null) {\n return {};\n }\n const normalized = {};\n if (headers instanceof Headers) {\n headers.forEach((value, key) => {\n normalized[key.toLowerCase()] = value;\n });\n } else {\n if (!Array.isArray(headers)) {\n headers = Object.entries(headers);\n }\n for (const [key, value] of headers) {\n if (value != null) {\n normalized[key.toLowerCase()] = value;\n }\n }\n }\n return normalized;\n}\n\n// src/with-user-agent-suffix.ts\nfunction withUserAgentSuffix(headers, ...userAgentSuffixParts) {\n const normalizedHeaders = new Headers(normalizeHeaders(headers));\n const currentUserAgentHeader = normalizedHeaders.get(\"user-agent\") || \"\";\n normalizedHeaders.set(\n \"user-agent\",\n [currentUserAgentHeader, ...userAgentSuffixParts].filter(Boolean).join(\" \")\n );\n return Object.fromEntries(normalizedHeaders.entries());\n}\n\n// src/version.ts\nvar VERSION = true ? \"4.0.27\" : \"0.0.0-test\";\n\n// src/get-from-api.ts\nvar getOriginalFetch = () => globalThis.fetch;\nvar getFromApi = async ({\n url,\n headers = {},\n successfulResponseHandler,\n failedResponseHandler,\n abortSignal,\n fetch: fetch2 = getOriginalFetch()\n}) => {\n try {\n const response = await fetch2(url, {\n method: \"GET\",\n headers: withUserAgentSuffix(\n headers,\n `ai-sdk/provider-utils/${VERSION}`,\n getRuntimeEnvironmentUserAgent()\n ),\n signal: abortSignal\n });\n const responseHeaders = extractResponseHeaders(response);\n if (!response.ok) {\n let errorInformation;\n try {\n errorInformation = await failedResponseHandler({\n response,\n url,\n requestBodyValues: {}\n });\n } catch (error) {\n if (isAbortError(error) || APICallError2.isInstance(error)) {\n throw error;\n }\n throw new APICallError2({\n message: \"Failed to process error response\",\n cause: error,\n statusCode: response.status,\n url,\n responseHeaders,\n requestBodyValues: {}\n });\n }\n throw errorInformation.value;\n }\n try {\n return await successfulResponseHandler({\n response,\n url,\n requestBodyValues: {}\n });\n } catch (error) {\n if (error instanceof Error) {\n if (isAbortError(error) || APICallError2.isInstance(error)) {\n throw error;\n }\n }\n throw new APICallError2({\n message: \"Failed to process successful response\",\n cause: error,\n statusCode: response.status,\n url,\n responseHeaders,\n requestBodyValues: {}\n });\n }\n } catch (error) {\n throw handleFetchError({ error, url, requestBodyValues: {} });\n }\n};\n\n// src/inject-json-instruction.ts\nvar DEFAULT_SCHEMA_PREFIX = \"JSON schema:\";\nvar DEFAULT_SCHEMA_SUFFIX = \"You MUST answer with a JSON object that matches the JSON schema above.\";\nvar DEFAULT_GENERIC_SUFFIX = \"You MUST answer with JSON.\";\nfunction injectJsonInstruction({\n prompt,\n schema,\n schemaPrefix = schema != null ? DEFAULT_SCHEMA_PREFIX : void 0,\n schemaSuffix = schema != null ? DEFAULT_SCHEMA_SUFFIX : DEFAULT_GENERIC_SUFFIX\n}) {\n return [\n prompt != null && prompt.length > 0 ? prompt : void 0,\n prompt != null && prompt.length > 0 ? \"\" : void 0,\n // add a newline if prompt is not null\n schemaPrefix,\n schema != null ? JSON.stringify(schema) : void 0,\n schemaSuffix\n ].filter((line) => line != null).join(\"\\n\");\n}\nfunction injectJsonInstructionIntoMessages({\n messages,\n schema,\n schemaPrefix,\n schemaSuffix\n}) {\n var _a2, _b2;\n const systemMessage = ((_a2 = messages[0]) == null ? void 0 : _a2.role) === \"system\" ? { ...messages[0] } : { role: \"system\", content: \"\" };\n systemMessage.content = injectJsonInstruction({\n prompt: systemMessage.content,\n schema,\n schemaPrefix,\n schemaSuffix\n });\n return [\n systemMessage,\n ...((_b2 = messages[0]) == null ? void 0 : _b2.role) === \"system\" ? messages.slice(1) : messages\n ];\n}\n\n// src/is-non-nullable.ts\nfunction isNonNullable(value) {\n return value != null;\n}\n\n// src/is-url-supported.ts\nfunction isUrlSupported({\n mediaType,\n url,\n supportedUrls\n}) {\n url = url.toLowerCase();\n mediaType = mediaType.toLowerCase();\n return Object.entries(supportedUrls).map(([key, value]) => {\n const mediaType2 = key.toLowerCase();\n return mediaType2 === \"*\" || mediaType2 === \"*/*\" ? { mediaTypePrefix: \"\", regexes: value } : { mediaTypePrefix: mediaType2.replace(/\\*/, \"\"), regexes: value };\n }).filter(({ mediaTypePrefix }) => mediaType.startsWith(mediaTypePrefix)).flatMap(({ regexes }) => regexes).some((pattern) => pattern.test(url));\n}\n\n// src/load-api-key.ts\nimport { LoadAPIKeyError } from \"@ai-sdk/provider\";\nfunction loadApiKey({\n apiKey,\n environmentVariableName,\n apiKeyParameterName = \"apiKey\",\n description\n}) {\n if (typeof apiKey === \"string\") {\n return apiKey;\n }\n if (apiKey != null) {\n throw new LoadAPIKeyError({\n message: `${description} API key must be a string.`\n });\n }\n if (typeof process === \"undefined\") {\n throw new LoadAPIKeyError({\n message: `${description} API key is missing. Pass it using the '${apiKeyParameterName}' parameter. Environment variables are not supported in this environment.`\n });\n }\n apiKey = process.env[environmentVariableName];\n if (apiKey == null) {\n throw new LoadAPIKeyError({\n message: `${description} API key is missing. Pass it using the '${apiKeyParameterName}' parameter or the ${environmentVariableName} environment variable.`\n });\n }\n if (typeof apiKey !== \"string\") {\n throw new LoadAPIKeyError({\n message: `${description} API key must be a string. The value of the ${environmentVariableName} environment variable is not a string.`\n });\n }\n return apiKey;\n}\n\n// src/load-optional-setting.ts\nfunction loadOptionalSetting({\n settingValue,\n environmentVariableName\n}) {\n if (typeof settingValue === \"string\") {\n return settingValue;\n }\n if (settingValue != null || typeof process === \"undefined\") {\n return void 0;\n }\n settingValue = process.env[environmentVariableName];\n if (settingValue == null || typeof settingValue !== \"string\") {\n return void 0;\n }\n return settingValue;\n}\n\n// src/load-setting.ts\nimport { LoadSettingError } from \"@ai-sdk/provider\";\nfunction loadSetting({\n settingValue,\n environmentVariableName,\n settingName,\n description\n}) {\n if (typeof settingValue === \"string\") {\n return settingValue;\n }\n if (settingValue != null) {\n throw new LoadSettingError({\n message: `${description} setting must be a string.`\n });\n }\n if (typeof process === \"undefined\") {\n throw new LoadSettingError({\n message: `${description} setting is missing. Pass it using the '${settingName}' parameter. Environment variables are not supported in this environment.`\n });\n }\n settingValue = process.env[environmentVariableName];\n if (settingValue == null) {\n throw new LoadSettingError({\n message: `${description} setting is missing. Pass it using the '${settingName}' parameter or the ${environmentVariableName} environment variable.`\n });\n }\n if (typeof settingValue !== \"string\") {\n throw new LoadSettingError({\n message: `${description} setting must be a string. The value of the ${environmentVariableName} environment variable is not a string.`\n });\n }\n return settingValue;\n}\n\n// src/media-type-to-extension.ts\nfunction mediaTypeToExtension(mediaType) {\n var _a2;\n const [_type, subtype = \"\"] = mediaType.toLowerCase().split(\"/\");\n return (_a2 = {\n mpeg: \"mp3\",\n \"x-wav\": \"wav\",\n opus: \"ogg\",\n mp4: \"m4a\",\n \"x-m4a\": \"m4a\"\n }[subtype]) != null ? _a2 : subtype;\n}\n\n// src/parse-json.ts\nimport {\n JSONParseError,\n TypeValidationError as TypeValidationError3\n} from \"@ai-sdk/provider\";\n\n// src/secure-json-parse.ts\nvar suspectProtoRx = /\"(?:_|\\\\u005[Ff])(?:_|\\\\u005[Ff])(?:p|\\\\u0070)(?:r|\\\\u0072)(?:o|\\\\u006[Ff])(?:t|\\\\u0074)(?:o|\\\\u006[Ff])(?:_|\\\\u005[Ff])(?:_|\\\\u005[Ff])\"\\s*:/;\nvar suspectConstructorRx = /\"(?:c|\\\\u0063)(?:o|\\\\u006[Ff])(?:n|\\\\u006[Ee])(?:s|\\\\u0073)(?:t|\\\\u0074)(?:r|\\\\u0072)(?:u|\\\\u0075)(?:c|\\\\u0063)(?:t|\\\\u0074)(?:o|\\\\u006[Ff])(?:r|\\\\u0072)\"\\s*:/;\nfunction _parse(text) {\n const obj = JSON.parse(text);\n if (obj === null || typeof obj !== \"object\") {\n return obj;\n }\n if (suspectProtoRx.test(text) === false && suspectConstructorRx.test(text) === false) {\n return obj;\n }\n return filter(obj);\n}\nfunction filter(obj) {\n let next = [obj];\n while (next.length) {\n const nodes = next;\n next = [];\n for (const node of nodes) {\n if (Object.prototype.hasOwnProperty.call(node, \"__proto__\")) {\n throw new SyntaxError(\"Object contains forbidden prototype property\");\n }\n if (Object.prototype.hasOwnProperty.call(node, \"constructor\") && node.constructor !== null && typeof node.constructor === \"object\" && Object.prototype.hasOwnProperty.call(node.constructor, \"prototype\")) {\n throw new SyntaxError(\"Object contains forbidden prototype property\");\n }\n for (const key in node) {\n const value = node[key];\n if (value && typeof value === \"object\") {\n next.push(value);\n }\n }\n }\n }\n return obj;\n}\nfunction secureJsonParse(text) {\n const { stackTraceLimit } = Error;\n try {\n Error.stackTraceLimit = 0;\n } catch (e) {\n return _parse(text);\n }\n try {\n return _parse(text);\n } finally {\n Error.stackTraceLimit = stackTraceLimit;\n }\n}\n\n// src/validate-types.ts\nimport {\n TypeValidationError as TypeValidationError2\n} from \"@ai-sdk/provider\";\n\n// src/schema.ts\nimport { TypeValidationError } from \"@ai-sdk/provider\";\nimport * as z4 from \"zod/v4\";\n\n// src/add-additional-properties-to-json-schema.ts\nfunction addAdditionalPropertiesToJsonSchema(jsonSchema2) {\n if (jsonSchema2.type === \"object\" || Array.isArray(jsonSchema2.type) && jsonSchema2.type.includes(\"object\")) {\n jsonSchema2.additionalProperties = false;\n const { properties } = jsonSchema2;\n if (properties != null) {\n for (const key of Object.keys(properties)) {\n properties[key] = visit(properties[key]);\n }\n }\n }\n if (jsonSchema2.items != null) {\n jsonSchema2.items = Array.isArray(jsonSchema2.items) ? jsonSchema2.items.map(visit) : visit(jsonSchema2.items);\n }\n if (jsonSchema2.anyOf != null) {\n jsonSchema2.anyOf = jsonSchema2.anyOf.map(visit);\n }\n if (jsonSchema2.allOf != null) {\n jsonSchema2.allOf = jsonSchema2.allOf.map(visit);\n }\n if (jsonSchema2.oneOf != null) {\n jsonSchema2.oneOf = jsonSchema2.oneOf.map(visit);\n }\n const { definitions } = jsonSchema2;\n if (definitions != null) {\n for (const key of Object.keys(definitions)) {\n definitions[key] = visit(definitions[key]);\n }\n }\n return jsonSchema2;\n}\nfunction visit(def) {\n if (typeof def === \"boolean\") return def;\n return addAdditionalPropertiesToJsonSchema(def);\n}\n\n// src/to-json-schema/zod3-to-json-schema/options.ts\nvar ignoreOverride = /* @__PURE__ */ Symbol(\n \"Let zodToJsonSchema decide on which parser to use\"\n);\nvar defaultOptions = {\n name: void 0,\n $refStrategy: \"root\",\n basePath: [\"#\"],\n effectStrategy: \"input\",\n pipeStrategy: \"all\",\n dateStrategy: \"format:date-time\",\n mapStrategy: \"entries\",\n removeAdditionalStrategy: \"passthrough\",\n allowedAdditionalProperties: true,\n rejectedAdditionalProperties: false,\n definitionPath: \"definitions\",\n strictUnions: false,\n definitions: {},\n errorMessages: false,\n patternStrategy: \"escape\",\n applyRegexFlags: false,\n emailStrategy: \"format:email\",\n base64Strategy: \"contentEncoding:base64\",\n nameStrategy: \"ref\"\n};\nvar getDefaultOptions = (options) => typeof options === \"string\" ? {\n ...defaultOptions,\n name: options\n} : {\n ...defaultOptions,\n ...options\n};\n\n// src/to-json-schema/zod3-to-json-schema/select-parser.ts\nimport { ZodFirstPartyTypeKind as ZodFirstPartyTypeKind3 } from \"zod/v3\";\n\n// src/to-json-schema/zod3-to-json-schema/parsers/any.ts\nfunction parseAnyDef() {\n return {};\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/array.ts\nimport { ZodFirstPartyTypeKind } from \"zod/v3\";\nfunction parseArrayDef(def, refs) {\n var _a2, _b2, _c;\n const res = {\n type: \"array\"\n };\n if (((_a2 = def.type) == null ? void 0 : _a2._def) && ((_c = (_b2 = def.type) == null ? void 0 : _b2._def) == null ? void 0 : _c.typeName) !== ZodFirstPartyTypeKind.ZodAny) {\n res.items = parseDef(def.type._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\"]\n });\n }\n if (def.minLength) {\n res.minItems = def.minLength.value;\n }\n if (def.maxLength) {\n res.maxItems = def.maxLength.value;\n }\n if (def.exactLength) {\n res.minItems = def.exactLength.value;\n res.maxItems = def.exactLength.value;\n }\n return res;\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/bigint.ts\nfunction parseBigintDef(def) {\n const res = {\n type: \"integer\",\n format: \"int64\"\n };\n if (!def.checks) return res;\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n if (check.inclusive) {\n res.minimum = check.value;\n } else {\n res.exclusiveMinimum = check.value;\n }\n break;\n case \"max\":\n if (check.inclusive) {\n res.maximum = check.value;\n } else {\n res.exclusiveMaximum = check.value;\n }\n break;\n case \"multipleOf\":\n res.multipleOf = check.value;\n break;\n }\n }\n return res;\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/boolean.ts\nfunction parseBooleanDef() {\n return { type: \"boolean\" };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/branded.ts\nfunction parseBrandedDef(_def, refs) {\n return parseDef(_def.type._def, refs);\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/catch.ts\nvar parseCatchDef = (def, refs) => {\n return parseDef(def.innerType._def, refs);\n};\n\n// src/to-json-schema/zod3-to-json-schema/parsers/date.ts\nfunction parseDateDef(def, refs, overrideDateStrategy) {\n const strategy = overrideDateStrategy != null ? overrideDateStrategy : refs.dateStrategy;\n if (Array.isArray(strategy)) {\n return {\n anyOf: strategy.map((item, i) => parseDateDef(def, refs, item))\n };\n }\n switch (strategy) {\n case \"string\":\n case \"format:date-time\":\n return {\n type: \"string\",\n format: \"date-time\"\n };\n case \"format:date\":\n return {\n type: \"string\",\n format: \"date\"\n };\n case \"integer\":\n return integerDateParser(def);\n }\n}\nvar integerDateParser = (def) => {\n const res = {\n type: \"integer\",\n format: \"unix-time\"\n };\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n res.minimum = check.value;\n break;\n case \"max\":\n res.maximum = check.value;\n break;\n }\n }\n return res;\n};\n\n// src/to-json-schema/zod3-to-json-schema/parsers/default.ts\nfunction parseDefaultDef(_def, refs) {\n return {\n ...parseDef(_def.innerType._def, refs),\n default: _def.defaultValue()\n };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/effects.ts\nfunction parseEffectsDef(_def, refs) {\n return refs.effectStrategy === \"input\" ? parseDef(_def.schema._def, refs) : parseAnyDef();\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/enum.ts\nfunction parseEnumDef(def) {\n return {\n type: \"string\",\n enum: Array.from(def.values)\n };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/intersection.ts\nvar isJsonSchema7AllOfType = (type) => {\n if (\"type\" in type && type.type === \"string\") return false;\n return \"allOf\" in type;\n};\nfunction parseIntersectionDef(def, refs) {\n const allOf = [\n parseDef(def.left._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"0\"]\n }),\n parseDef(def.right._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"1\"]\n })\n ].filter((x) => !!x);\n const mergedAllOf = [];\n allOf.forEach((schema) => {\n if (isJsonSchema7AllOfType(schema)) {\n mergedAllOf.push(...schema.allOf);\n } else {\n let nestedSchema = schema;\n if (\"additionalProperties\" in schema && schema.additionalProperties === false) {\n const { additionalProperties, ...rest } = schema;\n nestedSchema = rest;\n }\n mergedAllOf.push(nestedSchema);\n }\n });\n return mergedAllOf.length ? { allOf: mergedAllOf } : void 0;\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/literal.ts\nfunction parseLiteralDef(def) {\n const parsedType = typeof def.value;\n if (parsedType !== \"bigint\" && parsedType !== \"number\" && parsedType !== \"boolean\" && parsedType !== \"string\") {\n return {\n type: Array.isArray(def.value) ? \"array\" : \"object\"\n };\n }\n return {\n type: parsedType === \"bigint\" ? \"integer\" : parsedType,\n const: def.value\n };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/record.ts\nimport {\n ZodFirstPartyTypeKind as ZodFirstPartyTypeKind2\n} from \"zod/v3\";\n\n// src/to-json-schema/zod3-to-json-schema/parsers/string.ts\nvar emojiRegex = void 0;\nvar zodPatterns = {\n /**\n * `c` was changed to `[cC]` to replicate /i flag\n */\n cuid: /^[cC][^\\s-]{8,}$/,\n cuid2: /^[0-9a-z]+$/,\n ulid: /^[0-9A-HJKMNP-TV-Z]{26}$/,\n /**\n * `a-z` was added to replicate /i flag\n */\n email: /^(?!\\.)(?!.*\\.\\.)([a-zA-Z0-9_'+\\-\\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\\-]*\\.)+[a-zA-Z]{2,}$/,\n /**\n * Constructed a valid Unicode RegExp\n *\n * Lazily instantiate since this type of regex isn't supported\n * in all envs (e.g. React Native).\n *\n * See:\n * https://github.com/colinhacks/zod/issues/2433\n * Fix in Zod:\n * https://github.com/colinhacks/zod/commit/9340fd51e48576a75adc919bff65dbc4a5d4c99b\n */\n emoji: () => {\n if (emojiRegex === void 0) {\n emojiRegex = RegExp(\n \"^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$\",\n \"u\"\n );\n }\n return emojiRegex;\n },\n /**\n * Unused\n */\n uuid: /^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$/,\n /**\n * Unused\n */\n ipv4: /^(?:(?: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])$/,\n ipv4Cidr: /^(?:(?: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])\\/(3[0-2]|[12]?[0-9])$/,\n /**\n * Unused\n */\n ipv6: /^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,\n ipv6Cidr: /^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,\n base64: /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,\n base64url: /^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,\n nanoid: /^[a-zA-Z0-9_-]{21}$/,\n jwt: /^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$/\n};\nfunction parseStringDef(def, refs) {\n const res = {\n type: \"string\"\n };\n if (def.checks) {\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n res.minLength = typeof res.minLength === \"number\" ? Math.max(res.minLength, check.value) : check.value;\n break;\n case \"max\":\n res.maxLength = typeof res.maxLength === \"number\" ? Math.min(res.maxLength, check.value) : check.value;\n break;\n case \"email\":\n switch (refs.emailStrategy) {\n case \"format:email\":\n addFormat(res, \"email\", check.message, refs);\n break;\n case \"format:idn-email\":\n addFormat(res, \"idn-email\", check.message, refs);\n break;\n case \"pattern:zod\":\n addPattern(res, zodPatterns.email, check.message, refs);\n break;\n }\n break;\n case \"url\":\n addFormat(res, \"uri\", check.message, refs);\n break;\n case \"uuid\":\n addFormat(res, \"uuid\", check.message, refs);\n break;\n case \"regex\":\n addPattern(res, check.regex, check.message, refs);\n break;\n case \"cuid\":\n addPattern(res, zodPatterns.cuid, check.message, refs);\n break;\n case \"cuid2\":\n addPattern(res, zodPatterns.cuid2, check.message, refs);\n break;\n case \"startsWith\":\n addPattern(\n res,\n RegExp(`^${escapeLiteralCheckValue(check.value, refs)}`),\n check.message,\n refs\n );\n break;\n case \"endsWith\":\n addPattern(\n res,\n RegExp(`${escapeLiteralCheckValue(check.value, refs)}$`),\n check.message,\n refs\n );\n break;\n case \"datetime\":\n addFormat(res, \"date-time\", check.message, refs);\n break;\n case \"date\":\n addFormat(res, \"date\", check.message, refs);\n break;\n case \"time\":\n addFormat(res, \"time\", check.message, refs);\n break;\n case \"duration\":\n addFormat(res, \"duration\", check.message, refs);\n break;\n case \"length\":\n res.minLength = typeof res.minLength === \"number\" ? Math.max(res.minLength, check.value) : check.value;\n res.maxLength = typeof res.maxLength === \"number\" ? Math.min(res.maxLength, check.value) : check.value;\n break;\n case \"includes\": {\n addPattern(\n res,\n RegExp(escapeLiteralCheckValue(check.value, refs)),\n check.message,\n refs\n );\n break;\n }\n case \"ip\": {\n if (check.version !== \"v6\") {\n addFormat(res, \"ipv4\", check.message, refs);\n }\n if (check.version !== \"v4\") {\n addFormat(res, \"ipv6\", check.message, refs);\n }\n break;\n }\n case \"base64url\":\n addPattern(res, zodPatterns.base64url, check.message, refs);\n break;\n case \"jwt\":\n addPattern(res, zodPatterns.jwt, check.message, refs);\n break;\n case \"cidr\": {\n if (check.version !== \"v6\") {\n addPattern(res, zodPatterns.ipv4Cidr, check.message, refs);\n }\n if (check.version !== \"v4\") {\n addPattern(res, zodPatterns.ipv6Cidr, check.message, refs);\n }\n break;\n }\n case \"emoji\":\n addPattern(res, zodPatterns.emoji(), check.message, refs);\n break;\n case \"ulid\": {\n addPattern(res, zodPatterns.ulid, check.message, refs);\n break;\n }\n case \"base64\": {\n switch (refs.base64Strategy) {\n case \"format:binary\": {\n addFormat(res, \"binary\", check.message, refs);\n break;\n }\n case \"contentEncoding:base64\": {\n res.contentEncoding = \"base64\";\n break;\n }\n case \"pattern:zod\": {\n addPattern(res, zodPatterns.base64, check.message, refs);\n break;\n }\n }\n break;\n }\n case \"nanoid\": {\n addPattern(res, zodPatterns.nanoid, check.message, refs);\n }\n case \"toLowerCase\":\n case \"toUpperCase\":\n case \"trim\":\n break;\n default:\n /* @__PURE__ */ ((_) => {\n })(check);\n }\n }\n }\n return res;\n}\nfunction escapeLiteralCheckValue(literal, refs) {\n return refs.patternStrategy === \"escape\" ? escapeNonAlphaNumeric(literal) : literal;\n}\nvar ALPHA_NUMERIC = new Set(\n \"ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789\"\n);\nfunction escapeNonAlphaNumeric(source) {\n let result = \"\";\n for (let i = 0; i < source.length; i++) {\n if (!ALPHA_NUMERIC.has(source[i])) {\n result += \"\\\\\";\n }\n result += source[i];\n }\n return result;\n}\nfunction addFormat(schema, value, message, refs) {\n var _a2;\n if (schema.format || ((_a2 = schema.anyOf) == null ? void 0 : _a2.some((x) => x.format))) {\n if (!schema.anyOf) {\n schema.anyOf = [];\n }\n if (schema.format) {\n schema.anyOf.push({\n format: schema.format\n });\n delete schema.format;\n }\n schema.anyOf.push({\n format: value,\n ...message && refs.errorMessages && { errorMessage: { format: message } }\n });\n } else {\n schema.format = value;\n }\n}\nfunction addPattern(schema, regex, message, refs) {\n var _a2;\n if (schema.pattern || ((_a2 = schema.allOf) == null ? void 0 : _a2.some((x) => x.pattern))) {\n if (!schema.allOf) {\n schema.allOf = [];\n }\n if (schema.pattern) {\n schema.allOf.push({\n pattern: schema.pattern\n });\n delete schema.pattern;\n }\n schema.allOf.push({\n pattern: stringifyRegExpWithFlags(regex, refs),\n ...message && refs.errorMessages && { errorMessage: { pattern: message } }\n });\n } else {\n schema.pattern = stringifyRegExpWithFlags(regex, refs);\n }\n}\nfunction stringifyRegExpWithFlags(regex, refs) {\n var _a2;\n if (!refs.applyRegexFlags || !regex.flags) {\n return regex.source;\n }\n const flags = {\n i: regex.flags.includes(\"i\"),\n // Case-insensitive\n m: regex.flags.includes(\"m\"),\n // `^` and `$` matches adjacent to newline characters\n s: regex.flags.includes(\"s\")\n // `.` matches newlines\n };\n const source = flags.i ? regex.source.toLowerCase() : regex.source;\n let pattern = \"\";\n let isEscaped = false;\n let inCharGroup = false;\n let inCharRange = false;\n for (let i = 0; i < source.length; i++) {\n if (isEscaped) {\n pattern += source[i];\n isEscaped = false;\n continue;\n }\n if (flags.i) {\n if (inCharGroup) {\n if (source[i].match(/[a-z]/)) {\n if (inCharRange) {\n pattern += source[i];\n pattern += `${source[i - 2]}-${source[i]}`.toUpperCase();\n inCharRange = false;\n } else if (source[i + 1] === \"-\" && ((_a2 = source[i + 2]) == null ? void 0 : _a2.match(/[a-z]/))) {\n pattern += source[i];\n inCharRange = true;\n } else {\n pattern += `${source[i]}${source[i].toUpperCase()}`;\n }\n continue;\n }\n } else if (source[i].match(/[a-z]/)) {\n pattern += `[${source[i]}${source[i].toUpperCase()}]`;\n continue;\n }\n }\n if (flags.m) {\n if (source[i] === \"^\") {\n pattern += `(^|(?<=[\\r\n]))`;\n continue;\n } else if (source[i] === \"$\") {\n pattern += `($|(?=[\\r\n]))`;\n continue;\n }\n }\n if (flags.s && source[i] === \".\") {\n pattern += inCharGroup ? `${source[i]}\\r\n` : `[${source[i]}\\r\n]`;\n continue;\n }\n pattern += source[i];\n if (source[i] === \"\\\\\") {\n isEscaped = true;\n } else if (inCharGroup && source[i] === \"]\") {\n inCharGroup = false;\n } else if (!inCharGroup && source[i] === \"[\") {\n inCharGroup = true;\n }\n }\n try {\n new RegExp(pattern);\n } catch (e) {\n console.warn(\n `Could not convert regex pattern at ${refs.currentPath.join(\n \"/\"\n )} to a flag-independent form! Falling back to the flag-ignorant source`\n );\n return regex.source;\n }\n return pattern;\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/record.ts\nfunction parseRecordDef(def, refs) {\n var _a2, _b2, _c, _d, _e, _f;\n const schema = {\n type: \"object\",\n additionalProperties: (_a2 = parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalProperties\"]\n })) != null ? _a2 : refs.allowedAdditionalProperties\n };\n if (((_b2 = def.keyType) == null ? void 0 : _b2._def.typeName) === ZodFirstPartyTypeKind2.ZodString && ((_c = def.keyType._def.checks) == null ? void 0 : _c.length)) {\n const { type, ...keyType } = parseStringDef(def.keyType._def, refs);\n return {\n ...schema,\n propertyNames: keyType\n };\n } else if (((_d = def.keyType) == null ? void 0 : _d._def.typeName) === ZodFirstPartyTypeKind2.ZodEnum) {\n return {\n ...schema,\n propertyNames: {\n enum: def.keyType._def.values\n }\n };\n } else if (((_e = def.keyType) == null ? void 0 : _e._def.typeName) === ZodFirstPartyTypeKind2.ZodBranded && def.keyType._def.type._def.typeName === ZodFirstPartyTypeKind2.ZodString && ((_f = def.keyType._def.type._def.checks) == null ? void 0 : _f.length)) {\n const { type, ...keyType } = parseBrandedDef(\n def.keyType._def,\n refs\n );\n return {\n ...schema,\n propertyNames: keyType\n };\n }\n return schema;\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/map.ts\nfunction parseMapDef(def, refs) {\n if (refs.mapStrategy === \"record\") {\n return parseRecordDef(def, refs);\n }\n const keys = parseDef(def.keyType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", \"items\", \"0\"]\n }) || parseAnyDef();\n const values = parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", \"items\", \"1\"]\n }) || parseAnyDef();\n return {\n type: \"array\",\n maxItems: 125,\n items: {\n type: \"array\",\n items: [keys, values],\n minItems: 2,\n maxItems: 2\n }\n };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/native-enum.ts\nfunction parseNativeEnumDef(def) {\n const object = def.values;\n const actualKeys = Object.keys(def.values).filter((key) => {\n return typeof object[object[key]] !== \"number\";\n });\n const actualValues = actualKeys.map((key) => object[key]);\n const parsedTypes = Array.from(\n new Set(actualValues.map((values) => typeof values))\n );\n return {\n type: parsedTypes.length === 1 ? parsedTypes[0] === \"string\" ? \"string\" : \"number\" : [\"string\", \"number\"],\n enum: actualValues\n };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/never.ts\nfunction parseNeverDef() {\n return { not: parseAnyDef() };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/null.ts\nfunction parseNullDef() {\n return {\n type: \"null\"\n };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/union.ts\nvar primitiveMappings = {\n ZodString: \"string\",\n ZodNumber: \"number\",\n ZodBigInt: \"integer\",\n ZodBoolean: \"boolean\",\n ZodNull: \"null\"\n};\nfunction parseUnionDef(def, refs) {\n const options = def.options instanceof Map ? Array.from(def.options.values()) : def.options;\n if (options.every(\n (x) => x._def.typeName in primitiveMappings && (!x._def.checks || !x._def.checks.length)\n )) {\n const types = options.reduce((types2, x) => {\n const type = primitiveMappings[x._def.typeName];\n return type && !types2.includes(type) ? [...types2, type] : types2;\n }, []);\n return {\n type: types.length > 1 ? types : types[0]\n };\n } else if (options.every((x) => x._def.typeName === \"ZodLiteral\" && !x.description)) {\n const types = options.reduce(\n (acc, x) => {\n const type = typeof x._def.value;\n switch (type) {\n case \"string\":\n case \"number\":\n case \"boolean\":\n return [...acc, type];\n case \"bigint\":\n return [...acc, \"integer\"];\n case \"object\":\n if (x._def.value === null) return [...acc, \"null\"];\n case \"symbol\":\n case \"undefined\":\n case \"function\":\n default:\n return acc;\n }\n },\n []\n );\n if (types.length === options.length) {\n const uniqueTypes = types.filter((x, i, a) => a.indexOf(x) === i);\n return {\n type: uniqueTypes.length > 1 ? uniqueTypes : uniqueTypes[0],\n enum: options.reduce(\n (acc, x) => {\n return acc.includes(x._def.value) ? acc : [...acc, x._def.value];\n },\n []\n )\n };\n }\n } else if (options.every((x) => x._def.typeName === \"ZodEnum\")) {\n return {\n type: \"string\",\n enum: options.reduce(\n (acc, x) => [\n ...acc,\n ...x._def.values.filter((x2) => !acc.includes(x2))\n ],\n []\n )\n };\n }\n return asAnyOf(def, refs);\n}\nvar asAnyOf = (def, refs) => {\n const anyOf = (def.options instanceof Map ? Array.from(def.options.values()) : def.options).map(\n (x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", `${i}`]\n })\n ).filter(\n (x) => !!x && (!refs.strictUnions || typeof x === \"object\" && Object.keys(x).length > 0)\n );\n return anyOf.length ? { anyOf } : void 0;\n};\n\n// src/to-json-schema/zod3-to-json-schema/parsers/nullable.ts\nfunction parseNullableDef(def, refs) {\n if ([\"ZodString\", \"ZodNumber\", \"ZodBigInt\", \"ZodBoolean\", \"ZodNull\"].includes(\n def.innerType._def.typeName\n ) && (!def.innerType._def.checks || !def.innerType._def.checks.length)) {\n return {\n type: [\n primitiveMappings[def.innerType._def.typeName],\n \"null\"\n ]\n };\n }\n const base = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", \"0\"]\n });\n return base && { anyOf: [base, { type: \"null\" }] };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/number.ts\nfunction parseNumberDef(def) {\n const res = {\n type: \"number\"\n };\n if (!def.checks) return res;\n for (const check of def.checks) {\n switch (check.kind) {\n case \"int\":\n res.type = \"integer\";\n break;\n case \"min\":\n if (check.inclusive) {\n res.minimum = check.value;\n } else {\n res.exclusiveMinimum = check.value;\n }\n break;\n case \"max\":\n if (check.inclusive) {\n res.maximum = check.value;\n } else {\n res.exclusiveMaximum = check.value;\n }\n break;\n case \"multipleOf\":\n res.multipleOf = check.value;\n break;\n }\n }\n return res;\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/object.ts\nfunction parseObjectDef(def, refs) {\n const result = {\n type: \"object\",\n properties: {}\n };\n const required = [];\n const shape = def.shape();\n for (const propName in shape) {\n let propDef = shape[propName];\n if (propDef === void 0 || propDef._def === void 0) {\n continue;\n }\n const propOptional = safeIsOptional(propDef);\n const parsedDef = parseDef(propDef._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"properties\", propName],\n propertyPath: [...refs.currentPath, \"properties\", propName]\n });\n if (parsedDef === void 0) {\n continue;\n }\n result.properties[propName] = parsedDef;\n if (!propOptional) {\n required.push(propName);\n }\n }\n if (required.length) {\n result.required = required;\n }\n const additionalProperties = decideAdditionalProperties(def, refs);\n if (additionalProperties !== void 0) {\n result.additionalProperties = additionalProperties;\n }\n return result;\n}\nfunction decideAdditionalProperties(def, refs) {\n if (def.catchall._def.typeName !== \"ZodNever\") {\n return parseDef(def.catchall._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalProperties\"]\n });\n }\n switch (def.unknownKeys) {\n case \"passthrough\":\n return refs.allowedAdditionalProperties;\n case \"strict\":\n return refs.rejectedAdditionalProperties;\n case \"strip\":\n return refs.removeAdditionalStrategy === \"strict\" ? refs.allowedAdditionalProperties : refs.rejectedAdditionalProperties;\n }\n}\nfunction safeIsOptional(schema) {\n try {\n return schema.isOptional();\n } catch (e) {\n return true;\n }\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/optional.ts\nvar parseOptionalDef = (def, refs) => {\n var _a2;\n if (refs.currentPath.toString() === ((_a2 = refs.propertyPath) == null ? void 0 : _a2.toString())) {\n return parseDef(def.innerType._def, refs);\n }\n const innerSchema = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", \"1\"]\n });\n return innerSchema ? { anyOf: [{ not: parseAnyDef() }, innerSchema] } : parseAnyDef();\n};\n\n// src/to-json-schema/zod3-to-json-schema/parsers/pipeline.ts\nvar parsePipelineDef = (def, refs) => {\n if (refs.pipeStrategy === \"input\") {\n return parseDef(def.in._def, refs);\n } else if (refs.pipeStrategy === \"output\") {\n return parseDef(def.out._def, refs);\n }\n const a = parseDef(def.in._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"0\"]\n });\n const b = parseDef(def.out._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", a ? \"1\" : \"0\"]\n });\n return {\n allOf: [a, b].filter((x) => x !== void 0)\n };\n};\n\n// src/to-json-schema/zod3-to-json-schema/parsers/promise.ts\nfunction parsePromiseDef(def, refs) {\n return parseDef(def.type._def, refs);\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/set.ts\nfunction parseSetDef(def, refs) {\n const items = parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\"]\n });\n const schema = {\n type: \"array\",\n uniqueItems: true,\n items\n };\n if (def.minSize) {\n schema.minItems = def.minSize.value;\n }\n if (def.maxSize) {\n schema.maxItems = def.maxSize.value;\n }\n return schema;\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/tuple.ts\nfunction parseTupleDef(def, refs) {\n if (def.rest) {\n return {\n type: \"array\",\n minItems: def.items.length,\n items: def.items.map(\n (x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", `${i}`]\n })\n ).reduce(\n (acc, x) => x === void 0 ? acc : [...acc, x],\n []\n ),\n additionalItems: parseDef(def.rest._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalItems\"]\n })\n };\n } else {\n return {\n type: \"array\",\n minItems: def.items.length,\n maxItems: def.items.length,\n items: def.items.map(\n (x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", `${i}`]\n })\n ).reduce(\n (acc, x) => x === void 0 ? acc : [...acc, x],\n []\n )\n };\n }\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/undefined.ts\nfunction parseUndefinedDef() {\n return {\n not: parseAnyDef()\n };\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/unknown.ts\nfunction parseUnknownDef() {\n return parseAnyDef();\n}\n\n// src/to-json-schema/zod3-to-json-schema/parsers/readonly.ts\nvar parseReadonlyDef = (def, refs) => {\n return parseDef(def.innerType._def, refs);\n};\n\n// src/to-json-schema/zod3-to-json-schema/select-parser.ts\nvar selectParser = (def, typeName, refs) => {\n switch (typeName) {\n case ZodFirstPartyTypeKind3.ZodString:\n return parseStringDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodNumber:\n return parseNumberDef(def);\n case ZodFirstPartyTypeKind3.ZodObject:\n return parseObjectDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodBigInt:\n return parseBigintDef(def);\n case ZodFirstPartyTypeKind3.ZodBoolean:\n return parseBooleanDef();\n case ZodFirstPartyTypeKind3.ZodDate:\n return parseDateDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodUndefined:\n return parseUndefinedDef();\n case ZodFirstPartyTypeKind3.ZodNull:\n return parseNullDef();\n case ZodFirstPartyTypeKind3.ZodArray:\n return parseArrayDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodUnion:\n case ZodFirstPartyTypeKind3.ZodDiscriminatedUnion:\n return parseUnionDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodIntersection:\n return parseIntersectionDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodTuple:\n return parseTupleDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodRecord:\n return parseRecordDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodLiteral:\n return parseLiteralDef(def);\n case ZodFirstPartyTypeKind3.ZodEnum:\n return parseEnumDef(def);\n case ZodFirstPartyTypeKind3.ZodNativeEnum:\n return parseNativeEnumDef(def);\n case ZodFirstPartyTypeKind3.ZodNullable:\n return parseNullableDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodOptional:\n return parseOptionalDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodMap:\n return parseMapDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodSet:\n return parseSetDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodLazy:\n return () => def.getter()._def;\n case ZodFirstPartyTypeKind3.ZodPromise:\n return parsePromiseDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodNaN:\n case ZodFirstPartyTypeKind3.ZodNever:\n return parseNeverDef();\n case ZodFirstPartyTypeKind3.ZodEffects:\n return parseEffectsDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodAny:\n return parseAnyDef();\n case ZodFirstPartyTypeKind3.ZodUnknown:\n return parseUnknownDef();\n case ZodFirstPartyTypeKind3.ZodDefault:\n return parseDefaultDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodBranded:\n return parseBrandedDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodReadonly:\n return parseReadonlyDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodCatch:\n return parseCatchDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodPipeline:\n return parsePipelineDef(def, refs);\n case ZodFirstPartyTypeKind3.ZodFunction:\n case ZodFirstPartyTypeKind3.ZodVoid:\n case ZodFirstPartyTypeKind3.ZodSymbol:\n return void 0;\n default:\n return /* @__PURE__ */ ((_) => void 0)(typeName);\n }\n};\n\n// src/to-json-schema/zod3-to-json-schema/get-relative-path.ts\nvar getRelativePath = (pathA, pathB) => {\n let i = 0;\n for (; i < pathA.length && i < pathB.length; i++) {\n if (pathA[i] !== pathB[i]) break;\n }\n return [(pathA.length - i).toString(), ...pathB.slice(i)].join(\"/\");\n};\n\n// src/to-json-schema/zod3-to-json-schema/parse-def.ts\nfunction parseDef(def, refs, forceResolution = false) {\n var _a2;\n const seenItem = refs.seen.get(def);\n if (refs.override) {\n const overrideResult = (_a2 = refs.override) == null ? void 0 : _a2.call(\n refs,\n def,\n refs,\n seenItem,\n forceResolution\n );\n if (overrideResult !== ignoreOverride) {\n return overrideResult;\n }\n }\n if (seenItem && !forceResolution) {\n const seenSchema = get$ref(seenItem, refs);\n if (seenSchema !== void 0) {\n return seenSchema;\n }\n }\n const newItem = { def, path: refs.currentPath, jsonSchema: void 0 };\n refs.seen.set(def, newItem);\n const jsonSchemaOrGetter = selectParser(def, def.typeName, refs);\n const jsonSchema2 = typeof jsonSchemaOrGetter === \"function\" ? parseDef(jsonSchemaOrGetter(), refs) : jsonSchemaOrGetter;\n if (jsonSchema2) {\n addMeta(def, refs, jsonSchema2);\n }\n if (refs.postProcess) {\n const postProcessResult = refs.postProcess(jsonSchema2, def, refs);\n newItem.jsonSchema = jsonSchema2;\n return postProcessResult;\n }\n newItem.jsonSchema = jsonSchema2;\n return jsonSchema2;\n}\nvar get$ref = (item, refs) => {\n switch (refs.$refStrategy) {\n case \"root\":\n return { $ref: item.path.join(\"/\") };\n case \"relative\":\n return { $ref: getRelativePath(refs.currentPath, item.path) };\n case \"none\":\n case \"seen\": {\n if (item.path.length < refs.currentPath.length && item.path.every((value, index) => refs.currentPath[index] === value)) {\n console.warn(\n `Recursive reference detected at ${refs.currentPath.join(\n \"/\"\n )}! Defaulting to any`\n );\n return parseAnyDef();\n }\n return refs.$refStrategy === \"seen\" ? parseAnyDef() : void 0;\n }\n }\n};\nvar addMeta = (def, refs, jsonSchema2) => {\n if (def.description) {\n jsonSchema2.description = def.description;\n }\n return jsonSchema2;\n};\n\n// src/to-json-schema/zod3-to-json-schema/refs.ts\nvar getRefs = (options) => {\n const _options = getDefaultOptions(options);\n const currentPath = _options.name !== void 0 ? [..._options.basePath, _options.definitionPath, _options.name] : _options.basePath;\n return {\n ..._options,\n currentPath,\n propertyPath: void 0,\n seen: new Map(\n Object.entries(_options.definitions).map(([name2, def]) => [\n def._def,\n {\n def: def._def,\n path: [..._options.basePath, _options.definitionPath, name2],\n // Resolution of references will be forced even though seen, so it's ok that the schema is undefined here for now.\n jsonSchema: void 0\n }\n ])\n )\n };\n};\n\n// src/to-json-schema/zod3-to-json-schema/zod3-to-json-schema.ts\nvar zod3ToJsonSchema = (schema, options) => {\n var _a2;\n const refs = getRefs(options);\n let definitions = typeof options === \"object\" && options.definitions ? Object.entries(options.definitions).reduce(\n (acc, [name3, schema2]) => {\n var _a3;\n return {\n ...acc,\n [name3]: (_a3 = parseDef(\n schema2._def,\n {\n ...refs,\n currentPath: [...refs.basePath, refs.definitionPath, name3]\n },\n true\n )) != null ? _a3 : parseAnyDef()\n };\n },\n {}\n ) : void 0;\n const name2 = typeof options === \"string\" ? options : (options == null ? void 0 : options.nameStrategy) === \"title\" ? void 0 : options == null ? void 0 : options.name;\n const main = (_a2 = parseDef(\n schema._def,\n name2 === void 0 ? refs : {\n ...refs,\n currentPath: [...refs.basePath, refs.definitionPath, name2]\n },\n false\n )) != null ? _a2 : parseAnyDef();\n const title = typeof options === \"object\" && options.name !== void 0 && options.nameStrategy === \"title\" ? options.name : void 0;\n if (title !== void 0) {\n main.title = title;\n }\n const combined = name2 === void 0 ? definitions ? {\n ...main,\n [refs.definitionPath]: definitions\n } : main : {\n $ref: [\n ...refs.$refStrategy === \"relative\" ? [] : refs.basePath,\n refs.definitionPath,\n name2\n ].join(\"/\"),\n [refs.definitionPath]: {\n ...definitions,\n [name2]: main\n }\n };\n combined.$schema = \"http://json-schema.org/draft-07/schema#\";\n return combined;\n};\n\n// src/schema.ts\nvar schemaSymbol = /* @__PURE__ */ Symbol.for(\"vercel.ai.schema\");\nfunction lazySchema(createSchema) {\n let schema;\n return () => {\n if (schema == null) {\n schema = createSchema();\n }\n return schema;\n };\n}\nfunction jsonSchema(jsonSchema2, {\n validate\n} = {}) {\n return {\n [schemaSymbol]: true,\n _type: void 0,\n // should never be used directly\n get jsonSchema() {\n if (typeof jsonSchema2 === \"function\") {\n jsonSchema2 = jsonSchema2();\n }\n return jsonSchema2;\n },\n validate\n };\n}\nfunction isSchema(value) {\n return typeof value === \"object\" && value !== null && schemaSymbol in value && value[schemaSymbol] === true && \"jsonSchema\" in value && \"validate\" in value;\n}\nfunction asSchema(schema) {\n return schema == null ? jsonSchema({ properties: {}, additionalProperties: false }) : isSchema(schema) ? schema : \"~standard\" in schema ? schema[\"~standard\"].vendor === \"zod\" ? zodSchema(schema) : standardSchema(schema) : schema();\n}\nfunction standardSchema(standardSchema2) {\n return jsonSchema(\n () => addAdditionalPropertiesToJsonSchema(\n standardSchema2[\"~standard\"].jsonSchema.input({\n target: \"draft-07\"\n })\n ),\n {\n validate: async (value) => {\n const result = await standardSchema2[\"~standard\"].validate(value);\n return \"value\" in result ? { success: true, value: result.value } : {\n success: false,\n error: new TypeValidationError({\n value,\n cause: result.issues\n })\n };\n }\n }\n );\n}\nfunction zod3Schema(zodSchema2, options) {\n var _a2;\n const useReferences = (_a2 = options == null ? void 0 : options.useReferences) != null ? _a2 : false;\n return jsonSchema(\n // defer json schema creation to avoid unnecessary computation when only validation is needed\n () => zod3ToJsonSchema(zodSchema2, {\n $refStrategy: useReferences ? \"root\" : \"none\"\n }),\n {\n validate: async (value) => {\n const result = await zodSchema2.safeParseAsync(value);\n return result.success ? { success: true, value: result.data } : { success: false, error: result.error };\n }\n }\n );\n}\nfunction zod4Schema(zodSchema2, options) {\n var _a2;\n const useReferences = (_a2 = options == null ? void 0 : options.useReferences) != null ? _a2 : false;\n return jsonSchema(\n // defer json schema creation to avoid unnecessary computation when only validation is needed\n () => addAdditionalPropertiesToJsonSchema(\n z4.toJSONSchema(zodSchema2, {\n target: \"draft-7\",\n io: \"input\",\n reused: useReferences ? \"ref\" : \"inline\"\n })\n ),\n {\n validate: async (value) => {\n const result = await z4.safeParseAsync(zodSchema2, value);\n return result.success ? { success: true, value: result.data } : { success: false, error: result.error };\n }\n }\n );\n}\nfunction isZod4Schema(zodSchema2) {\n return \"_zod\" in zodSchema2;\n}\nfunction zodSchema(zodSchema2, options) {\n if (isZod4Schema(zodSchema2)) {\n return zod4Schema(zodSchema2, options);\n } else {\n return zod3Schema(zodSchema2, options);\n }\n}\n\n// src/validate-types.ts\nasync function validateTypes({\n value,\n schema,\n context\n}) {\n const result = await safeValidateTypes({ value, schema, context });\n if (!result.success) {\n throw TypeValidationError2.wrap({ value, cause: result.error, context });\n }\n return result.value;\n}\nasync function safeValidateTypes({\n value,\n schema,\n context\n}) {\n const actualSchema = asSchema(schema);\n try {\n if (actualSchema.validate == null) {\n return { success: true, value, rawValue: value };\n }\n const result = await actualSchema.validate(value);\n if (result.success) {\n return { success: true, value: result.value, rawValue: value };\n }\n return {\n success: false,\n error: TypeValidationError2.wrap({ value, cause: result.error, context }),\n rawValue: value\n };\n } catch (error) {\n return {\n success: false,\n error: TypeValidationError2.wrap({ value, cause: error, context }),\n rawValue: value\n };\n }\n}\n\n// src/parse-json.ts\nasync function parseJSON({\n text,\n schema\n}) {\n try {\n const value = secureJsonParse(text);\n if (schema == null) {\n return value;\n }\n return validateTypes({ value, schema });\n } catch (error) {\n if (JSONParseError.isInstance(error) || TypeValidationError3.isInstance(error)) {\n throw error;\n }\n throw new JSONParseError({ text, cause: error });\n }\n}\nasync function safeParseJSON({\n text,\n schema\n}) {\n try {\n const value = secureJsonParse(text);\n if (schema == null) {\n return { success: true, value, rawValue: value };\n }\n return await safeValidateTypes({ value, schema });\n } catch (error) {\n return {\n success: false,\n error: JSONParseError.isInstance(error) ? error : new JSONParseError({ text, cause: error }),\n rawValue: void 0\n };\n }\n}\nfunction isParsableJson(input) {\n try {\n secureJsonParse(input);\n return true;\n } catch (e) {\n return false;\n }\n}\n\n// src/parse-json-event-stream.ts\nimport {\n EventSourceParserStream\n} from \"eventsource-parser/stream\";\nfunction parseJsonEventStream({\n stream,\n schema\n}) {\n return stream.pipeThrough(new TextDecoderStream()).pipeThrough(new EventSourceParserStream()).pipeThrough(\n new TransformStream({\n async transform({ data }, controller) {\n if (data === \"[DONE]\") {\n return;\n }\n controller.enqueue(await safeParseJSON({ text: data, schema }));\n }\n })\n );\n}\n\n// src/parse-provider-options.ts\nimport { InvalidArgumentError as InvalidArgumentError2 } from \"@ai-sdk/provider\";\nasync function parseProviderOptions({\n provider,\n providerOptions,\n schema\n}) {\n if ((providerOptions == null ? void 0 : providerOptions[provider]) == null) {\n return void 0;\n }\n const parsedProviderOptions = await safeValidateTypes({\n value: providerOptions[provider],\n schema\n });\n if (!parsedProviderOptions.success) {\n throw new InvalidArgumentError2({\n argument: \"providerOptions\",\n message: `invalid ${provider} provider options`,\n cause: parsedProviderOptions.error\n });\n }\n return parsedProviderOptions.value;\n}\n\n// src/post-to-api.ts\nimport { APICallError as APICallError3 } from \"@ai-sdk/provider\";\nvar getOriginalFetch2 = () => globalThis.fetch;\nvar postJsonToApi = async ({\n url,\n headers,\n body,\n failedResponseHandler,\n successfulResponseHandler,\n abortSignal,\n fetch: fetch2\n}) => postToApi({\n url,\n headers: {\n \"Content-Type\": \"application/json\",\n ...headers\n },\n body: {\n content: JSON.stringify(body),\n values: body\n },\n failedResponseHandler,\n successfulResponseHandler,\n abortSignal,\n fetch: fetch2\n});\nvar postFormDataToApi = async ({\n url,\n headers,\n formData,\n failedResponseHandler,\n successfulResponseHandler,\n abortSignal,\n fetch: fetch2\n}) => postToApi({\n url,\n headers,\n body: {\n content: formData,\n values: Object.fromEntries(formData.entries())\n },\n failedResponseHandler,\n successfulResponseHandler,\n abortSignal,\n fetch: fetch2\n});\nvar postToApi = async ({\n url,\n headers = {},\n body,\n successfulResponseHandler,\n failedResponseHandler,\n abortSignal,\n fetch: fetch2 = getOriginalFetch2()\n}) => {\n try {\n const response = await fetch2(url, {\n method: \"POST\",\n headers: withUserAgentSuffix(\n headers,\n `ai-sdk/provider-utils/${VERSION}`,\n getRuntimeEnvironmentUserAgent()\n ),\n body: body.content,\n signal: abortSignal\n });\n const responseHeaders = extractResponseHeaders(response);\n if (!response.ok) {\n let errorInformation;\n try {\n errorInformation = await failedResponseHandler({\n response,\n url,\n requestBodyValues: body.values\n });\n } catch (error) {\n if (isAbortError(error) || APICallError3.isInstance(error)) {\n throw error;\n }\n throw new APICallError3({\n message: \"Failed to process error response\",\n cause: error,\n statusCode: response.status,\n url,\n responseHeaders,\n requestBodyValues: body.values\n });\n }\n throw errorInformation.value;\n }\n try {\n return await successfulResponseHandler({\n response,\n url,\n requestBodyValues: body.values\n });\n } catch (error) {\n if (error instanceof Error) {\n if (isAbortError(error) || APICallError3.isInstance(error)) {\n throw error;\n }\n }\n throw new APICallError3({\n message: \"Failed to process successful response\",\n cause: error,\n statusCode: response.status,\n url,\n responseHeaders,\n requestBodyValues: body.values\n });\n }\n } catch (error) {\n throw handleFetchError({ error, url, requestBodyValues: body.values });\n }\n};\n\n// src/types/tool.ts\nfunction tool(tool2) {\n return tool2;\n}\nfunction dynamicTool(tool2) {\n return { ...tool2, type: \"dynamic\" };\n}\n\n// src/provider-tool-factory.ts\nfunction createProviderToolFactory({\n id,\n inputSchema\n}) {\n return ({\n execute,\n outputSchema,\n needsApproval,\n toModelOutput,\n onInputStart,\n onInputDelta,\n onInputAvailable,\n ...args\n }) => tool({\n type: \"provider\",\n id,\n args,\n inputSchema,\n outputSchema,\n execute,\n needsApproval,\n toModelOutput,\n onInputStart,\n onInputDelta,\n onInputAvailable\n });\n}\nfunction createProviderToolFactoryWithOutputSchema({\n id,\n inputSchema,\n outputSchema,\n supportsDeferredResults\n}) {\n return ({\n execute,\n needsApproval,\n toModelOutput,\n onInputStart,\n onInputDelta,\n onInputAvailable,\n ...args\n }) => tool({\n type: \"provider\",\n id,\n args,\n inputSchema,\n outputSchema,\n execute,\n needsApproval,\n toModelOutput,\n onInputStart,\n onInputDelta,\n onInputAvailable,\n supportsDeferredResults\n });\n}\n\n// src/remove-undefined-entries.ts\nfunction removeUndefinedEntries(record) {\n return Object.fromEntries(\n Object.entries(record).filter(([_key, value]) => value != null)\n );\n}\n\n// src/resolve.ts\nasync function resolve(value) {\n if (typeof value === \"function\") {\n value = value();\n }\n return Promise.resolve(value);\n}\n\n// src/response-handler.ts\nimport { APICallError as APICallError4, EmptyResponseBodyError } from \"@ai-sdk/provider\";\nvar createJsonErrorResponseHandler = ({\n errorSchema,\n errorToMessage,\n isRetryable\n}) => async ({ response, url, requestBodyValues }) => {\n const responseBody = await response.text();\n const responseHeaders = extractResponseHeaders(response);\n if (responseBody.trim() === \"\") {\n return {\n responseHeaders,\n value: new APICallError4({\n message: response.statusText,\n url,\n requestBodyValues,\n statusCode: response.status,\n responseHeaders,\n responseBody,\n isRetryable: isRetryable == null ? void 0 : isRetryable(response)\n })\n };\n }\n try {\n const parsedError = await parseJSON({\n text: responseBody,\n schema: errorSchema\n });\n return {\n responseHeaders,\n value: new APICallError4({\n message: errorToMessage(parsedError),\n url,\n requestBodyValues,\n statusCode: response.status,\n responseHeaders,\n responseBody,\n data: parsedError,\n isRetryable: isRetryable == null ? void 0 : isRetryable(response, parsedError)\n })\n };\n } catch (parseError) {\n return {\n responseHeaders,\n value: new APICallError4({\n message: response.statusText,\n url,\n requestBodyValues,\n statusCode: response.status,\n responseHeaders,\n responseBody,\n isRetryable: isRetryable == null ? void 0 : isRetryable(response)\n })\n };\n }\n};\nvar createEventSourceResponseHandler = (chunkSchema) => async ({ response }) => {\n const responseHeaders = extractResponseHeaders(response);\n if (response.body == null) {\n throw new EmptyResponseBodyError({});\n }\n return {\n responseHeaders,\n value: parseJsonEventStream({\n stream: response.body,\n schema: chunkSchema\n })\n };\n};\nvar createJsonResponseHandler = (responseSchema) => async ({ response, url, requestBodyValues }) => {\n const responseBody = await response.text();\n const parsedResult = await safeParseJSON({\n text: responseBody,\n schema: responseSchema\n });\n const responseHeaders = extractResponseHeaders(response);\n if (!parsedResult.success) {\n throw new APICallError4({\n message: \"Invalid JSON response\",\n cause: parsedResult.error,\n statusCode: response.status,\n responseHeaders,\n responseBody,\n url,\n requestBodyValues\n });\n }\n return {\n responseHeaders,\n value: parsedResult.value,\n rawValue: parsedResult.rawValue\n };\n};\nvar createBinaryResponseHandler = () => async ({ response, url, requestBodyValues }) => {\n const responseHeaders = extractResponseHeaders(response);\n if (!response.body) {\n throw new APICallError4({\n message: \"Response body is empty\",\n url,\n requestBodyValues,\n statusCode: response.status,\n responseHeaders,\n responseBody: void 0\n });\n }\n try {\n const buffer = await response.arrayBuffer();\n return {\n responseHeaders,\n value: new Uint8Array(buffer)\n };\n } catch (error) {\n throw new APICallError4({\n message: \"Failed to read response as array buffer\",\n url,\n requestBodyValues,\n statusCode: response.status,\n responseHeaders,\n responseBody: void 0,\n cause: error\n });\n }\n};\nvar createStatusCodeErrorResponseHandler = () => async ({ response, url, requestBodyValues }) => {\n const responseHeaders = extractResponseHeaders(response);\n const responseBody = await response.text();\n return {\n responseHeaders,\n value: new APICallError4({\n message: response.statusText,\n url,\n requestBodyValues,\n statusCode: response.status,\n responseHeaders,\n responseBody\n })\n };\n};\n\n// src/strip-file-extension.ts\nfunction stripFileExtension(filename) {\n const firstDotIndex = filename.indexOf(\".\");\n return firstDotIndex === -1 ? filename : filename.slice(0, firstDotIndex);\n}\n\n// src/without-trailing-slash.ts\nfunction withoutTrailingSlash(url) {\n return url == null ? void 0 : url.replace(/\\/$/, \"\");\n}\n\n// src/is-async-iterable.ts\nfunction isAsyncIterable(obj) {\n return obj != null && typeof obj[Symbol.asyncIterator] === \"function\";\n}\n\n// src/types/execute-tool.ts\nasync function* executeTool({\n execute,\n input,\n options\n}) {\n const result = execute(input, options);\n if (isAsyncIterable(result)) {\n let lastOutput;\n for await (const output of result) {\n lastOutput = output;\n yield { type: \"preliminary\", output };\n }\n yield { type: \"final\", output: lastOutput };\n } else {\n yield { type: \"final\", output: await result };\n }\n}\n\n// src/index.ts\nimport {\n EventSourceParserStream as EventSourceParserStream2\n} from \"eventsource-parser/stream\";\nexport {\n DEFAULT_MAX_DOWNLOAD_SIZE,\n DelayedPromise,\n DownloadError,\n EventSourceParserStream2 as EventSourceParserStream,\n VERSION,\n asSchema,\n combineHeaders,\n convertAsyncIteratorToReadableStream,\n convertBase64ToUint8Array,\n convertImageModelFileToDataUri,\n convertToBase64,\n convertToFormData,\n convertUint8ArrayToBase64,\n createBinaryResponseHandler,\n createEventSourceResponseHandler,\n createIdGenerator,\n createJsonErrorResponseHandler,\n createJsonResponseHandler,\n createProviderToolFactory,\n createProviderToolFactoryWithOutputSchema,\n createStatusCodeErrorResponseHandler,\n createToolNameMapping,\n delay,\n downloadBlob,\n dynamicTool,\n executeTool,\n extractResponseHeaders,\n generateId,\n getErrorMessage,\n getFromApi,\n getRuntimeEnvironmentUserAgent,\n injectJsonInstructionIntoMessages,\n isAbortError,\n isNonNullable,\n isParsableJson,\n isUrlSupported,\n jsonSchema,\n lazySchema,\n loadApiKey,\n loadOptionalSetting,\n loadSetting,\n mediaTypeToExtension,\n normalizeHeaders,\n parseJSON,\n parseJsonEventStream,\n parseProviderOptions,\n postFormDataToApi,\n postJsonToApi,\n postToApi,\n readResponseWithSizeLimit,\n removeUndefinedEntries,\n resolve,\n safeParseJSON,\n safeValidateTypes,\n stripFileExtension,\n tool,\n validateDownloadUrl,\n validateTypes,\n withUserAgentSuffix,\n withoutTrailingSlash,\n zodSchema\n};\n//# sourceMappingURL=index.mjs.map"
|
|
7
7
|
],
|
|
8
8
|
"mappings": "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",
|
|
9
|
-
"debugId": "
|
|
9
|
+
"debugId": "0F3FB07ED04DCC2564756E2164756E21",
|
|
10
10
|
"names": []
|
|
11
11
|
}
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"import { Effect } from \"effect\"\nimport type { DatabaseMigration } from \"../migration\"\n\nexport default {\n id: \"20260511173437_session-metadata\",\n up(tx) {\n return Effect.gen(function* () {\n // This column briefly shipped again under 20260530232709_lovely_romulus.\n if (\n (yield* tx.all<{ name: string }>(`PRAGMA table_info(\\`session\\`)`)).some((column) => column.name === \"metadata\")\n )\n return\n yield* tx.run(`ALTER TABLE \\`session\\` ADD \\`metadata\\` text;`)\n })\n },\n} satisfies DatabaseMigration.Migration\n"
|
|
6
6
|
],
|
|
7
7
|
"mappings": ";wHAGA,SAAe,QACb,GAAI,kCACJ,EAAE,CAAC,EAAI,CACL,OAAO,EAAO,IAAI,SAAU,EAAG,CAE7B,IACG,MAAO,EAAG,IAAsB,8BAAgC,GAAG,KAAK,CAAC,IAAW,EAAO,OAAS,UAAU,EAE/G,OACF,MAAO,EAAG,IAAI,4CAAgD,EAC/D,EAEL",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "85BB923456E2009064756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|