UNPKG

@vue-interface/variant

Version:

The contextual variant mixin for interface components.

1 lines 2.15 kB
{"version":3,"file":"variant.umd.cjs","sources":["../src/Variant.ts"],"sourcesContent":["export default {\n\n props: {\n\n /**\n * The generic component prefix.\n */\n componentPrefix: String,\n \n /**\n * The variant name.\n */\n variant: String,\n\n /**\n * The variant prefix. Should use to component prefix, unless the\n * variant prefix is different than the component prefix.\n */\n variantPrefix: String\n\n },\n\n computed: {\n\n /**\n * The computed variant class prefix.\n */\n variantClassPrefix(): string|undefined {\n return this.variantPrefix || this.componentPrefix;\n },\n \n /**\n * Determines if the variant already has the prefix.\n */\n hasVariantPrefix(): boolean {\n if(this.variant === undefined) {\n return false;\n }\n\n return !!this.variant.match(\n new RegExp(`^${this.variantClassPrefix}`)\n );\n },\n\n /**\n * The variant classes that get injected into the DOM.\n */\n variantClass(): string {\n // If there is no variant just return an empty string.\n if(!this.variant) {\n return '';\n }\n\n // If there is no variant prefix or the variant already had the\n // prefix, then return the variant as-is.\n if(!this.variantClassPrefix || this.hasVariantPrefix) {\n return this.variant;\n }\n\n // Otherwise prefix the variant.\n return `${this.variantClassPrefix}-${this.variant}`;\n }\n\n }\n\n};"],"names":["Variant"],"mappings":"+NAAe,MAAAA,EAAA,CAEX,MAAO,CAKH,gBAAiB,OAKjB,QAAS,OAMT,cAAe,MAEnB,EAEA,SAAU,CAKN,oBAAuC,CAC5B,OAAA,KAAK,eAAiB,KAAK,eACtC,EAKA,kBAA4B,CACrB,OAAA,KAAK,UAAY,OACT,GAGJ,CAAC,CAAC,KAAK,QAAQ,MAClB,IAAI,OAAO,IAAI,KAAK,oBAAoB,CAAA,CAEhD,EAKA,cAAuB,CAEhB,OAAC,KAAK,QAMN,CAAC,KAAK,oBAAsB,KAAK,iBACzB,KAAK,QAIT,GAAG,KAAK,sBAAsB,KAAK,UAV/B,EAWf,CAEJ,CAEJ"}