netlify-cli 19.1.1 → 19.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/api/api.d.ts +4 -0
- package/dist/commands/api/api.d.ts.map +1 -0
- package/dist/commands/api/api.js +40 -0
- package/dist/commands/api/api.js.map +1 -0
- package/dist/commands/api/index.d.ts +3 -0
- package/dist/commands/api/index.d.ts.map +1 -0
- package/dist/commands/api/index.js +14 -0
- package/dist/commands/api/index.js.map +1 -0
- package/dist/commands/base-command.d.ts +85 -0
- package/dist/commands/base-command.d.ts.map +1 -0
- package/dist/commands/base-command.js +602 -0
- package/dist/commands/base-command.js.map +1 -0
- package/dist/commands/blobs/blobs-delete.d.ts +5 -0
- package/dist/commands/blobs/blobs-delete.d.ts.map +1 -0
- package/dist/commands/blobs/blobs-delete.js +27 -0
- package/dist/commands/blobs/blobs-delete.js.map +1 -0
- package/dist/commands/blobs/blobs-get.d.ts +8 -0
- package/dist/commands/blobs/blobs-get.d.ts.map +1 -0
- package/dist/commands/blobs/blobs-get.js +32 -0
- package/dist/commands/blobs/blobs-get.js.map +1 -0
- package/dist/commands/blobs/blobs-list.d.ts +10 -0
- package/dist/commands/blobs/blobs-list.d.ts.map +1 -0
- package/dist/commands/blobs/blobs-list.js +37 -0
- package/dist/commands/blobs/blobs-list.js.map +1 -0
- package/dist/commands/blobs/blobs-set.d.ts +9 -0
- package/dist/commands/blobs/blobs-set.d.ts.map +1 -0
- package/dist/commands/blobs/blobs-set.js +48 -0
- package/dist/commands/blobs/blobs-set.js.map +1 -0
- package/dist/commands/blobs/blobs.d.ts +6 -0
- package/dist/commands/blobs/blobs.d.ts.map +1 -0
- package/dist/commands/blobs/blobs.js +75 -0
- package/dist/commands/blobs/blobs.js.map +1 -0
- package/dist/commands/build/build.d.ts +6 -0
- package/dist/commands/build/build.d.ts.map +1 -0
- package/dist/commands/build/build.js +39 -0
- package/dist/commands/build/build.js.map +1 -0
- package/dist/commands/build/index.d.ts +3 -0
- package/dist/commands/build/index.d.ts.map +1 -0
- package/dist/commands/build/index.js +14 -0
- package/dist/commands/build/index.js.map +1 -0
- package/dist/commands/completion/completion.d.ts +5 -0
- package/dist/commands/completion/completion.d.ts.map +1 -0
- package/dist/commands/completion/completion.js +69 -0
- package/dist/commands/completion/completion.js.map +1 -0
- package/dist/commands/completion/index.d.ts +3 -0
- package/dist/commands/completion/index.d.ts.map +1 -0
- package/dist/commands/completion/index.js +27 -0
- package/dist/commands/completion/index.js.map +1 -0
- package/dist/commands/deploy/deploy.d.ts +4 -0
- package/dist/commands/deploy/deploy.d.ts.map +1 -0
- package/dist/commands/deploy/deploy.js +720 -0
- package/dist/commands/deploy/deploy.js.map +1 -0
- package/dist/commands/deploy/index.d.ts +3 -0
- package/dist/commands/deploy/index.d.ts.map +1 -0
- package/dist/commands/deploy/index.js +107 -0
- package/dist/commands/deploy/index.js.map +1 -0
- package/dist/commands/dev/dev-exec.d.ts +5 -0
- package/dist/commands/dev/dev-exec.d.ts.map +1 -0
- package/dist/commands/dev/dev-exec.js +21 -0
- package/dist/commands/dev/dev-exec.js.map +1 -0
- package/dist/commands/dev/dev.d.ts +5 -0
- package/dist/commands/dev/dev.d.ts.map +1 -0
- package/dist/commands/dev/dev.js +249 -0
- package/dist/commands/dev/dev.js.map +1 -0
- package/dist/commands/dev/index.d.ts +2 -0
- package/dist/commands/dev/index.d.ts.map +1 -0
- package/dist/commands/dev/index.js +2 -0
- package/dist/commands/dev/index.js.map +1 -0
- package/dist/commands/env/env-clone.d.ts +4 -0
- package/dist/commands/env/env-clone.d.ts.map +1 -0
- package/dist/commands/env/env-clone.js +83 -0
- package/dist/commands/env/env-clone.js.map +1 -0
- package/dist/commands/env/env-get.d.ts +4 -0
- package/dist/commands/env/env-get.d.ts.map +1 -0
- package/dist/commands/env/env-get.js +28 -0
- package/dist/commands/env/env-get.js.map +1 -0
- package/dist/commands/env/env-import.d.ts +4 -0
- package/dist/commands/env/env-import.d.ts.map +1 -0
- package/dist/commands/env/env-import.js +78 -0
- package/dist/commands/env/env-import.js.map +1 -0
- package/dist/commands/env/env-list.d.ts +4 -0
- package/dist/commands/env/env-list.d.ts.map +1 -0
- package/dist/commands/env/env-list.js +85 -0
- package/dist/commands/env/env-list.js.map +1 -0
- package/dist/commands/env/env-set.d.ts +4 -0
- package/dist/commands/env/env-set.d.ts.map +1 -0
- package/dist/commands/env/env-set.js +123 -0
- package/dist/commands/env/env-set.js.map +1 -0
- package/dist/commands/env/env-unset.d.ts +4 -0
- package/dist/commands/env/env-unset.d.ts.map +1 -0
- package/dist/commands/env/env-unset.js +76 -0
- package/dist/commands/env/env-unset.js.map +1 -0
- package/dist/commands/env/env.d.ts +3 -0
- package/dist/commands/env/env.d.ts.map +1 -0
- package/dist/commands/env/env.js +129 -0
- package/dist/commands/env/env.js.map +1 -0
- package/dist/commands/env/index.d.ts +2 -0
- package/dist/commands/env/index.d.ts.map +1 -0
- package/dist/commands/env/index.js +2 -0
- package/dist/commands/env/index.js.map +1 -0
- package/dist/commands/functions/functions-build.d.ts +4 -0
- package/dist/commands/functions/functions-build.d.ts.map +1 -0
- package/dist/commands/functions/functions-build.js +27 -0
- package/dist/commands/functions/functions-build.js.map +1 -0
- package/dist/commands/functions/functions-create.d.ts +4 -0
- package/dist/commands/functions/functions-create.d.ts.map +1 -0
- package/dist/commands/functions/functions-create.js +635 -0
- package/dist/commands/functions/functions-create.js.map +1 -0
- package/dist/commands/functions/functions-invoke.d.ts +4 -0
- package/dist/commands/functions/functions-invoke.d.ts.map +1 -0
- package/dist/commands/functions/functions-invoke.js +210 -0
- package/dist/commands/functions/functions-invoke.js.map +1 -0
- package/dist/commands/functions/functions-list.d.ts +4 -0
- package/dist/commands/functions/functions-list.d.ts.map +1 -0
- package/dist/commands/functions/functions-list.js +41 -0
- package/dist/commands/functions/functions-list.js.map +1 -0
- package/dist/commands/functions/functions-serve.d.ts +4 -0
- package/dist/commands/functions/functions-serve.d.ts.map +1 -0
- package/dist/commands/functions/functions-serve.js +52 -0
- package/dist/commands/functions/functions-serve.js.map +1 -0
- package/dist/commands/functions/functions.d.ts +3 -0
- package/dist/commands/functions/functions.d.ts.map +1 -0
- package/dist/commands/functions/functions.js +101 -0
- package/dist/commands/functions/functions.js.map +1 -0
- package/dist/commands/functions/index.d.ts +2 -0
- package/dist/commands/functions/index.d.ts.map +1 -0
- package/dist/commands/functions/index.js +2 -0
- package/dist/commands/functions/index.js.map +1 -0
- package/dist/commands/index.d.ts +3 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +3 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/init/index.d.ts +3 -0
- package/dist/commands/init/index.d.ts.map +1 -0
- package/dist/commands/init/index.js +10 -0
- package/dist/commands/init/index.js.map +1 -0
- package/dist/commands/init/init.d.ts +4 -0
- package/dist/commands/init/init.d.ts.map +1 -0
- package/dist/commands/init/init.js +194 -0
- package/dist/commands/init/init.js.map +1 -0
- package/dist/commands/link/index.d.ts +3 -0
- package/dist/commands/link/index.d.ts.map +1 -0
- package/dist/commands/link/index.js +12 -0
- package/dist/commands/link/index.js.map +1 -0
- package/dist/commands/link/link.d.ts +4 -0
- package/dist/commands/link/link.d.ts.map +1 -0
- package/dist/commands/link/link.js +295 -0
- package/dist/commands/link/link.js.map +1 -0
- package/dist/commands/login/index.d.ts +3 -0
- package/dist/commands/login/index.d.ts.map +1 -0
- package/dist/commands/login/index.js +10 -0
- package/dist/commands/login/index.js.map +1 -0
- package/dist/commands/login/login.d.ts +4 -0
- package/dist/commands/login/login.d.ts.map +1 -0
- package/dist/commands/login/login.js +30 -0
- package/dist/commands/login/login.js.map +1 -0
- package/dist/commands/logout/index.d.ts +3 -0
- package/dist/commands/logout/index.d.ts.map +1 -0
- package/dist/commands/logout/index.js +8 -0
- package/dist/commands/logout/index.js.map +1 -0
- package/dist/commands/logout/logout.d.ts +4 -0
- package/dist/commands/logout/logout.d.ts.map +1 -0
- package/dist/commands/logout/logout.js +23 -0
- package/dist/commands/logout/logout.js.map +1 -0
- package/dist/commands/logs/build.d.ts +8 -0
- package/dist/commands/logs/build.d.ts.map +1 -0
- package/dist/commands/logs/build.js +72 -0
- package/dist/commands/logs/build.js.map +1 -0
- package/dist/commands/logs/functions.d.ts +4 -0
- package/dist/commands/logs/functions.d.ts.map +1 -0
- package/dist/commands/logs/functions.js +79 -0
- package/dist/commands/logs/functions.js.map +1 -0
- package/dist/commands/logs/index.d.ts +5 -0
- package/dist/commands/logs/index.d.ts.map +1 -0
- package/dist/commands/logs/index.js +40 -0
- package/dist/commands/logs/index.js.map +1 -0
- package/dist/commands/logs/log-levels.d.ts +11 -0
- package/dist/commands/logs/log-levels.d.ts.map +1 -0
- package/dist/commands/logs/log-levels.js +12 -0
- package/dist/commands/logs/log-levels.js.map +1 -0
- package/dist/commands/main.d.ts +38 -0
- package/dist/commands/main.d.ts.map +1 -0
- package/dist/commands/main.js +215 -0
- package/dist/commands/main.js.map +1 -0
- package/dist/commands/open/index.d.ts +3 -0
- package/dist/commands/open/index.d.ts.map +1 -0
- package/dist/commands/open/index.js +32 -0
- package/dist/commands/open/index.js.map +1 -0
- package/dist/commands/open/open-admin.d.ts +4 -0
- package/dist/commands/open/open-admin.d.ts.map +1 -0
- package/dist/commands/open/open-admin.js +12 -0
- package/dist/commands/open/open-admin.js.map +1 -0
- package/dist/commands/open/open-site.d.ts +4 -0
- package/dist/commands/open/open-site.d.ts.map +1 -0
- package/dist/commands/open/open-site.js +13 -0
- package/dist/commands/open/open-site.js.map +1 -0
- package/dist/commands/open/open.d.ts +4 -0
- package/dist/commands/open/open.d.ts.map +1 -0
- package/dist/commands/open/open.js +14 -0
- package/dist/commands/open/open.js.map +1 -0
- package/dist/commands/recipes/common.d.ts +3 -0
- package/dist/commands/recipes/common.d.ts.map +1 -0
- package/dist/commands/recipes/common.js +26 -0
- package/dist/commands/recipes/common.js.map +1 -0
- package/dist/commands/recipes/index.d.ts +3 -0
- package/dist/commands/recipes/index.d.ts.map +1 -0
- package/dist/commands/recipes/index.js +21 -0
- package/dist/commands/recipes/index.js.map +1 -0
- package/dist/commands/recipes/recipes-list.d.ts +5 -0
- package/dist/commands/recipes/recipes-list.d.ts.map +1 -0
- package/dist/commands/recipes/recipes-list.js +15 -0
- package/dist/commands/recipes/recipes-list.js.map +1 -0
- package/dist/commands/recipes/recipes.d.ts +12 -0
- package/dist/commands/recipes/recipes.d.ts.map +1 -0
- package/dist/commands/recipes/recipes.js +52 -0
- package/dist/commands/recipes/recipes.js.map +1 -0
- package/dist/commands/serve/index.d.ts +3 -0
- package/dist/commands/serve/index.d.ts.map +1 -0
- package/dist/commands/serve/index.js +26 -0
- package/dist/commands/serve/index.js.map +1 -0
- package/dist/commands/serve/serve.d.ts +4 -0
- package/dist/commands/serve/serve.d.ts.map +1 -0
- package/dist/commands/serve/serve.js +149 -0
- package/dist/commands/serve/serve.js.map +1 -0
- package/dist/commands/sites/index.d.ts +2 -0
- package/dist/commands/sites/index.d.ts.map +1 -0
- package/dist/commands/sites/index.js +2 -0
- package/dist/commands/sites/index.js.map +1 -0
- package/dist/commands/sites/sites-create-template.d.ts +5 -0
- package/dist/commands/sites/sites-create-template.d.ts.map +1 -0
- package/dist/commands/sites/sites-create-template.js +230 -0
- package/dist/commands/sites/sites-create-template.js.map +1 -0
- package/dist/commands/sites/sites-create.d.ts +7 -0
- package/dist/commands/sites/sites-create.d.ts.map +1 -0
- package/dist/commands/sites/sites-create.js +125 -0
- package/dist/commands/sites/sites-create.js.map +1 -0
- package/dist/commands/sites/sites-delete.d.ts +4 -0
- package/dist/commands/sites/sites-delete.d.ts.map +1 -0
- package/dist/commands/sites/sites-delete.js +77 -0
- package/dist/commands/sites/sites-delete.js.map +1 -0
- package/dist/commands/sites/sites-list.d.ts +4 -0
- package/dist/commands/sites/sites-list.d.ts.map +1 -0
- package/dist/commands/sites/sites-list.js +59 -0
- package/dist/commands/sites/sites-list.js.map +1 -0
- package/dist/commands/sites/sites.d.ts +5 -0
- package/dist/commands/sites/sites.d.ts.map +1 -0
- package/dist/commands/sites/sites.js +77 -0
- package/dist/commands/sites/sites.js.map +1 -0
- package/dist/commands/status/index.d.ts +3 -0
- package/dist/commands/status/index.d.ts.map +1 -0
- package/dist/commands/status/index.js +21 -0
- package/dist/commands/status/index.js.map +1 -0
- package/dist/commands/status/status-hooks.d.ts +4 -0
- package/dist/commands/status/status-hooks.d.ts.map +1 -0
- package/dist/commands/status/status-hooks.js +29 -0
- package/dist/commands/status/status-hooks.js.map +1 -0
- package/dist/commands/status/status.d.ts +4 -0
- package/dist/commands/status/status.d.ts.map +1 -0
- package/dist/commands/status/status.js +78 -0
- package/dist/commands/status/status.js.map +1 -0
- package/dist/commands/switch/index.d.ts +3 -0
- package/dist/commands/switch/index.d.ts.map +1 -0
- package/dist/commands/switch/index.js +8 -0
- package/dist/commands/switch/index.js.map +1 -0
- package/dist/commands/switch/switch.d.ts +4 -0
- package/dist/commands/switch/switch.d.ts.map +1 -0
- package/dist/commands/switch/switch.js +31 -0
- package/dist/commands/switch/switch.js.map +1 -0
- package/dist/commands/unlink/index.d.ts +3 -0
- package/dist/commands/unlink/index.d.ts.map +1 -0
- package/dist/commands/unlink/index.js +8 -0
- package/dist/commands/unlink/index.js.map +1 -0
- package/dist/commands/unlink/unlink.d.ts +4 -0
- package/dist/commands/unlink/unlink.d.ts.map +1 -0
- package/dist/commands/unlink/unlink.js +22 -0
- package/dist/commands/unlink/unlink.js.map +1 -0
- package/dist/commands/watch/index.d.ts +3 -0
- package/dist/commands/watch/index.d.ts.map +1 -0
- package/dist/commands/watch/index.js +9 -0
- package/dist/commands/watch/index.js.map +1 -0
- package/dist/commands/watch/watch.d.ts +4 -0
- package/dist/commands/watch/watch.d.ts.map +1 -0
- package/dist/commands/watch/watch.js +90 -0
- package/dist/commands/watch/watch.js.map +1 -0
- package/dist/lib/account.d.ts +6 -0
- package/dist/lib/account.d.ts.map +1 -0
- package/dist/lib/account.js +14 -0
- package/dist/lib/account.js.map +1 -0
- package/dist/lib/api.d.ts +10 -0
- package/dist/lib/api.d.ts.map +1 -0
- package/dist/lib/api.js +25 -0
- package/dist/lib/api.js.map +1 -0
- package/dist/lib/blobs/blobs.d.ts +47 -0
- package/dist/lib/blobs/blobs.d.ts.map +1 -0
- package/dist/lib/blobs/blobs.js +82 -0
- package/dist/lib/blobs/blobs.js.map +1 -0
- package/dist/lib/build.d.ts +43 -0
- package/dist/lib/build.d.ts.map +1 -0
- package/dist/lib/build.js +73 -0
- package/dist/lib/build.js.map +1 -0
- package/dist/lib/completion/constants.d.ts +2 -0
- package/dist/lib/completion/constants.d.ts.map +1 -0
- package/dist/lib/completion/constants.js +3 -0
- package/dist/lib/completion/constants.js.map +1 -0
- package/dist/lib/completion/generate-autocompletion.d.ts +8 -0
- package/dist/lib/completion/generate-autocompletion.d.ts.map +1 -0
- package/dist/lib/completion/generate-autocompletion.js +42 -0
- package/dist/lib/completion/generate-autocompletion.js.map +1 -0
- package/dist/lib/completion/get-autocompletion.d.ts +13 -0
- package/dist/lib/completion/get-autocompletion.d.ts.map +1 -0
- package/dist/lib/completion/get-autocompletion.js +45 -0
- package/dist/lib/completion/get-autocompletion.js.map +1 -0
- package/dist/lib/completion/index.d.ts +2 -0
- package/dist/lib/completion/index.d.ts.map +1 -0
- package/dist/lib/completion/index.js +2 -0
- package/dist/lib/completion/index.js.map +1 -0
- package/dist/lib/completion/script.d.ts +3 -0
- package/dist/lib/completion/script.d.ts.map +1 -0
- package/dist/lib/completion/script.js +19 -0
- package/dist/lib/completion/script.js.map +1 -0
- package/dist/lib/edge-functions/bootstrap.d.ts +3 -0
- package/dist/lib/edge-functions/bootstrap.d.ts.map +1 -0
- package/dist/lib/edge-functions/bootstrap.js +20 -0
- package/dist/lib/edge-functions/bootstrap.js.map +1 -0
- package/dist/lib/edge-functions/consts.d.ts +11 -0
- package/dist/lib/edge-functions/consts.d.ts.map +1 -0
- package/dist/lib/edge-functions/consts.js +13 -0
- package/dist/lib/edge-functions/consts.js.map +1 -0
- package/dist/lib/edge-functions/deploy.d.ts +8 -0
- package/dist/lib/edge-functions/deploy.d.ts.map +1 -0
- package/dist/lib/edge-functions/deploy.js +34 -0
- package/dist/lib/edge-functions/deploy.js.map +1 -0
- package/dist/lib/edge-functions/editor-helper.d.ts +9 -0
- package/dist/lib/edge-functions/editor-helper.d.ts.map +1 -0
- package/dist/lib/edge-functions/editor-helper.js +31 -0
- package/dist/lib/edge-functions/editor-helper.js.map +1 -0
- package/dist/lib/edge-functions/headers.d.ts +35 -0
- package/dist/lib/edge-functions/headers.d.ts.map +1 -0
- package/dist/lib/edge-functions/headers.js +42 -0
- package/dist/lib/edge-functions/headers.js.map +1 -0
- package/dist/lib/edge-functions/proxy.d.ts +39 -0
- package/dist/lib/edge-functions/proxy.d.ts.map +1 -0
- package/dist/lib/edge-functions/proxy.js +156 -0
- package/dist/lib/edge-functions/proxy.js.map +1 -0
- package/dist/lib/edge-functions/registry.d.ts +107 -0
- package/dist/lib/edge-functions/registry.d.ts.map +1 -0
- package/dist/lib/edge-functions/registry.js +451 -0
- package/dist/lib/edge-functions/registry.js.map +1 -0
- package/dist/lib/exec-fetcher.d.ts +31 -0
- package/dist/lib/exec-fetcher.d.ts.map +1 -0
- package/dist/lib/exec-fetcher.js +132 -0
- package/dist/lib/exec-fetcher.js.map +1 -0
- package/dist/lib/fs.d.ts +12 -0
- package/dist/lib/fs.d.ts.map +1 -0
- package/dist/lib/fs.js +45 -0
- package/dist/lib/fs.js.map +1 -0
- package/dist/lib/functions/background.d.ts +3 -0
- package/dist/lib/functions/background.d.ts.map +1 -0
- package/dist/lib/functions/background.js +19 -0
- package/dist/lib/functions/background.js.map +1 -0
- package/dist/lib/functions/config.d.ts +6 -0
- package/dist/lib/functions/config.d.ts.map +1 -0
- package/dist/lib/functions/config.js +25 -0
- package/dist/lib/functions/config.js.map +1 -0
- package/dist/lib/functions/form-submissions-handler.d.ts +11 -0
- package/dist/lib/functions/form-submissions-handler.d.ts.map +1 -0
- package/dist/lib/functions/form-submissions-handler.js +144 -0
- package/dist/lib/functions/form-submissions-handler.js.map +1 -0
- package/dist/lib/functions/local-proxy.d.ts +9 -0
- package/dist/lib/functions/local-proxy.d.ts.map +1 -0
- package/dist/lib/functions/local-proxy.js +40 -0
- package/dist/lib/functions/local-proxy.js.map +1 -0
- package/dist/lib/functions/memoized-build.d.ts +6 -0
- package/dist/lib/functions/memoized-build.d.ts.map +1 -0
- package/dist/lib/functions/memoized-build.js +30 -0
- package/dist/lib/functions/memoized-build.js.map +1 -0
- package/dist/lib/functions/netlify-function.d.ts +71 -0
- package/dist/lib/functions/netlify-function.d.ts.map +1 -0
- package/dist/lib/functions/netlify-function.js +266 -0
- package/dist/lib/functions/netlify-function.js.map +1 -0
- package/dist/lib/functions/registry.d.ts +106 -0
- package/dist/lib/functions/registry.d.ts.map +1 -0
- package/dist/lib/functions/registry.js +485 -0
- package/dist/lib/functions/registry.js.map +1 -0
- package/dist/lib/functions/runtimes/go/index.d.ts +25 -0
- package/dist/lib/functions/runtimes/go/index.d.ts.map +1 -0
- package/dist/lib/functions/runtimes/go/index.js +68 -0
- package/dist/lib/functions/runtimes/go/index.js.map +1 -0
- package/dist/lib/functions/runtimes/index.d.ts +42 -0
- package/dist/lib/functions/runtimes/index.d.ts.map +1 -0
- package/dist/lib/functions/runtimes/index.js +10 -0
- package/dist/lib/functions/runtimes/index.js.map +1 -0
- package/dist/lib/functions/runtimes/js/builders/netlify-lambda.d.ts +19 -0
- package/dist/lib/functions/runtimes/js/builders/netlify-lambda.d.ts.map +1 -0
- package/dist/lib/functions/runtimes/js/builders/netlify-lambda.js +62 -0
- package/dist/lib/functions/runtimes/js/builders/netlify-lambda.js.map +1 -0
- package/dist/lib/functions/runtimes/js/builders/zisi.d.ts +46 -0
- package/dist/lib/functions/runtimes/js/builders/zisi.d.ts.map +1 -0
- package/dist/lib/functions/runtimes/js/builders/zisi.js +184 -0
- package/dist/lib/functions/runtimes/js/builders/zisi.js.map +1 -0
- package/dist/lib/functions/runtimes/js/constants.d.ts +2 -0
- package/dist/lib/functions/runtimes/js/constants.d.ts.map +1 -0
- package/dist/lib/functions/runtimes/js/constants.js +2 -0
- package/dist/lib/functions/runtimes/js/constants.js.map +1 -0
- package/dist/lib/functions/runtimes/js/index.d.ts +25 -0
- package/dist/lib/functions/runtimes/js/index.d.ts.map +1 -0
- package/dist/lib/functions/runtimes/js/index.js +112 -0
- package/dist/lib/functions/runtimes/js/index.js.map +1 -0
- package/dist/lib/functions/runtimes/js/worker.d.ts +2 -0
- package/dist/lib/functions/runtimes/js/worker.d.ts.map +1 -0
- package/dist/lib/functions/runtimes/js/worker.js +53 -0
- package/dist/lib/functions/runtimes/js/worker.js.map +1 -0
- package/dist/lib/functions/runtimes/rust/index.d.ts +25 -0
- package/dist/lib/functions/runtimes/rust/index.d.ts.map +1 -0
- package/dist/lib/functions/runtimes/rust/index.js +69 -0
- package/dist/lib/functions/runtimes/rust/index.js.map +1 -0
- package/dist/lib/functions/scheduled.d.ts +17 -0
- package/dist/lib/functions/scheduled.d.ts.map +1 -0
- package/dist/lib/functions/scheduled.js +81 -0
- package/dist/lib/functions/scheduled.js.map +1 -0
- package/dist/lib/functions/server.d.ts +31 -0
- package/dist/lib/functions/server.d.ts.map +1 -0
- package/dist/lib/functions/server.js +303 -0
- package/dist/lib/functions/server.js.map +1 -0
- package/dist/lib/functions/synchronous.d.ts +8 -0
- package/dist/lib/functions/synchronous.d.ts.map +1 -0
- package/dist/lib/functions/synchronous.js +141 -0
- package/dist/lib/functions/synchronous.js.map +1 -0
- package/dist/lib/functions/utils.d.ts +11 -0
- package/dist/lib/functions/utils.d.ts.map +1 -0
- package/dist/lib/functions/utils.js +47 -0
- package/dist/lib/functions/utils.js.map +1 -0
- package/dist/lib/geo-location.d.ts +46 -0
- package/dist/lib/geo-location.d.ts.map +1 -0
- package/dist/lib/geo-location.js +108 -0
- package/dist/lib/geo-location.js.map +1 -0
- package/dist/lib/http-agent.d.ts +18 -0
- package/dist/lib/http-agent.d.ts.map +1 -0
- package/dist/lib/http-agent.js +97 -0
- package/dist/lib/http-agent.js.map +1 -0
- package/dist/lib/images/proxy.d.ts +34 -0
- package/dist/lib/images/proxy.d.ts.map +1 -0
- package/dist/lib/images/proxy.js +122 -0
- package/dist/lib/images/proxy.js.map +1 -0
- package/dist/lib/log.d.ts +3 -0
- package/dist/lib/log.d.ts.map +1 -0
- package/dist/lib/log.js +16 -0
- package/dist/lib/log.js.map +1 -0
- package/dist/lib/path.d.ts +2 -0
- package/dist/lib/path.d.ts.map +1 -0
- package/dist/lib/path.js +3 -0
- package/dist/lib/path.js.map +1 -0
- package/dist/lib/render-error-template.d.ts +3 -0
- package/dist/lib/render-error-template.d.ts.map +1 -0
- package/dist/lib/render-error-template.js +21 -0
- package/dist/lib/render-error-template.js.map +1 -0
- package/dist/lib/settings.d.ts +14 -0
- package/dist/lib/settings.d.ts.map +1 -0
- package/dist/lib/settings.js +19 -0
- package/dist/lib/settings.js.map +1 -0
- package/dist/lib/spinner.d.ts +23 -0
- package/dist/lib/spinner.d.ts.map +1 -0
- package/dist/lib/spinner.js +30 -0
- package/dist/lib/spinner.js.map +1 -0
- package/dist/lib/string.d.ts +2 -0
- package/dist/lib/string.d.ts.map +1 -0
- package/dist/lib/string.js +6 -0
- package/dist/lib/string.js.map +1 -0
- package/dist/recipes/ai-context/context.d.ts +33 -0
- package/dist/recipes/ai-context/context.d.ts.map +1 -0
- package/dist/recipes/ai-context/context.js +101 -0
- package/dist/recipes/ai-context/context.js.map +1 -0
- package/dist/recipes/ai-context/index.d.ts +4 -0
- package/dist/recipes/ai-context/index.d.ts.map +1 -0
- package/dist/recipes/ai-context/index.js +86 -0
- package/dist/recipes/ai-context/index.js.map +1 -0
- package/dist/recipes/blobs-migrate/index.d.ts +9 -0
- package/dist/recipes/blobs-migrate/index.d.ts.map +1 -0
- package/dist/recipes/blobs-migrate/index.js +77 -0
- package/dist/recipes/blobs-migrate/index.js.map +1 -0
- package/dist/recipes/vscode/index.d.ts +12 -0
- package/dist/recipes/vscode/index.d.ts.map +1 -0
- package/dist/recipes/vscode/index.js +91 -0
- package/dist/recipes/vscode/index.js.map +1 -0
- package/dist/recipes/vscode/settings.d.ts +18 -0
- package/dist/recipes/vscode/settings.d.ts.map +1 -0
- package/dist/recipes/vscode/settings.js +61 -0
- package/dist/recipes/vscode/settings.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/dist/utils/addons/prepare.d.ts +13 -0
- package/dist/utils/addons/prepare.d.ts.map +1 -0
- package/dist/utils/addons/prepare.js +26 -0
- package/dist/utils/addons/prepare.js.map +1 -0
- package/dist/utils/banner.d.ts +4 -0
- package/dist/utils/banner.d.ts.map +1 -0
- package/dist/utils/banner.js +12 -0
- package/dist/utils/banner.js.map +1 -0
- package/dist/utils/build-info.d.ts +21 -0
- package/dist/utils/build-info.d.ts.map +1 -0
- package/dist/utils/build-info.js +124 -0
- package/dist/utils/build-info.js.map +1 -0
- package/dist/utils/command-helpers.d.ts +116 -0
- package/dist/utils/command-helpers.d.ts.map +1 -0
- package/dist/utils/command-helpers.js +264 -0
- package/dist/utils/command-helpers.js.map +1 -0
- package/dist/utils/copy-template-dir/copy-template-dir.d.ts +2 -0
- package/dist/utils/copy-template-dir/copy-template-dir.d.ts.map +1 -0
- package/dist/utils/copy-template-dir/copy-template-dir.js +75 -0
- package/dist/utils/copy-template-dir/copy-template-dir.js.map +1 -0
- package/dist/utils/create-deferred.d.ts +7 -0
- package/dist/utils/create-deferred.d.ts.map +1 -0
- package/dist/utils/create-deferred.js +11 -0
- package/dist/utils/create-deferred.js.map +1 -0
- package/dist/utils/create-stream-promise.d.ts +5 -0
- package/dist/utils/create-stream-promise.d.ts.map +1 -0
- package/dist/utils/create-stream-promise.js +46 -0
- package/dist/utils/create-stream-promise.js.map +1 -0
- package/dist/utils/deploy/constants.d.ts +10 -0
- package/dist/utils/deploy/constants.d.ts.map +1 -0
- package/dist/utils/deploy/constants.js +18 -0
- package/dist/utils/deploy/constants.js.map +1 -0
- package/dist/utils/deploy/deploy-site.d.ts +24 -0
- package/dist/utils/deploy/deploy-site.d.ts.map +1 -0
- package/dist/utils/deploy/deploy-site.js +157 -0
- package/dist/utils/deploy/deploy-site.js.map +1 -0
- package/dist/utils/deploy/hash-config.d.ts +10 -0
- package/dist/utils/deploy/hash-config.d.ts.map +1 -0
- package/dist/utils/deploy/hash-config.js +26 -0
- package/dist/utils/deploy/hash-config.js.map +1 -0
- package/dist/utils/deploy/hash-files.d.ts +14 -0
- package/dist/utils/deploy/hash-files.d.ts.map +1 -0
- package/dist/utils/deploy/hash-files.js +31 -0
- package/dist/utils/deploy/hash-files.js.map +1 -0
- package/dist/utils/deploy/hash-fns.d.ts +17 -0
- package/dist/utils/deploy/hash-fns.d.ts.map +1 -0
- package/dist/utils/deploy/hash-fns.js +143 -0
- package/dist/utils/deploy/hash-fns.js.map +1 -0
- package/dist/utils/deploy/hasher-segments.d.ts +14 -0
- package/dist/utils/deploy/hasher-segments.d.ts.map +1 -0
- package/dist/utils/deploy/hasher-segments.js +69 -0
- package/dist/utils/deploy/hasher-segments.js.map +1 -0
- package/dist/utils/deploy/upload-files.d.ts +7 -0
- package/dist/utils/deploy/upload-files.d.ts.map +1 -0
- package/dist/utils/deploy/upload-files.js +113 -0
- package/dist/utils/deploy/upload-files.js.map +1 -0
- package/dist/utils/deploy/util.d.ts +5 -0
- package/dist/utils/deploy/util.d.ts.map +1 -0
- package/dist/utils/deploy/util.js +94 -0
- package/dist/utils/deploy/util.js.map +1 -0
- package/dist/utils/detect-server-settings.d.ts +15 -0
- package/dist/utils/detect-server-settings.d.ts.map +1 -0
- package/dist/utils/detect-server-settings.js +252 -0
- package/dist/utils/detect-server-settings.js.map +1 -0
- package/dist/utils/dev.d.ts +62 -0
- package/dist/utils/dev.d.ts.map +1 -0
- package/dist/utils/dev.js +197 -0
- package/dist/utils/dev.js.map +1 -0
- package/dist/utils/dot-env.d.ts +26 -0
- package/dist/utils/dot-env.d.ts.map +1 -0
- package/dist/utils/dot-env.js +43 -0
- package/dist/utils/dot-env.js.map +1 -0
- package/dist/utils/env/index.d.ts +100 -0
- package/dist/utils/env/index.d.ts.map +1 -0
- package/dist/utils/env/index.js +231 -0
- package/dist/utils/env/index.js.map +1 -0
- package/dist/utils/execa.d.ts +4 -0
- package/dist/utils/execa.d.ts.map +1 -0
- package/dist/utils/execa.js +16 -0
- package/dist/utils/execa.js.map +1 -0
- package/dist/utils/feature-flags.d.ts +21 -0
- package/dist/utils/feature-flags.d.ts.map +1 -0
- package/dist/utils/feature-flags.js +25 -0
- package/dist/utils/feature-flags.js.map +1 -0
- package/dist/utils/framework-server.d.ts +13 -0
- package/dist/utils/framework-server.d.ts.map +1 -0
- package/dist/utils/framework-server.js +61 -0
- package/dist/utils/framework-server.js.map +1 -0
- package/dist/utils/frameworks-api.d.ts +20 -0
- package/dist/utils/frameworks-api.d.ts.map +1 -0
- package/dist/utils/frameworks-api.js +54 -0
- package/dist/utils/frameworks-api.js.map +1 -0
- package/dist/utils/functions/constants.d.ts +2 -0
- package/dist/utils/functions/constants.d.ts.map +1 -0
- package/dist/utils/functions/constants.js +2 -0
- package/dist/utils/functions/constants.js.map +1 -0
- package/dist/utils/functions/functions.d.ts +35 -0
- package/dist/utils/functions/functions.d.ts.map +1 -0
- package/dist/utils/functions/functions.js +41 -0
- package/dist/utils/functions/functions.js.map +1 -0
- package/dist/utils/functions/get-functions.d.ts +10 -0
- package/dist/utils/functions/get-functions.d.ts.map +1 -0
- package/dist/utils/functions/get-functions.js +35 -0
- package/dist/utils/functions/get-functions.js.map +1 -0
- package/dist/utils/functions/index.d.ts +4 -0
- package/dist/utils/functions/index.d.ts.map +1 -0
- package/dist/utils/functions/index.js +4 -0
- package/dist/utils/functions/index.js.map +1 -0
- package/dist/utils/get-global-config.d.ts +7 -0
- package/dist/utils/get-global-config.d.ts.map +1 -0
- package/dist/utils/get-global-config.js +41 -0
- package/dist/utils/get-global-config.js.map +1 -0
- package/dist/utils/get-package-json.d.ts +3 -0
- package/dist/utils/get-package-json.d.ts.map +1 -0
- package/dist/utils/get-package-json.js +16 -0
- package/dist/utils/get-package-json.js.map +1 -0
- package/dist/utils/get-repo-data.d.ts +31 -0
- package/dist/utils/get-repo-data.d.ts.map +1 -0
- package/dist/utils/get-repo-data.js +66 -0
- package/dist/utils/get-repo-data.js.map +1 -0
- package/dist/utils/get-site.d.ts +2 -0
- package/dist/utils/get-site.d.ts.map +1 -0
- package/dist/utils/get-site.js +22 -0
- package/dist/utils/get-site.js.map +1 -0
- package/dist/utils/gh-auth.d.ts +11 -0
- package/dist/utils/gh-auth.d.ts.map +1 -0
- package/dist/utils/gh-auth.js +105 -0
- package/dist/utils/gh-auth.js.map +1 -0
- package/dist/utils/gitignore.d.ts +2 -0
- package/dist/utils/gitignore.d.ts.map +1 -0
- package/dist/utils/gitignore.js +36 -0
- package/dist/utils/gitignore.js.map +1 -0
- package/dist/utils/headers.d.ts +21 -0
- package/dist/utils/headers.d.ts.map +1 -0
- package/dist/utils/headers.js +51 -0
- package/dist/utils/headers.js.map +1 -0
- package/dist/utils/hooks/requires-site-info.d.ts +7 -0
- package/dist/utils/hooks/requires-site-info.d.ts.map +1 -0
- package/dist/utils/hooks/requires-site-info.js +31 -0
- package/dist/utils/hooks/requires-site-info.js.map +1 -0
- package/dist/utils/init/config-github.d.ts +21 -0
- package/dist/utils/init/config-github.d.ts.map +1 -0
- package/dist/utils/init/config-github.js +247 -0
- package/dist/utils/init/config-github.js.map +1 -0
- package/dist/utils/init/config-manual.d.ts +12 -0
- package/dist/utils/init/config-manual.d.ts.map +1 -0
- package/dist/utils/init/config-manual.js +109 -0
- package/dist/utils/init/config-manual.js.map +1 -0
- package/dist/utils/init/config.d.ts +14 -0
- package/dist/utils/init/config.d.ts.map +1 -0
- package/dist/utils/init/config.js +38 -0
- package/dist/utils/init/config.js.map +1 -0
- package/dist/utils/init/plugins.d.ts +3 -0
- package/dist/utils/init/plugins.d.ts.map +1 -0
- package/dist/utils/init/plugins.js +13 -0
- package/dist/utils/init/plugins.js.map +1 -0
- package/dist/utils/init/utils.d.ts +54 -0
- package/dist/utils/init/utils.d.ts.map +1 -0
- package/dist/utils/init/utils.js +199 -0
- package/dist/utils/init/utils.js.map +1 -0
- package/dist/utils/live-tunnel.d.ts +8 -0
- package/dist/utils/live-tunnel.d.ts.map +1 -0
- package/dist/utils/live-tunnel.js +128 -0
- package/dist/utils/live-tunnel.js.map +1 -0
- package/dist/utils/multimap.d.ts +6 -0
- package/dist/utils/multimap.d.ts.map +1 -0
- package/dist/utils/multimap.js +10 -0
- package/dist/utils/multimap.js.map +1 -0
- package/dist/utils/open-browser.d.ts +7 -0
- package/dist/utils/open-browser.d.ts.map +1 -0
- package/dist/utils/open-browser.js +33 -0
- package/dist/utils/open-browser.js.map +1 -0
- package/dist/utils/parse-raw-flags.d.ts +3 -0
- package/dist/utils/parse-raw-flags.d.ts.map +1 -0
- package/dist/utils/parse-raw-flags.js +54 -0
- package/dist/utils/parse-raw-flags.js.map +1 -0
- package/dist/utils/prompts/blob-delete-prompts.d.ts +2 -0
- package/dist/utils/prompts/blob-delete-prompts.d.ts.map +1 -0
- package/dist/utils/prompts/blob-delete-prompts.js +12 -0
- package/dist/utils/prompts/blob-delete-prompts.js.map +1 -0
- package/dist/utils/prompts/blob-set-prompt.d.ts +2 -0
- package/dist/utils/prompts/blob-set-prompt.d.ts.map +1 -0
- package/dist/utils/prompts/blob-set-prompt.js +12 -0
- package/dist/utils/prompts/blob-set-prompt.js.map +1 -0
- package/dist/utils/prompts/confirm-prompt.d.ts +2 -0
- package/dist/utils/prompts/confirm-prompt.d.ts.map +1 -0
- package/dist/utils/prompts/confirm-prompt.js +21 -0
- package/dist/utils/prompts/confirm-prompt.js.map +1 -0
- package/dist/utils/prompts/env-clone-prompt.d.ts +11 -0
- package/dist/utils/prompts/env-clone-prompt.d.ts.map +1 -0
- package/dist/utils/prompts/env-clone-prompt.js +28 -0
- package/dist/utils/prompts/env-clone-prompt.js.map +1 -0
- package/dist/utils/prompts/env-set-prompts.d.ts +2 -0
- package/dist/utils/prompts/env-set-prompts.d.ts.map +1 -0
- package/dist/utils/prompts/env-set-prompts.js +12 -0
- package/dist/utils/prompts/env-set-prompts.js.map +1 -0
- package/dist/utils/prompts/env-unset-prompts.d.ts +8 -0
- package/dist/utils/prompts/env-unset-prompts.d.ts.map +1 -0
- package/dist/utils/prompts/env-unset-prompts.js +18 -0
- package/dist/utils/prompts/env-unset-prompts.js.map +1 -0
- package/dist/utils/prompts/prompt-messages.d.ts +25 -0
- package/dist/utils/prompts/prompt-messages.d.ts.map +1 -0
- package/dist/utils/prompts/prompt-messages.js +26 -0
- package/dist/utils/prompts/prompt-messages.js.map +1 -0
- package/dist/utils/proxy-server.d.ts +38 -0
- package/dist/utils/proxy-server.d.ts.map +1 -0
- package/dist/utils/proxy-server.js +50 -0
- package/dist/utils/proxy-server.js.map +1 -0
- package/dist/utils/proxy.d.ts +10 -0
- package/dist/utils/proxy.d.ts.map +1 -0
- package/dist/utils/proxy.js +776 -0
- package/dist/utils/proxy.js.map +1 -0
- package/dist/utils/read-repo-url.d.ts +12 -0
- package/dist/utils/read-repo-url.d.ts.map +1 -0
- package/dist/utils/read-repo-url.js +62 -0
- package/dist/utils/read-repo-url.js.map +1 -0
- package/dist/utils/redirects.d.ts +6 -0
- package/dist/utils/redirects.d.ts.map +1 -0
- package/dist/utils/redirects.js +59 -0
- package/dist/utils/redirects.js.map +1 -0
- package/dist/utils/request-id.d.ts +2 -0
- package/dist/utils/request-id.d.ts.map +1 -0
- package/dist/utils/request-id.js +3 -0
- package/dist/utils/request-id.js.map +1 -0
- package/dist/utils/rules-proxy.d.ts +14 -0
- package/dist/utils/rules-proxy.d.ts.map +1 -0
- package/dist/utils/rules-proxy.js +103 -0
- package/dist/utils/rules-proxy.js.map +1 -0
- package/dist/utils/run-build.d.ts +42 -0
- package/dist/utils/run-build.d.ts.map +1 -0
- package/dist/utils/run-build.js +130 -0
- package/dist/utils/run-build.js.map +1 -0
- package/dist/utils/run-program.d.ts +3 -0
- package/dist/utils/run-program.d.ts.map +1 -0
- package/dist/utils/run-program.js +13 -0
- package/dist/utils/run-program.js.map +1 -0
- package/dist/utils/scripted-commands.d.ts +3 -0
- package/dist/utils/scripted-commands.d.ts.map +1 -0
- package/dist/utils/scripted-commands.js +18 -0
- package/dist/utils/scripted-commands.js.map +1 -0
- package/dist/utils/shell.d.ts +8 -0
- package/dist/utils/shell.d.ts.map +1 -0
- package/dist/utils/shell.js +114 -0
- package/dist/utils/shell.js.map +1 -0
- package/dist/utils/sign-redirect.d.ts +7 -0
- package/dist/utils/sign-redirect.d.ts.map +1 -0
- package/dist/utils/sign-redirect.js +16 -0
- package/dist/utils/sign-redirect.js.map +1 -0
- package/dist/utils/sites/create-template.d.ts +14 -0
- package/dist/utils/sites/create-template.d.ts.map +1 -0
- package/dist/utils/sites/create-template.js +47 -0
- package/dist/utils/sites/create-template.js.map +1 -0
- package/dist/utils/sites/utils.d.ts +16 -0
- package/dist/utils/sites/utils.d.ts.map +1 -0
- package/dist/utils/sites/utils.js +63 -0
- package/dist/utils/sites/utils.js.map +1 -0
- package/dist/utils/state-config.d.ts +12 -0
- package/dist/utils/state-config.d.ts.map +1 -0
- package/dist/utils/state-config.js +113 -0
- package/dist/utils/state-config.js.map +1 -0
- package/dist/utils/static-server.d.ts +10 -0
- package/dist/utils/static-server.d.ts.map +1 -0
- package/dist/utils/static-server.js +36 -0
- package/dist/utils/static-server.js.map +1 -0
- package/dist/utils/telemetry/index.d.ts +3 -0
- package/dist/utils/telemetry/index.d.ts.map +1 -0
- package/dist/utils/telemetry/index.js +3 -0
- package/dist/utils/telemetry/index.js.map +1 -0
- package/dist/utils/telemetry/report-error.d.ts +10 -0
- package/dist/utils/telemetry/report-error.d.ts.map +1 -0
- package/dist/utils/telemetry/report-error.js +53 -0
- package/dist/utils/telemetry/report-error.js.map +1 -0
- package/dist/utils/telemetry/request.d.ts +2 -0
- package/dist/utils/telemetry/request.d.ts.map +1 -0
- package/dist/utils/telemetry/request.js +41 -0
- package/dist/utils/telemetry/request.js.map +1 -0
- package/dist/utils/telemetry/telemetry.d.ts +14 -0
- package/dist/utils/telemetry/telemetry.d.ts.map +1 -0
- package/dist/utils/telemetry/telemetry.js +94 -0
- package/dist/utils/telemetry/telemetry.js.map +1 -0
- package/dist/utils/telemetry/utils.d.ts +3 -0
- package/dist/utils/telemetry/utils.d.ts.map +1 -0
- package/dist/utils/telemetry/utils.js +7 -0
- package/dist/utils/telemetry/utils.js.map +1 -0
- package/dist/utils/telemetry/validation.d.ts +2 -0
- package/dist/utils/telemetry/validation.d.ts.map +1 -0
- package/dist/utils/telemetry/validation.js +63 -0
- package/dist/utils/telemetry/validation.js.map +1 -0
- package/dist/utils/types.d.ts +202 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/dist/utils/types.js +2 -0
- package/dist/utils/types.js.map +1 -0
- package/dist/utils/validation.d.ts +6 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +17 -0
- package/dist/utils/validation.js.map +1 -0
- package/dist/utils/websockets/index.d.ts +3 -0
- package/dist/utils/websockets/index.d.ts.map +1 -0
- package/dist/utils/websockets/index.js +3 -0
- package/dist/utils/websockets/index.js.map +1 -0
- package/functions-templates/javascript/scheduled-function/package.json +1 -1
- package/functions-templates/typescript/hello-world/package-lock.json +15 -15
- package/functions-templates/typescript/hello-world/package.json +1 -1
- package/functions-templates/typescript/scheduled-function/package.json +1 -1
- package/npm-shrinkwrap.json +42 -56
- package/package.json +6 -5
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import express from 'express';
|
|
2
|
+
import { createIPX, ipxFSStorage, ipxHttpStorage, createIPXNodeServer } from 'ipx';
|
|
3
|
+
import { log, NETLIFYDEVERR } from '../../utils/command-helpers.js';
|
|
4
|
+
import { getProxyUrl } from '../../utils/proxy.js';
|
|
5
|
+
export const IMAGE_URL_PATTERN = '/.netlify/images';
|
|
6
|
+
// @ts-expect-error TS(7006) FIXME: Parameter 'config' implicitly has an 'any' type.
|
|
7
|
+
export const parseAllRemoteImages = function (config) {
|
|
8
|
+
const remotePatterns = [];
|
|
9
|
+
const errors = [];
|
|
10
|
+
const remoteImages = config?.images?.remote_images;
|
|
11
|
+
if (!remoteImages) {
|
|
12
|
+
return { errors, remotePatterns };
|
|
13
|
+
}
|
|
14
|
+
for (const patternString of remoteImages) {
|
|
15
|
+
try {
|
|
16
|
+
const urlRegex = new RegExp(patternString);
|
|
17
|
+
remotePatterns.push(urlRegex);
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
const message = error instanceof Error ? error.message : 'An unknown error occurred';
|
|
21
|
+
errors.push({ message });
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return { errors, remotePatterns };
|
|
25
|
+
};
|
|
26
|
+
const getErrorMessage = function ({ message }) {
|
|
27
|
+
return message;
|
|
28
|
+
};
|
|
29
|
+
export const handleRemoteImagesErrors = async function (errors) {
|
|
30
|
+
if (errors.length === 0) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const errorMessage = await errors.map(getErrorMessage).join('\n\n');
|
|
34
|
+
log(NETLIFYDEVERR, `Remote images syntax errors:\n${errorMessage}`);
|
|
35
|
+
};
|
|
36
|
+
// @ts-expect-error TS(7031) FIXME: Binding element 'config' implicitly has an 'any' t... Remove this comment to see the full error message
|
|
37
|
+
export const parseRemoteImages = async function ({ config }) {
|
|
38
|
+
if (!config) {
|
|
39
|
+
return [];
|
|
40
|
+
}
|
|
41
|
+
const { errors, remotePatterns } = await parseAllRemoteImages(config);
|
|
42
|
+
await handleRemoteImagesErrors(errors);
|
|
43
|
+
return remotePatterns;
|
|
44
|
+
};
|
|
45
|
+
export const isImageRequest = function (req) {
|
|
46
|
+
return req.url?.startsWith(IMAGE_URL_PATTERN) ?? false;
|
|
47
|
+
};
|
|
48
|
+
export const transformImageParams = function (query) {
|
|
49
|
+
const params = {};
|
|
50
|
+
const width = query.w || query.width || null;
|
|
51
|
+
const height = query.h || query.height || null;
|
|
52
|
+
if (width && height) {
|
|
53
|
+
// eslint-disable-next-line id-length
|
|
54
|
+
params.s = `${width}x${height}`;
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
// eslint-disable-next-line id-length
|
|
58
|
+
params.w = width;
|
|
59
|
+
// eslint-disable-next-line id-length
|
|
60
|
+
params.h = height;
|
|
61
|
+
}
|
|
62
|
+
params.quality = query.q || query.quality || null;
|
|
63
|
+
params.format = query.fm || null;
|
|
64
|
+
const fit = query.fit || null;
|
|
65
|
+
params.fit = fit === 'contain' ? 'inside' : fit;
|
|
66
|
+
params.position = query.position || null;
|
|
67
|
+
return Object.entries(params)
|
|
68
|
+
.filter(([, value]) => value !== null)
|
|
69
|
+
.map(([key, value]) => `${key}_${value}`)
|
|
70
|
+
.join(',');
|
|
71
|
+
};
|
|
72
|
+
export const initializeProxy = async function ({ config, settings, }) {
|
|
73
|
+
const remoteImages = await parseRemoteImages({ config });
|
|
74
|
+
const devServerUrl = getProxyUrl(settings);
|
|
75
|
+
const ipx = createIPX({
|
|
76
|
+
storage: ipxFSStorage({ dir: config?.build?.publish ?? './public' }),
|
|
77
|
+
httpStorage: ipxHttpStorage({
|
|
78
|
+
allowAllDomains: true,
|
|
79
|
+
}),
|
|
80
|
+
});
|
|
81
|
+
const handler = createIPXNodeServer(ipx);
|
|
82
|
+
const app = express();
|
|
83
|
+
let lastTimeRemoteImagesConfigurationDetailsMessageWasLogged = 0;
|
|
84
|
+
app.use(IMAGE_URL_PATTERN, async (req, res) => {
|
|
85
|
+
const { url, ...query } = req.query;
|
|
86
|
+
const sourceImagePath = url;
|
|
87
|
+
const modifiers = (await transformImageParams(query)) || `_`;
|
|
88
|
+
if (!sourceImagePath.startsWith('http://') && !sourceImagePath.startsWith('https://')) {
|
|
89
|
+
// Construct the full URL for relative paths to request from development server
|
|
90
|
+
const sourceImagePathWithLeadingSlash = sourceImagePath.startsWith('/') ? sourceImagePath : `/${sourceImagePath}`;
|
|
91
|
+
const fullImageUrl = `${devServerUrl}${encodeURIComponent(sourceImagePathWithLeadingSlash)}`;
|
|
92
|
+
req.url = `/${modifiers}/${fullImageUrl}`;
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
// If the image is remote, we first check if it's allowed by any of patterns
|
|
96
|
+
if (!remoteImages.some((remoteImage) => remoteImage.test(sourceImagePath))) {
|
|
97
|
+
const remoteImageNotAllowedLogMessage = `Remote image "${sourceImagePath}" source for Image CDN is not allowed.`;
|
|
98
|
+
// Contextual information about the remote image configuration is throttled
|
|
99
|
+
// to avoid spamming the console as it's quite verbose
|
|
100
|
+
// Each not allowed remote image will still be logged, just without configuration details
|
|
101
|
+
if (Date.now() - lastTimeRemoteImagesConfigurationDetailsMessageWasLogged > 1000 * 30) {
|
|
102
|
+
log(`${remoteImageNotAllowedLogMessage}\n\n${remoteImages.length === 0
|
|
103
|
+
? 'Currently no remote images are allowed.'
|
|
104
|
+
: `Currently allowed remote images configuration details:\n${remoteImages
|
|
105
|
+
.map((pattern) => ` - ${pattern}`)
|
|
106
|
+
.join('\n')}`}\n\nRefer to https://ntl.fyi/remote-images for information about how to configure allowed remote images.`);
|
|
107
|
+
lastTimeRemoteImagesConfigurationDetailsMessageWasLogged = Date.now();
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
log(remoteImageNotAllowedLogMessage);
|
|
111
|
+
}
|
|
112
|
+
res.status(400).end();
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
// Construct the full URL for remote paths
|
|
116
|
+
req.url = `/${modifiers}/${encodeURIComponent(sourceImagePath)}`;
|
|
117
|
+
}
|
|
118
|
+
handler(req, res);
|
|
119
|
+
});
|
|
120
|
+
return app;
|
|
121
|
+
};
|
|
122
|
+
//# sourceMappingURL=proxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../src/lib/images/proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/lib/log.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,4BAA4B,QAKxC,CAAA;AACD,eAAO,MAAM,uBAAuB,QAOmB,CAAA"}
|
package/dist/lib/log.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { chalk } from '../utils/command-helpers.js';
|
|
2
|
+
const RED_BACKGROUND = chalk.red('-background');
|
|
3
|
+
const [PRO, BUSINESS, ENTERPRISE] = ['Pro', 'Business', 'Enterprise'].map((plan) => chalk.magenta(plan));
|
|
4
|
+
export const BACKGROUND_FUNCTIONS_WARNING = `A serverless function ending in \`${RED_BACKGROUND}\` was detected.
|
|
5
|
+
Your team’s current plan doesn’t support Background Functions, which have names ending in \`${RED_BACKGROUND}\`.
|
|
6
|
+
To be able to deploy this function successfully either:
|
|
7
|
+
- change the function name to remove \`${RED_BACKGROUND}\` and execute it synchronously
|
|
8
|
+
- upgrade your team plan to a level that supports Background Functions (${PRO}, ${BUSINESS}, or ${ENTERPRISE})
|
|
9
|
+
`;
|
|
10
|
+
export const MISSING_AWS_SDK_WARNING = `A function has thrown an error due to a missing dependency: ${chalk.yellow('aws-sdk')}.
|
|
11
|
+
You should add this module to the project's dependencies, using your package manager of choice:
|
|
12
|
+
|
|
13
|
+
${chalk.yellow('npm install aws-sdk --save')} or ${chalk.yellow('yarn add aws-sdk')}
|
|
14
|
+
|
|
15
|
+
For more information, see https://ntl.fyi/cli-aws-sdk.`;
|
|
16
|
+
//# sourceMappingURL=log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/lib/log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAA;AAEnD,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;AAC/C,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;AACxG,MAAM,CAAC,MAAM,4BAA4B,GAAG,qCAAqC,cAAc;8FACD,cAAc;;2CAEjE,cAAc;4EACmB,GAAG,KAAK,QAAQ,QAAQ,UAAU;CAC7G,CAAA;AACD,MAAM,CAAC,MAAM,uBAAuB,GAAG,+DAA+D,KAAK,CAAC,MAAM,CAChH,SAAS,CACV;;;EAGC,KAAK,CAAC,MAAM,CAAC,4BAA4B,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC;;uDAE5B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/lib/path.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,kBAAkB,oBAAqC,CAAA"}
|
package/dist/lib/path.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/lib/path.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-error-template.d.ts","sourceRoot":"","sources":["../../src/lib/render-error-template.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,mBAAmB,wEAYxB,CAAA;AAED,eAAe,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { readFile } from 'fs/promises';
|
|
2
|
+
import { dirname, join } from 'path';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
// @ts-expect-error TS(7034) FIXME: Variable 'errorTemplateFile' implicitly has type '... Remove this comment to see the full error message
|
|
5
|
+
let errorTemplateFile;
|
|
6
|
+
const dir = dirname(fileURLToPath(import.meta.url));
|
|
7
|
+
// @ts-expect-error TS(7006) FIXME: Parameter 'errString' implicitly has an 'any' type... Remove this comment to see the full error message
|
|
8
|
+
const renderErrorTemplate = async (errString, templatePath, functionType) => {
|
|
9
|
+
const errorDetailsRegex = /<!--@ERROR-DETAILS-->/g;
|
|
10
|
+
const functionTypeRegex = /<!--@FUNCTION-TYPE-->/g;
|
|
11
|
+
try {
|
|
12
|
+
// @ts-expect-error TS(7005) FIXME: Variable 'errorTemplateFile' implicitly has an 'an... Remove this comment to see the full error message
|
|
13
|
+
errorTemplateFile = errorTemplateFile || (await readFile(join(dir, templatePath), 'utf-8'));
|
|
14
|
+
return errorTemplateFile.replace(errorDetailsRegex, errString).replace(functionTypeRegex, functionType);
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
return errString;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
export default renderErrorTemplate;
|
|
21
|
+
//# sourceMappingURL=render-error-template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-error-template.js","sourceRoot":"","sources":["../../src/lib/render-error-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAEnC,2IAA2I;AAC3I,IAAI,iBAAiB,CAAA;AACrB,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAEnD,2IAA2I;AAC3I,MAAM,mBAAmB,GAAG,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE;IAC1E,MAAM,iBAAiB,GAAG,wBAAwB,CAAA;IAClD,MAAM,iBAAiB,GAAG,wBAAwB,CAAA;IAElD,IAAI,CAAC;QACH,2IAA2I;QAC3I,iBAAiB,GAAG,iBAAiB,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;QAE3F,OAAO,iBAAiB,CAAC,OAAO,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAA;IACzG,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC,CAAA;AAED,eAAe,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deprecated method to get netlify's home config - ~/.netlify/...
|
|
3
|
+
* @deprecated
|
|
4
|
+
*/
|
|
5
|
+
export declare const getLegacyPathInHome: (paths: string[]) => string;
|
|
6
|
+
/**
|
|
7
|
+
* get a global path on the os base path
|
|
8
|
+
*/
|
|
9
|
+
export declare const getPathInHome: (paths: string[]) => string;
|
|
10
|
+
/**
|
|
11
|
+
* get a path inside the project folder "NOT WORKSPACE AWARE"
|
|
12
|
+
*/
|
|
13
|
+
export declare const getPathInProject: (paths: string[]) => string;
|
|
14
|
+
//# sourceMappingURL=settings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/lib/settings.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,eAAO,MAAM,mBAAmB,UAAW,MAAM,EAAE,WAAoD,CAAA;AAEvG;;GAEG;AACH,eAAO,MAAM,aAAa,UAAW,MAAM,EAAE,WAA6C,CAAA;AAE1F;;GAEG;AACH,eAAO,MAAM,gBAAgB,UAAW,MAAM,EAAE,WAAsC,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import os from 'os';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import envPaths from 'env-paths';
|
|
4
|
+
const OSBasedPaths = envPaths('netlify', { suffix: '' });
|
|
5
|
+
const NETLIFY_HOME = '.netlify';
|
|
6
|
+
/**
|
|
7
|
+
* Deprecated method to get netlify's home config - ~/.netlify/...
|
|
8
|
+
* @deprecated
|
|
9
|
+
*/
|
|
10
|
+
export const getLegacyPathInHome = (paths) => path.join(os.homedir(), NETLIFY_HOME, ...paths);
|
|
11
|
+
/**
|
|
12
|
+
* get a global path on the os base path
|
|
13
|
+
*/
|
|
14
|
+
export const getPathInHome = (paths) => path.join(OSBasedPaths.config, ...paths);
|
|
15
|
+
/**
|
|
16
|
+
* get a path inside the project folder "NOT WORKSPACE AWARE"
|
|
17
|
+
*/
|
|
18
|
+
export const getPathInProject = (paths) => path.join(NETLIFY_HOME, ...paths);
|
|
19
|
+
//# sourceMappingURL=settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/lib/settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,QAAQ,MAAM,WAAW,CAAA;AAEhC,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;AACxD,MAAM,YAAY,GAAG,UAAU,CAAA;AAE/B;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAAe,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC,CAAA;AAEvG;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAe,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAA;AAE1F;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAe,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type Spinner } from 'nanospinner';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a spinner with the following text
|
|
4
|
+
*/
|
|
5
|
+
export declare const startSpinner: ({ text }: {
|
|
6
|
+
text: string;
|
|
7
|
+
}) => Spinner;
|
|
8
|
+
/**
|
|
9
|
+
* Stops the spinner with the following text
|
|
10
|
+
*/
|
|
11
|
+
export declare const stopSpinner: ({ error, spinner, text }: {
|
|
12
|
+
error?: boolean;
|
|
13
|
+
spinner: Spinner;
|
|
14
|
+
text?: string;
|
|
15
|
+
}) => void;
|
|
16
|
+
/**
|
|
17
|
+
* Clears the spinner
|
|
18
|
+
*/
|
|
19
|
+
export declare const clearSpinner: ({ spinner }: {
|
|
20
|
+
spinner: Spinner;
|
|
21
|
+
}) => void;
|
|
22
|
+
export type { Spinner };
|
|
23
|
+
//# sourceMappingURL=spinner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/lib/spinner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,aAAa,CAAA;AAOzD;;GAEG;AACH,eAAO,MAAM,YAAY,aAAc;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,YAA8C,CAAA;AAErG;;GAEG;AACH,eAAO,MAAM,WAAW,6BAA8B;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,SASzG,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,gBAAiB;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,SAE7D,CAAA;AAED,YAAY,EAAE,OAAO,EAAE,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { createSpinner } from 'nanospinner';
|
|
2
|
+
const DOTS_SPINNER = {
|
|
3
|
+
interval: 80,
|
|
4
|
+
frames: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'],
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Creates a spinner with the following text
|
|
8
|
+
*/
|
|
9
|
+
export const startSpinner = ({ text }) => createSpinner(text, DOTS_SPINNER).start();
|
|
10
|
+
/**
|
|
11
|
+
* Stops the spinner with the following text
|
|
12
|
+
*/
|
|
13
|
+
export const stopSpinner = ({ error, spinner, text }) => {
|
|
14
|
+
if (!spinner) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
if (error === true) {
|
|
18
|
+
spinner.error(text);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
spinner.stop(text);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Clears the spinner
|
|
26
|
+
*/
|
|
27
|
+
export const clearSpinner = ({ spinner }) => {
|
|
28
|
+
spinner.clear();
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=spinner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spinner.js","sourceRoot":"","sources":["../../src/lib/spinner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgB,MAAM,aAAa,CAAA;AAEzD,MAAM,YAAY,GAAG;IACnB,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;CAC3D,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,KAAK,EAAE,CAAA;AAErG;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAwD,EAAE,EAAE;IAC5G,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAM;IACR,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACrB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpB,CAAC;AACH,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,OAAO,EAAwB,EAAE,EAAE;IAChE,OAAO,CAAC,KAAK,EAAE,CAAA;AACjB,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../src/lib/string.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU,iBAGtB,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// @ts-expect-error TS(7006) FIXME: Parameter 't' implicitly has an 'any' type.
|
|
2
|
+
export const capitalize = function (t) {
|
|
3
|
+
// @ts-expect-error TS(7006) FIXME: Parameter 'string' implicitly has an 'any' type.
|
|
4
|
+
return t.replace(/(^\w|\s\w)/g, (string) => string.toUpperCase());
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=string.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.js","sourceRoot":"","sources":["../../src/lib/string.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,oFAAoF;IACpF,OAAO,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;AACnE,CAAC,CAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export declare const FILE_NAME = "netlify-development.mdc";
|
|
2
|
+
export declare const NETLIFY_PROVIDER = "netlify";
|
|
3
|
+
export declare const downloadFile: (cliVersion: string) => Promise<{
|
|
4
|
+
contents: string;
|
|
5
|
+
minimumCLIVersion: string | undefined;
|
|
6
|
+
} | null>;
|
|
7
|
+
interface ParsedContextFile {
|
|
8
|
+
contents: string;
|
|
9
|
+
innerContents?: string;
|
|
10
|
+
overrides?: {
|
|
11
|
+
contents?: string;
|
|
12
|
+
innerContents?: string;
|
|
13
|
+
};
|
|
14
|
+
provider?: string;
|
|
15
|
+
version?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Parses the `<ProviderContext>` and `<ProviderContextOverrides>` blocks in
|
|
19
|
+
* a context file.
|
|
20
|
+
*/
|
|
21
|
+
export declare const parseContextFile: (contents: string) => ParsedContextFile;
|
|
22
|
+
/**
|
|
23
|
+
* Takes a context file (a template) and injects a string in an overrides block
|
|
24
|
+
* if one is found. Returns the resulting context file.
|
|
25
|
+
*/
|
|
26
|
+
export declare const applyOverrides: (template: string, overrides?: string) => string;
|
|
27
|
+
/**
|
|
28
|
+
* Reads a file on disk and tries to parse it as a context file.
|
|
29
|
+
*/
|
|
30
|
+
export declare const getExistingContext: (path: string) => Promise<ParsedContextFile | null>;
|
|
31
|
+
export declare const writeFile: (path: string, contents: string) => Promise<void>;
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/recipes/ai-context/context.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,SAAS,4BAA4B,CAAA;AAElD,eAAO,MAAM,gBAAgB,YAAY,CAAA;AAKzC,eAAO,MAAM,YAAY,eAAsB,MAAM;;;SAmBpD,CAAA;AAED,UAAU,iBAAiB;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE;QACV,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,aAAa,CAAC,EAAE,MAAM,CAAA;KACvB,CAAA;IACD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,aAAc,MAAM,sBA0ChD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,aAAc,MAAM,cAAc,MAAM,WASlE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,SAAgB,MAAM,sCAqBpD,CAAA;AAED,eAAO,MAAM,SAAS,SAAgB,MAAM,YAAY,MAAM,kBAK7D,CAAA"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { promises as fs } from 'node:fs';
|
|
2
|
+
import { dirname } from 'node:path';
|
|
3
|
+
const ATTRIBUTES_REGEX = /(\S*)="([^\s"]*)"/gim;
|
|
4
|
+
const BASE_URL = 'https://docs.netlify.com/ai-context';
|
|
5
|
+
export const FILE_NAME = 'netlify-development.mdc';
|
|
6
|
+
const MINIMUM_CLI_VERSION_HEADER = 'x-cli-min-ver';
|
|
7
|
+
export const NETLIFY_PROVIDER = 'netlify';
|
|
8
|
+
const PROVIDER_CONTEXT_REGEX = /<providercontext ([^>]*)>(.*)<\/providercontext>/ims;
|
|
9
|
+
const PROVIDER_CONTEXT_OVERRIDES_REGEX = /<providercontextoverrides([^>]*)>(.*)<\/providercontextoverrides>/ims;
|
|
10
|
+
const PROVIDER_CONTEXT_OVERRIDES_TAG = 'ProviderContextOverrides';
|
|
11
|
+
export const downloadFile = async (cliVersion) => {
|
|
12
|
+
try {
|
|
13
|
+
const res = await fetch(`${BASE_URL}/${FILE_NAME}`, {
|
|
14
|
+
headers: {
|
|
15
|
+
'user-agent': `NetlifyCLI ${cliVersion}`,
|
|
16
|
+
},
|
|
17
|
+
});
|
|
18
|
+
const contents = await res.text();
|
|
19
|
+
const minimumCLIVersion = res.headers.get(MINIMUM_CLI_VERSION_HEADER) ?? undefined;
|
|
20
|
+
return {
|
|
21
|
+
contents,
|
|
22
|
+
minimumCLIVersion,
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
// no-op
|
|
27
|
+
}
|
|
28
|
+
return null;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Parses the `<ProviderContext>` and `<ProviderContextOverrides>` blocks in
|
|
32
|
+
* a context file.
|
|
33
|
+
*/
|
|
34
|
+
export const parseContextFile = (contents) => {
|
|
35
|
+
const result = {
|
|
36
|
+
contents,
|
|
37
|
+
};
|
|
38
|
+
const providerContext = contents.match(PROVIDER_CONTEXT_REGEX);
|
|
39
|
+
if (providerContext) {
|
|
40
|
+
const [, attributes, innerContents] = providerContext;
|
|
41
|
+
result.innerContents = innerContents;
|
|
42
|
+
for (const [, name, value] of attributes.matchAll(ATTRIBUTES_REGEX)) {
|
|
43
|
+
switch (name.toLowerCase()) {
|
|
44
|
+
case 'provider':
|
|
45
|
+
result.provider = value;
|
|
46
|
+
break;
|
|
47
|
+
case 'version':
|
|
48
|
+
result.version = value;
|
|
49
|
+
break;
|
|
50
|
+
default:
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
const contextOverrides = contents.match(PROVIDER_CONTEXT_OVERRIDES_REGEX);
|
|
56
|
+
if (contextOverrides) {
|
|
57
|
+
const [overrideContents, , innerContents] = contextOverrides;
|
|
58
|
+
result.overrides = {
|
|
59
|
+
contents: overrideContents,
|
|
60
|
+
innerContents,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
return result;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Takes a context file (a template) and injects a string in an overrides block
|
|
67
|
+
* if one is found. Returns the resulting context file.
|
|
68
|
+
*/
|
|
69
|
+
export const applyOverrides = (template, overrides) => {
|
|
70
|
+
if (!overrides) {
|
|
71
|
+
return template;
|
|
72
|
+
}
|
|
73
|
+
return template.replace(PROVIDER_CONTEXT_OVERRIDES_REGEX, `<${PROVIDER_CONTEXT_OVERRIDES_TAG}>${overrides}</${PROVIDER_CONTEXT_OVERRIDES_TAG}>`);
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Reads a file on disk and tries to parse it as a context file.
|
|
77
|
+
*/
|
|
78
|
+
export const getExistingContext = async (path) => {
|
|
79
|
+
try {
|
|
80
|
+
const stats = await fs.stat(path);
|
|
81
|
+
if (!stats.isFile()) {
|
|
82
|
+
throw new Error(`${path} already exists but is not a file. Please remove it or rename it and try again.`);
|
|
83
|
+
}
|
|
84
|
+
const file = await fs.readFile(path, 'utf8');
|
|
85
|
+
const parsedFile = parseContextFile(file);
|
|
86
|
+
return parsedFile;
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
const exception = error;
|
|
90
|
+
if (exception.code !== 'ENOENT') {
|
|
91
|
+
throw new Error(`Could not open context file at ${path}: ${exception.message}`);
|
|
92
|
+
}
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
export const writeFile = async (path, contents) => {
|
|
97
|
+
const directory = dirname(path);
|
|
98
|
+
await fs.mkdir(directory, { recursive: true });
|
|
99
|
+
await fs.writeFile(path, contents);
|
|
100
|
+
};
|
|
101
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/recipes/ai-context/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/recipes/ai-context/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAazE,eAAO,MAAM,WAAW,sCAAsC,CAAA;AAuC9D,eAAO,MAAM,GAAG,sBAA6B,gBAAgB,kBAuE5D,CAAA"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { resolve } from 'node:path';
|
|
2
|
+
import inquirer from 'inquirer';
|
|
3
|
+
import semver from 'semver';
|
|
4
|
+
import { chalk, error, log, version } from '../../utils/command-helpers.js';
|
|
5
|
+
import { applyOverrides, downloadFile, getExistingContext, parseContextFile, writeFile, FILE_NAME, NETLIFY_PROVIDER, } from './context.js';
|
|
6
|
+
export const description = 'Manage context files for AI tools';
|
|
7
|
+
const presets = [
|
|
8
|
+
{ name: 'Cursor rules (.cursor/rules/)', value: '.cursor/rules' },
|
|
9
|
+
{ name: 'Custom location', value: '' },
|
|
10
|
+
];
|
|
11
|
+
const promptForPath = async () => {
|
|
12
|
+
const { presetPath } = await inquirer.prompt([
|
|
13
|
+
{
|
|
14
|
+
name: 'presetPath',
|
|
15
|
+
message: 'Where should we put the context files?',
|
|
16
|
+
type: 'list',
|
|
17
|
+
choices: presets,
|
|
18
|
+
},
|
|
19
|
+
]);
|
|
20
|
+
if (presetPath) {
|
|
21
|
+
return presetPath;
|
|
22
|
+
}
|
|
23
|
+
const { customPath } = await inquirer.prompt([
|
|
24
|
+
{
|
|
25
|
+
type: 'input',
|
|
26
|
+
name: 'customPath',
|
|
27
|
+
message: 'Enter the path, relative to the project root, where the context files should be placed',
|
|
28
|
+
default: './ai-context',
|
|
29
|
+
},
|
|
30
|
+
]);
|
|
31
|
+
if (customPath) {
|
|
32
|
+
return customPath;
|
|
33
|
+
}
|
|
34
|
+
log('You must select a path.');
|
|
35
|
+
return promptForPath();
|
|
36
|
+
};
|
|
37
|
+
export const run = async ({ args, command }) => {
|
|
38
|
+
// Start the download in the background while we wait for the prompts.
|
|
39
|
+
// eslint-disable-next-line promise/prefer-await-to-then
|
|
40
|
+
const download = downloadFile(version).catch(() => null);
|
|
41
|
+
const filePath = args[0] || (await promptForPath());
|
|
42
|
+
const { contents: downloadedFile, minimumCLIVersion } = (await download) ?? {};
|
|
43
|
+
if (!downloadedFile) {
|
|
44
|
+
error('An error occurred when pulling the latest context files. Please try again.');
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (minimumCLIVersion && semver.lt(version, minimumCLIVersion)) {
|
|
48
|
+
error(`This command requires version ${minimumCLIVersion} or above of the Netlify CLI. Refer to ${chalk.underline('https://ntl.fyi/update-cli')} for information on how to update.`);
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const absoluteFilePath = resolve(command?.workingDir ?? '', filePath, FILE_NAME);
|
|
52
|
+
const existing = await getExistingContext(absoluteFilePath);
|
|
53
|
+
const remote = parseContextFile(downloadedFile);
|
|
54
|
+
let { contents } = remote;
|
|
55
|
+
// Does a file already exist at this path?
|
|
56
|
+
if (existing) {
|
|
57
|
+
// If it's a file we've created, let's check the version and bail if we're
|
|
58
|
+
// already on the latest, otherwise rewrite it with the latest version.
|
|
59
|
+
if (existing.provider?.toLowerCase() === NETLIFY_PROVIDER) {
|
|
60
|
+
if (remote?.version === existing.version) {
|
|
61
|
+
log(`You're all up to date! ${chalk.underline(absoluteFilePath)} contains the latest version of the context files.`);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
// We must preserve any overrides found in the existing file.
|
|
65
|
+
contents = applyOverrides(remote.contents, existing.overrides?.innerContents);
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
// If this is not a file we've created, we can offer to overwrite it and
|
|
69
|
+
// preserve the existing contents by moving it to the overrides slot.
|
|
70
|
+
const { confirm } = await inquirer.prompt({
|
|
71
|
+
type: 'confirm',
|
|
72
|
+
name: 'confirm',
|
|
73
|
+
message: `A context file already exists at ${chalk.underline(absoluteFilePath)}. It has not been created by the Netlify CLI, but we can update it while preserving its existing content. Can we proceed?`,
|
|
74
|
+
default: true,
|
|
75
|
+
});
|
|
76
|
+
if (!confirm) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
// Whatever exists in the file goes in the overrides block.
|
|
80
|
+
contents = applyOverrides(remote.contents, existing.contents);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
await writeFile(absoluteFilePath, contents);
|
|
84
|
+
log(`${existing ? 'Updated' : 'Created'} context files at ${chalk.underline(absoluteFilePath)}`);
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/recipes/ai-context/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import BaseCommand from '../../commands/base-command.js';
|
|
2
|
+
export declare const description = "Migrate legacy Netlify Blobs stores";
|
|
3
|
+
interface Options {
|
|
4
|
+
args: string[];
|
|
5
|
+
command: BaseCommand;
|
|
6
|
+
}
|
|
7
|
+
export declare const run: ({ args, command }: Options) => Promise<void>;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/recipes/blobs-migrate/index.ts"],"names":[],"mappings":"AAIA,OAAO,WAAW,MAAM,gCAAgC,CAAA;AAGxD,eAAO,MAAM,WAAW,wCAAwC,CAAA;AAIhE,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,OAAO,EAAE,WAAW,CAAA;CACrB;AAED,eAAO,MAAM,GAAG,sBAA6B,OAAO,kBA0FnD,CAAA"}
|