@june-ai/june-ui 0.2.7 → 0.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +49 -2
- package/README.md +633 -400
- package/dist/{chunk-VFZI3SEL.js → chunk-27XM6EVX.js} +8 -8
- package/dist/chunk-G6YPSE6J.cjs +520 -0
- package/dist/chunk-GFCROSGQ.cjs +4399 -0
- package/dist/chunk-JSRO5CRO.js +4399 -0
- package/dist/{document-engine-RKD5SLXR.js → document-engine-BUTK73DW.js} +1 -1
- package/dist/document-engine-GXZH2LNW.cjs +12 -0
- package/dist/entry-core.cjs +148 -0
- package/dist/entry-core.d.cts +1005 -0
- package/dist/entry-core.d.ts +1005 -0
- package/dist/entry-core.js +149 -0
- package/dist/index.cjs +182 -4238
- package/dist/index.d.cts +80 -525
- package/dist/index.d.ts +80 -525
- package/dist/index.js +168 -3599
- package/dist/june.css +94 -0
- package/docs/architecture.md +95 -0
- package/docs/component-registration.md +115 -0
- package/docs/custom-features.md +68 -0
- package/docs/streaming.md +76 -0
- package/docs/theming.md +65 -0
- package/docs/troubleshooting.md +59 -0
- package/package.json +19 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,52 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [Unreleased] — Modular architecture, component registry, tool approval
|
|
4
|
+
|
|
5
|
+
No breaking changes: every 0.2.7 export and prop keeps working (guarded by `tests/core/public-api.test.ts`).
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
- **Component registry.** `defineComponent({ name, description, schema, component | render, slots?, metadata? })`
|
|
9
|
+
with definition-time validation; `ComponentRegistry` / `createComponentRegistry` built on OpenUI's
|
|
10
|
+
`library.extend` (add, override, remove, runtime changes, atomic rollback, stable library identity,
|
|
11
|
+
`prompt()`); `useRegistryLibrary`.
|
|
12
|
+
- `createJuneUI({ components, overrides, remove, baseLibrary, defaults })` instances, `<JuneUI june>` and
|
|
13
|
+
`JuneUIProvider` for shared components and default props.
|
|
14
|
+
- `registerComponent` / `unregisterComponent` / `defaultRegistry`: extend what a plain `<JuneUI>` draws;
|
|
15
|
+
mounted renderers update.
|
|
16
|
+
- `textFormat="markdown"`: prose rendered with OpenUI's MarkDownRenderer (lazy-loaded, no raw HTML);
|
|
17
|
+
line breaks and foreign code fences are kept. `MarkdownText` component.
|
|
18
|
+
- Tool approval: `ToolApproval`, `ToolApprovalList`, `useToolApproval` (approve / reject / edit, statuses,
|
|
19
|
+
`confirmAction` for sensitive actions).
|
|
20
|
+
- LangGraph adapter: `createLangGraphExtractor`, `langGraphStreamOptions` (messages-tuple, messages/partial,
|
|
21
|
+
node filter), `readLangGraphInterrupts`, `interruptToApprovalRequests`.
|
|
22
|
+
- Themes: `themeVars` accepts `{ light, dark }`; `createTheme`, typed `JuneThemeToken`s.
|
|
23
|
+
- Parser utilities exported: `splitResponse` (new `markdown` option), `resolveMixedContent`, `normalizeProgram`.
|
|
24
|
+
- `DocumentBridge` / `useDocumentBridge` (document write-back, extracted from the renderer).
|
|
25
|
+
- `docs/` (architecture, registration, streaming, theming, custom features, troubleshooting), `examples/`
|
|
26
|
+
(type-checked), scripts `check:cycles`, `check:exports`, `typecheck:examples`, `validate`.
|
|
27
|
+
|
|
28
|
+
### Fixed
|
|
29
|
+
- OpenUI Inspect launcher (floating OpenUI logo) still appeared in development when `@openuidev/react-lang`
|
|
30
|
+
was evaluated before June (app imports OpenUI first, or the bundler hoists it into a shared chunk). The old
|
|
31
|
+
startup check could never detect that case. June now watches for react-lang's auto-mount host and mounts
|
|
32
|
+
OpenUI's widget with `enabled: false`, which the auto-mounted launcher yields to. No CSS, renderer, parser,
|
|
33
|
+
streaming, registry or editor changes. Tested against OpenUI's real widget bundle.
|
|
34
|
+
- `@june-ai/june-ui/core` was declared in `package.json` but never built; it now ships (ESM, CJS, types)
|
|
35
|
+
and shares React contexts and the default document store with the root entry.
|
|
36
|
+
|
|
37
|
+
### Changed (internal)
|
|
38
|
+
- Source reorganised into `core/`, `engine/{parser,renderer,registry}`, `features/{streaming,actions,
|
|
39
|
+
document-editor,tool-approval}`, `adapters/`, `themes/`, `utils/`; tests mirror it.
|
|
40
|
+
Old → new: `renderer/renderer.tsx` → `engine/renderer/june-renderer.tsx`; `renderer/error-boundary.tsx` →
|
|
41
|
+
`engine/renderer/`; `utils/split-response.ts`, `utils/normalize-program.ts` → `engine/parser/`;
|
|
42
|
+
`components/library.ts` → `engine/registry/create-library.ts`; `components/june-library.ts` →
|
|
43
|
+
`core/default-library.ts`; `components/document-editor/` → `features/document-editor/`;
|
|
44
|
+
`utils/update-document-program.ts` → `features/document-editor/program-sync.ts`; `actions/`, `streaming/` →
|
|
45
|
+
`features/`; `errors/errors.ts` → `utils/errors.ts`; `openui/disable-devtools.tsx` → `engine/openui-devtools.tsx`.
|
|
46
|
+
- The renderer no longer contains document logic (moved to `features/document-editor/use-document-bridge.ts`)
|
|
47
|
+
or splitting logic (`engine/parser/mixed-content.ts`).
|
|
48
|
+
- Removed empty placeholder files (`src/streaming.ts`, `src/types.ts`) and a stale `src/themes.zip`.
|
|
49
|
+
|
|
3
50
|
## [Unreleased] — DocumentEditor premium UI
|
|
4
51
|
|
|
5
52
|
### Added
|