@eggjs/mock 6.0.6 → 6.1.0-beta.10
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/README.md +35 -56
- package/README.zh_CN.md +30 -50
- package/dist/_virtual/rolldown_runtime.js +30 -0
- package/dist/app/extend/agent.d.ts +39 -0
- package/dist/app/extend/agent.js +48 -0
- package/dist/app/extend/application.d.ts +175 -0
- package/dist/app/extend/application.js +385 -0
- package/dist/app/middleware/cluster_app_mock.d.ts +6 -0
- package/dist/app/middleware/cluster_app_mock.js +97 -0
- package/dist/app.d.ts +10 -0
- package/dist/app.js +17 -0
- package/dist/bootstrap.d.ts +9 -0
- package/dist/bootstrap.js +14 -0
- package/dist/index.d.ts +81 -0
- package/dist/index.js +47 -0
- package/dist/inject_mocha.d.ts +1 -0
- package/dist/inject_mocha.js +35 -0
- package/dist/lib/agent_handler.d.ts +7 -0
- package/dist/lib/agent_handler.js +26 -0
- package/dist/lib/app.d.ts +7 -0
- package/dist/lib/app.js +251 -0
- package/dist/lib/app_handler.d.ts +9 -0
- package/dist/lib/app_handler.js +56 -0
- package/dist/lib/cluster.d.ts +126 -0
- package/dist/lib/cluster.js +283 -0
- package/dist/lib/context.d.ts +4 -0
- package/dist/lib/context.js +12 -0
- package/dist/lib/format_options.d.ts +10 -0
- package/dist/lib/format_options.js +65 -0
- package/dist/lib/inject_context.d.ts +9 -0
- package/dist/lib/inject_context.js +106 -0
- package/dist/lib/mock_agent.d.ts +9 -0
- package/dist/lib/mock_agent.js +45 -0
- package/dist/lib/mock_custom_loader.d.ts +4 -0
- package/dist/lib/mock_custom_loader.js +35 -0
- package/dist/lib/mock_http_server.d.ts +6 -0
- package/dist/lib/mock_http_server.js +17 -0
- package/dist/lib/mock_httpclient.d.ts +40 -0
- package/dist/lib/mock_httpclient.js +110 -0
- package/dist/lib/parallel/agent.d.ts +24 -0
- package/dist/lib/parallel/agent.js +111 -0
- package/dist/lib/parallel/app.d.ts +24 -0
- package/dist/lib/parallel/app.js +99 -0
- package/dist/lib/parallel/util.d.ts +6 -0
- package/dist/lib/parallel/util.js +59 -0
- package/dist/lib/prerequire.d.ts +1 -0
- package/dist/lib/prerequire.js +1 -0
- package/dist/lib/request_call_function.d.ts +1 -0
- package/dist/lib/request_call_function.js +37 -0
- package/dist/lib/restore.d.ts +4 -0
- package/dist/lib/restore.js +16 -0
- package/dist/lib/start-cluster.d.ts +1 -0
- package/dist/lib/start-cluster.js +19 -0
- package/dist/lib/supertest.d.ts +16 -0
- package/dist/lib/supertest.js +39 -0
- package/dist/lib/tmp/empty.d.ts +1 -0
- package/dist/lib/tmp/empty.js +1 -0
- package/{src/lib/types.ts → dist/lib/types.d.ts} +12 -29
- package/dist/lib/types.js +1 -0
- package/dist/lib/utils.d.ts +12 -0
- package/dist/lib/utils.js +40 -0
- package/dist/node_modules/.pnpm/ansi-styles@4.3.0/node_modules/ansi-styles/index.js +142 -0
- package/dist/node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/index.js +157 -0
- package/dist/node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/templates.js +97 -0
- package/dist/node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/util.js +40 -0
- package/dist/node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/conversions.js +814 -0
- package/dist/node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/index.js +50 -0
- package/dist/node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/route.js +68 -0
- package/dist/node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js +752 -0
- package/dist/node_modules/.pnpm/debug@4.4.3_supports-color@8.1.1/node_modules/debug/src/browser.js +203 -0
- package/dist/node_modules/.pnpm/debug@4.4.3_supports-color@8.1.1/node_modules/debug/src/common.js +209 -0
- package/dist/node_modules/.pnpm/debug@4.4.3_supports-color@8.1.1/node_modules/debug/src/index.js +18 -0
- package/dist/node_modules/.pnpm/debug@4.4.3_supports-color@8.1.1/node_modules/debug/src/node.js +215 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/convert/dmp.js +24 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/convert/xml.js +33 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/diff/array.js +29 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/diff/base.js +185 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/diff/character.js +23 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/diff/css.js +26 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/diff/json.js +83 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/diff/line.js +51 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/diff/sentence.js +26 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/diff/word.js +151 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/index.js +178 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/patch/apply.js +168 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/patch/create.js +301 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/patch/line-endings.js +137 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/patch/merge.js +367 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/patch/parse.js +91 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/patch/reverse.js +99 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/util/array.js +23 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/util/distance-iterator.js +30 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/util/params.js +22 -0
- package/dist/node_modules/.pnpm/diff@7.0.0/node_modules/diff/lib/util/string.js +97 -0
- package/dist/node_modules/.pnpm/escape-string-regexp@4.0.0/node_modules/escape-string-regexp/index.js +14 -0
- package/dist/node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js +16 -0
- package/dist/node_modules/.pnpm/he@1.2.0/node_modules/he/he.js +4093 -0
- package/dist/node_modules/.pnpm/is-unicode-supported@0.1.0/node_modules/is-unicode-supported/index.js +14 -0
- package/dist/node_modules/.pnpm/log-symbols@4.1.0/node_modules/log-symbols/index.js +27 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/index.js +12 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/context.js +83 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/error-constants.js +35 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/errors.js +392 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/hook.js +86 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/interfaces/bdd.js +104 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/interfaces/common.js +99 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/interfaces/exports.js +65 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/interfaces/index.js +18 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/interfaces/qunit.js +95 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/interfaces/tdd.js +105 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/mocha.js +1037 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/mocharc.js +24 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/nodejs/buffered-worker-pool.js +152 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/nodejs/esm-utils.js +74 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/nodejs/file-unloader.js +22 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/nodejs/parallel-buffered-runner.js +329 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/nodejs/serializer.js +314 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/pending.js +22 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/base.js +417 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/doc.js +79 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/dot.js +75 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/html.js +283 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/index.js +40 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/json-stream.js +90 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/json.js +145 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/landing.js +107 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/list.js +77 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/markdown.js +106 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/min.js +57 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/nyan.js +233 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/progress.js +92 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/spec.js +91 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/tap.js +261 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/reporters/xunit.js +166 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/runnable.js +346 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/runner.js +922 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/stats-collector.js +72 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/suite.js +517 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/test.js +105 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/lib/utils.js +505 -0
- package/dist/node_modules/.pnpm/mocha@11.7.2/node_modules/mocha/package.js +225 -0
- package/dist/node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js +124 -0
- package/dist/node_modules/.pnpm/randombytes@2.1.0/node_modules/randombytes/index.js +11 -0
- package/dist/node_modules/.pnpm/serialize-javascript@6.0.2/node_modules/serialize-javascript/index.js +114 -0
- package/dist/node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js +76 -0
- package/dist/node_modules/.pnpm/supports-color@8.1.1/node_modules/supports-color/index.js +89 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/Pool.js +366 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/Promise.js +248 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/WorkerHandler.js +419 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/debug-port-allocator.js +27 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/environment.js +18 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/generated/embeddedWorker.js +16 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/index.js +63 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/transfer.js +21 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/validateOptions.js +9 -0
- package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/worker.js +277 -0
- package/dist/register.d.ts +10 -0
- package/dist/register.js +40 -0
- package/dist/typings/index.d.ts +1 -0
- package/package.json +71 -98
- package/dist/commonjs/app/extend/agent.d.ts +0 -34
- package/dist/commonjs/app/extend/agent.js +0 -49
- package/dist/commonjs/app/extend/application.d.ts +0 -171
- package/dist/commonjs/app/extend/application.js +0 -450
- package/dist/commonjs/app/middleware/cluster_app_mock.d.ts +0 -3
- package/dist/commonjs/app/middleware/cluster_app_mock.js +0 -101
- package/dist/commonjs/app.d.ts +0 -6
- package/dist/commonjs/app.js +0 -20
- package/dist/commonjs/bootstrap.d.ts +0 -5
- package/dist/commonjs/bootstrap.js +0 -59
- package/dist/commonjs/index.d.ts +0 -77
- package/dist/commonjs/index.js +0 -114
- package/dist/commonjs/lib/agent_handler.d.ts +0 -3
- package/dist/commonjs/lib/agent_handler.js +0 -28
- package/dist/commonjs/lib/app.d.ts +0 -3
- package/dist/commonjs/lib/app.js +0 -301
- package/dist/commonjs/lib/app_handler.d.ts +0 -5
- package/dist/commonjs/lib/app_handler.js +0 -71
- package/dist/commonjs/lib/cluster.d.ts +0 -114
- package/dist/commonjs/lib/cluster.js +0 -337
- package/dist/commonjs/lib/context.d.ts +0 -1
- package/dist/commonjs/lib/context.js +0 -16
- package/dist/commonjs/lib/format_options.d.ts +0 -5
- package/dist/commonjs/lib/format_options.js +0 -100
- package/dist/commonjs/lib/inject_context.d.ts +0 -6
- package/dist/commonjs/lib/inject_context.js +0 -132
- package/dist/commonjs/lib/mock_agent.d.ts +0 -5
- package/dist/commonjs/lib/mock_agent.js +0 -49
- package/dist/commonjs/lib/mock_custom_loader.d.ts +0 -1
- package/dist/commonjs/lib/mock_custom_loader.js +0 -37
- package/dist/commonjs/lib/mock_http_server.d.ts +0 -2
- package/dist/commonjs/lib/mock_http_server.js +0 -24
- package/dist/commonjs/lib/mock_httpclient.d.ts +0 -36
- package/dist/commonjs/lib/mock_httpclient.js +0 -147
- package/dist/commonjs/lib/parallel/agent.d.ts +0 -20
- package/dist/commonjs/lib/parallel/agent.js +0 -125
- package/dist/commonjs/lib/parallel/app.d.ts +0 -20
- package/dist/commonjs/lib/parallel/app.js +0 -115
- package/dist/commonjs/lib/parallel/util.d.ts +0 -3
- package/dist/commonjs/lib/parallel/util.js +0 -77
- package/dist/commonjs/lib/prerequire.d.ts +0 -1
- package/dist/commonjs/lib/prerequire.js +0 -26
- package/dist/commonjs/lib/request_call_function.d.ts +0 -1
- package/dist/commonjs/lib/request_call_function.js +0 -52
- package/dist/commonjs/lib/restore.d.ts +0 -1
- package/dist/commonjs/lib/restore.js +0 -16
- package/dist/commonjs/lib/start-cluster.d.ts +0 -2
- package/dist/commonjs/lib/start-cluster.js +0 -23
- package/dist/commonjs/lib/supertest.d.ts +0 -11
- package/dist/commonjs/lib/supertest.js +0 -48
- package/dist/commonjs/lib/tmp/empty.d.ts +0 -1
- package/dist/commonjs/lib/tmp/empty.js +0 -3
- package/dist/commonjs/lib/types.d.ts +0 -68
- package/dist/commonjs/lib/types.js +0 -3
- package/dist/commonjs/lib/utils.d.ts +0 -9
- package/dist/commonjs/lib/utils.js +0 -80
- package/dist/commonjs/package.json +0 -3
- package/dist/commonjs/register.d.ts +0 -8
- package/dist/commonjs/register.js +0 -80
- package/dist/esm/app/extend/agent.d.ts +0 -34
- package/dist/esm/app/extend/agent.js +0 -46
- package/dist/esm/app/extend/application.d.ts +0 -171
- package/dist/esm/app/extend/application.js +0 -444
- package/dist/esm/app/middleware/cluster_app_mock.d.ts +0 -3
- package/dist/esm/app/middleware/cluster_app_mock.js +0 -99
- package/dist/esm/app.d.ts +0 -6
- package/dist/esm/app.js +0 -17
- package/dist/esm/bootstrap.d.ts +0 -5
- package/dist/esm/bootstrap.js +0 -15
- package/dist/esm/index.d.ts +0 -77
- package/dist/esm/index.js +0 -91
- package/dist/esm/lib/agent_handler.d.ts +0 -3
- package/dist/esm/lib/agent_handler.js +0 -24
- package/dist/esm/lib/app.d.ts +0 -3
- package/dist/esm/lib/app.js +0 -295
- package/dist/esm/lib/app_handler.d.ts +0 -5
- package/dist/esm/lib/app_handler.js +0 -65
- package/dist/esm/lib/cluster.d.ts +0 -114
- package/dist/esm/lib/cluster.js +0 -328
- package/dist/esm/lib/context.d.ts +0 -1
- package/dist/esm/lib/context.js +0 -13
- package/dist/esm/lib/format_options.d.ts +0 -5
- package/dist/esm/lib/format_options.js +0 -94
- package/dist/esm/lib/inject_context.d.ts +0 -6
- package/dist/esm/lib/inject_context.js +0 -126
- package/dist/esm/lib/mock_agent.d.ts +0 -5
- package/dist/esm/lib/mock_agent.js +0 -45
- package/dist/esm/lib/mock_custom_loader.d.ts +0 -1
- package/dist/esm/lib/mock_custom_loader.js +0 -34
- package/dist/esm/lib/mock_http_server.d.ts +0 -2
- package/dist/esm/lib/mock_http_server.js +0 -18
- package/dist/esm/lib/mock_httpclient.d.ts +0 -36
- package/dist/esm/lib/mock_httpclient.js +0 -144
- package/dist/esm/lib/parallel/agent.d.ts +0 -20
- package/dist/esm/lib/parallel/agent.js +0 -117
- package/dist/esm/lib/parallel/app.d.ts +0 -20
- package/dist/esm/lib/parallel/app.js +0 -110
- package/dist/esm/lib/parallel/util.d.ts +0 -3
- package/dist/esm/lib/parallel/util.js +0 -73
- package/dist/esm/lib/prerequire.d.ts +0 -1
- package/dist/esm/lib/prerequire.js +0 -25
- package/dist/esm/lib/request_call_function.d.ts +0 -1
- package/dist/esm/lib/request_call_function.js +0 -47
- package/dist/esm/lib/restore.d.ts +0 -1
- package/dist/esm/lib/restore.js +0 -13
- package/dist/esm/lib/start-cluster.d.ts +0 -2
- package/dist/esm/lib/start-cluster.js +0 -18
- package/dist/esm/lib/supertest.d.ts +0 -11
- package/dist/esm/lib/supertest.js +0 -40
- package/dist/esm/lib/tmp/empty.d.ts +0 -1
- package/dist/esm/lib/tmp/empty.js +0 -2
- package/dist/esm/lib/types.d.ts +0 -68
- package/dist/esm/lib/types.js +0 -2
- package/dist/esm/lib/utils.d.ts +0 -9
- package/dist/esm/lib/utils.js +0 -69
- package/dist/esm/package.json +0 -3
- package/dist/esm/register.d.ts +0 -8
- package/dist/esm/register.js +0 -75
- package/dist/package.json +0 -4
- package/src/app/extend/agent.ts +0 -57
- package/src/app/extend/application.ts +0 -510
- package/src/app/middleware/cluster_app_mock.ts +0 -102
- package/src/app.ts +0 -18
- package/src/bootstrap.ts +0 -25
- package/src/index.ts +0 -112
- package/src/lib/agent_handler.ts +0 -28
- package/src/lib/app.ts +0 -314
- package/src/lib/app_handler.ts +0 -77
- package/src/lib/cluster.ts +0 -363
- package/src/lib/context.ts +0 -14
- package/src/lib/format_options.ts +0 -103
- package/src/lib/inject_context.ts +0 -134
- package/src/lib/mock_agent.ts +0 -57
- package/src/lib/mock_custom_loader.ts +0 -36
- package/src/lib/mock_http_server.ts +0 -19
- package/src/lib/mock_httpclient.ts +0 -183
- package/src/lib/parallel/agent.ts +0 -128
- package/src/lib/parallel/app.ts +0 -123
- package/src/lib/parallel/util.ts +0 -66
- package/src/lib/prerequire.ts +0 -25
- package/src/lib/request_call_function.ts +0 -49
- package/src/lib/restore.ts +0 -14
- package/src/lib/start-cluster.ts +0 -23
- package/src/lib/supertest.ts +0 -45
- package/src/lib/tmp/.gitkeep +0 -0
- package/src/lib/tmp/empty.ts +0 -0
- package/src/lib/utils.ts +0 -82
- package/src/register.ts +0 -80
- package/src/typings/index.d.ts +0 -4
|
@@ -0,0 +1,419 @@
|
|
|
1
|
+
import { __commonJS, __require } from "../../../../../../_virtual/rolldown_runtime.js";
|
|
2
|
+
import { require_environment } from "./environment.js";
|
|
3
|
+
import { require_Promise } from "./Promise.js";
|
|
4
|
+
import { require_validateOptions } from "./validateOptions.js";
|
|
5
|
+
import { require_embeddedWorker } from "./generated/embeddedWorker.js";
|
|
6
|
+
|
|
7
|
+
//#region ../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/WorkerHandler.js
|
|
8
|
+
var require_WorkerHandler = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/WorkerHandler.js": ((exports, module) => {
|
|
9
|
+
var { Promise: Promise$1 } = require_Promise();
|
|
10
|
+
var environment = require_environment();
|
|
11
|
+
const { validateOptions, forkOptsNames, workerThreadOptsNames, workerOptsNames } = require_validateOptions();
|
|
12
|
+
/**
|
|
13
|
+
* Special message sent by parent which causes a child process worker to terminate itself.
|
|
14
|
+
* Not a "message object"; this string is the entire message.
|
|
15
|
+
*/
|
|
16
|
+
var TERMINATE_METHOD_ID = "__workerpool-terminate__";
|
|
17
|
+
/**
|
|
18
|
+
* Special message by parent which causes a child process worker to perform cleaup
|
|
19
|
+
* steps before determining if the child process worker should be terminated.
|
|
20
|
+
*/
|
|
21
|
+
var CLEANUP_METHOD_ID = "__workerpool-cleanup__";
|
|
22
|
+
function ensureWorkerThreads() {
|
|
23
|
+
var WorkerThreads = tryRequireWorkerThreads();
|
|
24
|
+
if (!WorkerThreads) throw new Error("WorkerPool: workerType = 'thread' is not supported, Node >= 11.7.0 required");
|
|
25
|
+
return WorkerThreads;
|
|
26
|
+
}
|
|
27
|
+
function ensureWebWorker() {
|
|
28
|
+
if (typeof Worker !== "function" && (typeof Worker !== "object" || typeof Worker.prototype.constructor !== "function")) throw new Error("WorkerPool: Web Workers not supported");
|
|
29
|
+
}
|
|
30
|
+
function tryRequireWorkerThreads() {
|
|
31
|
+
try {
|
|
32
|
+
return __require("worker_threads");
|
|
33
|
+
} catch (error) {
|
|
34
|
+
if (typeof error === "object" && error !== null && error.code === "MODULE_NOT_FOUND") return null;
|
|
35
|
+
else throw error;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
function getDefaultWorker() {
|
|
39
|
+
if (environment.platform === "browser") {
|
|
40
|
+
if (typeof Blob === "undefined") throw new Error("Blob not supported by the browser");
|
|
41
|
+
if (!window.URL || typeof window.URL.createObjectURL !== "function") throw new Error("URL.createObjectURL not supported by the browser");
|
|
42
|
+
var blob = new Blob([require_embeddedWorker()], { type: "text/javascript" });
|
|
43
|
+
return window.URL.createObjectURL(blob);
|
|
44
|
+
} else return __dirname + "/worker.js";
|
|
45
|
+
}
|
|
46
|
+
function setupWorker(script, options) {
|
|
47
|
+
if (options.workerType === "web") {
|
|
48
|
+
ensureWebWorker();
|
|
49
|
+
return setupBrowserWorker(script, options.workerOpts, Worker);
|
|
50
|
+
} else if (options.workerType === "thread") {
|
|
51
|
+
WorkerThreads = ensureWorkerThreads();
|
|
52
|
+
return setupWorkerThreadWorker(script, WorkerThreads, options);
|
|
53
|
+
} else if (options.workerType === "process" || !options.workerType) return setupProcessWorker(script, resolveForkOptions(options), __require("child_process"));
|
|
54
|
+
else if (environment.platform === "browser") {
|
|
55
|
+
ensureWebWorker();
|
|
56
|
+
return setupBrowserWorker(script, options.workerOpts, Worker);
|
|
57
|
+
} else {
|
|
58
|
+
var WorkerThreads = tryRequireWorkerThreads();
|
|
59
|
+
if (WorkerThreads) return setupWorkerThreadWorker(script, WorkerThreads, options);
|
|
60
|
+
else return setupProcessWorker(script, resolveForkOptions(options), __require("child_process"));
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
function setupBrowserWorker(script, workerOpts, Worker$1) {
|
|
64
|
+
validateOptions(workerOpts, workerOptsNames, "workerOpts");
|
|
65
|
+
var worker = new Worker$1(script, workerOpts);
|
|
66
|
+
worker.isBrowserWorker = true;
|
|
67
|
+
worker.on = function(event, callback) {
|
|
68
|
+
this.addEventListener(event, function(message) {
|
|
69
|
+
callback(message.data);
|
|
70
|
+
});
|
|
71
|
+
};
|
|
72
|
+
worker.send = function(message, transfer) {
|
|
73
|
+
this.postMessage(message, transfer);
|
|
74
|
+
};
|
|
75
|
+
return worker;
|
|
76
|
+
}
|
|
77
|
+
function setupWorkerThreadWorker(script, WorkerThreads, options) {
|
|
78
|
+
validateOptions(options?.workerThreadOpts, workerThreadOptsNames, "workerThreadOpts");
|
|
79
|
+
var worker = new WorkerThreads.Worker(script, {
|
|
80
|
+
stdout: options?.emitStdStreams ?? false,
|
|
81
|
+
stderr: options?.emitStdStreams ?? false,
|
|
82
|
+
...options?.workerThreadOpts
|
|
83
|
+
});
|
|
84
|
+
worker.isWorkerThread = true;
|
|
85
|
+
worker.send = function(message, transfer) {
|
|
86
|
+
this.postMessage(message, transfer);
|
|
87
|
+
};
|
|
88
|
+
worker.kill = function() {
|
|
89
|
+
this.terminate();
|
|
90
|
+
return true;
|
|
91
|
+
};
|
|
92
|
+
worker.disconnect = function() {
|
|
93
|
+
this.terminate();
|
|
94
|
+
};
|
|
95
|
+
if (options?.emitStdStreams) {
|
|
96
|
+
worker.stdout.on("data", (data) => worker.emit("stdout", data));
|
|
97
|
+
worker.stderr.on("data", (data) => worker.emit("stderr", data));
|
|
98
|
+
}
|
|
99
|
+
return worker;
|
|
100
|
+
}
|
|
101
|
+
function setupProcessWorker(script, options, child_process) {
|
|
102
|
+
validateOptions(options.forkOpts, forkOptsNames, "forkOpts");
|
|
103
|
+
var worker = child_process.fork(script, options.forkArgs, options.forkOpts);
|
|
104
|
+
var send = worker.send;
|
|
105
|
+
worker.send = function(message) {
|
|
106
|
+
return send.call(worker, message);
|
|
107
|
+
};
|
|
108
|
+
if (options.emitStdStreams) {
|
|
109
|
+
worker.stdout.on("data", (data) => worker.emit("stdout", data));
|
|
110
|
+
worker.stderr.on("data", (data) => worker.emit("stderr", data));
|
|
111
|
+
}
|
|
112
|
+
worker.isChildProcess = true;
|
|
113
|
+
return worker;
|
|
114
|
+
}
|
|
115
|
+
function resolveForkOptions(opts) {
|
|
116
|
+
opts = opts || {};
|
|
117
|
+
var processExecArgv = process.execArgv.join(" ");
|
|
118
|
+
var inspectorActive = processExecArgv.indexOf("--inspect") !== -1;
|
|
119
|
+
var debugBrk = processExecArgv.indexOf("--debug-brk") !== -1;
|
|
120
|
+
var execArgv = [];
|
|
121
|
+
if (inspectorActive) {
|
|
122
|
+
execArgv.push("--inspect=" + opts.debugPort);
|
|
123
|
+
if (debugBrk) execArgv.push("--debug-brk");
|
|
124
|
+
}
|
|
125
|
+
process.execArgv.forEach(function(arg) {
|
|
126
|
+
if (arg.indexOf("--max-old-space-size") > -1) execArgv.push(arg);
|
|
127
|
+
});
|
|
128
|
+
return Object.assign({}, opts, {
|
|
129
|
+
forkArgs: opts.forkArgs,
|
|
130
|
+
forkOpts: Object.assign({}, opts.forkOpts, {
|
|
131
|
+
execArgv: (opts.forkOpts && opts.forkOpts.execArgv || []).concat(execArgv),
|
|
132
|
+
stdio: opts.emitStdStreams ? "pipe" : void 0
|
|
133
|
+
})
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Converts a serialized error to Error
|
|
138
|
+
* @param {Object} obj Error that has been serialized and parsed to object
|
|
139
|
+
* @return {Error} The equivalent Error.
|
|
140
|
+
*/
|
|
141
|
+
function objectToError(obj) {
|
|
142
|
+
var temp = /* @__PURE__ */ new Error("");
|
|
143
|
+
var props = Object.keys(obj);
|
|
144
|
+
for (var i = 0; i < props.length; i++) temp[props[i]] = obj[props[i]];
|
|
145
|
+
return temp;
|
|
146
|
+
}
|
|
147
|
+
function handleEmittedStdPayload(handler, payload) {
|
|
148
|
+
Object.values(handler.processing).forEach((task) => task?.options?.on(payload));
|
|
149
|
+
Object.values(handler.tracking).forEach((task) => task?.options?.on(payload));
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* A WorkerHandler controls a single worker. This worker can be a child process
|
|
153
|
+
* on node.js or a WebWorker in a browser environment.
|
|
154
|
+
* @param {String} [script] If no script is provided, a default worker with a
|
|
155
|
+
* function run will be created.
|
|
156
|
+
* @param {import('./types.js').WorkerPoolOptions} [_options] See docs
|
|
157
|
+
* @constructor
|
|
158
|
+
*/
|
|
159
|
+
function WorkerHandler(script, _options) {
|
|
160
|
+
var me = this;
|
|
161
|
+
var options = _options || {};
|
|
162
|
+
this.script = script || getDefaultWorker();
|
|
163
|
+
this.worker = setupWorker(this.script, options);
|
|
164
|
+
this.debugPort = options.debugPort;
|
|
165
|
+
this.forkOpts = options.forkOpts;
|
|
166
|
+
this.forkArgs = options.forkArgs;
|
|
167
|
+
this.workerOpts = options.workerOpts;
|
|
168
|
+
this.workerThreadOpts = options.workerThreadOpts;
|
|
169
|
+
this.workerTerminateTimeout = options.workerTerminateTimeout;
|
|
170
|
+
if (!script) this.worker.ready = true;
|
|
171
|
+
this.requestQueue = [];
|
|
172
|
+
this.worker.on("stdout", function(data) {
|
|
173
|
+
handleEmittedStdPayload(me, { "stdout": data.toString() });
|
|
174
|
+
});
|
|
175
|
+
this.worker.on("stderr", function(data) {
|
|
176
|
+
handleEmittedStdPayload(me, { "stderr": data.toString() });
|
|
177
|
+
});
|
|
178
|
+
this.worker.on("message", function(response) {
|
|
179
|
+
if (me.terminated) return;
|
|
180
|
+
if (typeof response === "string" && response === "ready") {
|
|
181
|
+
me.worker.ready = true;
|
|
182
|
+
dispatchQueuedRequests();
|
|
183
|
+
} else {
|
|
184
|
+
var id = response.id;
|
|
185
|
+
var task = me.processing[id];
|
|
186
|
+
if (task !== void 0) if (response.isEvent) {
|
|
187
|
+
if (task.options && typeof task.options.on === "function") task.options.on(response.payload);
|
|
188
|
+
} else {
|
|
189
|
+
delete me.processing[id];
|
|
190
|
+
if (me.terminating === true) me.terminate();
|
|
191
|
+
if (response.error) task.resolver.reject(objectToError(response.error));
|
|
192
|
+
else task.resolver.resolve(response.result);
|
|
193
|
+
}
|
|
194
|
+
else {
|
|
195
|
+
var task = me.tracking[id];
|
|
196
|
+
if (task !== void 0) {
|
|
197
|
+
if (response.isEvent) {
|
|
198
|
+
if (task.options && typeof task.options.on === "function") task.options.on(response.payload);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
if (response.method === CLEANUP_METHOD_ID) {
|
|
203
|
+
var trackedTask = me.tracking[response.id];
|
|
204
|
+
if (trackedTask !== void 0) if (response.error) {
|
|
205
|
+
clearTimeout(trackedTask.timeoutId);
|
|
206
|
+
trackedTask.resolver.reject(objectToError(response.error));
|
|
207
|
+
} else {
|
|
208
|
+
me.tracking && clearTimeout(trackedTask.timeoutId);
|
|
209
|
+
trackedTask.resolver.reject(new WrappedTimeoutError(trackedTask.error));
|
|
210
|
+
}
|
|
211
|
+
delete me.tracking[id];
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
function onError(error) {
|
|
216
|
+
me.terminated = true;
|
|
217
|
+
for (var id in me.processing) if (me.processing[id] !== void 0) me.processing[id].resolver.reject(error);
|
|
218
|
+
me.processing = Object.create(null);
|
|
219
|
+
}
|
|
220
|
+
function dispatchQueuedRequests() {
|
|
221
|
+
for (const request of me.requestQueue.splice(0)) me.worker.send(request.message, request.transfer);
|
|
222
|
+
}
|
|
223
|
+
var worker = this.worker;
|
|
224
|
+
this.worker.on("error", onError);
|
|
225
|
+
this.worker.on("exit", function(exitCode, signalCode) {
|
|
226
|
+
var message = "Workerpool Worker terminated Unexpectedly\n";
|
|
227
|
+
message += " exitCode: `" + exitCode + "`\n";
|
|
228
|
+
message += " signalCode: `" + signalCode + "`\n";
|
|
229
|
+
message += " workerpool.script: `" + me.script + "`\n";
|
|
230
|
+
message += " spawnArgs: `" + worker.spawnargs + "`\n";
|
|
231
|
+
message += " spawnfile: `" + worker.spawnfile + "`\n";
|
|
232
|
+
message += " stdout: `" + worker.stdout + "`\n";
|
|
233
|
+
message += " stderr: `" + worker.stderr + "`\n";
|
|
234
|
+
onError(new Error(message));
|
|
235
|
+
});
|
|
236
|
+
this.processing = Object.create(null);
|
|
237
|
+
this.tracking = Object.create(null);
|
|
238
|
+
this.terminating = false;
|
|
239
|
+
this.terminated = false;
|
|
240
|
+
this.cleaning = false;
|
|
241
|
+
this.terminationHandler = null;
|
|
242
|
+
this.lastId = 0;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Get a list with methods available on the worker.
|
|
246
|
+
* @return {Promise.<String[], Error>} methods
|
|
247
|
+
*/
|
|
248
|
+
WorkerHandler.prototype.methods = function() {
|
|
249
|
+
return this.exec("methods");
|
|
250
|
+
};
|
|
251
|
+
/**
|
|
252
|
+
* Execute a method with given parameters on the worker
|
|
253
|
+
* @param {String} method
|
|
254
|
+
* @param {Array} [params]
|
|
255
|
+
* @param {{resolve: Function, reject: Function}} [resolver]
|
|
256
|
+
* @param {import('./types.js').ExecOptions} [options]
|
|
257
|
+
* @return {Promise.<*, Error>} result
|
|
258
|
+
*/
|
|
259
|
+
WorkerHandler.prototype.exec = function(method, params, resolver, options) {
|
|
260
|
+
if (!resolver) resolver = Promise$1.defer();
|
|
261
|
+
var id = ++this.lastId;
|
|
262
|
+
this.processing[id] = {
|
|
263
|
+
id,
|
|
264
|
+
resolver,
|
|
265
|
+
options
|
|
266
|
+
};
|
|
267
|
+
var request = {
|
|
268
|
+
message: {
|
|
269
|
+
id,
|
|
270
|
+
method,
|
|
271
|
+
params
|
|
272
|
+
},
|
|
273
|
+
transfer: options && options.transfer
|
|
274
|
+
};
|
|
275
|
+
if (this.terminated) resolver.reject(/* @__PURE__ */ new Error("Worker is terminated"));
|
|
276
|
+
else if (this.worker.ready) this.worker.send(request.message, request.transfer);
|
|
277
|
+
else this.requestQueue.push(request);
|
|
278
|
+
var me = this;
|
|
279
|
+
return resolver.promise.catch(function(error) {
|
|
280
|
+
if (error instanceof Promise$1.CancellationError || error instanceof Promise$1.TimeoutError) {
|
|
281
|
+
me.tracking[id] = {
|
|
282
|
+
id,
|
|
283
|
+
resolver: Promise$1.defer(),
|
|
284
|
+
options,
|
|
285
|
+
error
|
|
286
|
+
};
|
|
287
|
+
delete me.processing[id];
|
|
288
|
+
me.tracking[id].resolver.promise = me.tracking[id].resolver.promise.catch(function(err) {
|
|
289
|
+
delete me.tracking[id];
|
|
290
|
+
if (err instanceof WrappedTimeoutError) throw err.error;
|
|
291
|
+
return me.terminateAndNotify(true).then(function() {
|
|
292
|
+
throw err;
|
|
293
|
+
}, function(err$1) {
|
|
294
|
+
throw err$1;
|
|
295
|
+
});
|
|
296
|
+
});
|
|
297
|
+
me.worker.send({
|
|
298
|
+
id,
|
|
299
|
+
method: CLEANUP_METHOD_ID
|
|
300
|
+
});
|
|
301
|
+
/**
|
|
302
|
+
* Sets a timeout to reject the cleanup operation if the message sent to the worker
|
|
303
|
+
* does not receive a response. see worker.tryCleanup for worker cleanup operations.
|
|
304
|
+
* Here we use the workerTerminateTimeout as the worker will be terminated if the timeout does invoke.
|
|
305
|
+
*
|
|
306
|
+
* We need this timeout in either case of a Timeout or Cancellation Error as if
|
|
307
|
+
* the worker does not send a message we still need to give a window of time for a response.
|
|
308
|
+
*
|
|
309
|
+
* The workerTermniateTimeout is used here if this promise is rejected the worker cleanup
|
|
310
|
+
* operations will occure.
|
|
311
|
+
*/
|
|
312
|
+
me.tracking[id].timeoutId = setTimeout(function() {
|
|
313
|
+
me.tracking[id].resolver.reject(error);
|
|
314
|
+
}, me.workerTerminateTimeout);
|
|
315
|
+
return me.tracking[id].resolver.promise;
|
|
316
|
+
} else throw error;
|
|
317
|
+
});
|
|
318
|
+
};
|
|
319
|
+
/**
|
|
320
|
+
* Test whether the worker is processing any tasks or cleaning up before termination.
|
|
321
|
+
* @return {boolean} Returns true if the worker is busy
|
|
322
|
+
*/
|
|
323
|
+
WorkerHandler.prototype.busy = function() {
|
|
324
|
+
return this.cleaning || Object.keys(this.processing).length > 0;
|
|
325
|
+
};
|
|
326
|
+
/**
|
|
327
|
+
* Terminate the worker.
|
|
328
|
+
* @param {boolean} [force=false] If false (default), the worker is terminated
|
|
329
|
+
* after finishing all tasks currently in
|
|
330
|
+
* progress. If true, the worker will be
|
|
331
|
+
* terminated immediately.
|
|
332
|
+
* @param {function} [callback=null] If provided, will be called when process terminates.
|
|
333
|
+
*/
|
|
334
|
+
WorkerHandler.prototype.terminate = function(force, callback) {
|
|
335
|
+
var me = this;
|
|
336
|
+
if (force) {
|
|
337
|
+
for (var id in this.processing) if (this.processing[id] !== void 0) this.processing[id].resolver.reject(/* @__PURE__ */ new Error("Worker terminated"));
|
|
338
|
+
this.processing = Object.create(null);
|
|
339
|
+
}
|
|
340
|
+
for (var task of Object.values(me.tracking)) {
|
|
341
|
+
clearTimeout(task.timeoutId);
|
|
342
|
+
task.resolver.reject(/* @__PURE__ */ new Error("Worker Terminating"));
|
|
343
|
+
}
|
|
344
|
+
me.tracking = Object.create(null);
|
|
345
|
+
if (typeof callback === "function") this.terminationHandler = callback;
|
|
346
|
+
if (!this.busy()) {
|
|
347
|
+
var cleanup = function(err) {
|
|
348
|
+
me.terminated = true;
|
|
349
|
+
me.cleaning = false;
|
|
350
|
+
if (me.worker != null && me.worker.removeAllListeners) me.worker.removeAllListeners("message");
|
|
351
|
+
me.worker = null;
|
|
352
|
+
me.terminating = false;
|
|
353
|
+
if (me.terminationHandler) me.terminationHandler(err, me);
|
|
354
|
+
else if (err) throw err;
|
|
355
|
+
};
|
|
356
|
+
if (this.worker) if (typeof this.worker.kill === "function") {
|
|
357
|
+
if (this.worker.killed) {
|
|
358
|
+
cleanup(/* @__PURE__ */ new Error("worker already killed!"));
|
|
359
|
+
return;
|
|
360
|
+
}
|
|
361
|
+
var cleanExitTimeout = setTimeout(function() {
|
|
362
|
+
if (me.worker) me.worker.kill();
|
|
363
|
+
}, this.workerTerminateTimeout);
|
|
364
|
+
this.worker.once("exit", function() {
|
|
365
|
+
clearTimeout(cleanExitTimeout);
|
|
366
|
+
if (me.worker) me.worker.killed = true;
|
|
367
|
+
cleanup();
|
|
368
|
+
});
|
|
369
|
+
if (this.worker.ready) this.worker.send(TERMINATE_METHOD_ID);
|
|
370
|
+
else this.requestQueue.push({ message: TERMINATE_METHOD_ID });
|
|
371
|
+
this.cleaning = true;
|
|
372
|
+
return;
|
|
373
|
+
} else if (typeof this.worker.terminate === "function") {
|
|
374
|
+
this.worker.terminate();
|
|
375
|
+
this.worker.killed = true;
|
|
376
|
+
} else throw new Error("Failed to terminate worker");
|
|
377
|
+
cleanup();
|
|
378
|
+
} else this.terminating = true;
|
|
379
|
+
};
|
|
380
|
+
/**
|
|
381
|
+
* Terminate the worker, returning a Promise that resolves when the termination has been done.
|
|
382
|
+
* @param {boolean} [force=false] If false (default), the worker is terminated
|
|
383
|
+
* after finishing all tasks currently in
|
|
384
|
+
* progress. If true, the worker will be
|
|
385
|
+
* terminated immediately.
|
|
386
|
+
* @param {number} [timeout] If provided and non-zero, worker termination promise will be rejected
|
|
387
|
+
* after timeout if worker process has not been terminated.
|
|
388
|
+
* @return {Promise.<WorkerHandler, Error>}
|
|
389
|
+
*/
|
|
390
|
+
WorkerHandler.prototype.terminateAndNotify = function(force, timeout) {
|
|
391
|
+
var resolver = Promise$1.defer();
|
|
392
|
+
if (timeout) resolver.promise.timeout(timeout);
|
|
393
|
+
this.terminate(force, function(err, worker) {
|
|
394
|
+
if (err) resolver.reject(err);
|
|
395
|
+
else resolver.resolve(worker);
|
|
396
|
+
});
|
|
397
|
+
return resolver.promise;
|
|
398
|
+
};
|
|
399
|
+
/**
|
|
400
|
+
* Wrapper error type to denote that a TimeoutError has already been proceesed
|
|
401
|
+
* and we should skip cleanup operations
|
|
402
|
+
* @param {Promise.TimeoutError} timeoutError
|
|
403
|
+
*/
|
|
404
|
+
function WrappedTimeoutError(timeoutError) {
|
|
405
|
+
this.error = timeoutError;
|
|
406
|
+
this.stack = (/* @__PURE__ */ new Error()).stack;
|
|
407
|
+
}
|
|
408
|
+
module.exports = WorkerHandler;
|
|
409
|
+
module.exports._tryRequireWorkerThreads = tryRequireWorkerThreads;
|
|
410
|
+
module.exports._setupProcessWorker = setupProcessWorker;
|
|
411
|
+
module.exports._setupBrowserWorker = setupBrowserWorker;
|
|
412
|
+
module.exports._setupWorkerThreadWorker = setupWorkerThreadWorker;
|
|
413
|
+
module.exports.ensureWorkerThreads = ensureWorkerThreads;
|
|
414
|
+
}) });
|
|
415
|
+
|
|
416
|
+
//#endregion
|
|
417
|
+
export default require_WorkerHandler();
|
|
418
|
+
|
|
419
|
+
export { require_WorkerHandler };
|
package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/debug-port-allocator.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { __commonJS } from "../../../../../../_virtual/rolldown_runtime.js";
|
|
2
|
+
|
|
3
|
+
//#region ../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/debug-port-allocator.js
|
|
4
|
+
var require_debug_port_allocator = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/debug-port-allocator.js": ((exports, module) => {
|
|
5
|
+
var MAX_PORTS = 65535;
|
|
6
|
+
module.exports = DebugPortAllocator;
|
|
7
|
+
function DebugPortAllocator() {
|
|
8
|
+
this.ports = Object.create(null);
|
|
9
|
+
this.length = 0;
|
|
10
|
+
}
|
|
11
|
+
DebugPortAllocator.prototype.nextAvailableStartingAt = function(starting) {
|
|
12
|
+
while (this.ports[starting] === true) starting++;
|
|
13
|
+
if (starting >= MAX_PORTS) throw new Error("WorkerPool debug port limit reached: " + starting + ">= " + MAX_PORTS);
|
|
14
|
+
this.ports[starting] = true;
|
|
15
|
+
this.length++;
|
|
16
|
+
return starting;
|
|
17
|
+
};
|
|
18
|
+
DebugPortAllocator.prototype.releasePort = function(port) {
|
|
19
|
+
delete this.ports[port];
|
|
20
|
+
this.length--;
|
|
21
|
+
};
|
|
22
|
+
}) });
|
|
23
|
+
|
|
24
|
+
//#endregion
|
|
25
|
+
export default require_debug_port_allocator();
|
|
26
|
+
|
|
27
|
+
export { require_debug_port_allocator };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { __commonJS, __require } from "../../../../../../_virtual/rolldown_runtime.js";
|
|
2
|
+
|
|
3
|
+
//#region ../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/environment.js
|
|
4
|
+
var require_environment = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/environment.js": ((exports, module) => {
|
|
5
|
+
var isNode = function(nodeProcess) {
|
|
6
|
+
return typeof nodeProcess !== "undefined" && nodeProcess.versions != null && nodeProcess.versions.node != null && nodeProcess + "" === "[object process]";
|
|
7
|
+
};
|
|
8
|
+
module.exports.isNode = isNode;
|
|
9
|
+
module.exports.platform = typeof process !== "undefined" && isNode(process) ? "node" : "browser";
|
|
10
|
+
var worker_threads = module.exports.platform === "node" && __require("worker_threads");
|
|
11
|
+
module.exports.isMainThread = module.exports.platform === "node" ? (!worker_threads || worker_threads.isMainThread) && !process.connected : typeof Window !== "undefined";
|
|
12
|
+
module.exports.cpus = module.exports.platform === "browser" ? self.navigator.hardwareConcurrency : __require("os").cpus().length;
|
|
13
|
+
}) });
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
export default require_environment();
|
|
17
|
+
|
|
18
|
+
export { require_environment };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { __commonJS } from "../../../../../../../_virtual/rolldown_runtime.js";
|
|
2
|
+
|
|
3
|
+
//#region ../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/generated/embeddedWorker.js
|
|
4
|
+
var require_embeddedWorker = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/generated/embeddedWorker.js": ((exports, module) => {
|
|
5
|
+
/**
|
|
6
|
+
* embeddedWorker.js contains an embedded version of worker.js.
|
|
7
|
+
* This file is automatically generated,
|
|
8
|
+
* changes made in this file will be overwritten.
|
|
9
|
+
*/
|
|
10
|
+
module.exports = "!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).worker=n()}(this,(function(){\"use strict\";function e(n){return e=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},e(n)}function n(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}var t={};var r=function(e,n){this.message=e,this.transfer=n},o={};function i(e,n){var t=this;if(!(this instanceof i))throw new SyntaxError(\"Constructor must be called with the new operator\");if(\"function\"!=typeof e)throw new SyntaxError(\"Function parameter handler(resolve, reject) missing\");var r=[],o=[];this.resolved=!1,this.rejected=!1,this.pending=!0,this[Symbol.toStringTag]=\"Promise\";var a=function(e,n){r.push(e),o.push(n)};this.then=function(e,n){return new i((function(t,r){var o=e?s(e,t,r):t,i=n?s(n,t,r):r;a(o,i)}),t)};var f=function(e){return t.resolved=!0,t.rejected=!1,t.pending=!1,r.forEach((function(n){n(e)})),a=function(n,t){n(e)},f=d=function(){},t},d=function(e){return t.resolved=!1,t.rejected=!0,t.pending=!1,o.forEach((function(n){n(e)})),a=function(n,t){t(e)},f=d=function(){},t};this.cancel=function(){return n?n.cancel():d(new u),t},this.timeout=function(e){if(n)n.timeout(e);else{var r=setTimeout((function(){d(new c(\"Promise timed out after \"+e+\" ms\"))}),e);t.always((function(){clearTimeout(r)}))}return t},e((function(e){f(e)}),(function(e){d(e)}))}function s(e,n,t){return function(r){try{var o=e(r);o&&\"function\"==typeof o.then&&\"function\"==typeof o.catch?o.then(n,t):n(o)}catch(e){t(e)}}}function u(e){this.message=e||\"promise cancelled\",this.stack=(new Error).stack}function c(e){this.message=e||\"timeout exceeded\",this.stack=(new Error).stack}return i.prototype.catch=function(e){return this.then(null,e)},i.prototype.always=function(e){return this.then(e,e)},i.prototype.finally=function(e){var n=this,t=function(){return new i((function(e){return e()})).then(e).then((function(){return n}))};return this.then(t,t)},i.all=function(e){return new i((function(n,t){var r=e.length,o=[];r?e.forEach((function(e,i){e.then((function(e){o[i]=e,0==--r&&n(o)}),(function(e){r=0,t(e)}))})):n(o)}))},i.defer=function(){var e={};return e.promise=new i((function(n,t){e.resolve=n,e.reject=t})),e},u.prototype=new Error,u.prototype.constructor=Error,u.prototype.name=\"CancellationError\",i.CancellationError=u,c.prototype=new Error,c.prototype.constructor=Error,c.prototype.name=\"TimeoutError\",i.TimeoutError=c,o.Promise=i,function(n){var t=r,i=o.Promise,s=\"__workerpool-cleanup__\",u={exit:function(){}},c={addAbortListener:function(e){u.abortListeners.push(e)},emit:u.emit};if(\"undefined\"!=typeof self&&\"function\"==typeof postMessage&&\"function\"==typeof addEventListener)u.on=function(e,n){addEventListener(e,(function(e){n(e.data)}))},u.send=function(e,n){n?postMessage(e,n):postMessage(e)};else{if(\"undefined\"==typeof process)throw new Error(\"Script must be executed as a worker\");var a;try{a=require(\"worker_threads\")}catch(n){if(\"object\"!==e(n)||null===n||\"MODULE_NOT_FOUND\"!==n.code)throw n}if(a&&null!==a.parentPort){var f=a.parentPort;u.send=f.postMessage.bind(f),u.on=f.on.bind(f),u.exit=process.exit.bind(process)}else u.on=process.on.bind(process),u.send=function(e){process.send(e)},u.on(\"disconnect\",(function(){process.exit(1)})),u.exit=process.exit.bind(process)}function d(e){return e&&e.toJSON?JSON.parse(JSON.stringify(e)):JSON.parse(JSON.stringify(e,Object.getOwnPropertyNames(e)))}function l(e){return e&&\"function\"==typeof e.then&&\"function\"==typeof e.catch}u.methods={},u.methods.run=function(e,n){var t=new Function(\"return (\"+e+\").apply(this, arguments);\");return t.worker=c,t.apply(t,n)},u.methods.methods=function(){return Object.keys(u.methods)},u.terminationHandler=void 0,u.abortListenerTimeout=1e3,u.abortListeners=[],u.terminateAndExit=function(e){var n=function(){u.exit(e)};if(!u.terminationHandler)return n();var t=u.terminationHandler(e);return l(t)?(t.then(n,n),t):(n(),new i((function(e,n){n(new Error(\"Worker terminating\"))})))},u.cleanup=function(e){if(!u.abortListeners.length)return u.send({id:e,method:s,error:d(new Error(\"Worker terminating\"))}),new i((function(e){e()}));var n,t=u.abortListeners.map((function(e){return e()})),r=new i((function(e,t){n=setTimeout((function(){t(new Error(\"Timeout occured waiting for abort handler, killing worker\"))}),u.abortListenerTimeout)})),o=i.all(t).then((function(){clearTimeout(n),u.abortListeners.length||(u.abortListeners=[])}),(function(){clearTimeout(n),u.exit()}));return new i((function(e,n){o.then(e,n),r.then(e,n)})).then((function(){u.send({id:e,method:s,error:null})}),(function(n){u.send({id:e,method:s,error:n?d(n):null})}))};var p=null;u.on(\"message\",(function(e){if(\"__workerpool-terminate__\"===e)return u.terminateAndExit(0);if(e.method===s)return u.cleanup(e.id);try{var n=u.methods[e.method];if(!n)throw new Error('Unknown method \"'+e.method+'\"');p=e.id;var r=n.apply(n,e.params);l(r)?r.then((function(n){n instanceof t?u.send({id:e.id,result:n.message,error:null},n.transfer):u.send({id:e.id,result:n,error:null}),p=null})).catch((function(n){u.send({id:e.id,result:null,error:d(n)}),p=null})):(r instanceof t?u.send({id:e.id,result:r.message,error:null},r.transfer):u.send({id:e.id,result:r,error:null}),p=null)}catch(n){u.send({id:e.id,result:null,error:d(n)})}})),u.register=function(e,n){if(e)for(var t in e)e.hasOwnProperty(t)&&(u.methods[t]=e[t],u.methods[t].worker=c);n&&(u.terminationHandler=n.onTerminate,u.abortListenerTimeout=n.abortListenerTimeout||1e3),u.send(\"ready\")},u.emit=function(e){if(p){if(e instanceof t)return void u.send({id:p,isEvent:!0,payload:e.message},e.transfer);u.send({id:p,isEvent:!0,payload:e})}},n.add=u.register,n.emit=u.emit}(t),n(t)}));\n//# sourceMappingURL=worker.min.js.map\n";
|
|
11
|
+
}) });
|
|
12
|
+
|
|
13
|
+
//#endregion
|
|
14
|
+
export default require_embeddedWorker();
|
|
15
|
+
|
|
16
|
+
export { require_embeddedWorker };
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { __commonJS } from "../../../../../../_virtual/rolldown_runtime.js";
|
|
2
|
+
import { require_environment } from "./environment.js";
|
|
3
|
+
import { require_Promise } from "./Promise.js";
|
|
4
|
+
import { require_Pool } from "./Pool.js";
|
|
5
|
+
import { require_transfer } from "./transfer.js";
|
|
6
|
+
import { require_worker } from "./worker.js";
|
|
7
|
+
|
|
8
|
+
//#region ../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/index.js
|
|
9
|
+
var require_src = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/index.js": ((exports) => {
|
|
10
|
+
const { platform, isMainThread, cpus } = require_environment();
|
|
11
|
+
/** @typedef {import("./Pool")} Pool */
|
|
12
|
+
/** @typedef {import("./types.js").WorkerPoolOptions} WorkerPoolOptions */
|
|
13
|
+
/** @typedef {import("./types.js").WorkerRegisterOptions} WorkerRegisterOptions */
|
|
14
|
+
/**
|
|
15
|
+
* @template { { [k: string]: (...args: any[]) => any } } T
|
|
16
|
+
* @typedef {import('./types.js').Proxy<T>} Proxy<T>
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* @overload
|
|
20
|
+
* Create a new worker pool
|
|
21
|
+
* @param {WorkerPoolOptions} [script]
|
|
22
|
+
* @returns {Pool} pool
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* @overload
|
|
26
|
+
* Create a new worker pool
|
|
27
|
+
* @param {string} [script]
|
|
28
|
+
* @param {WorkerPoolOptions} [options]
|
|
29
|
+
* @returns {Pool} pool
|
|
30
|
+
*/
|
|
31
|
+
function pool(script, options) {
|
|
32
|
+
return new (require_Pool())(script, options);
|
|
33
|
+
}
|
|
34
|
+
exports.pool = pool;
|
|
35
|
+
/**
|
|
36
|
+
* Create a worker and optionally register a set of methods to the worker.
|
|
37
|
+
* @param {{ [k: string]: (...args: any[]) => any }} [methods]
|
|
38
|
+
* @param {WorkerRegisterOptions} [options]
|
|
39
|
+
*/
|
|
40
|
+
function worker(methods, options) {
|
|
41
|
+
require_worker().add(methods, options);
|
|
42
|
+
}
|
|
43
|
+
exports.worker = worker;
|
|
44
|
+
/**
|
|
45
|
+
* Sends an event to the parent worker pool.
|
|
46
|
+
* @param {any} payload
|
|
47
|
+
*/
|
|
48
|
+
function workerEmit(payload) {
|
|
49
|
+
require_worker().emit(payload);
|
|
50
|
+
}
|
|
51
|
+
exports.workerEmit = workerEmit;
|
|
52
|
+
const { Promise: Promise$1 } = require_Promise();
|
|
53
|
+
exports.Promise = Promise$1;
|
|
54
|
+
exports.Transfer = require_transfer();
|
|
55
|
+
exports.platform = platform;
|
|
56
|
+
exports.isMainThread = isMainThread;
|
|
57
|
+
exports.cpus = cpus;
|
|
58
|
+
}) });
|
|
59
|
+
|
|
60
|
+
//#endregion
|
|
61
|
+
export default require_src();
|
|
62
|
+
|
|
63
|
+
export { require_src };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { __commonJS } from "../../../../../../_virtual/rolldown_runtime.js";
|
|
2
|
+
|
|
3
|
+
//#region ../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/transfer.js
|
|
4
|
+
var require_transfer = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/transfer.js": ((exports, module) => {
|
|
5
|
+
/**
|
|
6
|
+
* The helper class for transferring data from the worker to the main thread.
|
|
7
|
+
*
|
|
8
|
+
* @param {Object} message The object to deliver to the main thread.
|
|
9
|
+
* @param {Object[]} transfer An array of transferable Objects to transfer ownership of.
|
|
10
|
+
*/
|
|
11
|
+
function Transfer(message, transfer) {
|
|
12
|
+
this.message = message;
|
|
13
|
+
this.transfer = transfer;
|
|
14
|
+
}
|
|
15
|
+
module.exports = Transfer;
|
|
16
|
+
}) });
|
|
17
|
+
|
|
18
|
+
//#endregion
|
|
19
|
+
export default require_transfer();
|
|
20
|
+
|
|
21
|
+
export { require_transfer };
|
package/dist/node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/validateOptions.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { __commonJS } from "../../../../../../_virtual/rolldown_runtime.js";
|
|
2
|
+
|
|
3
|
+
//#region ../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/validateOptions.js
|
|
4
|
+
var require_validateOptions = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/workerpool@9.3.4/node_modules/workerpool/src/validateOptions.js": ((exports) => {}) });
|
|
5
|
+
|
|
6
|
+
//#endregion
|
|
7
|
+
export default require_validateOptions();
|
|
8
|
+
|
|
9
|
+
export { require_validateOptions };
|