@sfxcode/formkit-primevue 2.3.10 → 2.4.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/dist/components/FormKitDebug.vue +2 -2
- package/dist/components/PrimeCheckbox.vue +8 -6
- package/dist/components/PrimeInputMask.vue +13 -32
- package/dist/components/PrimeInputText.vue +2 -4
- package/dist/components/PrimeOutputBoolean.vue +2 -2
- package/dist/components/PrimeOutputDate.vue +2 -2
- package/dist/components/PrimeOutputDuration.vue +2 -2
- package/dist/components/PrimeOutputLink.vue +2 -2
- package/dist/components/PrimeOutputList.vue +2 -2
- package/dist/components/PrimeOutputNumber.vue +2 -2
- package/dist/components/PrimeOutputText.vue +2 -2
- package/dist/composables/useFormKitSection.d.ts +1 -0
- package/dist/composables/useFormKitSection.js +7 -2
- package/dist/composables/useFormKitSection.mjs +7 -3
- package/dist/composables/useInputEditor.d.ts +0 -1
- package/dist/composables/useInputEditor.js +2 -6
- package/dist/composables/useInputEditor.mjs +3 -6
- package/dist/composables/useInputEditorSchema.js +2 -2
- package/dist/composables/useInputEditorSchema.mjs +2 -2
- package/dist/definitions/input.js +2 -2
- package/dist/definitions/input.mjs +4 -3
- package/dist/definitions/output.js +7 -7
- package/dist/definitions/output.mjs +7 -7
- package/dist/sass/formkit-primevue.scss +8 -8
- package/dist/style.css +1 -1
- package/package.json +4 -3
|
@@ -15,8 +15,8 @@ defineProps({
|
|
|
15
15
|
<div class="p-formkit-data-debug">
|
|
16
16
|
<h3>{{ header }}</h3>
|
|
17
17
|
<slot />
|
|
18
|
-
<pre v-if="data"
|
|
19
|
-
<span v-else
|
|
18
|
+
<pre v-if="data">{{ data }}</pre>
|
|
19
|
+
<span v-else>No Data available</span>
|
|
20
20
|
</div>
|
|
21
21
|
</template>
|
|
22
22
|
|
|
@@ -23,20 +23,22 @@ const props = defineProps({
|
|
|
23
23
|
},
|
|
24
24
|
})
|
|
25
25
|
|
|
26
|
-
const { hasPrefix, hasSuffix } = useFormKitSection(props.context)
|
|
26
|
+
const { hasPrefix, hasSuffix, generateId } = useFormKitSection(props.context)
|
|
27
27
|
|
|
28
28
|
const { styleClass, handleInput, handleBlur } = useFormKitInput(props.context)
|
|
29
|
+
|
|
30
|
+
const generatedId = generateId()
|
|
29
31
|
</script>
|
|
30
32
|
|
|
31
33
|
<template>
|
|
32
34
|
<div class="p-formkit">
|
|
33
|
-
<
|
|
35
|
+
<label v-if="hasPrefix" :for="generatedId" class="formkit-prefix">
|
|
34
36
|
{{ context?.prefix }}
|
|
35
|
-
</
|
|
37
|
+
</label>
|
|
36
38
|
<Checkbox
|
|
37
39
|
v-model="context._value"
|
|
38
40
|
v-bind="context?.attrs"
|
|
39
|
-
:input-id="
|
|
41
|
+
:input-id="generatedId"
|
|
40
42
|
:disabled="!!context?.disabled"
|
|
41
43
|
:readonly="context?.attrs.readonly ?? false"
|
|
42
44
|
:input-style="context?.attrs.style"
|
|
@@ -55,8 +57,8 @@ const { styleClass, handleInput, handleBlur } = useFormKitInput(props.context)
|
|
|
55
57
|
@change="handleInput"
|
|
56
58
|
@blur="handleBlur"
|
|
57
59
|
/>
|
|
58
|
-
<
|
|
60
|
+
<label v-if="hasSuffix" :for="generatedId" class="formkit-suffix">
|
|
59
61
|
{{ context?.suffix }}
|
|
60
|
-
</
|
|
62
|
+
</label>
|
|
61
63
|
</div>
|
|
62
64
|
</template>
|
|
@@ -3,7 +3,9 @@ import type { PropType } from 'vue'
|
|
|
3
3
|
import type { FormKitFrameworkContext } from '@formkit/core'
|
|
4
4
|
|
|
5
5
|
import type { InputMaskProps } from 'primevue/inputmask'
|
|
6
|
-
import
|
|
6
|
+
import InputIcon from 'primevue/inputicon'
|
|
7
|
+
import IconField from 'primevue/iconfield'
|
|
8
|
+
import { useFormKitInput, useFormKitSection } from '../composables'
|
|
7
9
|
|
|
8
10
|
export interface FormKitPrimeInputMaskProps {
|
|
9
11
|
mask?: InputMaskProps['mask']
|
|
@@ -15,9 +17,6 @@ export interface FormKitPrimeInputMaskProps {
|
|
|
15
17
|
unstyled?: InputMaskProps['unstyled']
|
|
16
18
|
invalid?: InputMaskProps['invalid']
|
|
17
19
|
variant?: InputMaskProps['variant']
|
|
18
|
-
iconLeft?: string
|
|
19
|
-
iconRight?: string
|
|
20
|
-
|
|
21
20
|
}
|
|
22
21
|
|
|
23
22
|
const props = defineProps({
|
|
@@ -27,35 +26,15 @@ const props = defineProps({
|
|
|
27
26
|
},
|
|
28
27
|
})
|
|
29
28
|
|
|
30
|
-
const { styleClass } = useFormKitInput(props.context)
|
|
31
|
-
|
|
32
|
-
function handleInput(e: FocusEvent) {
|
|
33
|
-
props.context?.node.input(props.context?._value)
|
|
34
|
-
props.context?.handlers.blur(e)
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
function hasLeftIcon() {
|
|
38
|
-
return props.context?.iconLeft && props.context?.iconLeft.length > 0
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
function hasRightIcon() {
|
|
42
|
-
return props.context?.iconRight && props.context?.iconRight.length > 0
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
function spanClass() {
|
|
46
|
-
let result = ''
|
|
47
|
-
if (hasLeftIcon())
|
|
48
|
-
result = `${result}p-input-icon-left `
|
|
49
|
-
if (hasRightIcon())
|
|
50
|
-
result = `${result}p-input-icon-right `
|
|
51
|
-
return result
|
|
52
|
-
}
|
|
29
|
+
const { styleClass, handleInput, handleBlur } = useFormKitInput(props.context)
|
|
30
|
+
const { hasPrefixIcon, hasSuffixIcon } = useFormKitSection(props.context)
|
|
53
31
|
</script>
|
|
54
32
|
|
|
55
33
|
<template>
|
|
56
34
|
<div class="p-formkit">
|
|
57
|
-
<
|
|
58
|
-
<
|
|
35
|
+
<IconField>
|
|
36
|
+
<InputIcon v-if="hasPrefixIcon" :class="context?.iconPrefix" />
|
|
37
|
+
<InputMask
|
|
59
38
|
:id="context.id"
|
|
60
39
|
v-model="context._value"
|
|
61
40
|
v-bind="context?.attrs"
|
|
@@ -74,8 +53,10 @@ function spanClass() {
|
|
|
74
53
|
:variant="context.variant"
|
|
75
54
|
:pt-options="context.ptOptions"
|
|
76
55
|
:unstyled="context.unstyled ?? false"
|
|
77
|
-
@
|
|
78
|
-
|
|
79
|
-
|
|
56
|
+
@input="handleInput"
|
|
57
|
+
@blur="handleBlur"
|
|
58
|
+
/>
|
|
59
|
+
<InputIcon v-if="hasSuffixIcon" :class="context?.iconSuffix" />
|
|
60
|
+
</IconField>
|
|
80
61
|
</div>
|
|
81
62
|
</template>
|
|
@@ -12,8 +12,6 @@ export interface FormKitPrimeInputTextProps {
|
|
|
12
12
|
ptOptions?: InputTextProps['ptOptions']
|
|
13
13
|
unstyled?: InputTextProps['unstyled']
|
|
14
14
|
placeholder?: InputTextProps['placeholder']
|
|
15
|
-
icon?: string
|
|
16
|
-
|
|
17
15
|
}
|
|
18
16
|
|
|
19
17
|
const props = defineProps({
|
|
@@ -30,7 +28,7 @@ const { hasPrefixIcon, hasSuffixIcon } = useFormKitSection(props.context)
|
|
|
30
28
|
<template>
|
|
31
29
|
<div class="p-formkit">
|
|
32
30
|
<IconField>
|
|
33
|
-
<InputIcon v-if="hasPrefixIcon" :class="context?.
|
|
31
|
+
<InputIcon v-if="hasPrefixIcon" :class="context?.iconPrefix" />
|
|
34
32
|
<InputText
|
|
35
33
|
:id="context.id"
|
|
36
34
|
v-model="context._value"
|
|
@@ -49,7 +47,7 @@ const { hasPrefixIcon, hasSuffixIcon } = useFormKitSection(props.context)
|
|
|
49
47
|
@input="handleInput"
|
|
50
48
|
@blur="handleBlur"
|
|
51
49
|
/>
|
|
52
|
-
<InputIcon v-if="hasSuffixIcon" :class="context?.
|
|
50
|
+
<InputIcon v-if="hasSuffixIcon" :class="context?.iconSuffix" />
|
|
53
51
|
</IconField>
|
|
54
52
|
</div>
|
|
55
53
|
</template>
|
|
@@ -25,7 +25,7 @@ const translated = computed(() => {
|
|
|
25
25
|
|
|
26
26
|
<template>
|
|
27
27
|
<div class="p-formkit p-output-boolean">
|
|
28
|
-
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.
|
|
28
|
+
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.iconPrefix" />
|
|
29
29
|
<span v-if="hasPrefix" class="formkit-prefix">
|
|
30
30
|
{{ context?.prefix }}
|
|
31
31
|
</span>
|
|
@@ -35,6 +35,6 @@ const translated = computed(() => {
|
|
|
35
35
|
<span v-if="hasSuffix" class="formkit-suffix">
|
|
36
36
|
{{ context?.suffix }}
|
|
37
37
|
</span>
|
|
38
|
-
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.
|
|
38
|
+
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.iconSuffix" />
|
|
39
39
|
</div>
|
|
40
40
|
</template>
|
|
@@ -34,7 +34,7 @@ const converted = computed(() => {
|
|
|
34
34
|
|
|
35
35
|
<template>
|
|
36
36
|
<div class="p-formkit p-output-date">
|
|
37
|
-
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.
|
|
37
|
+
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.iconPrefix" />
|
|
38
38
|
<span v-if="hasPrefix" class="formkit-prefix">
|
|
39
39
|
{{ context?.attrs?.prefix }}
|
|
40
40
|
</span>
|
|
@@ -44,6 +44,6 @@ const converted = computed(() => {
|
|
|
44
44
|
<span v-if="hasSuffix" class="formkit-suffix">
|
|
45
45
|
{{ context?.attrs?.suffix }}
|
|
46
46
|
</span>
|
|
47
|
-
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.
|
|
47
|
+
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.iconSuffix" />
|
|
48
48
|
</div>
|
|
49
49
|
</template>
|
|
@@ -16,7 +16,7 @@ const { formattedDuration } = useOutputDuration()
|
|
|
16
16
|
|
|
17
17
|
<template>
|
|
18
18
|
<div class="p-formkit p-output-duration">
|
|
19
|
-
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.
|
|
19
|
+
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.iconPrefix" />
|
|
20
20
|
<span v-if="hasPrefix" class="formkit-prefix">
|
|
21
21
|
{{ context?.attrs?.prefix }}
|
|
22
22
|
</span>
|
|
@@ -26,6 +26,6 @@ const { formattedDuration } = useOutputDuration()
|
|
|
26
26
|
<span v-if="hasSuffix" class="formkit-suffix">
|
|
27
27
|
{{ context?.attrs?.suffix }}
|
|
28
28
|
</span>
|
|
29
|
-
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.
|
|
29
|
+
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.iconSuffix" />
|
|
30
30
|
</div>
|
|
31
31
|
</template>
|
|
@@ -17,7 +17,7 @@ const url = computed(() => props.context?._value.indexOf('http') > -1 ? props.co
|
|
|
17
17
|
|
|
18
18
|
<template>
|
|
19
19
|
<div class="p-formkit p-output-link">
|
|
20
|
-
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.
|
|
20
|
+
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.iconPrefix" />
|
|
21
21
|
<span v-if="hasPrefix" class="formkit-prefix">
|
|
22
22
|
{{ context?.attrs?.prefix }}
|
|
23
23
|
</span>
|
|
@@ -33,6 +33,6 @@ const url = computed(() => props.context?._value.indexOf('http') > -1 ? props.co
|
|
|
33
33
|
<span v-if="hasSuffix" class="formkit-suffix">
|
|
34
34
|
{{ context?.attrs?.suffix }}
|
|
35
35
|
</span>
|
|
36
|
-
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.
|
|
36
|
+
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.iconSuffix" />
|
|
37
37
|
</div>
|
|
38
38
|
</template>
|
|
@@ -23,7 +23,7 @@ function listValue(index: number, value: string): string {
|
|
|
23
23
|
|
|
24
24
|
<template>
|
|
25
25
|
<div class="p-formkit p-output-list">
|
|
26
|
-
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.
|
|
26
|
+
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.iconPrefix" />
|
|
27
27
|
<span v-if="hasPrefix" class="formkit-prefix">
|
|
28
28
|
{{ context?.attrs?.prefix }}
|
|
29
29
|
</span>
|
|
@@ -35,6 +35,6 @@ function listValue(index: number, value: string): string {
|
|
|
35
35
|
<span v-if="hasSuffix" class="formkit-suffix">
|
|
36
36
|
{{ context?.attrs?.suffix }}
|
|
37
37
|
</span>
|
|
38
|
-
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.
|
|
38
|
+
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.iconSuffix" />
|
|
39
39
|
</div>
|
|
40
40
|
</template>
|
|
@@ -42,7 +42,7 @@ const converted = computed(() => {
|
|
|
42
42
|
|
|
43
43
|
<template>
|
|
44
44
|
<div class="p-formkit p-output-number">
|
|
45
|
-
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.
|
|
45
|
+
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.iconPrefix" />
|
|
46
46
|
<span v-if="hasPrefix" class="formkit-prefix">
|
|
47
47
|
{{ context?.attrs?.prefix }}
|
|
48
48
|
</span>
|
|
@@ -52,6 +52,6 @@ const converted = computed(() => {
|
|
|
52
52
|
<span v-if="hasSuffix" class="formkit-suffix">
|
|
53
53
|
{{ context?.attrs?.suffix }}
|
|
54
54
|
</span>
|
|
55
|
-
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.
|
|
55
|
+
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.iconSuffix" />
|
|
56
56
|
</div>
|
|
57
57
|
</template>
|
|
@@ -15,7 +15,7 @@ const { hasPrefix, hasPrefixIcon, hasSuffix, hasSuffixIcon } = useFormKitSection
|
|
|
15
15
|
|
|
16
16
|
<template>
|
|
17
17
|
<div class="p-formkit p-output-text">
|
|
18
|
-
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.
|
|
18
|
+
<i v-if="hasPrefixIcon" class="formkit-prefix-icon" :class="context?.iconPrefix" />
|
|
19
19
|
<span v-if="hasPrefix" class="formkit-prefix">
|
|
20
20
|
{{ context?.attrs?.prefix }}
|
|
21
21
|
</span>
|
|
@@ -29,6 +29,6 @@ const { hasPrefix, hasPrefixIcon, hasSuffix, hasSuffixIcon } = useFormKitSection
|
|
|
29
29
|
<span v-if="hasSuffix" class="formkit-suffix">
|
|
30
30
|
{{ context?.attrs?.suffix }}
|
|
31
31
|
</span>
|
|
32
|
-
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.
|
|
32
|
+
<i v-if="hasSuffixIcon" class="formkit-suffix-icon" :class="context?.iconSuffix" />
|
|
33
33
|
</div>
|
|
34
34
|
</template>
|
|
@@ -5,20 +5,25 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.useFormKitSection = useFormKitSection;
|
|
7
7
|
var _vue = require("vue");
|
|
8
|
+
var _uuid = require("uuid");
|
|
8
9
|
function useFormKitSection(context) {
|
|
9
10
|
const hasPrefix = (0, _vue.computed)(() => {
|
|
10
11
|
return context?.prefix && context?.prefix.length > 0;
|
|
11
12
|
});
|
|
12
13
|
const hasPrefixIcon = (0, _vue.computed)(() => {
|
|
13
|
-
return context?.
|
|
14
|
+
return context?.iconPrefix && context?.iconPrefix.length > 0;
|
|
14
15
|
});
|
|
15
16
|
const hasSuffixIcon = (0, _vue.computed)(() => {
|
|
16
|
-
return context?.
|
|
17
|
+
return context?.iconSuffix && context?.iconSuffix.length > 0;
|
|
17
18
|
});
|
|
18
19
|
const hasSuffix = (0, _vue.computed)(() => {
|
|
19
20
|
return context?.suffix && context?.suffix.length > 0;
|
|
20
21
|
});
|
|
22
|
+
function generateId() {
|
|
23
|
+
return (0, _uuid.v4)();
|
|
24
|
+
}
|
|
21
25
|
return {
|
|
26
|
+
generateId,
|
|
22
27
|
hasPrefix,
|
|
23
28
|
hasPrefixIcon,
|
|
24
29
|
hasSuffix,
|
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
import { computed } from "vue";
|
|
2
|
+
import { v4 as uuidv4 } from "uuid";
|
|
2
3
|
export function useFormKitSection(context) {
|
|
3
4
|
const hasPrefix = computed(() => {
|
|
4
5
|
return context?.prefix && context?.prefix.length > 0;
|
|
5
6
|
});
|
|
6
7
|
const hasPrefixIcon = computed(() => {
|
|
7
|
-
return context?.
|
|
8
|
+
return context?.iconPrefix && context?.iconPrefix.length > 0;
|
|
8
9
|
});
|
|
9
10
|
const hasSuffixIcon = computed(() => {
|
|
10
|
-
return context?.
|
|
11
|
+
return context?.iconSuffix && context?.iconSuffix.length > 0;
|
|
11
12
|
});
|
|
12
13
|
const hasSuffix = computed(() => {
|
|
13
14
|
return context?.suffix && context?.suffix.length > 0;
|
|
14
15
|
});
|
|
15
|
-
|
|
16
|
+
function generateId() {
|
|
17
|
+
return uuidv4();
|
|
18
|
+
}
|
|
19
|
+
return { generateId, hasPrefix, hasPrefixIcon, hasSuffix, hasSuffixIcon };
|
|
16
20
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export declare function useInputEditor(): {
|
|
2
2
|
primeInputNames: string[];
|
|
3
3
|
primeOutputNames: string[];
|
|
4
|
-
generateSchemaItemId: () => string;
|
|
5
4
|
editorDataToSchema: (data: any) => any;
|
|
6
5
|
editorDataToJson: (data: any) => string;
|
|
7
6
|
editorDataToCode: (data: any) => string;
|
|
@@ -8,9 +8,6 @@ function useInputEditor() {
|
|
|
8
8
|
const primeInputWithOptionNames = ["CascadeSelect", "Listbox", "MultiSelect", "RadioButton", "Select", "SelectButton", "TreeSelect"];
|
|
9
9
|
const primeInputNames = [...primeInputWithOptionNames, "AutoComplete", "Checkbox", "ColorPicker", "DatePicker", "Editor", "InputMask", "InputNumber", "InputOtp", "InputText", "Knob", "Password", "Rating", "Slider", "Textarea", "ToggleButton", "ToggleSwitch"].sort();
|
|
10
10
|
const primeOutputNames = ["OutputBoolean", "OutputDate", "OutputDuration", "OutputLink", "OutputList", "OutputNumber", "OutputText"];
|
|
11
|
-
function generateSchemaItemId() {
|
|
12
|
-
return `id-${Math.random().toString(36).substring(2, 15)}`;
|
|
13
|
-
}
|
|
14
11
|
function editorDataToSchema(data) {
|
|
15
12
|
if (!data) return {};
|
|
16
13
|
const formkitInput = data?._dollar_formkit;
|
|
@@ -35,8 +32,8 @@ function useInputEditor() {
|
|
|
35
32
|
preserve: preserveValue
|
|
36
33
|
};
|
|
37
34
|
let outerClass = "";
|
|
38
|
-
if (data.outerClassGrid && data.outerClassGrid !== "col-12") outerClass =
|
|
39
|
-
if (data.outerClass) outerClass = outerClass
|
|
35
|
+
if (data.outerClassGrid && data.outerClassGrid !== "col-12") outerClass = data.outerClassGrid;
|
|
36
|
+
if (data.outerClass) outerClass = `${outerClass} ${data.outerClass}`;
|
|
40
37
|
if (outerClass.trim().length === 0) outerClass = void 0;
|
|
41
38
|
const undefinedObject = {
|
|
42
39
|
prime: void 0,
|
|
@@ -109,7 +106,6 @@ function useInputEditor() {
|
|
|
109
106
|
return {
|
|
110
107
|
primeInputNames,
|
|
111
108
|
primeOutputNames,
|
|
112
|
-
generateSchemaItemId,
|
|
113
109
|
editorDataToSchema,
|
|
114
110
|
editorDataToJson,
|
|
115
111
|
editorDataToCode: editorDataToObject,
|
|
@@ -2,9 +2,6 @@ export function useInputEditor() {
|
|
|
2
2
|
const primeInputWithOptionNames = ["CascadeSelect", "Listbox", "MultiSelect", "RadioButton", "Select", "SelectButton", "TreeSelect"];
|
|
3
3
|
const primeInputNames = [...primeInputWithOptionNames, "AutoComplete", "Checkbox", "ColorPicker", "DatePicker", "Editor", "InputMask", "InputNumber", "InputOtp", "InputText", "Knob", "Password", "Rating", "Slider", "Textarea", "ToggleButton", "ToggleSwitch"].sort();
|
|
4
4
|
const primeOutputNames = ["OutputBoolean", "OutputDate", "OutputDuration", "OutputLink", "OutputList", "OutputNumber", "OutputText"];
|
|
5
|
-
function generateSchemaItemId() {
|
|
6
|
-
return `id-${Math.random().toString(36).substring(2, 15)}`;
|
|
7
|
-
}
|
|
8
5
|
function editorDataToSchema(data) {
|
|
9
6
|
if (!data)
|
|
10
7
|
return {};
|
|
@@ -26,9 +23,9 @@ export function useInputEditor() {
|
|
|
26
23
|
const defaultObject = { readonly: readonlyValue, disabled: disabledValue, preserve: preserveValue };
|
|
27
24
|
let outerClass = "";
|
|
28
25
|
if (data.outerClassGrid && data.outerClassGrid !== "col-12")
|
|
29
|
-
outerClass =
|
|
26
|
+
outerClass = data.outerClassGrid;
|
|
30
27
|
if (data.outerClass)
|
|
31
|
-
outerClass = outerClass
|
|
28
|
+
outerClass = `${outerClass} ${data.outerClass}`;
|
|
32
29
|
if (outerClass.trim().length === 0)
|
|
33
30
|
outerClass = void 0;
|
|
34
31
|
const undefinedObject = { prime: void 0, schemaResultFormKey: void 0, _dollar_formkit: void 0, slots: void 0, selectButton: void 0, outerClassGrid: void 0 };
|
|
@@ -72,5 +69,5 @@ export function useInputEditor() {
|
|
|
72
69
|
const formkitInput = schema?.$formkit;
|
|
73
70
|
return { ...schema, _dollar_formkit: formkitInput };
|
|
74
71
|
}
|
|
75
|
-
return { primeInputNames, primeOutputNames,
|
|
72
|
+
return { primeInputNames, primeOutputNames, editorDataToSchema, editorDataToJson, editorDataToCode: editorDataToObject, schemaToEditorData };
|
|
76
73
|
}
|
|
@@ -221,7 +221,7 @@ function useInputEditorSchema() {
|
|
|
221
221
|
}, {
|
|
222
222
|
$formkit: "primeInputText",
|
|
223
223
|
if: "$get(selectButton).value === 'showDisplay'",
|
|
224
|
-
name: "
|
|
224
|
+
name: "iconPrefix",
|
|
225
225
|
label: "Prefix Icon",
|
|
226
226
|
key: "schema_prefix_icon",
|
|
227
227
|
outerClass: "col-6",
|
|
@@ -245,7 +245,7 @@ function useInputEditorSchema() {
|
|
|
245
245
|
}, {
|
|
246
246
|
$formkit: "primeInputText",
|
|
247
247
|
if: "$get(selectButton).value === 'showDisplay'",
|
|
248
|
-
name: "
|
|
248
|
+
name: "iconSuffix",
|
|
249
249
|
label: "Suffix Icon",
|
|
250
250
|
key: "schema_suffix_icon",
|
|
251
251
|
outerClass: "col-6",
|
|
@@ -177,7 +177,7 @@ export function useInputEditorSchema() {
|
|
|
177
177
|
{
|
|
178
178
|
$formkit: "primeInputText",
|
|
179
179
|
if: "$get(selectButton).value === 'showDisplay'",
|
|
180
|
-
name: "
|
|
180
|
+
name: "iconPrefix",
|
|
181
181
|
label: "Prefix Icon",
|
|
182
182
|
key: "schema_prefix_icon",
|
|
183
183
|
outerClass: "col-6",
|
|
@@ -204,7 +204,7 @@ export function useInputEditorSchema() {
|
|
|
204
204
|
{
|
|
205
205
|
$formkit: "primeInputText",
|
|
206
206
|
if: "$get(selectButton).value === 'showDisplay'",
|
|
207
|
-
name: "
|
|
207
|
+
name: "iconSuffix",
|
|
208
208
|
label: "Suffix Icon",
|
|
209
209
|
key: "schema_suffix_icon",
|
|
210
210
|
outerClass: "col-6",
|
|
@@ -33,13 +33,13 @@ const primeAutoCompleteDefinition = exports.primeAutoCompleteDefinition = (0, _v
|
|
|
33
33
|
props: ["pt", "ptOptions", "unstyled", "Select", "multiple", "typeahead"]
|
|
34
34
|
});
|
|
35
35
|
const primeInputTextDefinition = exports.primeInputTextDefinition = (0, _vue.createInput)(_PrimeInputText.default, {
|
|
36
|
-
props: ["pt", "ptOptions", "unstyled", "placeholder", "
|
|
36
|
+
props: ["pt", "ptOptions", "unstyled", "placeholder", "iconPrefix", "iconSuffix"]
|
|
37
37
|
});
|
|
38
38
|
const primeInputNumberDefinition = exports.primeInputNumberDefinition = (0, _vue.createInput)(_PrimeInputNumber.default, {
|
|
39
39
|
props: ["useGrouping", "min", "max", "minFractionDigits", "maxFractionDigits", "locale", "mode", "currency", "prefix", "suffix", "showButtons", "buttonLayout", "step", "pt", "ptOptions", "unstyled", "placeholder"]
|
|
40
40
|
});
|
|
41
41
|
const primeInputMaskDefinition = exports.primeInputMaskDefinition = (0, _vue.createInput)(_PrimeInputMask.default, {
|
|
42
|
-
props: ["mask", "slotChar", "autoClear", "unmask", "pt", "ptOptions", "unstyled", "invalid", "variant", "
|
|
42
|
+
props: ["mask", "slotChar", "autoClear", "unmask", "pt", "ptOptions", "unstyled", "invalid", "variant", "iconPrefix", "iconSuffix"]
|
|
43
43
|
});
|
|
44
44
|
const primePasswordDefinition = exports.primePasswordDefinition = (0, _vue.createInput)(_PrimePassword.default, {
|
|
45
45
|
props: ["mediumRegex", "strongRegex", "promptLabel", "weakLabel", "mediumLabel", "strongLabel", "hideIcon", "showIcon", "pt", "ptOptions", "unstyled", "placeholder", "feedback", "toggleMask"]
|
|
@@ -38,7 +38,8 @@ export const primeInputTextDefinition = createInput(PrimeInputText, {
|
|
|
38
38
|
"ptOptions",
|
|
39
39
|
"unstyled",
|
|
40
40
|
"placeholder",
|
|
41
|
-
"
|
|
41
|
+
"iconPrefix",
|
|
42
|
+
"iconSuffix"
|
|
42
43
|
]
|
|
43
44
|
});
|
|
44
45
|
export const primeInputNumberDefinition = createInput(PrimeInputNumber, {
|
|
@@ -73,8 +74,8 @@ export const primeInputMaskDefinition = createInput(PrimeInputMask, {
|
|
|
73
74
|
"unstyled",
|
|
74
75
|
"invalid",
|
|
75
76
|
"variant",
|
|
76
|
-
"
|
|
77
|
-
"
|
|
77
|
+
"iconPrefix",
|
|
78
|
+
"iconSuffix"
|
|
78
79
|
]
|
|
79
80
|
});
|
|
80
81
|
export const primePasswordDefinition = createInput(PrimePassword, {
|
|
@@ -14,23 +14,23 @@ var _PrimeOutputDuration = _interopRequireDefault(require("../components/PrimeOu
|
|
|
14
14
|
var _PrimeOutputList = _interopRequireDefault(require("../components/PrimeOutputList.vue"));
|
|
15
15
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
16
|
const primeOutputTextDefinition = exports.primeOutputTextDefinition = (0, _vue.createInput)(_PrimeOutputText.default, {
|
|
17
|
-
props: ["prefix", "suffix", "
|
|
17
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
18
18
|
});
|
|
19
19
|
const primeOutputDateDefinition = exports.primeOutputDateDefinition = (0, _vue.createInput)(_PrimeOutputDate.default, {
|
|
20
|
-
props: ["prefix", "suffix", "
|
|
20
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
21
21
|
});
|
|
22
22
|
const primeOutputNumberDefinition = exports.primeOutputNumberDefinition = (0, _vue.createInput)(_PrimeOutputNumber.default, {
|
|
23
|
-
props: ["prefix", "suffix", "
|
|
23
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
24
24
|
});
|
|
25
25
|
const primeOutputLinkDefinition = exports.primeOutputLinkDefinition = (0, _vue.createInput)(_PrimeOutputLink.default, {
|
|
26
|
-
props: ["prefix", "suffix", "
|
|
26
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
27
27
|
});
|
|
28
28
|
const primeOutputBooleanDefinition = exports.primeOutputBooleanDefinition = (0, _vue.createInput)(_PrimeOutputBoolean.default, {
|
|
29
|
-
props: ["prefix", "suffix", "
|
|
29
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
30
30
|
});
|
|
31
31
|
const primeOutputDurationDefinition = exports.primeOutputDurationDefinition = (0, _vue.createInput)(_PrimeOutputDuration.default, {
|
|
32
|
-
props: ["prefix", "suffix", "
|
|
32
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
33
33
|
});
|
|
34
34
|
const primeOutputListDefinition = exports.primeOutputListDefinition = (0, _vue.createInput)(_PrimeOutputList.default, {
|
|
35
|
-
props: ["prefix", "suffix", "
|
|
35
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
36
36
|
});
|
|
@@ -7,23 +7,23 @@ import PrimeOutputBoolean from "../components/PrimeOutputBoolean.vue";
|
|
|
7
7
|
import PrimeOutputDuration from "../components/PrimeOutputDuration.vue";
|
|
8
8
|
import PrimeOutputList from "../components/PrimeOutputList.vue";
|
|
9
9
|
export const primeOutputTextDefinition = createInput(PrimeOutputText, {
|
|
10
|
-
props: ["prefix", "suffix", "
|
|
10
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
11
11
|
});
|
|
12
12
|
export const primeOutputDateDefinition = createInput(PrimeOutputDate, {
|
|
13
|
-
props: ["prefix", "suffix", "
|
|
13
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
14
14
|
});
|
|
15
15
|
export const primeOutputNumberDefinition = createInput(PrimeOutputNumber, {
|
|
16
|
-
props: ["prefix", "suffix", "
|
|
16
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
17
17
|
});
|
|
18
18
|
export const primeOutputLinkDefinition = createInput(PrimeOutputLink, {
|
|
19
|
-
props: ["prefix", "suffix", "
|
|
19
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
20
20
|
});
|
|
21
21
|
export const primeOutputBooleanDefinition = createInput(PrimeOutputBoolean, {
|
|
22
|
-
props: ["prefix", "suffix", "
|
|
22
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
23
23
|
});
|
|
24
24
|
export const primeOutputDurationDefinition = createInput(PrimeOutputDuration, {
|
|
25
|
-
props: ["prefix", "suffix", "
|
|
25
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
26
26
|
});
|
|
27
27
|
export const primeOutputListDefinition = createInput(PrimeOutputList, {
|
|
28
|
-
props: ["prefix", "suffix", "
|
|
28
|
+
props: ["prefix", "suffix", "iconPrefix", "iconSuffix"]
|
|
29
29
|
});
|
|
@@ -142,14 +142,6 @@ $grid-breakpoints: (
|
|
|
142
142
|
padding-top: 0.5rem;
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
-
// Debug
|
|
146
|
-
.p-formkit-data-debug {
|
|
147
|
-
pre, span {
|
|
148
|
-
font-size: 0.75rem;
|
|
149
|
-
line-height: 1rem;
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
145
|
.p-action-buttons {
|
|
154
146
|
margin-top: 0.25rem;
|
|
155
147
|
.p-button {
|
|
@@ -161,6 +153,14 @@ $grid-breakpoints: (
|
|
|
161
153
|
}
|
|
162
154
|
}
|
|
163
155
|
|
|
156
|
+
// Debug
|
|
157
|
+
.p-formkit-data-debug {
|
|
158
|
+
pre, span {
|
|
159
|
+
font-size: 0.75rem;
|
|
160
|
+
line-height: 1rem;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
164
|
// Change column behaviour in larger views
|
|
165
165
|
@include media-breakpoint-up(lg) {
|
|
166
166
|
.formkit-form {
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--formkit-error-color: #ef9a9a}.formkit-form .formkit-messages{margin:.125rem 0;padding-top:.25rem;padding-left:0}.formkit-form .formkit-message{list-style:none;padding:0;margin:0;color:var(--formkit-error-color);font-size:.8rem}.formkit-form .formkit-outer{padding-bottom:.8rem}.formkit-form .formkit-outer .formkit-inner .p-formkit .p-formkit-icon{box-sizing:border-box;width:100%}.formkit-form .formkit-outer .formkit-inner .p-formkit .p-inputtext,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-textarea,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-password,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-multiselect,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-select,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-editor{box-sizing:border-box;width:100%}.formkit-form .formkit-outer .formkit-inner .p-formkit .p-inputtext.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-textarea.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-password.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-multiselect.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-select.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-editor.p-colorpicker-preview{width:2rem}.formkit-form .formkit-outer .formkit-help{margin:.25rem 0 0 0;font-size:.8rem;color:var(--text-color-secondary)}.formkit-form .formkit-label{display:block;margin:0;padding-bottom:.5rem;font-weight:bold;font-size:.8rem}.formkit-form .p-formkit>*{margin-right:.5rem}.formkit-form .p-formkit>*:last-child,.formkit-form .p-formkit>*:only-child{margin-right:0}.formkit-form .p-formkit-options{display:flex;flex-wrap:wrap;gap:.5rem}.formkit-form .p-formkit-options .p-formkit-option{display:flex;align-items:center}.formkit-form .p-formkit-options .p-formkit-option label{margin-left:.5rem}.formkit-form .formkit-fieldset{margin:0;padding:0;border-radius:0;border:0}.formkit-form .formkit-fieldset:focus-within{border:0}.formkit-form .formkit-fieldset>.formkit-help{margin-top:0;margin-bottom:0}.formkit-form .formkit-legend{display:block;margin:0;padding:0}.formkit-form .formkit-actions{padding-top:.5rem}.formkit-form .p-
|
|
1
|
+
:root{--formkit-error-color: #ef9a9a}.formkit-form .formkit-messages{margin:.125rem 0;padding-top:.25rem;padding-left:0}.formkit-form .formkit-message{list-style:none;padding:0;margin:0;color:var(--formkit-error-color);font-size:.8rem}.formkit-form .formkit-outer{padding-bottom:.8rem}.formkit-form .formkit-outer .formkit-inner .p-formkit .p-formkit-icon{box-sizing:border-box;width:100%}.formkit-form .formkit-outer .formkit-inner .p-formkit .p-inputtext,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-textarea,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-password,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-multiselect,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-select,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-editor{box-sizing:border-box;width:100%}.formkit-form .formkit-outer .formkit-inner .p-formkit .p-inputtext.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-textarea.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-password.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-multiselect.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-select.p-colorpicker-preview,.formkit-form .formkit-outer .formkit-inner .p-formkit .p-editor.p-colorpicker-preview{width:2rem}.formkit-form .formkit-outer .formkit-help{margin:.25rem 0 0 0;font-size:.8rem;color:var(--text-color-secondary)}.formkit-form .formkit-label{display:block;margin:0;padding-bottom:.5rem;font-weight:bold;font-size:.8rem}.formkit-form .p-formkit>*{margin-right:.5rem}.formkit-form .p-formkit>*:last-child,.formkit-form .p-formkit>*:only-child{margin-right:0}.formkit-form .p-formkit-options{display:flex;flex-wrap:wrap;gap:.5rem}.formkit-form .p-formkit-options .p-formkit-option{display:flex;align-items:center}.formkit-form .p-formkit-options .p-formkit-option label{margin-left:.5rem}.formkit-form .formkit-fieldset{margin:0;padding:0;border-radius:0;border:0}.formkit-form .formkit-fieldset:focus-within{border:0}.formkit-form .formkit-fieldset>.formkit-help{margin-top:0;margin-bottom:0}.formkit-form .formkit-legend{display:block;margin:0;padding:0}.formkit-form .formkit-actions{padding-top:.5rem}.formkit-form .p-action-buttons{margin-top:.25rem}.formkit-form .p-action-buttons .p-button{margin-right:.5rem}.formkit-form .p-action-buttons span.p-space{margin-right:3rem}.p-formkit-data-debug pre,.p-formkit-data-debug span{font-size:.75rem;line-height:1rem}@media(min-width: 1024px){.formkit-form{display:flex;flex-wrap:wrap;margin-left:-0.5rem;margin-right:-0.5rem}.formkit-form>*{flex-shrink:0;width:100%;max-width:100%;padding-left:.5rem;padding-right:.5rem}.col-1{width:8.3333333333%}.col-2{width:16.6666666667%}.col-3{width:25%}.col-4{width:33.3333333333%}.col-5{width:41.6666666667%}.col-6{width:50%}.col-7{width:58.3333333333%}.col-8{width:66.6666666667%}.col-9{width:75%}.col-10{width:83.3333333333%}.col-11{width:91.6666666667%}.col-12{width:100%}}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sfxcode/formkit-primevue",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.4.0",
|
|
5
5
|
"packageManager": "pnpm@9.4.0+sha256.b6fd0bfda555e7e584ad7e56b30c68b01d5a04f9ee93989f4b93ca8473c49c74",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Tom",
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
"dev": "vite serve dev",
|
|
73
73
|
"dev:build": "vite build dev",
|
|
74
74
|
"dev:preview": "vite preview dev",
|
|
75
|
-
"release": "npm run lint && npm run build && changelogen --
|
|
75
|
+
"release": "npm run lint && npm run build && changelogen --minor --release && npm publish --access public && git push --follow-tags",
|
|
76
76
|
"lint": "eslint ./src",
|
|
77
77
|
"lint:fix": "eslint . --fix",
|
|
78
78
|
"prepublishOnly": "pnpm build",
|
|
@@ -93,13 +93,14 @@
|
|
|
93
93
|
"@formkit/vue": "^1.6.5",
|
|
94
94
|
"primeicons": "^7.0.0",
|
|
95
95
|
"primevue": "4.0.2",
|
|
96
|
+
"uuid": "^10.0.0",
|
|
96
97
|
"vue-i18n": "9.13.1"
|
|
97
98
|
},
|
|
98
99
|
"devDependencies": {
|
|
99
100
|
"@antfu/eslint-config": "2.23.2",
|
|
100
101
|
"@formkit/core": "^1.6.5",
|
|
101
102
|
"@primevue/themes": "4.0.2",
|
|
102
|
-
"@types/node": "^20.14.
|
|
103
|
+
"@types/node": "^20.14.13",
|
|
103
104
|
"@unocss/preset-icons": "0.61.6",
|
|
104
105
|
"@unocss/preset-uno": "0.61.6",
|
|
105
106
|
"@vitejs/plugin-vue": "^5.1.1",
|