tailwind-styled-v4 5.0.36 → 5.0.38

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 (163) hide show
  1. package/dist/analyzer.d.mts +152 -5
  2. package/dist/analyzer.d.ts +152 -5
  3. package/dist/analyzer.js +213 -161
  4. package/dist/analyzer.js.map +1 -1
  5. package/dist/analyzer.mjs +118 -82
  6. package/dist/analyzer.mjs.map +1 -1
  7. package/dist/animate.d.mts +30 -3
  8. package/dist/animate.d.ts +30 -3
  9. package/dist/animate.js +131 -87
  10. package/dist/animate.js.map +1 -1
  11. package/dist/animate.mjs +28 -14
  12. package/dist/animate.mjs.map +1 -1
  13. package/dist/atomic.js +105 -68
  14. package/dist/atomic.js.map +1 -1
  15. package/dist/atomic.mjs +40 -13
  16. package/dist/atomic.mjs.map +1 -1
  17. package/dist/cli.js +577 -426
  18. package/dist/cli.js.map +1 -1
  19. package/dist/cli.mjs +466 -304
  20. package/dist/cli.mjs.map +1 -1
  21. package/dist/compiler.d.mts +5 -0
  22. package/dist/compiler.d.ts +5 -0
  23. package/dist/compiler.js +826 -508
  24. package/dist/compiler.js.map +1 -1
  25. package/dist/compiler.mjs +287 -29
  26. package/dist/compiler.mjs.map +1 -1
  27. package/dist/dashboard.js +71 -41
  28. package/dist/dashboard.js.map +1 -1
  29. package/dist/dashboard.mjs +12 -6
  30. package/dist/dashboard.mjs.map +1 -1
  31. package/dist/devtools.d.mts +88 -2
  32. package/dist/devtools.d.ts +88 -2
  33. package/dist/devtools.js +333 -289
  34. package/dist/devtools.js.map +1 -1
  35. package/dist/devtools.mjs +26 -11
  36. package/dist/devtools.mjs.map +1 -1
  37. package/dist/engine.d.mts +557 -6
  38. package/dist/engine.d.ts +557 -6
  39. package/dist/engine.js +679 -502
  40. package/dist/engine.js.map +1 -1
  41. package/dist/engine.mjs +467 -307
  42. package/dist/engine.mjs.map +1 -1
  43. package/dist/index.d.mts +180 -127
  44. package/dist/index.d.ts +180 -127
  45. package/dist/index.js +1329 -7441
  46. package/dist/index.js.map +1 -1
  47. package/dist/index.mjs +1266 -7385
  48. package/dist/index.mjs.map +1 -1
  49. package/dist/next.js +318 -243
  50. package/dist/next.js.map +1 -1
  51. package/dist/next.mjs +256 -181
  52. package/dist/next.mjs.map +1 -1
  53. package/dist/plugin-api.d.mts +4 -2
  54. package/dist/plugin-api.d.ts +4 -2
  55. package/dist/plugin-api.js +93 -49
  56. package/dist/plugin-api.js.map +1 -1
  57. package/dist/plugin-api.mjs +26 -6
  58. package/dist/plugin-api.mjs.map +1 -1
  59. package/dist/plugin-registry.js +103 -62
  60. package/dist/plugin-registry.js.map +1 -1
  61. package/dist/plugin-registry.mjs +53 -35
  62. package/dist/plugin-registry.mjs.map +1 -1
  63. package/dist/plugin.d.mts +165 -5
  64. package/dist/plugin.d.ts +165 -5
  65. package/dist/plugin.js +115 -50
  66. package/dist/plugin.js.map +1 -1
  67. package/dist/plugin.mjs +44 -6
  68. package/dist/plugin.mjs.map +1 -1
  69. package/dist/preset.js +47 -15
  70. package/dist/preset.js.map +1 -1
  71. package/dist/preset.mjs +13 -5
  72. package/dist/preset.mjs.map +1 -1
  73. package/dist/rspack.js +82 -50
  74. package/dist/rspack.js.map +1 -1
  75. package/dist/rspack.mjs +20 -12
  76. package/dist/rspack.mjs.map +1 -1
  77. package/dist/runtime-css.js +62 -24
  78. package/dist/runtime-css.js.map +1 -1
  79. package/dist/runtime-css.mjs +15 -7
  80. package/dist/runtime-css.mjs.map +1 -1
  81. package/dist/runtime.d.mts +38 -3
  82. package/dist/runtime.d.ts +38 -3
  83. package/dist/runtime.js +97 -44
  84. package/dist/runtime.js.map +1 -1
  85. package/dist/runtime.mjs +31 -8
  86. package/dist/runtime.mjs.map +1 -1
  87. package/dist/scanner.d.mts +58 -4
  88. package/dist/scanner.d.ts +58 -4
  89. package/dist/scanner.js +163 -120
  90. package/dist/scanner.js.map +1 -1
  91. package/dist/scanner.mjs +67 -39
  92. package/dist/scanner.mjs.map +1 -1
  93. package/dist/shared.d.mts +185 -3
  94. package/dist/shared.d.ts +185 -3
  95. package/dist/shared.js +441 -295
  96. package/dist/shared.js.map +1 -1
  97. package/dist/shared.mjs +253 -122
  98. package/dist/shared.mjs.map +1 -1
  99. package/dist/storybook-addon.d.mts +2 -2
  100. package/dist/storybook-addon.d.ts +2 -2
  101. package/dist/storybook-addon.js +39 -10
  102. package/dist/storybook-addon.js.map +1 -1
  103. package/dist/storybook-addon.mjs +8 -3
  104. package/dist/storybook-addon.mjs.map +1 -1
  105. package/dist/svelte.d.mts +2 -1
  106. package/dist/svelte.d.ts +2 -1
  107. package/dist/svelte.js +88 -64
  108. package/dist/svelte.js.map +1 -1
  109. package/dist/svelte.mjs +28 -13
  110. package/dist/svelte.mjs.map +1 -1
  111. package/dist/syntax.js +68 -37
  112. package/dist/syntax.js.map +1 -1
  113. package/dist/syntax.mjs +8 -7
  114. package/dist/syntax.mjs.map +1 -1
  115. package/dist/testing.js +55 -18
  116. package/dist/testing.js.map +1 -1
  117. package/dist/testing.mjs +16 -3
  118. package/dist/testing.mjs.map +1 -1
  119. package/dist/theme.d.mts +38 -3
  120. package/dist/theme.d.ts +38 -3
  121. package/dist/theme.js +131 -74
  122. package/dist/theme.js.map +1 -1
  123. package/dist/theme.mjs +42 -13
  124. package/dist/theme.mjs.map +1 -1
  125. package/dist/turbopackLoader.js +150 -116
  126. package/dist/turbopackLoader.js.map +1 -1
  127. package/dist/turbopackLoader.mjs +124 -81
  128. package/dist/turbopackLoader.mjs.map +1 -1
  129. package/dist/tw.js +560 -421
  130. package/dist/tw.js.map +1 -1
  131. package/dist/tw.mjs +460 -302
  132. package/dist/tw.mjs.map +1 -1
  133. package/dist/vite.js +561 -446
  134. package/dist/vite.js.map +1 -1
  135. package/dist/vite.mjs +433 -321
  136. package/dist/vite.mjs.map +1 -1
  137. package/dist/vue.d.mts +4 -1
  138. package/dist/vue.d.ts +4 -1
  139. package/dist/vue.js +95 -70
  140. package/dist/vue.js.map +1 -1
  141. package/dist/vue.mjs +30 -14
  142. package/dist/vue.mjs.map +1 -1
  143. package/dist/webpackLoader.js +110 -78
  144. package/dist/webpackLoader.js.map +1 -1
  145. package/dist/webpackLoader.mjs +45 -17
  146. package/dist/webpackLoader.mjs.map +1 -1
  147. package/native/tailwind-styled-native.linux-x64-gnu.node +0 -0
  148. package/native/tailwind-styled-native.node +0 -0
  149. package/package.json +3 -1
  150. package/dist/analyzeWorkspace-B1_XRfdl.d.ts +0 -134
  151. package/dist/analyzeWorkspace-hYfu4Hg3.d.mts +0 -134
  152. package/dist/index-DQI6O24n.d.mts +0 -464
  153. package/dist/index-NDINUhLN.d.mts +0 -90
  154. package/dist/index-NDINUhLN.d.ts +0 -90
  155. package/dist/index-UkYbyBkR.d.ts +0 -464
  156. package/dist/liveTokenEngine-CN9ian1R.d.ts +0 -38
  157. package/dist/liveTokenEngine-DKoWRtqH.d.mts +0 -38
  158. package/dist/schemas-DR-SLxZZ.d.mts +0 -59
  159. package/dist/schemas-DR-SLxZZ.d.ts +0 -59
  160. package/dist/trace-Dz4vmZdy.d.mts +0 -96
  161. package/dist/trace-Dz4vmZdy.d.ts +0 -96
  162. package/dist/types-DXr2PmGP.d.mts +0 -31
  163. package/dist/types-DXr2PmGP.d.ts +0 -31
package/dist/dashboard.js CHANGED
@@ -1,39 +1,68 @@
1
- 'use strict';
2
-
3
- var events$1 = require('events');
4
- var zod = require('zod');
5
-
6
1
  /* tailwind-styled-v4 v5.0.4 | MIT | https://github.com/dictionar32/tailwind-styled-v4 */
2
+ "use strict";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
7
20
 
21
+ // src/umbrella/dashboard.ts
22
+ var dashboard_exports = {};
23
+ __export(dashboard_exports, {
24
+ currentMetrics: () => currentMetrics,
25
+ events: () => events,
26
+ getMetricsSummary: () => getMetricsSummary,
27
+ history: () => history,
28
+ normalizeMetrics: () => normalizeMetrics,
29
+ resetHistory: () => resetHistory,
30
+ updateMetrics: () => updateMetrics
31
+ });
32
+ module.exports = __toCommonJS(dashboard_exports);
33
+
34
+ // packages/infrastructure/dashboard/src/state.ts
35
+ var import_node_events = require("events");
36
+ var import_zod = require("zod");
8
37
  var MAX_HISTORY = 100;
9
- var MemoryMetricsSchema = zod.z.object({
10
- rss: zod.z.number().nonnegative().optional(),
11
- heapUsed: zod.z.number().nonnegative().optional(),
12
- heapTotal: zod.z.number().nonnegative().optional()
38
+ var MemoryMetricsSchema = import_zod.z.object({
39
+ rss: import_zod.z.number().nonnegative().optional(),
40
+ heapUsed: import_zod.z.number().nonnegative().optional(),
41
+ heapTotal: import_zod.z.number().nonnegative().optional()
13
42
  }).passthrough();
14
- var DashboardMetricsSchema = zod.z.object({
15
- generatedAt: zod.z.string().min(1).default(() => (/* @__PURE__ */ new Date()).toISOString()),
16
- buildMs: zod.z.number().nonnegative().nullable().default(null),
17
- scanMs: zod.z.number().nonnegative().nullable().default(null),
18
- analyzeMs: zod.z.number().nonnegative().nullable().default(null),
19
- compileMs: zod.z.number().nonnegative().nullable().default(null),
43
+ var DashboardMetricsSchema = import_zod.z.object({
44
+ generatedAt: import_zod.z.string().min(1).default(() => (/* @__PURE__ */ new Date()).toISOString()),
45
+ buildMs: import_zod.z.number().nonnegative().nullable().default(null),
46
+ scanMs: import_zod.z.number().nonnegative().nullable().default(null),
47
+ analyzeMs: import_zod.z.number().nonnegative().nullable().default(null),
48
+ compileMs: import_zod.z.number().nonnegative().nullable().default(null),
20
49
  memoryMb: MemoryMetricsSchema.nullable().default(null),
21
- classCount: zod.z.number().int().nonnegative().nullable().default(null),
22
- fileCount: zod.z.number().int().nonnegative().nullable().default(null),
23
- cssBytes: zod.z.number().int().nonnegative().nullable().default(null),
24
- packageCount: zod.z.number().int().nonnegative().nullable().default(null),
25
- mode: zod.z.enum(["idle", "jit", "build", "watch", "error"]).nullable().default("idle"),
26
- error: zod.z.string().optional(),
27
- lastEventType: zod.z.string().optional(),
28
- eventsReceived: zod.z.number().int().nonnegative().optional(),
29
- eventsProcessed: zod.z.number().int().nonnegative().optional(),
30
- batchesProcessed: zod.z.number().int().nonnegative().optional(),
31
- incrementalUpdates: zod.z.number().int().nonnegative().optional(),
32
- fullRescans: zod.z.number().int().nonnegative().optional(),
33
- skippedLargeFiles: zod.z.number().int().nonnegative().optional(),
34
- queueMaxSize: zod.z.number().int().nonnegative().optional(),
35
- lastBuildMs: zod.z.number().nonnegative().optional(),
36
- avgBuildMs: zod.z.number().nonnegative().optional()
50
+ classCount: import_zod.z.number().int().nonnegative().nullable().default(null),
51
+ fileCount: import_zod.z.number().int().nonnegative().nullable().default(null),
52
+ cssBytes: import_zod.z.number().int().nonnegative().nullable().default(null),
53
+ packageCount: import_zod.z.number().int().nonnegative().nullable().default(null),
54
+ mode: import_zod.z.enum(["idle", "jit", "build", "watch", "error"]).nullable().default("idle"),
55
+ error: import_zod.z.string().optional(),
56
+ lastEventType: import_zod.z.string().optional(),
57
+ eventsReceived: import_zod.z.number().int().nonnegative().optional(),
58
+ eventsProcessed: import_zod.z.number().int().nonnegative().optional(),
59
+ batchesProcessed: import_zod.z.number().int().nonnegative().optional(),
60
+ incrementalUpdates: import_zod.z.number().int().nonnegative().optional(),
61
+ fullRescans: import_zod.z.number().int().nonnegative().optional(),
62
+ skippedLargeFiles: import_zod.z.number().int().nonnegative().optional(),
63
+ queueMaxSize: import_zod.z.number().int().nonnegative().optional(),
64
+ lastBuildMs: import_zod.z.number().nonnegative().optional(),
65
+ avgBuildMs: import_zod.z.number().nonnegative().optional()
37
66
  }).passthrough();
38
67
  function createDefaultMetrics() {
39
68
  return DashboardMetricsSchema.parse({});
@@ -43,7 +72,7 @@ function formatIssues(error) {
43
72
  }
44
73
  var currentMetrics = createDefaultMetrics();
45
74
  var history = [];
46
- var events = new events$1.EventEmitter();
75
+ var events = new import_node_events.EventEmitter();
47
76
  function normalizeMetrics(data) {
48
77
  const parsed = DashboardMetricsSchema.safeParse({
49
78
  ...currentMetrics,
@@ -129,13 +158,14 @@ function getMetricsSummary() {
129
158
  }
130
159
  };
131
160
  }
132
-
133
- exports.currentMetrics = currentMetrics;
134
- exports.events = events;
135
- exports.getMetricsSummary = getMetricsSummary;
136
- exports.history = history;
137
- exports.normalizeMetrics = normalizeMetrics;
138
- exports.resetHistory = resetHistory;
139
- exports.updateMetrics = updateMetrics;
140
- //# sourceMappingURL=dashboard.js.map
161
+ // Annotate the CommonJS export names for ESM import in node:
162
+ 0 && (module.exports = {
163
+ currentMetrics,
164
+ events,
165
+ getMetricsSummary,
166
+ history,
167
+ normalizeMetrics,
168
+ resetHistory,
169
+ updateMetrics
170
+ });
141
171
  //# sourceMappingURL=dashboard.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../packages/infrastructure/dashboard/src/state.ts"],"names":["z","EventEmitter"],"mappings":"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","file":"dashboard.js","sourcesContent":["import { EventEmitter } from \"node:events\"\n\nimport { z } from \"zod\"\n\nconst MAX_HISTORY = 100\n\nconst MemoryMetricsSchema = z\n .object({\n rss: z.number().nonnegative().optional(),\n heapUsed: z.number().nonnegative().optional(),\n heapTotal: z.number().nonnegative().optional(),\n })\n .passthrough()\n\nconst DashboardMetricsSchema = z\n .object({\n generatedAt: z.string().min(1).default(() => new Date().toISOString()),\n buildMs: z.number().nonnegative().nullable().default(null),\n scanMs: z.number().nonnegative().nullable().default(null),\n analyzeMs: z.number().nonnegative().nullable().default(null),\n compileMs: z.number().nonnegative().nullable().default(null),\n memoryMb: MemoryMetricsSchema.nullable().default(null),\n classCount: z.number().int().nonnegative().nullable().default(null),\n fileCount: z.number().int().nonnegative().nullable().default(null),\n cssBytes: z.number().int().nonnegative().nullable().default(null),\n packageCount: z.number().int().nonnegative().nullable().default(null),\n mode: z.enum([\"idle\", \"jit\", \"build\", \"watch\", \"error\"]).nullable().default(\"idle\"),\n error: z.string().optional(),\n lastEventType: z.string().optional(),\n eventsReceived: z.number().int().nonnegative().optional(),\n eventsProcessed: z.number().int().nonnegative().optional(),\n batchesProcessed: z.number().int().nonnegative().optional(),\n incrementalUpdates: z.number().int().nonnegative().optional(),\n fullRescans: z.number().int().nonnegative().optional(),\n skippedLargeFiles: z.number().int().nonnegative().optional(),\n queueMaxSize: z.number().int().nonnegative().optional(),\n lastBuildMs: z.number().nonnegative().optional(),\n avgBuildMs: z.number().nonnegative().optional(),\n })\n .passthrough()\n\nfunction createDefaultMetrics() {\n return DashboardMetricsSchema.parse({})\n}\n\nfunction formatIssues(error: import('zod').ZodError) {\n return error.issues.map((issue: import('zod').ZodIssue) => `${issue.path.join(\".\") || \"<root>\"}: ${issue.message}`).join(\"; \")\n}\n\nexport const currentMetrics = createDefaultMetrics()\nexport const history: ReturnType<typeof createDefaultMetrics>[] = []\nexport const events = new EventEmitter()\n\nexport function normalizeMetrics(data: Record<string, unknown>) {\n const parsed = DashboardMetricsSchema.safeParse({\n ...currentMetrics,\n ...data,\n })\n\n if (parsed.success) {\n return parsed.data\n }\n\n return {\n ...createDefaultMetrics(),\n generatedAt: new Date().toISOString(),\n mode: \"error\",\n error: formatIssues(parsed.error),\n }\n}\n\nexport function updateMetrics(data: Record<string, unknown>) {\n const next = normalizeMetrics(data)\n Object.assign(currentMetrics, next as object, { generatedAt: new Date().toISOString() })\n history.push({ ...currentMetrics } as typeof currentMetrics)\n if (history.length > MAX_HISTORY) history.shift()\n events.emit(\"update\", currentMetrics)\n return currentMetrics\n}\n\nexport function resetHistory() {\n history.length = 0\n events.emit(\"reset\")\n}\n\nexport function getMetricsSummary() {\n const issues = []\n\n if (currentMetrics.error) {\n issues.push({\n severity: \"error\",\n message: currentMetrics.error,\n })\n }\n\n if ((currentMetrics.buildMs ?? 0) > 2000) {\n issues.push({\n severity: \"warning\",\n message: `Build duration is elevated at ${currentMetrics.buildMs}ms.`,\n })\n }\n\n if ((currentMetrics.scanMs ?? 0) > 1000) {\n issues.push({\n severity: \"warning\",\n message: `Scan duration is elevated at ${currentMetrics.scanMs}ms.`,\n })\n }\n\n if ((currentMetrics.memoryMb?.heapUsed ?? 0) > 500) {\n issues.push({\n severity: \"warning\",\n message: `Heap usage is elevated at ${currentMetrics.memoryMb?.heapUsed}MB.`,\n })\n }\n\n const status =\n currentMetrics.mode === \"error\" || issues.some((issue) => issue.severity === \"error\")\n ? \"unhealthy\"\n : issues.some((issue) => issue.severity === \"warning\")\n ? \"degraded\"\n : \"healthy\"\n\n return {\n workspace: {\n totalPackages: currentMetrics.packageCount ?? 0,\n totalFiles: currentMetrics.fileCount ?? 0,\n totalClasses: currentMetrics.classCount ?? 0,\n lastScanDurationMs: currentMetrics.scanMs ?? 0,\n lastBuildDurationMs: currentMetrics.buildMs ?? 0,\n },\n cache: {\n hitRate:\n (currentMetrics.eventsReceived ?? 0) > 0\n ? Math.max(\n 0,\n Math.min(\n 1,\n (currentMetrics.eventsProcessed ?? 0) / Math.max(currentMetrics.eventsReceived ?? 1, 1)\n )\n )\n : 0,\n totalEntries: history.length,\n memoryUsageMb: currentMetrics.memoryMb?.heapUsed ?? 0,\n },\n pipeline: {\n scanDurationMs: currentMetrics.scanMs ?? 0,\n analyzeDurationMs: currentMetrics.analyzeMs ?? 0,\n compileDurationMs: currentMetrics.compileMs ?? 0,\n totalDurationMs:\n (currentMetrics.scanMs ?? 0) +\n (currentMetrics.analyzeMs ?? 0) +\n (currentMetrics.compileMs ?? 0),\n },\n health: {\n status,\n issues,\n },\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/umbrella/dashboard.ts","../packages/infrastructure/dashboard/src/state.ts"],"sourcesContent":["export * from \"@tailwind-styled/dashboard\"\n","import { EventEmitter } from \"node:events\"\n\nimport { z } from \"zod\"\n\nconst MAX_HISTORY = 100\n\nconst MemoryMetricsSchema = z\n .object({\n rss: z.number().nonnegative().optional(),\n heapUsed: z.number().nonnegative().optional(),\n heapTotal: z.number().nonnegative().optional(),\n })\n .passthrough()\n\nconst DashboardMetricsSchema = z\n .object({\n generatedAt: z.string().min(1).default(() => new Date().toISOString()),\n buildMs: z.number().nonnegative().nullable().default(null),\n scanMs: z.number().nonnegative().nullable().default(null),\n analyzeMs: z.number().nonnegative().nullable().default(null),\n compileMs: z.number().nonnegative().nullable().default(null),\n memoryMb: MemoryMetricsSchema.nullable().default(null),\n classCount: z.number().int().nonnegative().nullable().default(null),\n fileCount: z.number().int().nonnegative().nullable().default(null),\n cssBytes: z.number().int().nonnegative().nullable().default(null),\n packageCount: z.number().int().nonnegative().nullable().default(null),\n mode: z.enum([\"idle\", \"jit\", \"build\", \"watch\", \"error\"]).nullable().default(\"idle\"),\n error: z.string().optional(),\n lastEventType: z.string().optional(),\n eventsReceived: z.number().int().nonnegative().optional(),\n eventsProcessed: z.number().int().nonnegative().optional(),\n batchesProcessed: z.number().int().nonnegative().optional(),\n incrementalUpdates: z.number().int().nonnegative().optional(),\n fullRescans: z.number().int().nonnegative().optional(),\n skippedLargeFiles: z.number().int().nonnegative().optional(),\n queueMaxSize: z.number().int().nonnegative().optional(),\n lastBuildMs: z.number().nonnegative().optional(),\n avgBuildMs: z.number().nonnegative().optional(),\n })\n .passthrough()\n\nfunction createDefaultMetrics() {\n return DashboardMetricsSchema.parse({})\n}\n\nfunction formatIssues(error: import('zod').ZodError) {\n return error.issues.map((issue: import('zod').ZodIssue) => `${issue.path.join(\".\") || \"<root>\"}: ${issue.message}`).join(\"; \")\n}\n\nexport const currentMetrics = createDefaultMetrics()\nexport const history: ReturnType<typeof createDefaultMetrics>[] = []\nexport const events = new EventEmitter()\n\nexport function normalizeMetrics(data: Record<string, unknown>) {\n const parsed = DashboardMetricsSchema.safeParse({\n ...currentMetrics,\n ...data,\n })\n\n if (parsed.success) {\n return parsed.data\n }\n\n return {\n ...createDefaultMetrics(),\n generatedAt: new Date().toISOString(),\n mode: \"error\",\n error: formatIssues(parsed.error),\n }\n}\n\nexport function updateMetrics(data: Record<string, unknown>) {\n const next = normalizeMetrics(data)\n Object.assign(currentMetrics, next as object, { generatedAt: new Date().toISOString() })\n history.push({ ...currentMetrics } as typeof currentMetrics)\n if (history.length > MAX_HISTORY) history.shift()\n events.emit(\"update\", currentMetrics)\n return currentMetrics\n}\n\nexport function resetHistory() {\n history.length = 0\n events.emit(\"reset\")\n}\n\nexport function getMetricsSummary() {\n const issues = []\n\n if (currentMetrics.error) {\n issues.push({\n severity: \"error\",\n message: currentMetrics.error,\n })\n }\n\n if ((currentMetrics.buildMs ?? 0) > 2000) {\n issues.push({\n severity: \"warning\",\n message: `Build duration is elevated at ${currentMetrics.buildMs}ms.`,\n })\n }\n\n if ((currentMetrics.scanMs ?? 0) > 1000) {\n issues.push({\n severity: \"warning\",\n message: `Scan duration is elevated at ${currentMetrics.scanMs}ms.`,\n })\n }\n\n if ((currentMetrics.memoryMb?.heapUsed ?? 0) > 500) {\n issues.push({\n severity: \"warning\",\n message: `Heap usage is elevated at ${currentMetrics.memoryMb?.heapUsed}MB.`,\n })\n }\n\n const status =\n currentMetrics.mode === \"error\" || issues.some((issue) => issue.severity === \"error\")\n ? \"unhealthy\"\n : issues.some((issue) => issue.severity === \"warning\")\n ? \"degraded\"\n : \"healthy\"\n\n return {\n workspace: {\n totalPackages: currentMetrics.packageCount ?? 0,\n totalFiles: currentMetrics.fileCount ?? 0,\n totalClasses: currentMetrics.classCount ?? 0,\n lastScanDurationMs: currentMetrics.scanMs ?? 0,\n lastBuildDurationMs: currentMetrics.buildMs ?? 0,\n },\n cache: {\n hitRate:\n (currentMetrics.eventsReceived ?? 0) > 0\n ? Math.max(\n 0,\n Math.min(\n 1,\n (currentMetrics.eventsProcessed ?? 0) / Math.max(currentMetrics.eventsReceived ?? 1, 1)\n )\n )\n : 0,\n totalEntries: history.length,\n memoryUsageMb: currentMetrics.memoryMb?.heapUsed ?? 0,\n },\n pipeline: {\n scanDurationMs: currentMetrics.scanMs ?? 0,\n analyzeDurationMs: currentMetrics.analyzeMs ?? 0,\n compileDurationMs: currentMetrics.compileMs ?? 0,\n totalDurationMs:\n (currentMetrics.scanMs ?? 0) +\n (currentMetrics.analyzeMs ?? 0) +\n (currentMetrics.compileMs ?? 0),\n },\n health: {\n status,\n issues,\n },\n }\n}\n"],"mappings":"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","names":[]}
@@ -1,8 +1,8 @@
1
- import { EventEmitter } from 'events';
2
- import { z } from 'zod';
3
-
4
1
  /* tailwind-styled-v4 v5.0.4 | MIT | https://github.com/dictionar32/tailwind-styled-v4 */
5
2
 
3
+ // packages/infrastructure/dashboard/src/state.ts
4
+ import { EventEmitter } from "events";
5
+ import { z } from "zod";
6
6
  var MAX_HISTORY = 100;
7
7
  var MemoryMetricsSchema = z.object({
8
8
  rss: z.number().nonnegative().optional(),
@@ -127,7 +127,13 @@ function getMetricsSummary() {
127
127
  }
128
128
  };
129
129
  }
130
-
131
- export { currentMetrics, events, getMetricsSummary, history, normalizeMetrics, resetHistory, updateMetrics };
132
- //# sourceMappingURL=dashboard.mjs.map
130
+ export {
131
+ currentMetrics,
132
+ events,
133
+ getMetricsSummary,
134
+ history,
135
+ normalizeMetrics,
136
+ resetHistory,
137
+ updateMetrics
138
+ };
133
139
  //# sourceMappingURL=dashboard.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../packages/infrastructure/dashboard/src/state.ts"],"names":[],"mappings":"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","file":"dashboard.mjs","sourcesContent":["import { EventEmitter } from \"node:events\"\n\nimport { z } from \"zod\"\n\nconst MAX_HISTORY = 100\n\nconst MemoryMetricsSchema = z\n .object({\n rss: z.number().nonnegative().optional(),\n heapUsed: z.number().nonnegative().optional(),\n heapTotal: z.number().nonnegative().optional(),\n })\n .passthrough()\n\nconst DashboardMetricsSchema = z\n .object({\n generatedAt: z.string().min(1).default(() => new Date().toISOString()),\n buildMs: z.number().nonnegative().nullable().default(null),\n scanMs: z.number().nonnegative().nullable().default(null),\n analyzeMs: z.number().nonnegative().nullable().default(null),\n compileMs: z.number().nonnegative().nullable().default(null),\n memoryMb: MemoryMetricsSchema.nullable().default(null),\n classCount: z.number().int().nonnegative().nullable().default(null),\n fileCount: z.number().int().nonnegative().nullable().default(null),\n cssBytes: z.number().int().nonnegative().nullable().default(null),\n packageCount: z.number().int().nonnegative().nullable().default(null),\n mode: z.enum([\"idle\", \"jit\", \"build\", \"watch\", \"error\"]).nullable().default(\"idle\"),\n error: z.string().optional(),\n lastEventType: z.string().optional(),\n eventsReceived: z.number().int().nonnegative().optional(),\n eventsProcessed: z.number().int().nonnegative().optional(),\n batchesProcessed: z.number().int().nonnegative().optional(),\n incrementalUpdates: z.number().int().nonnegative().optional(),\n fullRescans: z.number().int().nonnegative().optional(),\n skippedLargeFiles: z.number().int().nonnegative().optional(),\n queueMaxSize: z.number().int().nonnegative().optional(),\n lastBuildMs: z.number().nonnegative().optional(),\n avgBuildMs: z.number().nonnegative().optional(),\n })\n .passthrough()\n\nfunction createDefaultMetrics() {\n return DashboardMetricsSchema.parse({})\n}\n\nfunction formatIssues(error: import('zod').ZodError) {\n return error.issues.map((issue: import('zod').ZodIssue) => `${issue.path.join(\".\") || \"<root>\"}: ${issue.message}`).join(\"; \")\n}\n\nexport const currentMetrics = createDefaultMetrics()\nexport const history: ReturnType<typeof createDefaultMetrics>[] = []\nexport const events = new EventEmitter()\n\nexport function normalizeMetrics(data: Record<string, unknown>) {\n const parsed = DashboardMetricsSchema.safeParse({\n ...currentMetrics,\n ...data,\n })\n\n if (parsed.success) {\n return parsed.data\n }\n\n return {\n ...createDefaultMetrics(),\n generatedAt: new Date().toISOString(),\n mode: \"error\",\n error: formatIssues(parsed.error),\n }\n}\n\nexport function updateMetrics(data: Record<string, unknown>) {\n const next = normalizeMetrics(data)\n Object.assign(currentMetrics, next as object, { generatedAt: new Date().toISOString() })\n history.push({ ...currentMetrics } as typeof currentMetrics)\n if (history.length > MAX_HISTORY) history.shift()\n events.emit(\"update\", currentMetrics)\n return currentMetrics\n}\n\nexport function resetHistory() {\n history.length = 0\n events.emit(\"reset\")\n}\n\nexport function getMetricsSummary() {\n const issues = []\n\n if (currentMetrics.error) {\n issues.push({\n severity: \"error\",\n message: currentMetrics.error,\n })\n }\n\n if ((currentMetrics.buildMs ?? 0) > 2000) {\n issues.push({\n severity: \"warning\",\n message: `Build duration is elevated at ${currentMetrics.buildMs}ms.`,\n })\n }\n\n if ((currentMetrics.scanMs ?? 0) > 1000) {\n issues.push({\n severity: \"warning\",\n message: `Scan duration is elevated at ${currentMetrics.scanMs}ms.`,\n })\n }\n\n if ((currentMetrics.memoryMb?.heapUsed ?? 0) > 500) {\n issues.push({\n severity: \"warning\",\n message: `Heap usage is elevated at ${currentMetrics.memoryMb?.heapUsed}MB.`,\n })\n }\n\n const status =\n currentMetrics.mode === \"error\" || issues.some((issue) => issue.severity === \"error\")\n ? \"unhealthy\"\n : issues.some((issue) => issue.severity === \"warning\")\n ? \"degraded\"\n : \"healthy\"\n\n return {\n workspace: {\n totalPackages: currentMetrics.packageCount ?? 0,\n totalFiles: currentMetrics.fileCount ?? 0,\n totalClasses: currentMetrics.classCount ?? 0,\n lastScanDurationMs: currentMetrics.scanMs ?? 0,\n lastBuildDurationMs: currentMetrics.buildMs ?? 0,\n },\n cache: {\n hitRate:\n (currentMetrics.eventsReceived ?? 0) > 0\n ? Math.max(\n 0,\n Math.min(\n 1,\n (currentMetrics.eventsProcessed ?? 0) / Math.max(currentMetrics.eventsReceived ?? 1, 1)\n )\n )\n : 0,\n totalEntries: history.length,\n memoryUsageMb: currentMetrics.memoryMb?.heapUsed ?? 0,\n },\n pipeline: {\n scanDurationMs: currentMetrics.scanMs ?? 0,\n analyzeDurationMs: currentMetrics.analyzeMs ?? 0,\n compileDurationMs: currentMetrics.compileMs ?? 0,\n totalDurationMs:\n (currentMetrics.scanMs ?? 0) +\n (currentMetrics.analyzeMs ?? 0) +\n (currentMetrics.compileMs ?? 0),\n },\n health: {\n status,\n issues,\n },\n }\n}\n"]}
1
+ {"version":3,"sources":["../packages/infrastructure/dashboard/src/state.ts"],"sourcesContent":["import { EventEmitter } from \"node:events\"\n\nimport { z } from \"zod\"\n\nconst MAX_HISTORY = 100\n\nconst MemoryMetricsSchema = z\n .object({\n rss: z.number().nonnegative().optional(),\n heapUsed: z.number().nonnegative().optional(),\n heapTotal: z.number().nonnegative().optional(),\n })\n .passthrough()\n\nconst DashboardMetricsSchema = z\n .object({\n generatedAt: z.string().min(1).default(() => new Date().toISOString()),\n buildMs: z.number().nonnegative().nullable().default(null),\n scanMs: z.number().nonnegative().nullable().default(null),\n analyzeMs: z.number().nonnegative().nullable().default(null),\n compileMs: z.number().nonnegative().nullable().default(null),\n memoryMb: MemoryMetricsSchema.nullable().default(null),\n classCount: z.number().int().nonnegative().nullable().default(null),\n fileCount: z.number().int().nonnegative().nullable().default(null),\n cssBytes: z.number().int().nonnegative().nullable().default(null),\n packageCount: z.number().int().nonnegative().nullable().default(null),\n mode: z.enum([\"idle\", \"jit\", \"build\", \"watch\", \"error\"]).nullable().default(\"idle\"),\n error: z.string().optional(),\n lastEventType: z.string().optional(),\n eventsReceived: z.number().int().nonnegative().optional(),\n eventsProcessed: z.number().int().nonnegative().optional(),\n batchesProcessed: z.number().int().nonnegative().optional(),\n incrementalUpdates: z.number().int().nonnegative().optional(),\n fullRescans: z.number().int().nonnegative().optional(),\n skippedLargeFiles: z.number().int().nonnegative().optional(),\n queueMaxSize: z.number().int().nonnegative().optional(),\n lastBuildMs: z.number().nonnegative().optional(),\n avgBuildMs: z.number().nonnegative().optional(),\n })\n .passthrough()\n\nfunction createDefaultMetrics() {\n return DashboardMetricsSchema.parse({})\n}\n\nfunction formatIssues(error: import('zod').ZodError) {\n return error.issues.map((issue: import('zod').ZodIssue) => `${issue.path.join(\".\") || \"<root>\"}: ${issue.message}`).join(\"; \")\n}\n\nexport const currentMetrics = createDefaultMetrics()\nexport const history: ReturnType<typeof createDefaultMetrics>[] = []\nexport const events = new EventEmitter()\n\nexport function normalizeMetrics(data: Record<string, unknown>) {\n const parsed = DashboardMetricsSchema.safeParse({\n ...currentMetrics,\n ...data,\n })\n\n if (parsed.success) {\n return parsed.data\n }\n\n return {\n ...createDefaultMetrics(),\n generatedAt: new Date().toISOString(),\n mode: \"error\",\n error: formatIssues(parsed.error),\n }\n}\n\nexport function updateMetrics(data: Record<string, unknown>) {\n const next = normalizeMetrics(data)\n Object.assign(currentMetrics, next as object, { generatedAt: new Date().toISOString() })\n history.push({ ...currentMetrics } as typeof currentMetrics)\n if (history.length > MAX_HISTORY) history.shift()\n events.emit(\"update\", currentMetrics)\n return currentMetrics\n}\n\nexport function resetHistory() {\n history.length = 0\n events.emit(\"reset\")\n}\n\nexport function getMetricsSummary() {\n const issues = []\n\n if (currentMetrics.error) {\n issues.push({\n severity: \"error\",\n message: currentMetrics.error,\n })\n }\n\n if ((currentMetrics.buildMs ?? 0) > 2000) {\n issues.push({\n severity: \"warning\",\n message: `Build duration is elevated at ${currentMetrics.buildMs}ms.`,\n })\n }\n\n if ((currentMetrics.scanMs ?? 0) > 1000) {\n issues.push({\n severity: \"warning\",\n message: `Scan duration is elevated at ${currentMetrics.scanMs}ms.`,\n })\n }\n\n if ((currentMetrics.memoryMb?.heapUsed ?? 0) > 500) {\n issues.push({\n severity: \"warning\",\n message: `Heap usage is elevated at ${currentMetrics.memoryMb?.heapUsed}MB.`,\n })\n }\n\n const status =\n currentMetrics.mode === \"error\" || issues.some((issue) => issue.severity === \"error\")\n ? \"unhealthy\"\n : issues.some((issue) => issue.severity === \"warning\")\n ? \"degraded\"\n : \"healthy\"\n\n return {\n workspace: {\n totalPackages: currentMetrics.packageCount ?? 0,\n totalFiles: currentMetrics.fileCount ?? 0,\n totalClasses: currentMetrics.classCount ?? 0,\n lastScanDurationMs: currentMetrics.scanMs ?? 0,\n lastBuildDurationMs: currentMetrics.buildMs ?? 0,\n },\n cache: {\n hitRate:\n (currentMetrics.eventsReceived ?? 0) > 0\n ? Math.max(\n 0,\n Math.min(\n 1,\n (currentMetrics.eventsProcessed ?? 0) / Math.max(currentMetrics.eventsReceived ?? 1, 1)\n )\n )\n : 0,\n totalEntries: history.length,\n memoryUsageMb: currentMetrics.memoryMb?.heapUsed ?? 0,\n },\n pipeline: {\n scanDurationMs: currentMetrics.scanMs ?? 0,\n analyzeDurationMs: currentMetrics.analyzeMs ?? 0,\n compileDurationMs: currentMetrics.compileMs ?? 0,\n totalDurationMs:\n (currentMetrics.scanMs ?? 0) +\n (currentMetrics.analyzeMs ?? 0) +\n (currentMetrics.compileMs ?? 0),\n },\n health: {\n status,\n issues,\n },\n }\n}\n"],"mappings":"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","names":[]}
@@ -1,5 +1,91 @@
1
1
  import React from 'react';
2
- export { T as TraceSnapshot, a as TraceSummary, f as formatDuration, b as formatMemory, g as getBuildTimeColor, c as getHealthColor, d as getMemoryColor, e as getModeColor, h as getPipelinePercentages } from './trace-Dz4vmZdy.mjs';
2
+
3
+ /**
4
+ * Shared trace utilities for CLI, devtools, and dashboard
5
+ *
6
+ * Provides reusable trace snapshot handling, formatting, and analysis
7
+ * across the tailwind-styled-v4 ecosystem without introducing coupling.
8
+ */
9
+ interface TraceSnapshot {
10
+ generatedAt: string;
11
+ buildMs: number | null;
12
+ scanMs: number | null;
13
+ analyzeMs: number | null;
14
+ compileMs: number | null;
15
+ memoryMb: {
16
+ rss: number;
17
+ heapUsed: number;
18
+ heapTotal: number;
19
+ } | null;
20
+ classCount: number | null;
21
+ fileCount: number | null;
22
+ cssBytes: number | null;
23
+ mode: string | null;
24
+ eventsReceived?: number;
25
+ eventsProcessed?: number;
26
+ batchesProcessed?: number;
27
+ incrementalUpdates?: number;
28
+ fullRescans?: number;
29
+ }
30
+ interface TraceSummary {
31
+ workspace: {
32
+ totalPackages: number;
33
+ totalFiles: number;
34
+ totalClasses: number;
35
+ lastScanDurationMs: number;
36
+ lastBuildDurationMs: number;
37
+ };
38
+ cache: {
39
+ hitRate: number;
40
+ totalEntries: number;
41
+ memoryUsageMb: number;
42
+ };
43
+ pipeline: {
44
+ scanDurationMs: number;
45
+ analyzeDurationMs: number;
46
+ compileDurationMs: number;
47
+ totalDurationMs: number;
48
+ };
49
+ health: {
50
+ status: "healthy" | "degraded" | "unhealthy";
51
+ issues: Array<{
52
+ severity: string;
53
+ message: string;
54
+ }>;
55
+ };
56
+ }
57
+ /**
58
+ * Get health status color for UI rendering
59
+ */
60
+ declare function getHealthColor(status?: string): string;
61
+ /**
62
+ * Get mode color for UI rendering
63
+ */
64
+ declare function getModeColor(mode?: string | null): string;
65
+ /**
66
+ * Format memory in human-readable format
67
+ */
68
+ declare function formatMemory(bytes: number): string;
69
+ /**
70
+ * Format duration in human-readable format
71
+ */
72
+ declare function formatDuration(ms: number | null): string;
73
+ /**
74
+ * Get color for build time indicator
75
+ */
76
+ declare function getBuildTimeColor(ms: number | null): string;
77
+ /**
78
+ * Get color for memory usage indicator
79
+ */
80
+ declare function getMemoryColor(mb: number): string;
81
+ /**
82
+ * Calculate pipeline time distribution
83
+ */
84
+ declare function getPipelinePercentages(metrics: TraceSnapshot): {
85
+ scanPct: number;
86
+ analyzePct: number;
87
+ compilePct: number;
88
+ };
3
89
 
4
90
  /**
5
91
  * Class Inspector — reusable surface inspection untuk DevTools.
@@ -67,4 +153,4 @@ declare function formatClassInspectionJson(result: ClassInspectResult): string;
67
153
  declare function TwDevTools(): React.ReactElement | null;
68
154
  declare function DevToolsProvider(): React.ReactElement | null;
69
155
 
70
- export { type ClassInspectResult, DevToolsProvider, type InspectorFetchOptions, TwDevTools, fetchClassInspection, formatClassInspectionCli, formatClassInspectionJson };
156
+ export { type ClassInspectResult, DevToolsProvider, type InspectorFetchOptions, type TraceSnapshot, type TraceSummary, TwDevTools, fetchClassInspection, formatClassInspectionCli, formatClassInspectionJson, formatDuration, formatMemory, getBuildTimeColor, getHealthColor, getMemoryColor, getModeColor, getPipelinePercentages };
@@ -1,5 +1,91 @@
1
1
  import React from 'react';
2
- export { T as TraceSnapshot, a as TraceSummary, f as formatDuration, b as formatMemory, g as getBuildTimeColor, c as getHealthColor, d as getMemoryColor, e as getModeColor, h as getPipelinePercentages } from './trace-Dz4vmZdy.js';
2
+
3
+ /**
4
+ * Shared trace utilities for CLI, devtools, and dashboard
5
+ *
6
+ * Provides reusable trace snapshot handling, formatting, and analysis
7
+ * across the tailwind-styled-v4 ecosystem without introducing coupling.
8
+ */
9
+ interface TraceSnapshot {
10
+ generatedAt: string;
11
+ buildMs: number | null;
12
+ scanMs: number | null;
13
+ analyzeMs: number | null;
14
+ compileMs: number | null;
15
+ memoryMb: {
16
+ rss: number;
17
+ heapUsed: number;
18
+ heapTotal: number;
19
+ } | null;
20
+ classCount: number | null;
21
+ fileCount: number | null;
22
+ cssBytes: number | null;
23
+ mode: string | null;
24
+ eventsReceived?: number;
25
+ eventsProcessed?: number;
26
+ batchesProcessed?: number;
27
+ incrementalUpdates?: number;
28
+ fullRescans?: number;
29
+ }
30
+ interface TraceSummary {
31
+ workspace: {
32
+ totalPackages: number;
33
+ totalFiles: number;
34
+ totalClasses: number;
35
+ lastScanDurationMs: number;
36
+ lastBuildDurationMs: number;
37
+ };
38
+ cache: {
39
+ hitRate: number;
40
+ totalEntries: number;
41
+ memoryUsageMb: number;
42
+ };
43
+ pipeline: {
44
+ scanDurationMs: number;
45
+ analyzeDurationMs: number;
46
+ compileDurationMs: number;
47
+ totalDurationMs: number;
48
+ };
49
+ health: {
50
+ status: "healthy" | "degraded" | "unhealthy";
51
+ issues: Array<{
52
+ severity: string;
53
+ message: string;
54
+ }>;
55
+ };
56
+ }
57
+ /**
58
+ * Get health status color for UI rendering
59
+ */
60
+ declare function getHealthColor(status?: string): string;
61
+ /**
62
+ * Get mode color for UI rendering
63
+ */
64
+ declare function getModeColor(mode?: string | null): string;
65
+ /**
66
+ * Format memory in human-readable format
67
+ */
68
+ declare function formatMemory(bytes: number): string;
69
+ /**
70
+ * Format duration in human-readable format
71
+ */
72
+ declare function formatDuration(ms: number | null): string;
73
+ /**
74
+ * Get color for build time indicator
75
+ */
76
+ declare function getBuildTimeColor(ms: number | null): string;
77
+ /**
78
+ * Get color for memory usage indicator
79
+ */
80
+ declare function getMemoryColor(mb: number): string;
81
+ /**
82
+ * Calculate pipeline time distribution
83
+ */
84
+ declare function getPipelinePercentages(metrics: TraceSnapshot): {
85
+ scanPct: number;
86
+ analyzePct: number;
87
+ compilePct: number;
88
+ };
3
89
 
4
90
  /**
5
91
  * Class Inspector — reusable surface inspection untuk DevTools.
@@ -67,4 +153,4 @@ declare function formatClassInspectionJson(result: ClassInspectResult): string;
67
153
  declare function TwDevTools(): React.ReactElement | null;
68
154
  declare function DevToolsProvider(): React.ReactElement | null;
69
155
 
70
- export { type ClassInspectResult, DevToolsProvider, type InspectorFetchOptions, TwDevTools, fetchClassInspection, formatClassInspectionCli, formatClassInspectionJson };
156
+ export { type ClassInspectResult, DevToolsProvider, type InspectorFetchOptions, type TraceSnapshot, type TraceSummary, TwDevTools, fetchClassInspection, formatClassInspectionCli, formatClassInspectionJson, formatDuration, formatMemory, getBuildTimeColor, getHealthColor, getMemoryColor, getModeColor, getPipelinePercentages };