@openclaw/signal 2026.9.3 → 2026.9.5
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/assets/activity.svg +40 -0
- package/assets/icon.png +0 -0
- package/dist/{accounts-DO4HMqaK.js → .setup/accounts-BV6tDOTc.mjs} +20 -5
- package/dist/.setup/api-Cu01dJRP.mjs +12 -0
- package/dist/.setup/api-DbdeJVQ8.mjs +17 -0
- package/dist/{approval-auth-pNCKKotV.js → .setup/approval-auth-BBI9BTRm.mjs} +3 -3
- package/dist/{approval-handler.runtime-X6DXgK_3.js → .setup/approval-handler.runtime-Clf_1IZj.mjs} +11 -11
- package/dist/{approval-reactions-Cub0slPC.js → .setup/approval-reactions-B25QoVJc.mjs} +14 -14
- package/dist/{channel-DJQccJtU.js → .setup/channel-gMpZmqLx.mjs} +67 -46
- package/dist/{channel.runtime-QerbTca6.js → .setup/channel.runtime-Dqc18A1e.mjs} +4 -4
- package/dist/{client-B3C0ciqU.js → .setup/client-BseAt7F7.mjs} +311 -41
- package/dist/{client-adapter-CNc5wzzs.js → .setup/client-adapter-dvFa47YL.mjs} +1 -1
- package/dist/{config-schema-DfEbpMVQ.js → .setup/config-schema-aQwwMGUj.mjs} +19 -3
- package/dist/{doctor-contract-api-D0SnglP4.js → .setup/doctor-contract-api-Rbq_sRTI.mjs} +79 -15
- package/dist/{install-signal-cli-QlEIfWBv.js → .setup/install-signal-cli-bXeTrTyL.mjs} +3 -4
- package/dist/{monitor-CokYfKOk.js → .setup/monitor-DAMQw1pZ.mjs} +63 -88
- package/dist/{probe-Bh9f0rRO.js → .setup/probe-IKCS9D-z.mjs} +3 -3
- package/dist/{question-reactions-B06vyt3T.js → .setup/question-reactions-DSNAD0cd.mjs} +3 -3
- package/dist/{reaction-runtime-api-CWqDv5-q.js → .setup/reaction-runtime-api-BnQGHcrB.mjs} +6 -5
- package/dist/{rpc-context-dXSy4NtF.js → .setup/rpc-context-CwwADZ1b.mjs} +1 -1
- package/dist/{send-BvWSfyNf.js → .setup/send-CcetN4rk.mjs} +7 -6
- package/dist/{send.runtime-BNQ0x-2k.js → .setup/send.runtime-B7C4IP23.mjs} +1 -1
- package/dist/{transport-detection-BD__qywn.js → .setup/transport-detection-CqyR2vG8.mjs} +51 -21
- package/dist/{transport-detection.runtime-c9q3r3AM.js → .setup/transport-detection.runtime-CW1lp2d9.mjs} +1 -1
- package/dist/{transport-policy-DxvSMHp9.js → .setup/transport-policy-5VSnj5ma.mjs} +2 -33
- package/dist/.setup/transport-probes.runtime-WprAyBbL.mjs +2 -0
- package/dist/.setup/transport-url-CAC0JcuI.mjs +55 -0
- package/dist/api.js +11 -16
- package/dist/channel-config-api.js +1 -1
- package/dist/channel-plugin-api.js +1 -1
- package/dist/contract-api.js +4 -4
- package/dist/doctor-contract-api.js +1 -1
- package/dist/reaction-runtime-api.js +1 -1
- package/dist/runtime-api.js +9 -9
- package/dist/setup-entry.js +2 -1
- package/node_modules/zod/README.md +27 -0
- package/node_modules/zod/compile.cjs +77 -0
- package/node_modules/zod/compile.d.cts +1 -0
- package/node_modules/zod/compile.d.ts +1 -0
- package/node_modules/zod/compile.js +52 -0
- package/node_modules/zod/index.cjs +2 -2
- package/node_modules/zod/index.d.cts +1 -2
- package/node_modules/zod/index.d.ts +1 -2
- package/node_modules/zod/index.js +5 -2
- package/node_modules/zod/package.json +13 -2
- package/node_modules/zod/src/compile.ts +56 -0
- package/node_modules/zod/src/index.ts +5 -2
- package/node_modules/zod/src/v3/ZodError.ts +22 -12
- package/node_modules/zod/src/v3/tests/error.test.ts +35 -0
- package/node_modules/zod/src/v3/tests/intersection.test.ts +18 -0
- package/node_modules/zod/src/v3/tests/language-server.test.ts +1 -2
- package/node_modules/zod/src/v3/tests/object.test.ts +3 -6
- package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -80
- package/node_modules/zod/src/v3/tests/string.test.ts +6 -0
- package/node_modules/zod/src/v3/types.ts +5 -5
- package/node_modules/zod/src/v4/classic/checks.ts +1 -0
- package/node_modules/zod/src/v4/classic/compat.ts +26 -18
- package/node_modules/zod/src/v4/classic/deep-partial.ts +76 -0
- package/node_modules/zod/src/v4/classic/errors.ts +59 -44
- package/node_modules/zod/src/v4/classic/external.ts +12 -9
- package/node_modules/zod/src/v4/classic/from-json-schema.ts +140 -78
- package/node_modules/zod/src/v4/classic/in-out.ts +45 -0
- package/node_modules/zod/src/v4/classic/index.ts +2 -2
- package/node_modules/zod/src/v4/classic/iso.ts +2 -72
- package/node_modules/zod/src/v4/classic/parse.ts +10 -4
- package/node_modules/zod/src/v4/classic/schemas.ts +452 -262
- package/node_modules/zod/src/v4/classic/tests/apply.test.ts +27 -0
- package/node_modules/zod/src/v4/classic/tests/array.test.ts +2 -2
- package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +135 -0
- package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +30 -1
- package/node_modules/zod/src/v4/classic/tests/catch.test.ts +278 -0
- package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +1 -2
- package/node_modules/zod/src/v4/classic/tests/codec.test.ts +2 -1
- package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +2 -2
- package/node_modules/zod/src/v4/classic/tests/credit-card.test.ts +76 -0
- package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +720 -0
- package/node_modules/zod/src/v4/classic/tests/date.test.ts +30 -0
- package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +32 -18
- package/node_modules/zod/src/v4/classic/tests/deep-partial.test.ts +380 -0
- package/node_modules/zod/src/v4/classic/tests/default-locale.test.ts +32 -0
- package/node_modules/zod/src/v4/classic/tests/default.test.ts +46 -0
- package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +31 -7
- package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +155 -13
- package/node_modules/zod/src/v4/classic/tests/enum.test.ts +11 -0
- package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +112 -2
- package/node_modules/zod/src/v4/classic/tests/error.test.ts +274 -6
- package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +425 -10
- package/node_modules/zod/src/v4/classic/tests/function.test.ts +31 -0
- package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +2 -9
- package/node_modules/zod/src/v4/classic/tests/hash.test.ts +1 -2
- package/node_modules/zod/src/v4/classic/tests/in-out.test.ts +159 -0
- package/node_modules/zod/src/v4/classic/tests/index.test.ts +21 -2
- package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +281 -0
- package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +47 -0
- package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +136 -0
- package/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +183 -0
- package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +3 -10
- package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +36 -1
- package/node_modules/zod/src/v4/classic/tests/literal.test.ts +12 -1
- package/node_modules/zod/src/v4/classic/tests/map.test.ts +12 -0
- package/node_modules/zod/src/v4/classic/tests/number.test.ts +46 -9
- package/node_modules/zod/src/v4/classic/tests/object.test.ts +245 -12
- package/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +234 -0
- package/node_modules/zod/src/v4/classic/tests/optional.test.ts +49 -16
- package/node_modules/zod/src/v4/classic/tests/partial.test.ts +51 -4
- package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +20 -2
- package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -68
- package/node_modules/zod/src/v4/classic/tests/record.test.ts +186 -18
- package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +33 -2
- package/node_modules/zod/src/v4/classic/tests/redos.test.ts +68 -0
- package/node_modules/zod/src/v4/classic/tests/refine.test.ts +60 -0
- package/node_modules/zod/src/v4/classic/tests/set.test.ts +9 -0
- package/node_modules/zod/src/v4/classic/tests/string.test.ts +127 -5
- package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +18 -0
- package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +11 -2
- package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +1585 -173
- package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +45 -30
- package/node_modules/zod/src/v4/classic/tests/union.test.ts +39 -2
- package/node_modules/zod/src/v4/classic/tests/validate.test.ts +76 -0
- package/node_modules/zod/src/v4/classic/tests/validations.test.ts +2 -2
- package/node_modules/zod/src/v4/core/api.ts +48 -12
- package/node_modules/zod/src/v4/core/checks.ts +57 -44
- package/node_modules/zod/src/v4/core/compile.ts +2188 -0
- package/node_modules/zod/src/v4/core/core.ts +98 -19
- package/node_modules/zod/src/v4/core/doc.ts +11 -7
- package/node_modules/zod/src/v4/core/errors.ts +115 -24
- package/node_modules/zod/src/v4/core/index.ts +3 -0
- package/node_modules/zod/src/v4/core/json-schema-generator.ts +6 -1
- package/node_modules/zod/src/v4/core/json-schema-processors.ts +257 -93
- package/node_modules/zod/src/v4/core/json-schema.ts +2 -1
- package/node_modules/zod/src/v4/core/memoizer.ts +284 -0
- package/node_modules/zod/src/v4/core/parse.ts +131 -38
- package/node_modules/zod/src/v4/core/regexes.ts +30 -13
- package/node_modules/zod/src/v4/core/registries.ts +2 -2
- package/node_modules/zod/src/v4/core/schemas.ts +759 -461
- package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +969 -0
- package/node_modules/zod/src/v4/core/tests/compile-global.test.ts +89 -0
- package/node_modules/zod/src/v4/core/tests/compile-off-by-default.test.ts +26 -0
- package/node_modules/zod/src/v4/core/tests/compile-stats.test.ts +34 -0
- package/node_modules/zod/src/v4/core/tests/compile.test.ts +1639 -0
- package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +1 -2
- package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +1 -2
- package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +3 -3
- package/node_modules/zod/src/v4/core/tests/locales/parity.test.ts +42 -0
- package/node_modules/zod/src/v4/core/tests/locales/tk.test.ts +69 -0
- package/node_modules/zod/src/v4/core/tests/treeshake.test.ts +51 -0
- package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +31 -0
- package/node_modules/zod/src/v4/core/to-json-schema.ts +275 -42
- package/node_modules/zod/src/v4/core/util.ts +268 -42
- package/node_modules/zod/src/v4/core/versions.ts +2 -2
- package/node_modules/zod/src/v4/core/visit.ts +193 -0
- package/node_modules/zod/src/v4/index.ts +3 -3
- package/node_modules/zod/src/v4/locales/ar.ts +3 -0
- package/node_modules/zod/src/v4/locales/az.ts +3 -0
- package/node_modules/zod/src/v4/locales/be.ts +10 -0
- package/node_modules/zod/src/v4/locales/bg.ts +3 -0
- package/node_modules/zod/src/v4/locales/bn.ts +121 -0
- package/node_modules/zod/src/v4/locales/ca.ts +3 -0
- package/node_modules/zod/src/v4/locales/ckb.ts +138 -0
- package/node_modules/zod/src/v4/locales/cs.ts +3 -0
- package/node_modules/zod/src/v4/locales/da.ts +5 -2
- package/node_modules/zod/src/v4/locales/de.ts +3 -0
- package/node_modules/zod/src/v4/locales/el.ts +1 -0
- package/node_modules/zod/src/v4/locales/en.ts +15 -4
- package/node_modules/zod/src/v4/locales/eo.ts +3 -0
- package/node_modules/zod/src/v4/locales/es.ts +2 -0
- package/node_modules/zod/src/v4/locales/fa.ts +3 -0
- package/node_modules/zod/src/v4/locales/fi.ts +3 -0
- package/node_modules/zod/src/v4/locales/fr-CA.ts +3 -0
- package/node_modules/zod/src/v4/locales/fr.ts +19 -14
- package/node_modules/zod/src/v4/locales/gu.ts +121 -0
- package/node_modules/zod/src/v4/locales/he.ts +6 -1
- package/node_modules/zod/src/v4/locales/hi.ts +124 -0
- package/node_modules/zod/src/v4/locales/hr.ts +2 -0
- package/node_modules/zod/src/v4/locales/hu.ts +3 -0
- package/node_modules/zod/src/v4/locales/hy.ts +9 -0
- package/node_modules/zod/src/v4/locales/id.ts +3 -0
- package/node_modules/zod/src/v4/locales/index.ts +10 -0
- package/node_modules/zod/src/v4/locales/is.ts +3 -0
- package/node_modules/zod/src/v4/locales/it.ts +3 -0
- package/node_modules/zod/src/v4/locales/ja.ts +3 -0
- package/node_modules/zod/src/v4/locales/ka.ts +3 -0
- package/node_modules/zod/src/v4/locales/km.ts +3 -0
- package/node_modules/zod/src/v4/locales/kn.ts +124 -0
- package/node_modules/zod/src/v4/locales/ko.ts +3 -0
- package/node_modules/zod/src/v4/locales/lt.ts +2 -0
- package/node_modules/zod/src/v4/locales/mk.ts +3 -0
- package/node_modules/zod/src/v4/locales/ms.ts +3 -0
- package/node_modules/zod/src/v4/locales/ne.ts +126 -0
- package/node_modules/zod/src/v4/locales/nl.ts +3 -0
- package/node_modules/zod/src/v4/locales/nn.ts +119 -0
- package/node_modules/zod/src/v4/locales/no.ts +5 -2
- package/node_modules/zod/src/v4/locales/ota.ts +3 -0
- package/node_modules/zod/src/v4/locales/pl.ts +3 -0
- package/node_modules/zod/src/v4/locales/ps.ts +3 -0
- package/node_modules/zod/src/v4/locales/pt-BR.ts +159 -0
- package/node_modules/zod/src/v4/locales/pt.ts +99 -58
- package/node_modules/zod/src/v4/locales/ro.ts +1 -0
- package/node_modules/zod/src/v4/locales/ru.ts +10 -0
- package/node_modules/zod/src/v4/locales/sk.ts +121 -0
- package/node_modules/zod/src/v4/locales/sl.ts +3 -0
- package/node_modules/zod/src/v4/locales/sv.ts +5 -2
- package/node_modules/zod/src/v4/locales/ta.ts +3 -0
- package/node_modules/zod/src/v4/locales/th.ts +3 -0
- package/node_modules/zod/src/v4/locales/tk.ts +111 -0
- package/node_modules/zod/src/v4/locales/tr.ts +3 -0
- package/node_modules/zod/src/v4/locales/uk.ts +3 -0
- package/node_modules/zod/src/v4/locales/ur.ts +3 -0
- package/node_modules/zod/src/v4/locales/uz.ts +1 -0
- package/node_modules/zod/src/v4/locales/vi.ts +3 -0
- package/node_modules/zod/src/v4/locales/yo.ts +3 -0
- package/node_modules/zod/src/v4/locales/zh-CN.ts +3 -0
- package/node_modules/zod/src/v4/locales/zh-TW.ts +3 -0
- package/node_modules/zod/src/v4/mini/checks.ts +1 -0
- package/node_modules/zod/src/v4/mini/deep-partial.ts +73 -0
- package/node_modules/zod/src/v4/mini/external.ts +10 -1
- package/node_modules/zod/src/v4/mini/in-out.ts +45 -0
- package/node_modules/zod/src/v4/mini/parse.ts +2 -0
- package/node_modules/zod/src/v4/mini/schemas.ts +135 -56
- package/node_modules/zod/src/v4/mini/tests/apply.test.ts +33 -0
- package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +62 -1
- package/node_modules/zod/src/v4/mini/tests/checks.test.ts +14 -0
- package/node_modules/zod/src/v4/mini/tests/codec.test.ts +35 -1
- package/node_modules/zod/src/v4/mini/tests/cyclic-data.test.ts +84 -0
- package/node_modules/zod/src/v4/mini/tests/deep-partial.test.ts +54 -0
- package/node_modules/zod/src/v4/mini/tests/error.test.ts +23 -4
- package/node_modules/zod/src/v4/mini/tests/functions.test.ts +9 -0
- package/node_modules/zod/src/v4/mini/tests/index.test.ts +72 -5
- package/node_modules/zod/src/v4/mini/tests/number.test.ts +14 -0
- package/node_modules/zod/src/v4/mini/tests/object.test.ts +65 -0
- package/node_modules/zod/src/v4/mini/tests/string.test.ts +21 -0
- package/node_modules/zod/v3/ZodError.cjs +22 -12
- package/node_modules/zod/v3/ZodError.d.cts +1 -1
- package/node_modules/zod/v3/ZodError.d.ts +1 -1
- package/node_modules/zod/v3/ZodError.js +22 -12
- package/node_modules/zod/v3/types.cjs +7 -5
- package/node_modules/zod/v3/types.js +7 -5
- package/node_modules/zod/v4/classic/checks.cjs +2 -1
- package/node_modules/zod/v4/classic/checks.d.cts +1 -1
- package/node_modules/zod/v4/classic/checks.d.ts +1 -1
- package/node_modules/zod/v4/classic/checks.js +1 -1
- package/node_modules/zod/v4/classic/compat.d.cts +9 -11
- package/node_modules/zod/v4/classic/compat.d.ts +9 -11
- package/node_modules/zod/v4/classic/deep-partial.cjs +39 -0
- package/node_modules/zod/v4/classic/deep-partial.d.cts +14 -0
- package/node_modules/zod/v4/classic/deep-partial.d.ts +14 -0
- package/node_modules/zod/v4/classic/deep-partial.js +13 -0
- package/node_modules/zod/v4/classic/errors.cjs +43 -34
- package/node_modules/zod/v4/classic/errors.d.cts +3 -4
- package/node_modules/zod/v4/classic/errors.d.ts +3 -4
- package/node_modules/zod/v4/classic/errors.js +43 -34
- package/node_modules/zod/v4/classic/external.cjs +30 -27
- package/node_modules/zod/v4/classic/external.d.cts +5 -2
- package/node_modules/zod/v4/classic/external.d.ts +5 -2
- package/node_modules/zod/v4/classic/external.js +5 -8
- package/node_modules/zod/v4/classic/from-json-schema.cjs +136 -75
- package/node_modules/zod/v4/classic/from-json-schema.js +136 -75
- package/node_modules/zod/v4/classic/in-out.cjs +63 -0
- package/node_modules/zod/v4/classic/in-out.d.cts +8 -0
- package/node_modules/zod/v4/classic/in-out.d.ts +8 -0
- package/node_modules/zod/v4/classic/in-out.js +36 -0
- package/node_modules/zod/v4/classic/index.cjs +2 -2
- package/node_modules/zod/v4/classic/index.d.cts +1 -2
- package/node_modules/zod/v4/classic/index.d.ts +1 -2
- package/node_modules/zod/v4/classic/index.js +2 -2
- package/node_modules/zod/v4/classic/iso.cjs +11 -22
- package/node_modules/zod/v4/classic/iso.d.cts +2 -17
- package/node_modules/zod/v4/classic/iso.d.ts +2 -17
- package/node_modules/zod/v4/classic/iso.js +2 -17
- package/node_modules/zod/v4/classic/parse.cjs +4 -1
- package/node_modules/zod/v4/classic/parse.d.cts +17 -4
- package/node_modules/zod/v4/classic/parse.d.ts +17 -4
- package/node_modules/zod/v4/classic/parse.js +1 -0
- package/node_modules/zod/v4/classic/schemas.cjs +498 -398
- package/node_modules/zod/v4/classic/schemas.d.cts +53 -18
- package/node_modules/zod/v4/classic/schemas.d.ts +53 -18
- package/node_modules/zod/v4/classic/schemas.js +492 -396
- package/node_modules/zod/v4/core/api.cjs +23 -4
- package/node_modules/zod/v4/core/api.d.cts +13 -9
- package/node_modules/zod/v4/core/api.d.ts +13 -9
- package/node_modules/zod/v4/core/api.js +21 -4
- package/node_modules/zod/v4/core/checks.cjs +37 -31
- package/node_modules/zod/v4/core/checks.d.cts +13 -13
- package/node_modules/zod/v4/core/checks.d.ts +13 -13
- package/node_modules/zod/v4/core/checks.js +37 -31
- package/node_modules/zod/v4/core/compile.cjs +1813 -0
- package/node_modules/zod/v4/core/compile.d.cts +51 -0
- package/node_modules/zod/v4/core/compile.d.ts +51 -0
- package/node_modules/zod/v4/core/compile.js +1783 -0
- package/node_modules/zod/v4/core/core.cjs +81 -18
- package/node_modules/zod/v4/core/core.d.cts +16 -4
- package/node_modules/zod/v4/core/core.d.ts +16 -4
- package/node_modules/zod/v4/core/core.js +82 -19
- package/node_modules/zod/v4/core/doc.cjs +5 -7
- package/node_modules/zod/v4/core/doc.d.cts +3 -1
- package/node_modules/zod/v4/core/doc.d.ts +3 -1
- package/node_modules/zod/v4/core/doc.js +5 -7
- package/node_modules/zod/v4/core/errors.cjs +110 -25
- package/node_modules/zod/v4/core/errors.d.cts +4 -0
- package/node_modules/zod/v4/core/errors.d.ts +4 -0
- package/node_modules/zod/v4/core/errors.js +110 -25
- package/node_modules/zod/v4/core/index.cjs +5 -1
- package/node_modules/zod/v4/core/index.d.cts +3 -0
- package/node_modules/zod/v4/core/index.d.ts +3 -0
- package/node_modules/zod/v4/core/index.js +3 -0
- package/node_modules/zod/v4/core/json-schema-generator.cjs +4 -0
- package/node_modules/zod/v4/core/json-schema-generator.d.cts +2 -2
- package/node_modules/zod/v4/core/json-schema-generator.d.ts +2 -2
- package/node_modules/zod/v4/core/json-schema-generator.js +4 -0
- package/node_modules/zod/v4/core/json-schema-processors.cjs +264 -95
- package/node_modules/zod/v4/core/json-schema-processors.js +243 -97
- package/node_modules/zod/v4/core/json-schema.d.cts +2 -1
- package/node_modules/zod/v4/core/json-schema.d.ts +2 -1
- package/node_modules/zod/v4/core/memoizer.cjs +272 -0
- package/node_modules/zod/v4/core/memoizer.d.cts +15 -0
- package/node_modules/zod/v4/core/memoizer.d.ts +15 -0
- package/node_modules/zod/v4/core/memoizer.js +265 -0
- package/node_modules/zod/v4/core/parse.cjs +96 -34
- package/node_modules/zod/v4/core/parse.d.cts +14 -11
- package/node_modules/zod/v4/core/parse.d.ts +14 -11
- package/node_modules/zod/v4/core/parse.js +94 -33
- package/node_modules/zod/v4/core/regexes.cjs +27 -15
- package/node_modules/zod/v4/core/regexes.d.cts +2 -0
- package/node_modules/zod/v4/core/regexes.d.ts +2 -0
- package/node_modules/zod/v4/core/regexes.js +24 -13
- package/node_modules/zod/v4/core/registries.js +2 -2
- package/node_modules/zod/v4/core/schemas.cjs +537 -326
- package/node_modules/zod/v4/core/schemas.d.cts +100 -31
- package/node_modules/zod/v4/core/schemas.d.ts +100 -31
- package/node_modules/zod/v4/core/schemas.js +526 -325
- package/node_modules/zod/v4/core/to-json-schema.cjs +242 -39
- package/node_modules/zod/v4/core/to-json-schema.d.cts +42 -3
- package/node_modules/zod/v4/core/to-json-schema.d.ts +42 -3
- package/node_modules/zod/v4/core/to-json-schema.js +241 -39
- package/node_modules/zod/v4/core/util.cjs +212 -31
- package/node_modules/zod/v4/core/util.d.cts +58 -1
- package/node_modules/zod/v4/core/util.d.ts +58 -1
- package/node_modules/zod/v4/core/util.js +202 -30
- package/node_modules/zod/v4/core/versions.cjs +2 -2
- package/node_modules/zod/v4/core/versions.d.cts +1 -1
- package/node_modules/zod/v4/core/versions.d.ts +1 -1
- package/node_modules/zod/v4/core/versions.js +2 -2
- package/node_modules/zod/v4/core/visit.cjs +195 -0
- package/node_modules/zod/v4/core/visit.d.cts +30 -0
- package/node_modules/zod/v4/core/visit.d.ts +30 -0
- package/node_modules/zod/v4/core/visit.js +169 -0
- package/node_modules/zod/v4/index.cjs +15 -5
- package/node_modules/zod/v4/index.d.cts +2 -2
- package/node_modules/zod/v4/index.d.ts +2 -2
- package/node_modules/zod/v4/index.js +3 -2
- package/node_modules/zod/v4/locales/ar.cjs +3 -0
- package/node_modules/zod/v4/locales/ar.js +3 -0
- package/node_modules/zod/v4/locales/az.cjs +3 -0
- package/node_modules/zod/v4/locales/az.js +3 -0
- package/node_modules/zod/v4/locales/be.cjs +10 -0
- package/node_modules/zod/v4/locales/be.js +10 -0
- package/node_modules/zod/v4/locales/bg.cjs +3 -0
- package/node_modules/zod/v4/locales/bg.js +3 -0
- package/node_modules/zod/v4/locales/bn.cjs +138 -0
- package/node_modules/zod/v4/locales/bn.d.cts +5 -0
- package/node_modules/zod/v4/locales/bn.d.ts +4 -0
- package/node_modules/zod/v4/locales/bn.js +111 -0
- package/node_modules/zod/v4/locales/ca.cjs +3 -0
- package/node_modules/zod/v4/locales/ca.js +3 -0
- package/node_modules/zod/v4/locales/ckb.cjs +158 -0
- package/node_modules/zod/v4/locales/ckb.d.cts +5 -0
- package/node_modules/zod/v4/locales/ckb.d.ts +4 -0
- package/node_modules/zod/v4/locales/ckb.js +131 -0
- package/node_modules/zod/v4/locales/cs.cjs +3 -0
- package/node_modules/zod/v4/locales/cs.js +3 -0
- package/node_modules/zod/v4/locales/da.cjs +5 -2
- package/node_modules/zod/v4/locales/da.js +5 -2
- package/node_modules/zod/v4/locales/de.cjs +3 -0
- package/node_modules/zod/v4/locales/de.js +3 -0
- package/node_modules/zod/v4/locales/el.cjs +1 -0
- package/node_modules/zod/v4/locales/el.js +1 -0
- package/node_modules/zod/v4/locales/en.cjs +14 -4
- package/node_modules/zod/v4/locales/en.js +14 -4
- package/node_modules/zod/v4/locales/eo.cjs +3 -0
- package/node_modules/zod/v4/locales/eo.js +3 -0
- package/node_modules/zod/v4/locales/es.cjs +2 -0
- package/node_modules/zod/v4/locales/es.js +2 -0
- package/node_modules/zod/v4/locales/fa.cjs +3 -0
- package/node_modules/zod/v4/locales/fa.js +3 -0
- package/node_modules/zod/v4/locales/fi.cjs +3 -0
- package/node_modules/zod/v4/locales/fi.js +3 -0
- package/node_modules/zod/v4/locales/fr-CA.cjs +3 -0
- package/node_modules/zod/v4/locales/fr-CA.js +3 -0
- package/node_modules/zod/v4/locales/fr.cjs +16 -14
- package/node_modules/zod/v4/locales/fr.js +16 -14
- package/node_modules/zod/v4/locales/gu.cjs +138 -0
- package/node_modules/zod/v4/locales/gu.d.cts +5 -0
- package/node_modules/zod/v4/locales/gu.d.ts +4 -0
- package/node_modules/zod/v4/locales/gu.js +111 -0
- package/node_modules/zod/v4/locales/he.cjs +5 -0
- package/node_modules/zod/v4/locales/he.js +5 -0
- package/node_modules/zod/v4/locales/hi.cjs +136 -0
- package/node_modules/zod/v4/locales/hi.d.cts +5 -0
- package/node_modules/zod/v4/locales/hi.d.ts +4 -0
- package/node_modules/zod/v4/locales/hi.js +109 -0
- package/node_modules/zod/v4/locales/hr.cjs +2 -0
- package/node_modules/zod/v4/locales/hr.js +2 -0
- package/node_modules/zod/v4/locales/hu.cjs +3 -0
- package/node_modules/zod/v4/locales/hu.js +3 -0
- package/node_modules/zod/v4/locales/hy.cjs +9 -0
- package/node_modules/zod/v4/locales/hy.js +9 -0
- package/node_modules/zod/v4/locales/id.cjs +3 -0
- package/node_modules/zod/v4/locales/id.js +3 -0
- package/node_modules/zod/v4/locales/index.cjs +22 -2
- package/node_modules/zod/v4/locales/index.d.cts +10 -0
- package/node_modules/zod/v4/locales/index.d.ts +10 -0
- package/node_modules/zod/v4/locales/index.js +10 -0
- package/node_modules/zod/v4/locales/is.cjs +3 -0
- package/node_modules/zod/v4/locales/is.js +3 -0
- package/node_modules/zod/v4/locales/it.cjs +3 -0
- package/node_modules/zod/v4/locales/it.js +3 -0
- package/node_modules/zod/v4/locales/ja.cjs +3 -0
- package/node_modules/zod/v4/locales/ja.js +3 -0
- package/node_modules/zod/v4/locales/ka.cjs +3 -0
- package/node_modules/zod/v4/locales/ka.js +3 -0
- package/node_modules/zod/v4/locales/km.cjs +3 -0
- package/node_modules/zod/v4/locales/km.js +3 -0
- package/node_modules/zod/v4/locales/kn.cjs +141 -0
- package/node_modules/zod/v4/locales/kn.d.cts +5 -0
- package/node_modules/zod/v4/locales/kn.d.ts +4 -0
- package/node_modules/zod/v4/locales/kn.js +114 -0
- package/node_modules/zod/v4/locales/ko.cjs +3 -0
- package/node_modules/zod/v4/locales/ko.js +3 -0
- package/node_modules/zod/v4/locales/lt.cjs +2 -0
- package/node_modules/zod/v4/locales/lt.js +2 -0
- package/node_modules/zod/v4/locales/mk.cjs +3 -0
- package/node_modules/zod/v4/locales/mk.js +3 -0
- package/node_modules/zod/v4/locales/ms.cjs +3 -0
- package/node_modules/zod/v4/locales/ms.js +3 -0
- package/node_modules/zod/v4/locales/ne.cjs +136 -0
- package/node_modules/zod/v4/locales/ne.d.cts +5 -0
- package/node_modules/zod/v4/locales/ne.d.ts +4 -0
- package/node_modules/zod/v4/locales/ne.js +109 -0
- package/node_modules/zod/v4/locales/nl.cjs +3 -0
- package/node_modules/zod/v4/locales/nl.js +3 -0
- package/node_modules/zod/v4/locales/nn.cjs +138 -0
- package/node_modules/zod/v4/locales/nn.d.cts +5 -0
- package/node_modules/zod/v4/locales/nn.d.ts +4 -0
- package/node_modules/zod/v4/locales/nn.js +111 -0
- package/node_modules/zod/v4/locales/no.cjs +5 -2
- package/node_modules/zod/v4/locales/no.js +5 -2
- package/node_modules/zod/v4/locales/ota.cjs +3 -0
- package/node_modules/zod/v4/locales/ota.js +3 -0
- package/node_modules/zod/v4/locales/pl.cjs +3 -0
- package/node_modules/zod/v4/locales/pl.js +3 -0
- package/node_modules/zod/v4/locales/ps.cjs +3 -0
- package/node_modules/zod/v4/locales/ps.js +3 -0
- package/node_modules/zod/v4/locales/pt-BR.cjs +168 -0
- package/node_modules/zod/v4/locales/pt-BR.d.cts +5 -0
- package/node_modules/zod/v4/locales/pt-BR.d.ts +4 -0
- package/node_modules/zod/v4/locales/pt-BR.js +141 -0
- package/node_modules/zod/v4/locales/pt.cjs +87 -55
- package/node_modules/zod/v4/locales/pt.js +87 -55
- package/node_modules/zod/v4/locales/ro.cjs +1 -0
- package/node_modules/zod/v4/locales/ro.js +1 -0
- package/node_modules/zod/v4/locales/ru.cjs +10 -0
- package/node_modules/zod/v4/locales/ru.js +10 -0
- package/node_modules/zod/v4/locales/sk.cjs +141 -0
- package/node_modules/zod/v4/locales/sk.d.cts +5 -0
- package/node_modules/zod/v4/locales/sk.d.ts +4 -0
- package/node_modules/zod/v4/locales/sk.js +114 -0
- package/node_modules/zod/v4/locales/sl.cjs +3 -0
- package/node_modules/zod/v4/locales/sl.js +3 -0
- package/node_modules/zod/v4/locales/sv.cjs +5 -2
- package/node_modules/zod/v4/locales/sv.js +5 -2
- package/node_modules/zod/v4/locales/ta.cjs +3 -0
- package/node_modules/zod/v4/locales/ta.js +3 -0
- package/node_modules/zod/v4/locales/th.cjs +3 -0
- package/node_modules/zod/v4/locales/th.js +3 -0
- package/node_modules/zod/v4/locales/tk.cjs +132 -0
- package/node_modules/zod/v4/locales/tk.d.cts +5 -0
- package/node_modules/zod/v4/locales/tk.d.ts +4 -0
- package/node_modules/zod/v4/locales/tk.js +105 -0
- package/node_modules/zod/v4/locales/tr.cjs +3 -0
- package/node_modules/zod/v4/locales/tr.js +3 -0
- package/node_modules/zod/v4/locales/uk.cjs +3 -0
- package/node_modules/zod/v4/locales/uk.js +3 -0
- package/node_modules/zod/v4/locales/ur.cjs +3 -0
- package/node_modules/zod/v4/locales/ur.js +3 -0
- package/node_modules/zod/v4/locales/uz.cjs +1 -0
- package/node_modules/zod/v4/locales/uz.js +1 -0
- package/node_modules/zod/v4/locales/vi.cjs +3 -0
- package/node_modules/zod/v4/locales/vi.js +3 -0
- package/node_modules/zod/v4/locales/yo.cjs +3 -0
- package/node_modules/zod/v4/locales/yo.js +3 -0
- package/node_modules/zod/v4/locales/zh-CN.cjs +3 -0
- package/node_modules/zod/v4/locales/zh-CN.js +3 -0
- package/node_modules/zod/v4/locales/zh-TW.cjs +3 -0
- package/node_modules/zod/v4/locales/zh-TW.js +3 -0
- package/node_modules/zod/v4/mini/checks.cjs +2 -1
- package/node_modules/zod/v4/mini/checks.d.cts +1 -1
- package/node_modules/zod/v4/mini/checks.d.ts +1 -1
- package/node_modules/zod/v4/mini/checks.js +1 -1
- package/node_modules/zod/v4/mini/deep-partial.cjs +39 -0
- package/node_modules/zod/v4/mini/deep-partial.d.cts +14 -0
- package/node_modules/zod/v4/mini/deep-partial.d.ts +14 -0
- package/node_modules/zod/v4/mini/deep-partial.js +13 -0
- package/node_modules/zod/v4/mini/external.cjs +12 -1
- package/node_modules/zod/v4/mini/external.d.cts +5 -2
- package/node_modules/zod/v4/mini/external.d.ts +5 -2
- package/node_modules/zod/v4/mini/external.js +3 -1
- package/node_modules/zod/v4/mini/in-out.cjs +63 -0
- package/node_modules/zod/v4/mini/in-out.d.cts +8 -0
- package/node_modules/zod/v4/mini/in-out.d.ts +8 -0
- package/node_modules/zod/v4/mini/in-out.js +36 -0
- package/node_modules/zod/v4/mini/parse.cjs +3 -1
- package/node_modules/zod/v4/mini/parse.d.cts +1 -1
- package/node_modules/zod/v4/mini/parse.d.ts +1 -1
- package/node_modules/zod/v4/mini/parse.js +1 -1
- package/node_modules/zod/v4/mini/schemas.cjs +75 -47
- package/node_modules/zod/v4/mini/schemas.d.cts +43 -13
- package/node_modules/zod/v4/mini/schemas.d.ts +43 -13
- package/node_modules/zod/v4/mini/schemas.js +71 -45
- package/openclaw.plugin.json +38 -42
- package/package.json +8 -6
- package/dist/transport-probes.runtime-DV7x4VWu.js +0 -2
- package/node_modules/zod/src/v4/core/config.ts +0 -15
- /package/dist/{identity-YXPmgFMu.js → .setup/identity-YXPmgFMu.mjs} +0 -0
- /package/dist/{normalize-l_b99hap.js → .setup/normalize-l_b99hap.mjs} +0 -0
- /package/dist/{rolldown-runtime-8H4AJuhK.js → .setup/rolldown-runtime-8H4AJuhK.mjs} +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId, t as listEnabledSignalAccounts } from "./accounts-
|
|
3
|
-
import { n as normalizeSignalMessagingTarget, r as normalizeSignalReactionRecipient } from "./normalize-l_b99hap.
|
|
4
|
-
import { n as signalApprovalAuth, t as getSignalApprovalApprovers } from "./approval-auth-
|
|
5
|
-
import { n as sendReactionSignal, t as removeReactionSignal } from "./reaction-runtime-api-
|
|
1
|
+
import { a as normalizeSignalTransportUrl } from "./transport-url-CAC0JcuI.mjs";
|
|
2
|
+
import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId, t as listEnabledSignalAccounts } from "./accounts-BV6tDOTc.mjs";
|
|
3
|
+
import { n as normalizeSignalMessagingTarget, r as normalizeSignalReactionRecipient } from "./normalize-l_b99hap.mjs";
|
|
4
|
+
import { n as signalApprovalAuth, t as getSignalApprovalApprovers } from "./approval-auth-BBI9BTRm.mjs";
|
|
5
|
+
import { n as sendReactionSignal, t as removeReactionSignal } from "./reaction-runtime-api-BnQGHcrB.mjs";
|
|
6
6
|
import { DEFAULT_ACCOUNT_ID } from "openclaw/plugin-sdk/account-id";
|
|
7
7
|
import { questionGatewayRuntime } from "openclaw/plugin-sdk/question-gateway-runtime";
|
|
8
8
|
import { parseAgentSessionKey } from "openclaw/plugin-sdk/routing";
|
|
@@ -58,6 +58,7 @@ const signalApproval = createApproverRestrictedNativeApprovalCapabilityFromForwa
|
|
|
58
58
|
}).manualFallbackPayload }
|
|
59
59
|
},
|
|
60
60
|
createNativeRuntime: (routing) => createLazyChannelApprovalNativeRuntimeAdapter({
|
|
61
|
+
capabilityBoundary: true,
|
|
61
62
|
eventKinds: [
|
|
62
63
|
"exec",
|
|
63
64
|
"plugin",
|
|
@@ -73,7 +74,7 @@ const signalApproval = createApproverRestrictedNativeApprovalCapabilityFromForwa
|
|
|
73
74
|
approvalKind,
|
|
74
75
|
request
|
|
75
76
|
}),
|
|
76
|
-
load: async () => (await import("./approval-handler.runtime-
|
|
77
|
+
load: async () => (await import("./approval-handler.runtime-Clf_1IZj.mjs")).signalApprovalNativeRuntime
|
|
77
78
|
})
|
|
78
79
|
});
|
|
79
80
|
const signalApprovalRouting = signalApproval.routing;
|
|
@@ -169,6 +170,7 @@ function markdownToSignalText(markdown, options = {}) {
|
|
|
169
170
|
}
|
|
170
171
|
function markdownToSignalTextChunks(markdown, limit, options = {}) {
|
|
171
172
|
const ir = markdownToSignalIR(markdown, options);
|
|
173
|
+
if (ir.listItems && ir.text.length > limit) ir.listItems = ir.listItems.map((item) => ({ ...item }));
|
|
172
174
|
return renderMarkdownIRChunksWithinLimit({
|
|
173
175
|
ir,
|
|
174
176
|
limit,
|
|
@@ -234,7 +236,8 @@ async function mutateSignalReaction(params) {
|
|
|
234
236
|
accountId: params.accountId,
|
|
235
237
|
groupId: params.target.groupId,
|
|
236
238
|
targetAuthor: params.targetAuthor,
|
|
237
|
-
targetAuthorUuid: params.targetAuthorUuid
|
|
239
|
+
targetAuthorUuid: params.targetAuthorUuid,
|
|
240
|
+
...params.assertDirectAdapterHandoff ? { assertDirectAdapterHandoff: params.assertDirectAdapterHandoff } : {}
|
|
238
241
|
};
|
|
239
242
|
await (params.remove ? removeReactionSignal : sendReactionSignal)(params.target.recipient ?? "", params.timestamp, params.emoji, options);
|
|
240
243
|
return jsonResult({
|
|
@@ -263,7 +266,7 @@ const signalMessageActions = {
|
|
|
263
266
|
replyToId: normalizedReplyToId
|
|
264
267
|
};
|
|
265
268
|
},
|
|
266
|
-
handleAction: async ({ action, params, cfg, accountId, toolContext }) => {
|
|
269
|
+
handleAction: async ({ action, params, cfg, accountId, toolContext, assertDirectAdapterHandoff }) => {
|
|
267
270
|
if (action === "send") throw new Error("Send should be handled by outbound, not actions handler.");
|
|
268
271
|
if (action === "react") {
|
|
269
272
|
const account = resolveSignalAccount({
|
|
@@ -305,7 +308,8 @@ const signalMessageActions = {
|
|
|
305
308
|
emoji,
|
|
306
309
|
remove: Boolean(remove),
|
|
307
310
|
targetAuthor,
|
|
308
|
-
targetAuthorUuid
|
|
311
|
+
targetAuthorUuid,
|
|
312
|
+
assertDirectAdapterHandoff
|
|
309
313
|
});
|
|
310
314
|
}
|
|
311
315
|
throw new Error(`Action ${action} not supported for ${providerId}.`);
|
|
@@ -404,6 +408,7 @@ function resolveSourceTimestamp(value) {
|
|
|
404
408
|
function mergeReplyContext(current, next) {
|
|
405
409
|
if (!current) return next;
|
|
406
410
|
if (current.kind === "ambiguous") return current;
|
|
411
|
+
if (next.kind === "ambiguous") return next;
|
|
407
412
|
if (current.author !== next.author) {
|
|
408
413
|
const { author: _author, body: _body, media: _media, ...identity } = next;
|
|
409
414
|
return {
|
|
@@ -449,7 +454,8 @@ async function registerSignalReplyContext(params) {
|
|
|
449
454
|
pruneMemoryReplyContexts(registeredAt);
|
|
450
455
|
return;
|
|
451
456
|
}
|
|
452
|
-
|
|
457
|
+
const usesComparisons = Boolean(store.observe && store.compareAndApply);
|
|
458
|
+
if (!store.update && !usesComparisons) {
|
|
453
459
|
const next = mergeReplyContext(memoryReplyContexts.get(key), record);
|
|
454
460
|
memoryReplyContexts.set(key, {
|
|
455
461
|
...next,
|
|
@@ -463,18 +469,46 @@ async function registerSignalReplyContext(params) {
|
|
|
463
469
|
}).warn("Signal persistent reply author state lacks atomic updates");
|
|
464
470
|
return;
|
|
465
471
|
}
|
|
472
|
+
const cachedBeforeUpdate = memoryReplyContexts.get(key);
|
|
473
|
+
const cacheReplyContext = (next) => {
|
|
474
|
+
const current = memoryReplyContexts.get(key);
|
|
475
|
+
const changedDuringUpdate = usesComparisons && current !== cachedBeforeUpdate;
|
|
476
|
+
if (!next) {
|
|
477
|
+
if (!changedDuringUpdate) memoryReplyContexts.delete(key);
|
|
478
|
+
return;
|
|
479
|
+
}
|
|
480
|
+
const concurrent = changedDuringUpdate && current && current.expiresAt > registeredAt ? current : void 0;
|
|
481
|
+
memoryReplyContexts.set(key, {
|
|
482
|
+
...concurrent ? mergeReplyContext(concurrent, next) : next,
|
|
483
|
+
expiresAt: Math.max(expiresAt, concurrent?.expiresAt ?? expiresAt)
|
|
484
|
+
});
|
|
485
|
+
};
|
|
466
486
|
let updateEvaluated = false;
|
|
467
487
|
let nextRecord;
|
|
468
488
|
try {
|
|
469
|
-
|
|
489
|
+
let updated = false;
|
|
490
|
+
if (store.observe && store.compareAndApply) {
|
|
491
|
+
let observation = await store.observe(key);
|
|
492
|
+
for (;;) {
|
|
493
|
+
updateEvaluated = true;
|
|
494
|
+
nextRecord = mergeReplyContext(observation.value, record);
|
|
495
|
+
const result = await store.compareAndApply(key, observation.comparison, {
|
|
496
|
+
operation: "update",
|
|
497
|
+
action: "set",
|
|
498
|
+
value: nextRecord
|
|
499
|
+
});
|
|
500
|
+
if (result.status !== "conflict") {
|
|
501
|
+
updated = result.status === "applied";
|
|
502
|
+
break;
|
|
503
|
+
}
|
|
504
|
+
observation = result.current;
|
|
505
|
+
}
|
|
506
|
+
} else if (store.update) updated = await store.update(key, (current) => {
|
|
470
507
|
updateEvaluated = true;
|
|
471
508
|
nextRecord = mergeReplyContext(current, record);
|
|
472
509
|
return nextRecord;
|
|
473
|
-
}) && nextRecord) memoryReplyContexts.set(key, {
|
|
474
|
-
...nextRecord,
|
|
475
|
-
expiresAt
|
|
476
510
|
});
|
|
477
|
-
|
|
511
|
+
cacheReplyContext(updated ? nextRecord : void 0);
|
|
478
512
|
pruneMemoryReplyContexts(registeredAt);
|
|
479
513
|
} catch (error) {
|
|
480
514
|
if (!updateEvaluated) try {
|
|
@@ -483,11 +517,7 @@ async function registerSignalReplyContext(params) {
|
|
|
483
517
|
nextRecord = void 0;
|
|
484
518
|
}
|
|
485
519
|
const next = nextRecord;
|
|
486
|
-
if (next)
|
|
487
|
-
...next,
|
|
488
|
-
expiresAt
|
|
489
|
-
});
|
|
490
|
-
else if (updateEvaluated) memoryReplyContexts.delete(key);
|
|
520
|
+
if (next || updateEvaluated) cacheReplyContext(next);
|
|
491
521
|
pruneMemoryReplyContexts(registeredAt);
|
|
492
522
|
getOptionalSignalRuntime()?.logging.getChildLogger({
|
|
493
523
|
plugin: "signal",
|
|
@@ -522,7 +552,7 @@ const DEFAULT_PROBE_TIMEOUT_MS = 1e4;
|
|
|
522
552
|
async function detectSignalTransport(params) {
|
|
523
553
|
const url = normalizeSignalTransportUrl(params.url);
|
|
524
554
|
const timeoutMs = params.timeoutMs ?? DEFAULT_PROBE_TIMEOUT_MS;
|
|
525
|
-
const probes = params.probeNative && params.probeContainer ? void 0 : await import("./transport-probes.runtime-
|
|
555
|
+
const probes = params.probeNative && params.probeContainer ? void 0 : await import("./transport-probes.runtime-WprAyBbL.mjs");
|
|
526
556
|
const probeNative = params.probeNative ?? probes?.nativeCheck;
|
|
527
557
|
const probeContainer = params.probeContainer ?? probes?.containerCheck;
|
|
528
558
|
if (!probeNative || !probeContainer) throw new Error("Signal transport probes are unavailable");
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as detectSignalTransport } from "./transport-detection-
|
|
1
|
+
import { t as detectSignalTransport } from "./transport-detection-CqyR2vG8.mjs";
|
|
2
2
|
export { detectSignalTransport };
|
|
@@ -1,35 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
//#region extensions/signal/src/transport-url.ts
|
|
3
|
-
function normalizeSignalTransportUrl(value) {
|
|
4
|
-
const trimmed = value.trim();
|
|
5
|
-
if (!trimmed) throw new Error("Signal transport URL is required");
|
|
6
|
-
if (/^https?:/i.test(trimmed) && !/^https?:\/\/[^/]/i.test(trimmed)) throw new Error("Signal transport URL has a malformed HTTP scheme");
|
|
7
|
-
const explicitScheme = /^([a-z][a-z0-9+.-]*):\/\//i.exec(trimmed)?.[1]?.toLowerCase();
|
|
8
|
-
if (explicitScheme && explicitScheme !== "http" && explicitScheme !== "https") throw new Error(`Signal transport URL unsupported protocol: ${explicitScheme}:`);
|
|
9
|
-
const parsed = new URL(/^https?:\/\//i.test(trimmed) ? trimmed : `http://${trimmed}`);
|
|
10
|
-
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") throw new Error(`Signal transport URL unsupported protocol: ${parsed.protocol}`);
|
|
11
|
-
if (parsed.username || parsed.password) throw new Error("Signal transport URL must not include credentials");
|
|
12
|
-
const pathname = parsed.pathname === "/" ? "" : parsed.pathname.replace(/\/+$/, "");
|
|
13
|
-
return `${parsed.protocol}//${parsed.host}${pathname}`;
|
|
14
|
-
}
|
|
15
|
-
function normalizeSignalTransportHost(host) {
|
|
16
|
-
const trimmedHost = host.trim();
|
|
17
|
-
const hasOpeningBracket = trimmedHost.startsWith("[");
|
|
18
|
-
if (hasOpeningBracket !== trimmedHost.endsWith("]")) throw new Error("Signal transport host has mismatched IPv6 brackets");
|
|
19
|
-
const normalizedHost = hasOpeningBracket ? trimmedHost.slice(1, -1) : trimmedHost;
|
|
20
|
-
if (!normalizedHost || /[\s/\\?#@]/.test(normalizedHost)) throw new Error("Signal transport host must be a hostname or IP address");
|
|
21
|
-
if (isIP(normalizedHost) === 0) {
|
|
22
|
-
const hostname = normalizedHost.endsWith(".") ? normalizedHost.slice(0, -1) : normalizedHost;
|
|
23
|
-
const labels = hostname.split(".");
|
|
24
|
-
if (hostname.length > 253 || labels.some((label) => !label || label.length > 63 || !/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i.test(label))) throw new Error("Signal transport host must be a hostname or IP address");
|
|
25
|
-
}
|
|
26
|
-
return normalizedHost;
|
|
27
|
-
}
|
|
28
|
-
function buildSignalTransportHttpUrl(host, port) {
|
|
29
|
-
const normalizedHost = normalizeSignalTransportHost(host);
|
|
30
|
-
return normalizeSignalTransportUrl(`http://${normalizedHost.includes(":") ? `[${normalizedHost}]` : normalizedHost}:${port}`);
|
|
31
|
-
}
|
|
32
|
-
//#endregion
|
|
1
|
+
import { a as normalizeSignalTransportUrl } from "./transport-url-CAC0JcuI.mjs";
|
|
33
2
|
//#region extensions/signal/src/transport-policy.ts
|
|
34
3
|
const DEFAULT_SIGNAL_MANAGED_NATIVE_PORT = 8080;
|
|
35
4
|
const DEFAULT_SIGNAL_MANAGED_NATIVE_HOST = "127.0.0.1";
|
|
@@ -96,4 +65,4 @@ function assignSignalManagedNativePort(transport, httpPort) {
|
|
|
96
65
|
};
|
|
97
66
|
}
|
|
98
67
|
//#endregion
|
|
99
|
-
export { isSignalManagedNativeConnectionUrlForBind as a,
|
|
68
|
+
export { isSignalManagedNativeConnectionUrlForBind as a, assignSignalManagedNativePort as i, DEFAULT_SIGNAL_MANAGED_NATIVE_PORT as n, isValidSignalManagedNativePort as o, allocateSignalManagedNativePort as r, resolveLocalSignalTransportPort as s, DEFAULT_SIGNAL_MANAGED_NATIVE_HOST as t };
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { pathToFileURL } from "node:url";
|
|
2
|
+
import { normalizeAccountId, resolveAccountKey } from "openclaw/plugin-sdk/account-resolution";
|
|
3
|
+
import { isIP } from "node:net";
|
|
4
|
+
import path from "node:path";
|
|
5
|
+
//#region extensions/signal/src/account-selection.ts
|
|
6
|
+
function resolveSignalAccountKey(accounts, accountId) {
|
|
7
|
+
return resolveAccountKey(accounts, normalizeAccountId(accountId), void 0, void 0, { channelId: "signal" });
|
|
8
|
+
}
|
|
9
|
+
function resolveSignalAccountEntry(accounts, accountId) {
|
|
10
|
+
const key = resolveSignalAccountKey(accounts, accountId);
|
|
11
|
+
return key === void 0 ? void 0 : accounts?.[key];
|
|
12
|
+
}
|
|
13
|
+
//#endregion
|
|
14
|
+
//#region extensions/signal/src/transport-url.ts
|
|
15
|
+
function normalizeSignalTransportUrl(value) {
|
|
16
|
+
const trimmed = value.trim();
|
|
17
|
+
if (!trimmed) throw new Error("Signal transport URL is required");
|
|
18
|
+
if (/^https?:/i.test(trimmed) && !/^https?:\/\/[^/]/i.test(trimmed)) throw new Error("Signal transport URL has a malformed HTTP scheme");
|
|
19
|
+
const explicitScheme = /^([a-z][a-z0-9+.-]*):\/\//i.exec(trimmed)?.[1]?.toLowerCase();
|
|
20
|
+
if (explicitScheme && explicitScheme !== "http" && explicitScheme !== "https") throw new Error(`Signal transport URL unsupported protocol: ${explicitScheme}:`);
|
|
21
|
+
const parsed = new URL(/^https?:\/\//i.test(trimmed) ? trimmed : `http://${trimmed}`);
|
|
22
|
+
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") throw new Error(`Signal transport URL unsupported protocol: ${parsed.protocol}`);
|
|
23
|
+
if (parsed.username || parsed.password) throw new Error("Signal transport URL must not include credentials");
|
|
24
|
+
const pathname = parsed.pathname === "/" ? "" : parsed.pathname.replace(/\/+$/, "");
|
|
25
|
+
return `${parsed.protocol}//${parsed.host}${pathname}`;
|
|
26
|
+
}
|
|
27
|
+
function normalizeSignalTransportHost(host) {
|
|
28
|
+
const trimmedHost = host.trim();
|
|
29
|
+
const hasOpeningBracket = trimmedHost.startsWith("[");
|
|
30
|
+
if (hasOpeningBracket !== trimmedHost.endsWith("]")) throw new Error("Signal transport host has mismatched IPv6 brackets");
|
|
31
|
+
const normalizedHost = hasOpeningBracket ? trimmedHost.slice(1, -1) : trimmedHost;
|
|
32
|
+
if (!normalizedHost || /[\s/\\?#@]/.test(normalizedHost)) throw new Error("Signal transport host must be a hostname or IP address");
|
|
33
|
+
if (isIP(normalizedHost) === 0) {
|
|
34
|
+
const hostname = normalizedHost.endsWith(".") ? normalizedHost.slice(0, -1) : normalizedHost;
|
|
35
|
+
const labels = hostname.split(".");
|
|
36
|
+
if (hostname.length > 253 || labels.some((label) => !label || label.length > 63 || !/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i.test(label))) throw new Error("Signal transport host must be a hostname or IP address");
|
|
37
|
+
}
|
|
38
|
+
return normalizedHost;
|
|
39
|
+
}
|
|
40
|
+
function buildSignalTransportHttpUrl(host, port) {
|
|
41
|
+
const normalizedHost = normalizeSignalTransportHost(host);
|
|
42
|
+
return normalizeSignalTransportUrl(`http://${normalizedHost.includes(":") ? `[${normalizedHost}]` : normalizedHost}:${port}`);
|
|
43
|
+
}
|
|
44
|
+
/** Validate the opt-in shape without filesystem side effects during config resolution. */
|
|
45
|
+
function assertSignalSocketTransport(transport) {
|
|
46
|
+
if (transport.socketPath === void 0) return;
|
|
47
|
+
if (typeof transport.socketPath !== "string" || !/^\/(?!\/)[^\0]+$/.test(transport.socketPath) || transport.socketPath.endsWith("/") || path.posix.normalize(transport.socketPath) !== transport.socketPath || Buffer.byteLength(transport.socketPath, "utf8") > 103) throw new Error("Signal transport.socketPath must be a normalized absolute POSIX socket file path of at most 103 UTF-8 bytes.");
|
|
48
|
+
if (transport.url !== void 0 || transport.httpHost !== void 0 || transport.httpPort !== void 0) throw new Error("Signal transport.socketPath cannot be combined with url, httpHost, or httpPort.");
|
|
49
|
+
if (transport.receiveMode === "on-start") throw new Error("Signal socket transport requires receiveMode manual (or omitted).");
|
|
50
|
+
}
|
|
51
|
+
function buildSignalSocketUrl(socketPath) {
|
|
52
|
+
return `unix://${pathToFileURL(socketPath).pathname}`;
|
|
53
|
+
}
|
|
54
|
+
//#endregion
|
|
55
|
+
export { normalizeSignalTransportUrl as a, normalizeSignalTransportHost as i, buildSignalSocketUrl as n, resolveSignalAccountEntry as o, buildSignalTransportHttpUrl as r, resolveSignalAccountKey as s, assertSignalSocketTransport as t };
|
package/dist/api.js
CHANGED
|
@@ -1,17 +1,12 @@
|
|
|
1
|
-
import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId, t as listEnabledSignalAccounts } from "
|
|
2
|
-
import { n as normalizeSignalMessagingTarget, t as looksLikeSignalTargetId } from "
|
|
3
|
-
import { a as normalizeSignalAllowRecipient, c as resolveSignalSender, i as isSignalSenderAllowed, l as looksLikeUuid, n as formatSignalSenderDisplay, o as resolveSignalPeerId, r as formatSignalSenderId, s as resolveSignalRecipient, t as formatSignalPairingIdLine } from "
|
|
4
|
-
import { c as resolveSignalReactionLevel, d as markdownToSignalTextChunks, s as signalMessageActions, t as detectSignalTransport, u as markdownToSignalText } from "
|
|
5
|
-
import { n as sendReactionSignal, t as removeReactionSignal } from "
|
|
6
|
-
import { a as normalizeSignalAccountInput, d as probeSignalTransport, f as writeSignalAccountTransport,
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { t as
|
|
11
|
-
|
|
12
|
-
const signalSetupPlugin = { ...createSignalPluginBase({
|
|
13
|
-
setupWizard: signalSetupWizard,
|
|
14
|
-
setupContract: signalSetupContract
|
|
15
|
-
}) };
|
|
16
|
-
//#endregion
|
|
1
|
+
import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId, t as listEnabledSignalAccounts } from "./.setup/accounts-BV6tDOTc.mjs";
|
|
2
|
+
import { n as normalizeSignalMessagingTarget, t as looksLikeSignalTargetId } from "./.setup/normalize-l_b99hap.mjs";
|
|
3
|
+
import { a as normalizeSignalAllowRecipient, c as resolveSignalSender, i as isSignalSenderAllowed, l as looksLikeUuid, n as formatSignalSenderDisplay, o as resolveSignalPeerId, r as formatSignalSenderId, s as resolveSignalRecipient, t as formatSignalPairingIdLine } from "./.setup/identity-YXPmgFMu.mjs";
|
|
4
|
+
import { c as resolveSignalReactionLevel, d as markdownToSignalTextChunks, s as signalMessageActions, t as detectSignalTransport, u as markdownToSignalText } from "./.setup/transport-detection-CqyR2vG8.mjs";
|
|
5
|
+
import { n as sendReactionSignal, t as removeReactionSignal } from "./.setup/reaction-runtime-api-BnQGHcrB.mjs";
|
|
6
|
+
import { a as normalizeSignalAccountInput, d as probeSignalTransport, f as writeSignalAccountTransport, p as resolveSignalOutboundTarget, t as signalPlugin, u as prepareSignalManagedNativeTransport } from "./.setup/channel-gMpZmqLx.mjs";
|
|
7
|
+
import { t as signalSetupPlugin } from "./.setup/api-DbdeJVQ8.mjs";
|
|
8
|
+
import { r as installSignalCli } from "./.setup/install-signal-cli-bXeTrTyL.mjs";
|
|
9
|
+
import { t as monitorSignalProvider } from "./.setup/monitor-DAMQw1pZ.mjs";
|
|
10
|
+
import { n as sendReadReceiptSignal, r as sendTypingSignal, t as sendMessageSignal } from "./.setup/send-CcetN4rk.mjs";
|
|
11
|
+
import { t as probeSignal } from "./.setup/probe-IKCS9D-z.mjs";
|
|
17
12
|
export { detectSignalTransport, formatSignalPairingIdLine, formatSignalSenderDisplay, formatSignalSenderId, installSignalCli, isSignalSenderAllowed, listEnabledSignalAccounts, listSignalAccountIds, looksLikeSignalTargetId, looksLikeUuid, markdownToSignalText, markdownToSignalTextChunks, monitorSignalProvider, normalizeSignalAccountInput, normalizeSignalAllowRecipient, normalizeSignalMessagingTarget, prepareSignalManagedNativeTransport, probeSignal, probeSignalTransport, removeReactionSignal, resolveDefaultSignalAccountId, resolveSignalAccount, resolveSignalOutboundTarget, resolveSignalPeerId, resolveSignalReactionLevel, resolveSignalRecipient, resolveSignalSender, sendMessageSignal, sendReactionSignal, sendReadReceiptSignal, sendTypingSignal, signalMessageActions, signalPlugin, signalSetupPlugin, writeSignalAccountTransport };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as SignalChannelConfigSchema } from "
|
|
1
|
+
import { t as SignalChannelConfigSchema } from "./.setup/config-schema-aQwwMGUj.mjs";
|
|
2
2
|
export { SignalChannelConfigSchema };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as signalPlugin } from "
|
|
1
|
+
import { t as signalPlugin } from "./.setup/channel-gMpZmqLx.mjs";
|
|
2
2
|
export { signalPlugin };
|
package/dist/contract-api.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as normalizeSignalMessagingTarget, r as normalizeSignalReactionRecipient, t as looksLikeSignalTargetId } from "
|
|
2
|
-
import { i as isSignalSenderAllowed } from "
|
|
3
|
-
import { a as
|
|
4
|
-
export {
|
|
1
|
+
import { n as normalizeSignalMessagingTarget, r as normalizeSignalReactionRecipient, t as looksLikeSignalTargetId } from "./.setup/normalize-l_b99hap.mjs";
|
|
2
|
+
import { i as isSignalSenderAllowed } from "./.setup/identity-YXPmgFMu.mjs";
|
|
3
|
+
import { a as looksLikeArchive, i as installSignalCliFromRelease, n as extractSignalCliArchive, o as pickAsset, r as installSignalCli, t as downloadToFile } from "./.setup/install-signal-cli-bXeTrTyL.mjs";
|
|
4
|
+
export { downloadToFile, extractSignalCliArchive, installSignalCli, installSignalCliFromRelease, isSignalSenderAllowed, looksLikeArchive, looksLikeSignalTargetId, normalizeSignalMessagingTarget, normalizeSignalReactionRecipient, pickAsset };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "
|
|
1
|
+
import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "./.setup/doctor-contract-api-Rbq_sRTI.mjs";
|
|
2
2
|
export { legacyConfigRules, normalizeCompatibilityConfig };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as sendReactionSignal, t as removeReactionSignal } from "
|
|
1
|
+
import { n as sendReactionSignal, t as removeReactionSignal } from "./.setup/reaction-runtime-api-BnQGHcrB.mjs";
|
|
2
2
|
export { removeReactionSignal, sendReactionSignal };
|
package/dist/runtime-api.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId, t as listEnabledSignalAccounts } from "
|
|
2
|
-
import { n as normalizeSignalMessagingTarget, t as looksLikeSignalTargetId } from "
|
|
3
|
-
import { a as setSignalRuntime, c as resolveSignalReactionLevel, s as signalMessageActions } from "
|
|
4
|
-
import { n as sendReactionSignal, t as removeReactionSignal } from "
|
|
5
|
-
import { n as SignalConfigSchema } from "
|
|
6
|
-
import {
|
|
7
|
-
import { t as monitorSignalProvider } from "
|
|
8
|
-
import { t as sendMessageSignal } from "
|
|
9
|
-
import { t as probeSignal } from "
|
|
1
|
+
import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId, t as listEnabledSignalAccounts } from "./.setup/accounts-BV6tDOTc.mjs";
|
|
2
|
+
import { n as normalizeSignalMessagingTarget, t as looksLikeSignalTargetId } from "./.setup/normalize-l_b99hap.mjs";
|
|
3
|
+
import { a as setSignalRuntime, c as resolveSignalReactionLevel, s as signalMessageActions } from "./.setup/transport-detection-CqyR2vG8.mjs";
|
|
4
|
+
import { n as sendReactionSignal, t as removeReactionSignal } from "./.setup/reaction-runtime-api-BnQGHcrB.mjs";
|
|
5
|
+
import { n as SignalConfigSchema } from "./.setup/config-schema-aQwwMGUj.mjs";
|
|
6
|
+
import { r as installSignalCli } from "./.setup/install-signal-cli-bXeTrTyL.mjs";
|
|
7
|
+
import { t as monitorSignalProvider } from "./.setup/monitor-DAMQw1pZ.mjs";
|
|
8
|
+
import { t as sendMessageSignal } from "./.setup/send-CcetN4rk.mjs";
|
|
9
|
+
import { t as probeSignal } from "./.setup/probe-IKCS9D-z.mjs";
|
|
10
10
|
import { resolveChannelMediaMaxBytes } from "openclaw/plugin-sdk/account-helpers";
|
|
11
11
|
import { PAIRING_APPROVED_MESSAGE } from "openclaw/plugin-sdk/channel-status";
|
|
12
12
|
import { buildBaseAccountStatusSnapshot, buildBaseChannelStatusSummary, collectStatusIssuesFromLastError, createDefaultChannelRuntimeState } from "openclaw/plugin-sdk/status-helpers";
|
package/dist/setup-entry.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { defineBundledChannelSetupEntry } from "openclaw/plugin-sdk/channel-entry-contract";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
2
3
|
//#region extensions/signal/setup-entry.ts
|
|
3
4
|
var setup_entry_default = defineBundledChannelSetupEntry({
|
|
4
5
|
importMetaUrl: import.meta.url,
|
|
5
6
|
plugin: {
|
|
6
|
-
specifier: "
|
|
7
|
+
specifier: fileURLToPath(new URL(".setup/api-Cu01dJRP.mjs", import.meta.url).href),
|
|
7
8
|
exportName: "signalSetupPlugin"
|
|
8
9
|
}
|
|
9
10
|
});
|
|
@@ -113,6 +113,33 @@ await schema.parseAsync("hello");
|
|
|
113
113
|
// => "hello"
|
|
114
114
|
```
|
|
115
115
|
|
|
116
|
+
### AOT compilation
|
|
117
|
+
|
|
118
|
+
For hot validation paths, `z.compile(schema)` returns a schema clone with an ahead-of-time compiled fast path. Valid inputs take the compiled path; invalid inputs fall back to the regular parser so error reporting stays identical.
|
|
119
|
+
|
|
120
|
+
Across a 55-schema benchmark the median speedup is **2.4x**, and it scales with how much work the schema does per parse: a large array of objects is ~9x, a 20-key object ~9x, a nested object ~4.5x, while a bare `z.string()` gains nothing — compilation removes per-node dispatch and allocation, and a single `typeof` has none to remove.
|
|
121
|
+
|
|
122
|
+
```ts
|
|
123
|
+
const CompiledPlayer = z.compile(Player);
|
|
124
|
+
|
|
125
|
+
CompiledPlayer.parse({ username: "billie", xp: 100 });
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
To enable compilation globally for schemas constructed after import:
|
|
129
|
+
|
|
130
|
+
```ts
|
|
131
|
+
import "zod/compile"; // place before modules that define schemas
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Things to know:
|
|
135
|
+
|
|
136
|
+
- Compilation uses `new Function`. Global mode is automatically disabled when `z.config({ jitless: true })` is set (e.g. CSP environments); calling `z.compile()` directly is an explicit opt-in.
|
|
137
|
+
- Schemas with async refinements or transforms can't be compiled, and neither can a few other constructs. That is not an error: `z.compile()` hands the schema back unchanged and it keeps using the regular parser, exactly as global mode leaves it. Pass `{ strict: true }` to throw `ZodCompileAsyncError` / `ZodCompileUnsupportedError` instead.
|
|
138
|
+
- On invalid input, refinements and transforms may run twice (fast path, then fallback).
|
|
139
|
+
- Deriving a new schema from a compiled one (`.refine()`, `.extend()`, etc.) returns an uncompiled schema — compile the final schema.
|
|
140
|
+
|
|
141
|
+
See [`compile` docs](https://zod.dev/compile) for details.
|
|
142
|
+
|
|
116
143
|
### Handling errors
|
|
117
144
|
|
|
118
145
|
When validation fails, the `.parse()` method will throw a `ZodError` instance with granular information about the validation issues.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Side-effect-only: installs the post-processor on `globalConfig`. Listed in `package.json`'s `sideEffects`, and nothing else references it, so apps that never import it drop the compiler.
|
|
3
|
+
//
|
|
4
|
+
// Usage:
|
|
5
|
+
//
|
|
6
|
+
// import "zod/compile";
|
|
7
|
+
// import * as z from "zod";
|
|
8
|
+
// // every schema constructed below this is compiled on first parse
|
|
9
|
+
//
|
|
10
|
+
// Module evaluation order matters: schemas constructed in modules that evaluate before this import will not be compiled. Place this import in the app entry point, before any module that constructs schemas at top level.
|
|
11
|
+
//
|
|
12
|
+
// Failure handling: if the compiler refuses a schema (async refinement, unsupported feature, etc.) the shim permanently restores the runtime `_zod.run` for that schema. The schema continues to work via the regular runtime parser — no observable difference to the caller.
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
const compile_js_1 = require("./v4/core/compile.cjs");
|
|
38
|
+
const core = __importStar(require("./v4/core/index.cjs"));
|
|
39
|
+
let compiling = false;
|
|
40
|
+
core.globalConfig.postProcessor = (inst) => {
|
|
41
|
+
if (compiling)
|
|
42
|
+
return;
|
|
43
|
+
const originalRun = inst._zod?.run;
|
|
44
|
+
if (typeof originalRun !== "function")
|
|
45
|
+
return;
|
|
46
|
+
const shim = (payload, ctx) => {
|
|
47
|
+
// Bypass the fast path for any non-forward / non-sync / check-skipping call. The runtime owns those contracts.
|
|
48
|
+
if (ctx?.async || ctx?.direction === "backward" || ctx?.skipChecks) {
|
|
49
|
+
return originalRun(payload, ctx);
|
|
50
|
+
}
|
|
51
|
+
compiling = true;
|
|
52
|
+
try {
|
|
53
|
+
// Respect the jitless config: it exists precisely so CSP/no-eval environments never reach `new Function`. Global mode must not bypass it (explicit z.compile calls remain an explicit opt-in).
|
|
54
|
+
if (core.globalConfig.jitless) {
|
|
55
|
+
inst._zod.run = originalRun;
|
|
56
|
+
return originalRun(payload, ctx);
|
|
57
|
+
}
|
|
58
|
+
// Strict: the shim owns its own fallback below, and a non-strict compile would hand back `inst` — whose run is this shim — and reinstall it on itself.
|
|
59
|
+
const compiled = (0, compile_js_1.compile)(inst, { strict: true });
|
|
60
|
+
// Only the run wrapper. Copying the compiled parse/safeParse closures would make their fallback re-enter this instance and run user callbacks a third time.
|
|
61
|
+
inst._zod.run = compiled._zod.run;
|
|
62
|
+
inst._zod.bag.fallbackRun = compiled._zod.bag.fallbackRun;
|
|
63
|
+
inst._zod.bag.validator = compiled._zod.bag.validator;
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
// Permanent fallback for unsupported schemas.
|
|
67
|
+
inst._zod.run = originalRun;
|
|
68
|
+
}
|
|
69
|
+
finally {
|
|
70
|
+
compiling = false;
|
|
71
|
+
}
|
|
72
|
+
return inst._zod.run(payload, ctx);
|
|
73
|
+
};
|
|
74
|
+
// Expose the pre-shim runtime so `compile()` invoked elsewhere can unwrap past the shim and capture the source-of-truth runtime. Without this, a user calling `z.compile(s)` after global mode is enabled would capture the shim itself, which would feed the wrapper into itself on fallback.
|
|
75
|
+
shim.__originalRun = originalRun;
|
|
76
|
+
inst._zod.run = shim;
|
|
77
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// Side-effect-only: installs the post-processor on `globalConfig`. Listed in `package.json`'s `sideEffects`, and nothing else references it, so apps that never import it drop the compiler.
|
|
2
|
+
//
|
|
3
|
+
// Usage:
|
|
4
|
+
//
|
|
5
|
+
// import "zod/compile";
|
|
6
|
+
// import * as z from "zod";
|
|
7
|
+
// // every schema constructed below this is compiled on first parse
|
|
8
|
+
//
|
|
9
|
+
// Module evaluation order matters: schemas constructed in modules that evaluate before this import will not be compiled. Place this import in the app entry point, before any module that constructs schemas at top level.
|
|
10
|
+
//
|
|
11
|
+
// Failure handling: if the compiler refuses a schema (async refinement, unsupported feature, etc.) the shim permanently restores the runtime `_zod.run` for that schema. The schema continues to work via the regular runtime parser — no observable difference to the caller.
|
|
12
|
+
import { compile } from "./v4/core/compile.js";
|
|
13
|
+
import * as core from "./v4/core/index.js";
|
|
14
|
+
let compiling = false;
|
|
15
|
+
core.globalConfig.postProcessor = (inst) => {
|
|
16
|
+
if (compiling)
|
|
17
|
+
return;
|
|
18
|
+
const originalRun = inst._zod?.run;
|
|
19
|
+
if (typeof originalRun !== "function")
|
|
20
|
+
return;
|
|
21
|
+
const shim = (payload, ctx) => {
|
|
22
|
+
// Bypass the fast path for any non-forward / non-sync / check-skipping call. The runtime owns those contracts.
|
|
23
|
+
if (ctx?.async || ctx?.direction === "backward" || ctx?.skipChecks) {
|
|
24
|
+
return originalRun(payload, ctx);
|
|
25
|
+
}
|
|
26
|
+
compiling = true;
|
|
27
|
+
try {
|
|
28
|
+
// Respect the jitless config: it exists precisely so CSP/no-eval environments never reach `new Function`. Global mode must not bypass it (explicit z.compile calls remain an explicit opt-in).
|
|
29
|
+
if (core.globalConfig.jitless) {
|
|
30
|
+
inst._zod.run = originalRun;
|
|
31
|
+
return originalRun(payload, ctx);
|
|
32
|
+
}
|
|
33
|
+
// Strict: the shim owns its own fallback below, and a non-strict compile would hand back `inst` — whose run is this shim — and reinstall it on itself.
|
|
34
|
+
const compiled = compile(inst, { strict: true });
|
|
35
|
+
// Only the run wrapper. Copying the compiled parse/safeParse closures would make their fallback re-enter this instance and run user callbacks a third time.
|
|
36
|
+
inst._zod.run = compiled._zod.run;
|
|
37
|
+
inst._zod.bag.fallbackRun = compiled._zod.bag.fallbackRun;
|
|
38
|
+
inst._zod.bag.validator = compiled._zod.bag.validator;
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
// Permanent fallback for unsupported schemas.
|
|
42
|
+
inst._zod.run = originalRun;
|
|
43
|
+
}
|
|
44
|
+
finally {
|
|
45
|
+
compiling = false;
|
|
46
|
+
}
|
|
47
|
+
return inst._zod.run(payload, ctx);
|
|
48
|
+
};
|
|
49
|
+
// Expose the pre-shim runtime so `compile()` invoked elsewhere can unwrap past the shim and capture the source-of-truth runtime. Without this, a user calling `z.compile(s)` after global mode is enabled would capture the shim itself, which would feed the wrapper into itself on fallback.
|
|
50
|
+
shim.__originalRun = originalRun;
|
|
51
|
+
inst._zod.run = shim;
|
|
52
|
+
};
|
|
@@ -26,8 +26,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
26
26
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.z = void 0;
|
|
29
|
+
exports.default = exports.z = void 0;
|
|
30
30
|
const z = __importStar(require("./v4/classic/external.cjs"));
|
|
31
31
|
exports.z = z;
|
|
32
|
-
__exportStar(require("./v4/classic/external.cjs"), exports);
|
|
33
32
|
exports.default = z;
|
|
33
|
+
__exportStar(require("./v4/classic/external.cjs"), exports);
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import * as z from "./v4/classic/external.js";
|
|
2
2
|
export * from "./v4/classic/external.js";
|
|
3
|
-
export
|
|
4
|
-
export
|
|
3
|
+
// Aliasing the binding, instead of `export default z`, keeps the default export a
|
|
4
|
+
// re-export of `z` rather than a fresh namespace value. Rollup and Webpack can then
|
|
5
|
+
// shake `import z from "zod"` as they already shake `import { z } from "zod"` — without
|
|
6
|
+
// this they pull in every locale. See #6050.
|
|
7
|
+
export { z, z as default };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zod",
|
|
3
|
-
"version": "4.4
|
|
3
|
+
"version": "4.5.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Colin McDonnell <zod@colinhacks.com>",
|
|
@@ -10,7 +10,11 @@
|
|
|
10
10
|
"llmsFull": "https://zod.dev/llms-full.txt",
|
|
11
11
|
"mcpServer": "https://mcp.inkeep.com/zod/mcp",
|
|
12
12
|
"funding": "https://github.com/sponsors/colinhacks",
|
|
13
|
-
"sideEffects":
|
|
13
|
+
"sideEffects": [
|
|
14
|
+
"./compile.js",
|
|
15
|
+
"./compile.cjs",
|
|
16
|
+
"./src/compile.ts"
|
|
17
|
+
],
|
|
14
18
|
"files": [
|
|
15
19
|
"src",
|
|
16
20
|
"**/*.js",
|
|
@@ -36,6 +40,7 @@
|
|
|
36
40
|
"./package.json": "./package.json",
|
|
37
41
|
".": "./src/index.ts",
|
|
38
42
|
"./mini": "./src/mini/index.ts",
|
|
43
|
+
"./compile": "./src/compile.ts",
|
|
39
44
|
"./locales": "./src/locales/index.ts",
|
|
40
45
|
"./v3": "./src/v3/index.ts",
|
|
41
46
|
"./v4": "./src/v4/index.ts",
|
|
@@ -63,6 +68,12 @@
|
|
|
63
68
|
"import": "./mini/index.js",
|
|
64
69
|
"require": "./mini/index.cjs"
|
|
65
70
|
},
|
|
71
|
+
"./compile": {
|
|
72
|
+
"@zod/source": "./src/compile.ts",
|
|
73
|
+
"types": "./compile.d.cts",
|
|
74
|
+
"import": "./compile.js",
|
|
75
|
+
"require": "./compile.cjs"
|
|
76
|
+
},
|
|
66
77
|
"./locales": {
|
|
67
78
|
"@zod/source": "./src/locales/index.ts",
|
|
68
79
|
"types": "./locales/index.d.cts",
|