1 line
4.3 KiB
Plaintext
1 line
4.3 KiB
Plaintext
|
{"version":3,"file":"VDivider.mjs","names":["useTextColor","makeComponentProps","makeThemeProps","provideTheme","computed","toRef","convertToUnit","genericComponent","propsFactory","useRender","makeVDividerProps","color","String","inset","Boolean","length","Number","thickness","vertical","VDivider","name","props","setup","_ref","attrs","themeClasses","textColorClasses","textColorStyles","dividerStyles","styles","_createVNode","value","class","style","role","undefined"],"sources":["../../../src/components/VDivider/VDivider.tsx"],"sourcesContent":["// Styles\nimport './VDivider.sass'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\ntype DividerKey = 'borderRightWidth' | 'borderTopWidth' | 'maxHeight' | 'maxWidth'\ntype DividerStyles = Partial<Record<DividerKey, string>>\n\nexport const makeVDividerProps = propsFactory({\n color: String,\n inset: Boolean,\n length: [Number, String],\n thickness: [Number, String],\n vertical: Boolean,\n\n ...makeComponentProps(),\n ...makeThemeProps(),\n}, 'VDivider')\n\nexport const VDivider = genericComponent()({\n name: 'VDivider',\n\n props: makeVDividerProps(),\n\n setup (props, { attrs }) {\n const { themeClasses } = provideTheme(props)\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n const dividerStyles = computed(() => {\n const styles: DividerStyles = {}\n\n if (props.length) {\n styles[props.vertical ? 'maxHeight' : 'maxWidth'] = convertToUnit(props.length)\n }\n\n if (props.thickness) {\n styles[props.vertical ? 'borderRightWidth' : 'borderTopWidth'] = convertToUnit(props.thickness)\n }\n\n return styles\n })\n\n useRender(() => (\n <hr\n class={[\n {\n 'v-divider': true,\n 'v-divider--inset': props.inset,\n 'v-divider--vertical': props.vertical,\n },\n themeClasses.value,\n textColorClasses.value,\n props.class,\n ]}\n style={[\n dividerStyles.value,\n textColorStyles.value,\n props.style,\n ]}\n aria-orientation={\n !attrs.role || attrs.role === 'separator'\n ? props.vertical ? 'vertical' : 'horizontal'\n : undefined\n }\n role={ `${attrs.role || 'separator'}` }\n />\n ))\n\n return {}\n },\n})\n\nexport type VDivider = InstanceType<typeof VDivider>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,YAAY;AAAA,SACZC,kBAAkB;AAAA,SAClBC,cAAc,EAAEC,YAAY,uCAErC;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,aAAa,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AAKjE,OAAO,MAAMC,iBAAiB,GAAGF,YAAY,CAAC;EAC5CG,KAAK,EAAEC,MAAM;EACbC,KAAK,EAAEC,OAAO;EACdC,MAAM,EAAE,CAACC,MAAM,EAAEJ,MAAM,CAAC;EACxBK,SAAS,EAAE,CAACD,MAAM,EAAEJ,MAAM,CAAC;EAC3BM,QAAQ,EAAEJ,OAAO;EAEjB,GAAGb,kBAAkB,CAAC,CAAC;EACvB,GAAGC,cAAc,CAAC;AACpB,CAAC,EAAE,UAAU,CAAC;AAEd,OAAO,MAAMiB,QAAQ,GAAGZ,gBAAgB,CAAC,CAAC,CAAC;EACzCa,IAAI,EAAE,UAAU;EAEhBC,KAAK,EAAEX,iBAAiB,CAAC,CAAC;EAE1BY,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAa,CAAC,GAAGtB,YAAY,CAACkB,KAAK,CAAC;IAC5C,MAAM;MAAEK,gBAAgB;MAAEC;IAAgB,CAAC,GAAG3B,YAAY,CAACK,KAAK,CAACgB,KAAK,EAAE,OAAO,CAAC,CAAC;IACjF,MAAMO,aAAa,GAAGxB,QAAQ,CAAC,MAAM;MACnC,MAAMyB,MAAqB,GAAG,CAAC,CAAC;MAEhC,IAAIR,KAAK,CAACN,MAAM,EAAE;QAChBc,MAAM,CAACR,KAAK,CAACH,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC,GAAGZ,aAAa,CAACe,KAAK,CAACN,MAAM,CAAC;MACjF;MAEA,IAAIM,KAAK,CAACJ,SAAS,EAAE;QACnBY,MAAM,CAACR,KAAK,CAACH,QAAQ,GAAG,kBAAkB,GAAG,gBAAgB,CAAC,GAAGZ,aAAa,CAACe,KAAK,CAACJ,SAAS,CAAC;MACjG;MAEA,OAAOY,MAAM;IACf,CAAC,CAAC;IAEFpB,SAAS,CAAC,MAAAqB,YAAA;MAAA,SAEC,CACL;QACE,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAET,KAAK,CAACR,KAAK;QAC/B,qBAAqB,EAAEQ,KAAK,CAACH;MAC/B,CAAC,EACDO,YAAY,CAACM,KAAK,EAClBL,gBAAgB,CAACK,KAAK,E
|