@noodleseed/one 0.20.1 → 0.22.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 (116) hide show
  1. package/dist/agents.d.ts +12 -0
  2. package/dist/agents.d.ts.map +1 -1
  3. package/dist/agents.js +36 -3
  4. package/dist/agents.js.map +1 -1
  5. package/dist/commands/analytics-ops.d.ts.map +1 -1
  6. package/dist/commands/analytics-ops.js +5 -3
  7. package/dist/commands/analytics-ops.js.map +1 -1
  8. package/dist/commands/author-loop.d.ts.map +1 -1
  9. package/dist/commands/author-loop.js +58 -21
  10. package/dist/commands/author-loop.js.map +1 -1
  11. package/dist/commands/catalog-data-core.d.ts.map +1 -1
  12. package/dist/commands/catalog-data-core.js +15 -3
  13. package/dist/commands/catalog-data-core.js.map +1 -1
  14. package/dist/commands/deploy-ops.d.ts +6 -0
  15. package/dist/commands/deploy-ops.d.ts.map +1 -1
  16. package/dist/commands/deploy-ops.js +108 -38
  17. package/dist/commands/deploy-ops.js.map +1 -1
  18. package/dist/commands/mcp-apps.d.ts.map +1 -1
  19. package/dist/commands/mcp-apps.js +31 -7
  20. package/dist/commands/mcp-apps.js.map +1 -1
  21. package/dist/commands/output.d.ts +52 -0
  22. package/dist/commands/output.d.ts.map +1 -1
  23. package/dist/commands/output.js +12 -0
  24. package/dist/commands/output.js.map +1 -1
  25. package/dist/commands/project-setup.d.ts.map +1 -1
  26. package/dist/commands/project-setup.js +35 -4
  27. package/dist/commands/project-setup.js.map +1 -1
  28. package/dist/commands/update-ops.d.ts.map +1 -1
  29. package/dist/commands/update-ops.js +11 -1
  30. package/dist/commands/update-ops.js.map +1 -1
  31. package/dist/first-run.d.ts.map +1 -1
  32. package/dist/first-run.js +57 -29
  33. package/dist/first-run.js.map +1 -1
  34. package/dist/project.js +17 -1
  35. package/dist/project.js.map +1 -1
  36. package/dist/react.d.ts +2 -2
  37. package/dist/react.d.ts.map +1 -1
  38. package/dist/react.js +1 -1
  39. package/dist/react.js.map +1 -1
  40. package/node_modules/@noodle-borg/agent-kit/dist/curated/hook-notes.d.ts.map +1 -1
  41. package/node_modules/@noodle-borg/agent-kit/dist/curated/hook-notes.js +5 -2
  42. package/node_modules/@noodle-borg/agent-kit/dist/curated/hook-notes.js.map +1 -1
  43. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts +1 -1
  44. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  45. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +4 -1
  46. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  47. package/node_modules/@noodle-borg/agent-kit/dist/index.d.ts.map +1 -1
  48. package/node_modules/@noodle-borg/agent-kit/dist/index.js +17 -11
  49. package/node_modules/@noodle-borg/agent-kit/dist/index.js.map +1 -1
  50. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.d.ts.map +1 -1
  51. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js +225 -26
  52. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js.map +1 -1
  53. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.d.ts +1 -0
  54. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.d.ts.map +1 -1
  55. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.js +217 -52
  56. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.js.map +1 -1
  57. package/node_modules/@noodle-borg/agent-kit/dist/skill-operations-refs.d.ts.map +1 -1
  58. package/node_modules/@noodle-borg/agent-kit/dist/skill-operations-refs.js +20 -0
  59. package/node_modules/@noodle-borg/agent-kit/dist/skill-operations-refs.js.map +1 -1
  60. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  61. package/node_modules/@noodle-borg/authoring/dist/index.d.ts +2 -2
  62. package/node_modules/@noodle-borg/authoring/dist/index.d.ts.map +1 -1
  63. package/node_modules/@noodle-borg/authoring/dist/index.js +1 -1
  64. package/node_modules/@noodle-borg/authoring/dist/index.js.map +1 -1
  65. package/node_modules/@noodle-borg/authoring/dist/react/app-flow.d.ts +33 -0
  66. package/node_modules/@noodle-borg/authoring/dist/react/app-flow.d.ts.map +1 -0
  67. package/node_modules/@noodle-borg/authoring/dist/react/app-flow.js +93 -0
  68. package/node_modules/@noodle-borg/authoring/dist/react/app-flow.js.map +1 -0
  69. package/node_modules/@noodle-borg/authoring/dist/react/bridge.d.ts +41 -0
  70. package/node_modules/@noodle-borg/authoring/dist/react/bridge.d.ts.map +1 -0
  71. package/node_modules/@noodle-borg/authoring/dist/react/bridge.js +85 -0
  72. package/node_modules/@noodle-borg/authoring/dist/react/bridge.js.map +1 -0
  73. package/node_modules/@noodle-borg/authoring/dist/react/components.d.ts +5167 -0
  74. package/node_modules/@noodle-borg/authoring/dist/react/components.d.ts.map +1 -0
  75. package/node_modules/@noodle-borg/authoring/dist/react/components.js +149 -0
  76. package/node_modules/@noodle-borg/authoring/dist/react/components.js.map +1 -0
  77. package/node_modules/@noodle-borg/authoring/dist/react/handoff.d.ts +12 -0
  78. package/node_modules/@noodle-borg/authoring/dist/react/handoff.d.ts.map +1 -0
  79. package/node_modules/@noodle-borg/authoring/dist/react/handoff.js +54 -0
  80. package/node_modules/@noodle-borg/authoring/dist/react/handoff.js.map +1 -0
  81. package/node_modules/@noodle-borg/authoring/dist/react/hooks.d.ts +47 -0
  82. package/node_modules/@noodle-borg/authoring/dist/react/hooks.d.ts.map +1 -0
  83. package/node_modules/@noodle-borg/authoring/dist/react/hooks.js +125 -0
  84. package/node_modules/@noodle-borg/authoring/dist/react/hooks.js.map +1 -0
  85. package/node_modules/@noodle-borg/authoring/dist/react/index.d.ts +13 -0
  86. package/node_modules/@noodle-borg/authoring/dist/react/index.d.ts.map +1 -0
  87. package/node_modules/@noodle-borg/authoring/dist/react/index.js +7 -0
  88. package/node_modules/@noodle-borg/authoring/dist/react/index.js.map +1 -0
  89. package/node_modules/@noodle-borg/authoring/dist/react/native-components.d.ts +1159 -0
  90. package/node_modules/@noodle-borg/authoring/dist/react/native-components.d.ts.map +1 -0
  91. package/node_modules/@noodle-borg/authoring/dist/react/native-components.js +66 -0
  92. package/node_modules/@noodle-borg/authoring/dist/react/native-components.js.map +1 -0
  93. package/node_modules/@noodle-borg/authoring/dist/react/store.d.ts +9 -0
  94. package/node_modules/@noodle-borg/authoring/dist/react/store.d.ts.map +1 -0
  95. package/node_modules/@noodle-borg/authoring/dist/react/store.js +25 -0
  96. package/node_modules/@noodle-borg/authoring/dist/react/store.js.map +1 -0
  97. package/node_modules/@noodle-borg/authoring/dist/react.d.ts +2 -28
  98. package/node_modules/@noodle-borg/authoring/dist/react.d.ts.map +1 -1
  99. package/node_modules/@noodle-borg/authoring/dist/react.js +1 -152
  100. package/node_modules/@noodle-borg/authoring/dist/react.js.map +1 -1
  101. package/node_modules/@noodle-borg/connector-defs/dist/compile.d.ts.map +1 -1
  102. package/node_modules/@noodle-borg/connector-defs/dist/compile.js +23 -8
  103. package/node_modules/@noodle-borg/connector-defs/dist/compile.js.map +1 -1
  104. package/node_modules/@noodle-borg/connector-defs/dist/schema.d.ts +8 -4
  105. package/node_modules/@noodle-borg/connector-defs/dist/schema.d.ts.map +1 -1
  106. package/node_modules/@noodle-borg/connector-defs/dist/schema.js +3 -3
  107. package/node_modules/@noodle-borg/connector-defs/dist/schema.js.map +1 -1
  108. package/node_modules/@noodle-borg/connector-defs/dist/variables.d.ts +1 -0
  109. package/node_modules/@noodle-borg/connector-defs/dist/variables.d.ts.map +1 -1
  110. package/node_modules/@noodle-borg/connector-defs/dist/variables.js +1 -1
  111. package/node_modules/@noodle-borg/connector-defs/dist/variables.js.map +1 -1
  112. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts +3 -2
  113. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts.map +1 -1
  114. package/node_modules/@noodle-borg/connector-http/dist/http-connector.js.map +1 -1
  115. package/package.json +6 -4
  116. package/react/styles.css +346 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/react/components.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ import { createElement, isValidElement, } from 'react';
2
+ import { useLayout } from './hooks.js';
3
+ export function AppShell({ title, subtitle, icon, badge, footer, displayMode = 'inline', children, className, ...props }) {
4
+ const layout = useLayout();
5
+ const resolvedDisplayMode = displayMode === 'auto' ? layout.displayMode : displayMode;
6
+ const content = title || subtitle || icon || badge || footer !== undefined
7
+ ? [
8
+ title || subtitle || icon || badge
9
+ ? createElement(ShellHeader, { key: 'header', title, subtitle, icon, badge })
10
+ : null,
11
+ children,
12
+ footer === undefined
13
+ ? null
14
+ : createElement('footer', { key: 'footer', className: 'nsr-footer' }, footer),
15
+ ]
16
+ : children;
17
+ return createElement('main', {
18
+ ...props,
19
+ className: join('nsr-shell', `nsr-shell-${resolvedDisplayMode}`, className),
20
+ 'data-display-mode': resolvedDisplayMode,
21
+ }, createElement('section', {
22
+ className: resolvedDisplayMode === 'fullscreen'
23
+ ? 'nsr-shell-surface'
24
+ : 'nsr-card nsr-card-wide nsr-shell-surface',
25
+ }, content));
26
+ }
27
+ export function ShellHeader({ title, subtitle, icon, badge, className, ...props }) {
28
+ return createElement('header', { ...props, className: join('nsr-header', className) }, icon === undefined
29
+ ? null
30
+ : createElement('span', { className: 'nsr-icon', 'aria-hidden': true }, icon), createElement('div', { className: 'nsr-title-block' }, title === undefined ? null : createElement('h1', { className: 'nsr-title' }, title), subtitle === undefined ? null : createElement('p', { className: 'nsr-subtitle' }, subtitle)), badge === undefined ? null : createElement('span', { className: 'nsr-chip' }, badge));
31
+ }
32
+ export function ShellNav({ activeView, items, onNavigate, className, ...props }) {
33
+ return createElement('nav', { ...props, className: join('nsr-tabs', className) }, items.map((item) => createElement('button', {
34
+ key: item.view,
35
+ className: 'nsr-tab',
36
+ type: 'button',
37
+ 'aria-current': activeView === item.view ? 'step' : undefined,
38
+ onClick: () => onNavigate(item.view),
39
+ }, item.label)));
40
+ }
41
+ export function ViewStack({ flow, children, className, ...props }) {
42
+ return createElement('div', { ...props, className: join('nsr-view-stack', className) }, mapChildren(children, (child) => {
43
+ if (!isValidElement(child))
44
+ return child;
45
+ return child.props.name === flow.activeView ? child : null;
46
+ }));
47
+ }
48
+ export function View({ name, children, className, ...props }) {
49
+ return createElement('section', { ...props, className: join('nsr-view', className), 'data-view': name }, children);
50
+ }
51
+ export function Overlay({ open, mode = 'modal', children, className, ...props }) {
52
+ if (!open)
53
+ return null;
54
+ return createElement('div', { ...props, className: join('nsr-overlay', `nsr-overlay-${mode}`, className), role: 'dialog' }, children);
55
+ }
56
+ export function ActionBar({ children, className, ...props }) {
57
+ return createElement('div', { ...props, className: join('nsr-actions', className) }, children);
58
+ }
59
+ export function AsyncBoundary({ state, loading, error, empty, isEmpty = false, children, className, ...props }) {
60
+ if (state?.status === 'pending') {
61
+ return createElement(LoadingState, { className }, loading ?? 'Loading');
62
+ }
63
+ if (state?.status === 'error') {
64
+ const content = typeof error === 'function' ? error(state.error ?? new Error('Request failed')) : error;
65
+ return createElement(ErrorState, { className }, content ?? state.error?.message ?? 'Request failed');
66
+ }
67
+ if (isEmpty)
68
+ return createElement(EmptyState, { className }, empty ?? 'No results');
69
+ return createElement('div', { ...props, className: join('nsr-async', className) }, children);
70
+ }
71
+ export function EmptyState({ children, className, ...props }) {
72
+ return createElement('div', { ...props, className: join('nsr-empty', className), role: 'status' }, children);
73
+ }
74
+ export function ErrorState({ children, className, ...props }) {
75
+ return createElement('div', { ...props, className: join('nsr-error', className), role: 'alert' }, children);
76
+ }
77
+ export function LoadingState({ children, className, ...props }) {
78
+ return createElement('div', { ...props, className: join('nsr-loading', className), role: 'status' }, children);
79
+ }
80
+ export function StatusBadge({ tone = 'neutral', children, className, ...props }) {
81
+ return createElement('span', { ...props, className: join('nsr-badge', `nsr-badge-${tone}`, className) }, children);
82
+ }
83
+ export function DataList({ children, className, ...props }) {
84
+ return createElement('div', { ...props, className: join('nsr-data-list', className) }, children);
85
+ }
86
+ export function DataCard({ as = 'div', children, className, ...props }) {
87
+ return createElement(as, { ...props, className: join('nsr-data-card', className) }, children);
88
+ }
89
+ export function QuantityStepper({ value, min = 0, max, step = 1, onChange, decrementLabel = 'Decrease', incrementLabel = 'Increase', className, ...props }) {
90
+ const nextDown = Math.max(min, value - step);
91
+ const nextUp = max === undefined ? value + step : Math.min(max, value + step);
92
+ return createElement('div', { ...props, className: join('nsr-stepper', className) }, createElement('button', {
93
+ type: 'button',
94
+ 'aria-label': decrementLabel,
95
+ disabled: value <= min,
96
+ onClick: () => onChange(nextDown),
97
+ }, '-'), createElement('span', { className: 'nsr-stepper-value' }, String(value)), createElement('button', {
98
+ type: 'button',
99
+ 'aria-label': incrementLabel,
100
+ disabled: max !== undefined && value >= max,
101
+ onClick: () => onChange(nextUp),
102
+ }, '+'));
103
+ }
104
+ export function ChoiceGroup({ values, selected, onChange, labelFor = (value) => value, className, ...props }) {
105
+ return createElement('div', { ...props, className: join('nsr-choice-group', className) }, values.map((value) => {
106
+ const checked = selected.includes(value);
107
+ return createElement('label', { key: value, className: 'nsr-choice' }, createElement('input', {
108
+ type: 'checkbox',
109
+ checked,
110
+ onChange: (event) => {
111
+ const checked = event.currentTarget
112
+ .checked;
113
+ onChange(checked ? [...selected, value] : selected.filter((entry) => entry !== value));
114
+ },
115
+ }), createElement('span', null, labelFor(value)));
116
+ }));
117
+ }
118
+ export function Field({ label, detail, children, className, ...props }) {
119
+ return createElement('label', { ...props, className: join('nsr-field', className) }, createElement('span', { className: 'nsr-field-label' }, label), children, detail === undefined ? null : createElement('span', { className: 'nsr-field-detail' }, detail));
120
+ }
121
+ export function SubmitButton({ pending = false, pendingLabel, children, disabled, ...props }) {
122
+ return createElement('button', {
123
+ ...props,
124
+ type: props.type ?? 'button',
125
+ disabled: disabled || pending,
126
+ 'aria-busy': pending || undefined,
127
+ }, pending ? (pendingLabel ?? children) : children);
128
+ }
129
+ export function HandoffButton({ handoff, target, pendingLabel, children, disabled, ...props }) {
130
+ const pending = handoff.status === 'opening';
131
+ return createElement(SubmitButton, {
132
+ ...props,
133
+ disabled: disabled || pending,
134
+ pending,
135
+ pendingLabel,
136
+ onClick: () => {
137
+ void handoff.open(target).catch(() => undefined);
138
+ },
139
+ children,
140
+ });
141
+ }
142
+ function join(...parts) {
143
+ const value = parts.filter(Boolean).join(' ');
144
+ return value.length === 0 ? undefined : value;
145
+ }
146
+ function mapChildren(children, mapper) {
147
+ return Array.isArray(children) ? children.map(mapper) : mapper(children);
148
+ }
149
+ //# sourceMappingURL=components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/react/components.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export type HandoffState = 'idle' | 'opening' | 'opened' | 'error';
2
+ export type HandoffController = {
3
+ readonly status: HandoffState;
4
+ readonly error?: Error;
5
+ readonly open: (target: string | {
6
+ readonly url?: string;
7
+ readonly checkoutUrl?: string;
8
+ }) => Promise<void>;
9
+ readonly reset: () => void;
10
+ };
11
+ export declare function useHandoff(): HandoffController;
12
+ //# sourceMappingURL=handoff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handoff.d.ts","sourceRoot":"","sources":["../../src/react/handoff.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEnE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,CACb,MAAM,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KACtE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;CAC5B,CAAC;AAEF,wBAAgB,UAAU,IAAI,iBAAiB,CA8C9C"}
@@ -0,0 +1,54 @@
1
+ import { useCallback, useMemo, useState } from 'react';
2
+ import { useOpenExternal } from './hooks.js';
3
+ export function useHandoff() {
4
+ const openExternal = useOpenExternal();
5
+ const [status, setStatus] = useState('idle');
6
+ const [error, setError] = useState();
7
+ const open = useCallback(async (target) => {
8
+ const url = typeof target === 'string' ? target : (target.url ?? target.checkoutUrl);
9
+ if (url === undefined || url.length === 0) {
10
+ const err = new Error('Missing handoff URL');
11
+ setError(err);
12
+ setStatus('error');
13
+ throw err;
14
+ }
15
+ if (!isHttpUrl(url)) {
16
+ const err = new Error('Handoff URL must use http or https');
17
+ setError(err);
18
+ setStatus('error');
19
+ throw err;
20
+ }
21
+ setStatus('opening');
22
+ setError(undefined);
23
+ try {
24
+ await openExternal(url);
25
+ setStatus('opened');
26
+ }
27
+ catch (cause) {
28
+ const err = cause instanceof Error ? cause : new Error(String(cause));
29
+ setError(err);
30
+ setStatus('error');
31
+ throw err;
32
+ }
33
+ }, [openExternal]);
34
+ const reset = useCallback(() => {
35
+ setStatus('idle');
36
+ setError(undefined);
37
+ }, []);
38
+ return useMemo(() => ({
39
+ status,
40
+ ...(error === undefined ? {} : { error }),
41
+ open,
42
+ reset,
43
+ }), [error, open, reset, status]);
44
+ }
45
+ function isHttpUrl(value) {
46
+ try {
47
+ const url = new URL(value);
48
+ return url.protocol === 'http:' || url.protocol === 'https:';
49
+ }
50
+ catch {
51
+ return false;
52
+ }
53
+ }
54
+ //# sourceMappingURL=handoff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/react/handoff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAa7C,MAAM,UAAU,UAAU;IACxB,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAe,MAAM,CAAC,CAAC;IAC3D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAqB,CAAC;IACxD,MAAM,IAAI,GAAG,WAAW,CACtB,KAAK,EAAE,MAAyE,EAAE,EAAE;QAClF,MAAM,GAAG,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC;QACrF,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1C,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC7C,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,SAAS,CAAC,OAAO,CAAC,CAAC;YACnB,MAAM,GAAG,CAAC;QACZ,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YAC5D,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,SAAS,CAAC,OAAO,CAAC,CAAC;YACnB,MAAM,GAAG,CAAC;QACZ,CAAC;QACD,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;YACxB,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,SAAS,CAAC,OAAO,CAAC,CAAC;YACnB,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IACF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,SAAS,CAAC,MAAM,CAAC,CAAC;QAClB,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,MAAM;QACN,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;QACzC,IAAI;QACJ,KAAK;KACN,CAAC,EACF,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAC7B,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC9B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3B,OAAO,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { type AppFlow, type AppFlowConfig } from './app-flow.js';
2
+ import { type LayoutState, type NoodleReactBridge, type ToolResult } from './bridge.js';
3
+ import { type HandoffController } from './handoff.js';
4
+ import { createViewStore, type StoreHookResult } from './store.js';
5
+ export type ToolStatus = 'idle' | 'pending' | 'success' | 'error';
6
+ export type CallToolState = {
7
+ readonly status: ToolStatus;
8
+ readonly data?: ToolResult;
9
+ readonly error?: Error;
10
+ readonly content?: unknown;
11
+ readonly structuredContent?: unknown;
12
+ readonly meta?: unknown;
13
+ readonly toolError?: boolean;
14
+ readonly isIdle: boolean;
15
+ readonly isPending: boolean;
16
+ readonly isSuccess: boolean;
17
+ readonly isError: boolean;
18
+ readonly callTool: (input?: unknown) => Promise<ToolResult>;
19
+ readonly callToolAsync: (input?: unknown) => Promise<ToolResult>;
20
+ readonly reset: () => void;
21
+ };
22
+ export type GeneratedReactHelpers = {
23
+ readonly useToolInfo: (toolName?: string) => ToolResult;
24
+ readonly useCallTool: (toolName: string) => CallToolState;
25
+ readonly useViewState: <T>(key: string, initialValue: T) => readonly [T, (value: T | ((current: T) => T)) => void];
26
+ readonly useLayout: () => LayoutState;
27
+ readonly useRequestDisplayMode: () => (mode: LayoutState['displayMode']) => Promise<void>;
28
+ readonly useOpenExternal: () => (url: string) => Promise<void>;
29
+ readonly useSendFollowUpMessage: () => (message: {
30
+ readonly prompt: string;
31
+ }) => Promise<void>;
32
+ readonly useAppFlow: <ViewName extends string>(config: AppFlowConfig<ViewName>) => AppFlow<ViewName>;
33
+ readonly useHandoff: () => HandoffController;
34
+ readonly createViewStore: typeof createViewStore;
35
+ };
36
+ export declare function generateHelpers<_AppType>(): GeneratedReactHelpers;
37
+ export declare function useToolInfo(toolName?: string): ToolResult;
38
+ export declare function useCallTool(toolName: string): CallToolState;
39
+ export declare function useViewState<T>(key: string, initialValue: T): readonly [T, (value: T | ((current: T) => T)) => void];
40
+ export declare function useLayout(): LayoutState;
41
+ export declare function useRequestDisplayMode(): (mode: LayoutState['displayMode']) => Promise<void>;
42
+ export declare function useOpenExternal(): (url: string) => Promise<void>;
43
+ export declare function useSendFollowUpMessage(): (message: {
44
+ readonly prompt: string;
45
+ }) => Promise<void>;
46
+ export type { LayoutState, NoodleReactBridge, StoreHookResult, ToolResult };
47
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/react/hooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ import { useCallback, useMemo, useState } from 'react';
2
+ import { useAppFlow } from './app-flow.js';
3
+ import { bridge, globalLayout, globalToolResult, globalViewState, requireBridge, setGlobalViewState, useBridgeVersion, } from './bridge.js';
4
+ import { useHandoff } from './handoff.js';
5
+ import { createViewStore } from './store.js';
6
+ export function generateHelpers() {
7
+ return {
8
+ useToolInfo,
9
+ useCallTool,
10
+ useViewState,
11
+ useLayout,
12
+ useRequestDisplayMode,
13
+ useOpenExternal,
14
+ useSendFollowUpMessage,
15
+ useAppFlow,
16
+ useHandoff,
17
+ createViewStore,
18
+ };
19
+ }
20
+ export function useToolInfo(toolName) {
21
+ useBridgeVersion();
22
+ return bridge()?.getToolResult?.(toolName) ?? globalToolResult();
23
+ }
24
+ export function useCallTool(toolName) {
25
+ useBridgeVersion();
26
+ const [data, setData] = useState();
27
+ const [error, setError] = useState();
28
+ const [status, setStatus] = useState('idle');
29
+ const callToolAsync = useCallback(async (input) => {
30
+ setStatus('pending');
31
+ setData(undefined);
32
+ setError(undefined);
33
+ try {
34
+ const currentBridge = requireBridge();
35
+ if (currentBridge.callServerTool === undefined) {
36
+ throw new Error('Noodle widget bridge does not support tool calls');
37
+ }
38
+ const result = await currentBridge.callServerTool({ name: toolName, arguments: input });
39
+ const normalized = result ?? {};
40
+ setData(normalized);
41
+ setStatus('success');
42
+ return normalized;
43
+ }
44
+ catch (cause) {
45
+ const err = cause instanceof Error ? cause : new Error(String(cause));
46
+ setError(err);
47
+ setStatus('error');
48
+ throw err;
49
+ }
50
+ }, [toolName]);
51
+ const reset = useCallback(() => {
52
+ setData(undefined);
53
+ setError(undefined);
54
+ setStatus('idle');
55
+ }, []);
56
+ return {
57
+ ...(data === undefined ? {} : { data }),
58
+ ...(error === undefined ? {} : { error }),
59
+ ...(data?.content === undefined ? {} : { content: data.content }),
60
+ ...(data?.structuredContent === undefined ? {} : { structuredContent: data.structuredContent }),
61
+ ...(data?._meta === undefined ? {} : { meta: data._meta }),
62
+ ...(data?.isError === undefined ? {} : { toolError: data.isError }),
63
+ status,
64
+ isIdle: status === 'idle',
65
+ isPending: status === 'pending',
66
+ isSuccess: status === 'success',
67
+ isError: status === 'error',
68
+ callTool: callToolAsync,
69
+ callToolAsync,
70
+ reset,
71
+ };
72
+ }
73
+ export function useViewState(key, initialValue) {
74
+ useBridgeVersion();
75
+ const value = readViewState(key, initialValue);
76
+ const setValue = useCallback((next) => {
77
+ const current = bridge()?.getViewState?.() ?? globalViewState();
78
+ const currentValue = (current[key] === undefined ? initialValue : current[key]);
79
+ const resolved = typeof next === 'function' ? next(currentValue) : next;
80
+ const patch = { ...current, [key]: resolved };
81
+ bridge()?.setWidgetState?.(patch);
82
+ if (bridge()?.setWidgetState === undefined)
83
+ setGlobalViewState(patch);
84
+ }, [initialValue, key]);
85
+ return useMemo(() => [value, setValue], [value, setValue]);
86
+ }
87
+ export function useLayout() {
88
+ useBridgeVersion();
89
+ return bridge()?.getLayout?.() ?? globalLayout();
90
+ }
91
+ export function useRequestDisplayMode() {
92
+ useBridgeVersion();
93
+ return useCallback(async (mode) => {
94
+ const currentBridge = requireBridge();
95
+ if (currentBridge.requestDisplayMode === undefined) {
96
+ throw new Error('Noodle widget bridge does not support display mode requests');
97
+ }
98
+ await currentBridge.requestDisplayMode(mode);
99
+ }, []);
100
+ }
101
+ export function useOpenExternal() {
102
+ useBridgeVersion();
103
+ return useCallback(async (url) => {
104
+ const currentBridge = requireBridge();
105
+ if (currentBridge.openExternal === undefined) {
106
+ throw new Error('Noodle widget bridge does not support external links');
107
+ }
108
+ await currentBridge.openExternal(url);
109
+ }, []);
110
+ }
111
+ export function useSendFollowUpMessage() {
112
+ useBridgeVersion();
113
+ return useCallback(async (message) => {
114
+ const currentBridge = requireBridge();
115
+ if (currentBridge.sendFollowUpMessage === undefined) {
116
+ throw new Error('Noodle widget bridge does not support follow-up messages');
117
+ }
118
+ await currentBridge.sendFollowUpMessage(message);
119
+ }, []);
120
+ }
121
+ function readViewState(key, initialValue) {
122
+ const value = bridge()?.getViewState?.()?.[key] ?? globalViewState()[key];
123
+ return value === undefined ? initialValue : value;
124
+ }
125
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/react/hooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export type { AppFlow, AppFlowConfig, AppFlowOverlay, AppFlowSnapshot, AppFlowViewParams, } from './app-flow.js';
2
+ export { useAppFlow } from './app-flow.js';
3
+ export type { ActionBarProps, AppShellProps, AsyncBoundaryProps, ChoiceGroupProps, DataCardProps, DataListProps, EmptyStateProps, ErrorStateProps, FieldProps, HandoffButtonProps, LoadingStateProps, OverlayProps, QuantityStepperProps, ShellHeaderProps, ShellNavProps, StatusBadgeProps, SubmitButtonProps, ViewProps, ViewStackProps, } from './components.js';
4
+ export { ActionBar, AppShell, AsyncBoundary, ChoiceGroup, DataCard, DataList, EmptyState, ErrorState, Field, HandoffButton, LoadingState, Overlay, QuantityStepper, ShellHeader, ShellNav, StatusBadge, SubmitButton, View, ViewStack, } from './components.js';
5
+ export type { HandoffController, HandoffState } from './handoff.js';
6
+ export { useHandoff } from './handoff.js';
7
+ export type { CallToolState, GeneratedReactHelpers, LayoutState, NoodleReactBridge, ToolResult, ToolStatus, } from './hooks.js';
8
+ export { generateHelpers, useCallTool, useLayout, useOpenExternal, useRequestDisplayMode, useSendFollowUpMessage, useToolInfo, useViewState, } from './hooks.js';
9
+ export type { ExpandButtonProps, FullscreenShellProps, InlineCardProps, InlineCarouselProps, InlineListItem, InlineListProps, } from './native-components.js';
10
+ export { ExpandButton, FullscreenShell, InlineCard, InlineCarousel, InlineList, } from './native-components.js';
11
+ export type { StoreHookResult } from './store.js';
12
+ export { createViewStore } from './store.js';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,OAAO,EACP,aAAa,EACb,cAAc,EACd,eAAe,EACf,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EACV,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,eAAe,EACf,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,EACV,KAAK,EACL,aAAa,EACb,YAAY,EACZ,OAAO,EACP,eAAe,EACf,WAAW,EACX,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,SAAS,GACV,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EACV,aAAa,EACb,qBAAqB,EACrB,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,eAAe,EACf,WAAW,EACX,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,YAAY,EACZ,eAAe,EACf,UAAU,EACV,cAAc,EACd,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { useAppFlow } from './app-flow.js';
2
+ export { ActionBar, AppShell, AsyncBoundary, ChoiceGroup, DataCard, DataList, EmptyState, ErrorState, Field, HandoffButton, LoadingState, Overlay, QuantityStepper, ShellHeader, ShellNav, StatusBadge, SubmitButton, View, ViewStack, } from './components.js';
3
+ export { useHandoff } from './handoff.js';
4
+ export { generateHelpers, useCallTool, useLayout, useOpenExternal, useRequestDisplayMode, useSendFollowUpMessage, useToolInfo, useViewState, } from './hooks.js';
5
+ export { ExpandButton, FullscreenShell, InlineCard, InlineCarousel, InlineList, } from './native-components.js';
6
+ export { createViewStore } from './store.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAsB3C,OAAO,EACL,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,EACV,KAAK,EACL,aAAa,EACb,YAAY,EACZ,OAAO,EACP,eAAe,EACf,WAAW,EACX,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,SAAS,GACV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAS1C,OAAO,EACL,eAAe,EACf,WAAW,EACX,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,YAAY,GACb,MAAM,YAAY,CAAC;AASpB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,UAAU,EACV,cAAc,EACd,UAAU,GACX,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}