@dxos/cli-util 0.10.0 → 0.11.1
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/lib/chunk-command-config.mjs +18 -0
- package/dist/lib/chunk-command-config.mjs.map +1 -0
- package/dist/lib/index.mjs +601 -0
- package/dist/lib/index.mjs.map +1 -0
- package/dist/lib/testing.mjs +69 -0
- package/dist/lib/testing.mjs.map +1 -0
- package/dist/types/src/util/format.d.ts +5 -0
- package/dist/types/src/util/format.d.ts.map +1 -0
- package/dist/types/src/util/index.d.ts +1 -0
- package/dist/types/src/util/index.d.ts.map +1 -1
- package/dist/types/src/util/space-format.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +16 -17
- package/src/util/format.ts +19 -0
- package/src/util/index.ts +1 -0
- package/src/util/space-format.ts +7 -3
- package/dist/lib/node-esm/chunk-N5LOOWPE.mjs +0 -27
- package/dist/lib/node-esm/chunk-N5LOOWPE.mjs.map +0 -7
- package/dist/lib/node-esm/index.mjs +0 -695
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/testing/index.mjs +0 -82
- package/dist/lib/node-esm/testing/index.mjs.map +0 -7
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/cli-util",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.1",
|
|
4
4
|
"description": "Shared CLI utilities for DXOS CLI commands and plugins",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
".": {
|
|
17
17
|
"source": "./src/index.ts",
|
|
18
18
|
"types": "./dist/types/src/index.d.ts",
|
|
19
|
-
"
|
|
19
|
+
"import": "./dist/lib/index.mjs"
|
|
20
20
|
},
|
|
21
21
|
"./testing": {
|
|
22
22
|
"source": "./src/testing/index.ts",
|
|
23
23
|
"types": "./dist/types/src/testing/index.d.ts",
|
|
24
|
-
"
|
|
24
|
+
"import": "./dist/lib/testing.mjs"
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
"types": "dist/types/src/index.d.ts",
|
|
@@ -36,24 +36,23 @@
|
|
|
36
36
|
"@effect/printer": "0.49.0",
|
|
37
37
|
"@effect/printer-ansi": "0.49.0",
|
|
38
38
|
"get-port-please": "^3.1.1",
|
|
39
|
-
"@dxos/
|
|
40
|
-
"@dxos/compute": "0.
|
|
41
|
-
"@dxos/
|
|
42
|
-
"@dxos/echo": "0.
|
|
43
|
-
"@dxos/
|
|
44
|
-
"@dxos/
|
|
45
|
-
"@dxos/
|
|
46
|
-
"@dxos/
|
|
47
|
-
"@dxos/keys": "0.
|
|
48
|
-
"@dxos/
|
|
49
|
-
"@dxos/
|
|
50
|
-
"@dxos/
|
|
51
|
-
"@dxos/util": "0.10.0"
|
|
39
|
+
"@dxos/client": "0.11.1",
|
|
40
|
+
"@dxos/compute": "0.11.1",
|
|
41
|
+
"@dxos/debug": "0.11.1",
|
|
42
|
+
"@dxos/echo": "0.11.1",
|
|
43
|
+
"@dxos/app-toolkit": "0.11.1",
|
|
44
|
+
"@dxos/echo-client": "0.11.1",
|
|
45
|
+
"@dxos/effect": "0.11.1",
|
|
46
|
+
"@dxos/errors": "0.11.1",
|
|
47
|
+
"@dxos/keys": "0.11.1",
|
|
48
|
+
"@dxos/log": "0.11.1",
|
|
49
|
+
"@dxos/protocols": "0.11.1",
|
|
50
|
+
"@dxos/util": "0.11.1"
|
|
52
51
|
},
|
|
53
52
|
"devDependencies": {
|
|
54
53
|
"effect": "3.21.4",
|
|
55
54
|
"typescript": "^6.0.3",
|
|
56
|
-
"vitest": "4.1.
|
|
55
|
+
"vitest": "4.1.10"
|
|
57
56
|
},
|
|
58
57
|
"peerDependencies": {
|
|
59
58
|
"effect": "3.21.4"
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2026 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
const BYTE_UNITS = ['B', 'KB', 'MB', 'GB', 'TB'];
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Format a byte count using binary units.
|
|
9
|
+
*/
|
|
10
|
+
export const formatBytes = (bytes: number): string => {
|
|
11
|
+
let value = bytes;
|
|
12
|
+
let unit = 0;
|
|
13
|
+
while (value >= 1024 && unit < BYTE_UNITS.length - 1) {
|
|
14
|
+
value /= 1024;
|
|
15
|
+
unit++;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return `${unit === 0 ? value : value.toFixed(1)} ${BYTE_UNITS[unit]}`;
|
|
19
|
+
};
|
package/src/util/index.ts
CHANGED
package/src/util/space-format.ts
CHANGED
|
@@ -86,9 +86,13 @@ export const formatSpace = Effect.fn(function* (space: Space, options: FormatSpa
|
|
|
86
86
|
|
|
87
87
|
// The sync-state read does IO; cap it so a stuck space can't hang the
|
|
88
88
|
// command. Falls back to a "no peers" placeholder.
|
|
89
|
-
const syncStateRaw = yield* tryWithFallback(
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
const syncStateRaw = yield* tryWithFallback(
|
|
90
|
+
'getAutomergeSyncState',
|
|
91
|
+
() => space.internal.db.getAutomergeSyncState(),
|
|
92
|
+
{
|
|
93
|
+
peers: {},
|
|
94
|
+
} as SpaceSyncState,
|
|
95
|
+
);
|
|
92
96
|
const syncState = aggregateSyncState(syncStateRaw);
|
|
93
97
|
|
|
94
98
|
const name = ready ? tryWithFallbackSync(() => space.properties.name, undefined) : 'loading...';
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __export = (target, all) => {
|
|
4
|
-
for (var name in all)
|
|
5
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
// src/services/command-config.ts
|
|
9
|
-
import * as Context from "effect/Context";
|
|
10
|
-
import * as Effect from "effect/Effect";
|
|
11
|
-
import * as Layer from "effect/Layer";
|
|
12
|
-
var CommandConfig = class _CommandConfig extends Context.Tag("CommandConfig")() {
|
|
13
|
-
static isJson = _CommandConfig.pipe(Effect.map((config) => config.json));
|
|
14
|
-
static isVerbose = _CommandConfig.pipe(Effect.map((config) => config.verbose));
|
|
15
|
-
static layerTest = Layer.succeed(_CommandConfig, {
|
|
16
|
-
json: true,
|
|
17
|
-
verbose: false,
|
|
18
|
-
profile: "default",
|
|
19
|
-
logLevel: "info"
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
export {
|
|
24
|
-
__export,
|
|
25
|
-
CommandConfig
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=chunk-N5LOOWPE.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/services/command-config.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Context from 'effect/Context';\nimport * as Effect from 'effect/Effect';\nimport * as Layer from 'effect/Layer';\n\nexport class CommandConfig extends Context.Tag('CommandConfig')<\n CommandConfig,\n {\n json: boolean;\n verbose: boolean;\n profile: string;\n logLevel: string;\n }\n>() {\n static isJson: Effect.Effect<boolean, never, CommandConfig> = CommandConfig.pipe(Effect.map((config) => config.json));\n static isVerbose: Effect.Effect<boolean, never, CommandConfig> = CommandConfig.pipe(\n Effect.map((config) => config.verbose),\n );\n\n static layerTest = Layer.succeed(CommandConfig, {\n json: true,\n verbose: false,\n profile: 'default',\n logLevel: 'info',\n });\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;AAIA,YAAYA,aAAa;AACzB,YAAYC,YAAY;AACxB,YAAYC,WAAW;AAEhB,IAAMC,gBAAN,MAAMA,uBAA8BC,YAAI,eAAA,EAAA,EAAA;EAS7C,OAAOC,SAAuDF,eAAcG,KAAYC,WAAI,CAACC,WAAWA,OAAOC,IAAI,CAAA;EACnH,OAAOC,YAA0DP,eAAcG,KACtEC,WAAI,CAACC,WAAWA,OAAOG,OAAO,CAAA;EAGvC,OAAOC,YAAkBC,cAAQV,gBAAe;IAC9CM,MAAM;IACNE,SAAS;IACTG,SAAS;IACTC,UAAU;EACZ,CAAA;AACF;",
|
|
6
|
-
"names": ["Context", "Effect", "Layer", "CommandConfig", "Tag", "isJson", "pipe", "map", "config", "json", "isVerbose", "verbose", "layerTest", "succeed", "profile", "logLevel"]
|
|
7
|
-
}
|