VLabel.mjs 891 B

12345678910111213141516171819202122232425262728293031
  1. import { createVNode as _createVNode } from "vue";
  2. // Styles
  3. import "./VLabel.css";
  4. // Composables
  5. import { makeComponentProps } from "../../composables/component.mjs";
  6. import { makeThemeProps } from "../../composables/theme.mjs"; // Utilities
  7. import { genericComponent, propsFactory, useRender } from "../../util/index.mjs";
  8. export const makeVLabelProps = propsFactory({
  9. text: String,
  10. clickable: Boolean,
  11. ...makeComponentProps(),
  12. ...makeThemeProps()
  13. }, 'VLabel');
  14. export const VLabel = genericComponent()({
  15. name: 'VLabel',
  16. props: makeVLabelProps(),
  17. setup(props, _ref) {
  18. let {
  19. slots
  20. } = _ref;
  21. useRender(() => _createVNode("label", {
  22. "class": ['v-label', {
  23. 'v-label--clickable': props.clickable
  24. }, props.class],
  25. "style": props.style
  26. }, [props.text, slots.default?.()]));
  27. return {};
  28. }
  29. });
  30. //# sourceMappingURL=VLabel.mjs.map