UNPKG

tdesign-mobile-vue

Version:
1 lines 4.05 kB
{"version":3,"file":"side-bar.mjs","sources":["../../src/side-bar/side-bar.tsx"],"sourcesContent":["import { defineComponent, ref, Ref, ComponentInternalInstance, provide } from 'vue';\nimport config from '../config';\nimport props from './props';\nimport { TdSideBarProps } from './type';\nimport { useDefault } from '../shared';\nimport { useTNodeJSX } from '../hooks/tnode';\nimport { usePrefixClass } from '../hooks/useClass';\n\nconst { prefix } = config;\n\nexport default defineComponent({\n name: `${prefix}-side-bar`,\n props,\n emits: ['update:value', 'update:modelValue', 'change'],\n setup(props, context) {\n const renderTNodeJSX = useTNodeJSX();\n const sideBarClass = usePrefixClass('side-bar');\n const [currentValue, setCurrentValue] = useDefault<TdSideBarProps['value'], TdSideBarProps>(\n props,\n context.emit,\n 'value',\n 'change',\n );\n\n const children: Ref<ComponentInternalInstance[]> = ref([]);\n\n const relation = (child: ComponentInternalInstance) => {\n child && children.value.push(child);\n };\n\n const removeRelation = (child: ComponentInternalInstance) => {\n children.value = children.value.filter((item) => item !== child);\n };\n\n const onClickItem = (cur: string | number, label: string) => {\n setCurrentValue(cur);\n props.onClick?.(cur, label);\n };\n\n provide('sideBarProvide', {\n ...props,\n children,\n currentValue,\n relation,\n removeRelation,\n onClickItem,\n });\n\n return () => (\n <div class={`${sideBarClass.value}`}>\n {renderTNodeJSX('default')}\n <div class={`${sideBarClass.value}__padding`}></div>\n </div>\n );\n },\n});\n"],"names":["prefix","config","defineComponent","name","props","emits","setup","context","renderTNodeJSX","useTNodeJSX","sideBarClass","usePrefixClass","_useDefault","useDefault","emit","_useDefault2","_slicedToArray","currentValue","setCurrentValue","children","ref","relation","child","value","push","removeRelation","filter","item","onClickItem","cur","label","_props2$onClick","onClick","provide","_objectSpread","_createVNode","concat"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAQA,SAAWC,MAAA,CAAXD;AAER,eAAeE,eAAgB,CAAA;AAC7BC,EAAAA,gBAASH,MAAA,EAAA,WAAA,CAAA;AACTI,EAAAA,KAAA,EAAAA,KAAA;AACAC,EAAAA,KAAO,EAAA,CAAC,cAAgB,EAAA,mBAAA,EAAqB,QAAQ,CAAA;AACrDC,EAAAA,KAAA,WAAAA,KAAAA,CAAMF,QAAOG,OAAS,EAAA;AACpB,IAAA,IAAMC,iBAAiBC,WAAY,EAAA,CAAA;AAC7B,IAAA,IAAAC,YAAA,GAAeC,eAAe,UAAU,CAAA,CAAA;AACxC,IAAA,IAAAC,WAAA,GAAkCC,UAAA,CACtCT,MAAAA,EACAG,OAAQ,CAAAO,IAAA,EACR,OAAA,EACA,QACF,CAAA;MAAAC,YAAA,GAAAC,cAAA,CAAAJ,WAAA,EAAA,CAAA,CAAA;AALOK,MAAAA,YAAc,GAAAF,YAAA,CAAA,CAAA,CAAA;AAAAG,MAAAA,eAAe,GAAAH,YAAA,CAAA,CAAA,CAAA,CAAA;AAO9B,IAAA,IAAAI,QAAA,GAA6CC,GAAI,CAAA,EAAE,CAAA,CAAA;AAEnD,IAAA,IAAAC,QAAA,GAAW,SAAXA,QAAAA,CAAYC,KAAqC,EAAA;MAC5CA,KAAA,IAAAH,QAAA,CAASI,KAAM,CAAAC,IAAA,CAAKF,KAAK,CAAA,CAAA;KACpC,CAAA;AAEM,IAAA,IAAAG,cAAA,GAAiB,SAAjBA,cAAAA,CAAkBH,KAAqC,EAAA;MAC3DH,QAAA,CAASI,QAAQJ,QAAS,CAAAI,KAAA,CAAMG,OAAO,UAACC,IAAA,EAAA;QAAA,OAASA,SAASL,KAAK,CAAA;OAAA,CAAA,CAAA;KACjE,CAAA;IAEM,IAAAM,WAAA,GAAc,SAAdA,WAAAA,CAAeC,GAAA,EAAsBC,KAAkB,EAAA;AAAA,MAAA,IAAAC,eAAA,CAAA;MAC3Db,eAAA,CAAgBW,GAAG,CAAA,CAAA;AACnBzB,MAAAA,CAAAA,eAAAA,GAAAA,MAAAA,CAAM4B,OAAU,cAAAD,eAAA,KAAA,KAAA,CAAA,IAAhB3B,eAAAA,CAAAA,IAAAA,CAAAA,MAAAA,EAAgByB,GAAA,EAAKC,KAAK,CAAA,CAAA;KAC5B,CAAA;AAEAG,IAAAA,OAAA,CAAQ,gBAAkB,EAAAC,aAAA,CAAAA,aAAA,KACrB9B,MAAAA,CAAAA,EAAAA,EAAAA,EAAAA;AACHe,MAAAA,QAAA,EAAAA,QAAA;AACAF,MAAAA,YAAA,EAAAA,YAAA;AACAI,MAAAA,QAAA,EAAAA,QAAA;AACAI,MAAAA,cAAA,EAAAA,cAAA;AACAG,MAAAA,WAAA,EAAAA,WAAAA;AAAA,KAAA,CACD,CAAA,CAAA;IAED,OAAO,YAAA;AAAA,MAAA,OAAAO,WAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,EAAA,CAAAC,MAAA,CACU1B,YAAa,CAAAa,KAAA,CAAA;AAAA,OAAA,EAAA,CACzBf,eAAe,SAAS,CAAA,EAAA2B,WAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,EAAA,CAAAC,MAAA,CACV1B,aAAaa,KAAkB,EAAA,WAAA,CAAA;AAAA,OAAA,EAAA,IAAA,CAAA,CAAA,CAAA,CAAA;KAF/C,CAAA;AAKL,GAAA;AACF,CAAC,CAAA;;;;"}