@likec4/language-server 1.47.0 → 1.48.0

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 (316) hide show
  1. package/LICENSE +1 -1
  2. package/browser/package.json +2 -2
  3. package/browser-worker/package.json +2 -2
  4. package/bundled/package.json +4 -0
  5. package/dist/LikeC4LanguageServices.d.mts +4 -0
  6. package/dist/LikeC4LanguageServices.mjs +3 -0
  7. package/dist/_chunks/ConfigurableLayouter.mjs +1956 -0
  8. package/dist/_chunks/LikeC4LanguageServices.d.mts +1978 -0
  9. package/dist/_chunks/LikeC4LanguageServices.mjs +725 -0
  10. package/dist/_chunks/ast.d.mts +1444 -0
  11. package/dist/_chunks/ast.mjs +2375 -0
  12. package/dist/_chunks/ast2.mjs +176 -0
  13. package/dist/_chunks/common-exports.mjs +0 -0
  14. package/dist/_chunks/filesystem.mjs +58 -0
  15. package/dist/_chunks/grammar.mjs +8 -0
  16. package/dist/_chunks/icons.mjs +5211 -0
  17. package/dist/_chunks/libs/@hono/node-server.mjs +436 -0
  18. package/dist/_chunks/libs/@msgpack/msgpack.mjs +805 -0
  19. package/dist/_chunks/libs/eventemitter3.mjs +243 -0
  20. package/dist/_chunks/libs/fast-equals.mjs +446 -0
  21. package/dist/_chunks/libs/hono.mjs +1829 -0
  22. package/dist/_chunks/libs/p-queue.mjs +449 -0
  23. package/dist/_chunks/libs/parse-ms.mjs +36 -0
  24. package/dist/_chunks/libs/picomatch.mjs +1673 -0
  25. package/dist/_chunks/libs/pretty-ms.mjs +80 -0
  26. package/dist/_chunks/libs/remeda.mjs +482 -0
  27. package/dist/_chunks/libs/strip-indent.mjs +15 -0
  28. package/dist/_chunks/libs/ufo.mjs +166 -0
  29. package/dist/_chunks/likec4lib.mjs +9 -0
  30. package/dist/_chunks/mcp.mjs +33 -0
  31. package/dist/_chunks/module.mjs +28 -0
  32. package/dist/_chunks/module2.mjs +6576 -0
  33. package/dist/_chunks/protocol.d.mts +311 -0
  34. package/dist/_chunks/protocol.mjs +78 -0
  35. package/dist/_chunks/rolldown-runtime.mjs +42 -0
  36. package/dist/ast.d.mts +4 -0
  37. package/dist/ast.mjs +4 -0
  38. package/dist/browser-worker.d.mts +1 -0
  39. package/dist/browser-worker.mjs +6 -0
  40. package/dist/browser.d.mts +11 -0
  41. package/dist/browser.mjs +27 -0
  42. package/dist/bundled.d.mts +28 -0
  43. package/dist/bundled.mjs +51 -4853
  44. package/dist/common-exports.d.mts +4 -0
  45. package/dist/common-exports.mjs +5 -0
  46. package/dist/filesystem/index.d.mts +4 -0
  47. package/dist/filesystem/index.mjs +3 -0
  48. package/dist/generated/ast.d.mts +2 -0
  49. package/dist/generated/ast.mjs +3 -0
  50. package/dist/generated/grammar.d.mts +6 -0
  51. package/dist/generated/grammar.mjs +3 -0
  52. package/dist/generated/module.d.mts +14 -0
  53. package/dist/generated/module.mjs +3 -0
  54. package/dist/generated-lib/icons.d.mts +4 -0
  55. package/dist/generated-lib/icons.mjs +3 -0
  56. package/dist/index.d.mts +4 -0
  57. package/dist/index.mjs +48 -0
  58. package/dist/likec4lib.d.mts +9 -0
  59. package/dist/likec4lib.mjs +4 -0
  60. package/dist/mcp/index.d.mts +4 -0
  61. package/dist/mcp/index.mjs +3 -0
  62. package/dist/module.d.mts +4 -0
  63. package/dist/module.mjs +3 -0
  64. package/dist/protocol.d.mts +2 -0
  65. package/dist/protocol.mjs +3 -0
  66. package/likec4lib/package.json +2 -2
  67. package/package.json +106 -63
  68. package/protocol/package.json +2 -2
  69. package/dist/LikeC4LanguageServices.d.ts +0 -115
  70. package/dist/LikeC4LanguageServices.js +0 -164
  71. package/dist/Rpc.d.ts +0 -9
  72. package/dist/Rpc.js +0 -276
  73. package/dist/ast.d.ts +0 -226
  74. package/dist/ast.js +0 -264
  75. package/dist/browser-worker.d.ts +0 -1
  76. package/dist/browser-worker.js +0 -4
  77. package/dist/browser.d.ts +0 -10
  78. package/dist/browser.js +0 -34
  79. package/dist/bundled.d.ts +0 -8
  80. package/dist/bundled.js +0 -44
  81. package/dist/documentation/documentation-provider.d.ts +0 -8
  82. package/dist/documentation/documentation-provider.js +0 -51
  83. package/dist/documentation/index.d.ts +0 -1
  84. package/dist/documentation/index.js +0 -1
  85. package/dist/empty.d.ts +0 -2
  86. package/dist/empty.js +0 -2
  87. package/dist/filesystem/ChokidarWatcher.d.ts +0 -19
  88. package/dist/filesystem/ChokidarWatcher.js +0 -133
  89. package/dist/filesystem/FileSystemWatcher.d.ts +0 -19
  90. package/dist/filesystem/FileSystemWatcher.js +0 -14
  91. package/dist/filesystem/LikeC4FileSystem.d.ts +0 -3
  92. package/dist/filesystem/LikeC4FileSystem.js +0 -140
  93. package/dist/filesystem/index.d.ts +0 -55
  94. package/dist/filesystem/index.js +0 -29
  95. package/dist/formatting/LikeC4Formatter.d.ts +0 -59
  96. package/dist/formatting/LikeC4Formatter.js +0 -637
  97. package/dist/formatting/utils.d.ts +0 -6
  98. package/dist/formatting/utils.js +0 -18
  99. package/dist/generated/ast.d.ts +0 -1411
  100. package/dist/generated/ast.js +0 -2207
  101. package/dist/generated/grammar.d.ts +0 -6
  102. package/dist/generated/grammar.js +0 -7
  103. package/dist/generated/module.d.ts +0 -14
  104. package/dist/generated/module.js +0 -27
  105. package/dist/generated-lib/icons.d.ts +0 -1
  106. package/dist/generated-lib/icons.js +0 -18
  107. package/dist/index.d.ts +0 -37
  108. package/dist/index.js +0 -54
  109. package/dist/likec4lib.d.ts +0 -6
  110. package/dist/likec4lib.js +0 -7
  111. package/dist/logger.d.ts +0 -17
  112. package/dist/logger.js +0 -81
  113. package/dist/lsp/CodeActionProvider.d.ts +0 -14
  114. package/dist/lsp/CodeActionProvider.js +0 -33
  115. package/dist/lsp/CodeLensProvider.d.ts +0 -9
  116. package/dist/lsp/CodeLensProvider.js +0 -44
  117. package/dist/lsp/CompletionProvider.d.ts +0 -13
  118. package/dist/lsp/CompletionProvider.js +0 -238
  119. package/dist/lsp/DocumentHighlightProvider.d.ts +0 -9
  120. package/dist/lsp/DocumentHighlightProvider.js +0 -10
  121. package/dist/lsp/DocumentLinkProvider.d.ts +0 -11
  122. package/dist/lsp/DocumentLinkProvider.js +0 -58
  123. package/dist/lsp/DocumentSymbolProvider.d.ts +0 -33
  124. package/dist/lsp/DocumentSymbolProvider.js +0 -317
  125. package/dist/lsp/HoverProvider.d.ts +0 -10
  126. package/dist/lsp/HoverProvider.js +0 -106
  127. package/dist/lsp/RenameProvider.d.ts +0 -5
  128. package/dist/lsp/RenameProvider.js +0 -6
  129. package/dist/lsp/SemanticTokenProvider.d.ts +0 -19
  130. package/dist/lsp/SemanticTokenProvider.js +0 -305
  131. package/dist/lsp/index.d.ts +0 -8
  132. package/dist/lsp/index.js +0 -9
  133. package/dist/mcp/MCPServerFactory.d.ts +0 -8
  134. package/dist/mcp/MCPServerFactory.js +0 -73
  135. package/dist/mcp/NoopLikeC4MCPServer.d.ts +0 -9
  136. package/dist/mcp/NoopLikeC4MCPServer.js +0 -17
  137. package/dist/mcp/interfaces.d.ts +0 -13
  138. package/dist/mcp/interfaces.js +0 -4
  139. package/dist/mcp/server/StdioLikeC4MCPServer.d.ts +0 -16
  140. package/dist/mcp/server/StdioLikeC4MCPServer.js +0 -51
  141. package/dist/mcp/server/StreamableLikeC4MCPServer.d.ts +0 -16
  142. package/dist/mcp/server/StreamableLikeC4MCPServer.js +0 -121
  143. package/dist/mcp/server/WithMCPServer.d.ts +0 -4
  144. package/dist/mcp/server/WithMCPServer.js +0 -54
  145. package/dist/mcp/tools/_common.d.ts +0 -88
  146. package/dist/mcp/tools/_common.js +0 -49
  147. package/dist/mcp/tools/find-relationships.d.ts +0 -202
  148. package/dist/mcp/tools/find-relationships.js +0 -150
  149. package/dist/mcp/tools/list-projects.d.ts +0 -194
  150. package/dist/mcp/tools/list-projects.js +0 -62
  151. package/dist/mcp/tools/open-view.d.ts +0 -200
  152. package/dist/mcp/tools/open-view.js +0 -52
  153. package/dist/mcp/tools/read-deployment.d.ts +0 -200
  154. package/dist/mcp/tools/read-deployment.js +0 -150
  155. package/dist/mcp/tools/read-element.d.ts +0 -200
  156. package/dist/mcp/tools/read-element.js +0 -218
  157. package/dist/mcp/tools/read-project-summary.d.ts +0 -198
  158. package/dist/mcp/tools/read-project-summary.js +0 -176
  159. package/dist/mcp/tools/read-view.d.ts +0 -200
  160. package/dist/mcp/tools/read-view.js +0 -203
  161. package/dist/mcp/tools/search-element.d.ts +0 -198
  162. package/dist/mcp/tools/search-element.js +0 -177
  163. package/dist/mcp/utils.d.ts +0 -18
  164. package/dist/mcp/utils.js +0 -48
  165. package/dist/model/builder/MergedExtends.d.ts +0 -13
  166. package/dist/model/builder/MergedExtends.js +0 -74
  167. package/dist/model/builder/MergedSpecification.d.ts +0 -32
  168. package/dist/model/builder/MergedSpecification.js +0 -175
  169. package/dist/model/builder/buildModel.d.ts +0 -16
  170. package/dist/model/builder/buildModel.js +0 -245
  171. package/dist/model/deployments-index.d.ts +0 -10
  172. package/dist/model/deployments-index.js +0 -102
  173. package/dist/model/fqn-index.d.ts +0 -61
  174. package/dist/model/fqn-index.js +0 -253
  175. package/dist/model/index.d.ts +0 -6
  176. package/dist/model/index.js +0 -6
  177. package/dist/model/model-builder.d.ts +0 -54
  178. package/dist/model/model-builder.js +0 -233
  179. package/dist/model/model-locator.d.ts +0 -39
  180. package/dist/model/model-locator.js +0 -240
  181. package/dist/model/model-parser-where.d.ts +0 -4
  182. package/dist/model/model-parser-where.js +0 -81
  183. package/dist/model/model-parser.d.ts +0 -645
  184. package/dist/model/model-parser.js +0 -133
  185. package/dist/model/parser/Base.d.ts +0 -69
  186. package/dist/model/parser/Base.js +0 -382
  187. package/dist/model/parser/DeploymentModelParser.d.ts +0 -71
  188. package/dist/model/parser/DeploymentModelParser.js +0 -176
  189. package/dist/model/parser/DeploymentViewParser.d.ts +0 -75
  190. package/dist/model/parser/DeploymentViewParser.js +0 -86
  191. package/dist/model/parser/FqnRefParser.d.ts +0 -66
  192. package/dist/model/parser/FqnRefParser.js +0 -382
  193. package/dist/model/parser/GlobalsParser.d.ts +0 -109
  194. package/dist/model/parser/GlobalsParser.js +0 -84
  195. package/dist/model/parser/ImportsParser.d.ts +0 -46
  196. package/dist/model/parser/ImportsParser.js +0 -24
  197. package/dist/model/parser/ModelParser.d.ts +0 -71
  198. package/dist/model/parser/ModelParser.js +0 -209
  199. package/dist/model/parser/PredicatesParser.d.ts +0 -75
  200. package/dist/model/parser/PredicatesParser.js +0 -45
  201. package/dist/model/parser/SpecificationParser.d.ts +0 -53
  202. package/dist/model/parser/SpecificationParser.js +0 -113
  203. package/dist/model/parser/ValueConverter.d.ts +0 -4
  204. package/dist/model/parser/ValueConverter.js +0 -12
  205. package/dist/model/parser/ViewsParser.d.ts +0 -112
  206. package/dist/model/parser/ViewsParser.js +0 -492
  207. package/dist/model-change/ModelChanges.d.ts +0 -18
  208. package/dist/model-change/ModelChanges.js +0 -129
  209. package/dist/model-change/changeElementStyle.d.ts +0 -16
  210. package/dist/model-change/changeElementStyle.js +0 -134
  211. package/dist/model-change/changeViewLayout.d.ts +0 -12
  212. package/dist/model-change/changeViewLayout.js +0 -28
  213. package/dist/model-change/removeManualLayoutV1.d.ts +0 -7
  214. package/dist/model-change/removeManualLayoutV1.js +0 -27
  215. package/dist/module.d.ts +0 -92
  216. package/dist/module.js +0 -143
  217. package/dist/protocol.d.ts +0 -289
  218. package/dist/protocol.js +0 -123
  219. package/dist/references/index.d.ts +0 -3
  220. package/dist/references/index.js +0 -3
  221. package/dist/references/name-provider.d.ts +0 -9
  222. package/dist/references/name-provider.js +0 -37
  223. package/dist/references/scope-computation.d.ts +0 -20
  224. package/dist/references/scope-computation.js +0 -288
  225. package/dist/references/scope-provider.d.ts +0 -40
  226. package/dist/references/scope-provider.js +0 -239
  227. package/dist/shared/NodeKindProvider.d.ts +0 -15
  228. package/dist/shared/NodeKindProvider.js +0 -57
  229. package/dist/shared/WorkspaceSymbolProvider.d.ts +0 -3
  230. package/dist/shared/WorkspaceSymbolProvider.js +0 -3
  231. package/dist/shared/index.d.ts +0 -2
  232. package/dist/shared/index.js +0 -2
  233. package/dist/test/index.d.ts +0 -1
  234. package/dist/test/index.js +0 -1
  235. package/dist/test/testServices.d.ts +0 -64
  236. package/dist/test/testServices.js +0 -210
  237. package/dist/utils/disposable.d.ts +0 -8
  238. package/dist/utils/disposable.js +0 -26
  239. package/dist/utils/elementRef.d.ts +0 -11
  240. package/dist/utils/elementRef.js +0 -33
  241. package/dist/utils/fqnRef.d.ts +0 -11
  242. package/dist/utils/fqnRef.js +0 -63
  243. package/dist/utils/index.d.ts +0 -11
  244. package/dist/utils/index.js +0 -35
  245. package/dist/utils/printDocs.d.ts +0 -2
  246. package/dist/utils/printDocs.js +0 -1
  247. package/dist/utils/projectId.d.ts +0 -4
  248. package/dist/utils/projectId.js +0 -16
  249. package/dist/utils/stringHash.d.ts +0 -1
  250. package/dist/utils/stringHash.js +0 -5
  251. package/dist/validation/DocumentValidator.d.ts +0 -11
  252. package/dist/validation/DocumentValidator.js +0 -17
  253. package/dist/validation/_shared.d.ts +0 -3
  254. package/dist/validation/_shared.js +0 -26
  255. package/dist/validation/deployment-checks.d.ts +0 -7
  256. package/dist/validation/deployment-checks.js +0 -140
  257. package/dist/validation/dynamic-view.d.ts +0 -6
  258. package/dist/validation/dynamic-view.js +0 -67
  259. package/dist/validation/element-ref.d.ts +0 -4
  260. package/dist/validation/element-ref.js +0 -12
  261. package/dist/validation/element.d.ts +0 -4
  262. package/dist/validation/element.js +0 -49
  263. package/dist/validation/imports.d.ts +0 -4
  264. package/dist/validation/imports.js +0 -46
  265. package/dist/validation/index.d.ts +0 -15
  266. package/dist/validation/index.js +0 -167
  267. package/dist/validation/property-checks.d.ts +0 -7
  268. package/dist/validation/property-checks.js +0 -108
  269. package/dist/validation/relation.d.ts +0 -6
  270. package/dist/validation/relation.js +0 -141
  271. package/dist/validation/specification.d.ts +0 -12
  272. package/dist/validation/specification.js +0 -190
  273. package/dist/validation/view-checks.d.ts +0 -4
  274. package/dist/validation/view-checks.js +0 -46
  275. package/dist/validation/view-predicates/fqn-expr-with.d.ts +0 -4
  276. package/dist/validation/view-predicates/fqn-expr-with.js +0 -43
  277. package/dist/validation/view-predicates/fqn-ref-expr.d.ts +0 -4
  278. package/dist/validation/view-predicates/fqn-ref-expr.js +0 -51
  279. package/dist/validation/view-predicates/incoming.d.ts +0 -4
  280. package/dist/validation/view-predicates/incoming.js +0 -16
  281. package/dist/validation/view-predicates/index.d.ts +0 -6
  282. package/dist/validation/view-predicates/index.js +0 -6
  283. package/dist/validation/view-predicates/outgoing.d.ts +0 -4
  284. package/dist/validation/view-predicates/outgoing.js +0 -20
  285. package/dist/validation/view-predicates/relation-expr.d.ts +0 -4
  286. package/dist/validation/view-predicates/relation-expr.js +0 -46
  287. package/dist/validation/view-predicates/relation-with.d.ts +0 -4
  288. package/dist/validation/view-predicates/relation-with.js +0 -16
  289. package/dist/validation/view.d.ts +0 -4
  290. package/dist/validation/view.js +0 -42
  291. package/dist/view-utils/assignNavigateTo.d.ts +0 -2
  292. package/dist/view-utils/assignNavigateTo.js +0 -27
  293. package/dist/view-utils/index.d.ts +0 -2
  294. package/dist/view-utils/index.js +0 -2
  295. package/dist/view-utils/manual-layout.d.ts +0 -13
  296. package/dist/view-utils/manual-layout.js +0 -149
  297. package/dist/views/ConfigurableLayouter.d.ts +0 -7
  298. package/dist/views/ConfigurableLayouter.js +0 -51
  299. package/dist/views/LikeC4ManualLayouts.d.ts +0 -42
  300. package/dist/views/LikeC4ManualLayouts.js +0 -209
  301. package/dist/views/LikeC4Views.d.ts +0 -89
  302. package/dist/views/LikeC4Views.js +0 -216
  303. package/dist/views/index.d.ts +0 -4
  304. package/dist/views/index.js +0 -11
  305. package/dist/workspace/AstNodeDescriptionProvider.d.ts +0 -7
  306. package/dist/workspace/AstNodeDescriptionProvider.js +0 -18
  307. package/dist/workspace/IndexManager.d.ts +0 -10
  308. package/dist/workspace/IndexManager.js +0 -26
  309. package/dist/workspace/LangiumDocuments.d.ts +0 -29
  310. package/dist/workspace/LangiumDocuments.js +0 -104
  311. package/dist/workspace/ProjectsManager.d.ts +0 -134
  312. package/dist/workspace/ProjectsManager.js +0 -610
  313. package/dist/workspace/WorkspaceManager.d.ts +0 -31
  314. package/dist/workspace/WorkspaceManager.js +0 -132
  315. package/dist/workspace/index.d.ts +0 -5
  316. package/dist/workspace/index.js +0 -5
@@ -0,0 +1,80 @@
1
+ import { t as parseMilliseconds } from "./parse-ms.mjs";
2
+
3
+ //#region ../../node_modules/.pnpm/pretty-ms@9.3.0/node_modules/pretty-ms/index.js
4
+ const isZero = (value) => value === 0 || value === 0n;
5
+ const pluralize = (word, count) => count === 1 || count === 1n ? word : `${word}s`;
6
+ const SECOND_ROUNDING_EPSILON = 1e-7;
7
+ const ONE_DAY_IN_MILLISECONDS = 24n * 60n * 60n * 1000n;
8
+ function prettyMilliseconds(milliseconds, options) {
9
+ const isBigInt = typeof milliseconds === "bigint";
10
+ if (!isBigInt && !Number.isFinite(milliseconds)) throw new TypeError("Expected a finite number or bigint");
11
+ options = { ...options };
12
+ const sign = milliseconds < 0 ? "-" : "";
13
+ milliseconds = milliseconds < 0 ? -milliseconds : milliseconds;
14
+ if (options.colonNotation) {
15
+ options.compact = false;
16
+ options.formatSubMilliseconds = false;
17
+ options.separateMilliseconds = false;
18
+ options.verbose = false;
19
+ }
20
+ if (options.compact) {
21
+ options.unitCount = 1;
22
+ options.secondsDecimalDigits = 0;
23
+ options.millisecondsDecimalDigits = 0;
24
+ }
25
+ let result = [];
26
+ const floorDecimals = (value, decimalDigits) => {
27
+ const flooredInterimValue = Math.floor(value * 10 ** decimalDigits + SECOND_ROUNDING_EPSILON);
28
+ return (Math.round(flooredInterimValue) / 10 ** decimalDigits).toFixed(decimalDigits);
29
+ };
30
+ const add = (value, long, short, valueString) => {
31
+ if ((result.length === 0 || !options.colonNotation) && isZero(value) && !(options.colonNotation && short === "m")) return;
32
+ valueString ??= String(value);
33
+ if (options.colonNotation) {
34
+ const wholeDigits = valueString.includes(".") ? valueString.split(".")[0].length : valueString.length;
35
+ const minLength = result.length > 0 ? 2 : 1;
36
+ valueString = "0".repeat(Math.max(0, minLength - wholeDigits)) + valueString;
37
+ } else valueString += options.verbose ? " " + pluralize(long, value) : short;
38
+ result.push(valueString);
39
+ };
40
+ const parsed = parseMilliseconds(milliseconds);
41
+ const days = BigInt(parsed.days);
42
+ if (options.hideYearAndDays) add(BigInt(days) * 24n + BigInt(parsed.hours), "hour", "h");
43
+ else {
44
+ if (options.hideYear) add(days, "day", "d");
45
+ else {
46
+ add(days / 365n, "year", "y");
47
+ add(days % 365n, "day", "d");
48
+ }
49
+ add(Number(parsed.hours), "hour", "h");
50
+ }
51
+ add(Number(parsed.minutes), "minute", "m");
52
+ if (!options.hideSeconds) if (options.separateMilliseconds || options.formatSubMilliseconds || !options.colonNotation && milliseconds < 1e3 && !options.subSecondsAsDecimals) {
53
+ const seconds = Number(parsed.seconds);
54
+ const milliseconds = Number(parsed.milliseconds);
55
+ const microseconds = Number(parsed.microseconds);
56
+ const nanoseconds = Number(parsed.nanoseconds);
57
+ add(seconds, "second", "s");
58
+ if (options.formatSubMilliseconds) {
59
+ add(milliseconds, "millisecond", "ms");
60
+ add(microseconds, "microsecond", "µs");
61
+ add(nanoseconds, "nanosecond", "ns");
62
+ } else {
63
+ const millisecondsAndBelow = milliseconds + microseconds / 1e3 + nanoseconds / 1e6;
64
+ const millisecondsDecimalDigits = typeof options.millisecondsDecimalDigits === "number" ? options.millisecondsDecimalDigits : 0;
65
+ const millisecondsString = millisecondsDecimalDigits ? millisecondsAndBelow.toFixed(millisecondsDecimalDigits) : millisecondsAndBelow >= 1 ? Math.round(millisecondsAndBelow) : Math.ceil(millisecondsAndBelow);
66
+ add(Number.parseFloat(millisecondsString), "millisecond", "ms", millisecondsString);
67
+ }
68
+ } else {
69
+ const secondsFixed = floorDecimals((isBigInt ? Number(milliseconds % ONE_DAY_IN_MILLISECONDS) : milliseconds) / 1e3 % 60, typeof options.secondsDecimalDigits === "number" ? options.secondsDecimalDigits : 1);
70
+ const secondsString = options.keepDecimalsOnWholeSeconds ? secondsFixed : secondsFixed.replace(/\.0+$/, "");
71
+ add(Number.parseFloat(secondsString), "second", "s", secondsString);
72
+ }
73
+ if (result.length === 0) return sign + "0" + (options.verbose ? " milliseconds" : "ms");
74
+ const separator = options.colonNotation ? ":" : " ";
75
+ if (typeof options.unitCount === "number") result = result.slice(0, Math.max(options.unitCount, 1));
76
+ return sign + result.join(separator);
77
+ }
78
+
79
+ //#endregion
80
+ export { prettyMilliseconds as t };
@@ -0,0 +1,482 @@
1
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/lazyDataLastImpl-BDhrIOwR.js
2
+ function e$14(e, t, n) {
3
+ let r = (n) => e(n, ...t);
4
+ return n === void 0 ? r : Object.assign(r, {
5
+ lazy: n,
6
+ lazyArgs: t
7
+ });
8
+ }
9
+
10
+ //#endregion
11
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/purry-DH9cw9sy.js
12
+ function t$24(t, n, r) {
13
+ let i = t.length - n.length;
14
+ if (i === 0) return t(...n);
15
+ if (i === 1) return e$14(t, n, r);
16
+ throw Error(`Wrong number of arguments`);
17
+ }
18
+
19
+ //#endregion
20
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/anyPass-C9yFxHyK.js
21
+ function t$23(...t) {
22
+ return t$24(n$22, t);
23
+ }
24
+ const n$22 = (e, t) => t.some((t) => t(e));
25
+
26
+ //#endregion
27
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/clamp-DSPiOOFS.js
28
+ function t$22(...t) {
29
+ return t$24(n$21, t);
30
+ }
31
+ const n$21 = (e, { min: t, max: n }) => t !== void 0 && e < t ? t : n !== void 0 && e > n ? n : e;
32
+
33
+ //#endregion
34
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/utilityEvaluators-DORpnx39.js
35
+ const e$13 = {
36
+ done: !0,
37
+ hasNext: !1
38
+ }, t$21 = {
39
+ done: !1,
40
+ hasNext: !1
41
+ }, n$20 = () => e$13, r$9 = (e) => ({
42
+ hasNext: !0,
43
+ next: e,
44
+ done: !1
45
+ });
46
+
47
+ //#endregion
48
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/pipe-jLehR9-P.js
49
+ function t$20(e, ...t) {
50
+ let a = e, o = t.map((e) => `lazy` in e ? r$8(e) : void 0), s = 0;
51
+ for (; s < t.length;) {
52
+ if (o[s] === void 0 || !i$3(a)) {
53
+ let e = t[s];
54
+ a = e(a), s += 1;
55
+ continue;
56
+ }
57
+ let e = [];
58
+ for (let n = s; n < t.length; n++) {
59
+ let t = o[n];
60
+ if (t === void 0 || (e.push(t), t.isSingle)) break;
61
+ }
62
+ let r = [];
63
+ for (let t of a) if (n$19(t, r, e)) break;
64
+ let { isSingle: c } = e.at(-1);
65
+ a = c ? r[0] : r, s += e.length;
66
+ }
67
+ return a;
68
+ }
69
+ function n$19(t, r, i) {
70
+ if (i.length === 0) return r.push(t), !1;
71
+ let a = t, o = t$21, s = !1;
72
+ for (let [e, t] of i.entries()) {
73
+ let { index: c, items: l } = t;
74
+ if (l.push(a), o = t(a, c, l), t.index += 1, o.hasNext) {
75
+ if (o.hasMany ?? !1) {
76
+ for (let t of o.next) if (n$19(t, r, i.slice(e + 1))) return !0;
77
+ return s;
78
+ }
79
+ a = o.next;
80
+ }
81
+ if (!o.hasNext) break;
82
+ o.done && (s = !0);
83
+ }
84
+ return o.hasNext && r.push(a), s;
85
+ }
86
+ function r$8(e) {
87
+ let { lazy: t, lazyArgs: n } = e, r = t(...n);
88
+ return Object.assign(r, {
89
+ isSingle: t.single ?? !1,
90
+ index: 0,
91
+ items: []
92
+ });
93
+ }
94
+ function i$3(e) {
95
+ return typeof e == `string` || typeof e == `object` && !!e && Symbol.iterator in e;
96
+ }
97
+
98
+ //#endregion
99
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/purryFromLazy-3oywCNIb.js
100
+ function t$19(t, n) {
101
+ let r = n.length - t.length;
102
+ if (r === 1) {
103
+ let [r, ...i] = n;
104
+ return t$20(r, {
105
+ lazy: t,
106
+ lazyArgs: i
107
+ });
108
+ }
109
+ if (r === 0) {
110
+ let r = {
111
+ lazy: t,
112
+ lazyArgs: n
113
+ };
114
+ return Object.assign((t) => t$20(t, r), r);
115
+ }
116
+ throw Error(`Wrong number of arguments`);
117
+ }
118
+
119
+ //#endregion
120
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/hasAtLeast-F1Oj_xBB.js
121
+ function t$18(...t) {
122
+ return t$24(n$18, t);
123
+ }
124
+ const n$18 = (e, t) => e.length >= t;
125
+
126
+ //#endregion
127
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/entries-IutXYNeS.js
128
+ function t$17(...t) {
129
+ return t$24(Object.entries, t);
130
+ }
131
+
132
+ //#endregion
133
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/filter-BiMaBet0.js
134
+ function n$17(...t) {
135
+ return t$24(r$7, t, i$2);
136
+ }
137
+ const r$7 = (e, t) => e.filter(t), i$2 = (e) => (n, r, i) => e(n, r, i) ? {
138
+ done: !1,
139
+ hasNext: !0,
140
+ next: n
141
+ } : t$21;
142
+
143
+ //#endregion
144
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/toSingle-Bfpp5_i-.js
145
+ const e$12 = (e) => Object.assign(e, { single: !0 });
146
+
147
+ //#endregion
148
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/find-iUA4Ke5f.js
149
+ function r$6(...t) {
150
+ return t$24(i$1, t, e$12(a$1));
151
+ }
152
+ const i$1 = (e, t) => e.find(t), a$1 = (e) => (n, r, i) => e(n, r, i) ? {
153
+ done: !0,
154
+ hasNext: !0,
155
+ next: n
156
+ } : t$21;
157
+
158
+ //#endregion
159
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/findLast-4m16uIkT.js
160
+ function t$16(...t) {
161
+ return t$24(n$16, t);
162
+ }
163
+ const n$16 = (e, t) => {
164
+ for (let n = e.length - 1; n >= 0; n--) {
165
+ let r = e[n];
166
+ if (t(r, n, e)) return r;
167
+ }
168
+ };
169
+
170
+ //#endregion
171
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/first-1mSmk2BJ.js
172
+ function n$15(...n) {
173
+ return t$24(r$5, n, e$12(i));
174
+ }
175
+ const r$5 = ([e]) => e, i = () => a, a = (e) => ({
176
+ hasNext: !0,
177
+ next: e,
178
+ done: !0
179
+ });
180
+
181
+ //#endregion
182
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/flatMap-Cw4Hh6bl.js
183
+ function t$15(...t) {
184
+ return t$24(n$14, t, r$4);
185
+ }
186
+ const n$14 = (e, t) => e.flatMap(t), r$4 = (e) => (t, n, r) => {
187
+ let i = e(t, n, r);
188
+ return Array.isArray(i) ? {
189
+ done: !1,
190
+ hasNext: !0,
191
+ hasMany: !0,
192
+ next: i
193
+ } : {
194
+ done: !1,
195
+ hasNext: !0,
196
+ next: i
197
+ };
198
+ };
199
+
200
+ //#endregion
201
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/forEach-y9rIgINo.js
202
+ function t$14(...t) {
203
+ return t$24(n$13, t, r$3);
204
+ }
205
+ function n$13(e, t) {
206
+ return e.forEach(t), e;
207
+ }
208
+ const r$3 = (e) => (t, n, r) => (e(t, n, r), {
209
+ done: !1,
210
+ hasNext: !0,
211
+ next: t
212
+ });
213
+
214
+ //#endregion
215
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/forEachObj-t8MUyUxS.js
216
+ function t$13(...t) {
217
+ return t$24(n$12, t);
218
+ }
219
+ function n$12(e, t) {
220
+ for (let [n, r] of Object.entries(e)) t(r, n, e);
221
+ return e;
222
+ }
223
+
224
+ //#endregion
225
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/funnel-yqgBeZ-Z.js
226
+ const e$11 = Symbol(`funnel/voidReducer`), t$12 = () => e$11;
227
+ function n$11(n, { triggerAt: r = `end`, minQuietPeriodMs: i, maxBurstDurationMs: a, minGapMs: o, reducer: s = t$12 }) {
228
+ let c, l, u, d, f = () => {
229
+ let t = u;
230
+ t !== void 0 && (u = void 0, t === e$11 ? n() : n(t), o !== void 0 && (l = setTimeout(p, o)));
231
+ }, p = () => {
232
+ clearTimeout(l), l = void 0, c === void 0 && f();
233
+ }, m = () => {
234
+ clearTimeout(c), c = void 0, d = void 0, l === void 0 && f();
235
+ };
236
+ return {
237
+ call: (...e) => {
238
+ let t = c === void 0 && l === void 0;
239
+ if ((r !== `start` || t) && (u = s(u, ...e)), !(c === void 0 && !t)) {
240
+ if (i !== void 0 || a !== void 0 || o === void 0) {
241
+ clearTimeout(c);
242
+ let e = Date.now();
243
+ d ??= e;
244
+ let t = a === void 0 ? i ?? 0 : Math.min(i ?? a, a - (e - d));
245
+ c = setTimeout(m, t);
246
+ }
247
+ r !== `end` && t && f();
248
+ }
249
+ },
250
+ cancel: () => {
251
+ clearTimeout(c), c = void 0, d = void 0, clearTimeout(l), l = void 0, u = void 0;
252
+ },
253
+ flush: () => {
254
+ m(), p();
255
+ },
256
+ get isIdle() {
257
+ return c === void 0 && l === void 0;
258
+ }
259
+ };
260
+ }
261
+
262
+ //#endregion
263
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/groupBy-DG3Piv-t.js
264
+ function t$11(...t) {
265
+ return t$24(n$10, t);
266
+ }
267
+ const n$10 = (e, t) => {
268
+ let n = Object.create(null);
269
+ for (let r = 0; r < e.length; r++) {
270
+ let i = e[r], a = t(i, r, e);
271
+ if (a !== void 0) {
272
+ let e = n[a];
273
+ e === void 0 ? n[a] = [i] : e.push(i);
274
+ }
275
+ }
276
+ return Object.setPrototypeOf(n, Object.prototype), n;
277
+ };
278
+
279
+ //#endregion
280
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/indexBy-BwSvEDkk.js
281
+ function t$10(...t) {
282
+ return t$24(n$9, t);
283
+ }
284
+ function n$9(e, t) {
285
+ let n = {};
286
+ for (let [r, i] of e.entries()) {
287
+ let a = t(i, r, e);
288
+ n[a] = i;
289
+ }
290
+ return n;
291
+ }
292
+
293
+ //#endregion
294
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isArray-C3HaRgzz.js
295
+ function e$10(e) {
296
+ return Array.isArray(e);
297
+ }
298
+
299
+ //#endregion
300
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isBoolean-rUPD1MTE.js
301
+ function e$9(e) {
302
+ return typeof e == `boolean`;
303
+ }
304
+
305
+ //#endregion
306
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isDefined-D96LKBI6.js
307
+ function e$8(e) {
308
+ return e !== void 0;
309
+ }
310
+
311
+ //#endregion
312
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isEmpty-B6r3tkJ8.js
313
+ function e$7(e) {
314
+ return e === `` || e === void 0 ? !0 : Array.isArray(e) ? e.length === 0 : Object.keys(e).length === 0;
315
+ }
316
+
317
+ //#endregion
318
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isNonNullish-C9wd575s.js
319
+ function e$6(e) {
320
+ return e != null;
321
+ }
322
+
323
+ //#endregion
324
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isNullish-Mu0-VITK.js
325
+ function e$5(e) {
326
+ return e == null;
327
+ }
328
+
329
+ //#endregion
330
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isNumber-ccMQhOVD.js
331
+ function e$4(e) {
332
+ return typeof e == `number` && !Number.isNaN(e);
333
+ }
334
+
335
+ //#endregion
336
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isPromise-APPd_fLV.js
337
+ function e$3(e) {
338
+ return e instanceof Promise;
339
+ }
340
+
341
+ //#endregion
342
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isString-BPlksnnG.js
343
+ function e$2(e) {
344
+ return typeof e == `string`;
345
+ }
346
+
347
+ //#endregion
348
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/isTruthy-LnBlxhiF.js
349
+ function e$1(e) {
350
+ return !!e;
351
+ }
352
+
353
+ //#endregion
354
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/keys-CT72t2DB.js
355
+ function t$9(...t) {
356
+ return t$24(Object.keys, t);
357
+ }
358
+
359
+ //#endregion
360
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/last-BaD4Geh6.js
361
+ function t$8(...t) {
362
+ return t$24(n$8, t);
363
+ }
364
+ const n$8 = (e) => e.at(-1);
365
+
366
+ //#endregion
367
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/map-B0uTZUd8.js
368
+ function t$7(...t) {
369
+ return t$24(n$7, t, r$2);
370
+ }
371
+ const n$7 = (e, t) => e.map(t), r$2 = (e) => (t, n, r) => ({
372
+ done: !1,
373
+ hasNext: !0,
374
+ next: e(t, n, r)
375
+ });
376
+
377
+ //#endregion
378
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/mapToObj-8STtUbFK.js
379
+ function t$6(...t) {
380
+ return t$24(n$6, t);
381
+ }
382
+ function n$6(e, t) {
383
+ let n = {};
384
+ for (let [r, i] of e.entries()) {
385
+ let [a, o] = t(i, r, e);
386
+ n[a] = o;
387
+ }
388
+ return n;
389
+ }
390
+
391
+ //#endregion
392
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/mapValues-D8ywfrE_.js
393
+ function t$5(...t) {
394
+ return t$24(n$5, t);
395
+ }
396
+ function n$5(e, t) {
397
+ let n = {};
398
+ for (let [r, i] of Object.entries(e)) n[r] = t(i, r, e);
399
+ return n;
400
+ }
401
+
402
+ //#endregion
403
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/omitBy-CgV9CAW2.js
404
+ function t$4(...t) {
405
+ return t$24(n$4, t);
406
+ }
407
+ function n$4(e, t) {
408
+ let n = { ...e };
409
+ for (let [r, i] of Object.entries(n)) t(i, r, e) && delete n[r];
410
+ return n;
411
+ }
412
+
413
+ //#endregion
414
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/prop-Cv_AVBuA.js
415
+ function e(e, ...n) {
416
+ return typeof e == `string` || typeof e == `number` || typeof e == `symbol` ? (r) => t$3(r, e, ...n) : t$3(e, ...n);
417
+ }
418
+ function t$3(e, ...t) {
419
+ let n = e;
420
+ for (let e of t) {
421
+ if (n == null) return;
422
+ n = n[e];
423
+ }
424
+ return n;
425
+ }
426
+
427
+ //#endregion
428
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/reduce-Cu1bxvtw.js
429
+ function t$2(...t) {
430
+ return t$24(n$3, t);
431
+ }
432
+ const n$3 = (e, t, n) => e.reduce(t, n);
433
+
434
+ //#endregion
435
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/sort-DJMgrJTX.js
436
+ function t$1(...t) {
437
+ return t$24(n$2, t);
438
+ }
439
+ function n$2(e, t) {
440
+ let n = [...e];
441
+ return n.sort(t), n;
442
+ }
443
+
444
+ //#endregion
445
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/unique-10P7QXxd.js
446
+ function n$1(...e) {
447
+ return t$19(r$1, e);
448
+ }
449
+ function r$1() {
450
+ let t = /* @__PURE__ */ new Set();
451
+ return (n) => t.has(n) ? t$21 : (t.add(n), {
452
+ done: !1,
453
+ hasNext: !0,
454
+ next: n
455
+ });
456
+ }
457
+
458
+ //#endregion
459
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/uniqueBy-C_PxkF_D.js
460
+ function n(...e) {
461
+ return t$19(r, e);
462
+ }
463
+ function r(t) {
464
+ let n = t, r = /* @__PURE__ */ new Set();
465
+ return (t, i, a) => {
466
+ let o = n(t, i, a);
467
+ return r.has(o) ? t$21 : (r.add(o), {
468
+ done: !1,
469
+ hasNext: !0,
470
+ next: t
471
+ });
472
+ };
473
+ }
474
+
475
+ //#endregion
476
+ //#region ../../node_modules/.pnpm/remeda@2.32.0/node_modules/remeda/dist/values-CpYo8vbR.js
477
+ function t(...t) {
478
+ return t$24(Object.values, t);
479
+ }
480
+
481
+ //#endregion
482
+ export { t$16 as A, t$10 as C, t$14 as D, t$13 as E, t$20 as F, t$22 as I, t$23 as L, n$17 as M, t$17 as N, t$15 as O, t$18 as P, e$10 as S, n$11 as T, e$5 as _, t$2 as a, e$8 as b, t$5 as c, t$8 as d, t$9 as f, e$4 as g, e$3 as h, t$1 as i, r$6 as j, n$15 as k, t$6 as l, e$2 as m, n, e as o, e$1 as p, n$1 as r, t$4 as s, t, t$7 as u, e$6 as v, t$11 as w, e$9 as x, e$7 as y };
@@ -0,0 +1,15 @@
1
+ //#region ../../node_modules/.pnpm/strip-indent@4.1.1/node_modules/strip-indent/index.js
2
+ function stripIndent(string) {
3
+ const match = string.match(/^[ \t]*(?=\S)/gm);
4
+ if (!match) return string;
5
+ let minIndent = Number.POSITIVE_INFINITY;
6
+ for (const indent of match) minIndent = Math.min(minIndent, indent.length);
7
+ if (minIndent === 0 || minIndent === Number.POSITIVE_INFINITY) return string;
8
+ return string.replace(new RegExp(`^[ \\t]{${minIndent}}`, "gm"), "");
9
+ }
10
+ function dedent(string) {
11
+ return stripIndent(string.replace(/^(?:[ \t]*\r?\n)+|(?:\r?\n[ \t]*)+$/g, ""));
12
+ }
13
+
14
+ //#endregion
15
+ export { dedent as t };