UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 2.96 kB
{"version":3,"file":"directive.mjs","sources":["../../../../../../packages/components/loading/src/directive.ts"],"sourcesContent":["import Loading from './index'\n\nimport type { DirectiveBinding } from 'vue'\nimport type { ILoadingInstance } from './loading.type'\n\nconst INSTANCE_NAME = 'ElLoading'\n\nexport interface ElementLoading extends HTMLElement {\n [INSTANCE_NAME]?: ILoadingInstance\n}\n\nconst createInstance = (el: ElementLoading, binding: DirectiveBinding) => {\n const textExr = el.getAttribute('element-loading-text')\n const spinnerExr = el.getAttribute('element-loading-spinner')\n const svgExr = el.getAttribute('element-loading-svg')\n const svgViewBoxExr = el.getAttribute('element-loading-svg-view-box')\n const backgroundExr = el.getAttribute('element-loading-background')\n const customClassExr = el.getAttribute('element-loading-custom-class')\n const vm = binding.instance\n el[INSTANCE_NAME] = Loading({\n text: (vm && vm[textExr]) || textExr,\n svg: (vm && vm[svgExr]) || svgExr,\n svgViewBox: (vm && vm[svgViewBoxExr]) || svgViewBoxExr,\n spinner: (vm && vm[spinnerExr]) || spinnerExr,\n background: (vm && vm[backgroundExr]) || backgroundExr,\n customClass: (vm && vm[customClassExr]) || customClassExr,\n fullscreen: !!binding.modifiers.fullscreen,\n target: binding.modifiers.fullscreen ? null : el,\n body: !!binding.modifiers.body,\n visible: true,\n lock: !!binding.modifiers.lock,\n })\n}\n\nconst vLoading = {\n mounted(el: ElementLoading, binding: DirectiveBinding) {\n if (binding.value) {\n createInstance(el, binding)\n }\n },\n updated(el: ElementLoading, binding: DirectiveBinding) {\n const instance = el[INSTANCE_NAME]\n if (binding.oldValue !== binding.value) {\n if (binding.value) {\n createInstance(el, binding)\n } else {\n instance?.close()\n }\n }\n },\n unmounted(el: ElementLoading) {\n el[INSTANCE_NAME]?.close()\n },\n}\n\nexport default vLoading\n"],"names":[],"mappings":";;AAKA,MAAM,gBAAgB;AAMtB,MAAM,iBAAiB,CAAC,IAAoB,YAA8B;AACxE,QAAM,UAAU,GAAG,aAAa;AAChC,QAAM,aAAa,GAAG,aAAa;AACnC,QAAM,SAAS,GAAG,aAAa;AAC/B,QAAM,gBAAgB,GAAG,aAAa;AACtC,QAAM,gBAAgB,GAAG,aAAa;AACtC,QAAM,iBAAiB,GAAG,aAAa;AACvC,QAAM,KAAK,QAAQ;AACnB,KAAG,iBAAiB,QAAQ;AAAA,IAC1B,MAAO,MAAM,GAAG,YAAa;AAAA,IAC7B,KAAM,MAAM,GAAG,WAAY;AAAA,IAC3B,YAAa,MAAM,GAAG,kBAAmB;AAAA,IACzC,SAAU,MAAM,GAAG,eAAgB;AAAA,IACnC,YAAa,MAAM,GAAG,kBAAmB;AAAA,IACzC,aAAc,MAAM,GAAG,mBAAoB;AAAA,IAC3C,YAAY,CAAC,CAAC,QAAQ,UAAU;AAAA,IAChC,QAAQ,QAAQ,UAAU,aAAa,OAAO;AAAA,IAC9C,MAAM,CAAC,CAAC,QAAQ,UAAU;AAAA,IAC1B,SAAS;AAAA,IACT,MAAM,CAAC,CAAC,QAAQ,UAAU;AAAA;AAAA;MAIxB,WAAW;AAAA,EACf,QAAQ,IAAoB,SAA2B;AACrD,QAAI,QAAQ,OAAO;AACjB,qBAAe,IAAI;AAAA;AAAA;AAAA,EAGvB,QAAQ,IAAoB,SAA2B;AACrD,UAAM,WAAW,GAAG;AACpB,QAAI,QAAQ,aAAa,QAAQ,OAAO;AACtC,UAAI,QAAQ,OAAO;AACjB,uBAAe,IAAI;AAAA,aACd;AACL,6CAAU;AAAA;AAAA;AAAA;AAAA,EAIhB,UAAU,IAAoB;AAlDhC;AAmDI,aAAG,mBAAH,mBAAmB;AAAA;AAAA;;;;"}