@koumoul/vjsf 3.0.0-beta.30 → 3.0.0-beta.32

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 (53) hide show
  1. package/package.json +2 -2
  2. package/src/compat/v2.js +20 -15
  3. package/src/components/fragments/child-subtitle.vue +25 -0
  4. package/src/components/fragments/help-message.vue +27 -14
  5. package/src/components/fragments/section-header.vue +2 -4
  6. package/src/components/fragments/selection-group.vue +0 -1
  7. package/src/components/node.vue +45 -42
  8. package/src/components/nodes/autocomplete.vue +2 -0
  9. package/src/components/nodes/checkbox-group.vue +3 -0
  10. package/src/components/nodes/checkbox.vue +3 -0
  11. package/src/components/nodes/color-picker.vue +3 -0
  12. package/src/components/nodes/combobox.vue +3 -0
  13. package/src/components/nodes/date-picker.vue +3 -1
  14. package/src/components/nodes/date-time-picker.vue +3 -0
  15. package/src/components/nodes/expansion-panels.vue +3 -1
  16. package/src/components/nodes/file-input.vue +3 -0
  17. package/src/components/nodes/list.vue +8 -9
  18. package/src/components/nodes/number-combobox.vue +3 -0
  19. package/src/components/nodes/number-field.vue +3 -0
  20. package/src/components/nodes/one-of-select.vue +3 -0
  21. package/src/components/nodes/radio-group.vue +3 -0
  22. package/src/components/nodes/section.vue +3 -0
  23. package/src/components/nodes/select.vue +3 -0
  24. package/src/components/nodes/slider.vue +3 -0
  25. package/src/components/nodes/stepper.vue +5 -0
  26. package/src/components/nodes/switch-group.vue +3 -0
  27. package/src/components/nodes/switch.vue +3 -0
  28. package/src/components/nodes/tabs.vue +12 -3
  29. package/src/components/nodes/text-field.vue +3 -0
  30. package/src/components/nodes/textarea.vue +3 -0
  31. package/src/components/nodes/vertical-tabs.vue +8 -1
  32. package/src/composables/use-comp-defaults.js +19 -0
  33. package/src/types.ts +2 -2
  34. package/src/utils/props.js +0 -5
  35. package/types/compat/v2.d.ts.map +1 -1
  36. package/types/components/fragments/child-subtitle.vue.d.ts +8 -0
  37. package/types/components/fragments/child-subtitle.vue.d.ts.map +1 -0
  38. package/types/components/nodes/autocomplete.vue.d.ts.map +1 -1
  39. package/types/components/nodes/checkbox-group.vue.d.ts.map +1 -1
  40. package/types/components/nodes/combobox.vue.d.ts.map +1 -1
  41. package/types/components/nodes/file-input.vue.d.ts.map +1 -1
  42. package/types/components/nodes/number-combobox.vue.d.ts.map +1 -1
  43. package/types/components/nodes/number-field.vue.d.ts.map +1 -1
  44. package/types/components/nodes/radio-group.vue.d.ts.map +1 -1
  45. package/types/components/nodes/select.vue.d.ts.map +1 -1
  46. package/types/components/nodes/switch-group.vue.d.ts.map +1 -1
  47. package/types/components/nodes/text-field.vue.d.ts.map +1 -1
  48. package/types/components/nodes/textarea.vue.d.ts.map +1 -1
  49. package/types/components/vjsf.vue.d.ts +4 -4
  50. package/types/composables/use-comp-defaults.d.ts +8 -0
  51. package/types/composables/use-comp-defaults.d.ts.map +1 -0
  52. package/types/types.d.ts.map +1 -1
  53. package/types/utils/props.d.ts.map +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koumoul/vjsf",
3
- "version": "3.0.0-beta.30",
3
+ "version": "3.0.0-beta.32",
4
4
  "description": "Generate forms for the vuetify UI library (vuejs) based on annotated JSON schemas.",
5
5
  "scripts": {
6
6
  "test": "vitest",
@@ -76,7 +76,7 @@
76
76
  "vuetify": "^3.6.8"
77
77
  },
78
78
  "dependencies": {
79
- "@json-layout/core": "0.25.0",
79
+ "@json-layout/core": "0.27.0",
80
80
  "@vueuse/core": "^10.5.0",
81
81
  "debug": "^4.3.4",
82
82
  "ejs": "^3.1.9"
package/src/compat/v2.js CHANGED
@@ -60,15 +60,18 @@ const fixExpression = (expression, type = 'js-eval') => {
60
60
  }
61
61
 
62
62
  /**
63
- *
64
- * @param {import("ajv").SchemaObject} schema
65
- * @param {(schemaId: string, ref: string) => [any, string, string]} getJSONRef
63
+ *
64
+ * @param {import("ajv").SchemaObject} schema
65
+ * @param {(schemaId: string, ref: string) => [any, string, string]} getJSONRef
66
66
  * @param {string} schemaId
67
+ * @param {any[]} processed
67
68
  */
68
- const processFragment = (schema, getJSONRef, schemaId) => {
69
+ const processFragment = (schema, getJSONRef, schemaId, processed) => {
70
+ if (processed.includes(schema)) return
71
+ processed.push(schema)
69
72
  if (schema.$ref) {
70
73
  const [refFragment, refSchemaId] = getJSONRef(schemaId, schema.$ref)
71
- processFragment(refFragment, getJSONRef, refSchemaId)
74
+ processFragment(refFragment, getJSONRef, refSchemaId, processed)
72
75
  }
73
76
  if (!schema.layout) {
74
77
  /** @type import('@json-layout/vocabulary').PartialCompObject */
@@ -147,12 +150,12 @@ const processFragment = (schema, getJSONRef, schemaId) => {
147
150
 
148
151
  if (schema.properties) {
149
152
  for (const propertyKey of Object.keys(schema.properties)) {
150
- processFragment(schema.properties[propertyKey], getJSONRef, schemaId)
153
+ processFragment(schema.properties[propertyKey], getJSONRef, schemaId, processed)
151
154
  }
152
155
  }
153
156
 
154
157
  if (schema.allOf) {
155
- for (const item of schema.allOf) processFragment(item, getJSONRef, schemaId)
158
+ for (const item of schema.allOf) processFragment(item, getJSONRef, schemaId, processed)
156
159
  }
157
160
 
158
161
  if (schema.oneOf) {
@@ -167,28 +170,28 @@ const processFragment = (schema, getJSONRef, schemaId) => {
167
170
  }
168
171
  }
169
172
  }
170
- for (const item of schema.oneOf) processFragment(item, getJSONRef, schemaId)
173
+ for (const item of schema.oneOf) processFragment(item, getJSONRef, schemaId, processed)
171
174
  }
172
175
 
173
176
  if (schema.anyOf) {
174
- for (const item of schema.anyOf) processFragment(item, getJSONRef, schemaId)
177
+ for (const item of schema.anyOf) processFragment(item, getJSONRef, schemaId, processed)
175
178
  }
176
179
 
177
180
  if (schema.type === 'array' && schema.items) {
178
181
  if (Array.isArray(schema.items)) {
179
- for (const item of schema.items) processFragment(item, getJSONRef, schemaId)
182
+ for (const item of schema.items) processFragment(item, getJSONRef, schemaId, processed)
180
183
  } else {
181
- processFragment(schema.items, getJSONRef, schemaId)
184
+ processFragment(schema.items, getJSONRef, schemaId, processed)
182
185
  }
183
186
  }
184
187
  if (schema.dependencies) {
185
188
  for (const key of Object.keys(schema.dependencies)) {
186
- processFragment(schema.dependencies[key], getJSONRef, schemaId)
189
+ processFragment(schema.dependencies[key], getJSONRef, schemaId, processed)
187
190
  }
188
191
  }
189
192
  if (schema.if) {
190
- if (schema.then) processFragment(schema.then, getJSONRef, schemaId)
191
- if (schema.else) processFragment(schema.else, getJSONRef, schemaId)
193
+ if (schema.then) processFragment(schema.then, getJSONRef, schemaId, processed)
194
+ if (schema.else) processFragment(schema.else, getJSONRef, schemaId, processed)
192
195
  }
193
196
  }
194
197
 
@@ -212,6 +215,8 @@ export function v2compat (_schema, _ajv, lang = 'en') {
212
215
  const schema = /** @type {import("ajv").SchemaObject} */ (clone(_schema))
213
216
  schema.$id = schema.$id ?? '_jl'
214
217
  const getJSONRef = resolveLocaleRefs(schema, ajv, lang)
215
- processFragment(schema, getJSONRef, schema.$id)
218
+ /** @type {any[]} */
219
+ const processed = []
220
+ processFragment(schema, getJSONRef, schema.$id, processed)
216
221
  return schema
217
222
  }
@@ -0,0 +1,25 @@
1
+ <script setup>
2
+ import { computed } from 'vue'
3
+ import { isSection } from '@json-layout/core'
4
+
5
+ const { modelValue } = defineProps({
6
+ modelValue: {
7
+ /** @type import('vue').PropType<import('@json-layout/core').StateNode> */
8
+ type: Object,
9
+ required: true
10
+ }
11
+ })
12
+
13
+ const pClass = computed(() => {
14
+ if (modelValue.options.density === 'default') return 'mt-1 mb-5'
15
+ if (modelValue.options.density === 'comfortable') return 'mb-4'
16
+ return 'mb-3'
17
+ })
18
+ </script>
19
+ <template>
20
+ <p
21
+ v-if="isSection(modelValue) && modelValue.layout.subtitle"
22
+ :class="`text-subtitle ${pClass}`"
23
+ v-html="modelValue.layout.subtitle"
24
+ />
25
+ </template>
@@ -1,10 +1,9 @@
1
1
  <template>
2
- <div class="vjsf-help-message">
2
+ <div :class="`vjsf-help-message vjsf-help-message-${node.options.density}`">
3
3
  <v-slide-x-reverse-transition>
4
4
  <v-alert
5
5
  v-show="show"
6
6
  color="info"
7
- :density="node.options.density"
8
7
  >
9
8
  <div v-html="node.layout.help" />
10
9
  </v-alert>
@@ -12,9 +11,11 @@
12
11
  <v-btn
13
12
  color="info"
14
13
  :class="`vjsf-help-message-toggle vjsf-help-message-toggle-${node.options.density}`"
15
- :icon="show ? 'mdi-close-circle' : 'mdi-information'"
14
+ :icon="show ? 'mdi-close' : 'mdi-information-symbol'"
15
+ :border="0"
16
+ :elevation="show ? 0 : 2"
16
17
  density="compact"
17
- :size="node.options.density !== 'default' ? 'small' : 'default'"
18
+ :size="node.options.density === 'default' ? 28 : 24"
18
19
  :title="show ? '' : node.messages.showHelp"
19
20
  @click="show = !show"
20
21
  />
@@ -39,21 +40,33 @@ const show = ref(false)
39
40
  <style>
40
41
  .vjsf-help-message {
41
42
  position: relative;
42
- min-height: 10px;
43
+ }
44
+ .vjsf-help-message-compact {
45
+ margin-top: 2px;
46
+ margin-bottom: 2px;
47
+ min-height:24px;
48
+ }
49
+ .vjsf-help-message-comfortable {
50
+ margin-top: 4px;
51
+ margin-bottom: 4px;
52
+ min-height:24px;
53
+ }
54
+ .vjsf-help-message-default {
55
+ margin-top: 6px;
56
+ margin-bottom: 6px;
57
+ min-height:28px;
43
58
  }
44
59
  .vjsf-help-message-toggle {
45
60
  position: absolute;
46
- top: -10px;
47
- right: -4px;
61
+ top: 0px;
62
+ right: 0px;
48
63
  z-index: 1;
49
64
  }
50
- .vjsf-help-message-toggle-comfortable {
51
- top: -4px;
52
- right: -4px;
65
+ .vjsf-help-message .v-alert {
66
+ padding-right: 22px;
53
67
  }
54
- .vjsf-help-message-toggle-compact {
55
- top: -4px;
56
- right: -4px;
68
+ .vjsf-help-message-default .v-alert {
69
+ padding-right: 26px;
57
70
  }
71
+
58
72
  </style>
59
- ../../../types.js
@@ -40,14 +40,12 @@ const titleClass = computed(() => {
40
40
  <p
41
41
  v-if="node.layout.subtitle"
42
42
  :class="`text-subtitle mt-${titleDepthBase - node.options.titleDepth}`"
43
- >
44
- {{ node.layout.subtitle }}
45
- </p>
43
+ v-html="node.layout.subtitle"
44
+ />
46
45
  <v-alert
47
46
  v-if="node.error && node.validated"
48
47
  type="error"
49
48
  :class="`mt-${titleDepthBase - node.options.titleDepth}`"
50
- :density="node.options.density"
51
49
  >
52
50
  {{ node.error }}
53
51
  </v-alert>
@@ -53,7 +53,6 @@ export default defineComponent({
53
53
  checkboxes.push(h(props.type === 'switch' ? VSwitch : VCheckbox, {
54
54
  label: item.title,
55
55
  hideDetails: true,
56
- density: props.modelValue.options?.density,
57
56
  key: item.key,
58
57
  modelValue,
59
58
  onClick: () => {
@@ -1,10 +1,12 @@
1
1
  <script setup>
2
2
  import { computed } from 'vue'
3
- import { useTheme } from 'vuetify'
4
- import { VCol } from 'vuetify/components'
3
+ import { useTheme, useDefaults } from 'vuetify'
4
+ import { VCol, VDefaultsProvider } from 'vuetify/components'
5
5
  import NodeSlot from './fragments/node-slot.vue'
6
6
  import HelpMessage from './fragments/help-message.vue'
7
7
 
8
+ useDefaults({}, 'VjsfNode')
9
+
8
10
  const props = defineProps({
9
11
  modelValue: {
10
12
  /** @type import('vue').PropType<import('../types.js').VjsfNode> */
@@ -42,46 +44,47 @@ if (props.modelValue.layout.comp !== 'none' && !props.statefulLayout.options.nod
42
44
  </script>
43
45
 
44
46
  <template>
45
- <v-col
46
- v-if="modelValue.layout.comp !== 'none'"
47
- :cols="modelValue.cols"
48
- :class="nodeClasses"
49
- >
50
- <node-slot
51
- v-if="modelValue.layout.slots?.before"
52
- key="before"
53
- :layout-slot="modelValue.layout.slots?.before"
54
- :node="modelValue"
55
- :stateful-layout="statefulLayout"
56
- :class="beforeAfterClasses[modelValue.options.density]"
57
- />
47
+ <v-defaults-provider :defaults="{global: { density: props.modelValue.options.density }}">
48
+ <v-col
49
+ v-if="modelValue.layout.comp !== 'none'"
50
+ :cols="modelValue.cols"
51
+ :class="nodeClasses"
52
+ >
53
+ <node-slot
54
+ v-if="modelValue.layout.slots?.before"
55
+ key="before"
56
+ :layout-slot="modelValue.layout.slots?.before"
57
+ :node="modelValue"
58
+ :stateful-layout="statefulLayout"
59
+ :class="beforeAfterClasses[modelValue.options.density]"
60
+ />
58
61
 
59
- <help-message
60
- v-if="modelValue.layout.help && !modelValue.options.summary"
61
- :node="modelValue"
62
- :class="beforeAfterClasses[modelValue.options.density]"
63
- />
64
- <node-slot
65
- v-if="modelValue.layout.slots?.component"
66
- key="component"
67
- :layout-slot="modelValue.layout.slots?.component"
68
- :node="modelValue"
69
- :stateful-layout="statefulLayout"
70
- />
71
- <component
72
- :is="props.statefulLayout.options.nodeComponents[modelValue.layout.comp]"
73
- v-else
74
- :model-value="modelValue"
75
- :stateful-layout="statefulLayout"
76
- />
62
+ <help-message
63
+ v-if="modelValue.layout.help && !modelValue.options.summary"
64
+ :node="modelValue"
65
+ />
66
+ <node-slot
67
+ v-if="modelValue.layout.slots?.component"
68
+ key="component"
69
+ :layout-slot="modelValue.layout.slots?.component"
70
+ :node="modelValue"
71
+ :stateful-layout="statefulLayout"
72
+ />
73
+ <component
74
+ :is="props.statefulLayout.options.nodeComponents[modelValue.layout.comp]"
75
+ v-else
76
+ :model-value="modelValue"
77
+ :stateful-layout="statefulLayout"
78
+ />
77
79
 
78
- <node-slot
79
- v-if="modelValue.layout.slots?.after"
80
- key="after"
81
- :layout-slot="modelValue.layout.slots?.after"
82
- :node="modelValue"
83
- :stateful-layout="statefulLayout"
84
- :class="beforeAfterClasses[modelValue.options.density]"
85
- />
86
- </v-col>
80
+ <node-slot
81
+ v-if="modelValue.layout.slots?.after"
82
+ key="after"
83
+ :layout-slot="modelValue.layout.slots?.after"
84
+ :node="modelValue"
85
+ :stateful-layout="statefulLayout"
86
+ :class="beforeAfterClasses[modelValue.options.density]"
87
+ />
88
+ </v-col>
89
+ </v-defaults-provider>
87
90
  </template>
@@ -1,5 +1,6 @@
1
1
  <script>
2
2
  import { VAutocomplete } from 'vuetify/components'
3
+ import { useDefaults } from 'vuetify'
3
4
  import { defineComponent, computed, h } from 'vue'
4
5
  import { getInputProps, getCompSlots } from '../../utils/index.js'
5
6
  import useGetItems from '../../composables/use-get-items.js'
@@ -20,6 +21,7 @@ export default defineComponent({
20
21
  }
21
22
  },
22
23
  setup (props) {
24
+ useDefaults({}, 'VjsfAutocomplete')
23
25
  const getItems = useGetItems(props)
24
26
 
25
27
  const fieldProps = computed(() => {
@@ -1,4 +1,5 @@
1
1
  <script>
2
+ import { useDefaults } from 'vuetify'
2
3
  import SelectionGroup from '../fragments/selection-group.vue'
3
4
  import { defineComponent, h } from 'vue'
4
5
 
@@ -16,6 +17,8 @@ export default defineComponent({
16
17
  }
17
18
  },
18
19
  setup (props) {
20
+ useDefaults({}, 'VjsfCheckboxGroup')
21
+
19
22
  // @ts-ignore
20
23
  return () => {
21
24
  return h(SelectionGroup, {
@@ -2,6 +2,9 @@
2
2
  import { VCheckbox } from 'vuetify/components'
3
3
  import { computed } from 'vue'
4
4
  import { getInputProps } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
6
+
7
+ useDefaults({}, 'VjsfCheckbox')
5
8
 
6
9
  const props = defineProps({
7
10
  modelValue: {
@@ -3,6 +3,9 @@ import TextFieldMenu from '../fragments/text-field-menu.vue'
3
3
  import { VColorPicker } from 'vuetify/components'
4
4
  import { computed } from 'vue'
5
5
  import { getCompProps } from '../../utils/index.js'
6
+ import { useDefaults } from 'vuetify'
7
+
8
+ useDefaults({}, 'VjsfColorPicker')
6
9
 
7
10
  const props = defineProps({
8
11
  modelValue: {
@@ -2,6 +2,7 @@
2
2
  import { defineComponent, h, computed, shallowRef, ref } from 'vue'
3
3
  import { VCombobox } from 'vuetify/components'
4
4
  import { getInputProps, getCompSlots } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
5
6
 
6
7
  export default defineComponent({
7
8
  props: {
@@ -17,6 +18,8 @@ export default defineComponent({
17
18
  }
18
19
  },
19
20
  setup (props) {
21
+ useDefaults({}, 'VjsfCombobox')
22
+
20
23
  /** @type import('vue').Ref<import('@json-layout/vocabulary').SelectItems> */
21
24
  const items = shallowRef(props.modelValue.layout.items ?? [])
22
25
  /** @type import('vue').Ref<boolean> */
@@ -1,10 +1,12 @@
1
1
  <script setup>
2
2
  import TextFieldMenu from '../fragments/text-field-menu.vue'
3
3
  import { VDatePicker } from 'vuetify/components/VDatePicker'
4
- import { useDate } from 'vuetify'
4
+ import { useDate, useDefaults } from 'vuetify'
5
5
  import { computed } from 'vue'
6
6
  import { getCompProps, getDateTimeParts } from '../../utils/index.js'
7
7
 
8
+ useDefaults({}, 'VjsfDatePicker')
9
+
8
10
  const props = defineProps({
9
11
  modelValue: {
10
12
  /** @type import('vue').PropType<import('../../types.js').VjsfDatePickerNode> */
@@ -1,4 +1,7 @@
1
1
  <script setup>
2
+ import { useDefaults } from 'vuetify'
3
+
4
+ useDefaults({}, 'VjsfDateTimePicker')
2
5
 
3
6
  defineProps({
4
7
  modelValue: {
@@ -1,10 +1,12 @@
1
1
  <script setup>
2
2
  import { VExpansionPanels, VExpansionPanel, VExpansionPanelTitle, VExpansionPanelText, VContainer, VRow, VIcon } from 'vuetify/components'
3
- import { computed } from 'vue'
4
3
  import { isSection } from '@json-layout/core'
5
4
  import Node from '../node.vue'
6
5
  import SectionHeader from '../fragments/section-header.vue'
7
6
  import { getCompProps } from '../../utils/index.js'
7
+ import { useDefaults } from 'vuetify'
8
+
9
+ useDefaults({}, 'VjsfExpansionPanels')
8
10
 
9
11
  defineProps({
10
12
  modelValue: {
@@ -2,6 +2,7 @@
2
2
  import { defineComponent, h, computed } from 'vue'
3
3
  import { VFileInput } from 'vuetify/components'
4
4
  import { getInputProps, getCompSlots } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
5
6
 
6
7
  export default defineComponent({
7
8
  props: {
@@ -17,6 +18,8 @@ export default defineComponent({
17
18
  }
18
19
  },
19
20
  setup (props) {
21
+ useDefaults({}, 'VjsfFileInput')
22
+
20
23
  const fieldProps = computed(() => {
21
24
  const fieldProps = getInputProps(props.modelValue, props.statefulLayout, ['placeholder', 'accept'])
22
25
  if (props.modelValue.layout.multiple) {
@@ -1,11 +1,15 @@
1
1
  <script setup>
2
2
  import { watch, computed, ref } from 'vue'
3
- import { useTheme } from 'vuetify'
3
+ import { useDefaults, useTheme } from 'vuetify'
4
4
  import { VList, VListItem, VListItemAction, VBtn, VMenu, VIcon, VSheet, VSpacer, VDivider, VRow, VListSubheader } from 'vuetify/components'
5
5
  import { isSection, clone } from '@json-layout/core'
6
6
  import Node from '../node.vue'
7
7
  import { moveArrayItem } from '../../utils/index.js'
8
8
  import useDnd from '../../composables/use-dnd.js'
9
+ import useCompDefaults from '../../composables/use-comp-defaults.js'
10
+
11
+ useDefaults({}, 'VjsfList')
12
+ const vSheetProps = useCompDefaults('VjsfList-VSheet', { border: true })
9
13
 
10
14
  const props = defineProps({
11
15
  modelValue: {
@@ -92,11 +96,8 @@ const itemBorderColor = computed(() => (/** @type {import('@json-layout/core').S
92
96
  </script>
93
97
 
94
98
  <template>
95
- <v-sheet
96
- :elevation="2"
97
- rounded
98
- >
99
- <v-list :density="modelValue.options.density">
99
+ <v-sheet v-bind="vSheetProps">
100
+ <v-list>
100
101
  <v-list-subheader v-if="modelValue.layout.title">
101
102
  {{ modelValue.layout.title }}
102
103
  </v-list-subheader>
@@ -106,7 +107,6 @@ const itemBorderColor = computed(() => (/** @type {import('@json-layout/core').S
106
107
  >
107
108
  <v-list-item
108
109
  v-bind="itemBind(childIndex)"
109
- :density="modelValue.options.density"
110
110
  :draggable="draggable === childIndex"
111
111
  variant="flat"
112
112
  :style="`border: 1px solid ${itemBorderColor(child, childIndex)}`"
@@ -183,7 +183,7 @@ const itemBorderColor = computed(() => (/** @type {import('@json-layout/core').S
183
183
  :density="buttonDensity"
184
184
  />
185
185
  </template>
186
- <v-list :density="modelValue.options.density">
186
+ <v-list>
187
187
  <v-list-item
188
188
  v-if="modelValue.layout.listActions.includes('delete')"
189
189
  base-color="warning"
@@ -234,7 +234,6 @@ const itemBorderColor = computed(() => (/** @type {import('@json-layout/core').S
234
234
  <v-spacer />
235
235
  <v-btn
236
236
  color="primary"
237
- :density="modelValue.options.density"
238
237
  @click="pushEmptyItem"
239
238
  >
240
239
  {{ modelValue.messages.addItem }}
@@ -2,6 +2,7 @@
2
2
  import { defineComponent, h, computed, shallowRef, ref } from 'vue'
3
3
  import { VCombobox } from 'vuetify/components'
4
4
  import { getInputProps, getCompSlots } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
5
6
 
6
7
  export default defineComponent({
7
8
  props: {
@@ -17,6 +18,8 @@ export default defineComponent({
17
18
  }
18
19
  },
19
20
  setup (props) {
21
+ useDefaults({}, 'VjsfNumberCombobox')
22
+
20
23
  /** @type import('vue').Ref<import('@json-layout/vocabulary').SelectItems> */
21
24
  const items = shallowRef(props.modelValue.layout.items ?? [])
22
25
  /** @type import('vue').Ref<boolean> */
@@ -2,6 +2,7 @@
2
2
  import { defineComponent, h, computed } from 'vue'
3
3
  import { VTextField } from 'vuetify/components'
4
4
  import { getInputProps, getCompSlots } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
5
6
 
6
7
  export default defineComponent({
7
8
  props: {
@@ -17,6 +18,8 @@ export default defineComponent({
17
18
  }
18
19
  },
19
20
  setup (props) {
21
+ useDefaults({}, 'VjsfNumberField')
22
+
20
23
  const fieldProps = computed(() => {
21
24
  const fieldProps = getInputProps(props.modelValue, props.statefulLayout, ['step', 'min', 'max', 'placeholder'])
22
25
  fieldProps.type = 'number'
@@ -5,6 +5,9 @@ import { isSection } from '@json-layout/core'
5
5
  import { isCompObject } from '@json-layout/vocabulary'
6
6
  import { getInputProps } from '../../utils/index.js'
7
7
  import Node from '../node.vue'
8
+ import { useDefaults } from 'vuetify'
9
+
10
+ useDefaults({}, 'VjsfOneOfSelect')
8
11
 
9
12
  const props = defineProps({
10
13
  modelValue: {
@@ -3,6 +3,7 @@ import { VRadioGroup, VRadio, VSkeletonLoader } from 'vuetify/components'
3
3
  import { defineComponent, h, computed } from 'vue'
4
4
  import { getInputProps, getCompSlots } from '../../utils/index.js'
5
5
  import useGetItems from '../../composables/use-get-items.js'
6
+ import { useDefaults } from 'vuetify'
6
7
 
7
8
  export default defineComponent({
8
9
  props: {
@@ -18,6 +19,8 @@ export default defineComponent({
18
19
  }
19
20
  },
20
21
  setup (props) {
22
+ useDefaults({}, 'VjsfRadioGroup')
23
+
21
24
  const getItems = useGetItems(props)
22
25
 
23
26
  const fieldProps = computed(() => {
@@ -2,6 +2,9 @@
2
2
  import { VRow } from 'vuetify/components'
3
3
  import Node from '../node.vue'
4
4
  import SectionHeader from '../fragments/section-header.vue'
5
+ import { useDefaults } from 'vuetify'
6
+
7
+ useDefaults({}, 'VjsfSection')
5
8
 
6
9
  defineProps({
7
10
  modelValue: {
@@ -5,6 +5,7 @@ import { getInputProps, getCompSlots } from '../../utils/index.js'
5
5
  import useGetItems from '../../composables/use-get-items.js'
6
6
  import SelectItem from '../fragments/select-item.vue'
7
7
  import SelectSelection from '../fragments/select-selection.vue'
8
+ import { useDefaults } from 'vuetify'
8
9
 
9
10
  export default defineComponent({
10
11
  props: {
@@ -20,6 +21,8 @@ export default defineComponent({
20
21
  }
21
22
  },
22
23
  setup (props) {
24
+ useDefaults({}, 'VjsfSelect')
25
+
23
26
  const getItems = useGetItems(props)
24
27
 
25
28
  const fieldProps = computed(() => {
@@ -2,6 +2,9 @@
2
2
  import { VSlider } from 'vuetify/components'
3
3
  import { computed } from 'vue'
4
4
  import { getInputProps } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
6
+
7
+ useDefaults({}, 'VjsfSlider')
5
8
 
6
9
  const props = defineProps({
7
10
  modelValue: {
@@ -4,6 +4,10 @@ import { VStepper, VStepperHeader, VStepperItem, VStepperWindow, VStepperWindowI
4
4
  import { isSection } from '@json-layout/core'
5
5
  import Node from '../node.vue'
6
6
  import SectionHeader from '../fragments/section-header.vue'
7
+ import ChildSubtitle from '../fragments/child-subtitle.vue'
8
+ import { useDefaults } from 'vuetify'
9
+
10
+ useDefaults({}, 'VjsfStepper')
7
11
 
8
12
  const props = defineProps({
9
13
  modelValue: {
@@ -59,6 +63,7 @@ const goNext = () => {
59
63
  fluid
60
64
  class="pa-0"
61
65
  >
66
+ <child-subtitle :model-value="child" />
62
67
  <v-row>
63
68
  <node
64
69
  v-for="grandChild of isSection(child) ? child.children : [child]"
@@ -1,4 +1,5 @@
1
1
  <script>
2
+ import { useDefaults } from 'vuetify'
2
3
  import SelectionGroup from '../fragments/selection-group.vue'
3
4
  import { defineComponent, h } from 'vue'
4
5
 
@@ -16,6 +17,8 @@ export default defineComponent({
16
17
  }
17
18
  },
18
19
  setup (props) {
20
+ useDefaults({}, 'VjsfSwitchGroup')
21
+
19
22
  // @ts-ignore
20
23
  return () => {
21
24
  return h(SelectionGroup, {
@@ -2,6 +2,9 @@
2
2
  import { VSwitch } from 'vuetify/components'
3
3
  import { computed } from 'vue'
4
4
  import { getInputProps } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
6
+
7
+ useDefaults({}, 'VjsfSwitch')
5
8
 
6
9
  const props = defineProps({
7
10
  modelValue: {
@@ -1,9 +1,15 @@
1
1
  <script setup>
2
2
  import { VTabs, VTab, VContainer, VSheet, VWindow, VWindowItem, VRow, VIcon } from 'vuetify/components'
3
+ import { useDefaults } from 'vuetify'
3
4
  import { ref } from 'vue'
4
5
  import { isSection } from '@json-layout/core'
5
6
  import Node from '../node.vue'
6
7
  import SectionHeader from '../fragments/section-header.vue'
8
+ import ChildSubtitle from '../fragments/child-subtitle.vue'
9
+ import useCompDefaults from '../../composables/use-comp-defaults.js'
10
+
11
+ useDefaults({}, 'VjsfTabs')
12
+ const vSheetProps = useCompDefaults('VjsfTabs-VSheet', { border: true })
7
13
 
8
14
  defineProps({
9
15
  modelValue: {
@@ -23,13 +29,15 @@ const tab = ref(0)
23
29
 
24
30
  <template>
25
31
  <section-header :node="modelValue" />
26
- <v-sheet border>
27
- <v-tabs v-model="tab">
32
+ <v-sheet v-bind="vSheetProps">
33
+ <v-tabs
34
+ v-model="tab"
35
+ direction="horizontal"
36
+ >
28
37
  <v-tab
29
38
  v-for="(child, i) of modelValue.children"
30
39
  :key="child.key"
31
40
  :value="i"
32
- :density="modelValue.options.density"
33
41
  :color="child.validated && (child.error || child.childError) ? 'error' : undefined"
34
42
  >
35
43
  <v-icon
@@ -48,6 +56,7 @@ const tab = ref(0)
48
56
  :value="i"
49
57
  >
50
58
  <v-container fluid>
59
+ <child-subtitle :model-value="child" />
51
60
  <v-row>
52
61
  <node
53
62
  v-for="grandChild of isSection(child) ? child.children : [child]"
@@ -2,6 +2,7 @@
2
2
  import { defineComponent, h, computed } from 'vue'
3
3
  import { VTextField } from 'vuetify/components'
4
4
  import { getInputProps, getCompSlots } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
5
6
 
6
7
  export default defineComponent({
7
8
  props: {
@@ -17,6 +18,8 @@ export default defineComponent({
17
18
  }
18
19
  },
19
20
  setup (props) {
21
+ useDefaults({}, 'VjsfTextField')
22
+
20
23
  const fieldProps = computed(() => getInputProps(props.modelValue, props.statefulLayout, ['placeholder']))
21
24
  const fieldSlots = computed(() => getCompSlots(props.modelValue, props.statefulLayout))
22
25
 
@@ -2,6 +2,7 @@
2
2
  import { defineComponent, h, computed, ref, watch } from 'vue'
3
3
  import { VTextarea } from 'vuetify/components'
4
4
  import { getInputProps, getCompSlots } from '../../utils/index.js'
5
+ import { useDefaults } from 'vuetify'
5
6
 
6
7
  export default defineComponent({
7
8
  props: {
@@ -17,6 +18,8 @@ export default defineComponent({
17
18
  }
18
19
  },
19
20
  setup (props) {
21
+ useDefaults({}, 'VjsfTextArea')
22
+
20
23
  /** @type {import('vue').Ref<null | HTMLElement>} */
21
24
  const textarea = ref(null)
22
25
 
@@ -4,6 +4,12 @@ import { VTabs, VTab, VContainer, VSheet, VWindow, VWindowItem, VRow, VIcon } fr
4
4
  import { ref } from 'vue'
5
5
  import Node from '../node.vue'
6
6
  import SectionHeader from '../fragments/section-header.vue'
7
+ import ChildSubtitle from '../fragments/child-subtitle.vue'
8
+ import { useDefaults } from 'vuetify'
9
+ import useCompDefaults from '../../composables/use-comp-defaults.js'
10
+
11
+ useDefaults({}, 'VjsfVerticalTabs')
12
+ const vSheetProps = useCompDefaults('VjsfVerticalTabs-VSheet', { border: true })
7
13
 
8
14
  defineProps({
9
15
  modelValue: {
@@ -23,7 +29,7 @@ const tab = ref(0)
23
29
 
24
30
  <template>
25
31
  <section-header :node="modelValue" />
26
- <v-sheet border>
32
+ <v-sheet v-bind="vSheetProps">
27
33
  <div class="d-flex flex-row">
28
34
  <v-tabs
29
35
  v-model="tab"
@@ -54,6 +60,7 @@ const tab = ref(0)
54
60
  :value="i"
55
61
  >
56
62
  <v-container fluid>
63
+ <child-subtitle :model-value="child" />
57
64
  <v-row>
58
65
  <node
59
66
  v-for="grandChild of isSection(child) ? child.children : [child]"
@@ -0,0 +1,19 @@
1
+ import { inject, computed } from 'vue'
2
+
3
+ // inspired by https://github.com/vuetifyjs/vuetify/blob/27b4b1e52060b6bee13a290a4829f935f1bd9c05/packages/vuetify/src/composables/defaults.ts#L92
4
+ /**
5
+ *
6
+ * @param {string} name
7
+ * @param {Record<string, any> | null} [localDefaults]
8
+ * @returns {import('vue').ComputedRef<Record<string, any>>}
9
+ */
10
+ export default function useCompDefaultProps (name, localDefaults = null) {
11
+ /** @type {import('vue').Ref<import('vuetify').DefaultsInstance> | undefined} */
12
+ const defaults = inject(Symbol.for('vuetify:defaults'))
13
+ if (!defaults) throw new Error('[vjsf] Could not find defaults instance')
14
+ return computed(() => {
15
+ const componentDefaults = defaults.value?.[name] ?? {}
16
+ if (!localDefaults) return componentDefaults
17
+ return { ...componentDefaults, ...localDefaults }
18
+ })
19
+ }
package/src/types.ts CHANGED
@@ -40,11 +40,11 @@ export type Plugin = {
40
40
 
41
41
  // these options used to contain many possibilities to override props in various components
42
42
  // this was unmaintainable and has been removed, customization of components should be done via slots
43
- // and vuetify defaults providers
43
+ // and defaults providers
44
44
  export type VjsfStatefulLayoutOptions = StatefulLayoutOptions & {
45
45
  vjsfSlots: Record<string, () => unknown>,
46
46
  nodeComponents: Record<string, Component>,
47
- plugins: Plugin[]
47
+ plugins: Plugin[],
48
48
  pluginsOptions: Record<string, unknown>
49
49
  }
50
50
 
@@ -6,12 +6,8 @@ import { camelize } from 'vue'
6
6
  // by a combination of layout.props, layout.getProps and vuetify defaults provider (https://vuetifyjs.com/en/components/defaults-providers/#usage)
7
7
  const defaultProps = {
8
8
  fieldPropsCompact: {
9
- density: 'compact',
10
9
  hideDetails: 'auto'
11
10
  },
12
- fieldPropsComfortable: {
13
- density: 'comfortable'
14
- },
15
11
  fieldPropsReadOnly: { hideDetails: 'auto', variant: 'plain' },
16
12
  fieldPropsSummary: { hideDetails: true }
17
13
  }
@@ -54,7 +50,6 @@ export function getInputProps (node, statefulLayout, layoutPropsMap, isMainComp
54
50
  const options = node.options
55
51
  /** @type {(Record<string, any> | undefined)[]} */
56
52
  const propsLevels = []
57
- if (options.density === 'comfortable') propsLevels.push(defaultProps.fieldPropsComfortable)
58
53
  if (options.density === 'compact') propsLevels.push(defaultProps.fieldPropsCompact)
59
54
  if (node.options.readOnly) propsLevels.push(defaultProps.fieldPropsReadOnly)
60
55
  if (isMainComp && node.props) propsLevels.push(node.props)
@@ -1 +1 @@
1
- {"version":3,"file":"v2.d.ts","sourceRoot":"","sources":["../../src/compat/v2.js"],"names":[],"mappings":"AAkMA;;;;;;GAMG;AACH,kCALW,MAAM,+CAEN,MAAM,0BAkBhB;sBAxNqB,KAAK"}
1
+ {"version":3,"file":"v2.d.ts","sourceRoot":"","sources":["../../src/compat/v2.js"],"names":[],"mappings":"AAqMA;;;;;;GAMG;AACH,kCALW,MAAM,+CAEN,MAAM,0BAoBhB;sBA7NqB,KAAK"}
@@ -0,0 +1,8 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {
2
+ modelValue: import("../../../../node_modules/@json-layout/core/types/state/types.js").StateNode;
3
+ $props: {
4
+ modelValue?: import("../../../../node_modules/@json-layout/core/types/state/types.js").StateNode | undefined;
5
+ };
6
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
7
+ export default _default;
8
+ //# sourceMappingURL=child-subtitle.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"child-subtitle.vue.d.ts","sourceRoot":"","sources":["../../../src/components/fragments/child-subtitle.vue.js"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"autocomplete.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/autocomplete.vue.js"],"names":[],"mappings":";;QAYI,4EAA4E;cAAlE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC;;;;QAKvE,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL/E,4EAA4E;cAAlE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC;;;;QAKvE,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"autocomplete.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/autocomplete.vue.js"],"names":[],"mappings":";;QAaI,4EAA4E;cAAlE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC;;;;QAKvE,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL/E,4EAA4E;cAAlE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC;;;;QAKvE,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-group.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/checkbox-group.vue.js"],"names":[],"mappings":";;QAQI,mFAAmF;cAAzE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC;;;;QAKhF,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,mFAAmF;cAAzE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC;;;;QAKhF,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"checkbox-group.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/checkbox-group.vue.js"],"names":[],"mappings":";;QASI,mFAAmF;cAAzE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC;;;;QAKhF,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,mFAAmF;cAAzE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC;;;;QAKhF,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"combobox.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/combobox.vue.js"],"names":[],"mappings":";;QASM,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"combobox.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/combobox.vue.js"],"names":[],"mappings":";;QAUM,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"file-input.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/file-input.vue.js"],"names":[],"mappings":";;QASM,+EAA+E;cAArE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,iBAAiB,CAAC;;;;QAK5E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,+EAA+E;cAArE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,iBAAiB,CAAC;;;;QAK5E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"file-input.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/file-input.vue.js"],"names":[],"mappings":";;QAUM,+EAA+E;cAArE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,iBAAiB,CAAC;;;;QAK5E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,+EAA+E;cAArE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,iBAAiB,CAAC;;;;QAK5E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"number-combobox.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/number-combobox.vue.js"],"names":[],"mappings":";;QASM,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"number-combobox.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/number-combobox.vue.js"],"names":[],"mappings":";;QAUM,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"number-field.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/number-field.vue.js"],"names":[],"mappings":";;QASM,iFAAiF;cAAvE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,mBAAmB,CAAC;;;;QAK9E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,iFAAiF;cAAvE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,mBAAmB,CAAC;;;;QAK9E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"number-field.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/number-field.vue.js"],"names":[],"mappings":";;QAUM,iFAAiF;cAAvE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,mBAAmB,CAAC;;;;QAK9E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,iFAAiF;cAAvE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,mBAAmB,CAAC;;;;QAK9E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/radio-group.vue.js"],"names":[],"mappings":";;QAUM,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;QAK7E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;QAK7E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"radio-group.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/radio-group.vue.js"],"names":[],"mappings":";;QAWM,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;QAK7E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;QAK7E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"select.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/select.vue.js"],"names":[],"mappings":";;QAYI,4EAA4E;cAAlE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC;;;;QAKzE,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,4EAA4E;cAAlE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC;;;;QAKzE,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"select.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/select.vue.js"],"names":[],"mappings":";;QAaI,4EAA4E;cAAlE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC;;;;QAKzE,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,4EAA4E;cAAlE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,cAAc,CAAC;;;;QAKzE,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"switch-group.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/switch-group.vue.js"],"names":[],"mappings":";;QAQI,mFAAmF;cAAzE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC;;;;QAKhF,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,mFAAmF;cAAzE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC;;;;QAKhF,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"switch-group.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/switch-group.vue.js"],"names":[],"mappings":";;QASI,mFAAmF;cAAzE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC;;;;QAKhF,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,mFAAmF;cAAzE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,qBAAqB,CAAC;;;;QAKhF,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"text-field.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/text-field.vue.js"],"names":[],"mappings":";;QASM,+EAA+E;cAArE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,iBAAiB,CAAC;;;;QAK5E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,+EAA+E;cAArE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,iBAAiB,CAAC;;;;QAK5E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"text-field.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/text-field.vue.js"],"names":[],"mappings":";;QAUM,+EAA+E;cAArE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,iBAAiB,CAAC;;;;QAK5E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,+EAA+E;cAArE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,iBAAiB,CAAC;;;;QAK5E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/textarea.vue.js"],"names":[],"mappings":";;QASM,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
1
+ {"version":3,"file":"textarea.vue.d.ts","sourceRoot":"","sources":["../../../src/components/nodes/textarea.vue.js"],"names":[],"mappings":";;QAUM,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC;;;;;;;QAL7E,8EAA8E;cAApE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,gBAAgB,CAAC;;;;QAK3E,gFAAgF;cAAtE,OAAO,KAAK,EAAE,QAAQ,CAAC,OAAO,gBAAgB,EAAE,kBAAkB,CAAC"}
@@ -1,13 +1,13 @@
1
1
  declare const _default: import("vue").DefineComponent<{}, {
2
2
  $emit: ((event: "update:modelValue", data: any) => void) & ((event: "update:state", state: import("../types.js").VjsfStatefulLayout) => void);
3
- options: Partial<Omit<import("../types.js").VjsfOptions, "width" | "vjsfSlots" | "onData" | "onUpdate" | "onAutofocus">> | null;
4
- modelValue: any;
5
3
  schema: Record<string, any>;
4
+ modelValue: any;
5
+ options: Partial<Omit<import("../types.js").VjsfOptions, "onData" | "onUpdate" | "onAutofocus" | "width" | "vjsfSlots">> | null;
6
6
  precompiledLayout: import("../../../node_modules/@json-layout/core/types/compile/types.js").CompiledLayout;
7
7
  $props: {
8
- readonly options?: Partial<Omit<import("../types.js").VjsfOptions, "width" | "vjsfSlots" | "onData" | "onUpdate" | "onAutofocus">> | null | undefined;
9
- readonly modelValue?: any;
10
8
  readonly schema?: Record<string, any> | undefined;
9
+ readonly modelValue?: any;
10
+ readonly options?: Partial<Omit<import("../types.js").VjsfOptions, "onData" | "onUpdate" | "onAutofocus" | "width" | "vjsfSlots">> | null | undefined;
11
11
  readonly precompiledLayout?: import("../../../node_modules/@json-layout/core/types/compile/types.js").CompiledLayout | undefined;
12
12
  };
13
13
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
@@ -0,0 +1,8 @@
1
+ /**
2
+ *
3
+ * @param {string} name
4
+ * @param {Record<string, any> | null} [localDefaults]
5
+ * @returns {import('vue').ComputedRef<Record<string, any>>}
6
+ */
7
+ export default function useCompDefaultProps(name: string, localDefaults?: Record<string, any> | null | undefined): import('vue').ComputedRef<Record<string, any>>;
8
+ //# sourceMappingURL=use-comp-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-comp-defaults.d.ts","sourceRoot":"","sources":["../../src/composables/use-comp-defaults.js"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,kDAJW,MAAM,2DAEJ,OAAO,KAAK,EAAE,WAAW,CAAC,OAAO,MAAM,EAAE,GAAG,CAAC,CAAC,CAW1D"}
@@ -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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/utils/props.js"],"names":[],"mappings":"AAkBA;;;GAGG;AACH,8CAHW,CAAC,OAAO,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,EAAE,GACjC,OAAO,MAAM,EAAE,GAAG,CAAC,GAAG;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAC,CAqBnD;AAID;;;;;;GAMG;AACH,oCANW,OAAO,aAAa,EAAE,QAAQ,kBAC9B,OAAO,aAAa,EAAE,kBAAkB,iGAGtC,OAAO,MAAM,EAAE,GAAG,CAAC,CAyC/B;AAGD;;;;GAIG;AACH,mCAJW,OAAO,mBAAmB,EAAE,SAAS,eACrC,OAAO,GACL,OAAO,MAAM,EAAE,GAAG,CAAC,CAS/B"}
1
+ {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/utils/props.js"],"names":[],"mappings":"AAcA;;;GAGG;AACH,8CAHW,CAAC,OAAO,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,EAAE,GACjC,OAAO,MAAM,EAAE,GAAG,CAAC,GAAG;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAC,CAqBnD;AAID;;;;;;GAMG;AACH,oCANW,OAAO,aAAa,EAAE,QAAQ,kBAC9B,OAAO,aAAa,EAAE,kBAAkB,iGAGtC,OAAO,MAAM,EAAE,GAAG,CAAC,CAwC/B;AAGD;;;;GAIG;AACH,mCAJW,OAAO,mBAAmB,EAAE,SAAS,eACrC,OAAO,GACL,OAAO,MAAM,EAAE,GAAG,CAAC,CAS/B"}