@sfxcode/formkit-primevue 3.3.1 → 3.3.3

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 (164) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +138 -13
  3. package/components.d.ts +1 -0
  4. package/dist/components/FormKitDataDebug.d.vue.ts +24 -0
  5. package/dist/components/FormKitDataDebug.vue +23 -0
  6. package/dist/components/FormKitDataDebug.vue.d.ts +24 -0
  7. package/dist/components/FormKitDataEdit.d.vue.ts +180 -0
  8. package/dist/components/FormKitDataEdit.vue +126 -0
  9. package/dist/components/FormKitDataEdit.vue.d.ts +180 -0
  10. package/dist/components/FormKitDataView.d.vue.ts +73 -0
  11. package/dist/components/FormKitDataView.vue +58 -0
  12. package/dist/components/FormKitDataView.vue.d.ts +73 -0
  13. package/dist/components/FormKitIcon.d.vue.ts +39 -0
  14. package/dist/components/FormKitIcon.vue +25 -0
  15. package/dist/components/FormKitIcon.vue.d.ts +39 -0
  16. package/dist/components/FormKitPrefix.d.vue.ts +7 -0
  17. package/dist/components/FormKitPrefix.vue +11 -0
  18. package/dist/components/FormKitPrefix.vue.d.ts +7 -0
  19. package/dist/components/FormKitSuffix.d.vue.ts +7 -0
  20. package/dist/components/FormKitSuffix.vue +11 -0
  21. package/dist/components/FormKitSuffix.vue.d.ts +7 -0
  22. package/dist/components/PrimeAutoComplete.d.vue.ts +31 -0
  23. package/dist/components/PrimeAutoComplete.vue +140 -0
  24. package/dist/components/PrimeAutoComplete.vue.d.ts +31 -0
  25. package/dist/components/PrimeCascadeSelect.d.vue.ts +28 -0
  26. package/dist/components/PrimeCascadeSelect.vue +62 -0
  27. package/dist/components/PrimeCascadeSelect.vue.d.ts +28 -0
  28. package/dist/components/PrimeCheckbox.d.vue.ts +27 -0
  29. package/dist/components/PrimeCheckbox.vue +71 -0
  30. package/dist/components/PrimeCheckbox.vue.d.ts +27 -0
  31. package/dist/components/PrimeColorPicker.d.vue.ts +24 -0
  32. package/dist/components/PrimeColorPicker.vue +48 -0
  33. package/dist/components/PrimeColorPicker.vue.d.ts +24 -0
  34. package/dist/components/PrimeDatePicker.d.vue.ts +63 -0
  35. package/dist/components/PrimeDatePicker.vue +153 -0
  36. package/dist/components/PrimeDatePicker.vue.d.ts +63 -0
  37. package/dist/components/PrimeInputMask.d.vue.ts +28 -0
  38. package/dist/components/PrimeInputMask.vue +88 -0
  39. package/dist/components/PrimeInputMask.vue.d.ts +28 -0
  40. package/dist/components/PrimeInputNumber.d.vue.ts +36 -0
  41. package/dist/components/PrimeInputNumber.vue +110 -0
  42. package/dist/components/PrimeInputNumber.vue.d.ts +36 -0
  43. package/dist/components/PrimeInputOtp.d.vue.ts +26 -0
  44. package/dist/components/PrimeInputOtp.vue +59 -0
  45. package/dist/components/PrimeInputOtp.vue.d.ts +26 -0
  46. package/dist/components/PrimeInputText.d.vue.ts +24 -0
  47. package/dist/components/PrimeInputText.vue +80 -0
  48. package/dist/components/PrimeInputText.vue.d.ts +24 -0
  49. package/dist/components/PrimeKnob.d.vue.ts +31 -0
  50. package/dist/components/PrimeKnob.vue +75 -0
  51. package/dist/components/PrimeKnob.vue.d.ts +31 -0
  52. package/dist/components/PrimeListbox.d.vue.ts +42 -0
  53. package/dist/components/PrimeListbox.vue +86 -0
  54. package/dist/components/PrimeListbox.vue.d.ts +42 -0
  55. package/dist/components/PrimeMultiSelect.d.vue.ts +53 -0
  56. package/dist/components/PrimeMultiSelect.vue +115 -0
  57. package/dist/components/PrimeMultiSelect.vue.d.ts +53 -0
  58. package/dist/components/PrimeOutputBoolean.d.vue.ts +16 -0
  59. package/dist/components/PrimeOutputBoolean.vue +41 -0
  60. package/dist/components/PrimeOutputBoolean.vue.d.ts +16 -0
  61. package/dist/components/PrimeOutputDate.d.vue.ts +16 -0
  62. package/dist/components/PrimeOutputDate.vue +51 -0
  63. package/dist/components/PrimeOutputDate.vue.d.ts +16 -0
  64. package/dist/components/PrimeOutputDuration.d.vue.ts +16 -0
  65. package/dist/components/PrimeOutputDuration.vue +32 -0
  66. package/dist/components/PrimeOutputDuration.vue.d.ts +16 -0
  67. package/dist/components/PrimeOutputLink.d.vue.ts +16 -0
  68. package/dist/components/PrimeOutputLink.vue +50 -0
  69. package/dist/components/PrimeOutputLink.vue.d.ts +16 -0
  70. package/dist/components/PrimeOutputList.d.vue.ts +19 -0
  71. package/dist/components/PrimeOutputList.vue +75 -0
  72. package/dist/components/PrimeOutputList.vue.d.ts +19 -0
  73. package/dist/components/PrimeOutputNumber.d.vue.ts +16 -0
  74. package/dist/components/PrimeOutputNumber.vue +59 -0
  75. package/dist/components/PrimeOutputNumber.vue.d.ts +16 -0
  76. package/dist/components/PrimeOutputReference.d.vue.ts +16 -0
  77. package/dist/components/PrimeOutputReference.vue +62 -0
  78. package/dist/components/PrimeOutputReference.vue.d.ts +16 -0
  79. package/dist/components/PrimeOutputText.d.vue.ts +22 -0
  80. package/dist/components/PrimeOutputText.vue +72 -0
  81. package/dist/components/PrimeOutputText.vue.d.ts +22 -0
  82. package/dist/components/PrimePassword.d.vue.ts +33 -0
  83. package/dist/components/PrimePassword.vue +73 -0
  84. package/dist/components/PrimePassword.vue.d.ts +33 -0
  85. package/dist/components/PrimeRadioButton.d.vue.ts +28 -0
  86. package/dist/components/PrimeRadioButton.vue +58 -0
  87. package/dist/components/PrimeRadioButton.vue.d.ts +28 -0
  88. package/dist/components/PrimeRating.d.vue.ts +24 -0
  89. package/dist/components/PrimeRating.vue +55 -0
  90. package/dist/components/PrimeRating.vue.d.ts +24 -0
  91. package/dist/components/PrimeSelect.d.vue.ts +50 -0
  92. package/dist/components/PrimeSelect.vue +113 -0
  93. package/dist/components/PrimeSelect.vue.d.ts +50 -0
  94. package/dist/components/PrimeSelectButton.d.vue.ts +28 -0
  95. package/dist/components/PrimeSelectButton.vue +64 -0
  96. package/dist/components/PrimeSelectButton.vue.d.ts +28 -0
  97. package/dist/components/PrimeSlider.d.vue.ts +26 -0
  98. package/dist/components/PrimeSlider.vue +60 -0
  99. package/dist/components/PrimeSlider.vue.d.ts +26 -0
  100. package/dist/components/PrimeTextarea.d.vue.ts +25 -0
  101. package/dist/components/PrimeTextarea.vue +53 -0
  102. package/dist/components/PrimeTextarea.vue.d.ts +25 -0
  103. package/dist/components/PrimeToggleButton.d.vue.ts +26 -0
  104. package/dist/components/PrimeToggleButton.vue +60 -0
  105. package/dist/components/PrimeToggleButton.vue.d.ts +26 -0
  106. package/dist/components/PrimeToggleSwitch.d.vue.ts +23 -0
  107. package/dist/components/PrimeToggleSwitch.vue +57 -0
  108. package/dist/components/PrimeToggleSwitch.vue.d.ts +23 -0
  109. package/dist/components/PrimeTreeSelect.d.vue.ts +32 -0
  110. package/dist/components/PrimeTreeSelect.vue +71 -0
  111. package/dist/components/PrimeTreeSelect.vue.d.ts +32 -0
  112. package/dist/components/index.d.ts +24 -2
  113. package/dist/components/index.js +167 -4
  114. package/dist/components/index.mjs +48 -0
  115. package/dist/composables/index.d.ts +9 -2
  116. package/dist/composables/index.js +61 -2
  117. package/dist/composables/index.mjs +18 -0
  118. package/dist/composables/useFormKitInput.d.ts +11 -0
  119. package/dist/composables/useFormKitInput.js +58 -0
  120. package/dist/composables/useFormKitInput.mjs +45 -0
  121. package/dist/composables/useFormKitRepeater.d.ts +15 -0
  122. package/dist/composables/useFormKitRepeater.js +74 -0
  123. package/dist/composables/useFormKitRepeater.mjs +54 -0
  124. package/dist/composables/useFormKitSchema.d.ts +36 -0
  125. package/dist/composables/useFormKitSchema.js +83 -0
  126. package/dist/composables/useFormKitSchema.mjs +58 -0
  127. package/dist/composables/useFormKitSection.d.ts +7 -0
  128. package/dist/composables/useFormKitSection.js +31 -0
  129. package/dist/composables/useFormKitSection.mjs +19 -0
  130. package/dist/composables/useInputEditor.d.ts +8 -0
  131. package/dist/composables/useInputEditor.js +148 -0
  132. package/dist/composables/useInputEditor.mjs +143 -0
  133. package/dist/composables/useInputEditorSchema.d.ts +163 -0
  134. package/dist/composables/useInputEditorSchema.js +313 -0
  135. package/dist/composables/useInputEditorSchema.mjs +315 -0
  136. package/dist/composables/useOutputDuration.d.ts +4 -0
  137. package/dist/composables/useOutputDuration.js +40 -0
  138. package/dist/composables/useOutputDuration.mjs +35 -0
  139. package/dist/composables/usePrimeInputs.d.ts +3 -0
  140. package/dist/composables/usePrimeInputs.js +62 -0
  141. package/dist/composables/usePrimeInputs.mjs +53 -0
  142. package/dist/definitions/index.d.ts +32 -37
  143. package/dist/definitions/index.js +42 -4
  144. package/dist/definitions/index.mjs +68 -0
  145. package/dist/definitions/input.d.ts +47 -0
  146. package/dist/definitions/input.js +142 -0
  147. package/dist/definitions/input.mjs +135 -0
  148. package/dist/definitions/output.d.ts +9 -0
  149. package/dist/definitions/output.js +46 -0
  150. package/dist/definitions/output.mjs +39 -0
  151. package/dist/index.d.ts +143 -146
  152. package/dist/index.js +62 -5
  153. package/dist/index.mjs +14 -0
  154. package/dist/plugins/index.d.ts +3 -7
  155. package/dist/plugins/index.js +57 -45
  156. package/dist/plugins/index.mjs +55 -0
  157. package/dist/sass/formkit-primevue.scss +101 -99
  158. package/package.json +115 -30
  159. package/dist/PrimeTreeSelect-Dksx7tL-.js +0 -1881
  160. package/dist/components-HJnJ39cU.js +0 -255
  161. package/dist/composables-CZ6f1QYe.js +0 -820
  162. package/dist/definitions-BHwWaom7.js +0 -1196
  163. package/dist/index-Ch3MtT1C.d.ts +0 -266
  164. package/dist/index-EJ8M51RO.d.ts +0 -917
@@ -0,0 +1,72 @@
1
+ <script setup lang='ts'>
2
+ import type { FormKitFrameworkContext } from '@formkit/core'
3
+ import type { PropType } from 'vue'
4
+ import type { FormKitIconProps } from './FormKitIcon.vue'
5
+ import { computed } from 'vue'
6
+ import { useI18n } from 'vue-i18n'
7
+ import { useFormKitSection } from '../composables'
8
+ import FormKitIcon from './FormKitIcon.vue'
9
+ import FormKitPrefix from './FormKitPrefix.vue'
10
+ import FormKitSuffix from './FormKitSuffix.vue'
11
+
12
+ export interface FormKitOutputTextProps {
13
+ html?: boolean
14
+ isTranslationKey?: boolean
15
+ convertValue?: (value: string) => string
16
+ maxLength?: number
17
+ }
18
+
19
+ const props = defineProps({
20
+ context: {
21
+ type: Object as PropType<FormKitFrameworkContext> & FormKitIconProps & FormKitOutputTextProps,
22
+ required: true,
23
+ },
24
+ })
25
+
26
+ const textValue = computed(() => {
27
+ const value = props.context?._value
28
+ const { t } = useI18n()
29
+ let result = ''
30
+ if (value) {
31
+ if (props.context?.isTranslationKey) {
32
+ result = t(value)
33
+ }
34
+ else if (typeof props.context?.convertValue === 'function') {
35
+ result = props.context?.convertValue(value)
36
+ }
37
+ else {
38
+ result = value
39
+ }
40
+ }
41
+
42
+ // Apply maxLength truncation if specified
43
+ const maxLength = props.context?.maxLength as number | undefined
44
+ if (result && maxLength && !props.context?.html && result.length > maxLength) {
45
+ // Try to truncate at word boundary
46
+ let truncated = result.substring(0, maxLength)
47
+ const lastSpaceIndex = truncated.lastIndexOf(' ')
48
+
49
+ // Only truncate at word boundary if there's a space, and it's not too far back
50
+ // (at least 80% of maxLength to avoid cutting too much)
51
+ if (lastSpaceIndex > maxLength * 0.8) {
52
+ truncated = truncated.substring(0, lastSpaceIndex)
53
+ }
54
+ result = `${truncated}...`
55
+ }
56
+
57
+ return result
58
+ })
59
+
60
+ const { hasPrefix, hasPrefixIcon, hasSuffix, hasSuffixIcon } = useFormKitSection(props.context)
61
+ </script>
62
+
63
+ <template>
64
+ <div class="p-formkit p-output-text">
65
+ <FormKitIcon v-if="hasPrefixIcon" :icon-class="context?.iconPrefix as string" :on-click="context?.onIconPrefixClicked as (() => void)" position="prefix" />
66
+ <FormKitPrefix v-if="hasPrefix" :prefix="context?.prefix as string" />
67
+ <span v-if="context?.html" :id="context?.id" :class="context?.attrs?.class" :style="context?.attrs?.style" v-html="textValue" />
68
+ <span v-else :id="context?.id" :class="context?.attrs?.class" :style="context?.attrs?.style" v-text="textValue" />
69
+ <FormKitSuffix v-if="hasSuffix" :suffix="context?.suffix as string" />
70
+ <FormKitIcon v-if="hasSuffixIcon" :icon-class="context?.iconSuffix as string" :on-click="context?.onIconSuffixClicked as (() => void)" position="suffix" />
71
+ </div>
72
+ </template>
@@ -0,0 +1,22 @@
1
+ import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { PropType } from 'vue';
3
+ import type { FormKitIconProps } from './FormKitIcon.vue';
4
+ export interface FormKitOutputTextProps {
5
+ html?: boolean;
6
+ isTranslationKey?: boolean;
7
+ convertValue?: (value: string) => string;
8
+ maxLength?: number;
9
+ }
10
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
11
+ context: {
12
+ type: PropType<FormKitFrameworkContext> & FormKitIconProps & FormKitOutputTextProps;
13
+ required: true;
14
+ };
15
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
16
+ context: {
17
+ type: PropType<FormKitFrameworkContext> & FormKitIconProps & FormKitOutputTextProps;
18
+ required: true;
19
+ };
20
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
21
+ declare const _default: typeof __VLS_export;
22
+ export default _default;
@@ -0,0 +1,33 @@
1
+ import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { PasswordProps } from 'primevue/password';
3
+ import type { PropType } from 'vue';
4
+ export interface FormKitPrimePasswordProps {
5
+ mediumRegex?: PasswordProps['mediumRegex'];
6
+ strongRegex?: PasswordProps['strongRegex'];
7
+ promptLabel?: PasswordProps['promptLabel'];
8
+ weakLabel?: PasswordProps['weakLabel'];
9
+ mediumLabel?: PasswordProps['mediumLabel'];
10
+ strongLabel?: PasswordProps['strongLabel'];
11
+ maskIcon?: PasswordProps['maskIcon'];
12
+ unmaskIcon?: PasswordProps['unmaskIcon'];
13
+ pt?: PasswordProps['pt'];
14
+ ptOptions?: PasswordProps['ptOptions'];
15
+ unstyled?: PasswordProps['unstyled'];
16
+ placeholder?: PasswordProps['placeholder'];
17
+ feedback?: PasswordProps['feedback'];
18
+ toggleMask?: PasswordProps['toggleMask'];
19
+ size?: PasswordProps['size'];
20
+ }
21
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
22
+ context: {
23
+ type: PropType<FormKitFrameworkContext & FormKitPrimePasswordProps>;
24
+ required: true;
25
+ };
26
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
27
+ context: {
28
+ type: PropType<FormKitFrameworkContext & FormKitPrimePasswordProps>;
29
+ required: true;
30
+ };
31
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
32
+ declare const _default: typeof __VLS_export;
33
+ export default _default;
@@ -0,0 +1,73 @@
1
+ <script setup lang='ts'>
2
+ import type { FormKitFrameworkContext } from '@formkit/core'
3
+ import type { PasswordProps } from 'primevue/password'
4
+
5
+ import type { PropType } from 'vue'
6
+ import { useFormKitInput } from '../composables'
7
+
8
+ export interface FormKitPrimePasswordProps {
9
+ mediumRegex?: PasswordProps['mediumRegex']
10
+ strongRegex?: PasswordProps['strongRegex']
11
+ promptLabel?: PasswordProps['promptLabel']
12
+ weakLabel?: PasswordProps['weakLabel']
13
+ mediumLabel?: PasswordProps['mediumLabel']
14
+ strongLabel?: PasswordProps['strongLabel']
15
+ maskIcon?: PasswordProps['maskIcon']
16
+ unmaskIcon?: PasswordProps['unmaskIcon']
17
+ pt?: PasswordProps['pt']
18
+ ptOptions?: PasswordProps['ptOptions']
19
+ unstyled?: PasswordProps['unstyled']
20
+ placeholder?: PasswordProps['placeholder']
21
+ feedback?: PasswordProps['feedback']
22
+ toggleMask?: PasswordProps['toggleMask']
23
+ size?: PasswordProps['size']
24
+ }
25
+
26
+ const props = defineProps({
27
+ context: {
28
+ type: Object as PropType<FormKitFrameworkContext & FormKitPrimePasswordProps>,
29
+ required: true,
30
+ },
31
+ })
32
+
33
+ const { validSlotNames, unstyled, isInvalid, handleInput, handleBlur, modelValue } = useFormKitInput(props.context)
34
+ </script>
35
+
36
+ <template>
37
+ <div class="p-formkit">
38
+ <Password
39
+ v-model="modelValue"
40
+ v-bind="context?.attrs"
41
+ :input-id="context.id"
42
+ :disabled="!!context?.disabled"
43
+ :readonly="context?.attrs.readonly ?? false"
44
+ :input-style="context?.attrs.style"
45
+ :input-class="context?.attrs?.class"
46
+ :invalid="isInvalid"
47
+ :tabindex="context?.attrs.tabindex"
48
+ :aria-label="context?.attrs.ariaLabel"
49
+ :aria-labelledby="context?.attrs.ariaLabelledby"
50
+ :size="context?.size ?? undefined"
51
+ :placeholder="context.placeholder"
52
+ :medium-regex="context.mediumRegex ?? '^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})'"
53
+ :strong-regex="context.strongRegex ?? '^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.{8,})'"
54
+ :prompt-label="context.promptLabel"
55
+ :weak-label="context.weakLabel"
56
+ :medium-label="context.mediumLabel"
57
+ :strong-label="context.strongLabel"
58
+ :mask-icon="context.maskIcon"
59
+ :unmask-icon="context.unmaskIcon"
60
+ :feedback="context.feedback ?? false"
61
+ :toggle-mask="context.toggleMask ?? false"
62
+ :pt="context.pt"
63
+ :pt-options="context.ptOptions"
64
+ :unstyled="unstyled"
65
+ @input="handleInput"
66
+ @blur="handleBlur"
67
+ >
68
+ <template v-for="slotName in validSlotNames" :key="slotName" #[slotName]="slotProps">
69
+ <component :is="context?.slots[slotName]" v-bind="{ ...context, ...slotProps }" />
70
+ </template>
71
+ </Password>
72
+ </div>
73
+ </template>
@@ -0,0 +1,33 @@
1
+ import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { PasswordProps } from 'primevue/password';
3
+ import type { PropType } from 'vue';
4
+ export interface FormKitPrimePasswordProps {
5
+ mediumRegex?: PasswordProps['mediumRegex'];
6
+ strongRegex?: PasswordProps['strongRegex'];
7
+ promptLabel?: PasswordProps['promptLabel'];
8
+ weakLabel?: PasswordProps['weakLabel'];
9
+ mediumLabel?: PasswordProps['mediumLabel'];
10
+ strongLabel?: PasswordProps['strongLabel'];
11
+ maskIcon?: PasswordProps['maskIcon'];
12
+ unmaskIcon?: PasswordProps['unmaskIcon'];
13
+ pt?: PasswordProps['pt'];
14
+ ptOptions?: PasswordProps['ptOptions'];
15
+ unstyled?: PasswordProps['unstyled'];
16
+ placeholder?: PasswordProps['placeholder'];
17
+ feedback?: PasswordProps['feedback'];
18
+ toggleMask?: PasswordProps['toggleMask'];
19
+ size?: PasswordProps['size'];
20
+ }
21
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
22
+ context: {
23
+ type: PropType<FormKitFrameworkContext & FormKitPrimePasswordProps>;
24
+ required: true;
25
+ };
26
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
27
+ context: {
28
+ type: PropType<FormKitFrameworkContext & FormKitPrimePasswordProps>;
29
+ required: true;
30
+ };
31
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
32
+ declare const _default: typeof __VLS_export;
33
+ export default _default;
@@ -0,0 +1,28 @@
1
+ import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { RadioButtonProps } from 'primevue/radiobutton';
3
+ import type { PropType } from 'vue';
4
+ export interface FormKitPrimeRadioButtonProps {
5
+ pt?: RadioButtonProps['pt'];
6
+ ptOptions?: RadioButtonProps['ptOptions'];
7
+ unstyled?: RadioButtonProps['unstyled'];
8
+ size?: RadioButtonProps['size'];
9
+ options?: {
10
+ label: string;
11
+ value: any;
12
+ }[];
13
+ optionsClass?: string;
14
+ optionClass?: string;
15
+ }
16
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
17
+ context: {
18
+ type: PropType<FormKitFrameworkContext & FormKitPrimeRadioButtonProps>;
19
+ required: true;
20
+ };
21
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
22
+ context: {
23
+ type: PropType<FormKitFrameworkContext & FormKitPrimeRadioButtonProps>;
24
+ required: true;
25
+ };
26
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
+ declare const _default: typeof __VLS_export;
28
+ export default _default;
@@ -0,0 +1,58 @@
1
+ <script setup lang='ts'>
2
+ import type { FormKitFrameworkContext } from '@formkit/core'
3
+ import type { RadioButtonProps } from 'primevue/radiobutton'
4
+
5
+ import type { PropType } from 'vue'
6
+ import { computed } from 'vue'
7
+ import { useFormKitInput } from '../composables'
8
+
9
+ export interface FormKitPrimeRadioButtonProps {
10
+ pt?: RadioButtonProps['pt']
11
+ ptOptions?: RadioButtonProps['ptOptions']
12
+ unstyled?: RadioButtonProps['unstyled']
13
+ size?: RadioButtonProps['size']
14
+ options?: { label: string, value: any }[]
15
+ optionsClass?: string
16
+ optionClass?: string
17
+ }
18
+
19
+ const props = defineProps({
20
+ context: {
21
+ type: Object as PropType<FormKitFrameworkContext & FormKitPrimeRadioButtonProps>,
22
+ required: true,
23
+ },
24
+ })
25
+
26
+ const { unstyled, isInvalid, handleChange, handleBlur, modelValue } = useFormKitInput(props.context)
27
+
28
+ const optionsClass = computed(() => props.context?.optionsClass ?? '')
29
+ const optionClass = computed(() => props.context?.optionClass ?? '')
30
+ const labelClass = computed(() => props.context?.labelClass ?? '')
31
+ </script>
32
+
33
+ <template>
34
+ <div class="p-formkit p-formkit-options" :class="optionsClass">
35
+ <div v-for="option in context.options" :key="option.value" class="p-formkit-option" :class="optionClass">
36
+ <RadioButton
37
+ :id="context.id"
38
+ v-model="modelValue"
39
+ v-bind="context?.attrs"
40
+ :disabled="!!context?.disabled"
41
+ :readonly="context?.attrs.readonly ?? false"
42
+ :name="context?.attrs.name"
43
+ :value="option.value"
44
+ :input-style="context?.attrs.style"
45
+ :input-class="context?.attrs?.class"
46
+ :invalid="isInvalid"
47
+ :size="context?.size ?? undefined"
48
+ :pt="context.pt"
49
+ :pt-options="context.ptOptions"
50
+ :unstyled="unstyled"
51
+ @click="handleChange"
52
+ @change="handleChange"
53
+ @blur="handleBlur"
54
+ />
55
+ <label :for="option.value" :class="labelClass">{{ option.label }}</label>
56
+ </div>
57
+ </div>
58
+ </template>
@@ -0,0 +1,28 @@
1
+ import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { RadioButtonProps } from 'primevue/radiobutton';
3
+ import type { PropType } from 'vue';
4
+ export interface FormKitPrimeRadioButtonProps {
5
+ pt?: RadioButtonProps['pt'];
6
+ ptOptions?: RadioButtonProps['ptOptions'];
7
+ unstyled?: RadioButtonProps['unstyled'];
8
+ size?: RadioButtonProps['size'];
9
+ options?: {
10
+ label: string;
11
+ value: any;
12
+ }[];
13
+ optionsClass?: string;
14
+ optionClass?: string;
15
+ }
16
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
17
+ context: {
18
+ type: PropType<FormKitFrameworkContext & FormKitPrimeRadioButtonProps>;
19
+ required: true;
20
+ };
21
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
22
+ context: {
23
+ type: PropType<FormKitFrameworkContext & FormKitPrimeRadioButtonProps>;
24
+ required: true;
25
+ };
26
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
+ declare const _default: typeof __VLS_export;
28
+ export default _default;
@@ -0,0 +1,24 @@
1
+ import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { RatingProps } from 'primevue/rating';
3
+ import type { PropType } from 'vue';
4
+ export interface FormKitPrimeRatingProps {
5
+ unstyled?: RatingProps['unstyled'];
6
+ stars?: RatingProps['stars'];
7
+ onIcon?: RatingProps['onIcon'];
8
+ offIcon?: RatingProps['offIcon'];
9
+ ptOptions?: RatingProps['ptOptions'];
10
+ pt?: RatingProps['pt'];
11
+ }
12
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
13
+ context: {
14
+ type: PropType<FormKitFrameworkContext & FormKitPrimeRatingProps>;
15
+ required: true;
16
+ };
17
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
18
+ context: {
19
+ type: PropType<FormKitFrameworkContext & FormKitPrimeRatingProps>;
20
+ required: true;
21
+ };
22
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
23
+ declare const _default: typeof __VLS_export;
24
+ export default _default;
@@ -0,0 +1,55 @@
1
+ <script setup lang='ts'>
2
+ import type { FormKitFrameworkContext } from '@formkit/core'
3
+ import type { RatingProps } from 'primevue/rating'
4
+
5
+ import type { PropType } from 'vue'
6
+ import { useFormKitInput } from '../composables'
7
+
8
+ export interface FormKitPrimeRatingProps {
9
+ unstyled?: RatingProps['unstyled']
10
+ stars?: RatingProps['stars']
11
+ onIcon?: RatingProps['onIcon']
12
+ offIcon?: RatingProps['offIcon']
13
+ ptOptions?: RatingProps['ptOptions']
14
+ pt?: RatingProps['pt']
15
+ }
16
+
17
+ const props = defineProps({
18
+ context: {
19
+ type: Object as PropType<FormKitFrameworkContext & FormKitPrimeRatingProps>,
20
+ required: true,
21
+ },
22
+ })
23
+
24
+ const { validSlotNames, unstyled, isInvalid, handleInput, handleBlur, modelValue } = useFormKitInput(props.context)
25
+ </script>
26
+
27
+ <template>
28
+ <div class="p-formkit">
29
+ <Rating
30
+ :id="context.id"
31
+ v-model="modelValue"
32
+ v-bind="context?.attrs"
33
+ :disabled="!!context?.disabled"
34
+ :readonly="context?.attrs.readonly ?? false"
35
+ :style="context?.attrs.style"
36
+ :class="context?.attrs?.class"
37
+ :invalid="isInvalid"
38
+ :tabindex="context?.attrs.tabindex"
39
+ :aria-label="context?.attrs.ariaLabel"
40
+ :aria-labelledby="context?.attrs.ariaLabelledby"
41
+ :stars="context.stars ?? 5"
42
+ :on-icon="context.onIcon"
43
+ :off-icon="context.offIcon"
44
+ :pt="context.pt"
45
+ :pt-options="context.ptOptions"
46
+ :unstyled="unstyled"
47
+ @change="handleInput"
48
+ @blur="handleBlur"
49
+ >
50
+ <template v-for="slotName in validSlotNames" :key="slotName" #[slotName]="slotProps">
51
+ <component :is="context?.slots[slotName]" v-bind="{ ...context, ...slotProps }" />
52
+ </template>
53
+ </Rating>
54
+ </div>
55
+ </template>
@@ -0,0 +1,24 @@
1
+ import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { RatingProps } from 'primevue/rating';
3
+ import type { PropType } from 'vue';
4
+ export interface FormKitPrimeRatingProps {
5
+ unstyled?: RatingProps['unstyled'];
6
+ stars?: RatingProps['stars'];
7
+ onIcon?: RatingProps['onIcon'];
8
+ offIcon?: RatingProps['offIcon'];
9
+ ptOptions?: RatingProps['ptOptions'];
10
+ pt?: RatingProps['pt'];
11
+ }
12
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
13
+ context: {
14
+ type: PropType<FormKitFrameworkContext & FormKitPrimeRatingProps>;
15
+ required: true;
16
+ };
17
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
18
+ context: {
19
+ type: PropType<FormKitFrameworkContext & FormKitPrimeRatingProps>;
20
+ required: true;
21
+ };
22
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
23
+ declare const _default: typeof __VLS_export;
24
+ export default _default;
@@ -0,0 +1,50 @@
1
+ import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { SelectProps } from 'primevue/select';
3
+ import type { PropType } from 'vue';
4
+ export interface FormKitPrimeSelectProps {
5
+ options?: SelectProps['options'];
6
+ optionLabel?: SelectProps['optionLabel'];
7
+ optionValue?: SelectProps['optionValue'];
8
+ optionDisabled?: SelectProps['optionDisabled'];
9
+ optionGroupLabel?: SelectProps['optionGroupLabel'];
10
+ optionGroupChildren?: SelectProps['optionGroupChildren'];
11
+ scrollHeight?: SelectProps['scrollHeight'];
12
+ filter?: SelectProps['filter'];
13
+ filterPlaceholder?: SelectProps['filterPlaceholder'];
14
+ filterLocale?: SelectProps['filterLocale'];
15
+ filterMatchMode?: SelectProps['filterMatchMode'];
16
+ filterFields?: SelectProps['filterFields'];
17
+ editable?: SelectProps['editable'];
18
+ placeholder?: SelectProps['placeholder'];
19
+ dataKey?: SelectProps['dataKey'];
20
+ showClear?: SelectProps['showClear'];
21
+ overlayStyle?: SelectProps['overlayStyle'];
22
+ overlayClass?: SelectProps['overlayClass'];
23
+ appendTo?: SelectProps['appendTo'];
24
+ resetFilterOnHide?: SelectProps['resetFilterOnHide'];
25
+ virtualScrollerOptions?: SelectProps['virtualScrollerOptions'];
26
+ autoOptionFocus?: SelectProps['autoOptionFocus'];
27
+ selectOnFocus?: SelectProps['selectOnFocus'];
28
+ filterMessage?: SelectProps['filterMessage'];
29
+ selectionMessage?: SelectProps['selectionMessage'];
30
+ emptySelectionMessage?: SelectProps['emptySelectionMessage'];
31
+ emptyFilterMessage?: SelectProps['emptyFilterMessage'];
32
+ emptyMessage?: SelectProps['emptyMessage'];
33
+ pt?: SelectProps['pt'];
34
+ ptOptions?: SelectProps['ptOptions'];
35
+ unstyled?: SelectProps['unstyled'];
36
+ size?: SelectProps['size'];
37
+ }
38
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
39
+ context: {
40
+ type: PropType<FormKitFrameworkContext & FormKitPrimeSelectProps>;
41
+ required: true;
42
+ };
43
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
44
+ context: {
45
+ type: PropType<FormKitFrameworkContext & FormKitPrimeSelectProps>;
46
+ required: true;
47
+ };
48
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
49
+ declare const _default: typeof __VLS_export;
50
+ export default _default;
@@ -0,0 +1,113 @@
1
+ <script setup lang="ts">
2
+ import type { FormKitFrameworkContext } from '@formkit/core'
3
+ import type { SelectProps } from 'primevue/select'
4
+
5
+ import type { PropType } from 'vue'
6
+ import { useFormKitInput } from '../composables'
7
+
8
+ export interface FormKitPrimeSelectProps {
9
+ options?: SelectProps['options']
10
+ optionLabel?: SelectProps['optionLabel']
11
+ optionValue?: SelectProps['optionValue']
12
+ optionDisabled?: SelectProps['optionDisabled']
13
+ optionGroupLabel?: SelectProps['optionGroupLabel']
14
+ optionGroupChildren?: SelectProps['optionGroupChildren']
15
+ scrollHeight?: SelectProps['scrollHeight']
16
+ filter?: SelectProps['filter']
17
+ filterPlaceholder?: SelectProps['filterPlaceholder']
18
+ filterLocale?: SelectProps['filterLocale']
19
+ filterMatchMode?: SelectProps['filterMatchMode']
20
+ filterFields?: SelectProps['filterFields']
21
+ editable?: SelectProps['editable']
22
+ placeholder?: SelectProps['placeholder']
23
+ dataKey?: SelectProps['dataKey']
24
+ showClear?: SelectProps['showClear']
25
+ overlayStyle?: SelectProps['overlayStyle']
26
+ overlayClass?: SelectProps['overlayClass']
27
+ appendTo?: SelectProps['appendTo']
28
+ resetFilterOnHide?: SelectProps['resetFilterOnHide']
29
+ virtualScrollerOptions?: SelectProps['virtualScrollerOptions']
30
+ autoOptionFocus?: SelectProps['autoOptionFocus']
31
+ selectOnFocus?: SelectProps['selectOnFocus']
32
+ filterMessage?: SelectProps['filterMessage']
33
+ selectionMessage?: SelectProps['selectionMessage']
34
+ emptySelectionMessage?: SelectProps['emptySelectionMessage']
35
+ emptyFilterMessage?: SelectProps['emptyFilterMessage']
36
+ emptyMessage?: SelectProps['emptyMessage']
37
+ pt?: SelectProps['pt']
38
+ ptOptions?: SelectProps['ptOptions']
39
+ unstyled?: SelectProps['unstyled']
40
+ size?: SelectProps['size']
41
+
42
+ }
43
+
44
+ const props = defineProps({
45
+ context: {
46
+ type: Object as PropType<FormKitFrameworkContext & FormKitPrimeSelectProps>,
47
+ required: true,
48
+ },
49
+ })
50
+
51
+ const { validSlotNames, unstyled, isInvalid, handleInput, handleBlur, modelValue } = useFormKitInput(props.context)
52
+ </script>
53
+
54
+ <template>
55
+ <div class="p-formkit">
56
+ <Select
57
+ v-model="modelValue"
58
+ v-bind="context?.attrs"
59
+ :input-id="context.id"
60
+ :disabled="!!context?.disabled"
61
+ :readonly="context?.attrs.readonly ?? false"
62
+ :style="context?.attrs.style"
63
+ :class="context?.attrs?.class"
64
+ :invalid="isInvalid"
65
+ :input-style="context?.attrs.style"
66
+ :input-class="context?.attrs?.class"
67
+ :input-props="context?.attrs.inputProps"
68
+ :tabindex="context?.attrs.tabindex"
69
+ :aria-label="context?.attrs.ariaLabel"
70
+ :aria-labelledby="context?.attrs.ariaLabelledby"
71
+ :size="context?.size ?? undefined"
72
+ :options="context.options"
73
+ :option-label="context.optionLabel"
74
+ :option-value="context.optionValue"
75
+ :option-disabled="context.optionDisabled"
76
+ :option-group-label="context.optionGroupLabel"
77
+ :option-group-children="context.optionGroupChildren"
78
+ :scroll-height="context.scrollHeight"
79
+ :filter="context.filter ?? false"
80
+ :filter-placeholder="context.filterPlaceholder"
81
+ :filter-locale="context.filterLocale"
82
+ :filter-match-mode="context.filterMatchMode"
83
+ :fitler-fields="context.filterFields"
84
+ :filter-input-props="context.filterInputProps"
85
+ :editable="context.editable"
86
+ :placeholder="context.placeholder"
87
+ :data-key="context.dataKey"
88
+ :show-clear="context.showClear ?? false"
89
+ :overlay-style="context.overlayStyle"
90
+ :overlay-class="context.overlayClass"
91
+ :panel-props="context.panelProps"
92
+ :append-to="context.appendTo"
93
+ :reset-filter-on-hide="context.resetFilterOnHide"
94
+ :virtual-scroller-options="context.virtualScrollerOptions"
95
+ :auto-option-focus="context.autoOptionFocus"
96
+ :select-on-focus="context.selectOnFocus"
97
+ :filter-message="context.filterMessage"
98
+ :selection-message="context.selectionMessage"
99
+ :empty-selection-message="context.emptySelectionMessage"
100
+ :empty-filter-message="context.emptyFilterMessage"
101
+ :empty-message="context.emptyMessage"
102
+ :pt="context.pt"
103
+ :pt-options="context.ptOptions"
104
+ :unstyled="unstyled"
105
+ @change="handleInput"
106
+ @blur="handleBlur"
107
+ >
108
+ <template v-for="slotName in validSlotNames" :key="slotName" #[slotName]="slotProps">
109
+ <component :is="context?.slots[slotName]" v-bind="{ ...context, ...slotProps }" />
110
+ </template>
111
+ </Select>
112
+ </div>
113
+ </template>