@parlor/agent-ui 0.0.0-stage → 0.1.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 (107) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +10 -2
  3. package/dist/client/agent-ui-client.d.ts +60 -0
  4. package/dist/client/agent-ui-client.d.ts.map +1 -0
  5. package/dist/client/agent-ui-client.js +407 -0
  6. package/dist/client/agent-ui-client.js.map +1 -0
  7. package/dist/client/confirmations.d.ts +34 -0
  8. package/dist/client/confirmations.d.ts.map +1 -0
  9. package/dist/client/confirmations.js +95 -0
  10. package/dist/client/confirmations.js.map +1 -0
  11. package/dist/client/environment.d.ts +37 -0
  12. package/dist/client/environment.d.ts.map +1 -0
  13. package/dist/client/environment.js +79 -0
  14. package/dist/client/environment.js.map +1 -0
  15. package/dist/client/highlight.d.ts +12 -0
  16. package/dist/client/highlight.d.ts.map +1 -0
  17. package/dist/client/highlight.js +98 -0
  18. package/dist/client/highlight.js.map +1 -0
  19. package/dist/client/index.d.ts +7 -0
  20. package/dist/client/index.d.ts.map +1 -0
  21. package/dist/client/index.js +7 -0
  22. package/dist/client/index.js.map +1 -0
  23. package/dist/client/json-equal.d.ts +2 -0
  24. package/dist/client/json-equal.d.ts.map +1 -0
  25. package/dist/client/json-equal.js +20 -0
  26. package/dist/client/json-equal.js.map +1 -0
  27. package/dist/client/registry.d.ts +54 -0
  28. package/dist/client/registry.d.ts.map +1 -0
  29. package/dist/client/registry.js +280 -0
  30. package/dist/client/registry.js.map +1 -0
  31. package/dist/client/screen.d.ts +20 -0
  32. package/dist/client/screen.d.ts.map +1 -0
  33. package/dist/client/screen.js +196 -0
  34. package/dist/client/screen.js.map +1 -0
  35. package/dist/client/write.d.ts +13 -0
  36. package/dist/client/write.d.ts.map +1 -0
  37. package/dist/client/write.js +101 -0
  38. package/dist/client/write.js.map +1 -0
  39. package/dist/index.d.ts +4 -0
  40. package/dist/index.d.ts.map +1 -0
  41. package/dist/index.js +4 -0
  42. package/dist/index.js.map +1 -0
  43. package/dist/manifest.d.ts +44 -0
  44. package/dist/manifest.d.ts.map +1 -0
  45. package/dist/manifest.js +23 -0
  46. package/dist/manifest.js.map +1 -0
  47. package/dist/protocol.d.ts +206 -0
  48. package/dist/protocol.d.ts.map +1 -0
  49. package/dist/protocol.js +152 -0
  50. package/dist/protocol.js.map +1 -0
  51. package/dist/server/agent-ui.d.ts +36 -0
  52. package/dist/server/agent-ui.d.ts.map +1 -0
  53. package/dist/server/agent-ui.js +89 -0
  54. package/dist/server/agent-ui.js.map +1 -0
  55. package/dist/server/audience.d.ts +9 -0
  56. package/dist/server/audience.d.ts.map +1 -0
  57. package/dist/server/audience.js +15 -0
  58. package/dist/server/audience.js.map +1 -0
  59. package/dist/server/broker.d.ts +29 -0
  60. package/dist/server/broker.d.ts.map +1 -0
  61. package/dist/server/broker.js +152 -0
  62. package/dist/server/broker.js.map +1 -0
  63. package/dist/server/confirmations.d.ts +40 -0
  64. package/dist/server/confirmations.d.ts.map +1 -0
  65. package/dist/server/confirmations.js +230 -0
  66. package/dist/server/confirmations.js.map +1 -0
  67. package/dist/server/directory.d.ts +41 -0
  68. package/dist/server/directory.d.ts.map +1 -0
  69. package/dist/server/directory.js +193 -0
  70. package/dist/server/directory.js.map +1 -0
  71. package/dist/server/index.d.ts +10 -0
  72. package/dist/server/index.d.ts.map +1 -0
  73. package/dist/server/index.js +10 -0
  74. package/dist/server/index.js.map +1 -0
  75. package/dist/server/manifest-source.d.ts +10 -0
  76. package/dist/server/manifest-source.d.ts.map +1 -0
  77. package/dist/server/manifest-source.js +36 -0
  78. package/dist/server/manifest-source.js.map +1 -0
  79. package/dist/server/routes.d.ts +11 -0
  80. package/dist/server/routes.d.ts.map +1 -0
  81. package/dist/server/routes.js +38 -0
  82. package/dist/server/routes.js.map +1 -0
  83. package/dist/server/schemas.d.ts +69 -0
  84. package/dist/server/schemas.d.ts.map +1 -0
  85. package/dist/server/schemas.js +78 -0
  86. package/dist/server/schemas.js.map +1 -0
  87. package/dist/server/tools.d.ts +49 -0
  88. package/dist/server/tools.d.ts.map +1 -0
  89. package/dist/server/tools.js +312 -0
  90. package/dist/server/tools.js.map +1 -0
  91. package/dist/view.d.ts +54 -0
  92. package/dist/view.d.ts.map +1 -0
  93. package/dist/view.js +15 -0
  94. package/dist/view.js.map +1 -0
  95. package/dist/vite/index.d.ts +3 -0
  96. package/dist/vite/index.d.ts.map +1 -0
  97. package/dist/vite/index.js +3 -0
  98. package/dist/vite/index.js.map +1 -0
  99. package/dist/vite/manifest.d.ts +5 -0
  100. package/dist/vite/manifest.d.ts.map +1 -0
  101. package/dist/vite/manifest.js +107 -0
  102. package/dist/vite/manifest.js.map +1 -0
  103. package/dist/vite/plugin.d.ts +10 -0
  104. package/dist/vite/plugin.d.ts.map +1 -0
  105. package/dist/vite/plugin.js +143 -0
  106. package/dist/vite/plugin.js.map +1 -0
  107. package/package.json +65 -3
@@ -0,0 +1,143 @@
1
+ import { access, mkdir, readFile, rename, rm, writeFile } from "node:fs/promises";
2
+ import { dirname, isAbsolute, join, relative, resolve, sep } from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+ import { isRunnableDevEnvironment, runnerImport, } from "vite";
5
+ import { UI_MANIFEST_FILE } from "../manifest.js";
6
+ import { buildUiManifest } from "./manifest.js";
7
+ export const DEFAULT_ROUTE_TREE = "src/routeTree.gen.ts";
8
+ const GENERATED_DIR = ".parlor";
9
+ const REGENERATE_DEBOUNCE_MS = 50;
10
+ export function manifestFromModule(app, module) {
11
+ return buildUiManifest(app, module?.routeTree);
12
+ }
13
+ const STYLE_IMPORT = /\.(?:css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:\?|$)/;
14
+ const EMPTY_STYLE = "\0parlor-empty-style";
15
+ /**
16
+ * The manifest needs route modules, never their stylesheets, and Vite's CSS plugin cannot
17
+ * run outside a build (8.3.5 throws), so every style import loads as an empty module.
18
+ */
19
+ function withoutStyles() {
20
+ return {
21
+ name: "parlor:manifest-without-styles",
22
+ enforce: "pre",
23
+ resolveId: (source) => (STYLE_IMPORT.test(source) ? EMPTY_STYLE : undefined),
24
+ load: (id) => (id === EMPTY_STYLE ? "export default {};" : undefined),
25
+ };
26
+ }
27
+ const STACK_FILE = /(?:\(|at )((?:file:\/\/)?\/[^\s()]+?):\d+:\d+\)?$/;
28
+ function throwingFile(error) {
29
+ const stack = error instanceof Error ? (error.stack ?? "") : "";
30
+ for (const line of stack.split("\n")) {
31
+ const file = STACK_FILE.exec(line.trim())?.[1];
32
+ if (file)
33
+ return file.startsWith("file:") ? fileURLToPath(file) : file;
34
+ }
35
+ return undefined;
36
+ }
37
+ function routeTreeImportFailure(root, routeTree, error) {
38
+ const file = throwingFile(error);
39
+ const module = relative(root, file && isAbsolute(file) ? file : routeTree);
40
+ const thrown = error instanceof Error ? `${error.name}: ${error.message}` : String(error);
41
+ return `${module} threw "${thrown}" while the route tree was loaded in Node`;
42
+ }
43
+ export function agentManifest(options) {
44
+ let root = process.cwd();
45
+ let logger;
46
+ let lastWritten;
47
+ const routeTreePath = () => resolve(root, options.routeTree ?? DEFAULT_ROUTE_TREE);
48
+ const outFile = () => join(root, GENERATED_DIR, UI_MANIFEST_FILE);
49
+ const write = async (build) => {
50
+ for (const warning of build.warnings)
51
+ logger?.warn(`[parlor] ${warning}`);
52
+ const json = `${JSON.stringify(build.manifest, null, 2)}\n`;
53
+ lastWritten ??= await readFile(outFile(), "utf8").catch(() => undefined);
54
+ if (json === lastWritten)
55
+ return;
56
+ await mkdir(dirname(outFile()), { recursive: true });
57
+ const partial = `${outFile()}.${process.pid}.tmp`;
58
+ await writeFile(partial, json);
59
+ await rename(partial, outFile());
60
+ lastWritten = json;
61
+ };
62
+ const exists = (path) => access(path).then(() => true, () => false);
63
+ const loadRouteTree = async (load) => {
64
+ const entry = routeTreePath();
65
+ try {
66
+ return { ok: true, module: (await exists(entry)) ? await load(entry) : undefined };
67
+ }
68
+ catch (error) {
69
+ return { ok: false, failure: routeTreeImportFailure(root, entry, error) };
70
+ }
71
+ };
72
+ const watchInDev = (server) => {
73
+ const environment = server.environments.ssr;
74
+ if (!environment || !isRunnableDevEnvironment(environment))
75
+ return;
76
+ const runner = environment.runner;
77
+ const generatedDir = join(root, GENERATED_DIR) + sep;
78
+ let timer;
79
+ let running = Promise.resolve();
80
+ const generate = () => {
81
+ running = running.then(async () => {
82
+ try {
83
+ runner.clearCache();
84
+ const loaded = await loadRouteTree((entry) => runner.import(entry));
85
+ if (!loaded.ok) {
86
+ logger?.error(`[parlor] Could not generate the agent UI manifest: ${loaded.failure}.`);
87
+ return;
88
+ }
89
+ await write(manifestFromModule(options.app, loaded.module));
90
+ }
91
+ catch (error) {
92
+ logger?.error(`[parlor] Could not generate the agent UI manifest: ${error.message}`);
93
+ }
94
+ });
95
+ };
96
+ const schedule = () => {
97
+ clearTimeout(timer);
98
+ timer = setTimeout(generate, REGENERATE_DEBOUNCE_MS);
99
+ };
100
+ const onFile = (file) => {
101
+ if (file.startsWith(generatedDir))
102
+ return;
103
+ if (file === routeTreePath() || runner.evaluatedModules.getModulesByFile(file)) {
104
+ schedule();
105
+ }
106
+ };
107
+ server.watcher.on("change", onFile);
108
+ server.watcher.on("add", onFile);
109
+ server.watcher.on("unlink", onFile);
110
+ if (server.httpServer)
111
+ server.httpServer.once("listening", generate);
112
+ else
113
+ generate();
114
+ };
115
+ return {
116
+ name: "parlor:agent-manifest",
117
+ configResolved(config) {
118
+ root = config.root;
119
+ logger = config.logger;
120
+ },
121
+ configureServer(server) {
122
+ watchInDev(server);
123
+ },
124
+ async buildStart() {
125
+ if (this.environment.mode !== "build" || this.environment.name !== "client")
126
+ return;
127
+ const loaded = await loadRouteTree(async (entry) => (await runnerImport(entry, {
128
+ root,
129
+ configFile: false,
130
+ logLevel: "error",
131
+ plugins: [withoutStyles()],
132
+ })).module);
133
+ if (!loaded.ok) {
134
+ logger?.warn(`[parlor] Building without the agent UI manifest: ${loaded.failure}. Keep browser-only code out of the top level of route modules.`);
135
+ await rm(outFile(), { force: true });
136
+ lastWritten = undefined;
137
+ return;
138
+ }
139
+ await write(manifestFromModule(options.app, loaded.module));
140
+ },
141
+ };
142
+ }
143
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/vite/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EACL,wBAAwB,EAGxB,YAAY,GAEb,MAAM,MAAM,CAAC;AAEd,OAAO,EAAsC,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AACzD,MAAM,aAAa,GAAG,SAAS,CAAC;AAChC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAOlC,MAAM,UAAU,kBAAkB,CAAC,GAAc,EAAE,MAAe;IAChE,OAAO,eAAe,CAAC,GAAG,EAAG,MAA8C,EAAE,SAAS,CAAC,CAAC;AAC1F,CAAC;AAED,MAAM,YAAY,GAAG,+DAA+D,CAAC;AACrF,MAAM,WAAW,GAAG,sBAAsB,CAAC;AAE3C;;;GAGG;AACH,SAAS,aAAa;IACpB,OAAO;QACL,IAAI,EAAE,gCAAgC;QACtC,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;KACtE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,mDAAmD,CAAC;AAEvE,SAAS,YAAY,CAAC,KAAc;IAClC,MAAM,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,SAAiB,EAAE,KAAc;IAC7E,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3E,MAAM,MAAM,GACV,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7E,OAAO,GAAG,MAAM,WAAW,MAAM,2CAA2C,CAAC;AAC/E,CAAC;AAMD,MAAM,UAAU,aAAa,CAAC,OAA6B;IACzD,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACzB,IAAI,MAA0B,CAAC;IAC/B,IAAI,WAA+B,CAAC;IAEpC,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC;IACnF,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;IAElE,MAAM,KAAK,GAAG,KAAK,EAAE,KAAoB,EAAE,EAAE;QAC3C,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ;YAAE,MAAM,EAAE,IAAI,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;QAC1E,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;QAC5D,WAAW,KAAK,MAAM,QAAQ,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACzE,IAAI,IAAI,KAAK,WAAW;YAAE,OAAO;QACjC,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,GAAG,OAAO,EAAE,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;QAClD,MAAM,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/B,MAAM,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACjC,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CACf,GAAG,EAAE,CAAC,IAAI,EACV,GAAG,EAAE,CAAC,KAAK,CACZ,CAAC;IAEJ,MAAM,aAAa,GAAG,KAAK,EACzB,IAAyC,EACjB,EAAE;QAC1B,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QACrF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,MAAqB,EAAE,EAAE;QAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC;QAC5C,IAAI,CAAC,WAAW,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC;YAAE,OAAO;QACnE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,GAAG,CAAC;QACrD,IAAI,KAAgD,CAAC;QACrD,IAAI,OAAO,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;QAE/C,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBAChC,IAAI,CAAC;oBACH,MAAM,CAAC,UAAU,EAAE,CAAC;oBACpB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACpE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;wBACf,MAAM,EAAE,KAAK,CACX,sDAAsD,MAAM,CAAC,OAAO,GAAG,CACxE,CAAC;wBACF,OAAO;oBACT,CAAC;oBACD,MAAM,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC9D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,EAAE,KAAK,CACX,sDAAuD,KAAe,CAAC,OAAO,EAAE,CACjF,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QACF,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;QACvD,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;YAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;gBAAE,OAAO;YAC1C,IAAI,IAAI,KAAK,aAAa,EAAE,IAAI,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/E,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACpC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACjC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAEpC,IAAI,MAAM,CAAC,UAAU;YAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;;YAChE,QAAQ,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,cAAc,CAAC,MAAM;YACnB,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACnB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACzB,CAAC;QACD,eAAe,CAAC,MAAM;YACpB,UAAU,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QACD,KAAK,CAAC,UAAU;YACd,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO;YACpF,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC,KAAK,EAAE,KAAK,EAAE,EAAE,CACd,CACE,MAAM,YAAY,CAAC,KAAK,EAAE;gBACxB,IAAI;gBACJ,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,CAAC,aAAa,EAAE,CAAC;aAC3B,CAAC,CACH,CAAC,MAAM,CACX,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,MAAM,EAAE,IAAI,CACV,oDAAoD,MAAM,CAAC,OAAO,iEAAiE,CACpI,CAAC;gBACF,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACrC,WAAW,GAAG,SAAS,CAAC;gBACxB,OAAO;YACT,CAAC;YACD,MAAM,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,CAAC;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,68 @@
1
1
  {
2
2
  "name": "@parlor/agent-ui",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "0.1.0",
4
+ "homepage": "https://cychien.github.io/parlor",
5
+ "bugs": "https://github.com/cychien/parlor/issues",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/cychien/parlor.git",
10
+ "directory": "packages/agent-ui"
11
+ },
12
+ "files": [
13
+ "dist"
14
+ ],
15
+ "type": "module",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./dist/index.d.ts",
19
+ "import": "./dist/index.js"
20
+ },
21
+ "./client": {
22
+ "types": "./dist/client/index.d.ts",
23
+ "import": "./dist/client/index.js"
24
+ },
25
+ "./server": {
26
+ "types": "./dist/server/index.d.ts",
27
+ "import": "./dist/server/index.js"
28
+ },
29
+ "./vite": {
30
+ "types": "./dist/vite/index.d.ts",
31
+ "import": "./dist/vite/index.js"
32
+ }
33
+ },
34
+ "dependencies": {
35
+ "@standard-schema/spec": "^1.1.0",
36
+ "h3": "^2.0.1",
37
+ "zod": "^4.6.5",
38
+ "@parlor/core": "0.1.0",
39
+ "@parlor/sync": "0.1.0"
40
+ },
41
+ "devDependencies": {
42
+ "@tanstack/react-router": "^1.170.45",
43
+ "@tanstack/router-core": "^1.171.38",
44
+ "@types/node": "^24.14.0",
45
+ "happy-dom": "^20.14.5",
46
+ "react": "^19.3.0",
47
+ "typescript": "^7.0.2",
48
+ "vite": "^8.3.5",
49
+ "vitest": "^5.0.3"
50
+ },
51
+ "peerDependencies": {
52
+ "@tanstack/router-core": ">=1.171",
53
+ "vite": ">=8"
54
+ },
55
+ "peerDependenciesMeta": {
56
+ "@tanstack/router-core": {
57
+ "optional": true
58
+ },
59
+ "vite": {
60
+ "optional": true
61
+ }
62
+ },
63
+ "scripts": {
64
+ "build": "tsc -p tsconfig.json",
65
+ "typecheck": "tsc -p tsconfig.json --noEmit",
66
+ "test": "vitest run"
67
+ }
6
68
  }