@packtory/cli 0.0.9 → 0.0.11

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.
@@ -0,0 +1,94 @@
1
+ import { times } from 'remeda';
2
+ import { bold, green, red } from 'yoctocolors';
3
+ import { createSpinnerSharedAccessors, createSpinnerSharedLayout } from "./spinner-shared-state.js";
4
+ const spinnerFrames = '⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏';
5
+ const successSymbol = bold(green('✔'));
6
+ const failureSymbol = bold(red('✖'));
7
+ const cursorUp = (lines) => {
8
+ return `[${lines}A`;
9
+ };
10
+ const clearEntireLine = '';
11
+ const cursorToColumnZero = '\r';
12
+ function readSlotSnapshot(accessors, slotIndex) {
13
+ return accessors.readSlot(slotIndex);
14
+ }
15
+ function selectGlyph(state, frameIndex) {
16
+ if (state === 'succeeded') {
17
+ return successSymbol;
18
+ }
19
+ if (state === 'failed' || state === 'canceled') {
20
+ return failureSymbol;
21
+ }
22
+ return spinnerFrames.charAt(frameIndex % spinnerFrames.length);
23
+ }
24
+ function truncateToColumns(line, columns) {
25
+ if (columns <= 0) {
26
+ return line;
27
+ }
28
+ return line.slice(0, columns);
29
+ }
30
+ function formatLine(snapshot, frameIndex, columns) {
31
+ const glyph = selectGlyph(snapshot.state, frameIndex);
32
+ const composed = `${glyph} ${snapshot.label}: ${snapshot.message}`;
33
+ return truncateToColumns(composed, columns);
34
+ }
35
+ function readAllSnapshots(accessors) {
36
+ return times(accessors.layout.slotCount, (slotIndex) => {
37
+ return readSlotSnapshot(accessors, slotIndex);
38
+ });
39
+ }
40
+ function findHighestActiveSlotIndex(snapshots) {
41
+ return snapshots.findLastIndex((snapshot) => {
42
+ return snapshot.state !== 'empty';
43
+ });
44
+ }
45
+ function buildRedrawSequence(state, columns, expectedLineCount) {
46
+ let output = '';
47
+ if (state.renderedLineCount > 0) {
48
+ output += cursorUp(state.renderedLineCount);
49
+ }
50
+ const visibleSnapshots = state.snapshots.slice(0, expectedLineCount);
51
+ for (const snapshot of visibleSnapshots) {
52
+ const line = formatLine(snapshot, state.frameIndex, columns);
53
+ output += `${clearEntireLine + cursorToColumnZero + line}\n`;
54
+ }
55
+ return output;
56
+ }
57
+ export function startSpinnerWorker(input, dependencies) {
58
+ const layout = createSpinnerSharedLayout(input.slotCount);
59
+ const accessors = createSpinnerSharedAccessors(input.buffer, layout);
60
+ const state = {
61
+ snapshots: readAllSnapshots(accessors),
62
+ renderedLineCount: 0,
63
+ frameIndex: 0
64
+ };
65
+ function renderTick() {
66
+ const snapshots = readAllSnapshots(accessors);
67
+ const highestActive = findHighestActiveSlotIndex(snapshots);
68
+ if (highestActive < 0 && state.renderedLineCount === 0) {
69
+ return;
70
+ }
71
+ const expectedLineCount = Math.max(state.renderedLineCount, highestActive + 1);
72
+ state.snapshots = snapshots;
73
+ const sequence = buildRedrawSequence(state, accessors.getColumns(), expectedLineCount);
74
+ dependencies.write(input.stdoutFileDescriptor, sequence);
75
+ state.renderedLineCount = expectedLineCount;
76
+ state.frameIndex += 1;
77
+ }
78
+ const intervalMs = accessors.getIntervalMs();
79
+ const ticker = dependencies.setInterval(() => {
80
+ renderTick();
81
+ if (accessors.isShutdownRequested()) {
82
+ renderTick();
83
+ dependencies.clearInterval(ticker);
84
+ }
85
+ }, intervalMs);
86
+ }
87
+ export function isSpinnerWorkerInput(value) {
88
+ return (typeof value === 'object' &&
89
+ value !== null &&
90
+ Reflect.get(value, 'buffer') instanceof SharedArrayBuffer &&
91
+ typeof Reflect.get(value, 'slotCount') === 'number' &&
92
+ typeof Reflect.get(value, 'stdoutFileDescriptor') === 'number');
93
+ }
94
+ //# sourceMappingURL=spinner-worker-loop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner-worker-loop.js","sourceRoot":"","sources":["../../../../source/command-line-interface/spinner-worker-loop.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "author": "Mathias Schreck <schreck.mathias@gmail.com>",
3
3
  "bin": {
4
- "packtory": "packages/command-line-interface/command-line-interface.entry-point.js"
4
+ "packtory": "./packages/command-line-interface/command-line-interface.entry-point.js"
5
5
  },
6
6
  "contributors": [
7
7
  "Christian Rackerseder <github@echooff.de>"
@@ -9,7 +9,7 @@
9
9
  "dependencies": {
10
10
  "cmd-ts": "0.15.0",
11
11
  "diff": "9.0.0",
12
- "packtory": "0.0.9",
12
+ "packtory": "0.0.11",
13
13
  "remeda": "2.34.1",
14
14
  "yoctocolors": "2.1.2"
15
15
  },
@@ -17,6 +17,7 @@
17
17
  "engines": {
18
18
  "node": "^24 || ^26"
19
19
  },
20
+ "exports": {},
20
21
  "keywords": [
21
22
  "bundler",
22
23
  "bundling",
@@ -30,13 +31,17 @@
30
31
  "versioning"
31
32
  ],
32
33
  "license": "MIT",
33
- "main": "packages/command-line-interface/command-line-interface.entry-point.js",
34
34
  "name": "@packtory/cli",
35
35
  "repository": {
36
36
  "type": "git",
37
37
  "url": "git+ssh://git@github.com/enormora/packtory.git"
38
38
  },
39
+ "sideEffects": [
40
+ "./command-line-interface/preview-io.js",
41
+ "./packages/command-line-interface/command-line-interface.entry-point.js",
42
+ "./packages/command-line-interface/spinner-boot.entry-point.js",
43
+ "./packages/command-line-interface/spinner-worker.entry-point.js"
44
+ ],
39
45
  "type": "module",
40
- "types": "packages/command-line-interface/command-line-interface.entry-point.d.ts",
41
- "version": "0.0.9"
46
+ "version": "0.0.11"
42
47
  }
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env node
2
- import type * as configTypes from 'packtory/config/config.ts';
2
+ import type * as configTypes from 'packtory/config/config.d.ts';
3
3
  export type PacktoryConfig = configTypes.PacktoryConfig;
4
4
  //# sourceMappingURL=command-line-interface.entry-point.d.ts.map
@@ -10,7 +10,7 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
10
10
  import fs from 'node:fs/promises';
11
11
  import readline from 'node:readline/promises';
12
12
  import { createClock } from "packtory/common/clock.js";
13
- import { bootedSpinnerRuntime } from "../../command-line-interface/spinner-boot.entry-point.js";
13
+ import { bootedSpinnerRuntime } from "./spinner-boot.entry-point.js";
14
14
  import { createOneTimePasswordPrompt } from "../../command-line-interface/one-time-password-prompt.js";
15
15
  import { createCommandLineInterfaceRunner } from "../../command-line-interface/runner.js";
16
16
  import { createTerminalSpinnerRenderer } from "../../command-line-interface/terminal-spinner-renderer.js";
@@ -1 +1 @@
1
- {"version":3,"file":"command-line-interface.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/command-line-interface/command-line-interface.entry-point.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-line-interface.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/command-line-interface/command-line-interface.entry-point.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import path from 'node:path';
2
2
  import { fileURLToPath } from 'node:url';
3
3
  import { Worker as WorkerThread } from 'node:worker_threads';
4
- import { bootSpinnerRuntime } from "./spinner-boot.js";
4
+ import { bootSpinnerRuntime } from "../../command-line-interface/spinner-boot.js";
5
5
  const bootModulePath = fileURLToPath(import.meta.url);
6
6
  const bootModuleExtension = path.extname(bootModulePath);
7
7
  const workerModulePath = path.join(path.dirname(bootModulePath), `spinner-worker.entry-point${bootModuleExtension}`);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner-boot.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/command-line-interface/spinner-boot.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAGlF,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACtD,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,6BAA6B,mBAAmB,EAAE,CAAC,CAAC;AACrH,MAAM,cAAc,GAChB,mBAAmB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,4BAA4B,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;AAEtH,SAAS,WAAW,CAAC,OAA2B;IAC5C,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,gBAAgB,EAAE;QAC9C,UAAU,EAAE;YACR,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;SACrD;QACD,QAAQ,EAAE,cAAc;KAC3B,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,EAAE,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAmB,kBAAkB,CAAC;IACnE,WAAW;IACX,YAAY,EAAE,UAAU;IACxB,cAAc,EAAE,YAAY;CAC/B,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { writeSync } from 'node:fs';
2
+ import { setInterval as scheduleInterval, clearInterval as cancelInterval } from 'node:timers';
3
+ import { workerData } from 'node:worker_threads';
4
+ import { isSpinnerWorkerInput, startSpinnerWorker } from "../../command-line-interface/spinner-worker-loop.js";
5
+ if (!isSpinnerWorkerInput(workerData)) {
6
+ throw new TypeError('Spinner worker started with invalid workerData');
7
+ }
8
+ startSpinnerWorker(workerData, {
9
+ write: (fileDescriptor, chunk) => {
10
+ // eslint-disable-next-line node/no-sync -- the worker holds the only writer to fd 1 and synchronous writes are the simplest way to render
11
+ writeSync(fileDescriptor, chunk);
12
+ },
13
+ setInterval: scheduleInterval,
14
+ clearInterval: cancelInterval
15
+ });
16
+ //# sourceMappingURL=spinner-worker.entry-point.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner-worker.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/command-line-interface/spinner-worker.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,aAAa,IAAI,cAAc,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,qDAAqD,CAAC;AAE/G,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAAC;IACpC,MAAM,IAAI,SAAS,CAAC,gDAAgD,CAAC,CAAC;AAC1E,CAAC;AAED,kBAAkB,CAAC,UAAU,EAAE;IAC3B,KAAK,EAAE,CAAC,cAAc,EAAE,KAAK,EAAE,EAAE;QAC7B,0IAA0I;QAC1I,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,WAAW,EAAE,gBAAgB;IAC7B,aAAa,EAAE,cAAc;CAChC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"spinner-boot.entry-point.js","sourceRoot":"","sources":["../../../../source/command-line-interface/spinner-boot.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGvD,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACtD,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,6BAA6B,mBAAmB,EAAE,CAAC,CAAC;AACrH,MAAM,cAAc,GAChB,mBAAmB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,4BAA4B,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;AAEtH,SAAS,WAAW,CAAC,OAA2B;IAC5C,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,gBAAgB,EAAE;QAC9C,UAAU,EAAE;YACR,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;SACrD;QACD,QAAQ,EAAE,cAAc;KAC3B,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,EAAE,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAmB,kBAAkB,CAAC;IACnE,WAAW;IACX,YAAY,EAAE,UAAU;IACxB,cAAc,EAAE,YAAY;CAC/B,CAAC,CAAC"}