This commit is contained in:
rijkvanzanten
2023-04-14 17:30:56 -04:00
parent bdb1a919e2
commit 37658802b7
119 changed files with 224 additions and 0 deletions

View File

@@ -142,8 +142,10 @@ function findSelectedChoices(choices: Record<string, any>[], checked: (string |
if (item[props.itemChildren]) {
const children = item[props.itemChildren];
if (Array.isArray(children) && children.length > 0) {
const nestedResult = children.flatMap((child) => selectedChoices(child));
if (nestedResult.length > 0) {
result.push(...nestedResult, itemValue);
}

View File

@@ -146,6 +146,7 @@ function onSelect() {
for (let i = 0; i < contentEl.value.childNodes.length || !textSpan; i++) {
const child = contentEl.value.children[i];
if (child.classList.contains('text')) {
textSpan = child;
}

View File

@@ -202,6 +202,7 @@ function useComputedValues() {
() => props.modelValue,
() => {
const newVal = getInternalValue();
if (!isEqual(internalValue.value, newVal)) {
internalValue.value = newVal;
}

View File

@@ -179,6 +179,7 @@ const { toggleRawField, rawActiveFields } = useRawEditor();
const firstEditableFieldIndex = computed(() => {
for (let i = 0; i < fieldNames.value.length; i++) {
const field = fieldsMap.value[fieldNames.value[i]];
if (field?.meta && !field.meta?.readonly && !field.meta?.hidden) {
return i;
}
@@ -190,6 +191,7 @@ const firstEditableFieldIndex = computed(() => {
const firstVisibleFieldIndex = computed(() => {
for (let i = 0; i < fieldNames.value.length; i++) {
const field = fieldsMap.value[fieldNames.value[i]];
if (field?.meta && !field.meta?.hidden) {
return i;
}
@@ -223,6 +225,7 @@ function useForm() {
() => props.fields,
() => {
const newVal = getFields();
if (!isEqual(fields.value, newVal)) {
fields.value = newVal;
}
@@ -278,6 +281,7 @@ function useForm() {
for (const field of fieldsInGroup) {
const meta = fieldsMap.value?.[field.field]?.meta;
if (meta?.special?.includes('group') && !passed.includes(meta!.field)) {
passed.push(meta!.field);
fieldsInGroup.push(...getFieldsForGroup(meta!.field, passed));

View File

@@ -102,6 +102,7 @@ function checkKeyDown(event: any) {
}
} else if (event.code === 'ArrowLeft' && !event.shiftKey) {
const checkCaretPos = matchedPositions.indexOf(caretPos - 1);
if (checkCaretPos !== -1 && checkCaretPos % 2 === 1) {
event.preventDefault();
@@ -109,6 +110,7 @@ function checkKeyDown(event: any) {
}
} else if (event.code === 'ArrowRight' && !event.shiftKey) {
const checkCaretPos = matchedPositions.indexOf(caretPos + 1);
if (checkCaretPos !== -1 && checkCaretPos % 2 === 0) {
event.preventDefault();
@@ -116,6 +118,7 @@ function checkKeyDown(event: any) {
}
} else if (event.code === 'Backspace') {
const checkCaretPos = matchedPositions.indexOf(caretPos - 1);
if (checkCaretPos !== -1 && checkCaretPos % 2 === 1) {
event.preventDefault();
@@ -132,6 +135,7 @@ function checkKeyDown(event: any) {
}
} else if (event.code === 'Delete') {
const checkCaretPos = matchedPositions.indexOf(caretPos + 1);
if (checkCaretPos !== -1 && checkCaretPos % 2 === 0) {
event.preventDefault();
@@ -153,6 +157,7 @@ function checkKeyUp(event: any) {
if ((event.code === 'ArrowUp' || event.code === 'ArrowDown') && !event.shiftKey) {
const checkCaretPos = matchedPositions.indexOf(caretPos);
if (checkCaretPos !== -1 && checkCaretPos % 2 === 1) {
position(input.value!, matchedPositions[checkCaretPos] + 1);
} else if (checkCaretPos !== -1 && checkCaretPos % 2 === 0) {
@@ -165,6 +170,7 @@ function checkClick(event: any) {
const caretPos = window.getSelection()?.rangeCount ? position(input.value as Element).pos : 0;
const checkCaretPos = matchedPositions.indexOf(caretPos);
if (checkCaretPos !== -1) {
if (checkCaretPos % 2 === 0) {
position(input.value!, caretPos - 1);