@dative-gpi/foundation-shared-components 1.0.139 → 1.0.140-selectable

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 (75) hide show
  1. package/components/FSButton.vue +6 -6
  2. package/components/FSCalendarTwin.vue +1 -5
  3. package/components/FSCheckbox.vue +4 -4
  4. package/components/FSChip.vue +3 -3
  5. package/components/FSClickable.vue +6 -6
  6. package/components/FSClock.vue +16 -7
  7. package/components/FSDialogFormBody.vue +3 -3
  8. package/components/FSDialogMultiFormBody.vue +3 -3
  9. package/components/FSDialogSubmit.vue +3 -3
  10. package/components/FSInstantPicker.vue +8 -5
  11. package/components/FSOptionGroup.vue +8 -8
  12. package/components/FSOptionItem.vue +4 -4
  13. package/components/FSPagination.vue +1 -1
  14. package/components/FSRadio.vue +4 -4
  15. package/components/FSRadioGroup.vue +3 -3
  16. package/components/FSSlider.vue +4 -4
  17. package/components/FSSwitch.vue +6 -4
  18. package/components/FSTag.vue +2 -2
  19. package/components/FSTagGroup.vue +3 -3
  20. package/components/FSToggleSet.vue +7 -7
  21. package/components/autocompletes/FSAutoCompleteAddress.vue +3 -0
  22. package/components/buttons/FSButtonCheckbox.vue +4 -4
  23. package/components/fields/FSAutocompleteField.vue +21 -15
  24. package/components/fields/FSBaseField.vue +3 -3
  25. package/components/fields/FSColorField.vue +6 -6
  26. package/components/fields/FSDateField.vue +8 -8
  27. package/components/fields/FSDateRangeField.vue +5 -5
  28. package/components/fields/FSDateTimeField.vue +8 -8
  29. package/components/fields/FSDateTimeRangeDialog.vue +160 -0
  30. package/components/fields/FSDateTimeRangeField.vue +22 -115
  31. package/components/fields/FSEntityFieldUI.vue +6 -6
  32. package/components/fields/FSGradientField.vue +5 -5
  33. package/components/fields/FSIconField.vue +6 -6
  34. package/components/fields/FSMagicConfigField.vue +5 -4
  35. package/components/fields/FSNumberField.vue +3 -3
  36. package/components/fields/FSPasswordField.vue +7 -7
  37. package/components/fields/FSRichTextField.vue +18 -23
  38. package/components/fields/FSSelectField.vue +22 -16
  39. package/components/fields/FSTagField.vue +9 -9
  40. package/components/fields/FSTermField.vue +51 -42
  41. package/components/fields/FSTextArea.vue +7 -7
  42. package/components/fields/FSTextField.vue +7 -7
  43. package/components/fields/FSTimeField.vue +14 -10
  44. package/components/fields/FSTimeRangeField.vue +7 -7
  45. package/components/fields/FSTimeStepField.vue +5 -5
  46. package/components/fields/FSTranslateField.vue +7 -7
  47. package/components/fields/FSTranslateRichTextField.vue +7 -7
  48. package/components/fields/FSTranslateTextArea.vue +7 -7
  49. package/components/fields/FSTreeViewField.vue +11 -11
  50. package/components/fields/periodicField/FSPeriodicDailyField.vue +5 -5
  51. package/components/fields/periodicField/FSPeriodicField.vue +7 -7
  52. package/components/fields/periodicField/FSPeriodicMonthlyField.vue +8 -8
  53. package/components/fields/periodicField/FSPeriodicWeeklyField.vue +5 -5
  54. package/components/fields/periodicField/FSPeriodicYearlyField.vue +6 -6
  55. package/components/lists/FSDataIteratorItem.vue +23 -67
  56. package/components/lists/FSDataTableUI.vue +24 -19
  57. package/components/lists/FSFilterButton.vue +3 -3
  58. package/components/lists/FSHeaderButton.vue +3 -3
  59. package/components/lists/FSHiddenButton.vue +2 -2
  60. package/components/lists/FSSimpleListItem.vue +0 -1
  61. package/components/tiles/FSDeviceOrganisationTileUI.vue +0 -6
  62. package/components/tiles/FSGroupTileUI.vue +0 -6
  63. package/components/tiles/FSLoadTile.vue +3 -2
  64. package/components/tiles/FSServiceAccountOrganisationTileUI.vue +0 -6
  65. package/components/tiles/FSSimpleTileUI.vue +0 -6
  66. package/components/tiles/FSTile.vue +42 -48
  67. package/components/tiles/FSUserOrganisationTileUI.vue +0 -6
  68. package/composables/useAddress.ts +40 -8
  69. package/composables/useColors.ts +16 -7
  70. package/package.json +4 -4
  71. package/styles/components/fs_calendar.scss +1 -0
  72. package/styles/components/fs_chip.scss +1 -1
  73. package/styles/components/fs_draggable.scss +0 -5
  74. package/styles/components/index.scss +0 -1
  75. package/styles/components/fs_data_iterator_item.scss +0 -35
@@ -6,7 +6,7 @@
6
6
  :color="$props.color"
7
7
  :hideHeader="$props.hideHeader"
8
8
  :required="$props.required"
9
- :editable="$props.editable"
9
+ :disabled="$props.disabled"
10
10
  :readonly="true"
11
11
  :rules="$props.rules"
12
12
  :messages="messages"
@@ -26,7 +26,7 @@
26
26
  <FSButton
27
27
  variant="icon"
28
28
  icon="mdi-calendar"
29
- :editable="$props.editable"
29
+ :disabled="$props.disabled"
30
30
  :color="ColorEnum.Dark"
31
31
  />
32
32
  </slot>
@@ -41,66 +41,34 @@
41
41
  />
42
42
  </template>
43
43
  </FSTextField>
44
- <FSDialogSubmit
44
+ <FSDateTimeRangeDialog
45
45
  :title="$props.label"
46
46
  :submitButtonColor="$props.color"
47
- @click:submitButton="onSubmit"
48
- v-model="dialog"
49
- >
50
- <template
51
- #body
52
- >
53
- <FSCol>
54
- <FSCalendarTwin
55
- :color="$props.color"
56
- v-model="innerDateRange"
57
- />
58
- <FSRow>
59
- <FSCol>
60
- <FSClock
61
- :color="$props.color"
62
- :date="innerDateLeft"
63
- v-model="innerTimeLeft"
64
- />
65
- </FSCol>
66
- <FSCol>
67
- <FSClock
68
- :color="$props.color"
69
- :date="innerDateRight"
70
- v-model="innerTimeRight"
71
- />
72
- </FSCol>
73
- </FSRow>
74
- </FSCol>
75
- </template>
76
- </FSDialogSubmit>
47
+ :dialog="dialog"
48
+ :modelValue="$props.modelValue"
49
+ :color="$props.color"
50
+ @cancel="dialog = false"
51
+ @update:modelValue="onSubmit($event)"
52
+ />
77
53
  </template>
78
54
 
79
55
  <script lang="ts">
80
- import { computed, defineComponent, type PropType, ref, watch } from "vue";
56
+ import { computed, defineComponent, type PropType, ref } from "vue";
81
57
 
82
58
  import { type ColorBase, ColorEnum } from "@dative-gpi/foundation-shared-components/models";
83
- import { useAppTimeZone, useDateFormat } from "@dative-gpi/foundation-shared-services/composables";
59
+ import { useDateFormat } from "@dative-gpi/foundation-shared-services/composables";
84
60
  import { useRules } from "@dative-gpi/foundation-shared-components/composables";
85
61
 
86
- import FSDialogSubmit from "../FSDialogSubmit.vue";
87
- import FSCalendarTwin from "../FSCalendarTwin.vue";
62
+ import FSDateTimeRangeDialog from "./FSDateTimeRangeDialog.vue";
88
63
  import FSTextField from "./FSTextField.vue";
89
64
  import FSButton from "../FSButton.vue";
90
- import FSClock from "../FSClock.vue";
91
- import FSCol from "../FSCol.vue";
92
- import FSRow from "../FSRow.vue";
93
65
 
94
66
  export default defineComponent({
95
67
  name: "FSDateTimeRangeField",
96
68
  components: {
97
- FSDialogSubmit,
98
- FSCalendarTwin,
69
+ FSDateTimeRangeDialog,
99
70
  FSTextField,
100
- FSButton,
101
- FSClock,
102
- FSCol,
103
- FSRow
71
+ FSButton
104
72
  },
105
73
  props: {
106
74
  label: {
@@ -138,24 +106,19 @@ export default defineComponent({
138
106
  required: false,
139
107
  default: () => []
140
108
  },
141
- editable: {
109
+ disabled: {
142
110
  type: Boolean,
143
111
  required: false,
144
- default: true
112
+ default: false
145
113
  }
146
114
  },
147
115
  emits: ["update:modelValue"],
148
116
  setup(props, { emit }) {
149
- const { getUserOffset } = useAppTimeZone();
150
117
  const { epochToShortTimeFormat } = useDateFormat();
151
118
  const { validateOn, getMessages } = useRules();
152
119
 
153
120
  const dialog = ref(false);
154
121
 
155
- const innerDateRange = ref<number[] | null>(null);
156
- const innerTimeRight = ref(0);
157
- const innerTimeLeft = ref(0);
158
-
159
122
  const toShortTimeFormat = computed((): string => {
160
123
  if (!props.modelValue || !Array.isArray(props.modelValue) || !props.modelValue.length) {
161
124
  return "";
@@ -163,88 +126,32 @@ export default defineComponent({
163
126
  return props.modelValue.map((epoch) => epochToShortTimeFormat(epoch)).join(" - ");
164
127
  });
165
128
 
166
- const innerDateLeft = computed((): number | null => {
167
- if (innerDateRange.value && Array.isArray(innerDateRange.value) && innerDateRange.value.length) {
168
- return innerDateRange.value[0];
169
- }
170
- return null;
171
- });
172
-
173
- const innerDateRight= computed((): number | null => {
174
- if (innerDateRange.value && Array.isArray(innerDateRange.value) && innerDateRange.value.length > 1) {
175
- return innerDateRange.value[1];
176
- }
177
- return null;
178
- });
179
-
180
129
  const messages = computed((): string[] => getMessages(props.modelValue, props.rules, true));
181
130
 
182
131
  const onClick = (): void => {
183
- if (props.editable) {
132
+ if (!props.disabled) {
184
133
  dialog.value = true;
185
134
  }
186
135
  };
187
136
 
188
- const onClear = (): void => {
189
- emit("update:modelValue", null);
190
- innerTimeLeft.value = 0;
191
- innerTimeRight.value = 0;
192
- innerDateRange.value = null;
193
- };
194
-
195
- const onSubmit = (): void => {
196
- if (innerDateRange.value && Array.isArray(innerDateRange.value) && innerDateRange.value.length > 1) {
197
- emit("update:modelValue", [innerDateRange.value[0] + innerTimeLeft.value, innerDateRange.value[1] + innerTimeRight.value]);
198
- }
137
+ const onSubmit = (value: number[]): void => {
138
+ emit("update:modelValue", value);
199
139
  dialog.value = false;
200
140
  };
201
141
 
202
- const reset = (): void => {
203
- if (props.modelValue && Array.isArray(props.modelValue)) {
204
- // FSClock just gives two numbers without consideration for the time zone
205
- // We must adjust the time to the user's time zone
206
- switch (props.modelValue.length) {
207
- case 0: {
208
- break;
209
- }
210
- case 1: {
211
- innerTimeLeft.value = Math.floor((props.modelValue[0] + getUserOffset(props.modelValue[0])) % (24 * 60 * 60 * 1000));
212
- innerDateRange.value = [props.modelValue[0] - innerTimeLeft.value];
213
- break;
214
- }
215
- default: {
216
- innerTimeLeft.value = Math.floor((props.modelValue[0] + getUserOffset(props.modelValue[0])) % (24 * 60 * 60 * 1000));
217
- innerTimeRight.value = Math.floor((props.modelValue[1] + getUserOffset(props.modelValue[1])) % (24 * 60 * 60 * 1000));
218
- innerDateRange.value = [props.modelValue[0] - innerTimeLeft.value, props.modelValue[1] - innerTimeRight.value];
219
- break;
220
- }
221
- }
222
- }
223
- else {
224
- innerDateRange.value = null;
225
- innerTimeLeft.value = 0;
226
- innerTimeRight.value = 0;
227
- }
142
+ const onClear = (): void => {
143
+ emit("update:modelValue", null);
228
144
  };
229
145
 
230
- watch(() => props.modelValue, () => {
231
- reset();
232
- }, { immediate: true });
233
-
234
146
  return {
235
147
  toShortTimeFormat,
236
- innerDateLeft,
237
- innerTimeLeft,
238
- innerDateRight,
239
- innerTimeRight,
240
- innerDateRange,
241
148
  validateOn,
242
149
  ColorEnum,
243
150
  messages,
244
151
  dialog,
245
152
  onSubmit,
246
153
  onClear,
247
- onClick
154
+ onClick,
248
155
  };
249
156
  }
250
157
  });
@@ -3,7 +3,7 @@
3
3
  :description="$props.description"
4
4
  :hideHeader="$props.hideHeader"
5
5
  :required="$props.required"
6
- :editable="$props.editable"
6
+ :disabled="$props.disabled"
7
7
  :label="$props.label"
8
8
  :messages="messages"
9
9
  >
@@ -14,7 +14,7 @@
14
14
  :wrap="false"
15
15
  >
16
16
  <FSSelectField
17
- :editable="$props.editable"
17
+ :disabled="$props.disabled"
18
18
  :items="actualEntityTypes"
19
19
  :hideHeader="true"
20
20
  :clearable="false"
@@ -27,7 +27,7 @@
27
27
  <FSButton
28
28
  icon="mdi-pencil"
29
29
  :label="$tr('ui.common.edit', 'Edit')"
30
- :editable="$props.editable"
30
+ :disabled="$props.disabled"
31
31
  @click="$emit('click:select')"
32
32
  />
33
33
  </template>
@@ -37,7 +37,7 @@
37
37
  <FSButton
38
38
  icon="mdi-plus-circle-multiple-outline"
39
39
  :label="$tr('ui.common.select', 'Select')"
40
- :editable="$props.editable"
40
+ :disabled="$props.disabled"
41
41
  @click="$emit('click:select')"
42
42
  />
43
43
  </template>
@@ -170,10 +170,10 @@ export default defineComponent({
170
170
  required: false,
171
171
  default: null
172
172
  },
173
- editable: {
173
+ disabled: {
174
174
  type: Boolean,
175
175
  required: false,
176
- default: true
176
+ default: false
177
177
  },
178
178
  entityType: {
179
179
  type: Number as PropType<EntityType>,
@@ -6,7 +6,7 @@
6
6
  :label="$props.label"
7
7
  :description="$props.description"
8
8
  :required="$props.required"
9
- :editable="$props.editable"
9
+ :disabled="$props.disabled"
10
10
  v-bind="$attrs"
11
11
  >
12
12
  <FSRow>
@@ -15,14 +15,14 @@
15
15
  :allowOpacity="$props.allowOpacity"
16
16
  :modelValue="$props.modelValue[colorIndex - 1]"
17
17
  :required="$props.required"
18
- :editable="$props.editable"
18
+ :disabled="$props.disabled"
19
19
  :key="colorIndex"
20
20
  @update:modelValue="$emit('update:modelValue', $props.modelValue.map((color, i) => colorIndex === i + 1 ? $event : color))"
21
21
  />
22
22
  </FSRow>
23
23
  <FSSelectField
24
24
  class="fs-gradient-field-select"
25
- :editable="$props.editable"
25
+ :disabled="$props.disabled"
26
26
  :clearable="false"
27
27
  :items="items"
28
28
  modelValue="custom"
@@ -92,10 +92,10 @@ export default defineComponent({
92
92
  required: false,
93
93
  default: false
94
94
  },
95
- editable: {
95
+ disabled: {
96
96
  type: Boolean,
97
97
  required: false,
98
- default: true
98
+ default: false
99
99
  },
100
100
  allowOpacity: {
101
101
  type: Boolean,
@@ -5,7 +5,7 @@
5
5
  :description="$props.description"
6
6
  :hideHeader="$props.hideHeader"
7
7
  :required="$props.required"
8
- :editable="$props.editable"
8
+ :disabled="$props.disabled"
9
9
  :rules="$props.rules"
10
10
  :messages="messages"
11
11
  :validateOn="validateOn"
@@ -34,7 +34,7 @@
34
34
  :activeColor="$props.activeColor"
35
35
  :modelValue="$props.modelValue"
36
36
  :required="$props.required"
37
- :editable="$props.editable"
37
+ :disabled="$props.disabled"
38
38
  :values="icons"
39
39
  @update:modelValue="$emit('update:modelValue', $event)"
40
40
  />
@@ -42,7 +42,7 @@
42
42
  </template>
43
43
 
44
44
  <script lang="ts">
45
- import type { PropType} from "vue";
45
+ import type { PropType, StyleValue } from "vue";
46
46
  import { computed, defineComponent, ref, watch } from "vue";
47
47
 
48
48
  import { Icons, sortByLevenshteinDistance } from "@dative-gpi/foundation-shared-components/utils";
@@ -119,10 +119,10 @@ export default defineComponent({
119
119
  required: false,
120
120
  default: () => []
121
121
  },
122
- editable: {
122
+ disabled: {
123
123
  type: Boolean,
124
124
  required: false,
125
- default: true
125
+ default: false
126
126
  }
127
127
  },
128
128
  emits: ["update:modelValue"],
@@ -138,7 +138,7 @@ export default defineComponent({
138
138
  const innerValue = ref<string | null>(null);
139
139
 
140
140
  const style = computed((): StyleValue => {
141
- if (!props.editable) {
141
+ if (props.disabled) {
142
142
  return {
143
143
  "--fs-icon-field-color": lights.dark
144
144
  };
@@ -3,10 +3,11 @@
3
3
  class="fs-magic-config-field"
4
4
  >
5
5
  <component
6
+ v-if="$props.type"
6
7
  class="fs-magic-config-field-value"
7
8
  :is="get($props.type)"
8
9
  :label="$tr('ui.common.value', 'Value')"
9
- :editable="$props.editable"
10
+ :disabled="$props.disabled"
10
11
  :required="true"
11
12
  :rules="rules"
12
13
  :modelValue="valueToInput"
@@ -17,7 +18,7 @@
17
18
  >
18
19
  <FSTranslateField
19
20
  :label="$tr('ui.common.label', 'Label')"
20
- :editable="$props.editable"
21
+ :disabled="$props.disabled"
21
22
  :modelValue="$props.labelDefault"
22
23
  :translations="$props.translations"
23
24
  @update:modelValue="$emit('update:labelDefault', $event)"
@@ -80,10 +81,10 @@ export default defineComponent({
80
81
  required: false,
81
82
  default: () => []
82
83
  },
83
- editable: {
84
+ disabled: {
84
85
  type: Boolean,
85
86
  required: false,
86
- default: true
87
+ default: false
87
88
  }
88
89
  },
89
90
  emits: ["click:remove", "click:add", "update:modelValue", "update:labelDefault", "update:translations"],
@@ -2,7 +2,7 @@
2
2
  <FSTextField
3
3
  class="fs-number-field"
4
4
  minWidth="80px"
5
- :editable="$props.editable"
5
+ :disabled="$props.disabled"
6
6
  :modelValue="$props.modelValue?.toString()"
7
7
  @update:modelValue="onUpdate"
8
8
  v-bind="$attrs"
@@ -35,10 +35,10 @@ export default defineComponent({
35
35
  required: false,
36
36
  default: null
37
37
  },
38
- editable: {
38
+ disabled: {
39
39
  type: Boolean,
40
40
  required: false,
41
- default: true
41
+ default: false
42
42
  }
43
43
  },
44
44
  emits: ["update:modelValue"],
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <FSTextField
3
3
  :type="type"
4
- :editable="$props.editable"
4
+ :disabled="$props.disabled"
5
5
  :modelValue="$props.modelValue"
6
6
  @update:modelValue="$emit('update:modelValue', $event)"
7
7
  v-bind="$attrs"
@@ -20,7 +20,7 @@
20
20
  >
21
21
  <FSButton
22
22
  variant="icon"
23
- :editable="$props.editable"
23
+ :disabled="$props.disabled"
24
24
  :color="ColorEnum.Dark"
25
25
  :icon="icon"
26
26
  @click="onToggle"
@@ -33,7 +33,7 @@
33
33
  </template>
34
34
 
35
35
  <script lang="ts">
36
- import { computed, defineComponent, type PropType, ref } from "vue";
36
+ import { computed, defineComponent, ref, type PropType, type StyleValue } from "vue";
37
37
 
38
38
  import { useColors } from "@dative-gpi/foundation-shared-components/composables";
39
39
  import { ColorEnum } from "@dative-gpi/foundation-shared-components/models";
@@ -53,10 +53,10 @@ export default defineComponent({
53
53
  required: false,
54
54
  default: null
55
55
  },
56
- editable: {
56
+ disabled: {
57
57
  type: Boolean,
58
58
  required: false,
59
- default: true
59
+ default: false
60
60
  }
61
61
  },
62
62
  emits: ["update:modelValue"],
@@ -69,7 +69,7 @@ export default defineComponent({
69
69
  const stars = ref(true);
70
70
 
71
71
  const style = computed((): StyleValue => {
72
- if (!props.editable) {
72
+ if (props.disabled) {
73
73
  return {
74
74
  "--fs-password-field-cursor" : "default",
75
75
  "--fs-password-field-color": lights.dark,
@@ -88,7 +88,7 @@ export default defineComponent({
88
88
  const icon = computed((): string => stars.value ? "mdi-eye-off-outline" : "mdi-eye-outline");
89
89
 
90
90
  const onToggle = (): void => {
91
- if (!props.editable) {
91
+ if (props.disabled) {
92
92
  return;
93
93
  }
94
94
  stars.value = !stars.value;
@@ -30,7 +30,7 @@
30
30
  </FSRow>
31
31
  </slot>
32
32
  <FSRow
33
- v-if="$props.editable"
33
+ v-if="!$props.disabled"
34
34
  align="center-right"
35
35
  :wrap="false"
36
36
  >
@@ -193,7 +193,7 @@
193
193
  <div
194
194
  class="fs-rich-text-field-content"
195
195
  :data-variable-values="variableValues"
196
- :contenteditable="!readonly && $props.editable && !loading"
196
+ :contenteditable="!readonly && !$props.disabled && !loading"
197
197
  :data-readonly="$props.variant === 'readonly'"
198
198
  :id="id"
199
199
  />
@@ -204,7 +204,7 @@
204
204
  </div>
205
205
 
206
206
  <FSTextField
207
- v-if="isLink && !readonly && $props.editable"
207
+ v-if="isLink && !readonly && !$props.disabled"
208
208
  :hideHeader="true"
209
209
  @keypress.enter.stop="toggleLink"
210
210
  v-model="linkUrl"
@@ -310,10 +310,10 @@ export default defineComponent({
310
310
  required: false,
311
311
  default: () => ({})
312
312
  },
313
- editable: {
313
+ disabled: {
314
314
  type: Boolean,
315
315
  required: false,
316
- default: true
316
+ default: false
317
317
  }
318
318
  },
319
319
  emits: ["update:modelValue"],
@@ -400,7 +400,7 @@ export default defineComponent({
400
400
  }
401
401
  switch (props.variant) {
402
402
  case "standard": {
403
- if (!props.editable) {
403
+ if (props.disabled) {
404
404
  return {
405
405
  "--fs-rich-text-field-undo-cursor" : "default",
406
406
  "--fs-rich-text-field-icon-cursor" : "default",
@@ -450,7 +450,7 @@ export default defineComponent({
450
450
  });
451
451
 
452
452
  const toolbarColors = computed((): { [code: string]: string } => {
453
- if (props.editable) {
453
+ if (!props.disabled) {
454
454
  return {
455
455
  undo: canUndo.value ? darks.base : lights.base,
456
456
  bold: isBold.value ? darks.base : lights.base,
@@ -501,11 +501,11 @@ export default defineComponent({
501
501
  return;
502
502
  }
503
503
  const editorModelValue = JSON.stringify(editorState.toJSON());
504
- if(editorModelValue === emptyLexicalState) {
504
+ if(editorModelValue === emptyLexicalState && props.modelValue !== null) {
505
505
  emit("update:modelValue", null);
506
506
  return;
507
507
  }
508
- if(editorModelValue !== props.modelValue) {
508
+ if(editorModelValue !== emptyLexicalState && editorModelValue !== props.modelValue) {
509
509
  emit("update:modelValue", editorModelValue);
510
510
  }
511
511
  });
@@ -674,21 +674,16 @@ export default defineComponent({
674
674
  return;
675
675
  }
676
676
  if (props.modelValue != null) {
677
- editor.update(() => {
678
- if (typeof props.modelValue === "string") {
679
- if (props.modelValue !== "") {
680
- editor.setEditorState(editor.parseEditorState(props.modelValue!));
681
- }
682
- }
683
- else {
684
- editor.setEditorState(editor.parseEditorState(JSON.stringify(props.modelValue)));
685
- }
686
- });
687
- return;
677
+ if (typeof props.modelValue === "string" && props.modelValue !== "") {
678
+ editor.setEditorState(editor.parseEditorState(props.modelValue!));
679
+ return;
680
+ }
681
+ if (typeof props.modelValue === "object") {
682
+ editor.setEditorState(editor.parseEditorState(JSON.stringify(props.modelValue)));
683
+ return;
684
+ }
688
685
  }
689
- editor.update(() => {
690
- editor.setEditorState(editor.parseEditorState(emptyLexicalState));
691
- });
686
+ editor.setEditorState(editor.parseEditorState(emptyLexicalState));
692
687
  }
693
688
 
694
689
  watch(() => props.modelValue, () => {