rimecms 0.30.2 → 0.31.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 (191) hide show
  1. package/README.md +2 -40
  2. package/dist/.rime-modules.d.ts +23 -0
  3. package/dist/.rime-modules.json +1 -0
  4. package/dist/adapter-sqlite/generate-schema/column.server.js +1 -4
  5. package/dist/adapter-sqlite/generate-schema/write.server.js +7 -9
  6. package/dist/core/areas/config/builder.server.d.ts +0 -1
  7. package/dist/core/collections/auth/hooks/before-upsert/augment-fields-password.server.d.ts +1 -1
  8. package/dist/core/collections/config/builder.server.d.ts +0 -1
  9. package/dist/core/collections/upload/hooks/convert-base64.server.d.ts +1 -1
  10. package/dist/core/collections/upload/hooks/extract-path.server.d.ts +1 -1
  11. package/dist/core/collections/upload/hooks/handle-path-creation.server.d.ts +1 -1
  12. package/dist/core/collections/upload/hooks/process-file-upload.server.d.ts +1 -1
  13. package/dist/core/config/auth/better-auth-hooks.server.js +6 -3
  14. package/dist/core/config/auth/better-auth.server.d.ts +3 -3
  15. package/dist/core/config/client/augment-plugins.d.ts +1 -5
  16. package/dist/core/config/client/augment-plugins.js +3 -3
  17. package/dist/core/config/client/build-config.d.ts +1 -5
  18. package/dist/core/config/config-context.server.d.ts +1 -1
  19. package/dist/core/config/server/augment-plugins.server.d.ts +2 -42
  20. package/dist/core/config/server/augment-plugins.server.js +11 -6
  21. package/dist/core/config/server/build-config.server.d.ts +9 -4007
  22. package/dist/core/config/types.d.ts +12 -11
  23. package/dist/core/dev/cache/index.server.js +1 -1
  24. package/dist/core/dev/cli/build/index.d.ts +1 -0
  25. package/dist/core/dev/cli/build/index.js +10 -5
  26. package/dist/core/dev/cli/build/templates.d.ts +1 -1
  27. package/dist/core/dev/cli/build/templates.js +10 -7
  28. package/dist/core/dev/cli/clear/index.server.js +2 -0
  29. package/dist/core/dev/cli/generate-manifest/index.server.d.ts +17 -0
  30. package/dist/core/dev/cli/generate-manifest/index.server.js +221 -0
  31. package/dist/core/dev/cli/index.js +43 -0
  32. package/dist/core/dev/cli/init/index.server.js +13 -6
  33. package/dist/core/dev/cli/init/templates.d.ts +1 -1
  34. package/dist/core/dev/cli/init/templates.js +13 -4
  35. package/dist/core/dev/cli/util/package-manager.server.js +29 -26
  36. package/dist/core/dev/constants.d.ts +21 -2
  37. package/dist/core/dev/constants.js +26 -0
  38. package/dist/core/dev/generate/routes/common.server.js +4 -7
  39. package/dist/core/dev/generate/routes/index.server.js +25 -4
  40. package/dist/core/dev/generate/runtime/index.server.d.ts +40 -0
  41. package/dist/core/dev/generate/runtime/index.server.js +85 -0
  42. package/dist/core/dev/generate/runtime/parse-exports.server.d.ts +7 -0
  43. package/dist/core/dev/generate/runtime/parse-exports.server.js +40 -0
  44. package/dist/core/dev/generate/sanitize/index.server.d.ts +0 -7
  45. package/dist/core/dev/generate/sanitize/index.server.js +57 -5
  46. package/dist/core/dev/generate/types/index.server.js +21 -20
  47. package/dist/core/dev/vite/index.server.js +227 -33
  48. package/dist/core/ensure.server.d.ts +4 -3
  49. package/dist/core/ensure.server.js +8 -8
  50. package/dist/core/fields/builders/boolean-builder.d.ts +1 -2
  51. package/dist/core/fields/builders/field-builder.d.ts +11 -6
  52. package/dist/core/fields/builders/field-builder.js +12 -5
  53. package/dist/core/fields/builders/form-field-builder.d.ts +11 -14
  54. package/dist/core/fields/builders/form-field-builder.js +17 -15
  55. package/dist/core/fields/util.js +1 -1
  56. package/dist/core/handlers/index.js +2 -2
  57. package/dist/core/operations/blocks/extract.server.js +1 -1
  58. package/dist/core/operations/hooks/before-read/process-document-fields.server.js +3 -3
  59. package/dist/core/operations/hooks/before-upsert/data-config-map.server.d.ts +1 -1
  60. package/dist/core/operations/hooks/before-upsert/handle-new-version.server.d.ts +1 -1
  61. package/dist/core/operations/hooks/before-upsert/original-config-map.server.d.ts +1 -1
  62. package/dist/core/operations/hooks/before-upsert/set-default-values.server.d.ts +1 -1
  63. package/dist/core/operations/hooks/before-upsert/set-default-values.server.js +3 -3
  64. package/dist/core/operations/hooks/before-upsert/validate-fields.server.d.ts +1 -1
  65. package/dist/core/operations/hooks/before-upsert/validate-fields.server.js +7 -7
  66. package/dist/core/operations/hooks/index.server.d.ts +0 -4
  67. package/dist/core/operations/hooks/index.server.js +0 -4
  68. package/dist/core/operations/shared/fallback-data-from-original.js +1 -1
  69. package/dist/core/operations/tree/extract.server.js +1 -1
  70. package/dist/core/plugins/api-init/index.d.ts +2 -0
  71. package/dist/core/plugins/api-init/index.js +1 -0
  72. package/dist/core/plugins/api-init/{index.server.d.ts → module.server.d.ts} +0 -1
  73. package/dist/core/plugins/api-init/{index.server.js → module.server.js} +2 -3
  74. package/dist/core/plugins/cache/index.d.ts +2 -5
  75. package/dist/core/plugins/cache/index.js +1 -21
  76. package/dist/core/plugins/cache/module.d.ts +4 -0
  77. package/dist/core/plugins/cache/module.js +22 -0
  78. package/dist/core/plugins/cache/{index.server.d.ts → module.server.d.ts} +1 -2
  79. package/dist/core/plugins/cache/{index.server.js → module.server.js} +0 -1
  80. package/dist/core/plugins/index.d.ts +1 -8
  81. package/dist/core/plugins/index.js +0 -3
  82. package/dist/core/plugins/mailer/index.d.ts +2 -0
  83. package/dist/core/plugins/mailer/index.js +1 -0
  84. package/dist/core/plugins/mailer/{index.server.d.ts → module.server.d.ts} +0 -1
  85. package/dist/core/plugins/mailer/{index.server.js → module.server.js} +0 -1
  86. package/dist/core/plugins/sse/index.d.ts +2 -0
  87. package/dist/core/plugins/sse/index.js +1 -0
  88. package/dist/core/plugins/sse/{index.server.d.ts → module.server.d.ts} +0 -1
  89. package/dist/core/plugins/sse/{index.server.js → module.server.js} +0 -1
  90. package/dist/core/rime.server.d.ts +16 -16
  91. package/dist/fields/blocks/index.d.ts +1 -1
  92. package/dist/fields/blocks/index.js +5 -2
  93. package/dist/fields/checkbox/index.d.ts +1 -1
  94. package/dist/fields/checkbox/index.js +3 -2
  95. package/dist/fields/combobox/index.d.ts +1 -1
  96. package/dist/fields/combobox/index.js +4 -2
  97. package/dist/fields/date/index.d.ts +2 -2
  98. package/dist/fields/date/index.js +7 -5
  99. package/dist/fields/email/index.d.ts +3 -3
  100. package/dist/fields/email/index.js +9 -8
  101. package/dist/fields/group/component/Group.svelte +1 -1
  102. package/dist/fields/group/index.d.ts +1 -1
  103. package/dist/fields/group/index.js +4 -2
  104. package/dist/fields/link/index.d.ts +1 -1
  105. package/dist/fields/link/index.js +63 -56
  106. package/dist/fields/link/module.server.d.ts +2 -0
  107. package/dist/fields/link/{runtime.server.js → module.server.js} +0 -8
  108. package/dist/fields/number/index.d.ts +1 -1
  109. package/dist/fields/number/index.js +3 -2
  110. package/dist/fields/radio/index.d.ts +1 -1
  111. package/dist/fields/radio/index.js +4 -2
  112. package/dist/fields/relation/index.d.ts +2 -6
  113. package/dist/fields/relation/index.js +64 -75
  114. package/dist/fields/relation/{runtime.d.ts → module.d.ts} +2 -2
  115. package/dist/fields/relation/module.js +4 -0
  116. package/dist/fields/relation/module.server.d.ts +5 -0
  117. package/dist/fields/relation/{runtime.server.js → module.server.js} +3 -6
  118. package/dist/fields/rich-text/index.d.ts +1 -1
  119. package/dist/fields/rich-text/index.js +3 -2
  120. package/dist/fields/select/index.d.ts +1 -1
  121. package/dist/fields/select/index.js +4 -1
  122. package/dist/fields/slug/index.d.ts +1 -1
  123. package/dist/fields/slug/index.js +3 -2
  124. package/dist/fields/tabs/index.d.ts +1 -1
  125. package/dist/fields/tabs/index.js +10 -2
  126. package/dist/fields/text/index.d.ts +1 -1
  127. package/dist/fields/text/index.js +3 -2
  128. package/dist/fields/textarea/index.d.ts +1 -1
  129. package/dist/fields/textarea/index.js +3 -2
  130. package/dist/fields/time/index.d.ts +1 -1
  131. package/dist/fields/time/index.js +3 -2
  132. package/dist/fields/toggle/index.d.ts +1 -1
  133. package/dist/fields/toggle/index.js +3 -3
  134. package/dist/fields/tree/index.d.ts +1 -1
  135. package/dist/fields/tree/index.js +4 -2
  136. package/dist/index.d.ts +3 -3
  137. package/dist/index.js +3 -3
  138. package/dist/panel/components/fields/RenderFields.svelte +1 -1
  139. package/dist/panel/context/collection.svelte.js +5 -3
  140. package/dist/panel/context/config.svelte.d.ts +2 -2
  141. package/dist/panel/context/documentForm.svelte.d.ts +2 -2
  142. package/dist/panel/context/documentForm.svelte.js +47 -28
  143. package/dist/panel/context/form.svelte.js +3 -3
  144. package/dist/panel/context/live.svelte.js +1 -1
  145. package/dist/panel/pages/auth/sign-in/SignIn.svelte +6 -1
  146. package/dist/server.d.ts +4 -4
  147. package/dist/server.js +4 -4
  148. package/dist/types.d.ts +1 -1
  149. package/dist/util/doc.js +1 -1
  150. package/package.json +2 -9
  151. package/dist/fields/blocks/index.server.d.ts +0 -3
  152. package/dist/fields/blocks/index.server.js +0 -5
  153. package/dist/fields/checkbox/index.server.d.ts +0 -3
  154. package/dist/fields/checkbox/index.server.js +0 -3
  155. package/dist/fields/combobox/index.server.d.ts +0 -3
  156. package/dist/fields/combobox/index.server.js +0 -4
  157. package/dist/fields/date/index.server.d.ts +0 -3
  158. package/dist/fields/date/index.server.js +0 -3
  159. package/dist/fields/email/index.server.d.ts +0 -4
  160. package/dist/fields/email/index.server.js +0 -3
  161. package/dist/fields/group/index.server.d.ts +0 -2
  162. package/dist/fields/group/index.server.js +0 -12
  163. package/dist/fields/index.server.d.ts +0 -14
  164. package/dist/fields/index.server.js +0 -65
  165. package/dist/fields/link/runtime.server.d.ts +0 -5
  166. package/dist/fields/number/index.server.d.ts +0 -3
  167. package/dist/fields/number/index.server.js +0 -3
  168. package/dist/fields/radio/index.server.d.ts +0 -3
  169. package/dist/fields/radio/index.server.js +0 -4
  170. package/dist/fields/relation/runtime.js +0 -4
  171. package/dist/fields/relation/runtime.server.d.ts +0 -8
  172. package/dist/fields/rich-text/index.server.d.ts +0 -3
  173. package/dist/fields/rich-text/index.server.js +0 -3
  174. package/dist/fields/select/index.server.d.ts +0 -3
  175. package/dist/fields/select/index.server.js +0 -4
  176. package/dist/fields/slug/index.server.d.ts +0 -3
  177. package/dist/fields/slug/index.server.js +0 -3
  178. package/dist/fields/tabs/index.server.d.ts +0 -3
  179. package/dist/fields/tabs/index.server.js +0 -18
  180. package/dist/fields/text/index.server.d.ts +0 -3
  181. package/dist/fields/text/index.server.js +0 -3
  182. package/dist/fields/textarea/index.server.d.ts +0 -3
  183. package/dist/fields/textarea/index.server.js +0 -3
  184. package/dist/fields/time/index.server.d.ts +0 -3
  185. package/dist/fields/time/index.server.js +0 -3
  186. package/dist/fields/toggle/index.server.d.ts +0 -3
  187. package/dist/fields/toggle/index.server.js +0 -3
  188. package/dist/fields/tree/index.server.d.ts +0 -3
  189. package/dist/fields/tree/index.server.js +0 -4
  190. /package/dist/fields/link/{runtime.d.ts → module.d.ts} +0 -0
  191. /package/dist/fields/link/{runtime.js → module.js} +0 -0
package/dist/server.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import handlers from './core/handlers/index.js';
2
2
  import { registerTranslation } from './core/i18n/register.server.js';
3
- import { apiInit } from './core/plugins/api-init/index.server.js';
4
- import { cache } from './core/plugins/cache/index.server.js';
5
- import { mailer } from './core/plugins/mailer/index.server.js';
6
- import { sse } from './core/plugins/sse/index.server.js';
3
+ import { apiInit } from './core/plugins/api-init/index.js';
4
+ import { cache } from './core/plugins/cache/index.js';
5
+ import { mailer } from './core/plugins/mailer/index.js';
6
+ import { sse } from './core/plugins/sse/index.js';
7
7
  export { apiInit, cache, handlers, mailer, registerTranslation, sse };
package/dist/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export type { User } from './core/collections/auth/types.js';
2
- export type { AdditionalStaffConfig, Area, AreaHooks, BuiltArea, BuiltCollection, BuiltConfig, BuiltConfigClient, Collection, CollectionHooks, Config, CustomPanelRoute, ImageSizesConfig, LocaleConfig, LocalizationConfig, RouteConfig } from './core/config/types.js';
2
+ export type { AdditionalStaffConfig, Area, AreaHooks, BuiltArea, BuiltAreaClient, BuiltCollection, BuiltCollectionClient, BuiltConfig, BuiltConfigClient, Collection, CollectionHooks, Config, CustomPanelRoute, ImageSizesConfig, LocaleConfig, LocalizationConfig, RouteConfig, SanitizedConfigClient } from './core/config/types.js';
3
3
  export type { AreaSlug, BaseDoc, CollectionSlug, GenericBlock, GenericDoc, Prototype, PrototypeSlug, UploadDoc } from './core/types/doc.js';
4
4
  export type * from './fields/types.js';
5
5
  export type { CollectionProps, FieldPanelTableConfig, FormErrors, Navigation, Route } from './panel/types.js';
package/dist/util/doc.js CHANGED
@@ -38,7 +38,7 @@ export const createBlankDocument = (config, event) => {
38
38
  // than assigned `prev['']` (they never got a real name) — that used
39
39
  // to corrupt the parent object into looking array-like once
40
40
  // flattened/unflattened.
41
- const defaultValue = curr.run.defaultValue({ event });
41
+ const defaultValue = curr.use.defaultValue({ event });
42
42
  prev[curr.name] = defaultValue !== undefined ? defaultValue : null;
43
43
  }
44
44
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rimecms",
3
- "version": "0.30.2",
3
+ "version": "0.31.0",
4
4
  "homepage": "https://github.com/bienbiendev/rime",
5
5
  "scripts": {
6
6
  "dev": "vite dev",
@@ -8,7 +8,7 @@
8
8
  "build:css": "postcss dist/**/*.css --replace --config ./postcss.config.cjs",
9
9
  "rime:use": "bun ./src/scripts/useConfig.js",
10
10
  "preview": "vite preview",
11
- "package": "bun ./src/lib/core/dev/cli/index.ts clear --force && svelte-kit sync && svelte-package && publint",
11
+ "package": "bun ./src/lib/core/dev/cli/index.ts clear --force && bun ./src/lib/core/dev/cli/index.ts package && publint",
12
12
  "prepublishOnly": "rm -fr src/lib/site && npm run package && pnpm build:css",
13
13
  "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
14
14
  "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
@@ -179,18 +179,11 @@
179
179
  "magic-string-ast": "^1.0.2",
180
180
  "nodemailer": "^8.0.5",
181
181
  "paneforge": "^1.0.2",
182
- "polka": "^0.5.2",
183
182
  "postcss-import": "^16.1.1",
184
183
  "qs": "^6.14.0",
185
184
  "runed": "^0.37.1",
186
185
  "sharp": "^0.35.3",
187
186
  "sortablejs": "^1.15.6",
188
187
  "svelte-sonner": "^1.0.5"
189
- },
190
- "pnpm": {
191
- "onlyBuiltDependencies": [
192
- "sharp",
193
- "esbuild"
194
- ]
195
188
  }
196
189
  }
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { BlocksBuilder } from './index.js';
3
- export declare const toType: ToType<BlocksBuilder>;
@@ -1,5 +0,0 @@
1
- import { toPascalCase } from '../../util/string.js';
2
- export const toType = (field) => {
3
- const blockNames = field.get.blocks.map((block) => `Block${toPascalCase(block.name)}`);
4
- return `${field.name}: Array<${blockNames.join(' | ')}>,`;
5
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { CheckboxFieldBuilder } from './index.js';
3
- export declare const toType: ToType<CheckboxFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}: boolean`;
3
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { ComboBoxFieldBuilder } from './index.js';
3
- export declare const toType: ToType<ComboBoxFieldBuilder>;
@@ -1,4 +0,0 @@
1
- export const toType = (field) => {
2
- const optionsJoinedType = field.get.options.map((o) => `'${o.value}'`).join(' | ');
3
- return `${field.name}${field.get.required ? '' : '?'}: ${optionsJoinedType}`;
4
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { DateFieldBuilder } from './index.ts';
3
- export declare const toType: ToType<DateFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}${field.get.required ? '' : '?'}: Date`;
3
- };
@@ -1,4 +0,0 @@
1
- export declare function toType(args: {
2
- name: string;
3
- required: boolean;
4
- }): string;
@@ -1,3 +0,0 @@
1
- export function toType(args) {
2
- return `${args.name}${args.required ? '' : '?'}: string`;
3
- }
@@ -1,2 +0,0 @@
1
- import type { GroupFieldBuilder } from './index.js';
2
- export declare function toType(group: GroupFieldBuilder): Promise<string>;
@@ -1,12 +0,0 @@
1
- import { getFieldPrivateModule } from '../index.server.js';
2
- export async function toType(group) {
3
- const fieldsTypes = [];
4
- for (const field of group.get.fields) {
5
- const fieldServerMethods = await getFieldPrivateModule(field);
6
- if (fieldServerMethods) {
7
- const result = await Promise.resolve(fieldServerMethods.toType(field));
8
- fieldsTypes.push(result);
9
- }
10
- }
11
- return group.get.fields.length ? `${group.name}: {${fieldsTypes.join(',\n\t')}}` : '';
12
- }
@@ -1,14 +0,0 @@
1
- import type { FieldBuilder } from '../core/fields/builders/field-builder.js';
2
- export type ToType<T extends FieldBuilder<any> = FieldBuilder<any>> = (field: T) => Promise<string> | string;
3
- /**
4
- * Dynamically imports the server-side module for a form field if it exists
5
- * Returns the imported module or false if no server module is found or import fails
6
- * @example
7
- * const serverModule = await getFieldPrivateModule(fieldBuilder);
8
- * if (serverModule) {
9
- * serverModule.toType(fieldBuilder)
10
- * }
11
- */
12
- export declare function getFieldPrivateModule(field: FieldBuilder<any>): Promise<{
13
- toType: ToType;
14
- } | null>;
@@ -1,65 +0,0 @@
1
- import { existsSync } from 'fs';
2
- import { fileURLToPath } from 'node:url';
3
- import { dirname, extname, join } from 'path';
4
- /**
5
- * Converts a file URL to its corresponding server module path and checks if the file exists.
6
- * Prefers a sibling `runtime.server.ts` (the generic per-field server-only file, also used to
7
- * resolve `$rime/runtime` — see relation/ for the first user), falling back to the older
8
- * `<basename>.server.ts` convention most fields still use. Tries both .ts and .js extensions
9
- * either way.
10
- * @example
11
- * convertToServerModulePath('file:///path/to/relation/index.ts') // '/path/to/relation/runtime.server.ts'
12
- * convertToServerModulePath('file:///path/to/text/index.ts') // '/path/to/text/index.server.ts'
13
- */
14
- function convertToServerModulePath(metaUrl) {
15
- try {
16
- // Convert file:// URL to file path
17
- const filePath = fileURLToPath(metaUrl);
18
- const dir = dirname(filePath);
19
- // Get the filename without extension
20
- const baseName = filePath.replace(extname(filePath), '');
21
- const candidates = [join(dir, 'runtime.server'), `${baseName}.server`];
22
- for (const candidate of candidates) {
23
- for (const ext of ['.ts', '.js']) {
24
- const fullPath = `${candidate}${ext}`;
25
- if (existsSync(fullPath)) {
26
- return fullPath;
27
- }
28
- }
29
- }
30
- return null;
31
- }
32
- catch (error) {
33
- console.error('Error converting metaUrl to server module path:', error);
34
- return null;
35
- }
36
- }
37
- /**
38
- * Dynamically imports the server-side module for a form field if it exists
39
- * Returns the imported module or false if no server module is found or import fails
40
- * @example
41
- * const serverModule = await getFieldPrivateModule(fieldBuilder);
42
- * if (serverModule) {
43
- * serverModule.toType(fieldBuilder)
44
- * }
45
- */
46
- export async function getFieldPrivateModule(field) {
47
- if (field._metaUrl) {
48
- const serverModulePath = convertToServerModulePath(field._metaUrl);
49
- if (serverModulePath) {
50
- try {
51
- const serverField = await import(/* @vite-ignore */ serverModulePath);
52
- return serverField;
53
- }
54
- catch (error) {
55
- console.error('Error importing server module:', error);
56
- return null;
57
- }
58
- }
59
- else {
60
- console.warn('Server module not found for:', field._metaUrl);
61
- return null;
62
- }
63
- }
64
- return null;
65
- }
@@ -1,5 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { FieldHook, LinkField } from '../types.js';
3
- import type { LinkFieldBuilder } from './index.js';
4
- export declare const toType: ToType<LinkFieldBuilder>;
5
- export declare const populateRessourceURL: FieldHook<LinkField>;
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { NumberFieldBuilder } from './index.js';
3
- export declare const toType: ToType<NumberFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}${field.get.required ? '' : '?'}: number`;
3
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { RadioFieldBuilder } from './index.js';
3
- export declare const toType: ToType<RadioFieldBuilder>;
@@ -1,4 +0,0 @@
1
- export const toType = (field) => {
2
- const optionsString = field.get.options.map((option) => `'${option.value}'`).join(' | ');
3
- return `${field.name}${field.get.required ? '' : '?'}: ${optionsString}`;
4
- };
@@ -1,4 +0,0 @@
1
- /** Client-side no-op — resolved via `$rime/runtime` when bundling for the browser (see
2
- * relation/index.ts). The panel never needs to validate a relation actually exists;
3
- * the real check (relation/runtime.server.ts) runs server-side before any write lands. */
4
- export const ensureRelationExists = async (value) => value;
@@ -1,8 +0,0 @@
1
- import type { FieldHookShared } from '../types.js';
2
- import type { ToType } from '../index.server.js';
3
- import type { RelationFieldBuilder } from './index.js';
4
- export declare const toType: ToType<RelationFieldBuilder<any>>;
5
- /** Real implementation — resolved server-side via `$rime/runtime` (see relation/index.ts,
6
- * relation/runtime.ts for the client-side no-op counterpart). Uses a plain static import of
7
- * `$app/server`, which SvelteKit's build blocks from ever reaching client code. */
8
- export declare const ensureRelationExists: FieldHookShared;
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { RichTextFieldBuilder } from './index.js';
3
- export declare const toType: ToType<RichTextFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}${field.get.required ? '' : '?'}: import('@tiptap/core').JSONContent`;
3
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { SelectFieldBuilder } from './index.js';
3
- export declare const toType: ToType<SelectFieldBuilder>;
@@ -1,4 +0,0 @@
1
- export const toType = (field) => {
2
- const optionsJoinedType = field.get.options.map((o) => `'${o.value}'`).join(' | ');
3
- return `${field.name}${field.get.required ? '' : '?'}: (${optionsJoinedType})${field.get.many ? '[]' : ''}`;
4
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { SlugFieldBuilder } from './index.js';
3
- export declare const toType: ToType<SlugFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}${field.get.required ? '' : '?'}: string`;
3
- };
@@ -1,3 +0,0 @@
1
- import { type ToType } from '../index.server.js';
2
- import type { TabsBuilder } from './index.js';
3
- export declare const toType: ToType<TabsBuilder>;
@@ -1,18 +0,0 @@
1
- import { getFieldPrivateModule } from '../index.server.js';
2
- export const toType = async (field) => {
3
- const types = [];
4
- for (const tab of field.get.tabs) {
5
- const fieldsTypes = [];
6
- for (const field of tab.get.fields) {
7
- const fieldServerMethods = await getFieldPrivateModule(field);
8
- if (fieldServerMethods) {
9
- const result = await Promise.resolve(fieldServerMethods.toType(field));
10
- fieldsTypes.push(result);
11
- }
12
- }
13
- if (fieldsTypes.length) {
14
- types.push(`${tab.name}: {${fieldsTypes.join(',\n\t\t')}}`);
15
- }
16
- }
17
- return types.length ? types.join(',\n\t').replaceAll(',,', ',') : '';
18
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { TextFieldBuilder } from './index.js';
3
- export declare const toType: ToType<TextFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}${field.get.required ? '' : '?'}: string`;
3
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { TextAreaFieldBuilder } from './index.js';
3
- export declare const toType: ToType<TextAreaFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}${field.get.required ? '' : '?'}: string`;
3
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { TimeFieldBuilder } from './index.js';
3
- export declare const toType: ToType<TimeFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}${!field.get.required ? '?' : ''}: string`;
3
- };
@@ -1,3 +0,0 @@
1
- import type { ToType } from '../index.server.js';
2
- import type { ToggleFieldBuilder } from './index.js';
3
- export declare const toType: ToType<ToggleFieldBuilder>;
@@ -1,3 +0,0 @@
1
- export const toType = (field) => {
2
- return `${field.name}${field.get.required ? '?' : ''}: boolean`;
3
- };
@@ -1,3 +0,0 @@
1
- import type { TreeBuilder } from './index.js';
2
- import type { ToType } from '../index.server.js';
3
- export declare const toType: ToType<TreeBuilder>;
@@ -1,4 +0,0 @@
1
- import { toPascalCase } from '../../util/string.js';
2
- export const toType = (field) => {
3
- return `${field.name}: Array<Tree${toPascalCase(field.name)}>,`;
4
- };
File without changes
File without changes