@farm.js/core 0.1.0-beta.0
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/LICENSE +22 -0
- package/README.md +11 -0
- package/dist/after.cjs +227 -0
- package/dist/after.cjs.map +1 -0
- package/dist/after.d.mts +25 -0
- package/dist/after.d.ts +25 -0
- package/dist/after.mjs +14 -0
- package/dist/after.mjs.map +1 -0
- package/dist/agent-runtime.cjs +2379 -0
- package/dist/agent-runtime.cjs.map +1 -0
- package/dist/agent-runtime.d.mts +93 -0
- package/dist/agent-runtime.d.ts +93 -0
- package/dist/agent-runtime.mjs +479 -0
- package/dist/agent-runtime.mjs.map +1 -0
- package/dist/api/route-manager.cjs +1196 -0
- package/dist/api/route-manager.cjs.map +1 -0
- package/dist/api/route-manager.d.mts +64 -0
- package/dist/api/route-manager.d.ts +64 -0
- package/dist/api/route-manager.mjs +34 -0
- package/dist/api/route-manager.mjs.map +1 -0
- package/dist/api/runtime.cjs +272 -0
- package/dist/api/runtime.cjs.map +1 -0
- package/dist/api/runtime.d.mts +16 -0
- package/dist/api/runtime.d.ts +16 -0
- package/dist/api/runtime.mjs +16 -0
- package/dist/api/runtime.mjs.map +1 -0
- package/dist/api.cjs +3199 -0
- package/dist/api.cjs.map +1 -0
- package/dist/api.d.mts +190 -0
- package/dist/api.d.ts +190 -0
- package/dist/api.mjs +63 -0
- package/dist/api.mjs.map +1 -0
- package/dist/app-BiX4qb-d.d.mts +265 -0
- package/dist/app-CFRNJXP1.d.ts +265 -0
- package/dist/app-markdown.cjs +220 -0
- package/dist/app-markdown.cjs.map +1 -0
- package/dist/app-markdown.d.mts +21 -0
- package/dist/app-markdown.d.ts +21 -0
- package/dist/app-markdown.mjs +26 -0
- package/dist/app-markdown.mjs.map +1 -0
- package/dist/cache.cjs +543 -0
- package/dist/cache.cjs.map +1 -0
- package/dist/cache.d.mts +78 -0
- package/dist/cache.d.ts +78 -0
- package/dist/cache.mjs +38 -0
- package/dist/cache.mjs.map +1 -0
- package/dist/chunk-25D7G34K.mjs +142 -0
- package/dist/chunk-25D7G34K.mjs.map +1 -0
- package/dist/chunk-3QJO55ZF.mjs +3548 -0
- package/dist/chunk-3QJO55ZF.mjs.map +1 -0
- package/dist/chunk-3XNTL3FQ.mjs +452 -0
- package/dist/chunk-3XNTL3FQ.mjs.map +1 -0
- package/dist/chunk-44ZCFSKE.mjs +84 -0
- package/dist/chunk-44ZCFSKE.mjs.map +1 -0
- package/dist/chunk-4PTK6KT4.mjs +364 -0
- package/dist/chunk-4PTK6KT4.mjs.map +1 -0
- package/dist/chunk-4S3ORGFA.mjs +44 -0
- package/dist/chunk-4S3ORGFA.mjs.map +1 -0
- package/dist/chunk-5BY76U2M.mjs +1 -0
- package/dist/chunk-5BY76U2M.mjs.map +1 -0
- package/dist/chunk-5ZGPRGWV.mjs +136 -0
- package/dist/chunk-5ZGPRGWV.mjs.map +1 -0
- package/dist/chunk-6XDUHOEM.mjs +157 -0
- package/dist/chunk-6XDUHOEM.mjs.map +1 -0
- package/dist/chunk-74YTBPTY.mjs +450 -0
- package/dist/chunk-74YTBPTY.mjs.map +1 -0
- package/dist/chunk-7HO6AEOP.mjs +74 -0
- package/dist/chunk-7HO6AEOP.mjs.map +1 -0
- package/dist/chunk-7MABZJIM.mjs +29 -0
- package/dist/chunk-7MABZJIM.mjs.map +1 -0
- package/dist/chunk-7ZY5AIJO.mjs +161 -0
- package/dist/chunk-7ZY5AIJO.mjs.map +1 -0
- package/dist/chunk-AGS7UJ52.mjs +446 -0
- package/dist/chunk-AGS7UJ52.mjs.map +1 -0
- package/dist/chunk-AZ7YUVNR.mjs +65 -0
- package/dist/chunk-AZ7YUVNR.mjs.map +1 -0
- package/dist/chunk-B232I2GP.mjs +163 -0
- package/dist/chunk-B232I2GP.mjs.map +1 -0
- package/dist/chunk-B6N4ZB2H.mjs +718 -0
- package/dist/chunk-B6N4ZB2H.mjs.map +1 -0
- package/dist/chunk-BHG3LVHH.mjs +176 -0
- package/dist/chunk-BHG3LVHH.mjs.map +1 -0
- package/dist/chunk-C3DLZMBU.mjs +597 -0
- package/dist/chunk-C3DLZMBU.mjs.map +1 -0
- package/dist/chunk-CGILA3WO.mjs +14 -0
- package/dist/chunk-CGILA3WO.mjs.map +1 -0
- package/dist/chunk-CHFHNEMO.mjs +7088 -0
- package/dist/chunk-CHFHNEMO.mjs.map +1 -0
- package/dist/chunk-E2MPIBRE.mjs +149 -0
- package/dist/chunk-E2MPIBRE.mjs.map +1 -0
- package/dist/chunk-E6EPN5BT.mjs +203 -0
- package/dist/chunk-E6EPN5BT.mjs.map +1 -0
- package/dist/chunk-EVGBEZDF.mjs +215 -0
- package/dist/chunk-EVGBEZDF.mjs.map +1 -0
- package/dist/chunk-FQYDHKKU.mjs +128 -0
- package/dist/chunk-FQYDHKKU.mjs.map +1 -0
- package/dist/chunk-G3B5BRDY.mjs +5763 -0
- package/dist/chunk-G3B5BRDY.mjs.map +1 -0
- package/dist/chunk-GN72QAIH.mjs +146 -0
- package/dist/chunk-GN72QAIH.mjs.map +1 -0
- package/dist/chunk-GS6K5OCM.mjs +407 -0
- package/dist/chunk-GS6K5OCM.mjs.map +1 -0
- package/dist/chunk-GY2STC2S.mjs +180 -0
- package/dist/chunk-GY2STC2S.mjs.map +1 -0
- package/dist/chunk-GZP5W4K3.mjs +158 -0
- package/dist/chunk-GZP5W4K3.mjs.map +1 -0
- package/dist/chunk-H2FA2SBS.mjs +51 -0
- package/dist/chunk-H2FA2SBS.mjs.map +1 -0
- package/dist/chunk-HXP3ZSPC.mjs +211 -0
- package/dist/chunk-HXP3ZSPC.mjs.map +1 -0
- package/dist/chunk-ITN462YM.mjs +98 -0
- package/dist/chunk-ITN462YM.mjs.map +1 -0
- package/dist/chunk-J23HNLFY.mjs +72 -0
- package/dist/chunk-J23HNLFY.mjs.map +1 -0
- package/dist/chunk-J4FNJ5IU.mjs +179 -0
- package/dist/chunk-J4FNJ5IU.mjs.map +1 -0
- package/dist/chunk-JK25YEN6.mjs +219 -0
- package/dist/chunk-JK25YEN6.mjs.map +1 -0
- package/dist/chunk-JLWMCADZ.mjs +204 -0
- package/dist/chunk-JLWMCADZ.mjs.map +1 -0
- package/dist/chunk-JN3UU635.mjs +622 -0
- package/dist/chunk-JN3UU635.mjs.map +1 -0
- package/dist/chunk-K4667E2Q.mjs +1916 -0
- package/dist/chunk-K4667E2Q.mjs.map +1 -0
- package/dist/chunk-LGHEOHBU.mjs +218 -0
- package/dist/chunk-LGHEOHBU.mjs.map +1 -0
- package/dist/chunk-LLC7BNXW.mjs +275 -0
- package/dist/chunk-LLC7BNXW.mjs.map +1 -0
- package/dist/chunk-LM2YNO4U.mjs +24 -0
- package/dist/chunk-LM2YNO4U.mjs.map +1 -0
- package/dist/chunk-NNLCAVB6.mjs +391 -0
- package/dist/chunk-NNLCAVB6.mjs.map +1 -0
- package/dist/chunk-O3HADRW6.mjs +639 -0
- package/dist/chunk-O3HADRW6.mjs.map +1 -0
- package/dist/chunk-OYXO65LI.mjs +119 -0
- package/dist/chunk-OYXO65LI.mjs.map +1 -0
- package/dist/chunk-P7QDS5AT.mjs +191 -0
- package/dist/chunk-P7QDS5AT.mjs.map +1 -0
- package/dist/chunk-PRNYWD7K.mjs +599 -0
- package/dist/chunk-PRNYWD7K.mjs.map +1 -0
- package/dist/chunk-QF4PHCMA.mjs +422 -0
- package/dist/chunk-QF4PHCMA.mjs.map +1 -0
- package/dist/chunk-QFQRHRZS.mjs +1224 -0
- package/dist/chunk-QFQRHRZS.mjs.map +1 -0
- package/dist/chunk-QGOHVJ6J.mjs +63 -0
- package/dist/chunk-QGOHVJ6J.mjs.map +1 -0
- package/dist/chunk-QKVUNGAH.mjs +39 -0
- package/dist/chunk-QKVUNGAH.mjs.map +1 -0
- package/dist/chunk-QM6VV26B.mjs +149 -0
- package/dist/chunk-QM6VV26B.mjs.map +1 -0
- package/dist/chunk-RHIFZZUI.mjs +69 -0
- package/dist/chunk-RHIFZZUI.mjs.map +1 -0
- package/dist/chunk-RKI6TN3A.mjs +49 -0
- package/dist/chunk-RKI6TN3A.mjs.map +1 -0
- package/dist/chunk-RSKVYESE.mjs +187 -0
- package/dist/chunk-RSKVYESE.mjs.map +1 -0
- package/dist/chunk-S2XHZS7W.mjs +180 -0
- package/dist/chunk-S2XHZS7W.mjs.map +1 -0
- package/dist/chunk-SCFX4UTD.mjs +28 -0
- package/dist/chunk-SCFX4UTD.mjs.map +1 -0
- package/dist/chunk-SL6HTIOK.mjs +66 -0
- package/dist/chunk-SL6HTIOK.mjs.map +1 -0
- package/dist/chunk-SOU3Q3ZA.mjs +173 -0
- package/dist/chunk-SOU3Q3ZA.mjs.map +1 -0
- package/dist/chunk-SPBBQLXI.mjs +207 -0
- package/dist/chunk-SPBBQLXI.mjs.map +1 -0
- package/dist/chunk-SXZTEK3V.mjs +396 -0
- package/dist/chunk-SXZTEK3V.mjs.map +1 -0
- package/dist/chunk-T4QJQK76.mjs +459 -0
- package/dist/chunk-T4QJQK76.mjs.map +1 -0
- package/dist/chunk-TRORP7E4.mjs +41 -0
- package/dist/chunk-TRORP7E4.mjs.map +1 -0
- package/dist/chunk-TU4YJICB.mjs +728 -0
- package/dist/chunk-TU4YJICB.mjs.map +1 -0
- package/dist/chunk-TXCFGOHW.mjs +42 -0
- package/dist/chunk-TXCFGOHW.mjs.map +1 -0
- package/dist/chunk-UHE2TTLK.mjs +466 -0
- package/dist/chunk-UHE2TTLK.mjs.map +1 -0
- package/dist/chunk-UREJA4GZ.mjs +364 -0
- package/dist/chunk-UREJA4GZ.mjs.map +1 -0
- package/dist/chunk-USWZZUEH.mjs +25 -0
- package/dist/chunk-USWZZUEH.mjs.map +1 -0
- package/dist/chunk-UVCIEUJC.mjs +16 -0
- package/dist/chunk-UVCIEUJC.mjs.map +1 -0
- package/dist/chunk-V6WE6JSZ.mjs +352 -0
- package/dist/chunk-V6WE6JSZ.mjs.map +1 -0
- package/dist/chunk-V7RBCSDJ.mjs +170 -0
- package/dist/chunk-V7RBCSDJ.mjs.map +1 -0
- package/dist/chunk-VCANOYFI.mjs +588 -0
- package/dist/chunk-VCANOYFI.mjs.map +1 -0
- package/dist/chunk-WZ5QFROO.mjs +23 -0
- package/dist/chunk-WZ5QFROO.mjs.map +1 -0
- package/dist/chunk-Y2OJJD7R.mjs +543 -0
- package/dist/chunk-Y2OJJD7R.mjs.map +1 -0
- package/dist/chunk-Y7A27276.mjs +538 -0
- package/dist/chunk-Y7A27276.mjs.map +1 -0
- package/dist/chunk-YHU7SS6L.mjs +365 -0
- package/dist/chunk-YHU7SS6L.mjs.map +1 -0
- package/dist/chunk-ZBE6MLHL.mjs +230 -0
- package/dist/chunk-ZBE6MLHL.mjs.map +1 -0
- package/dist/chunk-ZJQNATYV.mjs +299 -0
- package/dist/chunk-ZJQNATYV.mjs.map +1 -0
- package/dist/client-D_yUjVhe.d.mts +402 -0
- package/dist/client-Dkc03WP8.d.ts +402 -0
- package/dist/client-cache-CIlyBlmx.d.ts +6 -0
- package/dist/client-cache-D-EZ7XVW.d.mts +6 -0
- package/dist/client-plugins-BZnpeTGA.d.ts +1848 -0
- package/dist/client-plugins-g4bzuCmo.d.mts +1848 -0
- package/dist/client-plugins.cjs +415 -0
- package/dist/client-plugins.cjs.map +1 -0
- package/dist/client-plugins.d.mts +21 -0
- package/dist/client-plugins.d.ts +21 -0
- package/dist/client-plugins.mjs +10 -0
- package/dist/client-plugins.mjs.map +1 -0
- package/dist/client.cjs +4571 -0
- package/dist/client.cjs.map +1 -0
- package/dist/client.d.mts +329 -0
- package/dist/client.d.ts +329 -0
- package/dist/client.mjs +103 -0
- package/dist/client.mjs.map +1 -0
- package/dist/config.cjs +38 -0
- package/dist/config.cjs.map +1 -0
- package/dist/config.d.mts +28 -0
- package/dist/config.d.ts +28 -0
- package/dist/config.mjs +10 -0
- package/dist/config.mjs.map +1 -0
- package/dist/cron.cjs +406 -0
- package/dist/cron.cjs.map +1 -0
- package/dist/cron.d.mts +78 -0
- package/dist/cron.d.ts +78 -0
- package/dist/cron.mjs +30 -0
- package/dist/cron.mjs.map +1 -0
- package/dist/deferred.cjs +438 -0
- package/dist/deferred.cjs.map +1 -0
- package/dist/deferred.d.mts +42 -0
- package/dist/deferred.d.ts +42 -0
- package/dist/deferred.mjs +28 -0
- package/dist/deferred.mjs.map +1 -0
- package/dist/deployment.cjs +199 -0
- package/dist/deployment.cjs.map +1 -0
- package/dist/deployment.d.mts +34 -0
- package/dist/deployment.d.ts +34 -0
- package/dist/deployment.mjs +38 -0
- package/dist/deployment.mjs.map +1 -0
- package/dist/devtools-AE4RVXCM.mjs +370 -0
- package/dist/devtools-AE4RVXCM.mjs.map +1 -0
- package/dist/devtools-client-6WPY2AQU.mjs +225 -0
- package/dist/devtools-client-6WPY2AQU.mjs.map +1 -0
- package/dist/devtools-ui-NJKFORTG.mjs +1349 -0
- package/dist/devtools-ui-NJKFORTG.mjs.map +1 -0
- package/dist/docs.cjs +5541 -0
- package/dist/docs.cjs.map +1 -0
- package/dist/docs.d.mts +69 -0
- package/dist/docs.d.ts +69 -0
- package/dist/docs.mjs +46 -0
- package/dist/docs.mjs.map +1 -0
- package/dist/env-types.cjs +223 -0
- package/dist/env-types.cjs.map +1 -0
- package/dist/env-types.d.mts +11 -0
- package/dist/env-types.d.ts +11 -0
- package/dist/env-types.mjs +9 -0
- package/dist/env-types.mjs.map +1 -0
- package/dist/env.cjs +215 -0
- package/dist/env.cjs.map +1 -0
- package/dist/env.d.mts +45 -0
- package/dist/env.d.ts +45 -0
- package/dist/env.mjs +22 -0
- package/dist/env.mjs.map +1 -0
- package/dist/environment/vite.cjs +374 -0
- package/dist/environment/vite.cjs.map +1 -0
- package/dist/environment/vite.d.mts +22 -0
- package/dist/environment/vite.d.ts +22 -0
- package/dist/environment/vite.mjs +10 -0
- package/dist/environment/vite.mjs.map +1 -0
- package/dist/environment.cjs +96 -0
- package/dist/environment.cjs.map +1 -0
- package/dist/environment.d.mts +18 -0
- package/dist/environment.d.ts +18 -0
- package/dist/environment.mjs +14 -0
- package/dist/environment.mjs.map +1 -0
- package/dist/headers.cjs +126 -0
- package/dist/headers.cjs.map +1 -0
- package/dist/headers.d.mts +22 -0
- package/dist/headers.d.ts +22 -0
- package/dist/headers.mjs +12 -0
- package/dist/headers.mjs.map +1 -0
- package/dist/i18n/client.cjs +283 -0
- package/dist/i18n/client.cjs.map +1 -0
- package/dist/i18n/client.d.mts +32 -0
- package/dist/i18n/client.d.ts +32 -0
- package/dist/i18n/client.mjs +121 -0
- package/dist/i18n/client.mjs.map +1 -0
- package/dist/i18n/index.cjs +130 -0
- package/dist/i18n/index.cjs.map +1 -0
- package/dist/i18n/index.d.mts +20 -0
- package/dist/i18n/index.d.ts +20 -0
- package/dist/i18n/index.mjs +22 -0
- package/dist/i18n/index.mjs.map +1 -0
- package/dist/i18n/server.cjs +637 -0
- package/dist/i18n/server.cjs.map +1 -0
- package/dist/i18n/server.d.mts +30 -0
- package/dist/i18n/server.d.ts +30 -0
- package/dist/i18n/server.mjs +32 -0
- package/dist/i18n/server.mjs.map +1 -0
- package/dist/image/server.cjs +477 -0
- package/dist/image/server.cjs.map +1 -0
- package/dist/image/server.d.mts +37 -0
- package/dist/image/server.d.ts +37 -0
- package/dist/image/server.mjs +16 -0
- package/dist/image/server.mjs.map +1 -0
- package/dist/image/sharp.cjs +135 -0
- package/dist/image/sharp.cjs.map +1 -0
- package/dist/image/sharp.d.mts +7 -0
- package/dist/image/sharp.d.ts +7 -0
- package/dist/image/sharp.mjs +75 -0
- package/dist/image/sharp.mjs.map +1 -0
- package/dist/image-config-Duob7wER.d.mts +50 -0
- package/dist/image-config-Duob7wER.d.ts +50 -0
- package/dist/image.cjs +209 -0
- package/dist/image.cjs.map +1 -0
- package/dist/image.d.mts +39 -0
- package/dist/image.d.ts +39 -0
- package/dist/image.mjs +165 -0
- package/dist/image.mjs.map +1 -0
- package/dist/index.cjs +39433 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.mts +451 -0
- package/dist/index.d.ts +451 -0
- package/dist/index.mjs +930 -0
- package/dist/index.mjs.map +1 -0
- package/dist/integration-api-CHT2OKAf.d.mts +93 -0
- package/dist/integration-api-CHT2OKAf.d.ts +93 -0
- package/dist/integration-orm-GQLGU66X.mjs +13 -0
- package/dist/integration-orm-GQLGU66X.mjs.map +1 -0
- package/dist/integrations.cjs +2820 -0
- package/dist/integrations.cjs.map +1 -0
- package/dist/integrations.d.mts +21 -0
- package/dist/integrations.d.ts +21 -0
- package/dist/integrations.mjs +51 -0
- package/dist/integrations.mjs.map +1 -0
- package/dist/internal/build-runtime.cjs +31340 -0
- package/dist/internal/build-runtime.cjs.map +1 -0
- package/dist/internal/build-runtime.d.mts +38 -0
- package/dist/internal/build-runtime.d.ts +38 -0
- package/dist/internal/build-runtime.mjs +73 -0
- package/dist/internal/build-runtime.mjs.map +1 -0
- package/dist/internal/client-runtime.cjs +579 -0
- package/dist/internal/client-runtime.cjs.map +1 -0
- package/dist/internal/client-runtime.d.mts +2 -0
- package/dist/internal/client-runtime.d.ts +2 -0
- package/dist/internal/client-runtime.mjs +12 -0
- package/dist/internal/client-runtime.mjs.map +1 -0
- package/dist/internal/config-runtime.cjs +4172 -0
- package/dist/internal/config-runtime.cjs.map +1 -0
- package/dist/internal/config-runtime.d.mts +38 -0
- package/dist/internal/config-runtime.d.ts +38 -0
- package/dist/internal/config-runtime.mjs +38 -0
- package/dist/internal/config-runtime.mjs.map +1 -0
- package/dist/internal/production-node-env.cjs +65 -0
- package/dist/internal/production-node-env.cjs.map +1 -0
- package/dist/internal/production-node-env.d.mts +12 -0
- package/dist/internal/production-node-env.d.ts +12 -0
- package/dist/internal/production-node-env.mjs +8 -0
- package/dist/internal/production-node-env.mjs.map +1 -0
- package/dist/internal/production-runtime.cjs +1896 -0
- package/dist/internal/production-runtime.cjs.map +1 -0
- package/dist/internal/production-runtime.d.mts +39 -0
- package/dist/internal/production-runtime.d.ts +39 -0
- package/dist/internal/production-runtime.mjs +79 -0
- package/dist/internal/production-runtime.mjs.map +1 -0
- package/dist/layers-VWVDTPUZ.mjs +16 -0
- package/dist/layers-VWVDTPUZ.mjs.map +1 -0
- package/dist/manager-THKFTOFE.mjs +10 -0
- package/dist/manager-THKFTOFE.mjs.map +1 -0
- package/dist/markdown.cjs +299 -0
- package/dist/markdown.cjs.map +1 -0
- package/dist/markdown.d.mts +43 -0
- package/dist/markdown.d.ts +43 -0
- package/dist/markdown.mjs +14 -0
- package/dist/markdown.mjs.map +1 -0
- package/dist/metadata-C9NZxMDW.d.mts +22 -0
- package/dist/metadata-DAXRaOHx.d.ts +22 -0
- package/dist/middleware.cjs +2148 -0
- package/dist/middleware.cjs.map +1 -0
- package/dist/middleware.d.mts +163 -0
- package/dist/middleware.d.ts +163 -0
- package/dist/middleware.mjs +49 -0
- package/dist/middleware.mjs.map +1 -0
- package/dist/navigation-errors-Dvwpzaer.d.mts +13 -0
- package/dist/navigation-errors-Dvwpzaer.d.ts +13 -0
- package/dist/navigation.cjs +1304 -0
- package/dist/navigation.cjs.map +1 -0
- package/dist/navigation.d.mts +14 -0
- package/dist/navigation.d.ts +14 -0
- package/dist/navigation.mjs +33 -0
- package/dist/navigation.mjs.map +1 -0
- package/dist/nitro-KME62MWG.mjs +691 -0
- package/dist/nitro-KME62MWG.mjs.map +1 -0
- package/dist/observability.cjs +186 -0
- package/dist/observability.cjs.map +1 -0
- package/dist/observability.d.mts +335 -0
- package/dist/observability.d.ts +335 -0
- package/dist/observability.mjs +16 -0
- package/dist/observability.mjs.map +1 -0
- package/dist/params-BALtrRim.d.ts +15 -0
- package/dist/params-ry-lxqmy.d.mts +15 -0
- package/dist/plugin-BJDf43dc.d.mts +165 -0
- package/dist/plugin-BJDf43dc.d.ts +165 -0
- package/dist/plugin.cjs +22285 -0
- package/dist/plugin.cjs.map +1 -0
- package/dist/plugin.d.mts +21 -0
- package/dist/plugin.d.ts +21 -0
- package/dist/plugin.mjs +60 -0
- package/dist/plugin.mjs.map +1 -0
- package/dist/production-runtime-C_B79w2P.d.mts +28 -0
- package/dist/production-runtime-DDEM1D2q.d.ts +28 -0
- package/dist/production-runtime-DRkCHUvJ.d.ts +79 -0
- package/dist/production-runtime-flrjp_nC.d.mts +79 -0
- package/dist/query/client.cjs +560 -0
- package/dist/query/client.cjs.map +1 -0
- package/dist/query/client.d.mts +61 -0
- package/dist/query/client.d.ts +61 -0
- package/dist/query/client.mjs +364 -0
- package/dist/query/client.mjs.map +1 -0
- package/dist/query/index.cjs +226 -0
- package/dist/query/index.cjs.map +1 -0
- package/dist/query/index.d.mts +90 -0
- package/dist/query/index.d.ts +90 -0
- package/dist/query/index.mjs +31 -0
- package/dist/query/index.mjs.map +1 -0
- package/dist/query/parsers.cjs +178 -0
- package/dist/query/parsers.cjs.map +1 -0
- package/dist/query/parsers.d.mts +25 -0
- package/dist/query/parsers.d.ts +25 -0
- package/dist/query/parsers.mjs +24 -0
- package/dist/query/parsers.mjs.map +1 -0
- package/dist/query/server.cjs +301 -0
- package/dist/query/server.cjs.map +1 -0
- package/dist/query/server.d.mts +55 -0
- package/dist/query/server.d.ts +55 -0
- package/dist/query/server.mjs +105 -0
- package/dist/query/server.mjs.map +1 -0
- package/dist/request-BrFBuc8G.d.mts +6 -0
- package/dist/request-BslSZIRz.d.ts +6 -0
- package/dist/request.cjs +71 -0
- package/dist/request.cjs.map +1 -0
- package/dist/request.d.mts +2 -0
- package/dist/request.d.ts +2 -0
- package/dist/request.mjs +9 -0
- package/dist/request.mjs.map +1 -0
- package/dist/resolver-C6iecsDV.d.ts +14 -0
- package/dist/resolver-DlOPpjkB.d.mts +14 -0
- package/dist/route-runtime-DoOHzCAD.d.mts +38 -0
- package/dist/route-runtime-DoOHzCAD.d.ts +38 -0
- package/dist/router.cjs +254 -0
- package/dist/router.cjs.map +1 -0
- package/dist/router.d.mts +36 -0
- package/dist/router.d.ts +36 -0
- package/dist/router.mjs +14 -0
- package/dist/router.mjs.map +1 -0
- package/dist/routes.cjs +1213 -0
- package/dist/routes.cjs.map +1 -0
- package/dist/routes.d.mts +224 -0
- package/dist/routes.d.ts +224 -0
- package/dist/routes.mjs +52 -0
- package/dist/routes.mjs.map +1 -0
- package/dist/runtime-B6GvwDS1.d.ts +27 -0
- package/dist/runtime-DeAAZ6gO.d.mts +27 -0
- package/dist/search-client-6OXIBNYQ.mjs +14 -0
- package/dist/search-client-6OXIBNYQ.mjs.map +1 -0
- package/dist/server-action-security.cjs +492 -0
- package/dist/server-action-security.cjs.map +1 -0
- package/dist/server-action-security.d.mts +42 -0
- package/dist/server-action-security.d.ts +42 -0
- package/dist/server-action-security.mjs +29 -0
- package/dist/server-action-security.mjs.map +1 -0
- package/dist/server-fn-client.cjs +180 -0
- package/dist/server-fn-client.cjs.map +1 -0
- package/dist/server-fn-client.d.mts +31 -0
- package/dist/server-fn-client.d.ts +31 -0
- package/dist/server-fn-client.mjs +9 -0
- package/dist/server-fn-client.mjs.map +1 -0
- package/dist/server-fn.cjs +284 -0
- package/dist/server-fn.cjs.map +1 -0
- package/dist/server-fn.d.mts +84 -0
- package/dist/server-fn.d.ts +84 -0
- package/dist/server-fn.mjs +17 -0
- package/dist/server-fn.mjs.map +1 -0
- package/dist/server-plugins.cjs +235 -0
- package/dist/server-plugins.cjs.map +1 -0
- package/dist/server-plugins.d.mts +54 -0
- package/dist/server-plugins.d.ts +54 -0
- package/dist/server-plugins.mjs +18 -0
- package/dist/server-plugins.mjs.map +1 -0
- package/dist/server-query-client.cjs +792 -0
- package/dist/server-query-client.cjs.map +1 -0
- package/dist/server-query-client.d.mts +50 -0
- package/dist/server-query-client.d.ts +50 -0
- package/dist/server-query-client.mjs +23 -0
- package/dist/server-query-client.mjs.map +1 -0
- package/dist/server-query.cjs +804 -0
- package/dist/server-query.cjs.map +1 -0
- package/dist/server-query.d.mts +36 -0
- package/dist/server-query.d.ts +36 -0
- package/dist/server-query.mjs +18 -0
- package/dist/server-query.mjs.map +1 -0
- package/dist/server.cjs +25739 -0
- package/dist/server.cjs.map +1 -0
- package/dist/server.d.mts +47 -0
- package/dist/server.d.ts +47 -0
- package/dist/server.mjs +511 -0
- package/dist/server.mjs.map +1 -0
- package/dist/storage.cjs +515 -0
- package/dist/storage.cjs.map +1 -0
- package/dist/storage.d.mts +52 -0
- package/dist/storage.d.ts +52 -0
- package/dist/storage.mjs +58 -0
- package/dist/storage.mjs.map +1 -0
- package/dist/testing.cjs +1882 -0
- package/dist/testing.cjs.map +1 -0
- package/dist/testing.d.mts +100 -0
- package/dist/testing.d.ts +100 -0
- package/dist/testing.mjs +324 -0
- package/dist/testing.mjs.map +1 -0
- package/dist/types-BH1lhg5G.d.mts +81 -0
- package/dist/types-BH1lhg5G.d.ts +81 -0
- package/dist/types-C9N-nk5R.d.mts +53 -0
- package/dist/types-C9N-nk5R.d.ts +53 -0
- package/dist/types-D1A6-XvH.d.mts +73 -0
- package/dist/types-D1A6-XvH.d.ts +73 -0
- package/dist/utils-DA1yo54_.d.ts +23 -0
- package/dist/utils-DOXXivjL.d.mts +23 -0
- package/dist/vite.cjs +22684 -0
- package/dist/vite.cjs.map +1 -0
- package/dist/vite.d.mts +21 -0
- package/dist/vite.d.ts +21 -0
- package/dist/vite.mjs +59 -0
- package/dist/vite.mjs.map +1 -0
- package/dist/workflows.cjs +586 -0
- package/dist/workflows.cjs.map +1 -0
- package/dist/workflows.d.mts +110 -0
- package/dist/workflows.d.ts +110 -0
- package/dist/workflows.mjs +32 -0
- package/dist/workflows.mjs.map +1 -0
- package/package.json +523 -0
- package/types/api.d.ts +88 -0
- package/types/client.d.ts +1171 -0
- package/types/index.d.ts +17 -0
- package/types/middleware.d.ts +266 -0
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__name
|
|
3
|
+
} from "./chunk-CGILA3WO.mjs";
|
|
4
|
+
|
|
5
|
+
// src/client/chunk-recovery.ts
|
|
6
|
+
var DEFAULT_MAX_AGE_MS = 3e4;
|
|
7
|
+
var STORAGE_KEY_PREFIX = "farm:chunk-recovery:";
|
|
8
|
+
var CHUNK_ERROR_PATTERNS = [
|
|
9
|
+
/ChunkLoadError/i,
|
|
10
|
+
/Loading chunk [\w-]+ failed/i,
|
|
11
|
+
/Loading CSS chunk [\w-]+ failed/i,
|
|
12
|
+
/CSS_CHUNK_LOAD_FAILED/i,
|
|
13
|
+
/failed to fetch dynamically imported module/i,
|
|
14
|
+
/error loading dynamically imported module/i,
|
|
15
|
+
/importing a module script failed/i,
|
|
16
|
+
/unable to preload CSS/i,
|
|
17
|
+
/module script failed/i
|
|
18
|
+
];
|
|
19
|
+
function isChunkLoadError(errorLike) {
|
|
20
|
+
const values = collectErrorText(errorLike);
|
|
21
|
+
if (values.some((value) => CHUNK_ERROR_PATTERNS.some((pattern) => pattern.test(value)))) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
const targetUrl = getEventTargetAssetUrl(errorLike);
|
|
25
|
+
return Boolean(targetUrl && /\.(?:m?js|css)(?:[?#].*)?$/i.test(targetUrl));
|
|
26
|
+
}
|
|
27
|
+
__name(isChunkLoadError, "isChunkLoadError");
|
|
28
|
+
function installChunkErrorRecovery(options = {}) {
|
|
29
|
+
if (typeof window === "undefined") {
|
|
30
|
+
return () => {
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
const recover = /* @__PURE__ */ __name((errorLike) => {
|
|
34
|
+
if (!isChunkLoadError(errorLike)) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
if (!markRecovered(options)) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
options.onRecover?.(errorLike);
|
|
41
|
+
getReload(options)();
|
|
42
|
+
}, "recover");
|
|
43
|
+
const onError = /* @__PURE__ */ __name((event) => {
|
|
44
|
+
recover(getErrorEventPayload(event));
|
|
45
|
+
}, "onError");
|
|
46
|
+
const onUnhandledRejection = /* @__PURE__ */ __name((event) => {
|
|
47
|
+
recover(event.reason);
|
|
48
|
+
}, "onUnhandledRejection");
|
|
49
|
+
window.addEventListener("error", onError, true);
|
|
50
|
+
window.addEventListener("unhandledrejection", onUnhandledRejection);
|
|
51
|
+
return () => {
|
|
52
|
+
window.removeEventListener("error", onError, true);
|
|
53
|
+
window.removeEventListener("unhandledrejection", onUnhandledRejection);
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
__name(installChunkErrorRecovery, "installChunkErrorRecovery");
|
|
57
|
+
function markRecovered(options) {
|
|
58
|
+
const now = getNow(options);
|
|
59
|
+
const maxAgeMs = options.maxAgeMs ?? DEFAULT_MAX_AGE_MS;
|
|
60
|
+
const storage = getStorage(options);
|
|
61
|
+
const key = getStorageKey(options);
|
|
62
|
+
if (!storage) {
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
try {
|
|
66
|
+
const previous = Number(storage.getItem(key));
|
|
67
|
+
if (Number.isFinite(previous) && previous > 0 && now - previous < maxAgeMs) {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
storage.setItem(key, String(now));
|
|
71
|
+
return true;
|
|
72
|
+
} catch {
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
__name(markRecovered, "markRecovered");
|
|
77
|
+
function getErrorEventPayload(event) {
|
|
78
|
+
if ("error" in event && event.error) {
|
|
79
|
+
return event.error;
|
|
80
|
+
}
|
|
81
|
+
if ("message" in event && event.message) {
|
|
82
|
+
return event.message;
|
|
83
|
+
}
|
|
84
|
+
return event;
|
|
85
|
+
}
|
|
86
|
+
__name(getErrorEventPayload, "getErrorEventPayload");
|
|
87
|
+
function collectErrorText(value, seen = /* @__PURE__ */ new Set()) {
|
|
88
|
+
if (value == null || seen.has(value)) {
|
|
89
|
+
return [];
|
|
90
|
+
}
|
|
91
|
+
seen.add(value);
|
|
92
|
+
if (typeof value === "string") {
|
|
93
|
+
return [value];
|
|
94
|
+
}
|
|
95
|
+
if (typeof value === "number" || typeof value === "boolean") {
|
|
96
|
+
return [String(value)];
|
|
97
|
+
}
|
|
98
|
+
if (typeof value !== "object") {
|
|
99
|
+
return [];
|
|
100
|
+
}
|
|
101
|
+
const record = value;
|
|
102
|
+
const output = [];
|
|
103
|
+
for (const key of ["name", "message", "code", "type", "request", "src", "href"]) {
|
|
104
|
+
const candidate = record[key];
|
|
105
|
+
if (typeof candidate === "string") {
|
|
106
|
+
output.push(candidate);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
if ("reason" in record) {
|
|
110
|
+
output.push(...collectErrorText(record.reason, seen));
|
|
111
|
+
}
|
|
112
|
+
if ("error" in record) {
|
|
113
|
+
output.push(...collectErrorText(record.error, seen));
|
|
114
|
+
}
|
|
115
|
+
return output;
|
|
116
|
+
}
|
|
117
|
+
__name(collectErrorText, "collectErrorText");
|
|
118
|
+
function getEventTargetAssetUrl(value) {
|
|
119
|
+
if (!value || typeof value !== "object") {
|
|
120
|
+
return void 0;
|
|
121
|
+
}
|
|
122
|
+
const target = value.target;
|
|
123
|
+
if (!target || typeof target !== "object") {
|
|
124
|
+
return void 0;
|
|
125
|
+
}
|
|
126
|
+
const tagName = typeof target.tagName === "string" ? target.tagName.toLowerCase() : "";
|
|
127
|
+
if (tagName !== "script" && tagName !== "link") {
|
|
128
|
+
return void 0;
|
|
129
|
+
}
|
|
130
|
+
return typeof target.src === "string" && target.src ? target.src : typeof target.href === "string" && target.href ? target.href : void 0;
|
|
131
|
+
}
|
|
132
|
+
__name(getEventTargetAssetUrl, "getEventTargetAssetUrl");
|
|
133
|
+
function getStorage(options) {
|
|
134
|
+
if ("storage" in options) {
|
|
135
|
+
return options.storage;
|
|
136
|
+
}
|
|
137
|
+
try {
|
|
138
|
+
return window.sessionStorage;
|
|
139
|
+
} catch {
|
|
140
|
+
return null;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
__name(getStorage, "getStorage");
|
|
144
|
+
function getStorageKey(options) {
|
|
145
|
+
if (options.storageKey) {
|
|
146
|
+
return options.storageKey;
|
|
147
|
+
}
|
|
148
|
+
const location = getLocation(options);
|
|
149
|
+
return `${STORAGE_KEY_PREFIX}${location.pathname}${location.search}`;
|
|
150
|
+
}
|
|
151
|
+
__name(getStorageKey, "getStorageKey");
|
|
152
|
+
function getLocation(options) {
|
|
153
|
+
return options.location ?? window.location;
|
|
154
|
+
}
|
|
155
|
+
__name(getLocation, "getLocation");
|
|
156
|
+
function getReload(options) {
|
|
157
|
+
if (options.reload) {
|
|
158
|
+
return options.reload;
|
|
159
|
+
}
|
|
160
|
+
const location = getLocation(options);
|
|
161
|
+
return () => location.reload();
|
|
162
|
+
}
|
|
163
|
+
__name(getReload, "getReload");
|
|
164
|
+
function getNow(options) {
|
|
165
|
+
return options.now ? options.now() : Date.now();
|
|
166
|
+
}
|
|
167
|
+
__name(getNow, "getNow");
|
|
168
|
+
|
|
169
|
+
export {
|
|
170
|
+
isChunkLoadError,
|
|
171
|
+
installChunkErrorRecovery
|
|
172
|
+
};
|
|
173
|
+
//# sourceMappingURL=chunk-SOU3Q3ZA.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/client/chunk-recovery.ts"],"sourcesContent":["\"use client\";\n\nexport interface FarmChunkRecoveryOptions {\n /**\n * How long a page is considered already recovered before another chunk\n * failure may trigger a reload. Defaults to 30 seconds.\n */\n maxAgeMs?: number;\n /**\n * Override the storage key. Mostly useful for tests and embedded runtimes.\n */\n storageKey?: string;\n /**\n * Called right before Farm reloads the page.\n */\n onRecover?: (error: unknown) => void;\n /**\n * Test hooks for browser globals.\n */\n reload?: () => void;\n storage?: Pick<Storage, \"getItem\" | \"setItem\" | \"removeItem\"> | null;\n location?: Pick<Location, \"pathname\" | \"search\" | \"reload\">;\n now?: () => number;\n}\n\nconst DEFAULT_MAX_AGE_MS = 30_000;\nconst STORAGE_KEY_PREFIX = \"farm:chunk-recovery:\";\nconst CHUNK_ERROR_PATTERNS = [\n /ChunkLoadError/i,\n /Loading chunk [\\w-]+ failed/i,\n /Loading CSS chunk [\\w-]+ failed/i,\n /CSS_CHUNK_LOAD_FAILED/i,\n /failed to fetch dynamically imported module/i,\n /error loading dynamically imported module/i,\n /importing a module script failed/i,\n /unable to preload CSS/i,\n /module script failed/i,\n];\n\nexport function isChunkLoadError(errorLike: unknown): boolean {\n const values = collectErrorText(errorLike);\n if (values.some((value) => CHUNK_ERROR_PATTERNS.some((pattern) => pattern.test(value)))) {\n return true;\n }\n\n const targetUrl = getEventTargetAssetUrl(errorLike);\n return Boolean(targetUrl && /\\.(?:m?js|css)(?:[?#].*)?$/i.test(targetUrl));\n}\n\nexport function installChunkErrorRecovery(\n options: FarmChunkRecoveryOptions = {},\n): () => void {\n if (typeof window === \"undefined\") {\n return () => {};\n }\n\n const recover = (errorLike: unknown) => {\n if (!isChunkLoadError(errorLike)) {\n return;\n }\n if (!markRecovered(options)) {\n return;\n }\n\n options.onRecover?.(errorLike);\n getReload(options)();\n };\n\n const onError = (event: Event | ErrorEvent) => {\n recover(getErrorEventPayload(event));\n };\n const onUnhandledRejection = (event: PromiseRejectionEvent) => {\n recover(event.reason);\n };\n\n window.addEventListener(\"error\", onError, true);\n window.addEventListener(\"unhandledrejection\", onUnhandledRejection);\n\n return () => {\n window.removeEventListener(\"error\", onError, true);\n window.removeEventListener(\"unhandledrejection\", onUnhandledRejection);\n };\n}\n\nfunction markRecovered(options: FarmChunkRecoveryOptions): boolean {\n const now = getNow(options);\n const maxAgeMs = options.maxAgeMs ?? DEFAULT_MAX_AGE_MS;\n const storage = getStorage(options);\n const key = getStorageKey(options);\n\n if (!storage) {\n return true;\n }\n\n try {\n const previous = Number(storage.getItem(key));\n if (Number.isFinite(previous) && previous > 0 && now - previous < maxAgeMs) {\n return false;\n }\n storage.setItem(key, String(now));\n return true;\n } catch {\n return true;\n }\n}\n\nfunction getErrorEventPayload(event: Event | ErrorEvent): unknown {\n if (\"error\" in event && event.error) {\n return event.error;\n }\n if (\"message\" in event && event.message) {\n return event.message;\n }\n return event;\n}\n\nfunction collectErrorText(value: unknown, seen = new Set<unknown>()): string[] {\n if (value == null || seen.has(value)) {\n return [];\n }\n seen.add(value);\n\n if (typeof value === \"string\") {\n return [value];\n }\n if (typeof value === \"number\" || typeof value === \"boolean\") {\n return [String(value)];\n }\n if (typeof value !== \"object\") {\n return [];\n }\n\n const record = value as Record<string, unknown>;\n const output: string[] = [];\n\n for (const key of [\"name\", \"message\", \"code\", \"type\", \"request\", \"src\", \"href\"]) {\n const candidate = record[key];\n if (typeof candidate === \"string\") {\n output.push(candidate);\n }\n }\n\n if (\"reason\" in record) {\n output.push(...collectErrorText(record.reason, seen));\n }\n if (\"error\" in record) {\n output.push(...collectErrorText(record.error, seen));\n }\n\n return output;\n}\n\nfunction getEventTargetAssetUrl(value: unknown): string | undefined {\n if (!value || typeof value !== \"object\") {\n return undefined;\n }\n\n const target = (value as Event).target as\n | (EventTarget & { src?: string; href?: string; tagName?: string })\n | null\n | undefined;\n if (!target || typeof target !== \"object\") {\n return undefined;\n }\n\n const tagName = typeof target.tagName === \"string\" ? target.tagName.toLowerCase() : \"\";\n if (tagName !== \"script\" && tagName !== \"link\") {\n return undefined;\n }\n\n return typeof target.src === \"string\" && target.src\n ? target.src\n : typeof target.href === \"string\" && target.href\n ? target.href\n : undefined;\n}\n\nfunction getStorage(options: FarmChunkRecoveryOptions) {\n if (\"storage\" in options) {\n return options.storage;\n }\n\n try {\n return window.sessionStorage;\n } catch {\n return null;\n }\n}\n\nfunction getStorageKey(options: FarmChunkRecoveryOptions): string {\n if (options.storageKey) {\n return options.storageKey;\n }\n\n const location = getLocation(options);\n return `${STORAGE_KEY_PREFIX}${location.pathname}${location.search}`;\n}\n\nfunction getLocation(options: FarmChunkRecoveryOptions) {\n return options.location ?? window.location;\n}\n\nfunction getReload(options: FarmChunkRecoveryOptions): () => void {\n if (options.reload) {\n return options.reload;\n }\n\n const location = getLocation(options);\n return () => location.reload();\n}\n\nfunction getNow(options: FarmChunkRecoveryOptions): number {\n return options.now ? options.now() : Date.now();\n}\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__name
|
|
3
|
+
} from "./chunk-CGILA3WO.mjs";
|
|
4
|
+
|
|
5
|
+
// src/plugins/redirects.ts
|
|
6
|
+
function createRedirectsPlugin(redirects, {
|
|
7
|
+
beforeRequest: overrideBeforeRequest,
|
|
8
|
+
afterResponse: overrideAfterResponse
|
|
9
|
+
} = {}) {
|
|
10
|
+
return {
|
|
11
|
+
name: "farm:redirects",
|
|
12
|
+
enforce: "pre",
|
|
13
|
+
async beforeRequest(req, res, context) {
|
|
14
|
+
if (overrideBeforeRequest) {
|
|
15
|
+
await overrideBeforeRequest(req, res, context);
|
|
16
|
+
}
|
|
17
|
+
const url = new URL(req.url || "/", `http://${req.headers.host}`);
|
|
18
|
+
const pathname = url.pathname;
|
|
19
|
+
for (const redirect of redirects) {
|
|
20
|
+
const pattern = redirect.source.replace(/:\w+\*/g, "(.*)").replace(/:\w+/g, "([^/]+)").replace(/\*/g, "(.*)").replace(/\//g, "\\/");
|
|
21
|
+
const sourceRegex = new RegExp(`^${pattern}$`);
|
|
22
|
+
if (sourceRegex.test(pathname)) {
|
|
23
|
+
let destination = redirect.destination;
|
|
24
|
+
const matches = pathname.match(sourceRegex);
|
|
25
|
+
if (matches) {
|
|
26
|
+
const params = redirect.source.match(/:\w+\*?/g) || [];
|
|
27
|
+
params.forEach((param, index) => {
|
|
28
|
+
destination = destination.replace(param, matches[index + 1] || "");
|
|
29
|
+
});
|
|
30
|
+
const stars = redirect.source.match(/(?<!:)\*/g) || [];
|
|
31
|
+
stars.forEach((_, index) => {
|
|
32
|
+
destination = destination.replace("*", matches[params.length + index + 1] || "");
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
const statusCode = redirect.statusCode || (redirect.permanent ? 308 : 307);
|
|
36
|
+
res.writeHead(statusCode, {
|
|
37
|
+
Location: destination
|
|
38
|
+
});
|
|
39
|
+
res.end();
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
async afterResponse(req, res, context) {
|
|
45
|
+
if (overrideAfterResponse) {
|
|
46
|
+
await overrideAfterResponse(req, res, context);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
__name(createRedirectsPlugin, "createRedirectsPlugin");
|
|
52
|
+
|
|
53
|
+
// src/plugins/headers.ts
|
|
54
|
+
function createHeadersPlugin(headers, {
|
|
55
|
+
beforeRequest: overrideBeforeRequest,
|
|
56
|
+
afterResponse: overrideAfterResponse
|
|
57
|
+
} = {}) {
|
|
58
|
+
return {
|
|
59
|
+
name: "farm:headers",
|
|
60
|
+
enforce: "pre",
|
|
61
|
+
async beforeRequest(req, res, context) {
|
|
62
|
+
if (overrideBeforeRequest) {
|
|
63
|
+
await overrideBeforeRequest(req, res, context);
|
|
64
|
+
}
|
|
65
|
+
const url = new URL(req.url || "/", `http://${req.headers.host}`);
|
|
66
|
+
const pathname = url.pathname;
|
|
67
|
+
for (const headerConfig of headers) {
|
|
68
|
+
const sourceRegex = new RegExp(
|
|
69
|
+
"^" + headerConfig.source.replace(/\*/g, "(.*)").replace(/\//g, "\\/") + "$"
|
|
70
|
+
);
|
|
71
|
+
if (sourceRegex.test(pathname)) {
|
|
72
|
+
for (const header of headerConfig.headers) {
|
|
73
|
+
res.setHeader(header.key, header.value);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
async afterResponse(req, res, context) {
|
|
79
|
+
if (overrideAfterResponse) {
|
|
80
|
+
await overrideAfterResponse(req, res, context);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
__name(createHeadersPlugin, "createHeadersPlugin");
|
|
86
|
+
|
|
87
|
+
// src/plugins/rewrites.ts
|
|
88
|
+
function createRewritesPlugin(rewrites, {
|
|
89
|
+
beforeRequest: overrideBeforeRequest,
|
|
90
|
+
afterResponse: overrideAfterResponse
|
|
91
|
+
} = {}) {
|
|
92
|
+
return {
|
|
93
|
+
name: "farm:rewrites",
|
|
94
|
+
enforce: "pre",
|
|
95
|
+
async beforeRequest(req, res, context) {
|
|
96
|
+
if (overrideBeforeRequest) {
|
|
97
|
+
await overrideBeforeRequest(req, res, context);
|
|
98
|
+
}
|
|
99
|
+
const url = new URL(req.url || "/", `http://${req.headers.host}`);
|
|
100
|
+
const pathname = url.pathname;
|
|
101
|
+
for (const rewrite of rewrites) {
|
|
102
|
+
const sourceRegex = new RegExp(
|
|
103
|
+
"^" + rewrite.source.replace(/\*/g, "(.*)").replace(/\//g, "\\/") + "$"
|
|
104
|
+
);
|
|
105
|
+
if (sourceRegex.test(pathname)) {
|
|
106
|
+
const newPath = pathname.replace(sourceRegex, rewrite.destination);
|
|
107
|
+
req.url = newPath + url.search;
|
|
108
|
+
break;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
},
|
|
112
|
+
async afterResponse(req, res, context) {
|
|
113
|
+
if (overrideAfterResponse) {
|
|
114
|
+
await overrideAfterResponse(req, res, context);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
__name(createRewritesPlugin, "createRewritesPlugin");
|
|
120
|
+
|
|
121
|
+
// src/plugins/env.ts
|
|
122
|
+
function createEnvPlugin(env, {
|
|
123
|
+
beforeRequest: overrideBeforeRequest,
|
|
124
|
+
afterResponse: overrideAfterResponse
|
|
125
|
+
} = {}) {
|
|
126
|
+
return {
|
|
127
|
+
name: "farm:env",
|
|
128
|
+
configResolved(config, context) {
|
|
129
|
+
for (const [key, value] of Object.entries(env)) {
|
|
130
|
+
process.env[key] = value;
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
async beforeRequest(req, res, context) {
|
|
134
|
+
if (overrideBeforeRequest) {
|
|
135
|
+
await overrideBeforeRequest(req, res, context);
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
async afterResponse(req, res, context) {
|
|
139
|
+
if (overrideAfterResponse) {
|
|
140
|
+
await overrideAfterResponse(req, res, context);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
__name(createEnvPlugin, "createEnvPlugin");
|
|
146
|
+
|
|
147
|
+
// src/plugins/compression.ts
|
|
148
|
+
function createCompressionPlugin({
|
|
149
|
+
beforeRequest: overrideBeforeRequest,
|
|
150
|
+
afterResponse: overrideAfterResponse
|
|
151
|
+
} = {}) {
|
|
152
|
+
return {
|
|
153
|
+
name: "farm:compression",
|
|
154
|
+
enforce: "post",
|
|
155
|
+
async beforeRequest(req, res, context) {
|
|
156
|
+
if (overrideBeforeRequest) {
|
|
157
|
+
await overrideBeforeRequest(req, res, context);
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
async afterResponse(req, res, context) {
|
|
161
|
+
if (overrideAfterResponse) {
|
|
162
|
+
await overrideAfterResponse(req, res, context);
|
|
163
|
+
}
|
|
164
|
+
if (!context.isProd) return;
|
|
165
|
+
const acceptEncoding = req.headers["accept-encoding"] || "";
|
|
166
|
+
if (acceptEncoding.includes("gzip")) {
|
|
167
|
+
res.setHeader("Content-Encoding", "gzip");
|
|
168
|
+
} else if (acceptEncoding.includes("br")) {
|
|
169
|
+
res.setHeader("Content-Encoding", "br");
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
__name(createCompressionPlugin, "createCompressionPlugin");
|
|
175
|
+
|
|
176
|
+
// src/plugins/logger.ts
|
|
177
|
+
function createLoggerPlugin({
|
|
178
|
+
beforeRequest,
|
|
179
|
+
afterResponse
|
|
180
|
+
} = {}) {
|
|
181
|
+
const plugin = {
|
|
182
|
+
name: "farm:logger",
|
|
183
|
+
enforce: "post"
|
|
184
|
+
};
|
|
185
|
+
if (beforeRequest) {
|
|
186
|
+
plugin.beforeRequest = async (req, res, context) => {
|
|
187
|
+
await beforeRequest(req, res, context);
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
if (afterResponse) {
|
|
191
|
+
plugin.afterResponse = async (req, res, context) => {
|
|
192
|
+
await afterResponse(req, res, context);
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
return plugin;
|
|
196
|
+
}
|
|
197
|
+
__name(createLoggerPlugin, "createLoggerPlugin");
|
|
198
|
+
|
|
199
|
+
export {
|
|
200
|
+
createRedirectsPlugin,
|
|
201
|
+
createHeadersPlugin,
|
|
202
|
+
createRewritesPlugin,
|
|
203
|
+
createEnvPlugin,
|
|
204
|
+
createCompressionPlugin,
|
|
205
|
+
createLoggerPlugin
|
|
206
|
+
};
|
|
207
|
+
//# sourceMappingURL=chunk-SPBBQLXI.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/plugins/redirects.ts","../src/plugins/headers.ts","../src/plugins/rewrites.ts","../src/plugins/env.ts","../src/plugins/compression.ts","../src/plugins/logger.ts"],"sourcesContent":["import type { FarmPlugin, FarmPluginContext } from \"../plugin\";\nimport type { RedirectConfig } from \"../config\";\nimport type { FarmRequest, FarmResponse } from \"../types\";\n\nexport function createRedirectsPlugin(\n redirects: RedirectConfig[],\n {\n beforeRequest: overrideBeforeRequest,\n afterResponse: overrideAfterResponse,\n }: {\n beforeRequest?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n afterResponse?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n } = {},\n): FarmPlugin {\n return {\n name: \"farm:redirects\",\n enforce: \"pre\",\n async beforeRequest(req, res, context) {\n if (overrideBeforeRequest) {\n await overrideBeforeRequest(req, res, context);\n }\n const url = new URL(req.url || \"/\", `http://${req.headers.host}`);\n const pathname = url.pathname;\n\n for (const redirect of redirects) {\n // Convert Next.js-style patterns to regex\n // :param -> ([^/]+)\n // :param* -> (.*)\n // * -> (.*)\n const pattern = redirect.source\n .replace(/:\\w+\\*/g, \"(.*)\") // :param* -> (.*)\n .replace(/:\\w+/g, \"([^/]+)\") // :param -> ([^/]+)\n .replace(/\\*/g, \"(.*)\") // * -> (.*)\n .replace(/\\//g, \"\\\\/\"); // escape slashes\n\n const sourceRegex = new RegExp(`^${pattern}$`);\n\n if (sourceRegex.test(pathname)) {\n // Replace captured groups in destination\n let destination = redirect.destination;\n const matches = pathname.match(sourceRegex);\n\n if (matches) {\n // Replace :param or :param* with captured values\n const params = redirect.source.match(/:\\w+\\*?/g) || [];\n params.forEach((param, index) => {\n destination = destination.replace(param, matches[index + 1] || \"\");\n });\n\n // Also replace plain * with captured values\n const stars = redirect.source.match(/(?<!:)\\*/g) || [];\n stars.forEach((_, index) => {\n destination = destination.replace(\"*\", matches[params.length + index + 1] || \"\");\n });\n }\n\n const statusCode = redirect.statusCode || (redirect.permanent ? 308 : 307);\n\n res.writeHead(statusCode, {\n Location: destination,\n });\n res.end();\n return;\n }\n }\n },\n\n async afterResponse(req, res, context) {\n if (overrideAfterResponse) {\n await overrideAfterResponse(req, res, context);\n }\n },\n };\n}\n","import type { FarmPlugin, FarmPluginContext } from \"../plugin\";\nimport type { HeaderConfig } from \"../config\";\nimport type { FarmRequest, FarmResponse } from \"../types\";\n\nexport function createHeadersPlugin(\n headers: HeaderConfig[],\n {\n beforeRequest: overrideBeforeRequest,\n afterResponse: overrideAfterResponse,\n }: {\n beforeRequest?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n afterResponse?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n } = {},\n): FarmPlugin {\n return {\n name: \"farm:headers\",\n enforce: \"pre\",\n\n async beforeRequest(req, res, context) {\n if (overrideBeforeRequest) {\n await overrideBeforeRequest(req, res, context);\n }\n const url = new URL(req.url || \"/\", `http://${req.headers.host}`);\n const pathname = url.pathname;\n\n for (const headerConfig of headers) {\n const sourceRegex = new RegExp(\n \"^\" + headerConfig.source.replace(/\\*/g, \"(.*)\").replace(/\\//g, \"\\\\/\") + \"$\",\n );\n\n if (sourceRegex.test(pathname)) {\n for (const header of headerConfig.headers) {\n res.setHeader(header.key, header.value);\n }\n }\n }\n },\n\n async afterResponse(req, res, context) {\n if (overrideAfterResponse) {\n await overrideAfterResponse(req, res, context);\n }\n },\n };\n}\n","import type { FarmPlugin, FarmPluginContext } from \"../plugin\";\nimport type { RewriteConfig } from \"../config\";\nimport type { FarmRequest, FarmResponse } from \"../types\";\n\nexport function createRewritesPlugin(\n rewrites: RewriteConfig[],\n {\n beforeRequest: overrideBeforeRequest,\n afterResponse: overrideAfterResponse,\n }: {\n beforeRequest?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n afterResponse?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n } = {},\n): FarmPlugin {\n return {\n name: \"farm:rewrites\",\n enforce: \"pre\",\n\n async beforeRequest(req, res, context) {\n if (overrideBeforeRequest) {\n await overrideBeforeRequest(req, res, context);\n }\n const url = new URL(req.url || \"/\", `http://${req.headers.host}`);\n const pathname = url.pathname;\n\n for (const rewrite of rewrites) {\n const sourceRegex = new RegExp(\n \"^\" + rewrite.source.replace(/\\*/g, \"(.*)\").replace(/\\//g, \"\\\\/\") + \"$\",\n );\n\n if (sourceRegex.test(pathname)) {\n const newPath = pathname.replace(sourceRegex, rewrite.destination);\n req.url = newPath + url.search;\n break;\n }\n }\n },\n\n async afterResponse(req, res, context) {\n if (overrideAfterResponse) {\n await overrideAfterResponse(req, res, context);\n }\n },\n };\n}\n","import type { FarmPlugin, FarmPluginContext } from \"../plugin\";\nimport type { FarmRequest, FarmResponse } from \"../types\";\n\nexport function createEnvPlugin(\n env: Record<string, string>,\n {\n beforeRequest: overrideBeforeRequest,\n afterResponse: overrideAfterResponse,\n }: {\n beforeRequest?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n afterResponse?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n } = {},\n): FarmPlugin {\n return {\n name: \"farm:env\",\n\n configResolved(config, context) {\n for (const [key, value] of Object.entries(env)) {\n process.env[key] = value;\n }\n },\n\n async beforeRequest(req, res, context) {\n if (overrideBeforeRequest) {\n await overrideBeforeRequest(req, res, context);\n }\n },\n\n async afterResponse(req, res, context) {\n if (overrideAfterResponse) {\n await overrideAfterResponse(req, res, context);\n }\n },\n };\n}\n","import type { FarmPlugin, FarmPluginContext } from \"../plugin\";\nimport type { FarmRequest, FarmResponse } from \"../types\";\nimport * as zlib from \"zlib\";\n\nexport function createCompressionPlugin({\n beforeRequest: overrideBeforeRequest,\n afterResponse: overrideAfterResponse,\n}: {\n beforeRequest?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n afterResponse?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n} = {}): FarmPlugin {\n return {\n name: \"farm:compression\",\n enforce: \"post\",\n\n async beforeRequest(req, res, context) {\n if (overrideBeforeRequest) {\n await overrideBeforeRequest(req, res, context);\n }\n },\n\n async afterResponse(req, res, context) {\n if (overrideAfterResponse) {\n await overrideAfterResponse(req, res, context);\n }\n if (!context.isProd) return;\n\n const acceptEncoding = req.headers[\"accept-encoding\"] || \"\";\n\n if (acceptEncoding.includes(\"gzip\")) {\n res.setHeader(\"Content-Encoding\", \"gzip\");\n } else if (acceptEncoding.includes(\"br\")) {\n res.setHeader(\"Content-Encoding\", \"br\");\n }\n },\n };\n}\n","import type { FarmPlugin, FarmPluginContext } from \"../plugin\";\nimport type { FarmResponse } from \"../types\";\nimport type { FarmRequest } from \"../types\";\n\nexport function createLoggerPlugin({\n beforeRequest,\n afterResponse,\n}: {\n beforeRequest?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n afterResponse?: (\n req: FarmRequest,\n res: FarmResponse,\n context: FarmPluginContext,\n ) => void | Promise<void>;\n} = {}): FarmPlugin {\n const plugin: FarmPlugin = {\n name: \"farm:logger\",\n enforce: \"post\",\n };\n\n if (beforeRequest) {\n plugin.beforeRequest = async (req, res, context) => {\n await beforeRequest(req, res, context);\n };\n }\n if (afterResponse) {\n plugin.afterResponse = async (req, res, context) => {\n await afterResponse(req, res, context);\n };\n }\n\n return plugin;\n}\n"],"mappings":"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","names":[]}
|