@koumoul/vjsf 3.17.5 → 3.19.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koumoul/vjsf",
3
- "version": "3.17.5",
3
+ "version": "3.19.0",
4
4
  "description": "Generate forms for the vuetify UI library (vuejs) based on annotated JSON schemas.",
5
5
  "scripts": {
6
6
  "test": "vitest run",
@@ -71,8 +71,8 @@
71
71
  "vuetify": "^3.8.12"
72
72
  },
73
73
  "dependencies": {
74
- "@json-layout/core": "~1.12.5",
75
- "@json-layout/vocabulary": "~2.6.0",
74
+ "@json-layout/core": "~1.14.0",
75
+ "@json-layout/vocabulary": "~2.8.0",
76
76
  "@vueuse/core": "^12.5.0",
77
77
  "debug": "^4.3.4"
78
78
  },
@@ -24,7 +24,17 @@ const props = defineProps({
24
24
  /** @type import('vue').PropType<string | null> */
25
25
  type: String,
26
26
  default: null
27
- }
27
+ },
28
+ minWidth: {
29
+ /** @type import('vue').PropType<string> */
30
+ type: String,
31
+ default: '328px',
32
+ },
33
+ maxWidth: {
34
+ /** @type import('vue').PropType<string> */
35
+ type: String,
36
+ default: '328px',
37
+ },
28
38
  })
29
39
 
30
40
  const emits = defineEmits(['blur'])
@@ -47,6 +57,8 @@ const fieldProps = computed(() => {
47
57
  const menuProps = computed(() => {
48
58
  return {
49
59
  ...compProps.value,
60
+ minWidth: props.minWidth,
61
+ maxWidth: props.maxWidth,
50
62
  zIndex: 3000, // vuetify zIndex stacking is buggy (for example https://github.com/vuetifyjs/vuetify/issues/16251)
51
63
  closeOnContentClick: false,
52
64
  disabled: true
@@ -98,6 +98,13 @@ if (props.modelValue.layout.comp !== 'none' && !props.modelValue.slots?.componen
98
98
  :node="modelValue"
99
99
  :stateful-layout="statefulLayout"
100
100
  />
101
+ <node-slot
102
+ v-else-if="modelValue.slots?.compositeComponent"
103
+ key="compositeComponent"
104
+ :layout-slot="modelValue.slots?.compositeComponent"
105
+ :node="modelValue"
106
+ :stateful-layout="statefulLayout"
107
+ />
101
108
  <component
102
109
  :is="props.statefulLayout.options.nodeComponents[modelValue.layout.comp]"
103
110
  v-else
@@ -27,11 +27,19 @@ const colorPickerProps = computed(() => {
27
27
  colorPickerProps.modelValue = localData.value
28
28
  return colorPickerProps
29
29
  })
30
+
31
+ const menuProps = computed(() => {
32
+ return {
33
+ minWidth: '300px',
34
+ maxWidth: '300px',
35
+ }
36
+ })
30
37
  </script>
31
38
 
32
39
  <template>
33
40
  <text-field-menu
34
41
  :model-value="modelValue"
42
+ v-bind="menuProps"
35
43
  :stateful-layout="statefulLayout"
36
44
  :formatted-value="modelValue.data"
37
45
  >
@@ -78,7 +78,7 @@ const timePickerProps = computed(() => {
78
78
  <template #prepend-inner>
79
79
  <v-icon :icon="statefulLayout.options.icons.calendar" />
80
80
  </template>
81
- <v-sheet style="width: 328px">
81
+ <v-sheet>
82
82
  <v-tabs
83
83
  v-model="tab"
84
84
  align-tabs="center"
@@ -16,6 +16,7 @@ import Node from '../node.vue'
16
16
  import { moveDataItem } from '../../utils/arrays.js'
17
17
  import useDnd from '../../composables/use-dnd.js'
18
18
  import useCompDefaults from '../../composables/use-comp-defaults.js'
19
+ import useClipboard from '../../composables/use-clipboard.js'
19
20
 
20
21
  useDefaults({}, 'VjsfList')
21
22
  const vCardProps = useCompDefaults('VjsfList-VCard', { border: true, flat: true, tile: true })
@@ -157,6 +158,30 @@ const duplicateItem = (child, childIndex) => {
157
158
  menuOpened.value = -1
158
159
  }
159
160
 
161
+ const clipboard = useClipboard(() => props.modelValue.layout.clipboardKey ?? props.modelValue.fullKey)
162
+
163
+ /**
164
+ * @param {import('@json-layout/core').StateNode} child
165
+ */
166
+ const copyItem = (child) => {
167
+ clipboard.value = child.data
168
+ menuOpened.value = -1
169
+ }
170
+
171
+ /**
172
+ * @param {import('@json-layout/core').StateNode} child
173
+ */
174
+ const pasteItem = (child) => {
175
+ const copiedItem = clipboard.value
176
+ if (copiedItem === null) throw new Error('attempt to paste but clipboard is empty')
177
+ const newItem = props.modelValue.layout.itemCopy ? props.statefulLayout.evalNodeExpression(props.modelValue, props.modelValue.layout.itemCopy, clone(copiedItem)) : clone(copiedItem)
178
+ const newData = [...(props.modelValue.data ?? []), newItem]
179
+ props.statefulLayout.input(props.modelValue, newData)
180
+ if (layout.value.listEditMode === 'inline-single') {
181
+ props.statefulLayout.activateItem(props.modelValue, newData.length - 1)
182
+ }
183
+ }
184
+
160
185
  const itemBorderColor = computed(() => (/** @type {import('@json-layout/core').StateNode} */child, /** @type {number} */childIndex) => {
161
186
  if (editedItem.value === childIndex) return theme.current.value.colors.primary
162
187
  if (child.validated && (child.error || child.childError)) return theme.current.value.colors.error
@@ -296,6 +321,15 @@ const itemBorderColor = computed(() => (/** @type {import('@json-layout/core').S
296
321
  </template>
297
322
  {{ modelValue.messages.duplicate }}
298
323
  </v-list-item>
324
+ <v-list-item
325
+ v-if="modelValue.layout.listActions.includes('copy')"
326
+ @click="copyItem(child)"
327
+ >
328
+ <template #prepend>
329
+ <v-icon :icon="statefulLayout.options.icons.copy" />
330
+ </template>
331
+ {{ modelValue.messages.copy }}
332
+ </v-list-item>
299
333
  <v-list-item
300
334
  v-if="modelValue.layout.listActions.includes('sort') && activeDnd"
301
335
  :disabled="modelValue.data.length === 1"
@@ -355,11 +389,12 @@ const itemBorderColor = computed(() => (/** @type {import('@json-layout/core').S
355
389
  <v-divider v-if="childIndex < modelValue.children.length - 1" />
356
390
  </template>
357
391
  <v-list-item
358
- v-if="!modelValue.options.readOnly && modelValue.layout.listActions.includes('add')"
392
+ v-if="!modelValue.options.readOnly && (modelValue.layout.listActions.includes('add') || modelValue.layout.listActions.includes('paste'))"
359
393
  class="py-2"
360
394
  >
361
395
  <template v-if="modelValue.layout.indexed">
362
396
  <v-form
397
+ v-if="modelValue.layout.listActions.includes('add')"
363
398
  ref="newKeyForm"
364
399
  style="max-width: 250px;"
365
400
  @submit.prevent
@@ -385,11 +420,22 @@ const itemBorderColor = computed(() => (/** @type {import('@json-layout/core').S
385
420
  </template>
386
421
  <template v-else>
387
422
  <v-btn
423
+ v-if="modelValue.layout.listActions.includes('add')"
388
424
  color="primary"
425
+ :prepend-icon="statefulLayout.options.icons.add"
426
+ class="mr-2"
389
427
  @click="pushEmptyItem"
390
428
  >
391
429
  {{ modelValue.messages.addItem }}
392
430
  </v-btn>
431
+ <v-btn
432
+ v-if="modelValue.layout.listActions.includes('paste') && clipboard !== null"
433
+ color="primary"
434
+ :prepend-icon="statefulLayout.options.icons.paste"
435
+ @click="pasteItem"
436
+ >
437
+ {{ modelValue.messages.paste }}
438
+ </v-btn>
393
439
  </template>
394
440
  </v-list-item>
395
441
  </v-list>
@@ -47,7 +47,7 @@ const timePickerProps = computed(() => {
47
47
  <template #prepend-inner>
48
48
  <v-icon :icon="statefulLayout.options.icons.clock" />
49
49
  </template>
50
- <v-sheet style="width: 328px">
50
+ <v-sheet>
51
51
  <v-defaults-provider :defaults="{global: { density: 'default' }}">
52
52
  <v-time-picker
53
53
  v-bind="timePickerProps"
@@ -0,0 +1,27 @@
1
+ import { provide, inject, ref, computed } from 'vue'
2
+
3
+ const globalClipboardKey = Symbol('vjsf:clipboard')
4
+
5
+ export const createClipboard = () => {
6
+ const store = {}
7
+ provide(globalClipboardKey, store)
8
+ }
9
+
10
+ /**
11
+ * @param {() => string} keyGetter
12
+ */
13
+ export default function (keyGetter) {
14
+ const store = inject(globalClipboardKey)
15
+ return computed({
16
+ get () {
17
+ const key = keyGetter()
18
+ store[key] = store[key] ?? ref(null)
19
+ return store[key].value
20
+ },
21
+ set (value) {
22
+ const key = keyGetter()
23
+ store[key] = store[key] ?? ref(null)
24
+ store[key].value = value
25
+ }
26
+ })
27
+ }
@@ -3,6 +3,7 @@ import { StatefulLayout } from '@json-layout/core/state'
3
3
  import { inject, toRaw, shallowRef, computed, ref, watch, useSlots, getCurrentInstance, nextTick } from 'vue'
4
4
  import { useElementSize } from '@vueuse/core'
5
5
  import { getFullOptions } from '../options.js'
6
+ import { createClipboard } from './use-clipboard.js'
6
7
  import { setAutoFreeze } from 'immer'
7
8
  import Debug from 'debug'
8
9
 
@@ -35,6 +36,8 @@ export const emits = {
35
36
  export const useVjsf = (schema, modelValue, options, nodeComponents, emit, compile, produceCompileOptions, precompiledLayout) => {
36
37
  const el = ref(null)
37
38
 
39
+ createClipboard()
40
+
38
41
  useDefaults({}, 'Vjsf')
39
42
  /** @type {import('vuetify').DefaultsInstance} */
40
43
  const defaults = (inject(Symbol.for('vuetify:defaults')))?.value
package/src/options.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /** @type {import('./types.js').VjsfIcons} */
2
2
  export const defaultIcons = {
3
- // as much as possible with use standard vuetify aliases
3
+ // as much as possible with use standard vuetify aliases https://vuetifyjs.com/en/features/icon-fonts/#built-in-aliases
4
4
  add: '$plus',
5
5
  calendar: '$calendar',
6
6
  close: '$close',
@@ -8,6 +8,8 @@ export const defaultIcons = {
8
8
  sortDown: '$sortDesc',
9
9
  sortUp: '$sortAsc',
10
10
  // codes are copied from here https://raw.githubusercontent.com/Templarian/MaterialDesign-JS/refs/heads/master/mdi.js
11
+ copy: 'svg:M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z',
12
+ paste: 'svg:M19,20H5V4H7V7H17V4H19M12,2A1,1 0 0,1 13,3A1,1 0 0,1 12,4A1,1 0 0,1 11,3A1,1 0 0,1 12,2M19,2H14.82C14.4,0.84 13.3,0 12,0C10.7,0 9.6,0.84 9.18,2H5A2,2 0 0,0 3,4V20A2,2 0 0,0 5,22H19A2,2 0 0,0 21,20V4A2,2 0 0,0 19,2Z',
11
13
  alert: 'svg:M13 14H11V9H13M13 18H11V16H13M1 21H23L12 2L1 21Z',
12
14
  clock: 'svg:M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M16.2,16.2L11,13V7H12.5V12.2L17,14.9L16.2,16.2Z',
13
15
  delete: 'svg:M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z',
package/src/types.ts CHANGED
@@ -47,6 +47,8 @@ export type VjsfIcons = {
47
47
  close: string
48
48
  delete: string
49
49
  duplicate: string
50
+ copy: string
51
+ paste: string
50
52
  edit: string
51
53
  infoSymbol: string
52
54
  menu: string
@@ -1,10 +1,14 @@
1
1
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{}, {
2
2
  $emit: (event: "blur", ...args: any[]) => void;
3
+ maxWidth: string;
4
+ minWidth: string;
3
5
  modelValue: import("../../types.js").VjsfNode;
4
6
  readonly: boolean;
5
7
  statefulLayout: import("../../types.js").VjsfStatefulLayout;
6
8
  placeholder: string | null;
7
9
  $props: {
10
+ readonly maxWidth?: string | undefined;
11
+ readonly minWidth?: string | undefined;
8
12
  readonly modelValue?: import("../../types.js").VjsfNode | undefined;
9
13
  readonly readonly?: boolean | undefined;
10
14
  readonly statefulLayout?: import("../../types.js").VjsfStatefulLayout | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"text-field-menu.vue.d.ts","sourceRoot":"","sources":["../../../src/components/fragments/text-field-menu.vue.js"],"names":[],"mappings":";;;;;;;;;;;;;6BAiKsC,GAAG;;;QACX,GAAG"}
1
+ {"version":3,"file":"text-field-menu.vue.d.ts","sourceRoot":"","sources":["../../../src/components/fragments/text-field-menu.vue.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;6BA6KsC,GAAG;;;QACX,GAAG"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @param {() => string} keyGetter
3
+ */
4
+ export default function _default(keyGetter: () => string): import("vue").WritableComputedRef<any, any>;
5
+ export function createClipboard(): void;
6
+ //# sourceMappingURL=use-clipboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-clipboard.d.ts","sourceRoot":"","sources":["../../src/composables/use-clipboard.js"],"names":[],"mappings":"AASA;;GAEG;AACH,4CAFW,MAAM,MAAM,+CAgBtB;AAtBM,wCAGN"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-vjsf.d.ts","sourceRoot":"","sources":["../../src/composables/use-vjsf.js"],"names":[],"mappings":"AAaA;IACE;;MAEE;gCADO,GAAG;IAGZ;;MAEE;4BADO,OAAO,aAAa,EAAE,kBAAkB;EAGlD;AAYM,gCATI,OAAO,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,cACzB,OAAO,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,WACtB,OAAO,KAAK,EAAE,GAAG,CAAC,OAAO,aAAa,EAAE,kBAAkB,GAAG,IAAI,CAAC,kBAClE,OAAO,MAAM,EAAE,OAAO,KAAK,EAAE,SAAS,CAAC,QACvC,GAAG;;;;EAuJb"}
1
+ {"version":3,"file":"use-vjsf.d.ts","sourceRoot":"","sources":["../../src/composables/use-vjsf.js"],"names":[],"mappings":"AAcA;IACE;;MAEE;gCADO,GAAG;IAGZ;;MAEE;4BADO,OAAO,aAAa,EAAE,kBAAkB;EAGlD;AAYM,gCATI,OAAO,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,cACzB,OAAO,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,WACtB,OAAO,KAAK,EAAE,GAAG,CAAC,OAAO,aAAa,EAAE,kBAAkB,GAAG,IAAI,CAAC,kBAClE,OAAO,MAAM,EAAE,OAAO,KAAK,EAAE,SAAS,CAAC,QACvC,GAAG;;;;EAyJb"}
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.js"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,2BADW,OAAO,YAAY,EAAE,SAAS,CAiBxC;;;;;;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;;;;;;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"}
package/types/types.d.ts CHANGED
@@ -14,6 +14,8 @@ export type VjsfIcons = {
14
14
  close: string;
15
15
  delete: string;
16
16
  duplicate: string;
17
+ copy: string;
18
+ paste: string;
17
19
  edit: string;
18
20
  infoSymbol: string;
19
21
  menu: 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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"}