@meissa_a/meissa 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.
- package/README.md +350 -0
- package/dist/apps/app-generator.d.ts +30 -0
- package/dist/apps/index.d.ts +25 -0
- package/dist/apps/postmessage.d.ts +24 -0
- package/dist/apps/template.d.ts +10 -0
- package/dist/apps/types.d.ts +107 -0
- package/dist/apps.cjs +687 -0
- package/dist/apps.js +645 -0
- package/dist/client/component.d.ts +17 -0
- package/dist/client/content.d.ts +12 -0
- package/dist/client/index.d.ts +7 -0
- package/dist/client/patch.d.ts +6 -0
- package/dist/client/renderer.d.ts +43 -0
- package/dist/client/types.d.ts +52 -0
- package/dist/client.cjs +3558 -0
- package/dist/client.js +3524 -0
- package/dist/renderer/ComponentRenderer.d.ts +11 -0
- package/dist/renderer/MeissaRenderer.d.ts +8 -0
- package/dist/renderer/components/Alert.d.ts +2 -0
- package/dist/renderer/components/Badge.d.ts +2 -0
- package/dist/renderer/components/Btn.d.ts +2 -0
- package/dist/renderer/components/Card.d.ts +2 -0
- package/dist/renderer/components/Chart.d.ts +2 -0
- package/dist/renderer/components/Code.d.ts +2 -0
- package/dist/renderer/components/Col.d.ts +2 -0
- package/dist/renderer/components/Divider.d.ts +2 -0
- package/dist/renderer/components/Form.d.ts +2 -0
- package/dist/renderer/components/Grid.d.ts +2 -0
- package/dist/renderer/components/Heading.d.ts +2 -0
- package/dist/renderer/components/Img.d.ts +2 -0
- package/dist/renderer/components/Input.d.ts +2 -0
- package/dist/renderer/components/List.d.ts +2 -0
- package/dist/renderer/components/Progress.d.ts +2 -0
- package/dist/renderer/components/Row.d.ts +2 -0
- package/dist/renderer/components/Select.d.ts +2 -0
- package/dist/renderer/components/Split.d.ts +2 -0
- package/dist/renderer/components/Stat.d.ts +2 -0
- package/dist/renderer/components/Table.d.ts +2 -0
- package/dist/renderer/components/Tabs.d.ts +2 -0
- package/dist/renderer/components/Text.d.ts +2 -0
- package/dist/renderer/components/index.d.ts +2 -0
- package/dist/renderer/context/ActionContext.d.ts +3 -0
- package/dist/renderer/context/DataContext.d.ts +3 -0
- package/dist/renderer/context/FormContext.d.ts +10 -0
- package/dist/renderer/core/binder.d.ts +17 -0
- package/dist/renderer/core/evaluator.d.ts +13 -0
- package/dist/renderer/core/iterator.d.ts +10 -0
- package/dist/renderer/core/normalizer.d.ts +5 -0
- package/dist/renderer/core/parser.d.ts +8 -0
- package/dist/renderer/core/resolver.d.ts +6 -0
- package/dist/renderer/core/types.d.ts +68 -0
- package/dist/renderer/index.d.ts +7 -0
- package/dist/renderer/utils/cn.d.ts +2 -0
- package/dist/renderer/utils/filters.d.ts +8 -0
- package/dist/renderer/utils/sanitize.d.ts +9 -0
- package/dist/renderer.cjs +3273 -0
- package/dist/renderer.js +3239 -0
- package/dist/server/index.d.ts +4 -0
- package/dist/server/markdown.d.ts +9 -0
- package/dist/server/server.d.ts +39 -0
- package/dist/server/types.d.ts +56 -0
- package/dist/server/validator.d.ts +5 -0
- package/dist/server.cjs +345 -0
- package/dist/server.js +303 -0
- package/package.json +84 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { MeissaInput } from "../renderer";
|
|
2
|
+
import type { MeissaClientRendererOptions, PatchOperation } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* MeissaClientRenderer — Imperative class-based API for rendering Meissa UI.
|
|
5
|
+
*
|
|
6
|
+
* Suitable for vanilla JS, framework-agnostic usage, or any context where
|
|
7
|
+
* you need programmatic control over rendering.
|
|
8
|
+
*
|
|
9
|
+
* Internally uses React's createRoot to mount a MeissaRenderer component.
|
|
10
|
+
*/
|
|
11
|
+
export declare class MeissaClientRenderer {
|
|
12
|
+
private root;
|
|
13
|
+
private container;
|
|
14
|
+
private theme?;
|
|
15
|
+
private onAction?;
|
|
16
|
+
private onNavigate?;
|
|
17
|
+
private currentSchema;
|
|
18
|
+
private currentData;
|
|
19
|
+
private destroyed;
|
|
20
|
+
constructor(options: MeissaClientRendererOptions);
|
|
21
|
+
/**
|
|
22
|
+
* Render a Meissa schema into the container.
|
|
23
|
+
* Optionally provide a data context.
|
|
24
|
+
*/
|
|
25
|
+
render(schema: MeissaInput, data?: Record<string, unknown>): void;
|
|
26
|
+
/**
|
|
27
|
+
* Apply JSON Patch (RFC 6902) operations to the current data context
|
|
28
|
+
* and re-render.
|
|
29
|
+
*/
|
|
30
|
+
patch(patches: PatchOperation[]): void;
|
|
31
|
+
/**
|
|
32
|
+
* Replace the entire data context and re-render.
|
|
33
|
+
*/
|
|
34
|
+
update(data: Record<string, unknown>): void;
|
|
35
|
+
/**
|
|
36
|
+
* Unmount the React root and clean up.
|
|
37
|
+
*/
|
|
38
|
+
destroy(): void;
|
|
39
|
+
/**
|
|
40
|
+
* Internal: commit the current state to React.
|
|
41
|
+
*/
|
|
42
|
+
private commitRender;
|
|
43
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { MeissaInput, MeissaTheme } from "../renderer";
|
|
2
|
+
export type PatchOp = "replace" | "add" | "remove";
|
|
3
|
+
export interface PatchOperation {
|
|
4
|
+
op: PatchOp;
|
|
5
|
+
path: string;
|
|
6
|
+
value?: unknown;
|
|
7
|
+
}
|
|
8
|
+
export interface MeissaContentBlock {
|
|
9
|
+
type: "meissa";
|
|
10
|
+
schema: MeissaInput;
|
|
11
|
+
data?: Record<string, unknown>;
|
|
12
|
+
theme?: MeissaTheme;
|
|
13
|
+
fallback?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface MeissaPatchBlock {
|
|
16
|
+
type: "meissa/patch";
|
|
17
|
+
target: string;
|
|
18
|
+
patches: PatchOperation[];
|
|
19
|
+
}
|
|
20
|
+
export interface TextContentBlock {
|
|
21
|
+
type: "text";
|
|
22
|
+
text: string;
|
|
23
|
+
}
|
|
24
|
+
export type McpContentBlock = MeissaContentBlock | MeissaPatchBlock | TextContentBlock;
|
|
25
|
+
export type HandleContentResult = {
|
|
26
|
+
type: "meissa";
|
|
27
|
+
schema: MeissaInput;
|
|
28
|
+
data?: Record<string, unknown>;
|
|
29
|
+
theme?: MeissaTheme;
|
|
30
|
+
fallback?: string;
|
|
31
|
+
} | {
|
|
32
|
+
type: "meissa/patch";
|
|
33
|
+
target: string;
|
|
34
|
+
patches: PatchOperation[];
|
|
35
|
+
} | {
|
|
36
|
+
type: "text";
|
|
37
|
+
text: string;
|
|
38
|
+
};
|
|
39
|
+
export interface MeissaClientRendererOptions {
|
|
40
|
+
container: HTMLElement;
|
|
41
|
+
theme?: MeissaTheme;
|
|
42
|
+
onAction?: (action: string, args: Record<string, unknown>) => Promise<unknown>;
|
|
43
|
+
onNavigate?: (uri: string) => void;
|
|
44
|
+
}
|
|
45
|
+
export interface MeissaContentProps {
|
|
46
|
+
schema: MeissaInput;
|
|
47
|
+
data?: Record<string, unknown>;
|
|
48
|
+
theme?: MeissaTheme;
|
|
49
|
+
onAction?: (action: string, args: Record<string, unknown>) => Promise<unknown>;
|
|
50
|
+
onNavigate?: (uri: string) => void;
|
|
51
|
+
className?: string;
|
|
52
|
+
}
|