{"version":3,"file":"VLayoutItem.mjs","names":["makeComponentProps","makeLayoutItemProps","useLayoutItem","computed","toRef","genericComponent","propsFactory","makeVLayoutItemProps","position","type","String","required","size","Number","default","modelValue","Boolean","VLayoutItem","name","props","setup","_ref","slots","layoutItemStyles","id","order","parseInt","elementSize","layoutSize","active","absolute","_createVNode","class","value","style"],"sources":["../../../src/components/VLayout/VLayoutItem.tsx"],"sourcesContent":["// Styles\nimport './VLayoutItem.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVLayoutItemProps = propsFactory({\n  position: {\n    type: String as PropType<'top' | 'right' | 'bottom' | 'left'>,\n    required: true,\n  },\n  size: {\n    type: [Number, String],\n    default: 300,\n  },\n  modelValue: Boolean,\n\n  ...makeComponentProps(),\n  ...makeLayoutItemProps(),\n}, 'VLayoutItem')\n\nexport const VLayoutItem = genericComponent()({\n  name: 'VLayoutItem',\n\n  props: makeVLayoutItemProps(),\n\n  setup (props, { slots }) {\n    const { layoutItemStyles } = useLayoutItem({\n      id: props.name,\n      order: computed(() => parseInt(props.order, 10)),\n      position: toRef(props, 'position'),\n      elementSize: toRef(props, 'size'),\n      layoutSize: toRef(props, 'size'),\n      active: toRef(props, 'modelValue'),\n      absolute: toRef(props, 'absolute'),\n    })\n\n    return () => (\n      <div\n        class={[\n          'v-layout-item',\n          props.class,\n        ]}\n        style={[\n          layoutItemStyles.value,\n          props.style,\n        ]}\n      >\n        { slots.default?.() }\n      </div>\n    )\n  },\n})\n\nexport type VLayoutItem = InstanceType<typeof VLayoutItem>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,mBAAmB,EAAEC,aAAa,wCAE3C;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,EAAEC,YAAY,gCAEvC;AAGA,OAAO,MAAMC,oBAAoB,GAAGD,YAAY,CAAC;EAC/CE,QAAQ,EAAE;IACRC,IAAI,EAAEC,MAAuD;IAC7DC,QAAQ,EAAE;EACZ,CAAC;EACDC,IAAI,EAAE;IACJH,IAAI,EAAE,CAACI,MAAM,EAAEH,MAAM,CAAC;IACtBI,OAAO,EAAE;EACX,CAAC;EACDC,UAAU,EAAEC,OAAO;EAEnB,GAAGhB,kBAAkB,CAAC,CAAC;EACvB,GAAGC,mBAAmB,CAAC;AACzB,CAAC,EAAE,aAAa,CAAC;AAEjB,OAAO,MAAMgB,WAAW,GAAGZ,gBAAgB,CAAC,CAAC,CAAC;EAC5Ca,IAAI,EAAE,aAAa;EAEnBC,KAAK,EAAEZ,oBAAoB,CAAC,CAAC;EAE7Ba,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAiB,CAAC,GAAGrB,aAAa,CAAC;MACzCsB,EAAE,EAAEL,KAAK,CAACD,IAAI;MACdO,KAAK,EAAEtB,QAAQ,CAAC,MAAMuB,QAAQ,CAACP,KAAK,CAACM,KAAK,EAAE,EAAE,CAAC,CAAC;MAChDjB,QAAQ,EAAEJ,KAAK,CAACe,KAAK,EAAE,UAAU,CAAC;MAClCQ,WAAW,EAAEvB,KAAK,CAACe,KAAK,EAAE,MAAM,CAAC;MACjCS,UAAU,EAAExB,KAAK,CAACe,KAAK,EAAE,MAAM,CAAC;MAChCU,MAAM,EAAEzB,KAAK,CAACe,KAAK,EAAE,YAAY,CAAC;MAClCW,QAAQ,EAAE1B,KAAK,CAACe,KAAK,EAAE,UAAU;IACnC,CAAC,CAAC;IAEF,OAAO,MAAAY,YAAA;MAAA,SAEI,CACL,eAAe,EACfZ,KAAK,CAACa,KAAK,CACZ;MAAA,SACM,CACLT,gBAAgB,CAACU,KAAK,EACtBd,KAAK,CAACe,KAAK;IACZ,IAECZ,KAAK,CAACR,OAAO,GAAG,CAAC,EAEtB;EACH;AACF,CAAC,CAAC"}