diff --git a/components/ComponentPreview.vue b/components/ComponentPreview.vue index bcbed82..a138c07 100644 --- a/components/ComponentPreview.vue +++ b/components/ComponentPreview.vue @@ -27,14 +27,20 @@ :label="component.props.label" :help="component.props.help" :placeholder="component.props.placeholder" :validation="component.props.validation" :validation-visibility="isPreview ? 'live' : 'blur'" :readonly="component.props.readonly || isPreview" - :disabled="isPreview" :options="component.props.options || undefined" :value="component.props.value || undefined" + :disabled="isPreview || (component.props.readonly && ['select', 'checkbox', 'radio'].includes(component.type))" + :options="component.props.options || undefined" :value="component.props.value || undefined" :accept="component.props.accept || undefined" :max="component.props.max || undefined" :mask="component.props.mask || undefined" :digits="component.props.digits || undefined" :multiple="component.props.multiple || undefined" :maxSize="component.props.maxSize || undefined" :maxFiles="component.props.maxFiles || undefined" :classes="component.type === 'checkbox' ? { wrapper: 'mb-1', options: 'space-y-0.5' - } : {}" :class="{ 'canvas-component': isPreview }" /> + } : {}" :class="{ + 'canvas-component': isPreview, + 'readonly-select': component.props.readonly && component.type === 'select', + 'readonly-checkbox': component.props.readonly && component.type === 'checkbox', + 'readonly-radio': component.props.readonly && component.type === 'radio' + }" />
@@ -325,14 +331,15 @@
-