Skip to content

Commit 3586cab

Browse files
committed
[sveltekit] Add support for modern ID Builder
1 parent 3b3b858 commit 3586cab

File tree

3 files changed

+7
-4
lines changed

3 files changed

+7
-4
lines changed

.changeset/afraid-baths-relate.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
"@sjsf/sveltekit": minor
2+
"@sjsf/sveltekit": major
33
---
44

55
Add support for `modern` ID Builder

packages/sveltekit/src/lib/server/schema-value-parser.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ import {
2828
type UiSchemaDefinition,
2929
type UiSchemaRoot
3030
} from '@sjsf/form';
31-
import { DEFAULT_INDEX_SEPARATOR } from '@sjsf/form/id-builders/modern';
3231

3332
import type { Entries, EntriesConverter, Entry } from './entry.js';
3433

@@ -38,11 +37,11 @@ export interface SchemaValueParserOptions<T> {
3837
entries: Entries<T>;
3938
idPrefix: string;
4039
idSeparator: string;
40+
idIndexSeparator: string;
4141
idPseudoSeparator: string;
4242
validator: Validator;
4343
merger: Merger;
4444
convertEntries: EntriesConverter<T>;
45-
idIndexSeparator?: string;
4645
}
4746

4847
const KNOWN_PROPERTIES = Symbol('known-properties');
@@ -63,7 +62,7 @@ export function parseSchemaValue<T>(
6362
uiSchema: rootUiSchema,
6463
validator,
6564
merger,
66-
idIndexSeparator = DEFAULT_INDEX_SEPARATOR
65+
idIndexSeparator
6766
}: SchemaValueParserOptions<T>
6867
) {
6968
if (entries.length === 0) {

packages/sveltekit/src/lib/server/server.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import {
2323
DEFAULT_ID_PSEUDO_SEPARATOR,
2424
createFormIdBuilder
2525
} from '@sjsf/form/id-builders/legacy';
26+
import { DEFAULT_INDEX_SEPARATOR } from '@sjsf/form/id-builders/modern';
2627

2728
import {
2829
FORM_DATA_FILE_PREFIX,
@@ -68,6 +69,7 @@ export interface FormHandlerOptions<SendData extends boolean> extends IdOptions
6869
schema: Schema;
6970
uiSchema?: UiSchemaRoot;
7071
uiOptionsRegistry?: UiOptionsRegistry;
72+
idIndexSeparator?: string
7173
validator: Creatable<Validator, ValidatorFactoryOptions>;
7274
merger: Creatable<FormMerger, MergerFactoryOptions>;
7375
createEntriesConverter?: Creatable<
@@ -100,6 +102,7 @@ export function createFormHandler<SendData extends boolean>({
100102
convertUnknownEntry,
101103
idPrefix = DEFAULT_ID_PREFIX,
102104
idSeparator = DEFAULT_ID_SEPARATOR,
105+
idIndexSeparator = DEFAULT_INDEX_SEPARATOR,
103106
idPseudoSeparator = DEFAULT_ID_PSEUDO_SEPARATOR,
104107
sendData,
105108
createReviver = createDefaultReviver
@@ -138,6 +141,7 @@ export function createFormHandler<SendData extends boolean>({
138141
: await parseSchemaValue(signal, {
139142
idPrefix,
140143
idSeparator,
144+
idIndexSeparator,
141145
idPseudoSeparator,
142146
schema,
143147
uiSchema,

0 commit comments

Comments
 (0)