@plugjs/plug 0.4.0 → 0.4.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.
Files changed (72) hide show
  1. package/dist/asserts.cjs +1 -1
  2. package/dist/asserts.cjs.map +1 -1
  3. package/dist/asserts.mjs +1 -1
  4. package/dist/asserts.mjs.map +1 -1
  5. package/dist/async.cjs +5 -20
  6. package/dist/async.cjs.map +2 -2
  7. package/dist/async.mjs +5 -20
  8. package/dist/async.mjs.map +2 -2
  9. package/dist/build.cjs +95 -70
  10. package/dist/build.cjs.map +2 -2
  11. package/dist/build.d.ts +6 -8
  12. package/dist/build.mjs +92 -67
  13. package/dist/build.mjs.map +2 -2
  14. package/dist/cli.mjs +1 -1
  15. package/dist/files.cjs +5 -3
  16. package/dist/files.cjs.map +1 -1
  17. package/dist/files.d.ts +2 -1
  18. package/dist/files.mjs +11 -4
  19. package/dist/files.mjs.map +1 -1
  20. package/dist/helpers.cjs +3 -4
  21. package/dist/helpers.cjs.map +1 -1
  22. package/dist/helpers.mjs +3 -4
  23. package/dist/helpers.mjs.map +1 -1
  24. package/dist/logging/options.cjs +3 -10
  25. package/dist/logging/options.cjs.map +1 -1
  26. package/dist/logging/options.d.ts +44 -1
  27. package/dist/logging/options.mjs +3 -10
  28. package/dist/logging/options.mjs.map +1 -1
  29. package/dist/plugs/build.cjs +4 -7
  30. package/dist/plugs/build.cjs.map +1 -1
  31. package/dist/plugs/build.mjs +2 -5
  32. package/dist/plugs/build.mjs.map +1 -1
  33. package/dist/plugs/debug.cjs +7 -9
  34. package/dist/plugs/debug.cjs.map +1 -1
  35. package/dist/plugs/debug.mjs +8 -10
  36. package/dist/plugs/debug.mjs.map +1 -1
  37. package/dist/types.cjs +12 -0
  38. package/dist/types.cjs.map +1 -1
  39. package/dist/types.d.ts +33 -9
  40. package/dist/types.mjs +5 -0
  41. package/dist/types.mjs.map +2 -2
  42. package/dist/utils/diff.cjs +1 -4
  43. package/dist/utils/diff.cjs.map +1 -1
  44. package/dist/utils/diff.mjs +1 -4
  45. package/dist/utils/diff.mjs.map +1 -1
  46. package/dist/utils/{types.cjs → singleton.cjs} +14 -13
  47. package/dist/utils/singleton.cjs.map +6 -0
  48. package/dist/utils/singleton.d.ts +12 -0
  49. package/dist/utils/singleton.mjs +13 -0
  50. package/dist/utils/singleton.mjs.map +6 -0
  51. package/dist/utils.cjs +2 -2
  52. package/dist/utils.cjs.map +1 -1
  53. package/dist/utils.d.ts +1 -1
  54. package/dist/utils.mjs +1 -1
  55. package/package.json +1 -1
  56. package/src/asserts.ts +1 -1
  57. package/src/async.ts +6 -29
  58. package/src/build.ts +151 -117
  59. package/src/files.ts +14 -6
  60. package/src/helpers.ts +3 -4
  61. package/src/logging/options.ts +4 -13
  62. package/src/plugs/build.ts +2 -15
  63. package/src/plugs/debug.ts +10 -9
  64. package/src/types.ts +52 -23
  65. package/src/utils/diff.ts +1 -6
  66. package/src/utils/singleton.ts +19 -0
  67. package/src/utils.ts +1 -1
  68. package/dist/utils/types.cjs.map +0 -6
  69. package/dist/utils/types.d.ts +0 -4
  70. package/dist/utils/types.mjs +0 -12
  71. package/dist/utils/types.mjs.map +0 -6
  72. package/src/utils/types.ts +0 -11
package/dist/build.mjs CHANGED
@@ -4,109 +4,116 @@ import { runAsync } from "./async.mjs";
4
4
  import { $gry, $ms, $p, $t, getLogger, logOptions } from "./logging.mjs";
5
5
  import { Context, ContextPromises, PipeImpl } from "./pipe.mjs";
6
6
  import { findCaller } from "./utils/caller.mjs";
7
- var taskMarker = Symbol.for("plugjs:isTask");
8
- function isTask(something) {
9
- return something[taskMarker] === true;
7
+ import { getSingleton } from "./utils/singleton.mjs";
8
+ import { buildMarker } from "./types.mjs";
9
+ var taskCallMarker = Symbol.for("plugjs:plug:types:TaskCall");
10
+ function isTaskCall(something) {
11
+ return something[taskCallMarker] === taskCallMarker;
10
12
  }
11
- function makeTask(buildFile, tasks, props, _def, _name) {
12
- async function invoke(state, taskName) {
13
- assert(!state.stack.includes(task), `Recursion detected calling ${$t(taskName)}`);
14
- const cached = state.cache.get(task);
13
+ function merge(a, b) {
14
+ return Object.assign(/* @__PURE__ */ Object.create(null), a, b);
15
+ }
16
+ function makeState(state) {
17
+ const {
18
+ cache = /* @__PURE__ */ new Map(),
19
+ fails = /* @__PURE__ */ new Set(),
20
+ stack = [],
21
+ tasks = {},
22
+ props = {}
23
+ } = state;
24
+ return { cache, fails, stack, tasks, props };
25
+ }
26
+ var lastIdKey = Symbol.for("plugjs:plug:singleton:taskId");
27
+ var taskId = getSingleton(lastIdKey, () => ({ id: 0 }));
28
+ var TaskImpl = class {
29
+ constructor(name, buildFile, _def, _tasks, _props) {
30
+ this.name = name;
31
+ this.buildFile = buildFile;
32
+ this._def = _def;
33
+ this.tasks = _tasks;
34
+ this.props = _props;
35
+ }
36
+ before = [];
37
+ after = [];
38
+ id = ++taskId.id;
39
+ props;
40
+ tasks;
41
+ async invoke(state, taskName) {
42
+ assert(!state.stack.includes(this), `Recursion detected calling ${$t(taskName)}`);
43
+ const cached = state.cache.get(this);
15
44
  if (cached)
16
45
  return cached;
17
- const props2 = Object.assign({}, task.props, state.props);
18
- const tasks2 = Object.assign({}, task.tasks, state.tasks);
19
- const stack = [...state.stack, task];
20
- const cache = state.cache;
21
- const fails = state.fails;
22
- state = { stack, cache, fails, tasks: tasks2, props: props2 };
23
- const context = new Context(task.buildFile, taskName);
46
+ state = makeState({
47
+ props: merge(this.props, state.props),
48
+ tasks: merge(this.tasks, state.tasks),
49
+ stack: [...state.stack, this],
50
+ cache: state.cache,
51
+ fails: state.fails
52
+ });
53
+ const context = new Context(this.buildFile, taskName);
24
54
  const build2 = new Proxy({}, {
25
- get(_, name) {
26
- if (name in tasks2) {
55
+ get: (_, name) => {
56
+ if (name in state.tasks) {
27
57
  return () => {
28
- const promise2 = tasks2[name].invoke(state, name);
58
+ const promise2 = state.tasks[name].invoke(state, name);
29
59
  return new PipeImpl(context, promise2);
30
60
  };
31
- } else if (name in props2) {
32
- return props2[name];
61
+ } else if (name in state.props) {
62
+ return state.props[name];
33
63
  }
34
64
  }
35
65
  });
36
- for (const before of task.before)
66
+ for (const before of this.before)
37
67
  await before.invoke(state, before.name);
38
68
  context.log.info("Running...");
39
69
  const now = Date.now();
40
70
  const promise = runAsync(context, taskName, async () => {
41
- return await _def.call(build2) || void 0;
71
+ return await this._def.call(build2) || void 0;
42
72
  }).then(async (result) => {
43
73
  const level = taskName.startsWith("_") ? "info" : "notice";
44
74
  context.log[level](`Success ${$ms(Date.now() - now)}`);
45
75
  return result;
46
76
  }).catch((error) => {
47
- fails.add(task);
77
+ state.fails.add(this);
48
78
  throw context.log.fail(`Failure ${$ms(Date.now() - now)}`, error);
49
79
  }).finally(async () => {
50
80
  await ContextPromises.wait(context);
51
81
  }).then(async (result) => {
52
- for (const after of task.after)
82
+ for (const after of this.after)
53
83
  await after.invoke(state, after.name);
54
84
  return result;
55
85
  });
56
- cache.set(task, promise);
86
+ state.cache.set(this, promise);
57
87
  return promise;
58
88
  }
59
- const task = Object.assign((overrideProps = {}) => {
60
- const state = {
61
- cache: /* @__PURE__ */ new Map(),
62
- stack: [],
63
- props: Object.assign({}, props, overrideProps),
64
- fails: /* @__PURE__ */ new Set(),
65
- tasks
66
- };
67
- return invoke(state, _name);
68
- }, { buildFile, tasks, props, invoke, before: [], after: [] });
69
- Object.defineProperty(task, taskMarker, { value: true });
70
- Object.defineProperty(task, "name", { value: _name });
71
- return task;
72
- }
73
- var buildMarker = Symbol.for("plugjs:isBuild");
89
+ };
74
90
  function build(def) {
75
91
  const buildFile = findCaller(build);
76
92
  const tasks = {};
77
93
  const props = {};
78
94
  for (const [key, val] of Object.entries(def)) {
79
95
  let len = 0;
80
- if (isTask(val)) {
81
- tasks[key] = val;
96
+ if (isTaskCall(val)) {
97
+ tasks[key] = val.task;
82
98
  len = key.length;
83
99
  } else if (typeof val === "string") {
84
100
  props[key] = val;
85
101
  } else if (typeof val === "function") {
86
- tasks[key] = makeTask(buildFile, tasks, props, val, key);
102
+ tasks[key] = new TaskImpl(key, buildFile, val, tasks, props);
87
103
  len = key.length;
88
104
  }
89
105
  if (len > logOptions.taskLength)
90
106
  logOptions.taskLength = len;
91
107
  }
92
- const invoke = async function invoke2(taskNames, overrideProps = {}) {
108
+ const start = async function start2(callback, overrideProps = {}) {
109
+ const state = makeState({ tasks, props: merge(props, overrideProps) });
93
110
  const logger = getLogger();
94
- const state = {
95
- cache: /* @__PURE__ */ new Map(),
96
- props: Object.assign({}, props, overrideProps),
97
- fails: /* @__PURE__ */ new Set(),
98
- stack: [],
99
- tasks
100
- };
101
111
  logger.notice("Starting...");
102
112
  const now = Date.now();
103
113
  try {
104
- for (const name of taskNames) {
105
- const task = tasks[name];
106
- assert(task, `Task ${$t(name)} not found in build ${$p(buildFile)}`);
107
- await task.invoke(state, name);
108
- }
114
+ const result = await callback(state);
109
115
  logger.notice(`Build successful ${$ms(Date.now() - now)}`);
116
+ return result;
110
117
  } catch (error) {
111
118
  if (state.fails.size) {
112
119
  logger.error("");
@@ -117,7 +124,25 @@ function build(def) {
117
124
  throw logger.fail(`Build failed ${$ms(Date.now() - now)}`, error);
118
125
  }
119
126
  };
120
- const compiled = Object.assign(/* @__PURE__ */ Object.create(null), props, tasks);
127
+ const invoke = async function invoke2(taskNames, overrideProps = {}) {
128
+ await start(async (state) => {
129
+ for (const name of taskNames) {
130
+ const task = tasks[name];
131
+ assert(task, `Task ${$t(name)} not found in build ${$p(buildFile)}`);
132
+ await task.invoke(state, name);
133
+ }
134
+ }, overrideProps);
135
+ };
136
+ const callables = {};
137
+ for (const [name, task] of Object.entries(tasks)) {
138
+ const callable = async (overrideProps) => start(async (state) => task.invoke(state, name), overrideProps);
139
+ callables[name] = Object.defineProperties(callable, {
140
+ [taskCallMarker]: { value: taskCallMarker },
141
+ "task": { value: task },
142
+ "name": { value: name }
143
+ });
144
+ }
145
+ const compiled = merge(props, callables);
121
146
  Object.defineProperty(compiled, buildMarker, { value: invoke });
122
147
  return compiled;
123
148
  }
@@ -125,32 +150,32 @@ function isBuild(build2) {
125
150
  return build2 && typeof build2[buildMarker] === "function";
126
151
  }
127
152
  function invokeTasks(build2, tasks, props) {
128
- if (build2 && typeof build2 === "object" && buildMarker in build2 && typeof build2[buildMarker] === "function") {
153
+ if (isBuild(build2)) {
129
154
  return build2[buildMarker](tasks, props);
130
155
  } else {
131
156
  throw new TypeError("Invalid build instance");
132
157
  }
133
158
  }
134
159
  function hookBefore(build2, taskName, hooks) {
135
- const task = build2[taskName];
136
- assert(isTask(task), `Task "${$t(taskName)}" not found in build`);
160
+ const taskCall = build2[taskName];
161
+ assert(isTaskCall(taskCall), `Task "${$t(taskName)}" not found in build`);
137
162
  for (const hook of hooks) {
138
163
  const beforeHook = build2[hook];
139
- assert(isTask(beforeHook), `Task "${$t(hook)}" to hook before "${$t(taskName)}" not found in build`);
140
- if (task.before.includes(beforeHook))
164
+ assert(isTaskCall(beforeHook), `Task "${$t(hook)}" to hook before "${$t(taskName)}" not found in build`);
165
+ if (taskCall.task.before.includes(beforeHook.task))
141
166
  continue;
142
- task.before.push(beforeHook);
167
+ taskCall.task.before.push(beforeHook.task);
143
168
  }
144
169
  }
145
170
  function hookAfter(build2, taskName, hooks) {
146
- const task = build2[taskName];
147
- assert(isTask(task), `Task "${$t(taskName)}" not found in build`);
171
+ const taskCall = build2[taskName];
172
+ assert(isTaskCall(taskCall), `Task "${$t(taskName)}" not found in build`);
148
173
  for (const hook of hooks) {
149
174
  const afterHook = build2[hook];
150
- assert(isTask(afterHook), `Task "${$t(hook)}" to hook after "${$t(taskName)}" not found in build`);
151
- if (task.after.includes(afterHook))
175
+ assert(isTaskCall(afterHook), `Task "${$t(hook)}" to hook after "${$t(taskName)}" not found in build`);
176
+ if (taskCall.task.after.includes(afterHook.task))
152
177
  continue;
153
- task.after.push(afterHook);
178
+ taskCall.task.after.push(afterHook.task);
154
179
  }
155
180
  }
156
181
  export {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/build.ts"],
4
- "mappings": "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",
5
- "names": ["props", "tasks", "build", "promise", "invoke"]
4
+ "mappings": "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",
5
+ "names": ["build", "promise", "start", "invoke"]
6
6
  }
package/dist/cli.mjs CHANGED
@@ -10,7 +10,7 @@ import { getCurrentWorkingDirectory, resolveDirectory, resolveFile, resolveAbsol
10
10
  var $bnd = (s) => $blu($und(s));
11
11
  var $gnd = (s) => $gry($und(s));
12
12
  var $wnd = (s) => $wht($und(s));
13
- var version = true ? "0.4.0" : "0.0.0-dev";
13
+ var version = true ? "0.4.1" : "0.0.0-dev";
14
14
  function help() {
15
15
  console.log(`${$bnd("Usage:")}
16
16
 
package/dist/files.cjs CHANGED
@@ -23,6 +23,7 @@ __export(files_exports, {
23
23
  Files: () => Files
24
24
  });
25
25
  module.exports = __toCommonJS(files_exports);
26
+ var import_node_util = require("node:util");
26
27
  var import_asserts = require("./asserts.cjs");
27
28
  var import_fs = require("./fs.cjs");
28
29
  var import_paths = require("./paths.cjs");
@@ -34,10 +35,9 @@ var Files = class {
34
35
  * relative to the specified {@link Run}'s directory.
35
36
  */
36
37
  constructor(directory) {
37
- this._directory = directory;
38
+ this._directory = directory || (0, import_paths.getCurrentWorkingDirectory)();
38
39
  this._files = [];
39
- const inspect = Symbol.for("nodejs.util.inspect.custom");
40
- Object.defineProperty(this, inspect, { value: () => ({
40
+ Object.defineProperty(this, import_node_util.inspect.custom, { value: () => ({
41
41
  directory: this._directory,
42
42
  files: [...this._files]
43
43
  }) });
@@ -66,6 +66,8 @@ var Files = class {
66
66
  yield [file, (0, import_paths.resolveAbsolutePath)(this._directory, file)];
67
67
  }
68
68
  static builder(arg) {
69
+ if (!arg)
70
+ arg = (0, import_paths.getCurrentWorkingDirectory)();
69
71
  const directory = typeof arg === "string" ? arg : arg.directory;
70
72
  const set = typeof arg === "string" ? /* @__PURE__ */ new Set() : new Set(arg._files);
71
73
  const instance = new Files(directory);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/files.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAuB;AACvB,gBAAiC;AACjC,mBAAgF;AA8BzE,IAAM,QAAN,MAAY;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMjB,YAAY,WAAyB;AACnC,SAAK,aAAa;AAClB,SAAK,SAAS,CAAC;AAGf,UAAM,UAAU,OAAO,IAAI,4BAA4B;AACvD,WAAO,eAAe,MAAM,SAAS,EAAE,OAAO,OAAO;AAAA,MACnD,WAAW,KAAK;AAAA,MAChB,OAAO,CAAE,GAAG,KAAK,MAAO;AAAA,IAC1B,GAAG,CAAC;AAAA,EACN;AAAA;AAAA,EAGA,IAAI,YAA0B;AAC5B,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,IAAI,SAAiB;AACnB,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA;AAAA,EAGA,EAAG,OAAO,QAAQ,IAAuB;AACvC,eAAW,QAAQ,KAAK;AAAQ,YAAM;AAAA,EACxC;AAAA;AAAA,EAGA,CAAE,gBAAyC;AACzC,eAAW,QAAQ;AAAM,gBAAM,kCAAoB,KAAK,YAAY,IAAI;AAAA,EAC1E;AAAA;AAAA,EAGA,CAAE,eAAwE;AACxE,eAAW,QAAQ;AAAM,YAAM,CAAE,UAAM,kCAAoB,KAAK,YAAY,IAAI,CAAE;AAAA,EACpF;AAAA,EAKA,OAAO,QAAQ,KAAyC;AACtD,UAAM,YAAY,OAAO,QAAQ,WAAW,MAAM,IAAI;AACtD,UAAM,MAAM,OAAO,QAAQ,WAAW,oBAAI,IAAY,IAAI,IAAI,IAAI,IAAI,MAAM;AAE5E,UAAM,WAAW,IAAI,MAAM,SAAS;AACpC,QAAI,QAAQ;AAEZ,WAAO;AAAA,MACL,WAAW,SAAS;AAAA,MAEpB,OAAO,OAA+B;AACpC,mCAAO,CAAE,OAAO,sCAAsC;AAEtD,mBAAW,QAAQ,OAAO;AACxB,gBAAM,eAAW,sCAAwB,SAAS,WAAW,IAAI;AACjE,cAAI,IAAI,QAAQ;AAAA,QAClB;AAEA,eAAO;AAAA,MACT;AAAA,MAEA,SAAS,MAA6B;AACpC,mCAAO,CAAE,OAAO,sCAAsC;AAEtD,mBAAW,SAAS,MAAM;AACxB,qBAAW,QAAQ,MAAM,cAAc,GAAG;AACxC,iBAAK,IAAI,IAAI;AAAA,UACf;AAAA,QACF;AAEA,eAAO;AAAA,MACT;AAAA,MAEA,MAAM,MAAM,MAAc,SAAqD;AAC7E,cAAM,eAAW,sCAAwB,SAAS,WAAW,IAAI;AACjE,cAAM,eAAW,kCAAoB,SAAS,WAAW,QAAQ;AACjE,cAAMA,iBAAY,gCAAkB,QAAQ;AAE5C,kBAAM,iBAAMA,YAAW,EAAE,WAAW,KAAK,CAAC;AAC1C,kBAAM,qBAAU,UAAU,OAAO;AACjC,aAAK,IAAI,QAAQ;AAEjB,eAAO;AAAA,MACT;AAAA,MAEA,QAAe;AACb,mCAAO,CAAE,OAAO,sCAAsC;AAEtD,gBAAQ;AACR,iBAAS,OAAO,KAAK,GAAG,GAAG;AAC3B,iBAAS,OAAO,KAAK;AACrB,eAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF;AACF;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAwB;AAExB,qBAAuB;AACvB,gBAAiC;AACjC,mBAKO;AA8BA,IAAM,QAAN,MAAY;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMjB,YAAY,WAA0B;AACpC,SAAK,aAAa,iBAAa,yCAA2B;AAC1D,SAAK,SAAS,CAAC;AAGf,WAAO,eAAe,MAAM,yBAAQ,QAAQ,EAAE,OAAO,OAAO;AAAA,MAC1D,WAAW,KAAK;AAAA,MAChB,OAAO,CAAE,GAAG,KAAK,MAAO;AAAA,IAC1B,GAAG,CAAC;AAAA,EACN;AAAA;AAAA,EAGA,IAAI,YAA0B;AAC5B,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,IAAI,SAAiB;AACnB,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA;AAAA,EAGA,EAAG,OAAO,QAAQ,IAAuB;AACvC,eAAW,QAAQ,KAAK;AAAQ,YAAM;AAAA,EACxC;AAAA;AAAA,EAGA,CAAE,gBAAyC;AACzC,eAAW,QAAQ;AAAM,gBAAM,kCAAoB,KAAK,YAAY,IAAI;AAAA,EAC1E;AAAA;AAAA,EAGA,CAAE,eAAwE;AACxE,eAAW,QAAQ;AAAM,YAAM,CAAE,UAAM,kCAAoB,KAAK,YAAY,IAAI,CAAE;AAAA,EACpF;AAAA,EAMA,OAAO,QAAQ,KAA0C;AACvD,QAAI,CAAE;AAAK,gBAAM,yCAA2B;AAC5C,UAAM,YAAY,OAAO,QAAQ,WAAW,MAAM,IAAI;AACtD,UAAM,MAAM,OAAO,QAAQ,WAAW,oBAAI,IAAY,IAAI,IAAI,IAAI,IAAI,MAAM;AAE5E,UAAM,WAAW,IAAI,MAAM,SAAS;AACpC,QAAI,QAAQ;AAEZ,WAAO;AAAA,MACL,WAAW,SAAS;AAAA,MAEpB,OAAO,OAA+B;AACpC,mCAAO,CAAE,OAAO,sCAAsC;AAEtD,mBAAW,QAAQ,OAAO;AACxB,gBAAM,eAAW,sCAAwB,SAAS,WAAW,IAAI;AACjE,cAAI,IAAI,QAAQ;AAAA,QAClB;AAEA,eAAO;AAAA,MACT;AAAA,MAEA,SAAS,MAA6B;AACpC,mCAAO,CAAE,OAAO,sCAAsC;AAEtD,mBAAW,SAAS,MAAM;AACxB,qBAAW,QAAQ,MAAM,cAAc,GAAG;AACxC,iBAAK,IAAI,IAAI;AAAA,UACf;AAAA,QACF;AAEA,eAAO;AAAA,MACT;AAAA,MAEA,MAAM,MAAM,MAAc,SAAqD;AAC7E,cAAM,eAAW,sCAAwB,SAAS,WAAW,IAAI;AACjE,cAAM,eAAW,kCAAoB,SAAS,WAAW,QAAQ;AACjE,cAAMA,iBAAY,gCAAkB,QAAQ;AAE5C,kBAAM,iBAAMA,YAAW,EAAE,WAAW,KAAK,CAAC;AAC1C,kBAAM,qBAAU,UAAU,OAAO;AACjC,aAAK,IAAI,QAAQ;AAEjB,eAAO;AAAA,MACT;AAAA,MAEA,QAAe;AACb,mCAAO,CAAE,OAAO,sCAAsC;AAEtD,gBAAQ;AACR,iBAAS,OAAO,KAAK,GAAG,GAAG;AAC3B,iBAAS,OAAO,KAAK;AACrB,eAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF;AACF;",
5
5
  "names": ["directory"]
6
6
  }
package/dist/files.d.ts CHANGED
@@ -27,7 +27,7 @@ export declare class Files {
27
27
  * Create a new {@link Files} instance rooted in the specified `directory`
28
28
  * relative to the specified {@link Run}'s directory.
29
29
  */
30
- constructor(directory: AbsolutePath);
30
+ constructor(directory?: AbsolutePath);
31
31
  /** Return the _directory_ where this {@link Files} is rooted */
32
32
  get directory(): AbsolutePath;
33
33
  /** Return the number of files tracked by this instance. */
@@ -39,6 +39,7 @@ export declare class Files {
39
39
  /** Return an iterator over all _relative_ to _absolute_ mappings */
40
40
  pathMappings(): Generator<[relative: string, absolute: AbsolutePath]>;
41
41
  /** Create a new {@link FilesBuilder} creating {@link Files} instances. */
42
+ static builder(): FilesBuilder;
42
43
  static builder(files: Files): FilesBuilder;
43
44
  static builder(directory: AbsolutePath): FilesBuilder;
44
45
  }
package/dist/files.mjs CHANGED
@@ -1,7 +1,13 @@
1
1
  // files.ts
2
+ import { inspect } from "node:util";
2
3
  import { assert } from "./asserts.mjs";
3
4
  import { mkdir, writeFile } from "./fs.mjs";
4
- import { assertRelativeChildPath, getAbsoluteParent, resolveAbsolutePath } from "./paths.mjs";
5
+ import {
6
+ assertRelativeChildPath,
7
+ getAbsoluteParent,
8
+ getCurrentWorkingDirectory,
9
+ resolveAbsolutePath
10
+ } from "./paths.mjs";
5
11
  var Files = class {
6
12
  _directory;
7
13
  _files;
@@ -10,10 +16,9 @@ var Files = class {
10
16
  * relative to the specified {@link Run}'s directory.
11
17
  */
12
18
  constructor(directory) {
13
- this._directory = directory;
19
+ this._directory = directory || getCurrentWorkingDirectory();
14
20
  this._files = [];
15
- const inspect = Symbol.for("nodejs.util.inspect.custom");
16
- Object.defineProperty(this, inspect, { value: () => ({
21
+ Object.defineProperty(this, inspect.custom, { value: () => ({
17
22
  directory: this._directory,
18
23
  files: [...this._files]
19
24
  }) });
@@ -42,6 +47,8 @@ var Files = class {
42
47
  yield [file, resolveAbsolutePath(this._directory, file)];
43
48
  }
44
49
  static builder(arg) {
50
+ if (!arg)
51
+ arg = getCurrentWorkingDirectory();
45
52
  const directory = typeof arg === "string" ? arg : arg.directory;
46
53
  const set = typeof arg === "string" ? /* @__PURE__ */ new Set() : new Set(arg._files);
47
54
  const instance = new Files(directory);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/files.ts"],
4
- "mappings": ";AAAA,SAAS,cAAc;AACvB,SAAS,OAAO,iBAAiB;AACjC,SAAS,yBAAyB,mBAAmB,2BAA2B;AA8BzE,IAAM,QAAN,MAAY;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMjB,YAAY,WAAyB;AACnC,SAAK,aAAa;AAClB,SAAK,SAAS,CAAC;AAGf,UAAM,UAAU,OAAO,IAAI,4BAA4B;AACvD,WAAO,eAAe,MAAM,SAAS,EAAE,OAAO,OAAO;AAAA,MACnD,WAAW,KAAK;AAAA,MAChB,OAAO,CAAE,GAAG,KAAK,MAAO;AAAA,IAC1B,GAAG,CAAC;AAAA,EACN;AAAA;AAAA,EAGA,IAAI,YAA0B;AAC5B,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,IAAI,SAAiB;AACnB,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA;AAAA,EAGA,EAAG,OAAO,QAAQ,IAAuB;AACvC,eAAW,QAAQ,KAAK;AAAQ,YAAM;AAAA,EACxC;AAAA;AAAA,EAGA,CAAE,gBAAyC;AACzC,eAAW,QAAQ;AAAM,YAAM,oBAAoB,KAAK,YAAY,IAAI;AAAA,EAC1E;AAAA;AAAA,EAGA,CAAE,eAAwE;AACxE,eAAW,QAAQ;AAAM,YAAM,CAAE,MAAM,oBAAoB,KAAK,YAAY,IAAI,CAAE;AAAA,EACpF;AAAA,EAKA,OAAO,QAAQ,KAAyC;AACtD,UAAM,YAAY,OAAO,QAAQ,WAAW,MAAM,IAAI;AACtD,UAAM,MAAM,OAAO,QAAQ,WAAW,oBAAI,IAAY,IAAI,IAAI,IAAI,IAAI,MAAM;AAE5E,UAAM,WAAW,IAAI,MAAM,SAAS;AACpC,QAAI,QAAQ;AAEZ,WAAO;AAAA,MACL,WAAW,SAAS;AAAA,MAEpB,OAAO,OAA+B;AACpC,eAAO,CAAE,OAAO,sCAAsC;AAEtD,mBAAW,QAAQ,OAAO;AACxB,gBAAM,WAAW,wBAAwB,SAAS,WAAW,IAAI;AACjE,cAAI,IAAI,QAAQ;AAAA,QAClB;AAEA,eAAO;AAAA,MACT;AAAA,MAEA,SAAS,MAA6B;AACpC,eAAO,CAAE,OAAO,sCAAsC;AAEtD,mBAAW,SAAS,MAAM;AACxB,qBAAW,QAAQ,MAAM,cAAc,GAAG;AACxC,iBAAK,IAAI,IAAI;AAAA,UACf;AAAA,QACF;AAEA,eAAO;AAAA,MACT;AAAA,MAEA,MAAM,MAAM,MAAc,SAAqD;AAC7E,cAAM,WAAW,wBAAwB,SAAS,WAAW,IAAI;AACjE,cAAM,WAAW,oBAAoB,SAAS,WAAW,QAAQ;AACjE,cAAMA,aAAY,kBAAkB,QAAQ;AAE5C,cAAM,MAAMA,YAAW,EAAE,WAAW,KAAK,CAAC;AAC1C,cAAM,UAAU,UAAU,OAAO;AACjC,aAAK,IAAI,QAAQ;AAEjB,eAAO;AAAA,MACT;AAAA,MAEA,QAAe;AACb,eAAO,CAAE,OAAO,sCAAsC;AAEtD,gBAAQ;AACR,iBAAS,OAAO,KAAK,GAAG,GAAG;AAC3B,iBAAS,OAAO,KAAK;AACrB,eAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF;AACF;",
4
+ "mappings": ";AAAA,SAAS,eAAe;AAExB,SAAS,cAAc;AACvB,SAAS,OAAO,iBAAiB;AACjC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AA8BA,IAAM,QAAN,MAAY;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMjB,YAAY,WAA0B;AACpC,SAAK,aAAa,aAAa,2BAA2B;AAC1D,SAAK,SAAS,CAAC;AAGf,WAAO,eAAe,MAAM,QAAQ,QAAQ,EAAE,OAAO,OAAO;AAAA,MAC1D,WAAW,KAAK;AAAA,MAChB,OAAO,CAAE,GAAG,KAAK,MAAO;AAAA,IAC1B,GAAG,CAAC;AAAA,EACN;AAAA;AAAA,EAGA,IAAI,YAA0B;AAC5B,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,IAAI,SAAiB;AACnB,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA;AAAA,EAGA,EAAG,OAAO,QAAQ,IAAuB;AACvC,eAAW,QAAQ,KAAK;AAAQ,YAAM;AAAA,EACxC;AAAA;AAAA,EAGA,CAAE,gBAAyC;AACzC,eAAW,QAAQ;AAAM,YAAM,oBAAoB,KAAK,YAAY,IAAI;AAAA,EAC1E;AAAA;AAAA,EAGA,CAAE,eAAwE;AACxE,eAAW,QAAQ;AAAM,YAAM,CAAE,MAAM,oBAAoB,KAAK,YAAY,IAAI,CAAE;AAAA,EACpF;AAAA,EAMA,OAAO,QAAQ,KAA0C;AACvD,QAAI,CAAE;AAAK,YAAM,2BAA2B;AAC5C,UAAM,YAAY,OAAO,QAAQ,WAAW,MAAM,IAAI;AACtD,UAAM,MAAM,OAAO,QAAQ,WAAW,oBAAI,IAAY,IAAI,IAAI,IAAI,IAAI,MAAM;AAE5E,UAAM,WAAW,IAAI,MAAM,SAAS;AACpC,QAAI,QAAQ;AAEZ,WAAO;AAAA,MACL,WAAW,SAAS;AAAA,MAEpB,OAAO,OAA+B;AACpC,eAAO,CAAE,OAAO,sCAAsC;AAEtD,mBAAW,QAAQ,OAAO;AACxB,gBAAM,WAAW,wBAAwB,SAAS,WAAW,IAAI;AACjE,cAAI,IAAI,QAAQ;AAAA,QAClB;AAEA,eAAO;AAAA,MACT;AAAA,MAEA,SAAS,MAA6B;AACpC,eAAO,CAAE,OAAO,sCAAsC;AAEtD,mBAAW,SAAS,MAAM;AACxB,qBAAW,QAAQ,MAAM,cAAc,GAAG;AACxC,iBAAK,IAAI,IAAI;AAAA,UACf;AAAA,QACF;AAEA,eAAO;AAAA,MACT;AAAA,MAEA,MAAM,MAAM,MAAc,SAAqD;AAC7E,cAAM,WAAW,wBAAwB,SAAS,WAAW,IAAI;AACjE,cAAM,WAAW,oBAAoB,SAAS,WAAW,QAAQ;AACjE,cAAMA,aAAY,kBAAkB,QAAQ;AAE5C,cAAM,MAAMA,YAAW,EAAE,WAAW,KAAK,CAAC;AAC1C,cAAM,UAAU,UAAU,OAAO;AACjC,aAAK,IAAI,QAAQ;AAEjB,eAAO;AAAA,MACT;AAAA,MAEA,QAAe;AACb,eAAO,CAAE,OAAO,sCAAsC;AAEtD,gBAAQ;AACR,iBAAS,OAAO,KAAK,GAAG,GAAG;AAC3B,iBAAS,OAAO,KAAK;AACrB,eAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF;AACF;",
5
5
  "names": ["directory"]
6
6
  }
package/dist/helpers.cjs CHANGED
@@ -97,11 +97,11 @@ function merge(pipes) {
97
97
  const context2 = (0, import_async.requireContext)();
98
98
  return new import_pipe.PipeImpl(context2, Promise.resolve().then(async () => {
99
99
  if (pipes.length === 0)
100
- return import_files.Files.builder((0, import_paths.getCurrentWorkingDirectory)()).build();
100
+ return new import_files.Files();
101
101
  const awaited = await (0, import_asserts.assertPromises)(pipes);
102
102
  const results = awaited.filter((result) => result.length);
103
103
  if (results.length === 0)
104
- return import_files.Files.builder((0, import_paths.getCurrentWorkingDirectory)()).build();
104
+ return new import_files.Files();
105
105
  const [firstDir, ...otherDirs] = results.map((f) => f.directory);
106
106
  const directory = (0, import_paths.commonPath)(firstDir, ...otherDirs);
107
107
  return import_files.Files.builder(directory).merge(...results).build();
@@ -109,8 +109,7 @@ function merge(pipes) {
109
109
  }
110
110
  function noop() {
111
111
  const context2 = (0, import_async.requireContext)();
112
- const files = new import_files.Files((0, import_paths.getCurrentWorkingDirectory)());
113
- return new import_pipe.PipeImpl(context2, Promise.resolve(files));
112
+ return new import_pipe.PipeImpl(context2, Promise.resolve(new import_files.Files()));
114
113
  }
115
114
  function resolve(...paths) {
116
115
  return (0, import_async.requireContext)().resolve(...paths);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/helpers.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["context"]
6
6
  }
package/dist/helpers.mjs CHANGED
@@ -68,11 +68,11 @@ function merge(pipes) {
68
68
  const context2 = requireContext();
69
69
  return new PipeImpl(context2, Promise.resolve().then(async () => {
70
70
  if (pipes.length === 0)
71
- return Files.builder(getCurrentWorkingDirectory()).build();
71
+ return new Files();
72
72
  const awaited = await assertPromises(pipes);
73
73
  const results = awaited.filter((result) => result.length);
74
74
  if (results.length === 0)
75
- return Files.builder(getCurrentWorkingDirectory()).build();
75
+ return new Files();
76
76
  const [firstDir, ...otherDirs] = results.map((f) => f.directory);
77
77
  const directory = commonPath(firstDir, ...otherDirs);
78
78
  return Files.builder(directory).merge(...results).build();
@@ -80,8 +80,7 @@ function merge(pipes) {
80
80
  }
81
81
  function noop() {
82
82
  const context2 = requireContext();
83
- const files = new Files(getCurrentWorkingDirectory());
84
- return new PipeImpl(context2, Promise.resolve(files));
83
+ return new PipeImpl(context2, Promise.resolve(new Files()));
85
84
  }
86
85
  function resolve(...paths) {
87
86
  return requireContext().resolve(...paths);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/helpers.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["context"]
6
6
  }
@@ -26,6 +26,7 @@ module.exports = __toCommonJS(options_exports);
26
26
  var import_node_events = require("node:events");
27
27
  var import_node_net = require("node:net");
28
28
  var import_levels = require("./levels.cjs");
29
+ var import_singleton = require("../utils/singleton.cjs");
29
30
  var LogOptionsImpl = class extends import_node_events.EventEmitter {
30
31
  _output = process.stderr;
31
32
  _level = import_levels.NOTICE;
@@ -174,16 +175,8 @@ var LogOptionsImpl = class extends import_node_events.EventEmitter {
174
175
  this._notifyListeners();
175
176
  }
176
177
  };
177
- var optionsKey = Symbol.for("plugjs.plug.logging.logOptions");
178
- function getLogOptions() {
179
- let options = globalThis[optionsKey];
180
- if (!options) {
181
- options = new LogOptionsImpl();
182
- globalThis[optionsKey] = options;
183
- }
184
- return options;
185
- }
186
- var logOptions = getLogOptions();
178
+ var optionsKey = Symbol.for("plugjs:plug:types:LogOptions");
179
+ var logOptions = (0, import_singleton.getSingleton)(optionsKey, () => new LogOptionsImpl());
187
180
  // Annotate the CommonJS export names for ESM import in node:
188
181
  0 && (module.exports = {
189
182
  logOptions
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/logging/options.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1,5 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ import { EventEmitter } from 'node:events';
3
5
  import type { Writable } from 'node:stream';
4
6
  import type { InspectOptions } from 'node:util';
5
7
  import type { LogLevel } from './levels';
@@ -43,5 +45,46 @@ export interface LogOptions {
43
45
  */
44
46
  forkEnv(taskName?: string, logFd?: number): Record<string, string>;
45
47
  }
48
+ declare class LogOptionsImpl extends EventEmitter implements LogOptions {
49
+ private _output;
50
+ private _level;
51
+ private _colors;
52
+ private _colorsSet;
53
+ private _spinner;
54
+ private _lineLength;
55
+ private _lineLengthSet;
56
+ private _showSources;
57
+ private _githubAnnotations;
58
+ private _inspectOptions;
59
+ private _defaultTaskName;
60
+ private _taskLength;
61
+ private _indentSize;
62
+ constructor();
63
+ private _notifyListeners;
64
+ forkEnv(taskName?: string, fd?: number): Record<string, string>;
65
+ get output(): Writable;
66
+ set output(output: Writable);
67
+ get level(): LogLevel;
68
+ set level(level: LogLevel);
69
+ get colors(): boolean;
70
+ set colors(color: boolean);
71
+ get spinner(): boolean;
72
+ set spinner(spinner: boolean);
73
+ get lineLength(): number;
74
+ set lineLength(lineLength: number);
75
+ get taskLength(): number;
76
+ set taskLength(taskLength: number);
77
+ get indentSize(): number;
78
+ set indentSize(indentSize: number);
79
+ get showSources(): boolean;
80
+ set showSources(showSources: boolean);
81
+ get defaultTaskName(): string;
82
+ set defaultTaskName(defaultTaskName: string);
83
+ get githubAnnotations(): boolean;
84
+ set githubAnnotations(githubAnnotations: boolean);
85
+ get inspectOptions(): InspectOptions;
86
+ setInspectOption<K extends keyof InspectOptions>(key: K, value: InspectOptions[K]): void;
87
+ }
46
88
  /** Shared instance of our {@link LogOptions}. */
47
- export declare const logOptions: LogOptions;
89
+ export declare const logOptions: LogOptionsImpl;
90
+ export {};
@@ -2,6 +2,7 @@
2
2
  import { EventEmitter } from "node:events";
3
3
  import { Socket } from "node:net";
4
4
  import { getLevelNumber, NOTICE } from "./levels.mjs";
5
+ import { getSingleton } from "../utils/singleton.mjs";
5
6
  var LogOptionsImpl = class extends EventEmitter {
6
7
  _output = process.stderr;
7
8
  _level = NOTICE;
@@ -150,16 +151,8 @@ var LogOptionsImpl = class extends EventEmitter {
150
151
  this._notifyListeners();
151
152
  }
152
153
  };
153
- var optionsKey = Symbol.for("plugjs.plug.logging.logOptions");
154
- function getLogOptions() {
155
- let options = globalThis[optionsKey];
156
- if (!options) {
157
- options = new LogOptionsImpl();
158
- globalThis[optionsKey] = options;
159
- }
160
- return options;
161
- }
162
- var logOptions = getLogOptions();
154
+ var optionsKey = Symbol.for("plugjs:plug:types:LogOptions");
155
+ var logOptions = getSingleton(optionsKey, () => new LogOptionsImpl());
163
156
  export {
164
157
  logOptions
165
158
  };