@uapkg/diagnostics-format 1.1.8 → 1.1.9

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 (133) hide show
  1. package/dist/contracts/FormatterTypes.d.ts +21 -0
  2. package/dist/contracts/FormatterTypes.d.ts.map +1 -0
  3. package/dist/contracts/FormatterTypes.js +2 -0
  4. package/dist/contracts/FormatterTypes.js.map +1 -0
  5. package/dist/defaults/defaultFormatters.d.ts +6 -0
  6. package/dist/defaults/defaultFormatters.d.ts.map +1 -0
  7. package/dist/defaults/defaultFormatters.js +24 -0
  8. package/dist/defaults/defaultFormatters.js.map +1 -0
  9. package/dist/formatters/PlainTextFormatter.d.ts +9 -0
  10. package/dist/formatters/PlainTextFormatter.d.ts.map +1 -0
  11. package/dist/formatters/PlainTextFormatter.js +15 -0
  12. package/dist/formatters/PlainTextFormatter.js.map +1 -0
  13. package/dist/formatters/config/configFormatters.d.ts +3 -0
  14. package/dist/formatters/config/configFormatters.d.ts.map +1 -0
  15. package/dist/formatters/config/configFormatters.js +68 -0
  16. package/dist/formatters/config/configFormatters.js.map +1 -0
  17. package/dist/formatters/installer/installerFormatters.d.ts +3 -0
  18. package/dist/formatters/installer/installerFormatters.d.ts.map +1 -0
  19. package/dist/formatters/installer/installerFormatters.js +63 -0
  20. package/dist/formatters/installer/installerFormatters.js.map +1 -0
  21. package/dist/formatters/manifest/manifestFormatters.d.ts +3 -0
  22. package/dist/formatters/manifest/manifestFormatters.d.ts.map +1 -0
  23. package/dist/formatters/manifest/manifestFormatters.js +57 -0
  24. package/dist/formatters/manifest/manifestFormatters.js.map +1 -0
  25. package/dist/formatters/pack/packFormatters.d.ts +3 -0
  26. package/dist/formatters/pack/packFormatters.d.ts.map +1 -0
  27. package/dist/formatters/pack/packFormatters.js +12 -0
  28. package/dist/formatters/pack/packFormatters.js.map +1 -0
  29. package/dist/formatters/postinstall/postinstallFormatters.d.ts +3 -0
  30. package/dist/formatters/postinstall/postinstallFormatters.d.ts.map +1 -0
  31. package/dist/formatters/postinstall/postinstallFormatters.js +50 -0
  32. package/dist/formatters/postinstall/postinstallFormatters.js.map +1 -0
  33. package/dist/formatters/registry/registryFormatters.d.ts +3 -0
  34. package/dist/formatters/registry/registryFormatters.d.ts.map +1 -0
  35. package/dist/formatters/registry/registryFormatters.js +42 -0
  36. package/dist/formatters/registry/registryFormatters.js.map +1 -0
  37. package/dist/formatters/resolver/resolverFormatters.d.ts +3 -0
  38. package/dist/formatters/resolver/resolverFormatters.d.ts.map +1 -0
  39. package/dist/formatters/resolver/resolverFormatters.js +24 -0
  40. package/dist/formatters/resolver/resolverFormatters.js.map +1 -0
  41. package/dist/formatters/safety/safetyFormatters.d.ts +3 -0
  42. package/dist/formatters/safety/safetyFormatters.d.ts.map +1 -0
  43. package/dist/formatters/safety/safetyFormatters.js +34 -0
  44. package/dist/formatters/safety/safetyFormatters.js.map +1 -0
  45. package/dist/formatters/spec/specFormatters.d.ts +3 -0
  46. package/dist/formatters/spec/specFormatters.d.ts.map +1 -0
  47. package/dist/formatters/spec/specFormatters.js +27 -0
  48. package/dist/formatters/spec/specFormatters.js.map +1 -0
  49. package/dist/index.d.ts +13 -0
  50. package/dist/index.d.ts.map +1 -0
  51. package/dist/index.js +15 -0
  52. package/dist/index.js.map +1 -0
  53. package/dist/ink/components/configInkComponents.d.ts +3 -0
  54. package/dist/ink/components/configInkComponents.d.ts.map +1 -0
  55. package/dist/ink/components/configInkComponents.js +30 -0
  56. package/dist/ink/components/configInkComponents.js.map +1 -0
  57. package/dist/ink/components/installerInkComponents.d.ts +3 -0
  58. package/dist/ink/components/installerInkComponents.d.ts.map +1 -0
  59. package/dist/ink/components/installerInkComponents.js +40 -0
  60. package/dist/ink/components/installerInkComponents.js.map +1 -0
  61. package/dist/ink/components/manifestInkComponents.d.ts +3 -0
  62. package/dist/ink/components/manifestInkComponents.d.ts.map +1 -0
  63. package/dist/ink/components/manifestInkComponents.js +56 -0
  64. package/dist/ink/components/manifestInkComponents.js.map +1 -0
  65. package/dist/ink/components/packInkComponents.d.ts +3 -0
  66. package/dist/ink/components/packInkComponents.d.ts.map +1 -0
  67. package/dist/ink/components/packInkComponents.js +10 -0
  68. package/dist/ink/components/packInkComponents.js.map +1 -0
  69. package/dist/ink/components/postinstallInkComponents.d.ts +3 -0
  70. package/dist/ink/components/postinstallInkComponents.d.ts.map +1 -0
  71. package/dist/ink/components/postinstallInkComponents.js +35 -0
  72. package/dist/ink/components/postinstallInkComponents.js.map +1 -0
  73. package/dist/ink/components/registryInkComponents.d.ts +3 -0
  74. package/dist/ink/components/registryInkComponents.d.ts.map +1 -0
  75. package/dist/ink/components/registryInkComponents.js +40 -0
  76. package/dist/ink/components/registryInkComponents.js.map +1 -0
  77. package/dist/ink/components/resolverInkComponents.d.ts +3 -0
  78. package/dist/ink/components/resolverInkComponents.d.ts.map +1 -0
  79. package/dist/ink/components/resolverInkComponents.js +30 -0
  80. package/dist/ink/components/resolverInkComponents.js.map +1 -0
  81. package/dist/ink/components/safetyInkComponents.d.ts +3 -0
  82. package/dist/ink/components/safetyInkComponents.d.ts.map +1 -0
  83. package/dist/ink/components/safetyInkComponents.js +20 -0
  84. package/dist/ink/components/safetyInkComponents.js.map +1 -0
  85. package/dist/ink/components/specInkComponents.d.ts +3 -0
  86. package/dist/ink/components/specInkComponents.d.ts.map +1 -0
  87. package/dist/ink/components/specInkComponents.js +20 -0
  88. package/dist/ink/components/specInkComponents.js.map +1 -0
  89. package/dist/ink/contracts/InkTypes.d.ts +30 -0
  90. package/dist/ink/contracts/InkTypes.d.ts.map +1 -0
  91. package/dist/ink/contracts/InkTypes.js +2 -0
  92. package/dist/ink/contracts/InkTypes.js.map +1 -0
  93. package/dist/ink/defaults/defaultInkComponents.d.ts +13 -0
  94. package/dist/ink/defaults/defaultInkComponents.d.ts.map +1 -0
  95. package/dist/ink/defaults/defaultInkComponents.js +31 -0
  96. package/dist/ink/defaults/defaultInkComponents.js.map +1 -0
  97. package/dist/ink/index.d.ts +16 -0
  98. package/dist/ink/index.d.ts.map +1 -0
  99. package/dist/ink/index.js +28 -0
  100. package/dist/ink/index.js.map +1 -0
  101. package/dist/ink/primitives/HintLine.d.ts +10 -0
  102. package/dist/ink/primitives/HintLine.d.ts.map +1 -0
  103. package/dist/ink/primitives/HintLine.js +12 -0
  104. package/dist/ink/primitives/HintLine.js.map +1 -0
  105. package/dist/ink/primitives/PlainTextBody.d.ts +9 -0
  106. package/dist/ink/primitives/PlainTextBody.d.ts.map +1 -0
  107. package/dist/ink/primitives/PlainTextBody.js +11 -0
  108. package/dist/ink/primitives/PlainTextBody.js.map +1 -0
  109. package/dist/ink/primitives/SeverityBadge.d.ts +11 -0
  110. package/dist/ink/primitives/SeverityBadge.d.ts.map +1 -0
  111. package/dist/ink/primitives/SeverityBadge.js +16 -0
  112. package/dist/ink/primitives/SeverityBadge.js.map +1 -0
  113. package/dist/ink/registry/DiagnosticInkRegistry.d.ts +22 -0
  114. package/dist/ink/registry/DiagnosticInkRegistry.d.ts.map +1 -0
  115. package/dist/ink/registry/DiagnosticInkRegistry.js +33 -0
  116. package/dist/ink/registry/DiagnosticInkRegistry.js.map +1 -0
  117. package/dist/ink/views/DiagnosticView.d.ts +19 -0
  118. package/dist/ink/views/DiagnosticView.d.ts.map +1 -0
  119. package/dist/ink/views/DiagnosticView.js +20 -0
  120. package/dist/ink/views/DiagnosticView.js.map +1 -0
  121. package/dist/ink/views/DiagnosticsListView.d.ts +14 -0
  122. package/dist/ink/views/DiagnosticsListView.d.ts.map +1 -0
  123. package/dist/ink/views/DiagnosticsListView.js +19 -0
  124. package/dist/ink/views/DiagnosticsListView.js.map +1 -0
  125. package/dist/registry/FormatterRegistry.d.ts +24 -0
  126. package/dist/registry/FormatterRegistry.d.ts.map +1 -0
  127. package/dist/registry/FormatterRegistry.js +44 -0
  128. package/dist/registry/FormatterRegistry.js.map +1 -0
  129. package/dist/utils/indent.d.ts +5 -0
  130. package/dist/utils/indent.d.ts.map +1 -0
  131. package/dist/utils/indent.js +13 -0
  132. package/dist/utils/indent.js.map +1 -0
  133. package/package.json +2 -2
@@ -0,0 +1,21 @@
1
+ import type { Diagnostic, DiagnosticCode } from '@uapkg/diagnostics';
2
+ /**
3
+ * A function that converts a single diagnostic into a human-readable string.
4
+ */
5
+ export type DiagnosticFormatterFn = (diagnostic: Diagnostic) => string;
6
+ /**
7
+ * A lookup of formatter functions keyed by diagnostic code.
8
+ */
9
+ export type FormatterMap = Partial<Record<DiagnosticCode, DiagnosticFormatterFn>>;
10
+ /**
11
+ * Contract for a formatter registry that maps diagnostic codes to formatters.
12
+ */
13
+ export interface IFormatterRegistry {
14
+ /** Register a formatter for a specific code. */
15
+ register(code: DiagnosticCode, formatter: DiagnosticFormatterFn): void;
16
+ /** Format a single diagnostic. */
17
+ format(diagnostic: Diagnostic): string;
18
+ /** Format an array of diagnostics, one per line. */
19
+ formatAll(diagnostics: readonly Diagnostic[]): string;
20
+ }
21
+ //# sourceMappingURL=FormatterTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormatterTypes.d.ts","sourceRoot":"","sources":["../../src/contracts/FormatterTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,UAAU,EAAE,UAAU,KAAK,MAAM,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAEvE,kCAAkC;IAClC,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC;IAEvC,oDAAoD;IACpD,SAAS,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,GAAG,MAAM,CAAC;CACvD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=FormatterTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormatterTypes.js","sourceRoot":"","sources":["../../src/contracts/FormatterTypes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import type { FormatterMap } from '../contracts/FormatterTypes.js';
2
+ /**
3
+ * Merged map of all built-in formatters across families.
4
+ */
5
+ export declare const defaultFormatters: FormatterMap;
6
+ //# sourceMappingURL=defaultFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultFormatters.d.ts","sourceRoot":"","sources":["../../src/defaults/defaultFormatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAWnE;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,YAU/B,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { configFormatters } from '../formatters/config/configFormatters.js';
2
+ import { installerFormatters } from '../formatters/installer/installerFormatters.js';
3
+ import { manifestFormatters } from '../formatters/manifest/manifestFormatters.js';
4
+ import { packFormatters } from '../formatters/pack/packFormatters.js';
5
+ import { postinstallFormatters } from '../formatters/postinstall/postinstallFormatters.js';
6
+ import { registryFormatters } from '../formatters/registry/registryFormatters.js';
7
+ import { resolverFormatters } from '../formatters/resolver/resolverFormatters.js';
8
+ import { safetyFormatters } from '../formatters/safety/safetyFormatters.js';
9
+ import { specFormatters } from '../formatters/spec/specFormatters.js';
10
+ /**
11
+ * Merged map of all built-in formatters across families.
12
+ */
13
+ export const defaultFormatters = {
14
+ ...resolverFormatters,
15
+ ...configFormatters,
16
+ ...registryFormatters,
17
+ ...manifestFormatters,
18
+ ...packFormatters,
19
+ ...installerFormatters,
20
+ ...postinstallFormatters,
21
+ ...safetyFormatters,
22
+ ...specFormatters,
23
+ };
24
+ //# sourceMappingURL=defaultFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultFormatters.js","sourceRoot":"","sources":["../../src/defaults/defaultFormatters.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAiB;IAC7C,GAAG,kBAAkB;IACrB,GAAG,gBAAgB;IACnB,GAAG,kBAAkB;IACrB,GAAG,kBAAkB;IACrB,GAAG,cAAc;IACjB,GAAG,mBAAmB;IACtB,GAAG,qBAAqB;IACxB,GAAG,gBAAgB;IACnB,GAAG,cAAc;CAClB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { Diagnostic } from '@uapkg/diagnostics';
2
+ /**
3
+ * Default plain-text formatter for any diagnostic.
4
+ *
5
+ * Format: `[LEVEL CODE]: message`
6
+ * If a hint is present: ` → hint`
7
+ */
8
+ export declare function formatPlainText(diagnostic: Diagnostic): string;
9
+ //# sourceMappingURL=PlainTextFormatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlainTextFormatter.d.ts","sourceRoot":"","sources":["../../src/formatters/PlainTextFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAO9D"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Default plain-text formatter for any diagnostic.
3
+ *
4
+ * Format: `[LEVEL CODE]: message`
5
+ * If a hint is present: ` → hint`
6
+ */
7
+ export function formatPlainText(diagnostic) {
8
+ const tag = diagnostic.level.toUpperCase();
9
+ let line = `[${tag} ${diagnostic.code}]: ${diagnostic.message}`;
10
+ if (diagnostic.hint) {
11
+ line += `\n → ${diagnostic.hint}`;
12
+ }
13
+ return line;
14
+ }
15
+ //# sourceMappingURL=PlainTextFormatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlainTextFormatter.js","sourceRoot":"","sources":["../../src/formatters/PlainTextFormatter.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,UAAsB;IACpD,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;IAC3C,IAAI,IAAI,GAAG,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;IAChE,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QACpB,IAAI,IAAI,SAAS,UAAU,CAAC,IAAI,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const configFormatters: FormatterMap;
3
+ //# sourceMappingURL=configFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/config/configFormatters.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AA4DtE,eAAO,MAAM,gBAAgB,EAAE,YAM9B,CAAC"}
@@ -0,0 +1,68 @@
1
+ function formatInvalidJson(diagnostic) {
2
+ const data = diagnostic.data;
3
+ const lines = [
4
+ `[WARNING CONFIG_INVALID_JSON]: ${diagnostic.message}`,
5
+ ` File: ${data.filePath}`,
6
+ ` Reason: ${data.reason}`,
7
+ ];
8
+ if (diagnostic.hint)
9
+ lines.push(` → ${diagnostic.hint}`);
10
+ return lines.join('\n');
11
+ }
12
+ function formatTypeMismatch(diagnostic) {
13
+ const data = diagnostic.data;
14
+ const lines = [
15
+ `[WARNING CONFIG_TYPE_MISMATCH]: ${diagnostic.message}`,
16
+ ` Path: ${data.path}`,
17
+ ` Expected: ${data.expectedType}`,
18
+ ` Actual: ${data.actualType}`,
19
+ ` Source: ${data.source}`,
20
+ ];
21
+ if (data.filePath)
22
+ lines.push(` File: ${data.filePath}`);
23
+ if (diagnostic.hint)
24
+ lines.push(` → ${diagnostic.hint}`);
25
+ return lines.join('\n');
26
+ }
27
+ function formatUnknownKey(diagnostic) {
28
+ const data = diagnostic.data;
29
+ const lines = [
30
+ `[WARNING CONFIG_UNKNOWN_KEY]: ${diagnostic.message}`,
31
+ ` Path: ${data.path}`,
32
+ ` Source: ${data.source}`,
33
+ ];
34
+ if (data.filePath)
35
+ lines.push(` File: ${data.filePath}`);
36
+ if (diagnostic.hint)
37
+ lines.push(` → ${diagnostic.hint}`);
38
+ return lines.join('\n');
39
+ }
40
+ function formatUnresolvedRegistry(diagnostic) {
41
+ const data = diagnostic.data;
42
+ const lines = [
43
+ `[WARNING CONFIG_UNRESOLVED_DEFAULT_REGISTRY]: ${diagnostic.message}`,
44
+ ` Registry: ${data.registryName}`,
45
+ ];
46
+ if (diagnostic.hint)
47
+ lines.push(` → ${diagnostic.hint}`);
48
+ return lines.join('\n');
49
+ }
50
+ function formatInvalidValue(diagnostic) {
51
+ const data = diagnostic.data;
52
+ const lines = [
53
+ `[WARNING CONFIG_INVALID_VALUE]: ${diagnostic.message}`,
54
+ ` Path: ${data.path}`,
55
+ ` Rule: ${data.rule}`,
56
+ ];
57
+ if (diagnostic.hint)
58
+ lines.push(` → ${diagnostic.hint}`);
59
+ return lines.join('\n');
60
+ }
61
+ export const configFormatters = {
62
+ CONFIG_INVALID_JSON: formatInvalidJson,
63
+ CONFIG_TYPE_MISMATCH: formatTypeMismatch,
64
+ CONFIG_UNKNOWN_KEY: formatUnknownKey,
65
+ CONFIG_UNRESOLVED_DEFAULT_REGISTRY: formatUnresolvedRegistry,
66
+ CONFIG_INVALID_VALUE: formatInvalidValue,
67
+ };
68
+ //# sourceMappingURL=configFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configFormatters.js","sourceRoot":"","sources":["../../../src/formatters/config/configFormatters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const installerFormatters: FormatterMap;
3
+ //# sourceMappingURL=installerFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installerFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/installer/installerFormatters.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AA0DtE,eAAO,MAAM,mBAAmB,EAAE,YAQjC,CAAC"}
@@ -0,0 +1,63 @@
1
+ function formatDownloadFailed(d) {
2
+ const data = d.data;
3
+ const lines = [
4
+ `[ERROR DOWNLOAD_FAILED]: ${d.message}`,
5
+ ` Package : ${data.packageName}`,
6
+ ` URL : ${data.url}`,
7
+ ` Attempt : ${data.attempt}`,
8
+ ];
9
+ if (d.hint)
10
+ lines.push(` → ${d.hint}`);
11
+ return lines.join('\n');
12
+ }
13
+ function formatDownloadHttpStatus(d) {
14
+ const data = d.data;
15
+ return `[ERROR DOWNLOAD_HTTP_STATUS]: ${d.message}\n URL: ${data.url}\n Status: ${data.status}`;
16
+ }
17
+ function formatNetworkTimeout(d) {
18
+ const data = d.data;
19
+ const lines = [`[ERROR NETWORK_TIMEOUT]: ${d.message}`, ` URL: ${data.url}`, ` Timeout: ${data.timeoutSeconds}s`];
20
+ if (d.hint)
21
+ lines.push(` → ${d.hint}`);
22
+ return lines.join('\n');
23
+ }
24
+ function formatNetworkRetriesExhausted(d) {
25
+ const data = d.data;
26
+ const lines = [
27
+ `[ERROR NETWORK_RETRIES_EXHAUSTED]: ${d.message}`,
28
+ ` URL: ${data.url}`,
29
+ ` Attempts: ${data.attempts}`,
30
+ ];
31
+ if (d.hint)
32
+ lines.push(` → ${d.hint}`);
33
+ return lines.join('\n');
34
+ }
35
+ function formatIntegrityMismatch(d) {
36
+ const data = d.data;
37
+ const lines = [
38
+ `[ERROR INTEGRITY_MISMATCH]: ${d.message}`,
39
+ ` Expected: ${data.expected}`,
40
+ ` Actual : ${data.actual}`,
41
+ ];
42
+ if (d.hint)
43
+ lines.push(` → ${d.hint}`);
44
+ return lines.join('\n');
45
+ }
46
+ function formatExtractionFailed(d) {
47
+ const data = d.data;
48
+ return `[ERROR EXTRACTION_FAILED]: ${d.message}\n Path: ${data.path}`;
49
+ }
50
+ function formatDiskRemoveFailed(d) {
51
+ const data = d.data;
52
+ return `[ERROR DISK_REMOVE_FAILED]: ${d.message}\n Path: ${data.path}`;
53
+ }
54
+ export const installerFormatters = {
55
+ DOWNLOAD_FAILED: formatDownloadFailed,
56
+ DOWNLOAD_HTTP_STATUS: formatDownloadHttpStatus,
57
+ NETWORK_TIMEOUT: formatNetworkTimeout,
58
+ NETWORK_RETRIES_EXHAUSTED: formatNetworkRetriesExhausted,
59
+ INTEGRITY_MISMATCH: formatIntegrityMismatch,
60
+ EXTRACTION_FAILED: formatExtractionFailed,
61
+ DISK_REMOVE_FAILED: formatDiskRemoveFailed,
62
+ };
63
+ //# sourceMappingURL=installerFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installerFormatters.js","sourceRoot":"","sources":["../../../src/formatters/installer/installerFormatters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const manifestFormatters: FormatterMap;
3
+ //# sourceMappingURL=manifestFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifestFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/manifest/manifestFormatters.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAmDtE,eAAO,MAAM,kBAAkB,EAAE,YAMhC,CAAC"}
@@ -0,0 +1,57 @@
1
+ function formatManifestInvalid(d) {
2
+ const data = d.data;
3
+ const lines = [`[ERROR MANIFEST_INVALID]: ${d.message}`, ` File: ${data.filePath}`];
4
+ for (const issue of data.issues) {
5
+ lines.push(` - ${issue}`);
6
+ }
7
+ if (d.hint)
8
+ lines.push(` → ${d.hint}`);
9
+ return lines.join('\n');
10
+ }
11
+ function formatForbiddenOverrides(d) {
12
+ const data = d.data;
13
+ const lines = [
14
+ `[ERROR FORBIDDEN_OVERRIDES]: ${d.message}`,
15
+ ` Kind: ${data.manifestKind}`,
16
+ ` File: ${data.filePath}`,
17
+ ];
18
+ if (d.hint)
19
+ lines.push(` → ${d.hint}`);
20
+ return lines.join('\n');
21
+ }
22
+ function formatLockfileMissing(d) {
23
+ const data = d.data;
24
+ const lines = [`[${d.level.toUpperCase()} LOCKFILE_MISSING]: ${d.message}`, ` File: ${data.filePath}`];
25
+ if (d.hint)
26
+ lines.push(` → ${d.hint}`);
27
+ return lines.join('\n');
28
+ }
29
+ function formatDependencyNotFound(d) {
30
+ const data = d.data;
31
+ const lines = [`[INFO DEPENDENCY_NOT_FOUND]: ${d.message}`, ` Package: ${data.packageName}`];
32
+ if (d.hint)
33
+ lines.push(` → ${d.hint}`);
34
+ return lines.join('\n');
35
+ }
36
+ function formatLockfileOutOfSync(d) {
37
+ const data = d.data;
38
+ const lines = ['[ERROR LOCKFILE_OUT_OF_SYNC]: Lockfile is out of sync with the following errors:'];
39
+ data.issues.forEach((issue, index) => {
40
+ lines.push(` ${index + 1}. [${issue.severity.toUpperCase()} ${issue.code}] ${issue.message}`);
41
+ });
42
+ if (data.additionalIssues > 0) {
43
+ lines.push(` There are ${data.additionalIssues} additional errors.`);
44
+ }
45
+ lines.push(` View the full error list at: ${data.logFilePath}`);
46
+ if (d.hint)
47
+ lines.push(` → ${d.hint}`);
48
+ return lines.join('\n');
49
+ }
50
+ export const manifestFormatters = {
51
+ MANIFEST_INVALID: formatManifestInvalid,
52
+ FORBIDDEN_OVERRIDES: formatForbiddenOverrides,
53
+ LOCKFILE_MISSING: formatLockfileMissing,
54
+ DEPENDENCY_NOT_FOUND: formatDependencyNotFound,
55
+ LOCKFILE_OUT_OF_SYNC: formatLockfileOutOfSync,
56
+ };
57
+ //# sourceMappingURL=manifestFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifestFormatters.js","sourceRoot":"","sources":["../../../src/formatters/manifest/manifestFormatters.ts"],"names":[],"mappings":"AAUA,SAAS,qBAAqB,CAAC,CAAa;IAC1C,MAAM,IAAI,GAAI,CAA+B,CAAC,IAAI,CAAC;IACnD,MAAM,KAAK,GAAG,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,EAAE,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,wBAAwB,CAAC,CAAa;IAC7C,MAAM,IAAI,GAAI,CAAkC,CAAC,IAAI,CAAC;IACtD,MAAM,KAAK,GAAG;QACZ,gCAAgC,CAAC,CAAC,OAAO,EAAE;QAC3C,WAAW,IAAI,CAAC,YAAY,EAAE;QAC9B,WAAW,IAAI,CAAC,QAAQ,EAAE;KAC3B,CAAC;IACF,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,qBAAqB,CAAC,CAAa;IAC1C,MAAM,IAAI,GAAI,CAA+B,CAAC,IAAI,CAAC;IACnD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC,OAAO,EAAE,EAAE,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxG,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,wBAAwB,CAAC,CAAa;IAC7C,MAAM,IAAI,GAAI,CAAkC,CAAC,IAAI,CAAC;IACtD,MAAM,KAAK,GAAG,CAAC,gCAAgC,CAAC,CAAC,OAAO,EAAE,EAAE,cAAc,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9F,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,uBAAuB,CAAC,CAAa;IAC5C,MAAM,IAAI,GAAI,CAAiC,CAAC,IAAI,CAAC;IACrD,MAAM,KAAK,GAAG,CAAC,kFAAkF,CAAC,CAAC;IACnG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACnC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,gBAAgB,qBAAqB,CAAC,CAAC;IACxE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,kCAAkC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IACjE,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAiB;IAC9C,gBAAgB,EAAE,qBAAqB;IACvC,mBAAmB,EAAE,wBAAwB;IAC7C,gBAAgB,EAAE,qBAAqB;IACvC,oBAAoB,EAAE,wBAAwB;IAC9C,oBAAoB,EAAE,uBAAuB;CAC9C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const packFormatters: FormatterMap;
3
+ //# sourceMappingURL=packFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/pack/packFormatters.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAWtE,eAAO,MAAM,cAAc,EAAE,YAE5B,CAAC"}
@@ -0,0 +1,12 @@
1
+ function formatUpluginMissing(diagnostic) {
2
+ const data = diagnostic.data;
3
+ const lines = [`[ERROR UPLUGIN_MISSING]: ${diagnostic.message}`, ` Plugin root: ${data.pluginRoot}`];
4
+ if (diagnostic.hint) {
5
+ lines.push(` → ${diagnostic.hint}`);
6
+ }
7
+ return lines.join('\n');
8
+ }
9
+ export const packFormatters = {
10
+ UPLUGIN_MISSING: formatUpluginMissing,
11
+ };
12
+ //# sourceMappingURL=packFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packFormatters.js","sourceRoot":"","sources":["../../../src/formatters/pack/packFormatters.ts"],"names":[],"mappings":"AAGA,SAAS,oBAAoB,CAAC,UAAsB;IAClD,MAAM,IAAI,GAAI,UAAuC,CAAC,IAAI,CAAC;IAC3D,MAAM,KAAK,GAAG,CAAC,4BAA4B,UAAU,CAAC,OAAO,EAAE,EAAE,kBAAkB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACtG,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAiB;IAC1C,eAAe,EAAE,oBAAoB;CACtC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const postinstallFormatters: FormatterMap;
3
+ //# sourceMappingURL=postinstallFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postinstallFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/postinstall/postinstallFormatters.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AA4CtE,eAAO,MAAM,qBAAqB,EAAE,YAOnC,CAAC"}
@@ -0,0 +1,50 @@
1
+ function formatPolicyDenied(d) {
2
+ const data = d.data;
3
+ const lines = [
4
+ `[INFO POSTINSTALL_POLICY_DENIED]: ${d.message}`,
5
+ ` Registry: ${data.registry}`,
6
+ ` Policy : ${data.policy} (from ${data.resolvedFrom})`,
7
+ ];
8
+ if (d.hint)
9
+ lines.push(` → ${d.hint}`);
10
+ return lines.join('\n');
11
+ }
12
+ function formatLoadFailed(d) {
13
+ const data = d.data;
14
+ return `[ERROR POSTINSTALL_LOAD_FAILED]: ${d.message}\n Entry: ${data.entryFile}`;
15
+ }
16
+ function formatInvalidExport(d) {
17
+ const data = d.data;
18
+ const lines = [`[ERROR POSTINSTALL_INVALID_EXPORT]: ${d.message}`, ` Entry: ${data.entryFile}`];
19
+ for (const issue of data.issues)
20
+ lines.push(` - ${issue}`);
21
+ if (d.hint)
22
+ lines.push(` → ${d.hint}`);
23
+ return lines.join('\n');
24
+ }
25
+ function formatDuplicateEntry(d) {
26
+ const data = d.data;
27
+ const lines = [`[ERROR POSTINSTALL_DUPLICATE_ENTRY]: ${d.message}`];
28
+ for (const c of data.candidates)
29
+ lines.push(` - ${c}`);
30
+ if (d.hint)
31
+ lines.push(` → ${d.hint}`);
32
+ return lines.join('\n');
33
+ }
34
+ function formatMarkerCorrupt(d) {
35
+ const data = d.data;
36
+ return `[ERROR POSTINSTALL_MARKER_CORRUPT]: ${d.message}\n File: ${data.file}`;
37
+ }
38
+ function formatEsbuildError(d) {
39
+ const data = d.data;
40
+ return `[ERROR POSTINSTALL_ESBUILD_ERROR]: ${d.message}\n Entry: ${data.entryFile}`;
41
+ }
42
+ export const postinstallFormatters = {
43
+ POSTINSTALL_POLICY_DENIED: formatPolicyDenied,
44
+ POSTINSTALL_LOAD_FAILED: formatLoadFailed,
45
+ POSTINSTALL_INVALID_EXPORT: formatInvalidExport,
46
+ POSTINSTALL_DUPLICATE_ENTRY: formatDuplicateEntry,
47
+ POSTINSTALL_MARKER_CORRUPT: formatMarkerCorrupt,
48
+ POSTINSTALL_ESBUILD_ERROR: formatEsbuildError,
49
+ };
50
+ //# sourceMappingURL=postinstallFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postinstallFormatters.js","sourceRoot":"","sources":["../../../src/formatters/postinstall/postinstallFormatters.ts"],"names":[],"mappings":"AAWA,SAAS,kBAAkB,CAAC,CAAa;IACvC,MAAM,IAAI,GAAI,CAAuC,CAAC,IAAI,CAAC;IAC3D,MAAM,KAAK,GAAG;QACZ,qCAAqC,CAAC,CAAC,OAAO,EAAE;QAChD,eAAe,IAAI,CAAC,QAAQ,EAAE;QAC9B,eAAe,IAAI,CAAC,MAAM,UAAU,IAAI,CAAC,YAAY,GAAG;KACzD,CAAC;IACF,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAa;IACrC,MAAM,IAAI,GAAI,CAAqC,CAAC,IAAI,CAAC;IACzD,OAAO,oCAAoC,CAAC,CAAC,OAAO,cAAc,IAAI,CAAC,SAAS,EAAE,CAAC;AACrF,CAAC;AAED,SAAS,mBAAmB,CAAC,CAAa;IACxC,MAAM,IAAI,GAAI,CAAwC,CAAC,IAAI,CAAC;IAC5D,MAAM,KAAK,GAAG,CAAC,uCAAuC,CAAC,CAAC,OAAO,EAAE,EAAE,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACjG,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,oBAAoB,CAAC,CAAa;IACzC,MAAM,IAAI,GAAI,CAAyC,CAAC,IAAI,CAAC;IAC7D,MAAM,KAAK,GAAG,CAAC,wCAAwC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IACpE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,mBAAmB,CAAC,CAAa;IACxC,MAAM,IAAI,GAAI,CAAwC,CAAC,IAAI,CAAC;IAC5D,OAAO,uCAAuC,CAAC,CAAC,OAAO,aAAa,IAAI,CAAC,IAAI,EAAE,CAAC;AAClF,CAAC;AAED,SAAS,kBAAkB,CAAC,CAAa;IACvC,MAAM,IAAI,GAAI,CAAuC,CAAC,IAAI,CAAC;IAC3D,OAAO,sCAAsC,CAAC,CAAC,OAAO,cAAc,IAAI,CAAC,SAAS,EAAE,CAAC;AACvF,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAiB;IACjD,yBAAyB,EAAE,kBAAkB;IAC7C,uBAAuB,EAAE,gBAAgB;IACzC,0BAA0B,EAAE,mBAAmB;IAC/C,2BAA2B,EAAE,oBAAoB;IACjD,0BAA0B,EAAE,mBAAmB;IAC/C,yBAAyB,EAAE,kBAAkB;CAC9C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const registryFormatters: FormatterMap;
3
+ //# sourceMappingURL=registryFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registryFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/registry/registryFormatters.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAqCtE,eAAO,MAAM,kBAAkB,EAAE,YAIhC,CAAC"}
@@ -0,0 +1,42 @@
1
+ function formatGitError(d) {
2
+ const data = d.data;
3
+ const lines = [`[ERROR GIT_ERROR]: ${d.message}`, ` Command : ${data.command}`, ` Exit : ${data.exitCode}`];
4
+ if (data.stderr)
5
+ lines.push(` Stderr : ${data.stderr}`);
6
+ if (d.hint)
7
+ lines.push(` → ${d.hint}`);
8
+ return lines.join('\n');
9
+ }
10
+ function formatSchemaInvalid(d) {
11
+ const data = d.data;
12
+ const lines = [`[ERROR SCHEMA_INVALID]: ${d.message}`, ` File: ${data.filePath}`];
13
+ for (const issue of data.issues) {
14
+ lines.push(` - ${issue}`);
15
+ }
16
+ if (d.hint)
17
+ lines.push(` → ${d.hint}`);
18
+ return lines.join('\n');
19
+ }
20
+ function formatRegistryUnreachable(d) {
21
+ const data = d.data;
22
+ const level = d.level.toUpperCase();
23
+ const lines = [
24
+ `[${level} REGISTRY_UNREACHABLE]: ${d.message}`,
25
+ ` Registry : ${data.registryName}`,
26
+ ` URL : ${data.url}`,
27
+ ];
28
+ if (data.httpStatus !== undefined) {
29
+ lines.push(` HTTP : ${data.httpStatus}`);
30
+ }
31
+ lines.push(` Cause : ${data.cause}`);
32
+ lines.push(` Cache : ${data.initialized ? 'initialized' : 'not initialized'}`);
33
+ if (d.hint)
34
+ lines.push(` → ${d.hint}`);
35
+ return lines.join('\n');
36
+ }
37
+ export const registryFormatters = {
38
+ GIT_ERROR: formatGitError,
39
+ SCHEMA_INVALID: formatSchemaInvalid,
40
+ REGISTRY_UNREACHABLE: formatRegistryUnreachable,
41
+ };
42
+ //# sourceMappingURL=registryFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registryFormatters.js","sourceRoot":"","sources":["../../../src/formatters/registry/registryFormatters.ts"],"names":[],"mappings":"AAQA,SAAS,cAAc,CAAC,CAAa;IACnC,MAAM,IAAI,GAAI,CAAwB,CAAC,IAAI,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,sBAAsB,CAAC,CAAC,OAAO,EAAE,EAAE,eAAe,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjH,IAAI,IAAI,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,mBAAmB,CAAC,CAAa;IACxC,MAAM,IAAI,GAAI,CAA6B,CAAC,IAAI,CAAC;IACjD,MAAM,KAAK,GAAG,CAAC,2BAA2B,CAAC,CAAC,OAAO,EAAE,EAAE,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,yBAAyB,CAAC,CAAa;IAC9C,MAAM,IAAI,GAAI,CAAmC,CAAC,IAAI,CAAC;IACvD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG;QACZ,IAAI,KAAK,2BAA2B,CAAC,CAAC,OAAO,EAAE;QAC/C,gBAAgB,IAAI,CAAC,YAAY,EAAE;QACnC,gBAAgB,IAAI,CAAC,GAAG,EAAE;KAC3B,CAAC;IACF,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACzC,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACnF,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAiB;IAC9C,SAAS,EAAE,cAAc;IACzB,cAAc,EAAE,mBAAmB;IACnC,oBAAoB,EAAE,yBAAyB;CAChD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const resolverFormatters: FormatterMap;
3
+ //# sourceMappingURL=resolverFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolverFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/resolver/resolverFormatters.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAqBtE,eAAO,MAAM,kBAAkB,EAAE,YAGhC,CAAC"}
@@ -0,0 +1,24 @@
1
+ function formatVersionConflict(d) {
2
+ const data = d.data;
3
+ const lines = [
4
+ `[ERROR VERSION_CONFLICT]: ${d.message}`,
5
+ ` Package : ${data.packageName}`,
6
+ ` Registry: ${data.registry}`,
7
+ ` Versions: ${data.versions.join(', ')}`,
8
+ ];
9
+ if (d.hint)
10
+ lines.push(` → ${d.hint}`);
11
+ return lines.join('\n');
12
+ }
13
+ function formatCircularDep(d) {
14
+ const data = d.data;
15
+ const lines = [`[ERROR CIRCULAR_DEP]: ${d.message}`, ` Cycle: ${data.path.join(' → ')}`];
16
+ if (d.hint)
17
+ lines.push(` → ${d.hint}`);
18
+ return lines.join('\n');
19
+ }
20
+ export const resolverFormatters = {
21
+ VERSION_CONFLICT: formatVersionConflict,
22
+ CIRCULAR_DEP: formatCircularDep,
23
+ };
24
+ //# sourceMappingURL=resolverFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolverFormatters.js","sourceRoot":"","sources":["../../../src/formatters/resolver/resolverFormatters.ts"],"names":[],"mappings":"AAGA,SAAS,qBAAqB,CAAC,CAAa;IAC1C,MAAM,IAAI,GAAI,CAA+B,CAAC,IAAI,CAAC;IACnD,MAAM,KAAK,GAAG;QACZ,6BAA6B,CAAC,CAAC,OAAO,EAAE;QACxC,eAAe,IAAI,CAAC,WAAW,EAAE;QACjC,eAAe,IAAI,CAAC,QAAQ,EAAE;QAC9B,eAAe,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;KAC1C,CAAC;IACF,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAa;IACtC,MAAM,IAAI,GAAI,CAA2B,CAAC,IAAI,CAAC;IAC/C,MAAM,KAAK,GAAG,CAAC,yBAAyB,CAAC,CAAC,OAAO,EAAE,EAAE,YAAY,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1F,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAiB;IAC9C,gBAAgB,EAAE,qBAAqB;IACvC,YAAY,EAAE,iBAAiB;CAChC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const safetyFormatters: FormatterMap;
3
+ //# sourceMappingURL=safetyFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safetyFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/safety/safetyFormatters.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AA+BtE,eAAO,MAAM,gBAAgB,EAAE,YAI9B,CAAC"}
@@ -0,0 +1,34 @@
1
+ function formatTargetExistsNoManifest(d) {
2
+ const data = d.data;
3
+ const lines = [
4
+ `[ERROR SAFETY_TARGET_EXISTS_NO_MANIFEST]: ${d.message}`,
5
+ ` Package: ${data.packageName}`,
6
+ ` Path : ${data.path}`,
7
+ ];
8
+ if (d.hint)
9
+ lines.push(` → ${d.hint}`);
10
+ return lines.join('\n');
11
+ }
12
+ function formatPathNotProjectManifest(d) {
13
+ const data = d.data;
14
+ const lines = [
15
+ `[WARN SAFETY_PATH_NOT_PROJECT_MANIFEST]: ${d.message}`,
16
+ ` Plugin : ${data.pluginName}`,
17
+ ` Dependency : ${data.dependencyName}`,
18
+ ` Requested : ${data.requestedPath}`,
19
+ ` Fallback : ${data.fallbackPath}`,
20
+ ];
21
+ if (d.hint)
22
+ lines.push(` → ${d.hint}`);
23
+ return lines.join('\n');
24
+ }
25
+ function formatOverriddenByForce(d) {
26
+ const data = d.data;
27
+ return `[INFO SAFETY_OVERRIDDEN_BY_FORCE]: ${d.message}\n Policy: ${data.policy}`;
28
+ }
29
+ export const safetyFormatters = {
30
+ SAFETY_TARGET_EXISTS_NO_MANIFEST: formatTargetExistsNoManifest,
31
+ SAFETY_PATH_NOT_PROJECT_MANIFEST: formatPathNotProjectManifest,
32
+ SAFETY_OVERRIDDEN_BY_FORCE: formatOverriddenByForce,
33
+ };
34
+ //# sourceMappingURL=safetyFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safetyFormatters.js","sourceRoot":"","sources":["../../../src/formatters/safety/safetyFormatters.ts"],"names":[],"mappings":"AAQA,SAAS,4BAA4B,CAAC,CAAa;IACjD,MAAM,IAAI,GAAI,CAA4C,CAAC,IAAI,CAAC;IAChE,MAAM,KAAK,GAAG;QACZ,6CAA6C,CAAC,CAAC,OAAO,EAAE;QACxD,cAAc,IAAI,CAAC,WAAW,EAAE;QAChC,cAAc,IAAI,CAAC,IAAI,EAAE;KAC1B,CAAC;IACF,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,4BAA4B,CAAC,CAAa;IACjD,MAAM,IAAI,GAAI,CAA4C,CAAC,IAAI,CAAC;IAChE,MAAM,KAAK,GAAG;QACZ,6CAA6C,CAAC,CAAC,OAAO,EAAE;QACxD,mBAAmB,IAAI,CAAC,UAAU,EAAE;QACpC,mBAAmB,IAAI,CAAC,cAAc,EAAE;QACxC,mBAAmB,IAAI,CAAC,aAAa,EAAE;QACvC,mBAAmB,IAAI,CAAC,YAAY,EAAE;KACvC,CAAC;IACF,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,uBAAuB,CAAC,CAAa;IAC5C,MAAM,IAAI,GAAI,CAAuC,CAAC,IAAI,CAAC;IAC3D,OAAO,uCAAuC,CAAC,CAAC,OAAO,eAAe,IAAI,CAAC,MAAM,EAAE,CAAC;AACtF,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAiB;IAC5C,gCAAgC,EAAE,4BAA4B;IAC9D,gCAAgC,EAAE,4BAA4B;IAC9D,0BAA0B,EAAE,uBAAuB;CACpD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FormatterMap } from '../../contracts/FormatterTypes.js';
2
+ export declare const specFormatters: FormatterMap;
3
+ //# sourceMappingURL=specFormatters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"specFormatters.d.ts","sourceRoot":"","sources":["../../../src/formatters/spec/specFormatters.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAuBtE,eAAO,MAAM,cAAc,EAAE,YAI5B,CAAC"}
@@ -0,0 +1,27 @@
1
+ function formatInvalidPackageSpec(d) {
2
+ const data = d.data;
3
+ const lines = [`[ERROR INVALID_PACKAGE_SPEC]: ${d.message}`, ` Input : ${data.input}`, ` Reason: ${data.reason}`];
4
+ if (d.hint)
5
+ lines.push(` → ${d.hint}`);
6
+ return lines.join('\n');
7
+ }
8
+ function formatInvalidOrgName(d) {
9
+ const data = d.data;
10
+ const lines = [`[ERROR INVALID_ORG_NAME]: ${d.message}`, ` Input: ${data.input}`, ` Org : ${data.org}`];
11
+ if (d.hint)
12
+ lines.push(` → ${d.hint}`);
13
+ return lines.join('\n');
14
+ }
15
+ function formatInvalidVersionRange(d) {
16
+ const data = d.data;
17
+ const lines = [`[ERROR INVALID_VERSION_RANGE]: ${d.message}`, ` Input: ${data.input}`, ` Range: ${data.range}`];
18
+ if (d.hint)
19
+ lines.push(` → ${d.hint}`);
20
+ return lines.join('\n');
21
+ }
22
+ export const specFormatters = {
23
+ INVALID_PACKAGE_SPEC: formatInvalidPackageSpec,
24
+ INVALID_ORG_NAME: formatInvalidOrgName,
25
+ INVALID_VERSION_RANGE: formatInvalidVersionRange,
26
+ };
27
+ //# sourceMappingURL=specFormatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"specFormatters.js","sourceRoot":"","sources":["../../../src/formatters/spec/specFormatters.ts"],"names":[],"mappings":"AAQA,SAAS,wBAAwB,CAAC,CAAa;IAC7C,MAAM,IAAI,GAAI,CAAkC,CAAC,IAAI,CAAC;IACtD,MAAM,KAAK,GAAG,CAAC,iCAAiC,CAAC,CAAC,OAAO,EAAE,EAAE,aAAa,IAAI,CAAC,KAAK,EAAE,EAAE,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACpH,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,oBAAoB,CAAC,CAAa;IACzC,MAAM,IAAI,GAAI,CAA8B,CAAC,IAAI,CAAC;IAClD,MAAM,KAAK,GAAG,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,EAAE,YAAY,IAAI,CAAC,KAAK,EAAE,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3G,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,yBAAyB,CAAC,CAAa;IAC9C,MAAM,IAAI,GAAI,CAAmC,CAAC,IAAI,CAAC;IACvD,MAAM,KAAK,GAAG,CAAC,kCAAkC,CAAC,CAAC,OAAO,EAAE,EAAE,YAAY,IAAI,CAAC,KAAK,EAAE,EAAE,YAAY,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAClH,IAAI,CAAC,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAiB;IAC1C,oBAAoB,EAAE,wBAAwB;IAC9C,gBAAgB,EAAE,oBAAoB;IACtC,qBAAqB,EAAE,yBAAyB;CACjD,CAAC"}