@start9labs/start-sdk 2.0.2 → 2.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -4
- package/README.md +10 -10
- package/eslint.config.base.mjs +6 -1
- package/lib/StartSdk.d.ts +18 -10
- package/lib/StartSdk.js +17 -9
- package/lib/StartSdk.js.map +1 -1
- package/lib/mainFn/CommandController.d.ts +2 -1
- package/lib/mainFn/CommandController.js +2 -1
- package/lib/mainFn/CommandController.js.map +1 -1
- package/lib/mainFn/Daemon.d.ts +43 -12
- package/lib/mainFn/Daemon.js +45 -15
- package/lib/mainFn/Daemon.js.map +1 -1
- package/lib/mainFn/Daemons.d.ts +15 -2
- package/lib/mainFn/Daemons.js +16 -3
- package/lib/mainFn/Daemons.js.map +1 -1
- package/lib/mainFn/HealthDaemon.d.ts +2 -0
- package/lib/mainFn/HealthDaemon.js +35 -3
- package/lib/mainFn/HealthDaemon.js.map +1 -1
- package/lib/mainFn/index.d.ts +6 -2
- package/lib/mainFn/index.js +5 -0
- package/lib/mainFn/index.js.map +1 -1
- package/lib/test/output.sdk.d.ts +6 -6
- package/node_modules/@start9labs/start-core/osBindings/BackupTarget.d.ts +2 -2
- package/node_modules/@start9labs/start-core/osBindings/CifsBackupTarget.d.ts +2 -2
- package/node_modules/@start9labs/start-core/osBindings/PartitionInfo.d.ts +2 -2
- package/node_modules/@start9labs/start-core/osBindings/ServerInfo.d.ts +0 -1
- package/node_modules/@start9labs/start-core/osBindings/StartOsRecoveryInfo.d.ts +4 -2
- package/node_modules/@start9labs/start-core/osBindings/index.d.ts +26 -27
- package/node_modules/@start9labs/start-core/osBindings/index.js.map +1 -1
- package/node_modules/@start9labs/start-core/osBindings/tunnel/index.d.ts +3 -3
- package/node_modules/@start9labs/start-core/package.json +0 -7
- package/node_modules/@start9labs/start-core/zExport.js +44 -45
- package/package.json +1 -8
- package/node_modules/@start9labs/start-core/osBindings/LegacyBackupInfo.d.ts +0 -8
- package/node_modules/@start9labs/start-core/osBindings/LegacyBackupInfo.js +0 -4
- package/node_modules/@start9labs/start-core/osBindings/LegacyBackupInfo.js.map +0 -1
|
@@ -34,13 +34,6 @@
|
|
|
34
34
|
"zod": "4.4.3",
|
|
35
35
|
"zod-deep-partial": "^1.4.4"
|
|
36
36
|
},
|
|
37
|
-
"prettier": {
|
|
38
|
-
"trailingComma": "all",
|
|
39
|
-
"tabWidth": 2,
|
|
40
|
-
"semi": false,
|
|
41
|
-
"singleQuote": true,
|
|
42
|
-
"arrowParens": "avoid"
|
|
43
|
-
},
|
|
44
37
|
"devDependencies": {
|
|
45
38
|
"@types/jest": "^30.0.0",
|
|
46
39
|
"@types/lodash.merge": "^4.6.2",
|
|
@@ -1,62 +1,61 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports,
|
|
1
|
+
'use strict'
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true })
|
|
3
3
|
|
|
4
|
-
const zod_1 = require(
|
|
5
|
-
const zod_deep_partial_1 = require(
|
|
4
|
+
const zod_1 = require('zod')
|
|
5
|
+
const zod_deep_partial_1 = require('zod-deep-partial')
|
|
6
6
|
|
|
7
7
|
// Recursively make all ZodObjects in a schema loose (preserve extra keys at every nesting level).
|
|
8
8
|
// Uses _zod.def.type duck-typing instead of instanceof to avoid issues with mismatched zod versions.
|
|
9
9
|
function deepLoose(schema) {
|
|
10
|
-
const def = schema._zod?.def
|
|
11
|
-
if (!def) return schema
|
|
12
|
-
let result
|
|
10
|
+
const def = schema._zod?.def
|
|
11
|
+
if (!def) return schema
|
|
12
|
+
let result
|
|
13
13
|
switch (def.type) {
|
|
14
|
-
case
|
|
15
|
-
result = deepLoose(def.innerType).optional()
|
|
16
|
-
break
|
|
17
|
-
case
|
|
18
|
-
result = deepLoose(def.innerType).nullable()
|
|
19
|
-
break
|
|
20
|
-
case
|
|
21
|
-
const newShape = {}
|
|
14
|
+
case 'optional':
|
|
15
|
+
result = deepLoose(def.innerType).optional()
|
|
16
|
+
break
|
|
17
|
+
case 'nullable':
|
|
18
|
+
result = deepLoose(def.innerType).nullable()
|
|
19
|
+
break
|
|
20
|
+
case 'object': {
|
|
21
|
+
const newShape = {}
|
|
22
22
|
for (const key in schema.shape) {
|
|
23
|
-
newShape[key] = deepLoose(schema.shape[key])
|
|
23
|
+
newShape[key] = deepLoose(schema.shape[key])
|
|
24
24
|
}
|
|
25
|
-
result = zod_1.z.looseObject(newShape)
|
|
26
|
-
break
|
|
25
|
+
result = zod_1.z.looseObject(newShape)
|
|
26
|
+
break
|
|
27
27
|
}
|
|
28
|
-
case
|
|
29
|
-
result = zod_1.z.array(deepLoose(def.element))
|
|
30
|
-
break
|
|
31
|
-
case
|
|
32
|
-
result = zod_1.z.union(def.options.map(
|
|
33
|
-
break
|
|
34
|
-
case
|
|
35
|
-
result = zod_1.z.intersection(deepLoose(def.left), deepLoose(def.right))
|
|
36
|
-
break
|
|
37
|
-
case
|
|
38
|
-
result = zod_1.z.record(def.keyType, deepLoose(def.valueType))
|
|
39
|
-
break
|
|
40
|
-
case
|
|
41
|
-
result = zod_1.z.tuple(def.items.map(
|
|
42
|
-
break
|
|
43
|
-
case
|
|
44
|
-
result = zod_1.z.lazy(() => deepLoose(def.getter()))
|
|
45
|
-
break
|
|
28
|
+
case 'array':
|
|
29
|
+
result = zod_1.z.array(deepLoose(def.element))
|
|
30
|
+
break
|
|
31
|
+
case 'union':
|
|
32
|
+
result = zod_1.z.union(def.options.map(o => deepLoose(o)))
|
|
33
|
+
break
|
|
34
|
+
case 'intersection':
|
|
35
|
+
result = zod_1.z.intersection(deepLoose(def.left), deepLoose(def.right))
|
|
36
|
+
break
|
|
37
|
+
case 'record':
|
|
38
|
+
result = zod_1.z.record(def.keyType, deepLoose(def.valueType))
|
|
39
|
+
break
|
|
40
|
+
case 'tuple':
|
|
41
|
+
result = zod_1.z.tuple(def.items.map(i => deepLoose(i)))
|
|
42
|
+
break
|
|
43
|
+
case 'lazy':
|
|
44
|
+
result = zod_1.z.lazy(() => deepLoose(def.getter()))
|
|
45
|
+
break
|
|
46
46
|
default:
|
|
47
|
-
return schema
|
|
47
|
+
return schema
|
|
48
48
|
}
|
|
49
|
-
return result
|
|
49
|
+
return result
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
// Add deepPartial and deepLoose to z at runtime
|
|
53
|
-
zod_1.z.deepPartial = (a)
|
|
54
|
-
|
|
55
|
-
zod_1.z.deepLoose = deepLoose;
|
|
53
|
+
zod_1.z.deepPartial = a => deepLoose((0, zod_deep_partial_1.zodDeepPartial)(a))
|
|
54
|
+
zod_1.z.deepLoose = deepLoose
|
|
56
55
|
|
|
57
56
|
// Override z.object to produce loose objects by default (extra keys are preserved, not stripped).
|
|
58
|
-
const _origObject = zod_1.z.object
|
|
59
|
-
const _patchedObject = (...args) => _origObject(...args).loose()
|
|
57
|
+
const _origObject = zod_1.z.object
|
|
58
|
+
const _patchedObject = (...args) => _origObject(...args).loose()
|
|
60
59
|
|
|
61
60
|
// z.object is a non-configurable getter on the zod namespace, so we can't override it directly.
|
|
62
61
|
// Shadow it by exporting a new object with _z as prototype and our patched object on the instance.
|
|
@@ -67,6 +66,6 @@ const z = Object.create(zod_1.z, {
|
|
|
67
66
|
configurable: true,
|
|
68
67
|
enumerable: true,
|
|
69
68
|
},
|
|
70
|
-
})
|
|
69
|
+
})
|
|
71
70
|
|
|
72
|
-
exports.z = z
|
|
71
|
+
exports.z = z
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@start9labs/start-sdk",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.4",
|
|
4
4
|
"description": "Software development kit to facilitate packaging services for StartOS",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -50,13 +50,6 @@
|
|
|
50
50
|
"eslint",
|
|
51
51
|
"typescript-eslint"
|
|
52
52
|
],
|
|
53
|
-
"prettier": {
|
|
54
|
-
"trailingComma": "all",
|
|
55
|
-
"tabWidth": 2,
|
|
56
|
-
"semi": false,
|
|
57
|
-
"singleQuote": true,
|
|
58
|
-
"arrowParens": "avoid"
|
|
59
|
-
},
|
|
60
53
|
"devDependencies": {
|
|
61
54
|
"@types/jest": "^30.0.0",
|
|
62
55
|
"jest": "^30.0.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LegacyBackupInfo.js","sourceRoot":"","sources":["../../lib/osBindings/LegacyBackupInfo.ts"],"names":[],"mappings":";AAAA,4GAA4G"}
|