@sockethub/server 5.0.0-alpha.15 → 5.0.0-alpha.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/config-schema.d.ts +58 -0
- package/dist/index.js +154781 -154593
- package/dist/index.js.map +45 -42
- package/dist/platform.js +295 -231
- package/dist/platform.js.map +8 -6
- package/dist/write-config.d.ts +18 -0
- package/package.json +14 -13
- package/res/sockethub-client.js +102 -8
- package/res/sockethub-client.min.js +19 -19
package/dist/platform.js
CHANGED
|
@@ -19800,9 +19800,87 @@ var init_activity_stream = __esm(() => {
|
|
|
19800
19800
|
// ../schemas/src/schemas/platform.ts
|
|
19801
19801
|
var init_platform = () => {};
|
|
19802
19802
|
|
|
19803
|
+
// ../schemas/package.json
|
|
19804
|
+
var package_default;
|
|
19805
|
+
var init_package = __esm(() => {
|
|
19806
|
+
package_default = {
|
|
19807
|
+
name: "@sockethub/schemas",
|
|
19808
|
+
description: "JSON schema files for validating Sockethub Activity Streams",
|
|
19809
|
+
version: "3.0.0-alpha.17",
|
|
19810
|
+
type: "module",
|
|
19811
|
+
private: false,
|
|
19812
|
+
author: "Nick Jennings <nick@silverbucket.net>",
|
|
19813
|
+
license: "MIT",
|
|
19814
|
+
publishConfig: {
|
|
19815
|
+
access: "public"
|
|
19816
|
+
},
|
|
19817
|
+
main: "dist/index.js",
|
|
19818
|
+
exports: {
|
|
19819
|
+
".": {
|
|
19820
|
+
types: "./dist/index.d.ts",
|
|
19821
|
+
import: "./dist/index.js",
|
|
19822
|
+
default: "./dist/index.js"
|
|
19823
|
+
},
|
|
19824
|
+
"./context": {
|
|
19825
|
+
types: "./dist/context.d.ts",
|
|
19826
|
+
import: "./dist/context.js",
|
|
19827
|
+
default: "./dist/context.js"
|
|
19828
|
+
},
|
|
19829
|
+
"./object-types": {
|
|
19830
|
+
types: "./dist/object-types.d.ts",
|
|
19831
|
+
import: "./dist/object-types.js",
|
|
19832
|
+
default: "./dist/object-types.js"
|
|
19833
|
+
},
|
|
19834
|
+
"./schemas/json/sockethub-config.json": {
|
|
19835
|
+
default: "./dist/schemas/json/sockethub-config.json"
|
|
19836
|
+
}
|
|
19837
|
+
},
|
|
19838
|
+
files: [
|
|
19839
|
+
"dist/"
|
|
19840
|
+
],
|
|
19841
|
+
engines: {
|
|
19842
|
+
node: ">=20"
|
|
19843
|
+
},
|
|
19844
|
+
keywords: [
|
|
19845
|
+
"sockethub",
|
|
19846
|
+
"sockethub schema",
|
|
19847
|
+
"activity streams",
|
|
19848
|
+
"activity objects",
|
|
19849
|
+
"sockethub platforms"
|
|
19850
|
+
],
|
|
19851
|
+
repository: {
|
|
19852
|
+
type: "git",
|
|
19853
|
+
url: "git+https://github.com/sockethub/sockethub.git",
|
|
19854
|
+
directory: "packages/schemas"
|
|
19855
|
+
},
|
|
19856
|
+
homepage: "https://github.com/sockethub/sockethub/tree/master/packages/schemas",
|
|
19857
|
+
devDependencies: {
|
|
19858
|
+
"@types/bun": "latest"
|
|
19859
|
+
},
|
|
19860
|
+
scripts: {
|
|
19861
|
+
build: "bun ./scripts/export-json-schema.ts && bun ./scripts/export-canonical-assets.ts && bun build src/index.ts src/object-types.ts --outdir dist --target node --format esm --sourcemap=external && bun build src/context.ts src/activity-stream-helper.ts --outdir dist --target browser --format esm --sourcemap=external",
|
|
19862
|
+
clean: "rm -rf dist",
|
|
19863
|
+
"clean:deps": "rm -rf node_modules"
|
|
19864
|
+
},
|
|
19865
|
+
dependencies: {
|
|
19866
|
+
ajv: "^8.17.1",
|
|
19867
|
+
"ajv-formats": "^2.1.1",
|
|
19868
|
+
"ajv-formats-draft2019": "^1.6.1"
|
|
19869
|
+
},
|
|
19870
|
+
gitHead: "578a6432b9f09a8484832a7ff3e157c1d3898a7e",
|
|
19871
|
+
types: "./dist/index.d.ts"
|
|
19872
|
+
};
|
|
19873
|
+
});
|
|
19874
|
+
|
|
19875
|
+
// ../schemas/src/schema-id.ts
|
|
19876
|
+
function versionedSchemaId(id, version) {
|
|
19877
|
+
return id.replace("/v/", `/${version}/`);
|
|
19878
|
+
}
|
|
19879
|
+
|
|
19803
19880
|
// ../schemas/src/schemas/sockethub-config.ts
|
|
19804
|
-
var SockethubConfigSchema;
|
|
19881
|
+
var SockethubConfigSchema, SockethubConfigSchemaId;
|
|
19805
19882
|
var init_sockethub_config = __esm(() => {
|
|
19883
|
+
init_package();
|
|
19806
19884
|
SockethubConfigSchema = {
|
|
19807
19885
|
$id: "https://sockethub.org/schemas/v/sockethub-config.json",
|
|
19808
19886
|
description: "Sockethub Config Schema",
|
|
@@ -19815,11 +19893,13 @@ var init_sockethub_config = __esm(() => {
|
|
|
19815
19893
|
},
|
|
19816
19894
|
examples: {
|
|
19817
19895
|
type: "boolean",
|
|
19818
|
-
default: true
|
|
19896
|
+
default: true,
|
|
19897
|
+
description: "Enable the examples pages served at [host]:[port]/examples"
|
|
19819
19898
|
},
|
|
19820
19899
|
info: {
|
|
19821
19900
|
type: "boolean",
|
|
19822
|
-
default: false
|
|
19901
|
+
default: false,
|
|
19902
|
+
description: "Display Sockethub runtime information"
|
|
19823
19903
|
},
|
|
19824
19904
|
logging: {
|
|
19825
19905
|
type: "object",
|
|
@@ -19846,7 +19926,9 @@ var init_sockethub_config = __esm(() => {
|
|
|
19846
19926
|
items: {
|
|
19847
19927
|
type: "string"
|
|
19848
19928
|
},
|
|
19929
|
+
description: "Platform packages to load",
|
|
19849
19930
|
default: [
|
|
19931
|
+
"@sockethub/platform-caldav",
|
|
19850
19932
|
"@sockethub/platform-dummy",
|
|
19851
19933
|
"@sockethub/platform-feeds",
|
|
19852
19934
|
"@sockethub/platform-irc",
|
|
@@ -19856,7 +19938,19 @@ var init_sockethub_config = __esm(() => {
|
|
|
19856
19938
|
},
|
|
19857
19939
|
packageConfig: {
|
|
19858
19940
|
type: "object",
|
|
19941
|
+
default: {},
|
|
19942
|
+
description: "Per-platform config keyed by package name, validated against " + "each platform's config schema and forwarded to its child process",
|
|
19859
19943
|
properties: {
|
|
19944
|
+
"@sockethub/platform-caldav": {
|
|
19945
|
+
type: "object",
|
|
19946
|
+
additionalProperties: false,
|
|
19947
|
+
properties: {
|
|
19948
|
+
connectTimeoutMs: { type: "integer", minimum: 1 },
|
|
19949
|
+
allowPrivateAddresses: { type: "boolean" },
|
|
19950
|
+
allowInsecureHttp: { type: "boolean" },
|
|
19951
|
+
concurrency: { type: "integer", minimum: 1 }
|
|
19952
|
+
}
|
|
19953
|
+
},
|
|
19860
19954
|
"@sockethub/platform-dummy": {
|
|
19861
19955
|
type: "object",
|
|
19862
19956
|
additionalProperties: false,
|
|
@@ -19965,7 +20059,8 @@ var init_sockethub_config = __esm(() => {
|
|
|
19965
20059
|
maxConnectionsPerIp: {
|
|
19966
20060
|
type: "number",
|
|
19967
20061
|
minimum: 0,
|
|
19968
|
-
default: 0
|
|
20062
|
+
default: 0,
|
|
20063
|
+
description: "Maximum concurrent socket connections per client IP. " + "The per-event rate limiter is keyed by socket id, so " + "without a connection cap a client can bypass it by " + "opening more sockets. 0 disables the cap."
|
|
19969
20064
|
}
|
|
19970
20065
|
}
|
|
19971
20066
|
},
|
|
@@ -19976,7 +20071,8 @@ var init_sockethub_config = __esm(() => {
|
|
|
19976
20071
|
maxPlatformInstances: {
|
|
19977
20072
|
type: "number",
|
|
19978
20073
|
minimum: 0,
|
|
19979
|
-
default: 0
|
|
20074
|
+
default: 0,
|
|
20075
|
+
description: "Upper bound on concurrently running platform instances " + "(child processes). Each persistent-platform actor forks " + "its own process, so an unbounded count is a resource " + "exhaustion risk on public instances. 0 disables the cap."
|
|
19980
20076
|
}
|
|
19981
20077
|
}
|
|
19982
20078
|
},
|
|
@@ -20041,7 +20137,8 @@ var init_sockethub_config = __esm(() => {
|
|
|
20041
20137
|
properties: {
|
|
20042
20138
|
origin: {
|
|
20043
20139
|
type: "string",
|
|
20044
|
-
default: "*"
|
|
20140
|
+
default: "*",
|
|
20141
|
+
description: "Allowed CORS origin(s) for socket.io connections " + "and the HTTP actions endpoint. '*' allows any " + "website to connect visitors' browsers to this " + "instance; public deployments should set an " + "explicit origin or comma-separated list of " + "origins."
|
|
20045
20142
|
}
|
|
20046
20143
|
}
|
|
20047
20144
|
}
|
|
@@ -20053,7 +20150,8 @@ var init_sockethub_config = __esm(() => {
|
|
|
20053
20150
|
properties: {
|
|
20054
20151
|
enabled: {
|
|
20055
20152
|
type: "boolean",
|
|
20056
|
-
default: false
|
|
20153
|
+
default: false,
|
|
20154
|
+
description: "Enable the HTTP actions endpoint"
|
|
20057
20155
|
},
|
|
20058
20156
|
path: {
|
|
20059
20157
|
type: "string",
|
|
@@ -20106,6 +20204,7 @@ var init_sockethub_config = __esm(() => {
|
|
|
20106
20204
|
}
|
|
20107
20205
|
}
|
|
20108
20206
|
};
|
|
20207
|
+
SockethubConfigSchemaId = versionedSchemaId(SockethubConfigSchema.$id, package_default.version);
|
|
20109
20208
|
});
|
|
20110
20209
|
|
|
20111
20210
|
// ../../node_modules/ajv/dist/compile/codegen/code.js
|
|
@@ -69637,6 +69736,184 @@ var require_main = __commonJS((exports, module) => {
|
|
|
69637
69736
|
module.exports = convict;
|
|
69638
69737
|
});
|
|
69639
69738
|
|
|
69739
|
+
// src/config-schema.ts
|
|
69740
|
+
function isLeaf(node, overlay) {
|
|
69741
|
+
if (overlay?.leaf) {
|
|
69742
|
+
return true;
|
|
69743
|
+
}
|
|
69744
|
+
return !(node.type === "object" && node.properties);
|
|
69745
|
+
}
|
|
69746
|
+
function hasDefault(node, overlay) {
|
|
69747
|
+
return Object.hasOwn(node, "default") || overlay !== undefined && Object.hasOwn(overlay, "default");
|
|
69748
|
+
}
|
|
69749
|
+
function defaultOf(node, overlay) {
|
|
69750
|
+
const value = Object.hasOwn(node, "default") ? node.default : overlay?.default;
|
|
69751
|
+
return value !== null && typeof value === "object" ? structuredClone(value) : value;
|
|
69752
|
+
}
|
|
69753
|
+
function convictFormat(node, path, overlay) {
|
|
69754
|
+
if (overlay?.format !== undefined) {
|
|
69755
|
+
return overlay.format;
|
|
69756
|
+
}
|
|
69757
|
+
if (Array.isArray(node.enum)) {
|
|
69758
|
+
return [...node.enum];
|
|
69759
|
+
}
|
|
69760
|
+
if (Array.isArray(node.type)) {
|
|
69761
|
+
return "*";
|
|
69762
|
+
}
|
|
69763
|
+
switch (node.type) {
|
|
69764
|
+
case "boolean":
|
|
69765
|
+
return Boolean;
|
|
69766
|
+
case "string":
|
|
69767
|
+
return String;
|
|
69768
|
+
case "number":
|
|
69769
|
+
case "integer":
|
|
69770
|
+
return Number;
|
|
69771
|
+
case "array":
|
|
69772
|
+
return Array;
|
|
69773
|
+
case "object":
|
|
69774
|
+
return Object;
|
|
69775
|
+
default:
|
|
69776
|
+
throw new Error(`config schema: unsupported type "${node.type}" at "${path}"`);
|
|
69777
|
+
}
|
|
69778
|
+
}
|
|
69779
|
+
function buildDefinition(node, overlays, consumed, prefix = "") {
|
|
69780
|
+
const definition = {};
|
|
69781
|
+
for (const [key, child] of Object.entries(node.properties ?? {})) {
|
|
69782
|
+
const path = prefix ? `${prefix}.${key}` : key;
|
|
69783
|
+
const overlay = overlays[path];
|
|
69784
|
+
if (overlay) {
|
|
69785
|
+
consumed.add(path);
|
|
69786
|
+
}
|
|
69787
|
+
if (!isLeaf(child, overlay)) {
|
|
69788
|
+
definition[key] = buildDefinition(child, overlays, consumed, path);
|
|
69789
|
+
continue;
|
|
69790
|
+
}
|
|
69791
|
+
if (!hasDefault(child, overlay)) {
|
|
69792
|
+
throw new Error(`config schema: no default declared for "${path}" in the ` + "JSON schema or its overlay entry");
|
|
69793
|
+
}
|
|
69794
|
+
const leaf = {
|
|
69795
|
+
format: convictFormat(child, path, overlay),
|
|
69796
|
+
default: defaultOf(child, overlay)
|
|
69797
|
+
};
|
|
69798
|
+
if (child.description) {
|
|
69799
|
+
leaf.doc = child.description;
|
|
69800
|
+
}
|
|
69801
|
+
if (overlay?.env) {
|
|
69802
|
+
leaf.env = overlay.env;
|
|
69803
|
+
}
|
|
69804
|
+
if (overlay?.arg) {
|
|
69805
|
+
leaf.arg = overlay.arg;
|
|
69806
|
+
}
|
|
69807
|
+
definition[key] = leaf;
|
|
69808
|
+
}
|
|
69809
|
+
return definition;
|
|
69810
|
+
}
|
|
69811
|
+
function buildConvictDefinition(jsonSchema, overlays) {
|
|
69812
|
+
const consumed = new Set;
|
|
69813
|
+
const definition = buildDefinition(jsonSchema, overlays, consumed);
|
|
69814
|
+
const unknown = Object.keys(overlays).filter((path) => !consumed.has(path));
|
|
69815
|
+
if (unknown.length > 0) {
|
|
69816
|
+
throw new Error("config schema: overlay entries reference paths missing from " + `the JSON schema: ${unknown.join(", ")}`);
|
|
69817
|
+
}
|
|
69818
|
+
return definition;
|
|
69819
|
+
}
|
|
69820
|
+
function buildSchema() {
|
|
69821
|
+
return import_convict.default(buildConvictDefinition(SockethubConfigSchema, OVERLAY));
|
|
69822
|
+
}
|
|
69823
|
+
var import_convict, OVERLAY, EMPTY_ENV_IS_UNSET_VARS;
|
|
69824
|
+
var init_config_schema = __esm(() => {
|
|
69825
|
+
init_src2();
|
|
69826
|
+
import_convict = __toESM(require_main(), 1);
|
|
69827
|
+
OVERLAY = {
|
|
69828
|
+
$schema: { default: "" },
|
|
69829
|
+
examples: { arg: "examples" },
|
|
69830
|
+
info: { arg: "info" },
|
|
69831
|
+
"logging.level": { env: "LOG_LEVEL", emptyEnvIsUnset: true },
|
|
69832
|
+
"logging.fileLevel": { env: "LOG_FILE_LEVEL", emptyEnvIsUnset: true },
|
|
69833
|
+
"logging.file": { env: "LOG_FILE", emptyEnvIsUnset: true },
|
|
69834
|
+
packageConfig: { leaf: true, format: Object },
|
|
69835
|
+
"public.port": { format: "port" },
|
|
69836
|
+
"rateLimiter.windowMs": { format: "nat" },
|
|
69837
|
+
"rateLimiter.maxRequests": { format: "nat" },
|
|
69838
|
+
"rateLimiter.blockDurationMs": { format: "nat" },
|
|
69839
|
+
"rateLimiter.maxConnectionsPerIp": { format: "nat" },
|
|
69840
|
+
"limits.maxPlatformInstances": { format: "nat" },
|
|
69841
|
+
"credentials.ttlMs": {
|
|
69842
|
+
format: "nat",
|
|
69843
|
+
env: "SOCKETHUB_CREDENTIALS_TTL_MS",
|
|
69844
|
+
emptyEnvIsUnset: true
|
|
69845
|
+
},
|
|
69846
|
+
"redis.url": {
|
|
69847
|
+
env: "REDIS_URL",
|
|
69848
|
+
emptyEnvIsUnset: true,
|
|
69849
|
+
arg: "redis.url"
|
|
69850
|
+
},
|
|
69851
|
+
"redis.connectTimeout": { format: "nat" },
|
|
69852
|
+
"redis.disconnectTimeout": { format: "nat" },
|
|
69853
|
+
"redis.maxRetriesPerRequest": { format: "*" },
|
|
69854
|
+
"sentry.dsn": { arg: "sentry.dsn" },
|
|
69855
|
+
"sockethub.port": {
|
|
69856
|
+
format: "port",
|
|
69857
|
+
env: "PORT",
|
|
69858
|
+
emptyEnvIsUnset: true,
|
|
69859
|
+
arg: "port"
|
|
69860
|
+
},
|
|
69861
|
+
"sockethub.host": { env: "HOST", emptyEnvIsUnset: true, arg: "host" },
|
|
69862
|
+
"sockethub.cors.origin": {
|
|
69863
|
+
env: "SOCKETHUB_CORS_ORIGIN",
|
|
69864
|
+
arg: "cors.origin"
|
|
69865
|
+
},
|
|
69866
|
+
"httpActions.enabled": {
|
|
69867
|
+
env: "SOCKETHUB_HTTP_ACTIONS_ENABLED",
|
|
69868
|
+
emptyEnvIsUnset: true
|
|
69869
|
+
},
|
|
69870
|
+
"httpActions.path": {
|
|
69871
|
+
env: "SOCKETHUB_HTTP_ACTIONS_PATH",
|
|
69872
|
+
emptyEnvIsUnset: true
|
|
69873
|
+
},
|
|
69874
|
+
"httpActions.requireRequestId": {
|
|
69875
|
+
env: "SOCKETHUB_HTTP_ACTIONS_REQUIRE_REQUEST_ID",
|
|
69876
|
+
emptyEnvIsUnset: true
|
|
69877
|
+
},
|
|
69878
|
+
"httpActions.maxMessagesPerRequest": {
|
|
69879
|
+
format: "nat",
|
|
69880
|
+
env: "SOCKETHUB_HTTP_ACTIONS_MAX_MESSAGES_PER_REQUEST",
|
|
69881
|
+
emptyEnvIsUnset: true
|
|
69882
|
+
},
|
|
69883
|
+
"httpActions.maxPayloadBytes": {
|
|
69884
|
+
format: "nat",
|
|
69885
|
+
env: "SOCKETHUB_HTTP_ACTIONS_MAX_PAYLOAD_BYTES",
|
|
69886
|
+
emptyEnvIsUnset: true
|
|
69887
|
+
},
|
|
69888
|
+
"httpActions.idempotencyTtlMs": {
|
|
69889
|
+
format: "nat",
|
|
69890
|
+
env: "SOCKETHUB_HTTP_ACTIONS_IDEMPOTENCY_TTL_MS",
|
|
69891
|
+
emptyEnvIsUnset: true
|
|
69892
|
+
},
|
|
69893
|
+
"httpActions.requestTimeoutMs": {
|
|
69894
|
+
format: "nat",
|
|
69895
|
+
env: "SOCKETHUB_HTTP_ACTIONS_REQUEST_TIMEOUT_MS",
|
|
69896
|
+
emptyEnvIsUnset: true
|
|
69897
|
+
},
|
|
69898
|
+
"httpActions.idleTimeoutMs": {
|
|
69899
|
+
format: "nat",
|
|
69900
|
+
env: "SOCKETHUB_HTTP_ACTIONS_IDLE_TIMEOUT_MS",
|
|
69901
|
+
emptyEnvIsUnset: true
|
|
69902
|
+
},
|
|
69903
|
+
"platformHeartbeat.intervalMs": {
|
|
69904
|
+
format: "nat",
|
|
69905
|
+
env: "SOCKETHUB_PLATFORM_HEARTBEAT_INTERVAL_MS",
|
|
69906
|
+
emptyEnvIsUnset: true
|
|
69907
|
+
},
|
|
69908
|
+
"platformHeartbeat.timeoutMs": {
|
|
69909
|
+
format: "nat",
|
|
69910
|
+
env: "SOCKETHUB_PLATFORM_HEARTBEAT_TIMEOUT_MS",
|
|
69911
|
+
emptyEnvIsUnset: true
|
|
69912
|
+
}
|
|
69913
|
+
};
|
|
69914
|
+
EMPTY_ENV_IS_UNSET_VARS = Object.values(OVERLAY).filter((entry) => entry.emptyEnvIsUnset && entry.env).map((entry) => entry.env);
|
|
69915
|
+
});
|
|
69916
|
+
|
|
69640
69917
|
// src/logger-core.ts
|
|
69641
69918
|
function createWinstonLogger(namespace, options = {}) {
|
|
69642
69919
|
const cfg = {
|
|
@@ -69681,199 +69958,6 @@ var init_logger_core = __esm(() => {
|
|
|
69681
69958
|
// src/config.ts
|
|
69682
69959
|
import fs from "node:fs";
|
|
69683
69960
|
import path from "node:path";
|
|
69684
|
-
function buildSchema() {
|
|
69685
|
-
return import_convict.default({
|
|
69686
|
-
$schema: { format: String, default: "" },
|
|
69687
|
-
examples: {
|
|
69688
|
-
doc: "Enable the examples pages served at [host]:[port]/examples",
|
|
69689
|
-
format: Boolean,
|
|
69690
|
-
default: true,
|
|
69691
|
-
arg: "examples"
|
|
69692
|
-
},
|
|
69693
|
-
info: {
|
|
69694
|
-
doc: "Display Sockethub runtime information",
|
|
69695
|
-
format: Boolean,
|
|
69696
|
-
default: false,
|
|
69697
|
-
arg: "info"
|
|
69698
|
-
},
|
|
69699
|
-
logging: {
|
|
69700
|
-
level: {
|
|
69701
|
-
format: LOG_LEVELS,
|
|
69702
|
-
default: "info",
|
|
69703
|
-
env: "LOG_LEVEL"
|
|
69704
|
-
},
|
|
69705
|
-
fileLevel: {
|
|
69706
|
-
format: LOG_LEVELS,
|
|
69707
|
-
default: "debug",
|
|
69708
|
-
env: "LOG_FILE_LEVEL"
|
|
69709
|
-
},
|
|
69710
|
-
file: {
|
|
69711
|
-
format: String,
|
|
69712
|
-
default: "sockethub.log",
|
|
69713
|
-
env: "LOG_FILE"
|
|
69714
|
-
}
|
|
69715
|
-
},
|
|
69716
|
-
platforms: {
|
|
69717
|
-
doc: "Platform packages to load",
|
|
69718
|
-
format: Array,
|
|
69719
|
-
default: [
|
|
69720
|
-
"@sockethub/platform-dummy",
|
|
69721
|
-
"@sockethub/platform-feeds",
|
|
69722
|
-
"@sockethub/platform-irc",
|
|
69723
|
-
"@sockethub/platform-metadata",
|
|
69724
|
-
"@sockethub/platform-xmpp"
|
|
69725
|
-
]
|
|
69726
|
-
},
|
|
69727
|
-
packageConfig: {
|
|
69728
|
-
doc: "Per-platform config keyed by package name, validated against " + "each platform's config schema and forwarded to its child process",
|
|
69729
|
-
format: Object,
|
|
69730
|
-
default: {}
|
|
69731
|
-
},
|
|
69732
|
-
public: {
|
|
69733
|
-
protocol: { format: String, default: "http" },
|
|
69734
|
-
host: { format: String, default: "localhost" },
|
|
69735
|
-
port: { format: "port", default: 10550 },
|
|
69736
|
-
path: { format: String, default: "/" }
|
|
69737
|
-
},
|
|
69738
|
-
rateLimiter: {
|
|
69739
|
-
windowMs: { format: "nat", default: 1000 },
|
|
69740
|
-
maxRequests: { format: "nat", default: 100 },
|
|
69741
|
-
blockDurationMs: { format: "nat", default: 5000 },
|
|
69742
|
-
maxConnectionsPerIp: {
|
|
69743
|
-
doc: "Maximum concurrent socket connections per client IP. " + "The per-event rate limiter is keyed by socket id, so " + "without a connection cap a client can bypass it by " + "opening more sockets. 0 disables the cap.",
|
|
69744
|
-
format: "nat",
|
|
69745
|
-
default: 0
|
|
69746
|
-
}
|
|
69747
|
-
},
|
|
69748
|
-
limits: {
|
|
69749
|
-
maxPlatformInstances: {
|
|
69750
|
-
doc: "Upper bound on concurrently running platform instances " + "(child processes). Each persistent-platform actor forks " + "its own process, so an unbounded count is a resource " + "exhaustion risk on public instances. 0 disables the cap.",
|
|
69751
|
-
format: "nat",
|
|
69752
|
-
default: 0
|
|
69753
|
-
}
|
|
69754
|
-
},
|
|
69755
|
-
credentials: {
|
|
69756
|
-
ttlMs: {
|
|
69757
|
-
doc: "Sliding TTL in milliseconds for per-session encrypted " + "credential keys in Redis, refreshed on every save and " + "read. A backstop against keys orphaned by crashes; " + "sessions normally delete their key on disconnect. " + "Size generously — idle sessions do not refresh it. " + "0 disables expiry.",
|
|
69758
|
-
format: "nat",
|
|
69759
|
-
default: 604800000,
|
|
69760
|
-
env: "SOCKETHUB_CREDENTIALS_TTL_MS"
|
|
69761
|
-
}
|
|
69762
|
-
},
|
|
69763
|
-
credentialCheck: {
|
|
69764
|
-
reconnectIpSource: {
|
|
69765
|
-
format: ["socket", "proxy"],
|
|
69766
|
-
default: "socket"
|
|
69767
|
-
},
|
|
69768
|
-
proxyHeader: { format: String, default: "x-forwarded-for" }
|
|
69769
|
-
},
|
|
69770
|
-
redis: {
|
|
69771
|
-
url: {
|
|
69772
|
-
format: String,
|
|
69773
|
-
default: "redis://127.0.0.1:6379",
|
|
69774
|
-
env: "REDIS_URL",
|
|
69775
|
-
arg: "redis.url"
|
|
69776
|
-
},
|
|
69777
|
-
connectTimeout: {
|
|
69778
|
-
format: "nat",
|
|
69779
|
-
default: 1e4,
|
|
69780
|
-
doc: "Connection timeout in milliseconds"
|
|
69781
|
-
},
|
|
69782
|
-
disconnectTimeout: {
|
|
69783
|
-
format: "nat",
|
|
69784
|
-
default: 5000,
|
|
69785
|
-
doc: "Disconnect timeout in milliseconds"
|
|
69786
|
-
},
|
|
69787
|
-
maxRetriesPerRequest: {
|
|
69788
|
-
format: "*",
|
|
69789
|
-
default: null
|
|
69790
|
-
}
|
|
69791
|
-
},
|
|
69792
|
-
sentry: {
|
|
69793
|
-
dsn: { format: String, default: "", arg: "sentry.dsn" },
|
|
69794
|
-
traceSampleRate: { format: Number, default: 1 }
|
|
69795
|
-
},
|
|
69796
|
-
sockethub: {
|
|
69797
|
-
port: {
|
|
69798
|
-
format: "port",
|
|
69799
|
-
default: 10550,
|
|
69800
|
-
env: "PORT",
|
|
69801
|
-
arg: "port"
|
|
69802
|
-
},
|
|
69803
|
-
host: {
|
|
69804
|
-
format: String,
|
|
69805
|
-
default: "localhost",
|
|
69806
|
-
env: "HOST",
|
|
69807
|
-
arg: "host"
|
|
69808
|
-
},
|
|
69809
|
-
path: { format: String, default: "/sockethub" },
|
|
69810
|
-
cors: {
|
|
69811
|
-
origin: {
|
|
69812
|
-
doc: "Allowed CORS origin(s) for socket.io connections " + "and the HTTP actions endpoint. '*' allows any " + "website to connect visitors' browsers to this " + "instance; public deployments should set an " + "explicit origin or comma-separated list of " + "origins.",
|
|
69813
|
-
format: String,
|
|
69814
|
-
default: "*",
|
|
69815
|
-
env: "SOCKETHUB_CORS_ORIGIN",
|
|
69816
|
-
arg: "cors.origin"
|
|
69817
|
-
}
|
|
69818
|
-
}
|
|
69819
|
-
},
|
|
69820
|
-
httpActions: {
|
|
69821
|
-
enabled: {
|
|
69822
|
-
doc: "Enable the HTTP actions endpoint",
|
|
69823
|
-
format: Boolean,
|
|
69824
|
-
default: false,
|
|
69825
|
-
env: "SOCKETHUB_HTTP_ACTIONS_ENABLED"
|
|
69826
|
-
},
|
|
69827
|
-
path: {
|
|
69828
|
-
format: String,
|
|
69829
|
-
default: "/sockethub-http",
|
|
69830
|
-
env: "SOCKETHUB_HTTP_ACTIONS_PATH"
|
|
69831
|
-
},
|
|
69832
|
-
requireRequestId: {
|
|
69833
|
-
format: Boolean,
|
|
69834
|
-
default: true,
|
|
69835
|
-
env: "SOCKETHUB_HTTP_ACTIONS_REQUIRE_REQUEST_ID"
|
|
69836
|
-
},
|
|
69837
|
-
maxMessagesPerRequest: {
|
|
69838
|
-
format: "nat",
|
|
69839
|
-
default: 20,
|
|
69840
|
-
env: "SOCKETHUB_HTTP_ACTIONS_MAX_MESSAGES_PER_REQUEST"
|
|
69841
|
-
},
|
|
69842
|
-
maxPayloadBytes: {
|
|
69843
|
-
format: "nat",
|
|
69844
|
-
default: 262144,
|
|
69845
|
-
env: "SOCKETHUB_HTTP_ACTIONS_MAX_PAYLOAD_BYTES"
|
|
69846
|
-
},
|
|
69847
|
-
idempotencyTtlMs: {
|
|
69848
|
-
format: "nat",
|
|
69849
|
-
default: 300000,
|
|
69850
|
-
env: "SOCKETHUB_HTTP_ACTIONS_IDEMPOTENCY_TTL_MS"
|
|
69851
|
-
},
|
|
69852
|
-
requestTimeoutMs: {
|
|
69853
|
-
format: "nat",
|
|
69854
|
-
default: 30000,
|
|
69855
|
-
env: "SOCKETHUB_HTTP_ACTIONS_REQUEST_TIMEOUT_MS"
|
|
69856
|
-
},
|
|
69857
|
-
idleTimeoutMs: {
|
|
69858
|
-
format: "nat",
|
|
69859
|
-
default: 15000,
|
|
69860
|
-
env: "SOCKETHUB_HTTP_ACTIONS_IDLE_TIMEOUT_MS"
|
|
69861
|
-
}
|
|
69862
|
-
},
|
|
69863
|
-
platformHeartbeat: {
|
|
69864
|
-
intervalMs: {
|
|
69865
|
-
format: "nat",
|
|
69866
|
-
default: 5000,
|
|
69867
|
-
env: "SOCKETHUB_PLATFORM_HEARTBEAT_INTERVAL_MS"
|
|
69868
|
-
},
|
|
69869
|
-
timeoutMs: {
|
|
69870
|
-
format: "nat",
|
|
69871
|
-
default: 15000,
|
|
69872
|
-
env: "SOCKETHUB_PLATFORM_HEARTBEAT_TIMEOUT_MS"
|
|
69873
|
-
}
|
|
69874
|
-
}
|
|
69875
|
-
});
|
|
69876
|
-
}
|
|
69877
69961
|
function resolveConfigFile() {
|
|
69878
69962
|
const argv = process.argv.slice(2);
|
|
69879
69963
|
for (let i = 0;i < argv.length; i++) {
|
|
@@ -69907,7 +69991,7 @@ class Config {
|
|
|
69907
69991
|
level: "info"
|
|
69908
69992
|
});
|
|
69909
69993
|
this.log.debug("initializing config");
|
|
69910
|
-
for (const name of
|
|
69994
|
+
for (const name of EMPTY_ENV_IS_UNSET_VARS) {
|
|
69911
69995
|
if (process.env[name] === "") {
|
|
69912
69996
|
delete process.env[name];
|
|
69913
69997
|
}
|
|
@@ -69936,31 +70020,11 @@ class Config {
|
|
|
69936
70020
|
return this.conf.get(path2);
|
|
69937
70021
|
};
|
|
69938
70022
|
}
|
|
69939
|
-
var
|
|
70023
|
+
var defaultConfig = "sockethub.config.json", config, config_default;
|
|
69940
70024
|
var init_config = __esm(() => {
|
|
69941
70025
|
init_src2();
|
|
70026
|
+
init_config_schema();
|
|
69942
70027
|
init_logger_core();
|
|
69943
|
-
import_convict = __toESM(require_main(), 1);
|
|
69944
|
-
MAPPED_ENV_VARS = [
|
|
69945
|
-
"HOST",
|
|
69946
|
-
"PORT",
|
|
69947
|
-
"REDIS_URL",
|
|
69948
|
-
"LOG_LEVEL",
|
|
69949
|
-
"LOG_FILE_LEVEL",
|
|
69950
|
-
"LOG_FILE",
|
|
69951
|
-
"SOCKETHUB_PLATFORM_HEARTBEAT_INTERVAL_MS",
|
|
69952
|
-
"SOCKETHUB_PLATFORM_HEARTBEAT_TIMEOUT_MS",
|
|
69953
|
-
"SOCKETHUB_HTTP_ACTIONS_ENABLED",
|
|
69954
|
-
"SOCKETHUB_HTTP_ACTIONS_PATH",
|
|
69955
|
-
"SOCKETHUB_HTTP_ACTIONS_REQUIRE_REQUEST_ID",
|
|
69956
|
-
"SOCKETHUB_HTTP_ACTIONS_MAX_MESSAGES_PER_REQUEST",
|
|
69957
|
-
"SOCKETHUB_HTTP_ACTIONS_MAX_PAYLOAD_BYTES",
|
|
69958
|
-
"SOCKETHUB_HTTP_ACTIONS_IDEMPOTENCY_TTL_MS",
|
|
69959
|
-
"SOCKETHUB_HTTP_ACTIONS_REQUEST_TIMEOUT_MS",
|
|
69960
|
-
"SOCKETHUB_HTTP_ACTIONS_IDLE_TIMEOUT_MS",
|
|
69961
|
-
"SOCKETHUB_CREDENTIALS_TTL_MS"
|
|
69962
|
-
];
|
|
69963
|
-
LOG_LEVELS = ["error", "warn", "info", "debug"];
|
|
69964
70028
|
config = new Config;
|
|
69965
70029
|
config_default = config;
|
|
69966
70030
|
});
|
|
@@ -103003,7 +103067,7 @@ function isPromiseLike(value) {
|
|
|
103003
103067
|
function shouldIgnoreSpan2(spanName, ignoreSpanTypes) {
|
|
103004
103068
|
return ignoreSpanTypes.some((pattern) => typeof pattern === "string" ? pattern === spanName : pattern.test(spanName));
|
|
103005
103069
|
}
|
|
103006
|
-
var import_api17, import_instrumentation9, import_api18,
|
|
103070
|
+
var import_api17, import_instrumentation9, import_api18, package_default2, majorVersion, GLOBAL_INSTRUMENTATION_KEY = "PRISMA_INSTRUMENTATION", GLOBAL_VERSIONED_INSTRUMENTATION_KEY, globalThisWithPrismaInstrumentation, showAllTraces, nonSampledTraceParent = `00-10-10-00`, ActiveTracingHelper = class {
|
|
103007
103071
|
tracerProvider;
|
|
103008
103072
|
ignoreSpanTypes;
|
|
103009
103073
|
constructor({ tracerProvider, ignoreSpanTypes }) {
|
|
@@ -103050,12 +103114,12 @@ var import_api17, import_instrumentation9, import_api18, package_default, majorV
|
|
|
103050
103114
|
}
|
|
103051
103115
|
return tracer.startActiveSpan(name, options, (span) => endSpan2(span, callback(span, context10)));
|
|
103052
103116
|
}
|
|
103053
|
-
},
|
|
103117
|
+
}, package_default22, VERSION, NAME, MODULE_NAME = "@prisma/client", PrismaInstrumentation;
|
|
103054
103118
|
var init_dist = __esm(() => {
|
|
103055
103119
|
import_api17 = __toESM(require_src4(), 1);
|
|
103056
103120
|
import_instrumentation9 = __toESM(require_src28(), 1);
|
|
103057
103121
|
import_api18 = __toESM(require_src4(), 1);
|
|
103058
|
-
|
|
103122
|
+
package_default2 = {
|
|
103059
103123
|
name: "@prisma/instrumentation-contract",
|
|
103060
103124
|
version: "7.2.0",
|
|
103061
103125
|
description: "Shared types and utilities for Prisma instrumentation",
|
|
@@ -103099,11 +103163,11 @@ var init_dist = __esm(() => {
|
|
|
103099
103163
|
"@opentelemetry/api": "^1.8"
|
|
103100
103164
|
}
|
|
103101
103165
|
};
|
|
103102
|
-
majorVersion =
|
|
103166
|
+
majorVersion = package_default2.version.split(".")[0];
|
|
103103
103167
|
GLOBAL_VERSIONED_INSTRUMENTATION_KEY = `V${majorVersion}_PRISMA_INSTRUMENTATION`;
|
|
103104
103168
|
globalThisWithPrismaInstrumentation = globalThis;
|
|
103105
103169
|
showAllTraces = process.env.PRISMA_SHOW_ALL_TRACES === "true";
|
|
103106
|
-
|
|
103170
|
+
package_default22 = {
|
|
103107
103171
|
name: "@prisma/instrumentation",
|
|
103108
103172
|
version: "7.2.0",
|
|
103109
103173
|
description: "OpenTelemetry compliant instrumentation for Prisma Client",
|
|
@@ -103159,8 +103223,8 @@ var init_dist = __esm(() => {
|
|
|
103159
103223
|
},
|
|
103160
103224
|
sideEffects: false
|
|
103161
103225
|
};
|
|
103162
|
-
VERSION =
|
|
103163
|
-
NAME =
|
|
103226
|
+
VERSION = package_default22.version;
|
|
103227
|
+
NAME = package_default22.name;
|
|
103164
103228
|
PrismaInstrumentation = class extends import_instrumentation9.InstrumentationBase {
|
|
103165
103229
|
tracerProvider;
|
|
103166
103230
|
constructor(config2 = {}) {
|
|
@@ -128441,4 +128505,4 @@ export {
|
|
|
128441
128505
|
derivePlatformCredentialsSecret
|
|
128442
128506
|
};
|
|
128443
128507
|
|
|
128444
|
-
//# debugId=
|
|
128508
|
+
//# debugId=2E385E9465C9BB6064756E2164756E21
|