@koumoul/vjsf 3.22.2 → 3.23.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koumoul/vjsf",
3
- "version": "3.22.2",
3
+ "version": "3.23.1",
4
4
  "description": "Generate forms for the vuetify UI library (vuejs) based on annotated JSON schemas.",
5
5
  "scripts": {
6
6
  "test-tz1": "TZ=Europe/Paris vitest run",
@@ -143,6 +143,17 @@ const pushEmptyIndexedItem = () => {
143
143
  newKeyForm.value?.reset()
144
144
  }
145
145
 
146
+ /**
147
+ * @param {number} childIndex
148
+ */
149
+ const clickDeleteItem = (childIndex) => {
150
+ if (options.value.confirmDeleteItem) {
151
+ preparedDelete.value = true
152
+ } else {
153
+ deleteItem(childIndex)
154
+ }
155
+ }
156
+
146
157
  /**
147
158
  * @param {number} childIndex
148
159
  */
@@ -270,7 +281,7 @@ const indexedListRules = computed(() => {
270
281
  style="visibility:hidden"
271
282
  variant="text"
272
283
  :density="buttonDensity"
273
- :icon="statefulLayout.options.icons.edit"
284
+ :icon="options.icons.edit"
274
285
  :disabled="modelValue.loading"
275
286
  />
276
287
  </v-list-item-action>
@@ -279,7 +290,7 @@ const indexedListRules = computed(() => {
279
290
  >
280
291
  <v-btn
281
292
  :title="modelValue.messages.close"
282
- :icon="statefulLayout.options.icons.edit"
293
+ :icon="options.icons.edit"
283
294
  variant="flat"
284
295
  color="primary"
285
296
  :density="buttonDensity"
@@ -292,7 +303,7 @@ const indexedListRules = computed(() => {
292
303
  >
293
304
  <v-btn
294
305
  :title="modelValue.messages.sort"
295
- :icon="statefulLayout.options.icons.sort"
306
+ :icon="options.icons.sort"
296
307
  variant="flat"
297
308
  color="primary"
298
309
  :density="buttonDensity"
@@ -314,7 +325,7 @@ const indexedListRules = computed(() => {
314
325
  <template #activator="{props: activatorProps}">
315
326
  <v-btn
316
327
  v-bind="activatorProps"
317
- :icon="statefulLayout.options.icons.menu"
328
+ :icon="options.icons.menu"
318
329
  variant="plain"
319
330
  slim
320
331
  :disabled="modelValue.loading"
@@ -341,7 +352,7 @@ const indexedListRules = computed(() => {
341
352
  @click="statefulLayout.activateItem(modelValue, childIndex);"
342
353
  >
343
354
  <template #prepend>
344
- <v-icon :icon="statefulLayout.options.icons.edit" />
355
+ <v-icon :icon="options.icons.edit" />
345
356
  </template>
346
357
  {{ modelValue.messages.edit }}
347
358
  </v-list-item>
@@ -364,7 +375,7 @@ const indexedListRules = computed(() => {
364
375
  @click="statefulLayout.activateItem(modelValue, childIndex); menuOpened = -1"
365
376
  >
366
377
  <template #prepend>
367
- <v-icon :icon="statefulLayout.options.icons.edit" />
378
+ <v-icon :icon="options.icons.edit" />
368
379
  </template>
369
380
  {{ modelValue.messages.edit }}
370
381
  </v-list-item>
@@ -374,7 +385,7 @@ const indexedListRules = computed(() => {
374
385
  @click="duplicateItem(child, childIndex)"
375
386
  >
376
387
  <template #prepend>
377
- <v-icon :icon="statefulLayout.options.icons.duplicate" />
388
+ <v-icon :icon="options.icons.duplicate" />
378
389
  </template>
379
390
  {{ modelValue.messages.duplicate }}
380
391
  </v-list-item>
@@ -383,7 +394,7 @@ const indexedListRules = computed(() => {
383
394
  @click="copyItem(child)"
384
395
  >
385
396
  <template #prepend>
386
- <v-icon :icon="statefulLayout.options.icons.copy" />
397
+ <v-icon :icon="options.icons.copy" />
387
398
  </template>
388
399
  {{ modelValue.messages.copy }}
389
400
  </v-list-item>
@@ -393,7 +404,7 @@ const indexedListRules = computed(() => {
393
404
  @click="prepareDrag(childIndex)"
394
405
  >
395
406
  <template #prepend>
396
- <v-icon :icon="statefulLayout.options.icons.sort" />
407
+ <v-icon :icon="options.icons.sort" />
397
408
  </template>
398
409
  {{ modelValue.messages.sort }}
399
410
  </v-list-item>
@@ -403,7 +414,7 @@ const indexedListRules = computed(() => {
403
414
  @click="statefulLayout.input(modelValue, moveDataItem(modelValue.data, childIndex, childIndex - 1)); menuOpened = -1"
404
415
  >
405
416
  <template #prepend>
406
- <v-icon :icon="statefulLayout.options.icons.sortUp" />
417
+ <v-icon :icon="options.icons.sortUp" />
407
418
  </template>
408
419
  {{ modelValue.messages.up }}
409
420
  </v-list-item>
@@ -413,17 +424,17 @@ const indexedListRules = computed(() => {
413
424
  @click="statefulLayout.input(modelValue, moveDataItem(modelValue.data, childIndex, childIndex + 1)); menuOpened = -1"
414
425
  >
415
426
  <template #prepend>
416
- <v-icon :icon="statefulLayout.options.icons.sortDown" />
427
+ <v-icon :icon="options.icons.sortDown" />
417
428
  </template>
418
429
  {{ modelValue.messages.down }}
419
430
  </v-list-item>
420
431
  <v-list-item
421
432
  v-if="modelValue.layout.listActions.includes('delete')"
422
433
  base-color="warning"
423
- @click="preparedDelete = true"
434
+ @click="clickDeleteItem(childIndex)"
424
435
  >
425
436
  <template #prepend>
426
- <v-icon :icon="statefulLayout.options.icons.delete" />
437
+ <v-icon :icon="options.icons.delete" />
427
438
  </template>
428
439
  {{ modelValue.messages.delete }}
429
440
  </v-list-item>
@@ -477,7 +488,7 @@ const indexedListRules = computed(() => {
477
488
  <v-icon
478
489
  color="primary"
479
490
  size="large"
480
- :icon="statefulLayout.options.icons.add"
491
+ :icon="options.icons.add"
481
492
  @click="pushEmptyIndexedItem"
482
493
  />
483
494
  </template>
@@ -488,7 +499,7 @@ const indexedListRules = computed(() => {
488
499
  <v-btn
489
500
  v-if="modelValue.layout.listActions.includes('add')"
490
501
  color="primary"
491
- :prepend-icon="statefulLayout.options.icons.add"
502
+ :prepend-icon="options.icons.add"
492
503
  class="mr-2"
493
504
  @click="pushEmptyItem"
494
505
  >
@@ -497,7 +508,7 @@ const indexedListRules = computed(() => {
497
508
  <v-btn
498
509
  v-if="modelValue.layout.listActions.includes('paste') && clipboard !== null"
499
510
  color="primary"
500
- :prepend-icon="statefulLayout.options.icons.paste"
511
+ :prepend-icon="options.icons.paste"
501
512
  @click="pasteItem"
502
513
  >
503
514
  {{ modelValue.messages.paste }}
@@ -519,7 +530,7 @@ const indexedListRules = computed(() => {
519
530
  <v-spacer />
520
531
  <v-btn
521
532
  :title="modelValue.messages.close"
522
- :icon="statefulLayout.options.icons.close"
533
+ :icon="options.icons.close"
523
534
  variant="flat"
524
535
  density="comfortable"
525
536
  :disabled="modelValue.loading"
package/src/options.js CHANGED
@@ -22,7 +22,8 @@ export const defaultIcons = {
22
22
  export const defaultOptions = {
23
23
  nodeComponents: {},
24
24
  plugins: [],
25
- pluginsOptions: {}
25
+ pluginsOptions: {},
26
+ confirmDeleteItem: true
26
27
  }
27
28
 
28
29
  /**
@@ -25,4 +25,7 @@
25
25
  }
26
26
  .vjsf-node.vjsf-density-default.vjsf-has-help {
27
27
  padding-right: 42px!important;
28
+ }
29
+ .vjsf-help-message-tooltip p:not(:last-child) {
30
+ margin-bottom: 16px;
28
31
  }
package/src/types.ts CHANGED
@@ -66,6 +66,7 @@ export type VjsfStatefulLayoutOptions = Partial<StatefulLayoutOptions> & {
66
66
  plugins: Plugin[],
67
67
  pluginsOptions: Record<string, unknown>,
68
68
  icons: VjsfIcons
69
+ confirmDeleteItem: boolean
69
70
  }
70
71
 
71
72
  export type VjsfCompileOptions = Partial<CompileOptions> & {
@@ -4,6 +4,7 @@ export namespace defaultOptions {
4
4
  let nodeComponents: {};
5
5
  let plugins: never[];
6
6
  let pluginsOptions: {};
7
+ let confirmDeleteItem: boolean;
7
8
  }
8
9
  export function getFullOptions(options: Partial<import("./types.js").VjsfOptions> | null, form: any, width: number, locale: string, globalDefaults: Record<string, unknown> | undefined, slots: import("vue").Slots, defaultNodeComponents: Record<string, import('vue').Component>, onData: (data: any) => void, onUpdate: (statefulLayout: import('@json-layout/core').StatefulLayout) => void, onAutofocus: (key: string) => void): import("./types.js").VjsfOptions;
9
10
  //# sourceMappingURL=options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.js"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,2BADW,OAAO,YAAY,EAAE,SAAS,CAmBxC;;;;;;AAsBM,wCAZI,QAAQ,OAAO,YAAY,EAAE,WAAW,CAAC,GAAG,IAAI,QAChD,GAAG,SACH,MAAM,UACN,MAAM,kBACN,OAAO,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,SACnC,OAAO,KAAK,EAAE,KAAK,yBACnB,OAAO,MAAM,EAAE,OAAO,KAAK,EAAE,SAAS,CAAC,iBAChC,GAAG,KAAK,IAAI,6BACF,OAAO,mBAAmB,EAAE,cAAc,KAAK,IAAI,qBAC9D,MAAM,KAAK,IAAI,oCAgC/B"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.js"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,2BADW,OAAO,YAAY,EAAE,SAAS,CAmBxC;;;;;;;AAuBM,wCAZI,QAAQ,OAAO,YAAY,EAAE,WAAW,CAAC,GAAG,IAAI,QAChD,GAAG,SACH,MAAM,UACN,MAAM,kBACN,OAAO,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,SACnC,OAAO,KAAK,EAAE,KAAK,yBACnB,OAAO,MAAM,EAAE,OAAO,KAAK,EAAE,SAAS,CAAC,iBAChC,GAAG,KAAK,IAAI,6BACF,OAAO,mBAAmB,EAAE,cAAc,KAAK,IAAI,qBAC9D,MAAM,KAAK,IAAI,oCAgC/B"}
package/types/types.d.ts CHANGED
@@ -29,6 +29,7 @@ export type VjsfStatefulLayoutOptions = Partial<StatefulLayoutOptions> & {
29
29
  plugins: Plugin[];
30
30
  pluginsOptions: Record<string, unknown>;
31
31
  icons: VjsfIcons;
32
+ confirmDeleteItem: boolean;
32
33
  };
33
34
  export type VjsfCompileOptions = Partial<CompileOptions> & {
34
35
  pluginsImports: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}