VContainer.mjs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import { createVNode as _createVNode, resolveDirective as _resolveDirective } from "vue";
  2. // Styles
  3. import "./VGrid.css";
  4. // Composables
  5. import { makeComponentProps } from "../../composables/component.mjs";
  6. import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
  7. import { useRtl } from "../../composables/locale.mjs";
  8. import { makeTagProps } from "../../composables/tag.mjs"; // Utilities
  9. import { genericComponent, propsFactory, useRender } from "../../util/index.mjs";
  10. export const makeVContainerProps = propsFactory({
  11. fluid: {
  12. type: Boolean,
  13. default: false
  14. },
  15. ...makeComponentProps(),
  16. ...makeDimensionProps(),
  17. ...makeTagProps()
  18. }, 'VContainer');
  19. export const VContainer = genericComponent()({
  20. name: 'VContainer',
  21. props: makeVContainerProps(),
  22. setup(props, _ref) {
  23. let {
  24. slots
  25. } = _ref;
  26. const {
  27. rtlClasses
  28. } = useRtl();
  29. const {
  30. dimensionStyles
  31. } = useDimension(props);
  32. useRender(() => _createVNode(props.tag, {
  33. "class": ['v-container', {
  34. 'v-container--fluid': props.fluid
  35. }, rtlClasses.value, props.class],
  36. "style": [dimensionStyles.value, props.style]
  37. }, slots));
  38. return {};
  39. }
  40. });
  41. //# sourceMappingURL=VContainer.mjs.map