pagiera 0.2.0-alpha.33

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 (192) hide show
  1. package/README.md +528 -0
  2. package/dist/adapters.d.ts +89 -0
  3. package/dist/adapters.d.ts.map +1 -0
  4. package/dist/adapters.js +2 -0
  5. package/dist/adapters.js.map +1 -0
  6. package/dist/client.d.ts +22 -0
  7. package/dist/client.d.ts.map +1 -0
  8. package/dist/client.js +33 -0
  9. package/dist/client.js.map +1 -0
  10. package/dist/data.js +210 -0
  11. package/dist/data.js.map +7 -0
  12. package/dist/document.d.ts +63 -0
  13. package/dist/document.d.ts.map +1 -0
  14. package/dist/document.js +25 -0
  15. package/dist/document.js.map +1 -0
  16. package/dist/editor.d.ts +14 -0
  17. package/dist/editor.d.ts.map +1 -0
  18. package/dist/editor.js +59 -0
  19. package/dist/editor.js.map +1 -0
  20. package/dist/full-editor.d.ts +53 -0
  21. package/dist/full-editor.js +11117 -0
  22. package/dist/full-editor.js.map +7 -0
  23. package/dist/full.css +3498 -0
  24. package/dist/index.d.ts +8 -0
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.js +7 -0
  27. package/dist/index.js.map +1 -0
  28. package/dist/internal/app/api/ai-design/route.d.ts +3 -0
  29. package/dist/internal/app/api/ai-design/route.d.ts.map +1 -0
  30. package/dist/internal/app/api/ai-design/route.js +165 -0
  31. package/dist/internal/app/api/ai-design/route.js.map +1 -0
  32. package/dist/internal/app/p/editor/ai-panel.d.ts +27 -0
  33. package/dist/internal/app/p/editor/ai-panel.d.ts.map +1 -0
  34. package/dist/internal/app/p/editor/ai-panel.js +77 -0
  35. package/dist/internal/app/p/editor/ai-panel.js.map +1 -0
  36. package/dist/internal/app/p/editor/data-modal.d.ts +26 -0
  37. package/dist/internal/app/p/editor/data-modal.d.ts.map +1 -0
  38. package/dist/internal/app/p/editor/data-modal.js +94 -0
  39. package/dist/internal/app/p/editor/data-modal.js.map +1 -0
  40. package/dist/internal/app/p/editor/data-panel.d.ts +18 -0
  41. package/dist/internal/app/p/editor/data-panel.d.ts.map +1 -0
  42. package/dist/internal/app/p/editor/data-panel.js +45 -0
  43. package/dist/internal/app/p/editor/data-panel.js.map +1 -0
  44. package/dist/internal/app/p/editor/editor.d.ts +51 -0
  45. package/dist/internal/app/p/editor/editor.d.ts.map +1 -0
  46. package/dist/internal/app/p/editor/editor.js +1551 -0
  47. package/dist/internal/app/p/editor/editor.js.map +1 -0
  48. package/dist/internal/app/p/editor/fields.d.ts +111 -0
  49. package/dist/internal/app/p/editor/fields.d.ts.map +1 -0
  50. package/dist/internal/app/p/editor/fields.js +141 -0
  51. package/dist/internal/app/p/editor/fields.js.map +1 -0
  52. package/dist/internal/app/p/editor/inspector.d.ts +38 -0
  53. package/dist/internal/app/p/editor/inspector.d.ts.map +1 -0
  54. package/dist/internal/app/p/editor/inspector.js +336 -0
  55. package/dist/internal/app/p/editor/inspector.js.map +1 -0
  56. package/dist/internal/app/p/editor/library.d.ts +18 -0
  57. package/dist/internal/app/p/editor/library.d.ts.map +1 -0
  58. package/dist/internal/app/p/editor/library.js +61 -0
  59. package/dist/internal/app/p/editor/library.js.map +1 -0
  60. package/dist/internal/app/p/editor/parts.d.ts +75 -0
  61. package/dist/internal/app/p/editor/parts.d.ts.map +1 -0
  62. package/dist/internal/app/p/editor/parts.js +261 -0
  63. package/dist/internal/app/p/editor/parts.js.map +1 -0
  64. package/dist/internal/app/p/editor/templates-panel.d.ts +6 -0
  65. package/dist/internal/app/p/editor/templates-panel.d.ts.map +1 -0
  66. package/dist/internal/app/p/editor/templates-panel.js +12 -0
  67. package/dist/internal/app/p/editor/templates-panel.js.map +1 -0
  68. package/dist/internal/app/p/editor/use-canvas-view.d.ts +24 -0
  69. package/dist/internal/app/p/editor/use-canvas-view.d.ts.map +1 -0
  70. package/dist/internal/app/p/editor/use-canvas-view.js +242 -0
  71. package/dist/internal/app/p/editor/use-canvas-view.js.map +1 -0
  72. package/dist/internal/app/p/editor/use-editor.d.ts +48 -0
  73. package/dist/internal/app/p/editor/use-editor.d.ts.map +1 -0
  74. package/dist/internal/app/p/editor/use-editor.js +224 -0
  75. package/dist/internal/app/p/editor/use-editor.js.map +1 -0
  76. package/dist/internal/app/p/editor/variables-panel.d.ts +8 -0
  77. package/dist/internal/app/p/editor/variables-panel.d.ts.map +1 -0
  78. package/dist/internal/app/p/editor/variables-panel.js +52 -0
  79. package/dist/internal/app/p/editor/variables-panel.js.map +1 -0
  80. package/dist/internal/components/ui/select.d.ts +12 -0
  81. package/dist/internal/components/ui/select.d.ts.map +1 -0
  82. package/dist/internal/components/ui/select.js +32 -0
  83. package/dist/internal/components/ui/select.js.map +1 -0
  84. package/dist/internal/drizzle/index.d.ts +6 -0
  85. package/dist/internal/drizzle/index.d.ts.map +1 -0
  86. package/dist/internal/drizzle/index.js +20 -0
  87. package/dist/internal/drizzle/index.js.map +1 -0
  88. package/dist/internal/drizzle/schema.d.ts +405 -0
  89. package/dist/internal/drizzle/schema.d.ts.map +1 -0
  90. package/dist/internal/drizzle/schema.js +70 -0
  91. package/dist/internal/drizzle/schema.js.map +1 -0
  92. package/dist/internal/lib/data/context.d.ts +8 -0
  93. package/dist/internal/lib/data/context.d.ts.map +1 -0
  94. package/dist/internal/lib/data/context.js +17 -0
  95. package/dist/internal/lib/data/context.js.map +1 -0
  96. package/dist/internal/lib/data/source.d.ts +54 -0
  97. package/dist/internal/lib/data/source.d.ts.map +1 -0
  98. package/dist/internal/lib/data/source.js +229 -0
  99. package/dist/internal/lib/data/source.js.map +1 -0
  100. package/dist/internal/lib/editor/ai-types.d.ts +44 -0
  101. package/dist/internal/lib/editor/ai-types.d.ts.map +1 -0
  102. package/dist/internal/lib/editor/ai-types.js +2 -0
  103. package/dist/internal/lib/editor/ai-types.js.map +1 -0
  104. package/dist/internal/lib/editor/arrange.d.ts +12 -0
  105. package/dist/internal/lib/editor/arrange.d.ts.map +1 -0
  106. package/dist/internal/lib/editor/arrange.js +72 -0
  107. package/dist/internal/lib/editor/arrange.js.map +1 -0
  108. package/dist/internal/lib/editor/cascade.d.ts +39 -0
  109. package/dist/internal/lib/editor/cascade.d.ts.map +1 -0
  110. package/dist/internal/lib/editor/cascade.js +86 -0
  111. package/dist/internal/lib/editor/cascade.js.map +1 -0
  112. package/dist/internal/lib/editor/icon.d.ts +6 -0
  113. package/dist/internal/lib/editor/icon.d.ts.map +1 -0
  114. package/dist/internal/lib/editor/icon.js +13 -0
  115. package/dist/internal/lib/editor/icon.js.map +1 -0
  116. package/dist/internal/lib/editor/presets.d.ts +10 -0
  117. package/dist/internal/lib/editor/presets.d.ts.map +1 -0
  118. package/dist/internal/lib/editor/presets.js +83 -0
  119. package/dist/internal/lib/editor/presets.js.map +1 -0
  120. package/dist/internal/lib/editor/showcase.d.ts +14 -0
  121. package/dist/internal/lib/editor/showcase.d.ts.map +1 -0
  122. package/dist/internal/lib/editor/showcase.js +219 -0
  123. package/dist/internal/lib/editor/showcase.js.map +1 -0
  124. package/dist/internal/lib/editor/site-templates.d.ts +4 -0
  125. package/dist/internal/lib/editor/site-templates.d.ts.map +1 -0
  126. package/dist/internal/lib/editor/site-templates.js +156 -0
  127. package/dist/internal/lib/editor/site-templates.js.map +1 -0
  128. package/dist/internal/lib/editor/snap.d.ts +34 -0
  129. package/dist/internal/lib/editor/snap.d.ts.map +1 -0
  130. package/dist/internal/lib/editor/snap.js +70 -0
  131. package/dist/internal/lib/editor/snap.js.map +1 -0
  132. package/dist/internal/lib/editor/style.d.ts +53 -0
  133. package/dist/internal/lib/editor/style.d.ts.map +1 -0
  134. package/dist/internal/lib/editor/style.js +313 -0
  135. package/dist/internal/lib/editor/style.js.map +1 -0
  136. package/dist/internal/lib/editor/tree.d.ts +72 -0
  137. package/dist/internal/lib/editor/tree.d.ts.map +1 -0
  138. package/dist/internal/lib/editor/tree.js +301 -0
  139. package/dist/internal/lib/editor/tree.js.map +1 -0
  140. package/dist/internal/lib/editor/types.d.ts +273 -0
  141. package/dist/internal/lib/editor/types.d.ts.map +1 -0
  142. package/dist/internal/lib/editor/types.js +411 -0
  143. package/dist/internal/lib/editor/types.js.map +1 -0
  144. package/dist/internal/lib/editor/validate.d.ts +20 -0
  145. package/dist/internal/lib/editor/validate.d.ts.map +1 -0
  146. package/dist/internal/lib/editor/validate.js +467 -0
  147. package/dist/internal/lib/editor/validate.js.map +1 -0
  148. package/dist/internal/lib/pages.d.ts +83 -0
  149. package/dist/internal/lib/pages.d.ts.map +1 -0
  150. package/dist/internal/lib/pages.js +294 -0
  151. package/dist/internal/lib/pages.js.map +1 -0
  152. package/dist/internal/lib/render/bind.d.ts +18 -0
  153. package/dist/internal/lib/render/bind.d.ts.map +1 -0
  154. package/dist/internal/lib/render/bind.js +28 -0
  155. package/dist/internal/lib/render/bind.js.map +1 -0
  156. package/dist/internal/lib/render/css.d.ts +31 -0
  157. package/dist/internal/lib/render/css.d.ts.map +1 -0
  158. package/dist/internal/lib/render/css.js +239 -0
  159. package/dist/internal/lib/render/css.js.map +1 -0
  160. package/dist/internal/lib/render/load-data.d.ts +15 -0
  161. package/dist/internal/lib/render/load-data.d.ts.map +1 -0
  162. package/dist/internal/lib/render/load-data.js +39 -0
  163. package/dist/internal/lib/render/load-data.js.map +1 -0
  164. package/dist/internal/lib/render/page-render.d.ts +17 -0
  165. package/dist/internal/lib/render/page-render.d.ts.map +1 -0
  166. package/dist/internal/lib/render/page-render.js +117 -0
  167. package/dist/internal/lib/render/page-render.js.map +1 -0
  168. package/dist/internal/lib/utils.d.ts +3 -0
  169. package/dist/internal/lib/utils.d.ts.map +1 -0
  170. package/dist/internal/lib/utils.js +6 -0
  171. package/dist/internal/lib/utils.js.map +1 -0
  172. package/dist/manrope-data.d.ts +3 -0
  173. package/dist/manrope-data.d.ts.map +1 -0
  174. package/dist/manrope-data.js +3 -0
  175. package/dist/manrope-data.js.map +1 -0
  176. package/dist/page.d.ts +9 -0
  177. package/dist/page.d.ts.map +1 -0
  178. package/dist/page.js +148 -0
  179. package/dist/page.js.map +1 -0
  180. package/dist/provider.d.ts +14 -0
  181. package/dist/provider.d.ts.map +1 -0
  182. package/dist/provider.js +45 -0
  183. package/dist/provider.js.map +1 -0
  184. package/dist/runtime.d.ts +8 -0
  185. package/dist/runtime.js +717 -0
  186. package/dist/runtime.js.map +7 -0
  187. package/dist/server.d.ts +31 -0
  188. package/dist/server.js +2267 -0
  189. package/dist/server.js.map +7 -0
  190. package/dist/styles.css +300 -0
  191. package/package.json +94 -0
  192. package/thumbnail.png +0 -0
@@ -0,0 +1,45 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { IconDatabase, IconPlus, IconTrash } from "@tabler/icons-react";
4
+ import { AnimatePresence, motion } from "motion/react";
5
+ import { useState } from "react";
6
+ import { newId } from "@/lib/editor/tree";
7
+ import { DataSourceModal } from "./data-modal";
8
+ /**
9
+ * The rail lists sources and their state; editing one opens the modal, where
10
+ * the URL, query, headers and response all fit on screen at once.
11
+ */
12
+ export function DataPanel({ sources, samples, onChange, onSample, preview, }) {
13
+ const [openId, setOpenId] = useState(null);
14
+ const open = sources.find((source) => source.id === openId);
15
+ const add = () => {
16
+ const source = {
17
+ id: newId(),
18
+ name: `Source ${sources.length + 1}`,
19
+ url: "",
20
+ path: "",
21
+ params: [],
22
+ headers: [],
23
+ };
24
+ onChange((prev) => [...prev, source]);
25
+ setOpenId(source.id);
26
+ };
27
+ return (_jsxs("div", { className: "flex flex-col gap-3 p-4", children: [_jsxs("p", { className: "text-[11px] leading-relaxed text-ed-muted", children: ["Point a source at a JSON endpoint. Use ", _jsx("b", { children: "Request" }), " for one object or ", _jsx("b", { children: "Repeat" }), " for an array, then bind their children to fields."] }), _jsx("div", { className: "flex flex-col gap-2", children: sources.map((source) => {
28
+ const sample = samples[source.id];
29
+ const host = hostOf(source.url);
30
+ return (_jsxs(motion.div, { layout: true, initial: { opacity: 0, y: -4 }, animate: { opacity: 1, y: 0 }, className: "group flex items-center gap-2.5 rounded-lg border border-ed-border p-2.5 transition-colors hover:border-ed-accent/50", children: [_jsxs("button", { type: "button", onClick: () => setOpenId(source.id), className: "flex min-w-0 flex-1 items-center gap-2.5 text-left", children: [_jsx("span", { className: `flex h-8 w-8 shrink-0 items-center justify-center rounded-md ${sample
31
+ ? "bg-emerald-500/15 text-emerald-500"
32
+ : "bg-ed-field text-ed-faint"}`, children: _jsx(IconDatabase, { size: 15 }) }), _jsxs("span", { className: "flex min-w-0 flex-col", children: [_jsx("span", { className: "truncate text-[12px] font-medium text-ed-text", children: source.name }), _jsx("span", { className: "truncate text-[10px] text-ed-faint", children: sample
33
+ ? `${sample.rows.length} rows · ${sample.keys.length} fields`
34
+ : host || "No URL yet" })] })] }), _jsx("button", { type: "button", "aria-label": `Remove ${source.name}`, onClick: () => onChange((prev) => prev.filter((s) => s.id !== source.id)), className: "shrink-0 rounded-md p-1.5 text-ed-faint opacity-0 transition-all hover:bg-ed-field hover:text-red-400 focus:opacity-100 group-hover:opacity-100", children: _jsx(IconTrash, { size: 13 }) })] }, source.id));
35
+ }) }), _jsxs("button", { type: "button", onClick: add, className: "flex items-center justify-center gap-1.5 rounded-lg border border-dashed border-ed-border py-2.5 text-[11px] text-ed-muted transition-colors hover:border-ed-accent hover:text-ed-text", children: [_jsx(IconPlus, { size: 14 }), "Add a data source"] }), _jsx(AnimatePresence, { children: open && (_jsx(DataSourceModal, { source: open, sample: samples[open.id], onChange: (changes) => onChange((prev) => prev.map((s) => (s.id === open.id ? { ...s, ...changes } : s))), onSample: (sample) => onSample(open.id, sample), onClose: () => setOpenId(null), preview: preview }, open.id)) })] }));
36
+ }
37
+ function hostOf(url) {
38
+ try {
39
+ return new URL(url).host;
40
+ }
41
+ catch {
42
+ return "";
43
+ }
44
+ }
45
+ //# sourceMappingURL=data-panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-panel.js","sourceRoot":"","sources":["../../../../../src/internal/app/p/editor/data-panel.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import type React from "react";
2
+ import type { SiteTemplateId } from "@/lib/editor/site-templates";
3
+ import { type CanvasElement, type DataSource, type RootStyle } from "@/lib/editor/types";
4
+ import type { SourcePreviewer } from "./data-modal";
5
+ import { type LibraryPage } from "./library";
6
+ import { type PageEntry } from "./parts";
7
+ import { useEditorDocument } from "./use-editor";
8
+ import { type AiDesignGenerator } from "./ai-panel";
9
+ export type EditorPage = {
10
+ id: string;
11
+ name: string;
12
+ slug: string;
13
+ version: number;
14
+ elements: CanvasElement[];
15
+ rootStyle: RootStyle;
16
+ dataSources: DataSource[];
17
+ publishedAt: string | null;
18
+ };
19
+ export type EditorAdapters = {
20
+ save?: Parameters<typeof useEditorDocument>[0]["saveDocument"];
21
+ generate?: AiDesignGenerator;
22
+ createPage?: (name: string, slug: string) => Promise<PageMutationResult>;
23
+ renamePage?: (id: string, name: string, slug: string) => Promise<PageMutationResult>;
24
+ duplicatePage?: (id: string, name: string, slug: string) => Promise<PageMutationResult>;
25
+ deletePage?: (id: string) => Promise<PageMutationResult>;
26
+ installTemplate?: (id: SiteTemplateId) => Promise<PageMutationResult>;
27
+ publishPage?: (id: string) => Promise<PageMutationResult>;
28
+ unpublishPage?: (id: string, slug: string) => Promise<PageMutationResult>;
29
+ navigate?: (pageId: string, options?: {
30
+ replace?: boolean;
31
+ }) => void | Promise<void>;
32
+ refresh?: () => void;
33
+ previewHref?: (pageId: string) => string;
34
+ publishedHref?: (slug: string) => string;
35
+ previewSource?: SourcePreviewer;
36
+ };
37
+ export type PageMutationResult = {
38
+ status: "ok";
39
+ pageId?: string;
40
+ slug?: string;
41
+ } | {
42
+ status: "error";
43
+ message: string;
44
+ };
45
+ export default function Editor({ page, pages, library, adapters, }: {
46
+ page: EditorPage;
47
+ pages: PageEntry[];
48
+ library: LibraryPage[];
49
+ adapters?: EditorAdapters;
50
+ }): React.JSX.Element;
51
+ //# sourceMappingURL=editor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../../../src/internal/app/p/editor/editor.tsx"],"names":[],"mappings":"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"}