element-plus
Version:
A Component Library for Vue 3
1 lines • 3.55 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-transition-fallthrough/index.ts"],"sourcesContent":["/* istanbul ignore file */\nimport { getCurrentInstance } from 'vue'\n\nconst AFTER_APPEAR = 'after-appear'\nconst AFTER_ENTER = 'after-enter'\nconst AFTER_LEAVE = 'after-leave'\nconst APPEAR = 'appear'\nconst APPEAR_CANCELLED = 'appear-cancelled'\nconst BEFORE_ENTER = 'before-enter'\nconst BEFORE_LEAVE = 'before-leave'\nconst ENTER = 'enter'\nconst ENTER_CANCELLED = 'enter-cancelled'\nconst LEAVE = 'leave'\nconst LEAVE_CANCELLED = 'leave-cancelled'\n\nexport const useTransitionFallthroughEmits = [\n AFTER_APPEAR,\n AFTER_ENTER,\n AFTER_LEAVE,\n APPEAR,\n APPEAR_CANCELLED,\n BEFORE_ENTER,\n BEFORE_LEAVE,\n ENTER,\n ENTER_CANCELLED,\n LEAVE,\n LEAVE_CANCELLED,\n] as const\n\n// Sometimes we want to delegate the transition emitted event\n// we have to right the function locally, which is not a good\n// approach to this, so we created this hook for the event\n// fallthrough\n\n/**\n * NOTE:\n * This is only a delegator for delegating transition callbacks.\n * Use this at your need.\n */\n\n/**\n * Simple usage\n *\n * In your setups:\n *\n * setup() {\n * const fallthroughMethods = useTransitionFallthrough()\n * return fallthrough\n * }\n *\n * In your template:\n *\n * <template>\n * <transition name=\"whatever\" v-bind=\"fallthrough\">\n * <slot />\n * </transition>\n * </template>\n *\n */\n\nexport const useTransitionFallthrough = () => {\n const { emit } = getCurrentInstance()!\n\n return {\n onAfterAppear: () => {\n emit(AFTER_APPEAR)\n },\n onAfterEnter: () => {\n emit(AFTER_ENTER)\n },\n onAfterLeave: () => {\n emit(AFTER_LEAVE)\n },\n onAppearCancelled: () => {\n emit(APPEAR_CANCELLED)\n },\n onBeforeEnter: () => {\n emit(BEFORE_ENTER)\n },\n onBeforeLeave: () => {\n emit(BEFORE_LEAVE)\n },\n onEnter: () => {\n emit(ENTER)\n },\n onEnterCancelled: () => {\n emit(ENTER_CANCELLED)\n },\n onLeave: () => {\n emit(LEAVE)\n },\n onLeaveCancelled: () => {\n emit(LEAVE_CANCELLED)\n },\n }\n}\n"],"names":[],"mappings":";;AAGA,MAAM,YAAe,GAAA,cAAA,CAAA;AACrB,MAAM,WAAc,GAAA,aAAA,CAAA;AACpB,MAAM,WAAc,GAAA,aAAA,CAAA;AACpB,MAAM,MAAS,GAAA,QAAA,CAAA;AACf,MAAM,gBAAmB,GAAA,kBAAA,CAAA;AACzB,MAAM,YAAe,GAAA,cAAA,CAAA;AACrB,MAAM,YAAe,GAAA,cAAA,CAAA;AACrB,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,MAAM,eAAkB,GAAA,iBAAA,CAAA;AACxB,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,MAAM,eAAkB,GAAA,iBAAA,CAAA;AAEjB,MAAM,6BAAgC,GAAA;AAAA,EAC3C,YAAA;AAAA,EACA,WAAA;AAAA,EACA,WAAA;AAAA,EACA,MAAA;AAAA,EACA,gBAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,KAAA;AAAA,EACA,eAAA;AAAA,EACA,KAAA;AAAA,EACA,eAAA;AACF,EAAA;AAiCO,MAAM,2BAA2B,MAAM;AAC5C,EAAM,MAAA,EAAE,IAAK,EAAA,GAAI,kBAAmB,EAAA,CAAA;AAEpC,EAAO,OAAA;AAAA,IACL,eAAe,MAAM;AACnB,MAAA,IAAA,CAAK,YAAY,CAAA,CAAA;AAAA,KACnB;AAAA,IACA,cAAc,MAAM;AAClB,MAAA,IAAA,CAAK,WAAW,CAAA,CAAA;AAAA,KAClB;AAAA,IACA,cAAc,MAAM;AAClB,MAAA,IAAA,CAAK,WAAW,CAAA,CAAA;AAAA,KAClB;AAAA,IACA,mBAAmB,MAAM;AACvB,MAAA,IAAA,CAAK,gBAAgB,CAAA,CAAA;AAAA,KACvB;AAAA,IACA,eAAe,MAAM;AACnB,MAAA,IAAA,CAAK,YAAY,CAAA,CAAA;AAAA,KACnB;AAAA,IACA,eAAe,MAAM;AACnB,MAAA,IAAA,CAAK,YAAY,CAAA,CAAA;AAAA,KACnB;AAAA,IACA,SAAS,MAAM;AACb,MAAA,IAAA,CAAK,KAAK,CAAA,CAAA;AAAA,KACZ;AAAA,IACA,kBAAkB,MAAM;AACtB,MAAA,IAAA,CAAK,eAAe,CAAA,CAAA;AAAA,KACtB;AAAA,IACA,SAAS,MAAM;AACb,MAAA,IAAA,CAAK,KAAK,CAAA,CAAA;AAAA,KACZ;AAAA,IACA,kBAAkB,MAAM;AACtB,MAAA,IAAA,CAAK,eAAe,CAAA,CAAA;AAAA,KACtB;AAAA,GACF,CAAA;AACF;;;;"}