vexip-ui
Version:
A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good
1 lines • 6.91 kB
Source Map (JSON)
{"version":3,"file":"props.mjs","sources":["../../../components/layout/props.ts"],"sourcesContent":["import { booleanProp, booleanStringProp, buildProps, eventProp, localeProp } from '@vexip-ui/config'\n\nimport type { ExtractPropTypes, PropType } from 'vue'\nimport type { ConfigurableProps } from '@vexip-ui/config'\nimport type { BreakPoint } from '@/components/grid'\nimport type { MenuOptions } from '@/components/menu'\nimport type {\n LayoutConfig,\n LayoutFooterLink,\n LayoutHeaderAction,\n LayoutInnerClass,\n LayoutMediaJudger,\n LayoutMenuProps,\n LayoutSignType,\n LayoutUser,\n} from './symbol'\n\nconst breakpointProp = {\n type: [String, Boolean, Function] as PropType<\n boolean | BreakPoint | LayoutMediaJudger | (string & {})\n >,\n default: null,\n}\n\nexport const layoutProps = buildProps({\n locale: localeProp('layout'),\n noAside: booleanProp,\n footer: booleanProp,\n tag: String,\n menus: Object as PropType<MenuOptions[]>,\n menuProps: Object as PropType<LayoutMenuProps>,\n logo: String,\n signName: String,\n config: Array as PropType<LayoutConfig[]>,\n user: Object as PropType<LayoutUser>,\n actions: Array as PropType<LayoutHeaderAction[]>,\n expanded: booleanProp,\n reduced: booleanProp,\n avatarCircle: booleanProp,\n signType: String as PropType<LayoutSignType>,\n headerFixed: breakpointProp,\n asideFixed: breakpointProp,\n copyright: String,\n links: Array as PropType<LayoutFooterLink[]>,\n colors: Array as PropType<string[]>,\n color: String,\n miniHeaderSign: breakpointProp,\n verticalLinks: breakpointProp,\n darkMode: booleanProp,\n fixedMain: booleanProp,\n fitWindow: booleanProp,\n innerClasses: Object as PropType<LayoutInnerClass>,\n noHeader: booleanProp,\n noMasker: booleanProp,\n onExpandedChange: eventProp<(expanded: boolean) => void>(),\n onReducedChange: eventProp<(reduced: boolean) => void>(),\n onSignClick: eventProp<(event: MouseEvent) => void>(),\n onMenuSelect: eventProp<(label: string, meta: any) => void>(),\n onUserAction: eventProp<(label: string, meta: any) => void>(),\n onNavChange: eventProp<(type: LayoutSignType) => void>(),\n onColorChange: eventProp<(color: string) => void>(),\n onToggleTheme: eventProp<(isDark: boolean) => void>(),\n onContentResize: eventProp<() => void>(),\n})\n\nexport type LayoutProps = ExtractPropTypes<typeof layoutProps>\nexport type LayoutCProps = ConfigurableProps<LayoutProps, 'menus'>\n\nexport const layoutAsideProps = buildProps({\n tag: String,\n expanded: booleanProp,\n reduced: booleanProp,\n menus: Array as PropType<MenuOptions[]>,\n menuProps: Object as PropType<LayoutMenuProps>,\n logo: String,\n signName: String,\n fixed: booleanStringProp,\n signType: String as PropType<LayoutSignType>,\n onExpandedChange: eventProp<(expanded: boolean) => void>(),\n onReducedChange: eventProp<(reduced: boolean) => void>(),\n onSignClick: eventProp<(event: MouseEvent) => void>(),\n onMenuSelect: eventProp<(label: string, meta: any) => void>(),\n})\n\nexport type LayoutAsideProps = ExtractPropTypes<typeof layoutAsideProps>\nexport type LayoutAsideCProps = ConfigurableProps<LayoutAsideProps, 'menus'>\n\nexport const layoutHeaderProps = buildProps({\n locale: localeProp('layout'),\n tag: String,\n logo: String,\n signName: String,\n user: Object as PropType<LayoutUser>,\n userDropped: booleanProp,\n avatarCircle: booleanProp,\n config: Array as PropType<LayoutConfig[]>,\n actions: Array as PropType<LayoutHeaderAction[]>,\n signType: String as PropType<LayoutSignType>,\n colors: Array as PropType<string[]>,\n color: String,\n menus: Object as PropType<MenuOptions[]>,\n menuProps: Object as PropType<LayoutMenuProps>,\n darkMode: booleanProp,\n onNavChange: eventProp<(type: LayoutSignType) => void>(),\n onColorChange: eventProp<(color: string) => void>(),\n onUserAction: eventProp<(label: string, meta: any) => void>(),\n onSignClick: eventProp<(event: MouseEvent) => void>(),\n onDroppedChange: eventProp<(target: boolean) => void>(),\n onExpandedChange: eventProp<(expanded: boolean) => void>(),\n onReducedChange: eventProp<(reduced: boolean) => void>(),\n onMenuSelect: eventProp<(label: string, meta: any) => void>(),\n onToggleTheme: eventProp<(isDark: boolean) => void>(),\n})\n\nexport type LayoutHeaderProps = ExtractPropTypes<typeof layoutHeaderProps>\nexport type LayoutHeaderCProps = ConfigurableProps<LayoutHeaderProps, 'user' | 'menus'>\n\nexport const layoutMainProps = buildProps({\n tag: String,\n fixed: booleanProp,\n})\n\nexport type LayoutMainProps = ExtractPropTypes<typeof layoutMainProps>\nexport type LayoutMainCProps = ConfigurableProps<LayoutMainProps>\n\nexport const layoutFooterProps = buildProps({\n tag: String,\n copyright: String,\n links: Array as PropType<LayoutFooterLink[]>,\n verticalLinks: booleanStringProp,\n})\n\nexport type LayoutFooterProps = ExtractPropTypes<typeof layoutFooterProps>\nexport type LayoutFooterCProps = ConfigurableProps<LayoutFooterProps>\n"],"names":["breakpointProp","layoutProps","buildProps","localeProp","booleanProp","eventProp","layoutAsideProps","booleanStringProp","layoutHeaderProps","layoutMainProps","layoutFooterProps"],"mappings":";AAiBA,MAAMA,IAAiB;AAAA,EACrB,MAAM,CAAC,QAAQ,SAAS,QAAQ;AAAA,EAGhC,SAAS;AACX,GAEaC,IAAcC,EAAW;AAAA,EACpC,QAAQC,EAAW,QAAQ;AAAA,EAC3B,SAASC;AAAA,EACT,QAAQA;AAAA,EACR,KAAK;AAAA,EACL,OAAO;AAAA,EACP,WAAW;AAAA,EACX,MAAM;AAAA,EACN,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,SAAS;AAAA,EACT,UAAUA;AAAA,EACV,SAASA;AAAA,EACT,cAAcA;AAAA,EACd,UAAU;AAAA,EACV,aAAaJ;AAAA,EACb,YAAYA;AAAA,EACZ,WAAW;AAAA,EACX,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,gBAAgBA;AAAA,EAChB,eAAeA;AAAA,EACf,UAAUI;AAAA,EACV,WAAWA;AAAA,EACX,WAAWA;AAAA,EACX,cAAc;AAAA,EACd,UAAUA;AAAA,EACV,UAAUA;AAAA,EACV,kBAAkBC,EAAuC;AAAA,EACzD,iBAAiBA,EAAsC;AAAA,EACvD,aAAaA,EAAuC;AAAA,EACpD,cAAcA,EAA8C;AAAA,EAC5D,cAAcA,EAA8C;AAAA,EAC5D,aAAaA,EAA0C;AAAA,EACvD,eAAeA,EAAmC;AAAA,EAClD,eAAeA,EAAqC;AAAA,EACpD,iBAAiBA,EAAsB;AACzC,CAAC,GAKYC,IAAmBJ,EAAW;AAAA,EACzC,KAAK;AAAA,EACL,UAAUE;AAAA,EACV,SAASA;AAAA,EACT,OAAO;AAAA,EACP,WAAW;AAAA,EACX,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAOG;AAAA,EACP,UAAU;AAAA,EACV,kBAAkBF,EAAuC;AAAA,EACzD,iBAAiBA,EAAsC;AAAA,EACvD,aAAaA,EAAuC;AAAA,EACpD,cAAcA,EAA8C;AAC9D,CAAC,GAKYG,IAAoBN,EAAW;AAAA,EAC1C,QAAQC,EAAW,QAAQ;AAAA,EAC3B,KAAK;AAAA,EACL,MAAM;AAAA,EACN,UAAU;AAAA,EACV,MAAM;AAAA,EACN,aAAaC;AAAA,EACb,cAAcA;AAAA,EACd,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,OAAO;AAAA,EACP,WAAW;AAAA,EACX,UAAUA;AAAA,EACV,aAAaC,EAA0C;AAAA,EACvD,eAAeA,EAAmC;AAAA,EAClD,cAAcA,EAA8C;AAAA,EAC5D,aAAaA,EAAuC;AAAA,EACpD,iBAAiBA,EAAqC;AAAA,EACtD,kBAAkBA,EAAuC;AAAA,EACzD,iBAAiBA,EAAsC;AAAA,EACvD,cAAcA,EAA8C;AAAA,EAC5D,eAAeA,EAAqC;AACtD,CAAC,GAKYI,IAAkBP,EAAW;AAAA,EACxC,KAAK;AAAA,EACL,OAAOE;AACT,CAAC,GAKYM,IAAoBR,EAAW;AAAA,EAC1C,KAAK;AAAA,EACL,WAAW;AAAA,EACX,OAAO;AAAA,EACP,eAAeK;AACjB,CAAC;"}