@artkit-ai/react 0.1.0 → 0.2.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 (89) hide show
  1. package/dist/cache.d.ts +7 -11
  2. package/dist/cache.d.ts.map +1 -1
  3. package/dist/cache.js +32 -53
  4. package/dist/cache.js.map +1 -1
  5. package/dist/client.d.ts +4 -15
  6. package/dist/client.d.ts.map +1 -1
  7. package/dist/client.js +2 -29
  8. package/dist/client.js.map +1 -1
  9. package/dist/components/card.d.ts +2 -2
  10. package/dist/components/card.d.ts.map +1 -1
  11. package/dist/components/card.js +3 -3
  12. package/dist/components/card.js.map +1 -1
  13. package/dist/components/editor.d.ts +31 -18
  14. package/dist/components/editor.d.ts.map +1 -1
  15. package/dist/components/editor.js +81 -131
  16. package/dist/components/editor.js.map +1 -1
  17. package/dist/components/icons.d.ts +2 -2
  18. package/dist/components/icons.d.ts.map +1 -1
  19. package/dist/components/icons.js +2 -2
  20. package/dist/components/icons.js.map +1 -1
  21. package/dist/components/panel.d.ts +13 -16
  22. package/dist/components/panel.d.ts.map +1 -1
  23. package/dist/components/panel.js +13 -97
  24. package/dist/components/panel.js.map +1 -1
  25. package/dist/components/shared.d.ts +2 -6
  26. package/dist/components/shared.d.ts.map +1 -1
  27. package/dist/components/shared.js +2 -6
  28. package/dist/components/shared.js.map +1 -1
  29. package/dist/components/view.d.ts +7 -8
  30. package/dist/components/view.d.ts.map +1 -1
  31. package/dist/components/view.js +16 -15
  32. package/dist/components/view.js.map +1 -1
  33. package/dist/context.d.ts +14 -9
  34. package/dist/context.d.ts.map +1 -1
  35. package/dist/context.js.map +1 -1
  36. package/dist/editor-session.d.ts +77 -165
  37. package/dist/editor-session.d.ts.map +1 -1
  38. package/dist/editor-session.js +164 -586
  39. package/dist/editor-session.js.map +1 -1
  40. package/dist/hooks.d.ts +2 -23
  41. package/dist/hooks.d.ts.map +1 -1
  42. package/dist/hooks.js +24 -116
  43. package/dist/hooks.js.map +1 -1
  44. package/dist/i18n.d.ts +4 -66
  45. package/dist/i18n.d.ts.map +1 -1
  46. package/dist/i18n.js +6 -68
  47. package/dist/i18n.js.map +1 -1
  48. package/dist/index.d.ts +6 -9
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +4 -8
  51. package/dist/index.js.map +1 -1
  52. package/dist/provider.d.ts +1 -1
  53. package/dist/provider.d.ts.map +1 -1
  54. package/dist/provider.js +12 -12
  55. package/dist/provider.js.map +1 -1
  56. package/dist/styles.d.ts +1 -1
  57. package/dist/styles.d.ts.map +1 -1
  58. package/dist/styles.js +4 -4
  59. package/package.json +2 -2
  60. package/src/cache.ts +32 -55
  61. package/src/client.ts +7 -55
  62. package/src/components/card.tsx +6 -7
  63. package/src/components/editor.tsx +208 -308
  64. package/src/components/icons.tsx +2 -2
  65. package/src/components/panel.tsx +43 -300
  66. package/src/components/shared.tsx +3 -12
  67. package/src/components/view.tsx +26 -29
  68. package/src/context.ts +16 -11
  69. package/src/editor-session.ts +197 -675
  70. package/src/hooks.ts +25 -140
  71. package/src/i18n.ts +6 -68
  72. package/src/index.ts +7 -39
  73. package/src/provider.tsx +13 -13
  74. package/src/styles.ts +4 -4
  75. package/dist/components/approval.d.ts +0 -34
  76. package/dist/components/approval.d.ts.map +0 -1
  77. package/dist/components/approval.js +0 -80
  78. package/dist/components/approval.js.map +0 -1
  79. package/dist/components/version-diff.d.ts +0 -35
  80. package/dist/components/version-diff.d.ts.map +0 -1
  81. package/dist/components/version-diff.js +0 -85
  82. package/dist/components/version-diff.js.map +0 -1
  83. package/dist/line-diff.d.ts +0 -25
  84. package/dist/line-diff.d.ts.map +0 -1
  85. package/dist/line-diff.js +0 -96
  86. package/dist/line-diff.js.map +0 -1
  87. package/src/components/approval.tsx +0 -219
  88. package/src/components/version-diff.tsx +0 -266
  89. package/src/line-diff.ts +0 -111
package/src/context.ts CHANGED
@@ -19,20 +19,25 @@ export interface RendererProps<Content = unknown> {
19
19
 
20
20
  /** What a kind's `/react` entry provides. */
21
21
  export interface RendererModule {
22
- // biome-ignore lint/suspicious/noExplicitAny: renderers are typed by their own kind.
22
+ // biome-ignore lint/suspicious/noExplicitAny: renderers are typed by their own format.
23
23
  Renderer: ComponentType<RendererProps<any>>;
24
24
  css?: string;
25
25
  }
26
26
 
27
27
  /** What a kind's `/edit` entry provides. */
28
28
  export interface EditorModule {
29
- // biome-ignore lint/suspicious/noExplicitAny: editors are typed by their own kind.
29
+ // biome-ignore lint/suspicious/noExplicitAny: editors are typed by their own format.
30
30
  Editor: ComponentType<EditorBindings<any, any>>;
31
31
  css?: string;
32
+ /**
33
+ * Who draws the undo, redo and save controls. `host` (default): the editor host shows them above the format editor.
34
+ * `format`: the format editor receives `actions` and draws them inside its own toolbar.
35
+ */
36
+ toolbar?: 'host' | 'format';
32
37
  }
33
38
 
34
39
  /**
35
- * Lazy loaders per kind, so the bundle only pulls what is shown (spec §13.6). Typical use:
40
+ * Lazy loaders per format, so the bundle only pulls what is shown (spec §13.6). Typical use:
36
41
  * `renderers: { document: () => import('@artkit-ai/kind-document/react').then((m) => ({ Renderer: m.DocumentRenderer, css: m.documentCss })) }`.
37
42
  */
38
43
  export interface ArtifactLoaders {
@@ -55,16 +60,16 @@ export interface ArtkitContextValue {
55
60
  themeFor(themeId: string | undefined): Theme;
56
61
  resolveAssetUrl?: (ref: string) => string | undefined;
57
62
  assets?: AssetResolver;
58
- /** Formats the server can export, per kind. */
63
+ /** Formats the server can export, per format. */
59
64
  exportFormats: Record<string, readonly string[]>;
60
- hasRenderer(kind: string): boolean;
61
- hasEditor(kind: string): boolean;
62
- hasExporters(kind: string): boolean;
63
- loadRenderer(kind: string): Promise<RendererModule>;
64
- loadEditor(kind: string): Promise<EditorModule>;
65
- loadExporters(kind: string): Promise<AnyArtifactExporter[]>;
65
+ hasRenderer(format: string): boolean;
66
+ hasEditor(format: string): boolean;
67
+ hasExporters(format: string): boolean;
68
+ loadRenderer(format: string): Promise<RendererModule>;
69
+ loadEditor(format: string): Promise<EditorModule>;
70
+ loadExporters(format: string): Promise<AnyArtifactExporter[]>;
66
71
  /** Forgets a failed load so it can be retried. */
67
- resetLoad(type: 'renderer' | 'editor' | 'exporters', kind: string): void;
72
+ resetLoad(type: 'renderer' | 'editor' | 'exporters', format: string): void;
68
73
  nonce?: string;
69
74
  }
70
75