noodleseed-cli 0.1.15 → 0.1.17
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/cli.js +3 -3
- package/dist/cli.js.map +1 -1
- package/dist/project.d.ts +1 -1
- package/dist/project.d.ts.map +1 -1
- package/dist/project.js +103 -3
- package/dist/project.js.map +1 -1
- package/node_modules/@modelcontextprotocol/sdk/package.json +0 -2
- package/node_modules/@noodle-borg/authoring/dist/index.d.ts +11 -3
- package/node_modules/@noodle-borg/authoring/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/authoring/dist/index.js +2 -1
- package/node_modules/@noodle-borg/authoring/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/artifact/types.d.ts +8 -1
- package/node_modules/@noodle-borg/compiler/dist/artifact/types.d.ts.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/compile.d.ts.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/compile.js +30 -2
- package/node_modules/@noodle-borg/compiler/dist/compile.js.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/index.d.ts +1 -0
- package/node_modules/@noodle-borg/compiler/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/index.js +1 -0
- package/node_modules/@noodle-borg/compiler/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/manifest/schema.d.ts +14869 -2
- package/node_modules/@noodle-borg/compiler/dist/manifest/schema.d.ts.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/manifest/schema.js +16 -2
- package/node_modules/@noodle-borg/compiler/dist/manifest/schema.js.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/widget-ui.d.ts +95 -0
- package/node_modules/@noodle-borg/compiler/dist/widget-ui.d.ts.map +1 -0
- package/node_modules/@noodle-borg/compiler/dist/widget-ui.js +177 -0
- package/node_modules/@noodle-borg/compiler/dist/widget-ui.js.map +1 -0
- package/node_modules/@noodle-borg/protocol/dist/widget/bootstrap.d.ts.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/widget/bootstrap.js +60 -3
- package/node_modules/@noodle-borg/protocol/dist/widget/bootstrap.js.map +1 -1
- package/node_modules/@noodle-borg/service/package.json +0 -1
- package/node_modules/cors/package.json +0 -1
- package/package.json +1 -56
- package/node_modules/@noodle-borg/compiler/node_modules/.bin/yaml +0 -22
- package/node_modules/@noodle-borg/connector-defs/node_modules/.bin/yaml +0 -22
- package/node_modules/accepts/HISTORY.md +0 -250
- package/node_modules/accepts/LICENSE +0 -23
- package/node_modules/accepts/README.md +0 -140
- package/node_modules/accepts/index.js +0 -238
- package/node_modules/accepts/package.json +0 -47
- package/node_modules/body-parser/LICENSE +0 -23
- package/node_modules/body-parser/README.md +0 -494
- package/node_modules/body-parser/index.js +0 -71
- package/node_modules/body-parser/lib/read.js +0 -247
- package/node_modules/body-parser/lib/types/json.js +0 -158
- package/node_modules/body-parser/lib/types/raw.js +0 -42
- package/node_modules/body-parser/lib/types/text.js +0 -36
- package/node_modules/body-parser/lib/types/urlencoded.js +0 -142
- package/node_modules/body-parser/lib/utils.js +0 -98
- package/node_modules/body-parser/package.json +0 -52
- package/node_modules/call-bind-apply-helpers/.eslintrc +0 -17
- package/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +0 -12
- package/node_modules/call-bind-apply-helpers/.nycrc +0 -9
- package/node_modules/call-bind-apply-helpers/CHANGELOG.md +0 -30
- package/node_modules/call-bind-apply-helpers/LICENSE +0 -21
- package/node_modules/call-bind-apply-helpers/README.md +0 -62
- package/node_modules/call-bind-apply-helpers/actualApply.d.ts +0 -1
- package/node_modules/call-bind-apply-helpers/actualApply.js +0 -10
- package/node_modules/call-bind-apply-helpers/applyBind.d.ts +0 -19
- package/node_modules/call-bind-apply-helpers/applyBind.js +0 -10
- package/node_modules/call-bind-apply-helpers/functionApply.d.ts +0 -1
- package/node_modules/call-bind-apply-helpers/functionApply.js +0 -4
- package/node_modules/call-bind-apply-helpers/functionCall.d.ts +0 -1
- package/node_modules/call-bind-apply-helpers/functionCall.js +0 -4
- package/node_modules/call-bind-apply-helpers/index.d.ts +0 -64
- package/node_modules/call-bind-apply-helpers/index.js +0 -15
- package/node_modules/call-bind-apply-helpers/package.json +0 -85
- package/node_modules/call-bind-apply-helpers/reflectApply.d.ts +0 -3
- package/node_modules/call-bind-apply-helpers/reflectApply.js +0 -4
- package/node_modules/call-bind-apply-helpers/test/index.js +0 -63
- package/node_modules/call-bind-apply-helpers/tsconfig.json +0 -9
- package/node_modules/call-bound/.eslintrc +0 -13
- package/node_modules/call-bound/.github/FUNDING.yml +0 -12
- package/node_modules/call-bound/.nycrc +0 -9
- package/node_modules/call-bound/CHANGELOG.md +0 -42
- package/node_modules/call-bound/LICENSE +0 -21
- package/node_modules/call-bound/README.md +0 -53
- package/node_modules/call-bound/index.d.ts +0 -94
- package/node_modules/call-bound/index.js +0 -19
- package/node_modules/call-bound/package.json +0 -99
- package/node_modules/call-bound/test/index.js +0 -61
- package/node_modules/call-bound/tsconfig.json +0 -10
- package/node_modules/content-disposition/LICENSE +0 -22
- package/node_modules/content-disposition/README.md +0 -141
- package/node_modules/content-disposition/index.js +0 -536
- package/node_modules/content-disposition/package.json +0 -40
- package/node_modules/cookie/LICENSE +0 -24
- package/node_modules/cookie/README.md +0 -317
- package/node_modules/cookie/SECURITY.md +0 -25
- package/node_modules/cookie/index.js +0 -335
- package/node_modules/cookie/package.json +0 -44
- package/node_modules/cookie-signature/History.md +0 -70
- package/node_modules/cookie-signature/LICENSE +0 -22
- package/node_modules/cookie-signature/Readme.md +0 -23
- package/node_modules/cookie-signature/index.js +0 -47
- package/node_modules/cookie-signature/package.json +0 -28
- package/node_modules/cross-spawn/node_modules/.bin/node-which +0 -22
- package/node_modules/debug/LICENSE +0 -20
- package/node_modules/debug/README.md +0 -481
- package/node_modules/debug/package.json +0 -64
- package/node_modules/debug/src/browser.js +0 -272
- package/node_modules/debug/src/common.js +0 -292
- package/node_modules/debug/src/index.js +0 -10
- package/node_modules/debug/src/node.js +0 -263
- package/node_modules/dunder-proto/.eslintrc +0 -5
- package/node_modules/dunder-proto/.github/FUNDING.yml +0 -12
- package/node_modules/dunder-proto/.nycrc +0 -13
- package/node_modules/dunder-proto/CHANGELOG.md +0 -24
- package/node_modules/dunder-proto/LICENSE +0 -21
- package/node_modules/dunder-proto/README.md +0 -54
- package/node_modules/dunder-proto/get.d.ts +0 -5
- package/node_modules/dunder-proto/get.js +0 -30
- package/node_modules/dunder-proto/package.json +0 -76
- package/node_modules/dunder-proto/set.d.ts +0 -5
- package/node_modules/dunder-proto/set.js +0 -35
- package/node_modules/dunder-proto/test/get.js +0 -34
- package/node_modules/dunder-proto/test/index.js +0 -4
- package/node_modules/dunder-proto/test/set.js +0 -50
- package/node_modules/dunder-proto/tsconfig.json +0 -9
- package/node_modules/ee-first/LICENSE +0 -22
- package/node_modules/ee-first/README.md +0 -80
- package/node_modules/ee-first/index.js +0 -95
- package/node_modules/ee-first/package.json +0 -29
- package/node_modules/encodeurl/LICENSE +0 -22
- package/node_modules/encodeurl/README.md +0 -109
- package/node_modules/encodeurl/index.js +0 -60
- package/node_modules/encodeurl/package.json +0 -40
- package/node_modules/es-define-property/.eslintrc +0 -13
- package/node_modules/es-define-property/.github/FUNDING.yml +0 -12
- package/node_modules/es-define-property/.nycrc +0 -9
- package/node_modules/es-define-property/CHANGELOG.md +0 -29
- package/node_modules/es-define-property/LICENSE +0 -21
- package/node_modules/es-define-property/README.md +0 -49
- package/node_modules/es-define-property/index.d.ts +0 -3
- package/node_modules/es-define-property/index.js +0 -14
- package/node_modules/es-define-property/package.json +0 -81
- package/node_modules/es-define-property/test/index.js +0 -56
- package/node_modules/es-define-property/tsconfig.json +0 -10
- package/node_modules/es-errors/.eslintrc +0 -5
- package/node_modules/es-errors/.github/FUNDING.yml +0 -12
- package/node_modules/es-errors/CHANGELOG.md +0 -40
- package/node_modules/es-errors/LICENSE +0 -21
- package/node_modules/es-errors/README.md +0 -55
- package/node_modules/es-errors/eval.d.ts +0 -3
- package/node_modules/es-errors/eval.js +0 -4
- package/node_modules/es-errors/index.d.ts +0 -3
- package/node_modules/es-errors/index.js +0 -4
- package/node_modules/es-errors/package.json +0 -80
- package/node_modules/es-errors/range.d.ts +0 -3
- package/node_modules/es-errors/range.js +0 -4
- package/node_modules/es-errors/ref.d.ts +0 -3
- package/node_modules/es-errors/ref.js +0 -4
- package/node_modules/es-errors/syntax.d.ts +0 -3
- package/node_modules/es-errors/syntax.js +0 -4
- package/node_modules/es-errors/test/index.js +0 -19
- package/node_modules/es-errors/tsconfig.json +0 -49
- package/node_modules/es-errors/type.d.ts +0 -3
- package/node_modules/es-errors/type.js +0 -4
- package/node_modules/es-errors/uri.d.ts +0 -3
- package/node_modules/es-errors/uri.js +0 -4
- package/node_modules/es-object-atoms/.eslintrc +0 -16
- package/node_modules/es-object-atoms/.github/FUNDING.yml +0 -12
- package/node_modules/es-object-atoms/CHANGELOG.md +0 -44
- package/node_modules/es-object-atoms/LICENSE +0 -21
- package/node_modules/es-object-atoms/README.md +0 -63
- package/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +0 -3
- package/node_modules/es-object-atoms/RequireObjectCoercible.js +0 -11
- package/node_modules/es-object-atoms/ToObject.d.ts +0 -7
- package/node_modules/es-object-atoms/ToObject.js +0 -10
- package/node_modules/es-object-atoms/index.d.ts +0 -3
- package/node_modules/es-object-atoms/index.js +0 -4
- package/node_modules/es-object-atoms/isObject.d.ts +0 -3
- package/node_modules/es-object-atoms/isObject.js +0 -6
- package/node_modules/es-object-atoms/package.json +0 -79
- package/node_modules/es-object-atoms/test/index.js +0 -38
- package/node_modules/es-object-atoms/tsconfig.json +0 -7
- package/node_modules/escape-html/LICENSE +0 -24
- package/node_modules/escape-html/Readme.md +0 -43
- package/node_modules/escape-html/index.js +0 -78
- package/node_modules/escape-html/package.json +0 -24
- package/node_modules/etag/HISTORY.md +0 -83
- package/node_modules/etag/LICENSE +0 -22
- package/node_modules/etag/README.md +0 -159
- package/node_modules/etag/index.js +0 -131
- package/node_modules/etag/package.json +0 -47
- package/node_modules/express/LICENSE +0 -24
- package/node_modules/express/Readme.md +0 -276
- package/node_modules/express/index.js +0 -11
- package/node_modules/express/lib/application.js +0 -631
- package/node_modules/express/lib/express.js +0 -81
- package/node_modules/express/lib/request.js +0 -514
- package/node_modules/express/lib/response.js +0 -1053
- package/node_modules/express/lib/utils.js +0 -271
- package/node_modules/express/lib/view.js +0 -205
- package/node_modules/express/package.json +0 -99
- package/node_modules/express-rate-limit/dist/index.cjs +0 -1016
- package/node_modules/express-rate-limit/dist/index.d.cts +0 -672
- package/node_modules/express-rate-limit/dist/index.d.mts +0 -672
- package/node_modules/express-rate-limit/dist/index.d.ts +0 -672
- package/node_modules/express-rate-limit/dist/index.mjs +0 -986
- package/node_modules/express-rate-limit/license.md +0 -20
- package/node_modules/express-rate-limit/package.json +0 -113
- package/node_modules/express-rate-limit/readme.md +0 -139
- package/node_modules/express-rate-limit/tsconfig.json +0 -8
- package/node_modules/finalhandler/HISTORY.md +0 -239
- package/node_modules/finalhandler/LICENSE +0 -22
- package/node_modules/finalhandler/README.md +0 -150
- package/node_modules/finalhandler/index.js +0 -293
- package/node_modules/finalhandler/package.json +0 -47
- package/node_modules/forwarded/HISTORY.md +0 -21
- package/node_modules/forwarded/LICENSE +0 -22
- package/node_modules/forwarded/README.md +0 -57
- package/node_modules/forwarded/index.js +0 -90
- package/node_modules/forwarded/package.json +0 -45
- package/node_modules/fresh/HISTORY.md +0 -80
- package/node_modules/fresh/LICENSE +0 -23
- package/node_modules/fresh/README.md +0 -117
- package/node_modules/fresh/index.js +0 -136
- package/node_modules/fresh/package.json +0 -46
- package/node_modules/function-bind/.eslintrc +0 -21
- package/node_modules/function-bind/.github/FUNDING.yml +0 -12
- package/node_modules/function-bind/.github/SECURITY.md +0 -3
- package/node_modules/function-bind/.nycrc +0 -13
- package/node_modules/function-bind/CHANGELOG.md +0 -136
- package/node_modules/function-bind/LICENSE +0 -20
- package/node_modules/function-bind/README.md +0 -46
- package/node_modules/function-bind/implementation.js +0 -84
- package/node_modules/function-bind/index.js +0 -5
- package/node_modules/function-bind/package.json +0 -87
- package/node_modules/function-bind/test/.eslintrc +0 -9
- package/node_modules/function-bind/test/index.js +0 -252
- package/node_modules/get-intrinsic/.eslintrc +0 -42
- package/node_modules/get-intrinsic/.github/FUNDING.yml +0 -12
- package/node_modules/get-intrinsic/.nycrc +0 -9
- package/node_modules/get-intrinsic/CHANGELOG.md +0 -186
- package/node_modules/get-intrinsic/LICENSE +0 -21
- package/node_modules/get-intrinsic/README.md +0 -71
- package/node_modules/get-intrinsic/index.js +0 -378
- package/node_modules/get-intrinsic/package.json +0 -97
- package/node_modules/get-intrinsic/test/GetIntrinsic.js +0 -274
- package/node_modules/get-proto/.eslintrc +0 -10
- package/node_modules/get-proto/.github/FUNDING.yml +0 -12
- package/node_modules/get-proto/.nycrc +0 -9
- package/node_modules/get-proto/CHANGELOG.md +0 -21
- package/node_modules/get-proto/LICENSE +0 -21
- package/node_modules/get-proto/Object.getPrototypeOf.d.ts +0 -5
- package/node_modules/get-proto/Object.getPrototypeOf.js +0 -6
- package/node_modules/get-proto/README.md +0 -50
- package/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +0 -3
- package/node_modules/get-proto/Reflect.getPrototypeOf.js +0 -4
- package/node_modules/get-proto/index.d.ts +0 -5
- package/node_modules/get-proto/index.js +0 -27
- package/node_modules/get-proto/package.json +0 -81
- package/node_modules/get-proto/test/index.js +0 -68
- package/node_modules/get-proto/tsconfig.json +0 -9
- package/node_modules/gopd/.eslintrc +0 -16
- package/node_modules/gopd/.github/FUNDING.yml +0 -12
- package/node_modules/gopd/CHANGELOG.md +0 -45
- package/node_modules/gopd/LICENSE +0 -21
- package/node_modules/gopd/README.md +0 -40
- package/node_modules/gopd/gOPD.d.ts +0 -1
- package/node_modules/gopd/gOPD.js +0 -4
- package/node_modules/gopd/index.d.ts +0 -5
- package/node_modules/gopd/index.js +0 -15
- package/node_modules/gopd/package.json +0 -77
- package/node_modules/gopd/test/index.js +0 -36
- package/node_modules/gopd/tsconfig.json +0 -9
- package/node_modules/has-symbols/.eslintrc +0 -11
- package/node_modules/has-symbols/.github/FUNDING.yml +0 -12
- package/node_modules/has-symbols/.nycrc +0 -9
- package/node_modules/has-symbols/CHANGELOG.md +0 -91
- package/node_modules/has-symbols/LICENSE +0 -21
- package/node_modules/has-symbols/README.md +0 -46
- package/node_modules/has-symbols/index.d.ts +0 -3
- package/node_modules/has-symbols/index.js +0 -14
- package/node_modules/has-symbols/package.json +0 -111
- package/node_modules/has-symbols/shams.d.ts +0 -3
- package/node_modules/has-symbols/shams.js +0 -45
- package/node_modules/has-symbols/test/index.js +0 -22
- package/node_modules/has-symbols/test/shams/core-js.js +0 -29
- package/node_modules/has-symbols/test/shams/get-own-property-symbols.js +0 -29
- package/node_modules/has-symbols/test/tests.js +0 -58
- package/node_modules/has-symbols/tsconfig.json +0 -10
- package/node_modules/hasown/.github/FUNDING.yml +0 -12
- package/node_modules/hasown/.nycrc +0 -13
- package/node_modules/hasown/CHANGELOG.md +0 -58
- package/node_modules/hasown/LICENSE +0 -21
- package/node_modules/hasown/README.md +0 -40
- package/node_modules/hasown/eslint.config.mjs +0 -6
- package/node_modules/hasown/index.d.ts +0 -3
- package/node_modules/hasown/index.js +0 -8
- package/node_modules/hasown/package.json +0 -91
- package/node_modules/hasown/tsconfig.json +0 -6
- package/node_modules/ip-address/LICENSE +0 -19
- package/node_modules/ip-address/README.md +0 -278
- package/node_modules/ip-address/dist/address-error.d.ts +0 -4
- package/node_modules/ip-address/dist/address-error.js +0 -12
- package/node_modules/ip-address/dist/address-error.js.map +0 -1
- package/node_modules/ip-address/dist/common.d.ts +0 -20
- package/node_modules/ip-address/dist/common.js +0 -67
- package/node_modules/ip-address/dist/common.js.map +0 -1
- package/node_modules/ip-address/dist/ip-address.d.ts +0 -7
- package/node_modules/ip-address/dist/ip-address.js +0 -35
- package/node_modules/ip-address/dist/ip-address.js.map +0 -1
- package/node_modules/ip-address/dist/ipv4.d.ts +0 -267
- package/node_modules/ip-address/dist/ipv4.js +0 -485
- package/node_modules/ip-address/dist/ipv4.js.map +0 -1
- package/node_modules/ip-address/dist/ipv6.d.ts +0 -489
- package/node_modules/ip-address/dist/ipv6.js +0 -1217
- package/node_modules/ip-address/dist/ipv6.js.map +0 -1
- package/node_modules/ip-address/dist/v4/constants.d.ts +0 -4
- package/node_modules/ip-address/dist/v4/constants.js +0 -8
- package/node_modules/ip-address/dist/v4/constants.js.map +0 -1
- package/node_modules/ip-address/dist/v6/constants.d.ts +0 -44
- package/node_modules/ip-address/dist/v6/constants.js +0 -81
- package/node_modules/ip-address/dist/v6/constants.js.map +0 -1
- package/node_modules/ip-address/dist/v6/helpers.d.ts +0 -18
- package/node_modules/ip-address/dist/v6/helpers.js +0 -54
- package/node_modules/ip-address/dist/v6/helpers.js.map +0 -1
- package/node_modules/ip-address/dist/v6/regular-expressions.d.ts +0 -5
- package/node_modules/ip-address/dist/v6/regular-expressions.js +0 -95
- package/node_modules/ip-address/dist/v6/regular-expressions.js.map +0 -1
- package/node_modules/ip-address/package.json +0 -88
- package/node_modules/is-promise/LICENSE +0 -19
- package/node_modules/is-promise/index.d.ts +0 -2
- package/node_modules/is-promise/index.js +0 -6
- package/node_modules/is-promise/index.mjs +0 -3
- package/node_modules/is-promise/package.json +0 -30
- package/node_modules/is-promise/readme.md +0 -33
- package/node_modules/math-intrinsics/.eslintrc +0 -16
- package/node_modules/math-intrinsics/.github/FUNDING.yml +0 -12
- package/node_modules/math-intrinsics/CHANGELOG.md +0 -24
- package/node_modules/math-intrinsics/LICENSE +0 -21
- package/node_modules/math-intrinsics/README.md +0 -50
- package/node_modules/math-intrinsics/abs.d.ts +0 -1
- package/node_modules/math-intrinsics/abs.js +0 -4
- package/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +0 -3
- package/node_modules/math-intrinsics/constants/maxArrayLength.js +0 -4
- package/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +0 -3
- package/node_modules/math-intrinsics/constants/maxSafeInteger.js +0 -5
- package/node_modules/math-intrinsics/constants/maxValue.d.ts +0 -3
- package/node_modules/math-intrinsics/constants/maxValue.js +0 -5
- package/node_modules/math-intrinsics/floor.d.ts +0 -1
- package/node_modules/math-intrinsics/floor.js +0 -4
- package/node_modules/math-intrinsics/isFinite.d.ts +0 -3
- package/node_modules/math-intrinsics/isFinite.js +0 -12
- package/node_modules/math-intrinsics/isInteger.d.ts +0 -3
- package/node_modules/math-intrinsics/isInteger.js +0 -16
- package/node_modules/math-intrinsics/isNaN.d.ts +0 -1
- package/node_modules/math-intrinsics/isNaN.js +0 -6
- package/node_modules/math-intrinsics/isNegativeZero.d.ts +0 -3
- package/node_modules/math-intrinsics/isNegativeZero.js +0 -6
- package/node_modules/math-intrinsics/max.d.ts +0 -1
- package/node_modules/math-intrinsics/max.js +0 -4
- package/node_modules/math-intrinsics/min.d.ts +0 -1
- package/node_modules/math-intrinsics/min.js +0 -4
- package/node_modules/math-intrinsics/mod.d.ts +0 -3
- package/node_modules/math-intrinsics/mod.js +0 -9
- package/node_modules/math-intrinsics/package.json +0 -86
- package/node_modules/math-intrinsics/pow.d.ts +0 -1
- package/node_modules/math-intrinsics/pow.js +0 -4
- package/node_modules/math-intrinsics/round.d.ts +0 -1
- package/node_modules/math-intrinsics/round.js +0 -4
- package/node_modules/math-intrinsics/sign.d.ts +0 -3
- package/node_modules/math-intrinsics/sign.js +0 -11
- package/node_modules/math-intrinsics/test/index.js +0 -192
- package/node_modules/math-intrinsics/tsconfig.json +0 -3
- package/node_modules/media-typer/HISTORY.md +0 -50
- package/node_modules/media-typer/LICENSE +0 -22
- package/node_modules/media-typer/README.md +0 -93
- package/node_modules/media-typer/index.js +0 -143
- package/node_modules/media-typer/package.json +0 -33
- package/node_modules/merge-descriptors/index.d.ts +0 -11
- package/node_modules/merge-descriptors/index.js +0 -26
- package/node_modules/merge-descriptors/license +0 -11
- package/node_modules/merge-descriptors/package.json +0 -50
- package/node_modules/merge-descriptors/readme.md +0 -55
- package/node_modules/mime-db/HISTORY.md +0 -541
- package/node_modules/mime-db/LICENSE +0 -23
- package/node_modules/mime-db/README.md +0 -109
- package/node_modules/mime-db/db.json +0 -9342
- package/node_modules/mime-db/index.js +0 -12
- package/node_modules/mime-db/package.json +0 -56
- package/node_modules/mime-types/HISTORY.md +0 -428
- package/node_modules/mime-types/LICENSE +0 -23
- package/node_modules/mime-types/README.md +0 -126
- package/node_modules/mime-types/index.js +0 -211
- package/node_modules/mime-types/mimeScore.js +0 -57
- package/node_modules/mime-types/package.json +0 -49
- package/node_modules/ms/index.js +0 -162
- package/node_modules/ms/license.md +0 -21
- package/node_modules/ms/package.json +0 -38
- package/node_modules/ms/readme.md +0 -59
- package/node_modules/negotiator/HISTORY.md +0 -114
- package/node_modules/negotiator/LICENSE +0 -24
- package/node_modules/negotiator/README.md +0 -212
- package/node_modules/negotiator/index.js +0 -83
- package/node_modules/negotiator/lib/charset.js +0 -169
- package/node_modules/negotiator/lib/encoding.js +0 -205
- package/node_modules/negotiator/lib/language.js +0 -179
- package/node_modules/negotiator/lib/mediaType.js +0 -294
- package/node_modules/negotiator/package.json +0 -43
- package/node_modules/object-inspect/.eslintrc +0 -53
- package/node_modules/object-inspect/.github/FUNDING.yml +0 -12
- package/node_modules/object-inspect/.nycrc +0 -13
- package/node_modules/object-inspect/CHANGELOG.md +0 -424
- package/node_modules/object-inspect/LICENSE +0 -21
- package/node_modules/object-inspect/example/all.js +0 -23
- package/node_modules/object-inspect/example/circular.js +0 -6
- package/node_modules/object-inspect/example/fn.js +0 -5
- package/node_modules/object-inspect/example/inspect.js +0 -10
- package/node_modules/object-inspect/index.js +0 -544
- package/node_modules/object-inspect/package-support.json +0 -20
- package/node_modules/object-inspect/package.json +0 -105
- package/node_modules/object-inspect/readme.markdown +0 -84
- package/node_modules/object-inspect/test/bigint.js +0 -58
- package/node_modules/object-inspect/test/browser/dom.js +0 -15
- package/node_modules/object-inspect/test/circular.js +0 -16
- package/node_modules/object-inspect/test/deep.js +0 -12
- package/node_modules/object-inspect/test/element.js +0 -53
- package/node_modules/object-inspect/test/err.js +0 -48
- package/node_modules/object-inspect/test/fakes.js +0 -29
- package/node_modules/object-inspect/test/fn.js +0 -76
- package/node_modules/object-inspect/test/global.js +0 -17
- package/node_modules/object-inspect/test/has.js +0 -15
- package/node_modules/object-inspect/test/holes.js +0 -15
- package/node_modules/object-inspect/test/indent-option.js +0 -271
- package/node_modules/object-inspect/test/inspect.js +0 -139
- package/node_modules/object-inspect/test/lowbyte.js +0 -12
- package/node_modules/object-inspect/test/number.js +0 -58
- package/node_modules/object-inspect/test/quoteStyle.js +0 -26
- package/node_modules/object-inspect/test/toStringTag.js +0 -40
- package/node_modules/object-inspect/test/undef.js +0 -12
- package/node_modules/object-inspect/test/values.js +0 -261
- package/node_modules/object-inspect/test-core-js.js +0 -26
- package/node_modules/object-inspect/util.inspect.js +0 -1
- package/node_modules/on-finished/HISTORY.md +0 -98
- package/node_modules/on-finished/LICENSE +0 -23
- package/node_modules/on-finished/README.md +0 -162
- package/node_modules/on-finished/index.js +0 -234
- package/node_modules/on-finished/package.json +0 -39
- package/node_modules/once/LICENSE +0 -15
- package/node_modules/once/README.md +0 -79
- package/node_modules/once/once.js +0 -42
- package/node_modules/once/package.json +0 -33
- package/node_modules/parseurl/HISTORY.md +0 -58
- package/node_modules/parseurl/LICENSE +0 -24
- package/node_modules/parseurl/README.md +0 -133
- package/node_modules/parseurl/index.js +0 -158
- package/node_modules/parseurl/package.json +0 -40
- package/node_modules/path-to-regexp/LICENSE +0 -21
- package/node_modules/path-to-regexp/Readme.md +0 -224
- package/node_modules/path-to-regexp/dist/index.d.ts +0 -147
- package/node_modules/path-to-regexp/dist/index.js +0 -431
- package/node_modules/path-to-regexp/dist/index.js.map +0 -1
- package/node_modules/path-to-regexp/package.json +0 -64
- package/node_modules/proxy-addr/HISTORY.md +0 -161
- package/node_modules/proxy-addr/LICENSE +0 -22
- package/node_modules/proxy-addr/README.md +0 -139
- package/node_modules/proxy-addr/index.js +0 -327
- package/node_modules/proxy-addr/package.json +0 -47
- package/node_modules/qs/.editorconfig +0 -46
- package/node_modules/qs/.github/FUNDING.yml +0 -12
- package/node_modules/qs/.github/SECURITY.md +0 -11
- package/node_modules/qs/.github/THREAT_MODEL.md +0 -78
- package/node_modules/qs/.nycrc +0 -13
- package/node_modules/qs/CHANGELOG.md +0 -822
- package/node_modules/qs/LICENSE.md +0 -29
- package/node_modules/qs/README.md +0 -758
- package/node_modules/qs/dist/qs.js +0 -141
- package/node_modules/qs/eslint.config.mjs +0 -57
- package/node_modules/qs/lib/formats.js +0 -23
- package/node_modules/qs/lib/index.js +0 -11
- package/node_modules/qs/lib/parse.js +0 -403
- package/node_modules/qs/lib/stringify.js +0 -363
- package/node_modules/qs/lib/utils.js +0 -342
- package/node_modules/qs/package.json +0 -94
- package/node_modules/qs/test/empty-keys-cases.js +0 -267
- package/node_modules/qs/test/parse.js +0 -1703
- package/node_modules/qs/test/stringify.js +0 -1448
- package/node_modules/qs/test/utils.js +0 -432
- package/node_modules/range-parser/HISTORY.md +0 -56
- package/node_modules/range-parser/LICENSE +0 -23
- package/node_modules/range-parser/README.md +0 -84
- package/node_modules/range-parser/index.js +0 -162
- package/node_modules/range-parser/package.json +0 -44
- package/node_modules/router/HISTORY.md +0 -228
- package/node_modules/router/LICENSE +0 -23
- package/node_modules/router/README.md +0 -416
- package/node_modules/router/index.js +0 -748
- package/node_modules/router/lib/layer.js +0 -247
- package/node_modules/router/lib/route.js +0 -242
- package/node_modules/router/package.json +0 -44
- package/node_modules/send/LICENSE +0 -23
- package/node_modules/send/README.md +0 -317
- package/node_modules/send/index.js +0 -997
- package/node_modules/send/package.json +0 -63
- package/node_modules/serve-static/LICENSE +0 -25
- package/node_modules/serve-static/README.md +0 -253
- package/node_modules/serve-static/index.js +0 -208
- package/node_modules/serve-static/package.json +0 -44
- package/node_modules/side-channel/.editorconfig +0 -9
- package/node_modules/side-channel/.eslintrc +0 -12
- package/node_modules/side-channel/.github/FUNDING.yml +0 -12
- package/node_modules/side-channel/.nycrc +0 -13
- package/node_modules/side-channel/CHANGELOG.md +0 -110
- package/node_modules/side-channel/LICENSE +0 -21
- package/node_modules/side-channel/README.md +0 -61
- package/node_modules/side-channel/index.d.ts +0 -14
- package/node_modules/side-channel/index.js +0 -43
- package/node_modules/side-channel/package.json +0 -85
- package/node_modules/side-channel/test/index.js +0 -104
- package/node_modules/side-channel/tsconfig.json +0 -9
- package/node_modules/side-channel-list/.editorconfig +0 -9
- package/node_modules/side-channel-list/.eslintrc +0 -11
- package/node_modules/side-channel-list/.github/FUNDING.yml +0 -12
- package/node_modules/side-channel-list/.nycrc +0 -13
- package/node_modules/side-channel-list/CHANGELOG.md +0 -36
- package/node_modules/side-channel-list/LICENSE +0 -21
- package/node_modules/side-channel-list/README.md +0 -62
- package/node_modules/side-channel-list/index.d.ts +0 -13
- package/node_modules/side-channel-list/index.js +0 -111
- package/node_modules/side-channel-list/list.d.ts +0 -14
- package/node_modules/side-channel-list/package.json +0 -77
- package/node_modules/side-channel-list/test/index.js +0 -154
- package/node_modules/side-channel-list/tsconfig.json +0 -9
- package/node_modules/side-channel-map/.editorconfig +0 -9
- package/node_modules/side-channel-map/.eslintrc +0 -11
- package/node_modules/side-channel-map/.github/FUNDING.yml +0 -12
- package/node_modules/side-channel-map/.nycrc +0 -13
- package/node_modules/side-channel-map/CHANGELOG.md +0 -22
- package/node_modules/side-channel-map/LICENSE +0 -21
- package/node_modules/side-channel-map/README.md +0 -62
- package/node_modules/side-channel-map/index.d.ts +0 -15
- package/node_modules/side-channel-map/index.js +0 -68
- package/node_modules/side-channel-map/package.json +0 -80
- package/node_modules/side-channel-map/test/index.js +0 -114
- package/node_modules/side-channel-map/tsconfig.json +0 -9
- package/node_modules/side-channel-weakmap/.editorconfig +0 -9
- package/node_modules/side-channel-weakmap/.eslintrc +0 -12
- package/node_modules/side-channel-weakmap/.github/FUNDING.yml +0 -12
- package/node_modules/side-channel-weakmap/.nycrc +0 -13
- package/node_modules/side-channel-weakmap/CHANGELOG.md +0 -28
- package/node_modules/side-channel-weakmap/LICENSE +0 -21
- package/node_modules/side-channel-weakmap/README.md +0 -62
- package/node_modules/side-channel-weakmap/index.d.ts +0 -15
- package/node_modules/side-channel-weakmap/index.js +0 -84
- package/node_modules/side-channel-weakmap/package.json +0 -87
- package/node_modules/side-channel-weakmap/test/index.js +0 -114
- package/node_modules/side-channel-weakmap/tsconfig.json +0 -9
- package/node_modules/type-is/HISTORY.md +0 -292
- package/node_modules/type-is/LICENSE +0 -23
- package/node_modules/type-is/README.md +0 -198
- package/node_modules/type-is/index.js +0 -240
- package/node_modules/type-is/package.json +0 -51
- package/node_modules/which/CHANGELOG.md +0 -166
- package/node_modules/wrappy/LICENSE +0 -15
- package/node_modules/wrappy/README.md +0 -36
- package/node_modules/wrappy/package.json +0 -29
- package/node_modules/wrappy/wrappy.js +0 -33
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
# finalhandler
|
|
2
|
-
|
|
3
|
-
[![NPM Version][npm-image]][npm-url]
|
|
4
|
-
[![NPM Downloads][downloads-image]][downloads-url]
|
|
5
|
-
[![Node.js Version][node-image]][node-url]
|
|
6
|
-
[![Build Status][github-actions-ci-image]][github-actions-ci-url]
|
|
7
|
-
[![Test Coverage][coveralls-image]][coveralls-url]
|
|
8
|
-
[![OpenSSF Scorecard Badge][ossf-scorecard-badge]][ossf-scorecard-visualizer]
|
|
9
|
-
|
|
10
|
-
Node.js function to invoke as the final step to respond to HTTP request.
|
|
11
|
-
|
|
12
|
-
## Installation
|
|
13
|
-
|
|
14
|
-
This is a [Node.js](https://nodejs.org/en/) module available through the
|
|
15
|
-
[npm registry](https://www.npmjs.com/). Installation is done using the
|
|
16
|
-
[`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):
|
|
17
|
-
|
|
18
|
-
```sh
|
|
19
|
-
$ npm install finalhandler
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## API
|
|
23
|
-
|
|
24
|
-
```js
|
|
25
|
-
const finalhandler = require('finalhandler')
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
### finalhandler(req, res, [options])
|
|
29
|
-
|
|
30
|
-
Returns function to be invoked as the final step for the given `req` and `res`.
|
|
31
|
-
This function is to be invoked as `fn(err)`. If `err` is falsy, the handler will
|
|
32
|
-
write out a 404 response to the `res`. If it is truthy, an error response will
|
|
33
|
-
be written out to the `res` or `res` will be terminated if a response has already
|
|
34
|
-
started.
|
|
35
|
-
|
|
36
|
-
When an error is written, the following information is added to the response:
|
|
37
|
-
|
|
38
|
-
* The `res.statusCode` is set from `err.status` (or `err.statusCode`). If
|
|
39
|
-
this value is outside the 4xx or 5xx range, it will be set to 500.
|
|
40
|
-
* The `res.statusMessage` is set according to the status code.
|
|
41
|
-
* The body will be the HTML of the status code message if `env` is
|
|
42
|
-
`'production'`, otherwise will be `err.stack`.
|
|
43
|
-
* Any headers specified in an `err.headers` object.
|
|
44
|
-
|
|
45
|
-
The final handler will also unpipe anything from `req` when it is invoked.
|
|
46
|
-
|
|
47
|
-
#### options.env
|
|
48
|
-
|
|
49
|
-
By default, the environment is determined by `NODE_ENV` variable, but it can be
|
|
50
|
-
overridden by this option.
|
|
51
|
-
|
|
52
|
-
#### options.onerror
|
|
53
|
-
|
|
54
|
-
Provide a function to be called with the `err` when it exists. Can be used for
|
|
55
|
-
writing errors to a central location without excessive function generation. Called
|
|
56
|
-
as `onerror(err, req, res)`.
|
|
57
|
-
|
|
58
|
-
## Examples
|
|
59
|
-
|
|
60
|
-
### always 404
|
|
61
|
-
|
|
62
|
-
```js
|
|
63
|
-
const finalhandler = require('finalhandler')
|
|
64
|
-
const http = require('http')
|
|
65
|
-
|
|
66
|
-
const server = http.createServer((req, res) => {
|
|
67
|
-
const done = finalhandler(req, res)
|
|
68
|
-
done()
|
|
69
|
-
})
|
|
70
|
-
|
|
71
|
-
server.listen(3000)
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### perform simple action
|
|
75
|
-
|
|
76
|
-
```js
|
|
77
|
-
const finalhandler = require('finalhandler')
|
|
78
|
-
const fs = require('fs')
|
|
79
|
-
const http = require('http')
|
|
80
|
-
|
|
81
|
-
const server = http.createServer((req, res) => {
|
|
82
|
-
const done = finalhandler(req, res)
|
|
83
|
-
|
|
84
|
-
fs.readFile('index.html', (err, buf) => {
|
|
85
|
-
if (err) return done(err)
|
|
86
|
-
res.setHeader('Content-Type', 'text/html')
|
|
87
|
-
res.end(buf)
|
|
88
|
-
})
|
|
89
|
-
})
|
|
90
|
-
|
|
91
|
-
server.listen(3000)
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
### use with middleware-style functions
|
|
95
|
-
|
|
96
|
-
```js
|
|
97
|
-
const finalhandler = require('finalhandler')
|
|
98
|
-
const http = require('http')
|
|
99
|
-
const serveStatic = require('serve-static')
|
|
100
|
-
|
|
101
|
-
const serve = serveStatic('public')
|
|
102
|
-
|
|
103
|
-
const server = http.createServer((req, res) => {
|
|
104
|
-
const done = finalhandler(req, res)
|
|
105
|
-
serve(req, res, done)
|
|
106
|
-
})
|
|
107
|
-
|
|
108
|
-
server.listen(3000)
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
### keep log of all errors
|
|
112
|
-
|
|
113
|
-
```js
|
|
114
|
-
const finalhandler = require('finalhandler')
|
|
115
|
-
const fs = require('fs')
|
|
116
|
-
const http = require('http')
|
|
117
|
-
|
|
118
|
-
const server = http.createServer((req, res) => {
|
|
119
|
-
const done = finalhandler(req, res, { onerror: logerror })
|
|
120
|
-
|
|
121
|
-
fs.readFile('index.html', (err, buf) => {
|
|
122
|
-
if (err) return done(err)
|
|
123
|
-
res.setHeader('Content-Type', 'text/html')
|
|
124
|
-
res.end(buf)
|
|
125
|
-
})
|
|
126
|
-
})
|
|
127
|
-
|
|
128
|
-
server.listen(3000)
|
|
129
|
-
|
|
130
|
-
function logerror (err) {
|
|
131
|
-
console.error(err.stack || err.toString())
|
|
132
|
-
}
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
## License
|
|
136
|
-
|
|
137
|
-
[MIT](LICENSE)
|
|
138
|
-
|
|
139
|
-
[npm-image]: https://img.shields.io/npm/v/finalhandler.svg
|
|
140
|
-
[npm-url]: https://npmjs.org/package/finalhandler
|
|
141
|
-
[node-image]: https://img.shields.io/node/v/finalhandler.svg
|
|
142
|
-
[node-url]: https://nodejs.org/en/download
|
|
143
|
-
[coveralls-image]: https://img.shields.io/coveralls/pillarjs/finalhandler.svg
|
|
144
|
-
[coveralls-url]: https://coveralls.io/r/pillarjs/finalhandler?branch=master
|
|
145
|
-
[downloads-image]: https://img.shields.io/npm/dm/finalhandler.svg
|
|
146
|
-
[downloads-url]: https://npmjs.org/package/finalhandler
|
|
147
|
-
[github-actions-ci-image]: https://github.com/pillarjs/finalhandler/actions/workflows/ci.yml/badge.svg
|
|
148
|
-
[github-actions-ci-url]: https://github.com/pillarjs/finalhandler/actions/workflows/ci.yml
|
|
149
|
-
[ossf-scorecard-badge]: https://api.scorecard.dev/projects/github.com/pillarjs/finalhandler/badge
|
|
150
|
-
[ossf-scorecard-visualizer]: https://ossf.github.io/scorecard-visualizer/#/projects/github.com/pillarjs/finalhandler
|
|
@@ -1,293 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* finalhandler
|
|
3
|
-
* Copyright(c) 2014-2022 Douglas Christopher Wilson
|
|
4
|
-
* MIT Licensed
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
'use strict'
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Module dependencies.
|
|
11
|
-
* @private
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
var debug = require('debug')('finalhandler')
|
|
15
|
-
var encodeUrl = require('encodeurl')
|
|
16
|
-
var escapeHtml = require('escape-html')
|
|
17
|
-
var onFinished = require('on-finished')
|
|
18
|
-
var parseUrl = require('parseurl')
|
|
19
|
-
var statuses = require('statuses')
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Module variables.
|
|
23
|
-
* @private
|
|
24
|
-
*/
|
|
25
|
-
|
|
26
|
-
var isFinished = onFinished.isFinished
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Create a minimal HTML document.
|
|
30
|
-
*
|
|
31
|
-
* @param {string} message
|
|
32
|
-
* @private
|
|
33
|
-
*/
|
|
34
|
-
|
|
35
|
-
function createHtmlDocument (message) {
|
|
36
|
-
var body = escapeHtml(message)
|
|
37
|
-
.replaceAll('\n', '<br>')
|
|
38
|
-
.replaceAll(' ', ' ')
|
|
39
|
-
|
|
40
|
-
return '<!DOCTYPE html>\n' +
|
|
41
|
-
'<html lang="en">\n' +
|
|
42
|
-
'<head>\n' +
|
|
43
|
-
'<meta charset="utf-8">\n' +
|
|
44
|
-
'<title>Error</title>\n' +
|
|
45
|
-
'</head>\n' +
|
|
46
|
-
'<body>\n' +
|
|
47
|
-
'<pre>' + body + '</pre>\n' +
|
|
48
|
-
'</body>\n' +
|
|
49
|
-
'</html>\n'
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Module exports.
|
|
54
|
-
* @public
|
|
55
|
-
*/
|
|
56
|
-
|
|
57
|
-
module.exports = finalhandler
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Create a function to handle the final response.
|
|
61
|
-
*
|
|
62
|
-
* @param {Request} req
|
|
63
|
-
* @param {Response} res
|
|
64
|
-
* @param {Object} [options]
|
|
65
|
-
* @return {Function}
|
|
66
|
-
* @public
|
|
67
|
-
*/
|
|
68
|
-
|
|
69
|
-
function finalhandler (req, res, options) {
|
|
70
|
-
var opts = options || {}
|
|
71
|
-
|
|
72
|
-
// get environment
|
|
73
|
-
var env = opts.env || process.env.NODE_ENV || 'development'
|
|
74
|
-
|
|
75
|
-
// get error callback
|
|
76
|
-
var onerror = opts.onerror
|
|
77
|
-
|
|
78
|
-
return function (err) {
|
|
79
|
-
var headers
|
|
80
|
-
var msg
|
|
81
|
-
var status
|
|
82
|
-
|
|
83
|
-
// ignore 404 on in-flight response
|
|
84
|
-
if (!err && res.headersSent) {
|
|
85
|
-
debug('cannot 404 after headers sent')
|
|
86
|
-
return
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
// unhandled error
|
|
90
|
-
if (err) {
|
|
91
|
-
// respect status code from error
|
|
92
|
-
status = getErrorStatusCode(err)
|
|
93
|
-
|
|
94
|
-
if (status === undefined) {
|
|
95
|
-
// fallback to status code on response
|
|
96
|
-
status = getResponseStatusCode(res)
|
|
97
|
-
} else {
|
|
98
|
-
// respect headers from error
|
|
99
|
-
headers = getErrorHeaders(err)
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
// get error message
|
|
103
|
-
msg = getErrorMessage(err, status, env)
|
|
104
|
-
} else {
|
|
105
|
-
// not found
|
|
106
|
-
status = 404
|
|
107
|
-
msg = 'Cannot ' + req.method + ' ' + encodeUrl(getResourceName(req))
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
debug('default %s', status)
|
|
111
|
-
|
|
112
|
-
// schedule onerror callback
|
|
113
|
-
if (err && onerror) {
|
|
114
|
-
setImmediate(onerror, err, req, res)
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
// cannot actually respond
|
|
118
|
-
if (res.headersSent) {
|
|
119
|
-
debug('cannot %d after headers sent', status)
|
|
120
|
-
if (req.socket) {
|
|
121
|
-
req.socket.destroy()
|
|
122
|
-
}
|
|
123
|
-
return
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
// send response
|
|
127
|
-
send(req, res, status, headers, msg)
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Get headers from Error object.
|
|
133
|
-
*
|
|
134
|
-
* @param {Error} err
|
|
135
|
-
* @return {object}
|
|
136
|
-
* @private
|
|
137
|
-
*/
|
|
138
|
-
|
|
139
|
-
function getErrorHeaders (err) {
|
|
140
|
-
if (!err.headers || typeof err.headers !== 'object') {
|
|
141
|
-
return undefined
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
return { ...err.headers }
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
/**
|
|
148
|
-
* Get message from Error object, fallback to status message.
|
|
149
|
-
*
|
|
150
|
-
* @param {Error} err
|
|
151
|
-
* @param {number} status
|
|
152
|
-
* @param {string} env
|
|
153
|
-
* @return {string}
|
|
154
|
-
* @private
|
|
155
|
-
*/
|
|
156
|
-
|
|
157
|
-
function getErrorMessage (err, status, env) {
|
|
158
|
-
var msg
|
|
159
|
-
|
|
160
|
-
if (env !== 'production') {
|
|
161
|
-
// use err.stack, which typically includes err.message
|
|
162
|
-
msg = err.stack
|
|
163
|
-
|
|
164
|
-
// fallback to err.toString() when possible
|
|
165
|
-
if (!msg && typeof err.toString === 'function') {
|
|
166
|
-
msg = err.toString()
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
return msg || statuses.message[status]
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
/**
|
|
174
|
-
* Get status code from Error object.
|
|
175
|
-
*
|
|
176
|
-
* @param {Error} err
|
|
177
|
-
* @return {number}
|
|
178
|
-
* @private
|
|
179
|
-
*/
|
|
180
|
-
|
|
181
|
-
function getErrorStatusCode (err) {
|
|
182
|
-
// check err.status
|
|
183
|
-
if (typeof err.status === 'number' && err.status >= 400 && err.status < 600) {
|
|
184
|
-
return err.status
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
// check err.statusCode
|
|
188
|
-
if (typeof err.statusCode === 'number' && err.statusCode >= 400 && err.statusCode < 600) {
|
|
189
|
-
return err.statusCode
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
return undefined
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
/**
|
|
196
|
-
* Get resource name for the request.
|
|
197
|
-
*
|
|
198
|
-
* This is typically just the original pathname of the request
|
|
199
|
-
* but will fallback to "resource" is that cannot be determined.
|
|
200
|
-
*
|
|
201
|
-
* @param {IncomingMessage} req
|
|
202
|
-
* @return {string}
|
|
203
|
-
* @private
|
|
204
|
-
*/
|
|
205
|
-
|
|
206
|
-
function getResourceName (req) {
|
|
207
|
-
try {
|
|
208
|
-
return parseUrl.original(req).pathname
|
|
209
|
-
} catch (e) {
|
|
210
|
-
return 'resource'
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
/**
|
|
215
|
-
* Get status code from response.
|
|
216
|
-
*
|
|
217
|
-
* @param {OutgoingMessage} res
|
|
218
|
-
* @return {number}
|
|
219
|
-
* @private
|
|
220
|
-
*/
|
|
221
|
-
|
|
222
|
-
function getResponseStatusCode (res) {
|
|
223
|
-
var status = res.statusCode
|
|
224
|
-
|
|
225
|
-
// default status code to 500 if outside valid range
|
|
226
|
-
if (typeof status !== 'number' || status < 400 || status > 599) {
|
|
227
|
-
status = 500
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
return status
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
/**
|
|
234
|
-
* Send response.
|
|
235
|
-
*
|
|
236
|
-
* @param {IncomingMessage} req
|
|
237
|
-
* @param {OutgoingMessage} res
|
|
238
|
-
* @param {number} status
|
|
239
|
-
* @param {object} headers
|
|
240
|
-
* @param {string} message
|
|
241
|
-
* @private
|
|
242
|
-
*/
|
|
243
|
-
|
|
244
|
-
function send (req, res, status, headers, message) {
|
|
245
|
-
function write () {
|
|
246
|
-
// response body
|
|
247
|
-
var body = createHtmlDocument(message)
|
|
248
|
-
|
|
249
|
-
// response status
|
|
250
|
-
res.statusCode = status
|
|
251
|
-
|
|
252
|
-
if (req.httpVersionMajor < 2) {
|
|
253
|
-
res.statusMessage = statuses.message[status]
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
// remove any content headers
|
|
257
|
-
res.removeHeader('Content-Encoding')
|
|
258
|
-
res.removeHeader('Content-Language')
|
|
259
|
-
res.removeHeader('Content-Range')
|
|
260
|
-
|
|
261
|
-
// response headers
|
|
262
|
-
for (const [key, value] of Object.entries(headers ?? {})) {
|
|
263
|
-
res.setHeader(key, value)
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
// security headers
|
|
267
|
-
res.setHeader('Content-Security-Policy', "default-src 'none'")
|
|
268
|
-
res.setHeader('X-Content-Type-Options', 'nosniff')
|
|
269
|
-
|
|
270
|
-
// standard headers
|
|
271
|
-
res.setHeader('Content-Type', 'text/html; charset=utf-8')
|
|
272
|
-
res.setHeader('Content-Length', Buffer.byteLength(body, 'utf8'))
|
|
273
|
-
|
|
274
|
-
if (req.method === 'HEAD') {
|
|
275
|
-
res.end()
|
|
276
|
-
return
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
res.end(body, 'utf8')
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
if (isFinished(req)) {
|
|
283
|
-
write()
|
|
284
|
-
return
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
// unpipe everything from the request
|
|
288
|
-
req.unpipe()
|
|
289
|
-
|
|
290
|
-
// flush the request
|
|
291
|
-
onFinished(req, write)
|
|
292
|
-
req.resume()
|
|
293
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "finalhandler",
|
|
3
|
-
"description": "Node.js final http responder",
|
|
4
|
-
"version": "2.1.1",
|
|
5
|
-
"author": "Douglas Christopher Wilson <doug@somethingdoug.com>",
|
|
6
|
-
"license": "MIT",
|
|
7
|
-
"repository": "pillarjs/finalhandler",
|
|
8
|
-
"funding": {
|
|
9
|
-
"type": "opencollective",
|
|
10
|
-
"url": "https://opencollective.com/express"
|
|
11
|
-
},
|
|
12
|
-
"dependencies": {
|
|
13
|
-
"debug": "^4.4.0",
|
|
14
|
-
"encodeurl": "^2.0.0",
|
|
15
|
-
"escape-html": "^1.0.3",
|
|
16
|
-
"on-finished": "^2.4.1",
|
|
17
|
-
"parseurl": "^1.3.3",
|
|
18
|
-
"statuses": "^2.0.1"
|
|
19
|
-
},
|
|
20
|
-
"devDependencies": {
|
|
21
|
-
"eslint": "^7.32.0",
|
|
22
|
-
"eslint-config-standard": "^14.1.1",
|
|
23
|
-
"eslint-plugin-import": "^2.31.0",
|
|
24
|
-
"eslint-plugin-markdown": "^2.2.1",
|
|
25
|
-
"eslint-plugin-node": "^11.1.0",
|
|
26
|
-
"eslint-plugin-promise": "^5.2.0",
|
|
27
|
-
"eslint-plugin-standard": "^4.1.0",
|
|
28
|
-
"mocha": "^11.0.1",
|
|
29
|
-
"nyc": "^17.1.0",
|
|
30
|
-
"supertest": "^7.0.0"
|
|
31
|
-
},
|
|
32
|
-
"files": [
|
|
33
|
-
"LICENSE",
|
|
34
|
-
"HISTORY.md",
|
|
35
|
-
"index.js"
|
|
36
|
-
],
|
|
37
|
-
"engines": {
|
|
38
|
-
"node": ">= 18.0.0"
|
|
39
|
-
},
|
|
40
|
-
"scripts": {
|
|
41
|
-
"lint": "eslint .",
|
|
42
|
-
"test": "mocha --reporter spec --check-leaks test/",
|
|
43
|
-
"test-ci": "nyc --reporter=lcovonly --reporter=text npm test",
|
|
44
|
-
"test-cov": "nyc --reporter=html --reporter=text npm test",
|
|
45
|
-
"test-inspect": "mocha --reporter spec --inspect --inspect-brk test/"
|
|
46
|
-
}
|
|
47
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
0.2.0 / 2021-05-31
|
|
2
|
-
==================
|
|
3
|
-
|
|
4
|
-
* Use `req.socket` over deprecated `req.connection`
|
|
5
|
-
|
|
6
|
-
0.1.2 / 2017-09-14
|
|
7
|
-
==================
|
|
8
|
-
|
|
9
|
-
* perf: improve header parsing
|
|
10
|
-
* perf: reduce overhead when no `X-Forwarded-For` header
|
|
11
|
-
|
|
12
|
-
0.1.1 / 2017-09-10
|
|
13
|
-
==================
|
|
14
|
-
|
|
15
|
-
* Fix trimming leading / trailing OWS
|
|
16
|
-
* perf: hoist regular expression
|
|
17
|
-
|
|
18
|
-
0.1.0 / 2014-09-21
|
|
19
|
-
==================
|
|
20
|
-
|
|
21
|
-
* Initial release
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
(The MIT License)
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2014-2017 Douglas Christopher Wilson
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
-
a copy of this software and associated documentation files (the
|
|
7
|
-
'Software'), to deal in the Software without restriction, including
|
|
8
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
-
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
-
the following conditions:
|
|
12
|
-
|
|
13
|
-
The above copyright notice and this permission notice shall be
|
|
14
|
-
included in all copies or substantial portions of the Software.
|
|
15
|
-
|
|
16
|
-
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
19
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
20
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
21
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
22
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
# forwarded
|
|
2
|
-
|
|
3
|
-
[![NPM Version][npm-image]][npm-url]
|
|
4
|
-
[![NPM Downloads][downloads-image]][downloads-url]
|
|
5
|
-
[![Node.js Version][node-version-image]][node-version-url]
|
|
6
|
-
[![Build Status][ci-image]][ci-url]
|
|
7
|
-
[![Test Coverage][coveralls-image]][coveralls-url]
|
|
8
|
-
|
|
9
|
-
Parse HTTP X-Forwarded-For header
|
|
10
|
-
|
|
11
|
-
## Installation
|
|
12
|
-
|
|
13
|
-
This is a [Node.js](https://nodejs.org/en/) module available through the
|
|
14
|
-
[npm registry](https://www.npmjs.com/). Installation is done using the
|
|
15
|
-
[`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):
|
|
16
|
-
|
|
17
|
-
```sh
|
|
18
|
-
$ npm install forwarded
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
## API
|
|
22
|
-
|
|
23
|
-
```js
|
|
24
|
-
var forwarded = require('forwarded')
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
### forwarded(req)
|
|
28
|
-
|
|
29
|
-
```js
|
|
30
|
-
var addresses = forwarded(req)
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
Parse the `X-Forwarded-For` header from the request. Returns an array
|
|
34
|
-
of the addresses, including the socket address for the `req`, in reverse
|
|
35
|
-
order (i.e. index `0` is the socket address and the last index is the
|
|
36
|
-
furthest address, typically the end-user).
|
|
37
|
-
|
|
38
|
-
## Testing
|
|
39
|
-
|
|
40
|
-
```sh
|
|
41
|
-
$ npm test
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
## License
|
|
45
|
-
|
|
46
|
-
[MIT](LICENSE)
|
|
47
|
-
|
|
48
|
-
[ci-image]: https://badgen.net/github/checks/jshttp/forwarded/master?label=ci
|
|
49
|
-
[ci-url]: https://github.com/jshttp/forwarded/actions?query=workflow%3Aci
|
|
50
|
-
[npm-image]: https://img.shields.io/npm/v/forwarded.svg
|
|
51
|
-
[npm-url]: https://npmjs.org/package/forwarded
|
|
52
|
-
[node-version-image]: https://img.shields.io/node/v/forwarded.svg
|
|
53
|
-
[node-version-url]: https://nodejs.org/en/download/
|
|
54
|
-
[coveralls-image]: https://img.shields.io/coveralls/jshttp/forwarded/master.svg
|
|
55
|
-
[coveralls-url]: https://coveralls.io/r/jshttp/forwarded?branch=master
|
|
56
|
-
[downloads-image]: https://img.shields.io/npm/dm/forwarded.svg
|
|
57
|
-
[downloads-url]: https://npmjs.org/package/forwarded
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* forwarded
|
|
3
|
-
* Copyright(c) 2014-2017 Douglas Christopher Wilson
|
|
4
|
-
* MIT Licensed
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
'use strict'
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Module exports.
|
|
11
|
-
* @public
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
module.exports = forwarded
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Get all addresses in the request, using the `X-Forwarded-For` header.
|
|
18
|
-
*
|
|
19
|
-
* @param {object} req
|
|
20
|
-
* @return {array}
|
|
21
|
-
* @public
|
|
22
|
-
*/
|
|
23
|
-
|
|
24
|
-
function forwarded (req) {
|
|
25
|
-
if (!req) {
|
|
26
|
-
throw new TypeError('argument req is required')
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
// simple header parsing
|
|
30
|
-
var proxyAddrs = parse(req.headers['x-forwarded-for'] || '')
|
|
31
|
-
var socketAddr = getSocketAddr(req)
|
|
32
|
-
var addrs = [socketAddr].concat(proxyAddrs)
|
|
33
|
-
|
|
34
|
-
// return all addresses
|
|
35
|
-
return addrs
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Get the socket address for a request.
|
|
40
|
-
*
|
|
41
|
-
* @param {object} req
|
|
42
|
-
* @return {string}
|
|
43
|
-
* @private
|
|
44
|
-
*/
|
|
45
|
-
|
|
46
|
-
function getSocketAddr (req) {
|
|
47
|
-
return req.socket
|
|
48
|
-
? req.socket.remoteAddress
|
|
49
|
-
: req.connection.remoteAddress
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Parse the X-Forwarded-For header.
|
|
54
|
-
*
|
|
55
|
-
* @param {string} header
|
|
56
|
-
* @private
|
|
57
|
-
*/
|
|
58
|
-
|
|
59
|
-
function parse (header) {
|
|
60
|
-
var end = header.length
|
|
61
|
-
var list = []
|
|
62
|
-
var start = header.length
|
|
63
|
-
|
|
64
|
-
// gather addresses, backwards
|
|
65
|
-
for (var i = header.length - 1; i >= 0; i--) {
|
|
66
|
-
switch (header.charCodeAt(i)) {
|
|
67
|
-
case 0x20: /* */
|
|
68
|
-
if (start === end) {
|
|
69
|
-
start = end = i
|
|
70
|
-
}
|
|
71
|
-
break
|
|
72
|
-
case 0x2c: /* , */
|
|
73
|
-
if (start !== end) {
|
|
74
|
-
list.push(header.substring(start, end))
|
|
75
|
-
}
|
|
76
|
-
start = end = i
|
|
77
|
-
break
|
|
78
|
-
default:
|
|
79
|
-
start = i
|
|
80
|
-
break
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
// final address
|
|
85
|
-
if (start !== end) {
|
|
86
|
-
list.push(header.substring(start, end))
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
return list
|
|
90
|
-
}
|