- gestione dell'editor delle pagine (non funzionante!)
This commit is contained in:
30
src/components/CMyDivider/CMyDivider.ts
Executable file
30
src/components/CMyDivider/CMyDivider.ts
Executable file
@@ -0,0 +1,30 @@
|
||||
import { defineComponent, computed } from 'vue';
|
||||
import './CMyDivider.scss';
|
||||
|
||||
export default defineComponent({
|
||||
name: 'CMyDivider',
|
||||
props: {
|
||||
label: { type: String, default: '' },
|
||||
color: { type: String, default: '' }, // quasar key o hex
|
||||
size: { type: Number, default: 1 }, // px
|
||||
dotted: { type: Boolean, default: false },
|
||||
inset: { type: Boolean, default: false },
|
||||
marginY: { type: Number, default: 0 }
|
||||
},
|
||||
setup(props) {
|
||||
const qColor = computed(() =>
|
||||
props.color && !props.color.startsWith('#') ? props.color : undefined
|
||||
);
|
||||
const sizePx = computed(() => props.size + 'px');
|
||||
const sepClass = computed(() => (props.dotted ? 'is-dotted' : ''));
|
||||
|
||||
const styleVars = computed(() => {
|
||||
const style: Record<string, string> = {};
|
||||
if (props.marginY != null) style.margin = `${props.marginY}px 0`;
|
||||
if (props.color && props.color.startsWith('#')) style['--divider-color'] = props.color;
|
||||
return style;
|
||||
});
|
||||
|
||||
return { styleVars, qColor, sepClass, sizePx, inset: props.inset, label: props.label };
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user