taro-react-uilib 1.4.27 → 1.4.28-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/ActionSheet/index.js +1 -1
- package/dist/components/ActionSheet/index.js.map +1 -1
- package/dist/components/AmountInput/index.js +1 -1
- package/dist/components/AmountInput/index.js.map +1 -1
- package/dist/components/AmountKeyboard/index.js +1 -1
- package/dist/components/AmountKeyboard/index.js.map +1 -1
- package/dist/components/Button/index.js +1 -1
- package/dist/components/Button/index.js.map +1 -1
- package/dist/components/Cell/index.js +1 -1
- package/dist/components/Cell/index.js.map +1 -1
- package/dist/components/Checkbox/index.js +1 -1
- package/dist/components/Checkbox/index.js.map +1 -1
- package/dist/components/CheckboxButton/index.js +1 -1
- package/dist/components/CheckboxButton/index.js.map +1 -1
- package/dist/components/Collapse/index.js +1 -1
- package/dist/components/Collapse/index.js.map +1 -1
- package/dist/components/Dialog/Alert/index.js +1 -1
- package/dist/components/Dialog/Alert/index.js.map +1 -1
- package/dist/components/Dialog/Confirm/index.js +1 -1
- package/dist/components/Dialog/Confirm/index.js.map +1 -1
- package/dist/components/DialogRef/index.js +1 -1
- package/dist/components/DialogRef/index.js.map +1 -1
- package/dist/components/FormInput/index.js +1 -1
- package/dist/components/FormInput/index.js.map +1 -1
- package/dist/components/IDNumberInput/index.js +1 -1
- package/dist/components/IDNumberInput/index.js.map +1 -1
- package/dist/components/Icon/index.js +1 -1
- package/dist/components/Icon/index.js.map +1 -1
- package/dist/components/Image/index.js +1 -1
- package/dist/components/Image/index.js.map +1 -1
- package/dist/components/LicensePlateInput/index.js +1 -1
- package/dist/components/LicensePlateInput/index.js.map +1 -1
- package/dist/components/LinkMan/index.js +1 -1
- package/dist/components/LinkMan/index.js.map +1 -1
- package/dist/components/List/index.js +1 -1
- package/dist/components/List/index.js.map +1 -1
- package/dist/components/Mask/index.js +1 -1
- package/dist/components/Mask/index.js.map +1 -1
- package/dist/components/NavBar/index.js +1 -1
- package/dist/components/NavBar/index.js.map +1 -1
- package/dist/components/NumberKeyboard/index.js +1 -1
- package/dist/components/NumberKeyboard/index.js.map +1 -1
- package/dist/components/Page/index.js +1 -1
- package/dist/components/Page/index.js.map +1 -1
- package/dist/components/Radio/index.js +1 -1
- package/dist/components/Radio/index.js.map +1 -1
- package/dist/components/Step/index.js +1 -1
- package/dist/components/Step/index.js.map +1 -1
- package/dist/components/Tabbar/tabbar/TabItem.js +1 -1
- package/dist/components/Tabbar/tabbar/TabItem.js.map +1 -1
- package/dist/components/Tabbar/tabbar/Tabbar.js +1 -1
- package/dist/components/Tabbar/tabbar/Tabbar.js.map +1 -1
- package/dist/index.esm.js +5 -5
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/index.umd.js +5 -5
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/types/components/ActionSheet/index.d.ts +1 -0
- package/types/components/AmountInput/index.d.ts +1 -0
- package/types/components/AmountKeyboard/index.d.ts +1 -0
- package/types/components/Button/index.d.ts +1 -0
- package/types/components/Captcha/index.d.ts +1 -1
- package/types/components/Cell/index.d.ts +1 -0
- package/types/components/Checkbox/index.d.ts +1 -0
- package/types/components/CheckboxButton/index.d.ts +1 -0
- package/types/components/Collapse/index.d.ts +1 -0
- package/types/components/DialogRef/index.d.ts +2 -0
- package/types/components/FormInput/index.d.ts +1 -0
- package/types/components/IDNumberInput/index.d.ts +2 -0
- package/types/components/Icon/index.d.ts +1 -0
- package/types/components/Image/index.d.ts +1 -0
- package/types/components/LicensePlateInput/index.d.ts +2 -0
- package/types/components/LinkMan/index.d.ts +1 -0
- package/types/components/List/index.d.ts +1 -0
- package/types/components/Mask/index.d.ts +1 -0
- package/types/components/NumberKeyboard/index.d.ts +1 -0
- package/types/components/Page/index.d.ts +1 -0
- package/types/components/Radio/index.d.ts +1 -0
- package/types/components/Step/index.d.ts +1 -0
- package/types/components/Tabbar/tabbar/TabItem.d.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/List/index.tsx"],"sourcesContent":["import React, { FC, ReactNode } from \"react\";\nimport { View, Text, ITouchEvent } from \"@tarojs/components\";\nimport classNames from \"classnames\";\nimport { XHComponentCommonProps } from \"../../types\";\n\nimport \"./index.scss\";\n\nexport type XHListProps = {\n title?: string;\n description?: string | ReactNode;\n icon?: ReactNode;\n extra?: string | ReactNode;\n extraIcon?: ReactNode;\n border?: boolean;\n arrow?: boolean;\n outline?: boolean;\n condensed?: boolean;\n onClick?: (e: ITouchEvent) => void;\n descriptionColor?: string;\n extraColor?: string;\n ellipsis?: boolean;\n padding?: boolean;\n} & XHComponentCommonProps;\n\nconst XHList: FC<XHListProps> = props => {\n const {\n title = \"\",\n description = \"\",\n icon,\n extra = \"\",\n extraIcon = \"\",\n arrow,\n border = true,\n onClick,\n className,\n outline = true,\n condensed = false,\n descriptionColor = \"\",\n extraColor = \"\",\n ellipsis = true,\n padding = false,\n } = props;\n\n const listcls = classNames(\n \"xh-list\",\n { border },\n { outline },\n { condensed },\n { padding },\n className\n );\n\n const mainCls = classNames(\"xh-list-main\", {\n ellipsis,\n });\n\n const handleClick = (e: ITouchEvent) => {\n onClick && onClick(e);\n };\n\n return (\n <View
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/List/index.tsx"],"sourcesContent":["import React, { FC, ReactNode } from \"react\";\nimport { View, Text, ITouchEvent } from \"@tarojs/components\";\nimport classNames from \"classnames\";\nimport { XHComponentCommonProps } from \"../../types\";\n\nimport \"./index.scss\";\n\nexport type XHListProps = {\n title?: string;\n description?: string | ReactNode;\n icon?: ReactNode;\n extra?: string | ReactNode;\n extraIcon?: ReactNode;\n border?: boolean;\n arrow?: boolean;\n outline?: boolean;\n condensed?: boolean;\n onClick?: (e: ITouchEvent) => void;\n descriptionColor?: string;\n extraColor?: string;\n ellipsis?: boolean;\n padding?: boolean;\n dataTrackId?: string;\n} & XHComponentCommonProps;\n\nconst XHList: FC<XHListProps> = props => {\n const {\n title = \"\",\n description = \"\",\n icon,\n extra = \"\",\n extraIcon = \"\",\n arrow,\n border = true,\n onClick,\n className,\n outline = true,\n condensed = false,\n descriptionColor = \"\",\n extraColor = \"\",\n ellipsis = true,\n padding = false,\n dataTrackId = \"XHList\",\n } = props;\n\n const listcls = classNames(\n \"xh-list\",\n { border },\n { outline },\n { condensed },\n { padding },\n className\n );\n\n const mainCls = classNames(\"xh-list-main\", {\n ellipsis,\n });\n\n const handleClick = (e: ITouchEvent) => {\n onClick && onClick(e);\n };\n\n return (\n <View\n className={listcls}\n // @ts-ignore\n dataTrackId={dataTrackId}\n onClick={handleClick}\n >\n {icon && <View className=\"xh-list-icon\">{icon}</View>}\n <View className={mainCls}>\n {title && <Text className=\"xh-list-main-title\">{title}</Text>}\n <Text\n className=\"xh-list-main-description\"\n style={{ color: descriptionColor }}\n >\n {description}\n </Text>\n </View>\n <View className=\"xh-list-extra\">\n <View className=\"xh-list-extra-info\" style={{ color: extraColor }}>\n {extra}\n </View>\n <View className=\"xh-list-extra-icon\">\n {extraIcon\n ? extraIcon\n : arrow && <View className=\"xh-list-extra-icon-arrow\" />}\n </View>\n </View>\n </View>\n );\n};\nexport default XHList;\n"],"names":["XHList","props","_a","title","_b","description","icon","_c","extra","_d","extraIcon","arrow","_e","border","onClick","className","_f","outline","_g","condensed","_h","descriptionColor","_j","extraColor","_k","ellipsis","_l","padding","_m","dataTrackId","listcls","classNames","mainCls","React","createElement","View","e","Text","style","color"],"mappings":"mGAyBM,IAAAA,EAA0B,SAAAC,GAE5B,IAAAC,EAgBED,EAhBQE,MAAVA,OAAK,IAAAD,EAAG,GAAEA,EACVE,EAeEH,EAAKI,YAfPA,OAAc,IAAAD,EAAA,GAAEA,EAChBE,EAcEL,EAAKK,KAbPC,EAaEN,EAAKO,MAbPA,OAAQ,IAAAD,EAAA,GAAEA,EACVE,EAYER,EAZYS,UAAdA,OAAS,IAAAD,EAAG,GAAEA,EACdE,EAWEV,EAXGU,MACLC,EAUEX,EAVWY,OAAbA,OAAM,IAAAD,GAAOA,EACbE,EASEb,EATKa,QACPC,EAQEd,EAROc,UACTC,EAOEf,EAPYgB,QAAdA,OAAO,IAAAD,GAAOA,EACdE,EAMEjB,EAAKkB,UANPA,OAAY,IAAAD,GAAKA,EACjBE,EAKEnB,EALmBoB,iBAArBA,OAAgB,IAAAD,EAAG,GAAEA,EACrBE,EAIErB,EAJasB,WAAfA,OAAU,IAAAD,EAAG,GAAEA,EACfE,EAGEvB,EAAKwB,SAHPA,OAAW,IAAAD,GAAIA,EACfE,EAEEzB,EAFa0B,QAAfA,OAAO,IAAAD,GAAQA,EACfE,EACE3B,EAAK4B,YADPA,OAAc,IAAAD,EAAA,WAGVE,EAAUC,EACd,UACA,CAAElB,OAAMA,GACR,CAAEI,QAAOA,GACT,CAAEE,UAASA,GACX,CAAEQ,QAAOA,GACTZ,GAGIiB,EAAUD,EAAW,eAAgB,CACzCN,SAAQA,IAOV,OACEQ,EAACC,cAAAC,EACC,CAAApB,UAAWe,EAEXD,YAAaA,EACbf,QATgB,SAACsB,GACnBtB,GAAWA,EAAQsB,EACrB,GASK9B,GAAQ2B,gBAACE,EAAI,CAACpB,UAAU,gBAAgBT,GACzC2B,EAAAC,cAACC,EAAI,CAACpB,UAAWiB,GACd7B,GAAS8B,gBAACI,EAAI,CAACtB,UAAU,sBAAsBZ,GAChD8B,EAAAC,cAACG,EACC,CAAAtB,UAAU,2BACVuB,MAAO,CAAEC,MAAOlB,IAEfhB,IAGL4B,EAAAC,cAACC,EAAI,CAACpB,UAAU,iBACdkB,EAAAC,cAACC,EAAI,CAACpB,UAAU,qBAAqBuB,MAAO,CAAEC,MAAOhB,IAClDf,GAEHyB,EAAAC,cAACC,EAAK,CAAApB,UAAU,sBACbL,GAEGC,GAASsB,EAAAC,cAACC,EAAK,CAAApB,UAAU,+BAKvC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import a from"react";import r from"classnames";import{View as
|
|
1
|
+
import a from"react";import r from"classnames";import{View as o}from"@tarojs/components";var t=function(t){var n=t.closeOnClickMask,s=void 0===n||n,m=t.onClick,e=t.mask,c=t.dataTrackId,k=void 0===c?"Mask":c,i=r("xh-mask",{"xh-mask-normal":"normal"===e,"xh-mask-transparent":"transparent"===e});return a.createElement(o,{className:i,onClick:function(a){s&&m&&m(a)},dataTrackId:k})};export{t as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Mask/index.tsx"],"sourcesContent":["import React, { FC, MouseEvent } from \"react\";\nimport classNames from \"classnames\";\nimport { View } from \"@tarojs/components\";\nimport { XHComponentCommonProps } from \"../../types\";\nimport \"./index.scss\";\n\nexport type MaskProps = {\n closeOnClickMask?: boolean;\n onClick?: (e: MouseEvent) => void;\n mask?: \"transparent\" | \"normal\";\n} & XHComponentCommonProps;\n\nconst Mask: FC<MaskProps> = props => {\n const {
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Mask/index.tsx"],"sourcesContent":["import React, { FC, MouseEvent } from \"react\";\nimport classNames from \"classnames\";\nimport { View } from \"@tarojs/components\";\nimport { XHComponentCommonProps } from \"../../types\";\nimport \"./index.scss\";\n\nexport type MaskProps = {\n closeOnClickMask?: boolean;\n onClick?: (e: MouseEvent) => void;\n mask?: \"transparent\" | \"normal\";\n dataTrackId?: string;\n} & XHComponentCommonProps;\n\nconst Mask: FC<MaskProps> = props => {\n const {\n closeOnClickMask = true,\n onClick,\n mask,\n dataTrackId = \"Mask\",\n } = props;\n\n const cls = classNames(\"xh-mask\", {\n \"xh-mask-normal\": mask === \"normal\",\n \"xh-mask-transparent\": mask === \"transparent\",\n });\n\n function handleClick(e: any): void {\n closeOnClickMask && onClick && onClick(e);\n }\n\n return (\n <View\n className={cls}\n onClick={handleClick} //@ts-ignore\n dataTrackId={dataTrackId}\n />\n );\n};\n\nexport default Mask;\n"],"names":["Mask","props","_a","closeOnClickMask","onClick","mask","_b","dataTrackId","cls","classNames","React","createElement","View","className","e"],"mappings":"yFAaM,IAAAA,EAAsB,SAAAC,GAExB,IAAAC,EAIED,EAAKE,iBAJPA,OAAmB,IAAAD,GAAIA,EACvBE,EAGEH,EAAKG,QAFPC,EAEEJ,EAFEI,KACJC,EACEL,EADkBM,YAApBA,OAAW,IAAAD,EAAG,OAAMA,EAGhBE,EAAMC,EAAW,UAAW,CAChC,iBAA2B,WAATJ,EAClB,sBAAgC,gBAATA,IAOzB,OACEK,EAACC,cAAAC,EACC,CAAAC,UAAWL,EACXJ,QAPJ,SAAqBU,GACnBX,GAAoBC,GAAWA,EAAQU,EACxC,EAMGP,YAAaA,GAGnB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import a from"react";import{View as e,Text as r}from"@tarojs/components";import t from"classnames";import{getSystemInfoSync as o,navigateBack as s}from"@tarojs/taro";import n from"../src/hooks/useCustomNavbar.js";var c="h5"!==process.env.TARO_ENV&&"ios"===o().platform,m=function(o){var m=o.leftIcon,i=void 0===m||m,l=o.rightIcon,v=void 0!==l&&l,h=o.title,p=o.onBack,d=o.navBarBorder,N=void 0!==d&&d,f=o.className,E=n(),u=E.navBarHeight,b=E.statusBar,x=E.buttonRight;var B="h5"===process.env.TARO_ENV?{}:{height:"".concat(u,"px"),paddingTop:"".concat(b,"px")},T="h5"===process.env.TARO_ENV?{}:{left:"".concat(x,"px")},g=t("xh-nav-bar",f,{h5:"h5"===process.env.TARO_ENV,border:N});return a.createElement(e,{className:g,style:B},a.createElement(e,{className:t("xh-nav-bar-back",{hidden:!i}),style:T,onClick:function(){p?p():s()},dataTrackId:"NavBar_Back"}),a.createElement(r,{className:t("xh-nav-bar-title",{isAndroid:!c})},h),"h5"===process.env.TARO_ENV&&v&&a.createElement(e,{className:"xh-nav-bar-right"},v),a.createElement(e,null))};export{m as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/NavBar/index.tsx"],"sourcesContent":["import React, { FC, ReactNode } from \"react\";\nimport { View, Text } from \"@tarojs/components\";\nimport classNames from \"classnames\";\nimport { navigateBack, getSystemInfoSync } from \"@tarojs/taro\";\nimport useCustomNavBar from \"@/hooks/useCustomNavbar\";\n\nimport { XHComponentCommonProps } from \"../../types\";\nimport \"./index.scss\";\n\nexport type NavBarProps = {\n title: string;\n leftIcon?: boolean;\n rightIcon?: ReactNode;\n navBarBorder?: boolean;\n onBack?: () => void;\n} & XHComponentCommonProps;\n\n// 小程序中判断设备系统\nconst isMiniProgramIos =\n process.env.TARO_ENV !== \"h5\"\n ? getSystemInfoSync().platform === \"ios\"\n : false;\nconst NavBar: FC<NavBarProps> = props => {\n const {\n leftIcon = true,\n rightIcon = false,\n title,\n onBack,\n navBarBorder = false,\n className,\n } = props;\n\n const { navBarHeight, statusBar, buttonRight } = useCustomNavBar();\n\n function goBackPage() {\n onBack ? onBack() : navigateBack();\n }\n\n const wrapStyle =\n process.env.TARO_ENV === \"h5\"\n ? {}\n : {\n height: `${navBarHeight}px`,\n paddingTop: `${statusBar}px`,\n };\n\n const backStyle =\n process.env.TARO_ENV === \"h5\"\n ? {}\n : {\n left: `${buttonRight}px`,\n };\n\n const NavBarCls = classNames(\"xh-nav-bar\", className, {\n h5: process.env.TARO_ENV === \"h5\",\n border: navBarBorder,\n });\n\n return (\n <View className={NavBarCls} style={wrapStyle}>\n <View\n className={classNames(\"xh-nav-bar-back\", { hidden: !leftIcon })}\n style={backStyle}\n onClick={goBackPage}\n ></View>\n <Text\n className={classNames(\"xh-nav-bar-title\", {\n isAndroid: !isMiniProgramIos,\n })}\n >\n {title}\n </Text>\n {process.env.TARO_ENV === \"h5\" && rightIcon && (\n <View className=\"xh-nav-bar-right\">{rightIcon}</View>\n )}\n <View />\n </View>\n );\n};\n\nexport default NavBar;\n"],"names":["isMiniProgramIos","process","env","TARO_ENV","getSystemInfoSync","platform","NavBar","props","_a","leftIcon","_b","rightIcon","title","onBack","_c","navBarBorder","className","_d","useCustomNavBar","navBarHeight","statusBar","buttonRight","wrapStyle","height","concat","paddingTop","backStyle","left","NavBarCls","classNames","h5","border","React","createElement","View","style","hidden","onClick","navigateBack","Text","isAndroid"],"mappings":"qNAkBA,IAAMA,EACqB,OAAzBC,QAAQC,IAAIC,UACyB,QAAjCC,IAAoBC,SAEpBC,EAA0B,SAAAC,GAE5B,IAAAC,EAMED,EAAKE,SANPA,OAAQ,IAAAD,GAAOA,EACfE,EAKEH,YALFI,cAAiBD,EACjBE,EAIEL,EAAKK,MAHPC,EAGEN,EAHIM,OACNC,EAEEP,EAAKQ,aAFPA,OAAY,IAAAD,GAAQA,EACpBE,EACET,YAEEU,EAA2CC,IAAzCC,EAAYF,EAAAE,aAAEC,EAASH,EAAAG,UAAEC,EAAWJ,EAAAI,YAM5C,IAAMC,EACqB,OAAzBrB,QAAQC,IAAIC,SACR,CAAE,EACF,CACEoB,OAAQ,GAAGC,OAAAL,EAAgB,MAC3BM,WAAY,GAAGD,OAAAJ,EAAa,OAG9BM,EACqB,OAAzBzB,QAAQC,IAAIC,SACR,CAAE,EACF,CACEwB,KAAM,GAAGH,OAAAH,EAAe,OAG1BO,EAAYC,EAAW,aAAcb,EAAW,CACpDc,GAA6B,OAAzB7B,QAAQC,IAAIC,SAChB4B,OAAQhB,IAGV,OACEiB,EAACC,cAAAC,EAAK,CAAAlB,UAAWY,EAAWO,MAAOb,GACjCU,EAACC,cAAAC,GACClB,UAAWa,EAAW,kBAAmB,CAAEO,QAAS3B,IACpD0B,MAAOT,EACPW,QA7BN,WACExB,EAASA,IAAWyB,GACrB,
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/NavBar/index.tsx"],"sourcesContent":["import React, { FC, ReactNode } from \"react\";\nimport { View, Text } from \"@tarojs/components\";\nimport classNames from \"classnames\";\nimport { navigateBack, getSystemInfoSync } from \"@tarojs/taro\";\nimport useCustomNavBar from \"@/hooks/useCustomNavbar\";\n\nimport { XHComponentCommonProps } from \"../../types\";\nimport \"./index.scss\";\n\nexport type NavBarProps = {\n title: string;\n leftIcon?: boolean;\n rightIcon?: ReactNode;\n navBarBorder?: boolean;\n onBack?: () => void;\n} & XHComponentCommonProps;\n\n// 小程序中判断设备系统\nconst isMiniProgramIos =\n process.env.TARO_ENV !== \"h5\"\n ? getSystemInfoSync().platform === \"ios\"\n : false;\nconst NavBar: FC<NavBarProps> = props => {\n const {\n leftIcon = true,\n rightIcon = false,\n title,\n onBack,\n navBarBorder = false,\n className,\n } = props;\n\n const { navBarHeight, statusBar, buttonRight } = useCustomNavBar();\n\n function goBackPage() {\n onBack ? onBack() : navigateBack();\n }\n\n const wrapStyle =\n process.env.TARO_ENV === \"h5\"\n ? {}\n : {\n height: `${navBarHeight}px`,\n paddingTop: `${statusBar}px`,\n };\n\n const backStyle =\n process.env.TARO_ENV === \"h5\"\n ? {}\n : {\n left: `${buttonRight}px`,\n };\n\n const NavBarCls = classNames(\"xh-nav-bar\", className, {\n h5: process.env.TARO_ENV === \"h5\",\n border: navBarBorder,\n });\n\n return (\n <View className={NavBarCls} style={wrapStyle}>\n <View\n className={classNames(\"xh-nav-bar-back\", { hidden: !leftIcon })}\n style={backStyle}\n onClick={goBackPage}\n // @ts-ignore\n dataTrackId=\"NavBar_Back\"\n ></View>\n <Text\n className={classNames(\"xh-nav-bar-title\", {\n isAndroid: !isMiniProgramIos,\n })}\n >\n {title}\n </Text>\n {process.env.TARO_ENV === \"h5\" && rightIcon && (\n <View className=\"xh-nav-bar-right\">{rightIcon}</View>\n )}\n <View />\n </View>\n );\n};\n\nexport default NavBar;\n"],"names":["isMiniProgramIos","process","env","TARO_ENV","getSystemInfoSync","platform","NavBar","props","_a","leftIcon","_b","rightIcon","title","onBack","_c","navBarBorder","className","_d","useCustomNavBar","navBarHeight","statusBar","buttonRight","wrapStyle","height","concat","paddingTop","backStyle","left","NavBarCls","classNames","h5","border","React","createElement","View","style","hidden","onClick","navigateBack","dataTrackId","Text","isAndroid"],"mappings":"qNAkBA,IAAMA,EACqB,OAAzBC,QAAQC,IAAIC,UACyB,QAAjCC,IAAoBC,SAEpBC,EAA0B,SAAAC,GAE5B,IAAAC,EAMED,EAAKE,SANPA,OAAQ,IAAAD,GAAOA,EACfE,EAKEH,YALFI,cAAiBD,EACjBE,EAIEL,EAAKK,MAHPC,EAGEN,EAHIM,OACNC,EAEEP,EAAKQ,aAFPA,OAAY,IAAAD,GAAQA,EACpBE,EACET,YAEEU,EAA2CC,IAAzCC,EAAYF,EAAAE,aAAEC,EAASH,EAAAG,UAAEC,EAAWJ,EAAAI,YAM5C,IAAMC,EACqB,OAAzBrB,QAAQC,IAAIC,SACR,CAAE,EACF,CACEoB,OAAQ,GAAGC,OAAAL,EAAgB,MAC3BM,WAAY,GAAGD,OAAAJ,EAAa,OAG9BM,EACqB,OAAzBzB,QAAQC,IAAIC,SACR,CAAE,EACF,CACEwB,KAAM,GAAGH,OAAAH,EAAe,OAG1BO,EAAYC,EAAW,aAAcb,EAAW,CACpDc,GAA6B,OAAzB7B,QAAQC,IAAIC,SAChB4B,OAAQhB,IAGV,OACEiB,EAACC,cAAAC,EAAK,CAAAlB,UAAWY,EAAWO,MAAOb,GACjCU,EAACC,cAAAC,GACClB,UAAWa,EAAW,kBAAmB,CAAEO,QAAS3B,IACpD0B,MAAOT,EACPW,QA7BN,WACExB,EAASA,IAAWyB,GACrB,EA6BKC,YAAY,gBAEdP,EAAAC,cAACO,EACC,CAAAxB,UAAWa,EAAW,mBAAoB,CACxCY,WAAYzC,KAGbY,GAEuB,OAAzBX,QAAQC,IAAIC,UAAqBQ,GAChCqB,EAACC,cAAAC,GAAKlB,UAAU,oBAAoBL,GAEtCqB,EAAAC,cAACC,EAAI,MAGX"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__read as e}from"../node_modules/tslib/tslib.es6.js";import t,{useState as n,useEffect as
|
|
1
|
+
import{__read as e}from"../node_modules/tslib/tslib.es6.js";import t,{useState as n,useEffect as a}from"react";import o from"classnames";import{View as r}from"@tarojs/components";import c from"../node_modules/react-transition-group/esm/CSSTransition.js";var s=function(s){var l=s.onBlur,m=s.show,i=s.maxLength,u=void 0===i?Number.MAX_SAFE_INTEGER:i,d=s.showClose,p=void 0===d||d,v=s.closeOnClickSpace,b=void 0===v||v,y=s.onClose,h=s.onChange,k=s.value,f=s.title,x=void 0===f?"安全键盘":f,E=s.closeText,N=void 0===E?"收起":E,T=s.className,_=s.dataTrackId,C=void 0===_?"NumberKeyboard":_,g=e(n(k),2),I=g[0],S=g[1],j=function(){for(var e=[],t=1;t<=9;t++)e.push({text:t,value:t,type:"number"});return e.push({text:"",value:"",type:"none"},{text:0,value:0,type:"number"},{text:"",value:"",type:"delete"}),e}();function A(e){y&&y(e),l&&l(e)}a((function(){return b&&document.addEventListener("click",A),function(){document.removeEventListener("click",A)}}),[]),a((function(){S(k)}),[k]);var L=o("xh-number-keyboard",T);return t.createElement(c,{classNames:"slide-up",in:m,unmountOnExit:!0,timeout:200},t.createElement(r,{className:L,dataTrackId:C},t.createElement(r,{className:"xh-number-keyboard-header"},t.createElement(r,{className:"xh-number-keyboard-header-title"},x),p&&t.createElement(r,{className:"xh-number-keyboard-header-close",onClick:A,dataTrackId:"".concat(C,"_close")},N)),t.createElement(r,{className:"xh-number-keyboard-body"},j.map((function(e,n){return t.createElement(r,{key:n,dataTrackId:"".concat(C,"_key_").concat(n),className:o("xh-number-keyboard-body-key",{none:"none"===e.type,delete:"delete"===e.type}),onClick:function(t){!function(e,t){var n=t.type,a=t.value;if("h5"===process.env.TARO_ENV&&e.stopImmediatePropagation(),"none"!==n){var o=I;"delete"===n?o=I.slice(0,I.length-1):o.length<u&&(o=I+a),S(o),h&&h(o)}}(t,e)}},e.text)})))))};export{s as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/NumberKeyboard/index.tsx"],"sourcesContent":["import React, { FC, useState, useEffect, MouseEvent } from \"react\";\nimport classNames from \"classnames\";\nimport { CSSTransition } from \"react-transition-group\";\nimport { View } from \"@tarojs/components\";\n\nimport \"./index.scss\";\nimport { XHComponentCommonProps } from \"../../types\";\n\nexport type NumberKeyboardType = \"default\" | \"custom\";\n\nexport type NumberKeyboardProps = {\n show: boolean;\n type?: NumberKeyboardType;\n showClose?: boolean;\n closeOnClickSpace?: boolean;\n maxLength?: number;\n onBlur?: (e: MouseEvent | Event) => void;\n onClose?: (e: MouseEvent | Event) => void;\n onChange?: (value: string) => void;\n value: string;\n title?: string;\n closeText?: string;\n} & XHComponentCommonProps;\n\nexport type KeyType = \"number\" | \"delete\" | \"string\" | \"none\";\n\nexport interface IKey {\n text: number | string;\n value: number | string;\n type: KeyType;\n}\n\nconst NumberKeyboard: FC<NumberKeyboardProps> = props => {\n const {\n onBlur,\n show,\n maxLength = Number.MAX_SAFE_INTEGER,\n showClose = true,\n closeOnClickSpace = true,\n onClose,\n onChange,\n value,\n title = \"安全键盘\",\n closeText = \"收起\",\n className,\n } = props;\n const [input, setInput] = useState(value);\n const keys = getKeys();\n\n useEffect(() => {\n if (closeOnClickSpace) {\n document.addEventListener(\"click\", handleClose);\n }\n\n return () => {\n document.removeEventListener(\"click\", handleClose);\n };\n }, []);\n\n useEffect(() => {\n setInput(value);\n }, [value]);\n\n function handleClose(e): void {\n onClose && onClose(e);\n onBlur && onBlur(e);\n }\n\n function handleKeyPress(e, { type, value }: IKey): void {\n if (process.env.TARO_ENV === \"h5\") {\n e.stopImmediatePropagation();\n }\n if (type === \"none\") return;\n\n let newInput = input;\n\n if (type === \"delete\") {\n newInput = input.slice(0, input.length - 1);\n } else if (newInput.length < maxLength) {\n newInput = input + value;\n }\n\n setInput(newInput);\n\n onChange && onChange(newInput);\n }\n\n function getKeys(): IKey[] {\n const keys: IKey[] = [];\n\n for (let i = 1; i <= 9; i++) {\n keys.push({ text: i, value: i, type: \"number\" });\n }\n\n keys.push(\n { text: \"\", value: \"\", type: \"none\" },\n { text: 0, value: 0, type: \"number\" },\n { text: \"\", value: \"\", type: \"delete\" }\n );\n\n return keys;\n }\n const keyboardcls = classNames(\"xh-number-keyboard\", className);\n\n return (\n <CSSTransition classNames=\"slide-up\" in={show} unmountOnExit timeout={200}>\n <View
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/NumberKeyboard/index.tsx"],"sourcesContent":["import React, { FC, useState, useEffect, MouseEvent } from \"react\";\nimport classNames from \"classnames\";\nimport { CSSTransition } from \"react-transition-group\";\nimport { View } from \"@tarojs/components\";\n\nimport \"./index.scss\";\nimport { XHComponentCommonProps } from \"../../types\";\n\nexport type NumberKeyboardType = \"default\" | \"custom\";\n\nexport type NumberKeyboardProps = {\n show: boolean;\n type?: NumberKeyboardType;\n showClose?: boolean;\n closeOnClickSpace?: boolean;\n maxLength?: number;\n onBlur?: (e: MouseEvent | Event) => void;\n onClose?: (e: MouseEvent | Event) => void;\n onChange?: (value: string) => void;\n value: string;\n title?: string;\n closeText?: string;\n dataTrackId?: string;\n} & XHComponentCommonProps;\n\nexport type KeyType = \"number\" | \"delete\" | \"string\" | \"none\";\n\nexport interface IKey {\n text: number | string;\n value: number | string;\n type: KeyType;\n}\n\nconst NumberKeyboard: FC<NumberKeyboardProps> = props => {\n const {\n onBlur,\n show,\n maxLength = Number.MAX_SAFE_INTEGER,\n showClose = true,\n closeOnClickSpace = true,\n onClose,\n onChange,\n value,\n title = \"安全键盘\",\n closeText = \"收起\",\n className,\n dataTrackId = \"NumberKeyboard\",\n } = props;\n const [input, setInput] = useState(value);\n const keys = getKeys();\n\n useEffect(() => {\n if (closeOnClickSpace) {\n document.addEventListener(\"click\", handleClose);\n }\n\n return () => {\n document.removeEventListener(\"click\", handleClose);\n };\n }, []);\n\n useEffect(() => {\n setInput(value);\n }, [value]);\n\n function handleClose(e): void {\n onClose && onClose(e);\n onBlur && onBlur(e);\n }\n\n function handleKeyPress(e, { type, value }: IKey): void {\n if (process.env.TARO_ENV === \"h5\") {\n e.stopImmediatePropagation();\n }\n if (type === \"none\") return;\n\n let newInput = input;\n\n if (type === \"delete\") {\n newInput = input.slice(0, input.length - 1);\n } else if (newInput.length < maxLength) {\n newInput = input + value;\n }\n\n setInput(newInput);\n\n onChange && onChange(newInput);\n }\n\n function getKeys(): IKey[] {\n const keys: IKey[] = [];\n\n for (let i = 1; i <= 9; i++) {\n keys.push({ text: i, value: i, type: \"number\" });\n }\n\n keys.push(\n { text: \"\", value: \"\", type: \"none\" },\n { text: 0, value: 0, type: \"number\" },\n { text: \"\", value: \"\", type: \"delete\" }\n );\n\n return keys;\n }\n const keyboardcls = classNames(\"xh-number-keyboard\", className);\n\n return (\n <CSSTransition classNames=\"slide-up\" in={show} unmountOnExit timeout={200}>\n <View\n className={keyboardcls}\n // @ts-ignore\n dataTrackId={dataTrackId}\n >\n <View className=\"xh-number-keyboard-header\">\n <View className=\"xh-number-keyboard-header-title\">{title}</View>\n {showClose && (\n <View\n className=\"xh-number-keyboard-header-close\"\n onClick={handleClose}\n // @ts-ignore\n dataTrackId={`${dataTrackId}_close`}\n >\n {closeText}\n </View>\n )}\n </View>\n <View className=\"xh-number-keyboard-body\">\n {keys.map((key, index) => (\n <View\n key={index}\n // @ts-ignore\n dataTrackId={`${dataTrackId}_key_${index}`}\n className={classNames(\"xh-number-keyboard-body-key\", {\n none: key.type === \"none\",\n delete: key.type === \"delete\",\n })}\n onClick={e => {\n handleKeyPress(e, key);\n }}\n >\n {key.text}\n </View>\n ))}\n </View>\n </View>\n </CSSTransition>\n );\n};\n\nexport default NumberKeyboard;\n"],"names":["NumberKeyboard","props","onBlur","show","_a","maxLength","Number","MAX_SAFE_INTEGER","_b","showClose","_c","closeOnClickSpace","onClose","onChange","value","_d","title","_e","closeText","className","_f","dataTrackId","_g","__read","useState","input","setInput","keys","i","push","text","type","getKeys","handleClose","e","useEffect","document","addEventListener","removeEventListener","keyboardcls","classNames","React","createElement","CSSTransition","in","unmountOnExit","timeout","View","onClick","map","key","index","concat","none","delete","process","env","TARO_ENV","stopImmediatePropagation","newInput","slice","length","handleKeyPress"],"mappings":"8PAiCM,IAAAA,EAA0C,SAAAC,GAE5C,IAAAC,EAYED,SAXFE,EAWEF,EAAKE,KAVPC,EAUEH,EAViCI,UAAnCA,OAAY,IAAAD,EAAAE,OAAOC,iBAAgBH,EACnCI,EASEP,EATcQ,UAAhBA,OAAY,IAAAD,KACZE,EAQET,EAAKU,kBARPA,OAAiB,IAAAD,GAAOA,EACxBE,EAOEX,EAPKW,QACPC,EAMEZ,WALFa,EAKEb,EAAKa,MAJPC,EAIEd,EAJYe,MAAdA,OAAQ,IAAAD,EAAA,SACRE,EAGEhB,EAAKiB,UAHPA,OAAS,IAAAD,EAAG,KAAIA,EAChBE,EAEElB,YADFmB,EACEnB,EAD4BoB,YAA9BA,OAAc,IAAAD,EAAA,mBAEVE,EAAAC,EAAoBC,EAASV,GAAM,GAAlCW,EAAKH,EAAA,GAAEI,OACRC,EAwCN,WAGE,IAFA,IAAMA,EAAe,GAEZC,EAAI,EAAGA,GAAK,EAAGA,IACtBD,EAAKE,KAAK,CAAEC,KAAMF,EAAGd,MAAOc,EAAGG,KAAM,WASvC,OANAJ,EAAKE,KACH,CAAEC,KAAM,GAAIhB,MAAO,GAAIiB,KAAM,QAC7B,CAAED,KAAM,EAAGhB,MAAO,EAAGiB,KAAM,UAC3B,CAAED,KAAM,GAAIhB,MAAO,GAAIiB,KAAM,WAGxBJ,CACR,CAtDYK,GAgBb,SAASC,EAAYC,GACnBtB,GAAWA,EAAQsB,GACnBhC,GAAUA,EAAOgC,EAClB,CAjBDC,GAAU,WAKR,OAJIxB,GACFyB,SAASC,iBAAiB,QAASJ,GAG9B,WACLG,SAASE,oBAAoB,QAASL,EACxC,CACD,GAAE,IAEHE,GAAU,WACRT,EAASZ,EACX,GAAG,CAACA,IAyCJ,IAAMyB,EAAcC,EAAW,qBAAsBrB,GAErD,OACEsB,EAACC,cAAAC,EAAc,CAAAH,WAAW,WAAWI,GAAIzC,EAAM0C,eAAc,EAAAC,QAAS,KACpEL,EAAAC,cAACK,EAAI,CACH5B,UAAWoB,EAEXlB,YAAaA,GAEboB,EAAAC,cAACK,EAAI,CAAC5B,UAAU,6BACdsB,EAAAC,cAACK,EAAK,CAAA5B,UAAU,mCAAmCH,GAClDP,GACCgC,EAAAC,cAACK,EAAI,CACH5B,UAAU,kCACV6B,QAASf,EAETZ,YAAa,UAAGA,EAAW,WAE1BH,IAIPuB,EAACC,cAAAK,GAAK5B,UAAU,2BACbQ,EAAKsB,KAAI,SAACC,EAAKC,GAAU,OACxBV,gBAACM,EAAI,CACHG,IAAKC,EAEL9B,YAAa,GAAA+B,OAAG/B,EAAW,SAAA+B,OAAQD,GACnChC,UAAWqB,EAAW,8BAA+B,CACnDa,KAAmB,SAAbH,EAAInB,KACVuB,OAAqB,WAAbJ,EAAInB,OAEdiB,QAAS,SAAAd,IAlErB,SAAwBA,EAAG9B,OAAE2B,EAAI3B,EAAA2B,KAAEjB,EAAKV,EAAAU,MAItC,GAH6B,OAAzByC,QAAQC,IAAIC,UACdvB,EAAEwB,2BAES,SAAT3B,EAAJ,CAEA,IAAI4B,EAAWlC,EAEF,WAATM,EACF4B,EAAWlC,EAAMmC,MAAM,EAAGnC,EAAMoC,OAAS,GAChCF,EAASE,OAASxD,IAC3BsD,EAAWlC,EAAQX,GAGrBY,EAASiC,GAET9C,GAAYA,EAAS8C,EAZO,CAa7B,CAkDaG,CAAe5B,EAAGgB,EACpB,GAECA,EAAIpB,KAbiB,MAoBpC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__rest as e,__assign as
|
|
1
|
+
import{__rest as e,__assign as a}from"../node_modules/tslib/tslib.es6.js";import o from"react";import{View as t}from"@tarojs/components";import r from"classnames";import i from"../Loading/index.js";import s from"../NavBar/index.js";var l=function(l){var m=l.children,n=l.loading,c=void 0!==n&&n,d=l.className,p=void 0===d?"":d,v=l.mask,N=void 0===v?"normal":v,E=l.tip,f=void 0===E?"加载中":E,g=l.loadingColor,h=void 0===g?"#FFF":g,u=l.customNavBar,x=void 0!==u&&u,T=l.title,O=void 0===T?"":T,R=l.PROJECT,j=e(l,["children","loading","className","mask","tip","loadingColor","customNavBar","title","PROJECT"]),k=r("xh-page",p,{flex:"h5"!==process.env.TARO_ENV&&x});return o.createElement(t,{className:k,dataTrackId:"NavBar"},"h5"!==process.env.TARO_ENV&&x&&o.createElement(s,a({title:O},j)),"frigg"===R&&o.createElement(s,a({title:O},j)),c&&o.createElement(t,{className:"loading-wrapper"},o.createElement(i,{mask:N,tip:f,color:h})),x&&"h5"!==process.env.TARO_ENV?o.createElement(t,{className:"xh-page-content"},m):m)};export{l as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Page/index.tsx"],"sourcesContent":["import React, { FC, ReactNode } from \"react\";\nimport { View } from \"@tarojs/components\";\nimport classname from \"classnames\";\nimport { XHComponentCommonProps } from \"../../types\";\nimport \"./index.scss\";\nimport Loading, { LoadingProps } from \"../Loading\";\nimport NavBar from \"../NavBar\";\n\nexport interface PageProps extends XHComponentCommonProps {\n loading?: boolean;\n mask?: LoadingProps[\"mask\"];\n tip?: ReactNode;\n loadingColor?: string;\n /**\n * @supported 小程序\n * @default false\n */\n customNavBar?: boolean;\n onBack?: () => void;\n title?: string;\n leftIcon?: boolean;\n rightIcon?: ReactNode;\n navBarBorder?: boolean;\n}\n\nconst Page: FC<PageProps> = props => {\n const {\n children,\n loading = false,\n className = \"\",\n mask = \"normal\",\n tip = \"加载中\",\n loadingColor = \"#FFF\",\n customNavBar = false,\n title = \"\",\n ...rest\n } = props;\n\n const classObj = classname(\"xh-page\", className, {\n flex: process.env.TARO_ENV !== \"h5\" && customNavBar,\n });\n\n return (\n <View
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Page/index.tsx"],"sourcesContent":["import React, { FC, ReactNode } from \"react\";\nimport { View } from \"@tarojs/components\";\nimport classname from \"classnames\";\nimport { XHComponentCommonProps } from \"../../types\";\nimport \"./index.scss\";\nimport Loading, { LoadingProps } from \"../Loading\";\nimport NavBar from \"../NavBar\";\n\nexport interface PageProps extends XHComponentCommonProps {\n loading?: boolean;\n mask?: LoadingProps[\"mask\"];\n tip?: ReactNode;\n loadingColor?: string;\n /**\n * @supported 小程序\n * @default false\n */\n customNavBar?: boolean;\n onBack?: () => void;\n title?: string;\n leftIcon?: boolean;\n rightIcon?: ReactNode;\n navBarBorder?: boolean;\n PROJECT?: string;\n}\n\nconst Page: FC<PageProps> = props => {\n const {\n children,\n loading = false,\n className = \"\",\n mask = \"normal\",\n tip = \"加载中\",\n loadingColor = \"#FFF\",\n customNavBar = false,\n title = \"\",\n PROJECT,\n ...rest\n } = props;\n\n const classObj = classname(\"xh-page\", className, {\n flex: process.env.TARO_ENV !== \"h5\" && customNavBar,\n });\n\n return (\n <View\n className={classObj}\n // @ts-ignore\n dataTrackId=\"NavBar\"\n >\n {process.env.TARO_ENV !== \"h5\" && customNavBar && (\n <NavBar title={title} {...rest} />\n )}\n {PROJECT === \"frigg\" && <NavBar title={title} {...rest} />}\n {loading && (\n <View className=\"loading-wrapper\">\n <Loading mask={mask} tip={tip} color={loadingColor} />\n </View>\n )}\n {customNavBar && process.env.TARO_ENV !== \"h5\" ? (\n <View className=\"xh-page-content\">{children}</View>\n ) : (\n children\n )}\n </View>\n );\n};\n\nexport default Page;\n"],"names":["Page","props","children","_a","loading","_b","className","_c","mask","_d","tip","_e","loadingColor","_f","customNavBar","_g","title","PROJECT","rest","__rest","classObj","classname","flex","process","env","TARO_ENV","React","createElement","View","dataTrackId","NavBar","__assign","Loading","color"],"mappings":"wOA0BM,IAAAA,EAAsB,SAAAC,GAExB,IAAAC,EAUED,EAVMC,SACRC,EASEF,EAAKG,QATPA,cAAeD,EACfE,EAQEJ,EARYK,UAAdA,OAAS,IAAAD,EAAG,GAAEA,EACdE,EAOEN,OAPFO,OAAO,IAAAD,EAAA,WACPE,EAMER,EANSS,IAAXA,OAAM,IAAAD,EAAA,MAAKA,EACXE,EAKEV,EAAKW,aALPA,aAAe,OAAMD,EACrBE,EAIEZ,EAJkBa,aAApBA,OAAe,IAAAD,KACfE,EAGEd,EAAKe,MAHPA,OAAK,IAAAD,EAAG,GAAEA,EACVE,EAEEhB,EAAKgB,QADJC,EAAIC,EACLlB,EAXE,CAAA,WAAA,UAAA,YAAA,OAAA,MAAA,eAAA,eAAA,QAAA,YAaAmB,EAAWC,EAAU,UAAWf,EAAW,CAC/CgB,KAA+B,OAAzBC,QAAQC,IAAIC,UAAqBX,IAGzC,OACEY,EAACC,cAAAC,EACC,CAAAtB,UAAWc,EAEXS,YAAY,UAEc,OAAzBN,QAAQC,IAAIC,UAAqBX,GAChCY,EAACC,cAAAG,KAAOd,MAAOA,GAAWE,IAEf,UAAZD,GAAuBS,EAACC,cAAAG,EAAOC,EAAA,CAAAf,MAAOA,GAAWE,IACjDd,GACCsB,EAAAC,cAACC,EAAK,CAAAtB,UAAU,mBACdoB,EAAAC,cAACK,EAAO,CAACxB,KAAMA,EAAME,IAAKA,EAAKuB,MAAOrB,KAGzCE,GAAyC,OAAzBS,QAAQC,IAAIC,SAC3BC,gBAACE,EAAI,CAACtB,UAAU,mBAAmBJ,GAEnC,EAIR"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__read as e}from"../node_modules/tslib/tslib.es6.js";import a,{useState as o,useEffect as i}from"react";import t from"classnames";import{eventCenter as r}from"@tarojs/taro";import{View as n}from"@tarojs/components";import s from"../src/hooks/useGenerateId.js";import{pxTransform as
|
|
1
|
+
import{__read as e}from"../node_modules/tslib/tslib.es6.js";import a,{useState as o,useEffect as i}from"react";import t from"classnames";import{eventCenter as r}from"@tarojs/taro";import{View as n}from"@tarojs/components";import s from"../src/hooks/useGenerateId.js";import{pxTransform as c}from"../src/utils/index.js";import l from"./Group/index.js";import d from"../Icon/index.js";var m=function(l){var m=l.className,u=l.name,h=l.label,p=l.id,f=l.circle,v=void 0===f||f,x=l.onChange,N=l.align,E=l.direction,g=l.justify,k=l.checked,y=l.disabled,b=l.value,j=l.style,C=l.size,F=void 0===C?0:C,T=l.fancy,_=void 0!==T&&T,A=l.index,O=void 0===A?0:A,R=l.group,V=void 0!==R&&R,z=l.iconColor,G=void 0===z?"#FFFFFF":z,I=l.dataTrackId,w=s(p,"xh-radio-id"),q=e(o(k),2),B=q[0],D=q[1],H=function(e){"h5"!==process.env.TARO_ENV&&e!==O&&D(!1)};i((function(){return"h5"!==process.env.TARO_ENV&&r.on("radioChange",H),function(){r.off("radioChange",H)}}),[]);var J=t("xh-radio",m,N,E,g);return"h5"!==process.env.TARO_ENV?a.createElement(n,{onClick:function(){B&&V||(D(!B),null==x||x(!B,b||""))},className:J,style:j},a.createElement(n,{className:t("xh-radio-input",{checked:B})}),a.createElement("span",{style:F>0?{width:c(F),height:c(F)}:{},className:t("xh-radio-input-fake",v&&"circle",{fancy:_})},a.createElement(d,{icon:"duigou",className:"xh-radio-input-fake-icon",color:G,size:F?.55*F:18})),a.createElement("span",{className:"xh-radio-label"},h)):a.createElement("label",{htmlFor:w,className:J,style:j},a.createElement("input",{type:"radio",id:w,name:u,className:"xh-radio-input",onChange:function(e){var a=k||!1,o="";"h5"===process.env.TARO_ENV?(a=e.target.checked,o=e.target.value):(a=e.detail.value,o=e.detail.value),null==x||x(a,o)},value:b,disabled:y,defaultChecked:k,"data-track-id":I}),a.createElement("span",{style:F>0?{width:c(F),height:c(F)}:{},className:t("xh-radio-input-fake",{circle:v,fancy:_})},a.createElement(d,{icon:"duigou",className:"xh-radio-input-fake-icon",color:G,size:F?.55*F:18})),a.createElement("span",{className:"xh-radio-label"},h))};m.Group=l;export{m as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Radio/index.tsx"],"sourcesContent":["import React, { FC, ReactNode, useState, useEffect } from \"react\";\nimport classNames from \"classnames\";\nimport { eventCenter } from \"@tarojs/taro\";\nimport { View } from \"@tarojs/components\";\nimport useGenerateId from \"@/hooks/useGenerateId\";\nimport { pxTransform } from \"@/utils\";\n\nimport Group from \"./Group\";\nimport type { XHComponentCommonProps } from \"../../types\";\nimport Icon from \"../Icon\";\n\nimport \"./index.scss\";\n\ntype CompoundedComponent = React.ForwardRefExoticComponent<\n XHRadioProps & React.RefAttributes<HTMLInputElement>\n> & {\n Group: typeof Group;\n};\n\nexport type XHRadioProps = {\n onChange?: (check: boolean, value: string | number) => void;\n checked?: boolean;\n name?: string;\n label: string | ReactNode;\n size?: number;\n circle?: boolean;\n align?: \"center\" | \"end\";\n direction?: \"rtl\";\n justify?: \"around\" | \"between\";\n value?: string | number;\n id?: string;\n disabled?: boolean;\n style?: React.CSSProperties;\n fancy?: boolean;\n index?: number;\n /**\n * 抖音不支持属性选择器\n * @description 主要为抖音支持颜色\n */\n color?: string;\n group?: boolean;\n /**\n * 选中状态下打勾icon的颜色\n */\n iconColor?: string;\n} & XHComponentCommonProps;\n\nconst XHRadio: FC<XHRadioProps> = props => {\n const {\n className,\n name,\n label,\n id,\n circle = true,\n onChange,\n align,\n direction,\n justify,\n checked,\n disabled,\n value,\n style,\n size = 0,\n fancy = false,\n index = 0,\n group = false,\n iconColor = \"#FFFFFF\",\n } = props;\n\n const finalId = useGenerateId(id, \"xh-radio-id\");\n\n const [innerChecked, setInnerChecked] = useState(checked);\n\n const resetChecked = idx => {\n if (process.env.TARO_ENV !== \"h5\" && idx !== index) {\n setInnerChecked(false);\n }\n };\n\n useEffect(() => {\n if (process.env.TARO_ENV !== \"h5\") {\n eventCenter.on(\"radioChange\", resetChecked);\n }\n\n return () => {\n eventCenter.off(\"radioChange\", resetChecked);\n };\n }, []);\n\n const handleOnchange = e => {\n let finalchecked = checked || false;\n let value = \"\";\n\n if (process.env.TARO_ENV === \"h5\") {\n finalchecked = e.target.checked;\n value = e.target.value;\n } else {\n finalchecked = e.detail.value;\n\n value = e.detail.value;\n }\n\n onChange?.(finalchecked, value);\n };\n\n const handleFakeChange = () => {\n if (innerChecked && group) return;\n setInnerChecked(!innerChecked);\n onChange?.(!innerChecked, value || \"\");\n };\n\n const cls = classNames(\"xh-radio\", className, align, direction, justify);\n if (process.env.TARO_ENV !== \"h5\") {\n return (\n <View onClick={handleFakeChange} className={cls} style={style}>\n <View\n className={classNames(\"xh-radio-input\", {\n checked: innerChecked,\n })}\n />\n <span\n style={\n size > 0\n ? {\n width: pxTransform(size),\n height: pxTransform(size),\n }\n : {}\n }\n className={classNames(\"xh-radio-input-fake\", circle && \"circle\", {\n fancy,\n })}\n >\n <Icon\n icon=\"duigou\"\n className=\"xh-radio-input-fake-icon\"\n color={iconColor}\n size={size ? size * 0.55 : 18}\n />\n </span>\n <span className=\"xh-radio-label\">{label}</span>\n </View>\n );\n }\n\n return (\n <label htmlFor={finalId} className={cls} style={style}>\n <input\n type=\"radio\"\n id={finalId}\n name={name}\n className=\"xh-radio-input\"\n onChange={handleOnchange}\n value={value}\n disabled={disabled}\n defaultChecked={checked}\n />\n <span\n style={\n size > 0\n ? {\n width: pxTransform(size),\n height: pxTransform(size),\n }\n : {}\n }\n className={classNames(\"xh-radio-input-fake\", { circle, fancy })}\n >\n <Icon\n icon=\"duigou\"\n className=\"xh-radio-input-fake-icon\"\n color={iconColor}\n size={size ? size * 0.55 : 18}\n />\n </span>\n <span className=\"xh-radio-label\">{label}</span>\n </label>\n );\n};\n\nconst Radio = XHRadio as CompoundedComponent;\nRadio.Group = Group;\n\nexport default Radio;\n"],"names":["Radio","props","className","name","label","id","_a","circle","onChange","align","direction","justify","checked","disabled","value","style","_b","size","_c","fancy","_d","index","_e","group","_f","iconColor","finalId","useGenerateId","_g","__read","useState","innerChecked","setInnerChecked","resetChecked","idx","process","env","TARO_ENV","useEffect","eventCenter","on","off","cls","classNames","React","createElement","View","onClick","width","pxTransform","height","Icon","icon","color","htmlFor","type","e","finalchecked","target","detail","defaultChecked","Group"],"mappings":"+
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Radio/index.tsx"],"sourcesContent":["import React, { FC, ReactNode, useState, useEffect } from \"react\";\nimport classNames from \"classnames\";\nimport { eventCenter } from \"@tarojs/taro\";\nimport { View } from \"@tarojs/components\";\nimport useGenerateId from \"@/hooks/useGenerateId\";\nimport { pxTransform } from \"@/utils\";\n\nimport Group from \"./Group\";\nimport type { XHComponentCommonProps } from \"../../types\";\nimport Icon from \"../Icon\";\n\nimport \"./index.scss\";\n\ntype CompoundedComponent = React.ForwardRefExoticComponent<\n XHRadioProps & React.RefAttributes<HTMLInputElement>\n> & {\n Group: typeof Group;\n};\n\nexport type XHRadioProps = {\n onChange?: (check: boolean, value: string | number) => void;\n checked?: boolean;\n name?: string;\n label: string | ReactNode;\n size?: number;\n circle?: boolean;\n align?: \"center\" | \"end\";\n direction?: \"rtl\";\n justify?: \"around\" | \"between\";\n value?: string | number;\n id?: string;\n disabled?: boolean;\n style?: React.CSSProperties;\n fancy?: boolean;\n index?: number;\n /**\n * 抖音不支持属性选择器\n * @description 主要为抖音支持颜色\n */\n color?: string;\n group?: boolean;\n /**\n * 选中状态下打勾icon的颜色\n */\n iconColor?: string;\n dataTrackId?: string;\n} & XHComponentCommonProps;\n\nconst XHRadio: FC<XHRadioProps> = props => {\n const {\n className,\n name,\n label,\n id,\n circle = true,\n onChange,\n align,\n direction,\n justify,\n checked,\n disabled,\n value,\n style,\n size = 0,\n fancy = false,\n index = 0,\n group = false,\n iconColor = \"#FFFFFF\",\n dataTrackId,\n } = props;\n\n const finalId = useGenerateId(id, \"xh-radio-id\");\n\n const [innerChecked, setInnerChecked] = useState(checked);\n\n const resetChecked = idx => {\n if (process.env.TARO_ENV !== \"h5\" && idx !== index) {\n setInnerChecked(false);\n }\n };\n\n useEffect(() => {\n if (process.env.TARO_ENV !== \"h5\") {\n eventCenter.on(\"radioChange\", resetChecked);\n }\n\n return () => {\n eventCenter.off(\"radioChange\", resetChecked);\n };\n }, []);\n\n const handleOnchange = e => {\n let finalchecked = checked || false;\n let value = \"\";\n\n if (process.env.TARO_ENV === \"h5\") {\n finalchecked = e.target.checked;\n value = e.target.value;\n } else {\n finalchecked = e.detail.value;\n\n value = e.detail.value;\n }\n\n onChange?.(finalchecked, value);\n };\n\n const handleFakeChange = () => {\n if (innerChecked && group) return;\n setInnerChecked(!innerChecked);\n onChange?.(!innerChecked, value || \"\");\n };\n\n const cls = classNames(\"xh-radio\", className, align, direction, justify);\n if (process.env.TARO_ENV !== \"h5\") {\n return (\n <View onClick={handleFakeChange} className={cls} style={style}>\n <View\n className={classNames(\"xh-radio-input\", {\n checked: innerChecked,\n })}\n />\n <span\n style={\n size > 0\n ? {\n width: pxTransform(size),\n height: pxTransform(size),\n }\n : {}\n }\n className={classNames(\"xh-radio-input-fake\", circle && \"circle\", {\n fancy,\n })}\n >\n <Icon\n icon=\"duigou\"\n className=\"xh-radio-input-fake-icon\"\n color={iconColor}\n size={size ? size * 0.55 : 18}\n />\n </span>\n <span className=\"xh-radio-label\">{label}</span>\n </View>\n );\n }\n\n return (\n <label htmlFor={finalId} className={cls} style={style}>\n <input\n type=\"radio\"\n id={finalId}\n name={name}\n className=\"xh-radio-input\"\n onChange={handleOnchange}\n value={value}\n disabled={disabled}\n defaultChecked={checked}\n data-track-id={dataTrackId}\n />\n <span\n style={\n size > 0\n ? {\n width: pxTransform(size),\n height: pxTransform(size),\n }\n : {}\n }\n className={classNames(\"xh-radio-input-fake\", { circle, fancy })}\n >\n <Icon\n icon=\"duigou\"\n className=\"xh-radio-input-fake-icon\"\n color={iconColor}\n size={size ? size * 0.55 : 18}\n />\n </span>\n <span className=\"xh-radio-label\">{label}</span>\n </label>\n );\n};\n\nconst Radio = XHRadio as CompoundedComponent;\nRadio.Group = Group;\n\nexport default Radio;\n"],"names":["Radio","props","className","name","label","id","_a","circle","onChange","align","direction","justify","checked","disabled","value","style","_b","size","_c","fancy","_d","index","_e","group","_f","iconColor","dataTrackId","finalId","useGenerateId","_g","__read","useState","innerChecked","setInnerChecked","resetChecked","idx","process","env","TARO_ENV","useEffect","eventCenter","on","off","cls","classNames","React","createElement","View","onClick","width","pxTransform","height","Icon","icon","color","htmlFor","type","e","finalchecked","target","detail","defaultChecked","Group"],"mappings":"+XAgDA,IAuIMA,EAvI4B,SAAAC,GAE9B,IAAAC,EAmBED,EAnBOC,UACTC,EAkBEF,EAAKE,KAjBPC,EAiBEH,QAhBFI,EAgBEJ,EAhBAI,GACFC,EAeEL,EAfWM,OAAbA,OAAM,IAAAD,GAAOA,EACbE,EAcEP,EAAKO,SAbPC,EAaER,EAbGQ,MACLC,EAYET,EAAKS,UAXPC,EAWEV,EAXKU,QACPC,EAUEX,EAAKW,QATPC,EASEZ,EATMY,SACRC,EAQEb,EARGa,MACLC,EAOEd,EAAKc,MANPC,EAMEf,EAAKgB,KANPA,aAAO,EAACD,EACRE,EAKEjB,EAAKkB,MALPA,OAAQ,IAAAD,GAAKA,EACbE,EAIEnB,QAJFoB,OAAQ,IAAAD,EAAA,EAACA,EACTE,EAGErB,EAHWsB,MAAbA,OAAK,IAAAD,GAAQA,EACbE,EAEEvB,EAAKwB,UAFPA,OAAY,IAAAD,EAAA,UAASA,EACrBE,EACEzB,EAAKyB,YAEHC,EAAUC,EAAcvB,EAAI,eAE5BwB,EAAAC,EAAkCC,EAASnB,GAAQ,GAAlDoB,EAAYH,EAAA,GAAEI,OAEfC,EAAe,SAAAC,GACU,OAAzBC,QAAQC,IAAIC,UAAqBH,IAAQd,GAC3CY,GAAgB,EAEpB,EAEAM,GAAU,WAKR,MAJ6B,OAAzBH,QAAQC,IAAIC,UACdE,EAAYC,GAAG,cAAeP,GAGzB,WACLM,EAAYE,IAAI,cAAeR,EACjC,CACD,GAAE,IAEH,IAsBMS,EAAMC,EAAW,WAAY1C,EAAWO,EAAOC,EAAWC,GAChE,MAA6B,OAAzByB,QAAQC,IAAIC,SAEZO,EAAAC,cAACC,EAAI,CAACC,QATe,WACnBhB,GAAgBT,IACpBU,GAAiBD,GACjBxB,SAAAA,GAAYwB,EAAclB,GAAS,IACrC,EAKqCZ,UAAWyC,EAAK5B,MAAOA,GACtD8B,EAAAC,cAACC,EACC,CAAA7C,UAAW0C,EAAW,iBAAkB,CACtChC,QAASoB,MAGba,EAAAC,cAAA,OAAA,CACE/B,MACEE,EAAO,EACH,CACEgC,MAAOC,EAAYjC,GACnBkC,OAAQD,EAAYjC,IAEtB,CAAA,EAENf,UAAW0C,EAAW,sBAAuBrC,GAAU,SAAU,CAC/DY,MAAKA,KAGP0B,EAAAC,cAACM,EAAI,CACHC,KAAK,SACLnD,UAAU,2BACVoD,MAAO7B,EACPR,KAAMA,EAAc,IAAPA,EAAc,MAG/B4B,EAAMC,cAAA,OAAA,CAAA5C,UAAU,kBAAkBE,IAMtCyC,EAAAC,cAAA,QAAA,CAAOS,QAAS5B,EAASzB,UAAWyC,EAAK5B,MAAOA,GAC9C8B,EAAAC,cAAA,QAAA,CACEU,KAAK,QACLnD,GAAIsB,EACJxB,KAAMA,EACND,UAAU,iBACVM,SA/DiB,SAAAiD,GACrB,IAAIC,EAAe9C,IAAW,EAC1BE,EAAQ,GAEiB,OAAzBsB,QAAQC,IAAIC,UACdoB,EAAeD,EAAEE,OAAO/C,QACxBE,EAAQ2C,EAAEE,OAAO7C,QAEjB4C,EAAeD,EAAEG,OAAO9C,MAExBA,EAAQ2C,EAAEG,OAAO9C,OAGnBN,SAAAA,EAAWkD,EAAc5C,EAC3B,EAkDMA,MAAOA,EACPD,SAAUA,EACVgD,eAAgBjD,EAAO,gBACRc,IAEjBmB,EAAAC,cAAA,OAAA,CACE/B,MACEE,EAAO,EACH,CACEgC,MAAOC,EAAYjC,GACnBkC,OAAQD,EAAYjC,IAEtB,GAENf,UAAW0C,EAAW,sBAAuB,CAAErC,OAAMA,EAAEY,MAAKA,KAE5D0B,EAAAC,cAACM,EAAI,CACHC,KAAK,SACLnD,UAAU,2BACVoD,MAAO7B,EACPR,KAAMA,EAAc,IAAPA,EAAc,MAG/B4B,EAAMC,cAAA,OAAA,CAAA5C,UAAU,kBAAkBE,GAGxC,EAGAJ,EAAM8D,MAAQA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"react";import t from"classnames";import{View as a}from"@tarojs/components";import c from"./Steps/index.js";var s=function(c){var s=c.title,n=c.description,
|
|
1
|
+
import e from"react";import t from"classnames";import{View as a}from"@tarojs/components";import c from"./Steps/index.js";var s=function(c){var s=c.title,n=c.description,r=c.icon,o=c.status,i=void 0===o?"wait":o,m=c.fancy,l=c.style,p=c.className,d=c.direction,x=c.prefix,f=c.dashed,h=c.dataTrackId;return e.createElement(a,{className:t("".concat("xh-step"),"".concat("xh-step","-status-").concat(i),p),"data-track-id":h,style:l},"vertical"===d&&x&&e.createElement(a,{className:"".concat("xh-step","-prefix")},x),e.createElement(a,{className:t("".concat("xh-step","-indicator"),{dashed:f})},e.createElement(a,{className:t("".concat("xh-step","-icon-container"),{fancy:m})},r)),e.createElement(a,{className:"".concat("xh-step","-content")},e.createElement(a,{className:"".concat("xh-step","-title")},s),!!n&&e.createElement(a,{className:"".concat("xh-step","-description")},n)))};s.Steps=c;export{s as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Step/index.tsx"],"sourcesContent":["import React, { ReactNode, ForwardRefExoticComponent } from \"react\";\nimport classNames from \"classnames\";\nimport { View } from \"@tarojs/components\";\nimport type { XHComponentCommonProps } from \"../../types\";\n\nimport Steps from \"./Steps\";\nimport \"./index.scss\";\n\nexport type StepProps = {\n icon?: string | ReactNode;\n title: string | ReactNode;\n description?: string | ReactNode;\n direction?: \"horizontal\" | \"vertical\";\n status?: \"wait\" | \"process\" | \"finish\" | \"error\";\n fancy?: boolean;\n dashed?: boolean;\n style?: React.CSSProperties;\n prefix?: ReactNode;\n} & XHComponentCommonProps;\n\nconst classPrefix = \"xh-step\";\n\nconst Step: React.FC<StepProps> = props => {\n const {\n title,\n description,\n icon,\n status = \"wait\",\n fancy,\n style,\n className,\n direction,\n prefix,\n dashed,\n } = props;\n\n return (\n <View\n className={classNames(\n `${classPrefix}`,\n `${classPrefix}-status-${status}`,\n className\n )}\n style={style}\n >\n {direction === \"vertical\" && prefix && (\n <View className={`${classPrefix}-prefix`}>{prefix}</View>\n )}\n <View className={classNames(`${classPrefix}-indicator`, { dashed })}>\n <View\n className={classNames(`${classPrefix}-icon-container`, { fancy })}\n >\n {icon}\n </View>\n </View>\n <View className={`${classPrefix}-content`}>\n <View className={`${classPrefix}-title`}>{title}</View>\n {!!description && (\n <View className={`${classPrefix}-description`}>{description}</View>\n )}\n </View>\n </View>\n );\n};\n\nexport type HybridComponent = ForwardRefExoticComponent<StepProps> & {\n Steps: typeof Steps;\n};\n\nconst XHStep = Step as HybridComponent;\nXHStep.Steps = Steps;\n\nexport default XHStep;\n"],"names":["XHStep","props","title","description","icon","_a","status","fancy","style","className","direction","prefix","dashed","React","View","classNames","concat","
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Step/index.tsx"],"sourcesContent":["import React, { ReactNode, ForwardRefExoticComponent } from \"react\";\nimport classNames from \"classnames\";\nimport { View } from \"@tarojs/components\";\nimport type { XHComponentCommonProps } from \"../../types\";\n\nimport Steps from \"./Steps\";\nimport \"./index.scss\";\n\nexport type StepProps = {\n icon?: string | ReactNode;\n title: string | ReactNode;\n description?: string | ReactNode;\n direction?: \"horizontal\" | \"vertical\";\n status?: \"wait\" | \"process\" | \"finish\" | \"error\";\n fancy?: boolean;\n dashed?: boolean;\n style?: React.CSSProperties;\n prefix?: ReactNode;\n dataTrackId?: string;\n} & XHComponentCommonProps;\n\nconst classPrefix = \"xh-step\";\n\nconst Step: React.FC<StepProps> = props => {\n const {\n title,\n description,\n icon,\n status = \"wait\",\n fancy,\n style,\n className,\n direction,\n prefix,\n dashed,\n dataTrackId,\n } = props;\n\n return (\n <View\n className={classNames(\n `${classPrefix}`,\n `${classPrefix}-status-${status}`,\n className\n )}\n data-track-id={dataTrackId}\n style={style}\n >\n {direction === \"vertical\" && prefix && (\n <View className={`${classPrefix}-prefix`}>{prefix}</View>\n )}\n <View className={classNames(`${classPrefix}-indicator`, { dashed })}>\n <View\n className={classNames(`${classPrefix}-icon-container`, { fancy })}\n >\n {icon}\n </View>\n </View>\n <View className={`${classPrefix}-content`}>\n <View className={`${classPrefix}-title`}>{title}</View>\n {!!description && (\n <View className={`${classPrefix}-description`}>{description}</View>\n )}\n </View>\n </View>\n );\n};\n\nexport type HybridComponent = ForwardRefExoticComponent<StepProps> & {\n Steps: typeof Steps;\n};\n\nconst XHStep = Step as HybridComponent;\nXHStep.Steps = Steps;\n\nexport default XHStep;\n"],"names":["XHStep","props","title","description","icon","_a","status","fancy","style","className","direction","prefix","dashed","dataTrackId","React","createElement","View","classNames","concat","Steps"],"mappings":"yHAqBA,IAmDMA,EAjD4B,SAAAC,GAE9B,IAAAC,EAWED,EAXGC,MACLC,EAUEF,EAAKE,YATPC,EASEH,EATEG,KACJC,EAQEJ,EARaK,OAAfA,OAAM,IAAAD,EAAG,OAAMA,EACfE,EAOEN,EAPGM,MACLC,EAMEP,EANGO,MACLC,EAKER,EAAKQ,UAJPC,EAIET,EAJOS,UACTC,EAGEV,EAAKU,OAFPC,EAEEX,EAFIW,OACNC,EACEZ,EAAKY,YAET,OACEC,EAACC,cAAAC,EACC,CAAAP,UAAWQ,EACT,GAAGC,OApBS,WAqBZ,UArBY,UAqBE,YAAAA,OAAWZ,GACzBG,GACD,gBACcI,EACfL,MAAOA,GAEQ,aAAdE,GAA4BC,GAC3BG,EAACC,cAAAC,EAAK,CAAAP,UAAW,GAAGS,OA5BR,sBA4B+BP,GAE7CG,EAAAC,cAACC,EAAI,CAACP,UAAWQ,EAAW,GAAAC,OA9Bd,UA8B4B,cAAc,CAAEN,OAAMA,KAC9DE,EAAAC,cAACC,EACC,CAAAP,UAAWQ,EAAW,UAhCZ,UAgC0B,mBAAmB,CAAEV,MAAKA,KAE7DH,IAGLU,EAAAC,cAACC,EAAK,CAAAP,UAAW,GAAAS,OArCH,UAqC2B,aACvCJ,EAACC,cAAAC,GAAKP,UAAW,UAtCL,UAsCmB,WAAWP,KACvCC,GACDW,EAACC,cAAAC,GAAKP,UAAW,UAxCP,UAwCqB,iBAAiBN,IAK1D,EAOAH,EAAOmB,MAAQA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"react";var
|
|
1
|
+
import{__rest as t,__assign as e}from"../../node_modules/tslib/tslib.es6.js";import a from"react";var r=function(r){var i=r.children,m=r.title,o=r.TabItemComponent,n=t(r,["children","title","TabItemComponent"]);return a.createElement("div",e({className:"xh-tabbar-item","data-track-id":r.dataTrackId},n),o||m,i)};export{r as default};
|
|
2
2
|
//# sourceMappingURL=TabItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabItem.js","sources":["../../../../src/components/Tabbar/tabbar/TabItem.tsx"],"sourcesContent":["import React, { PropsWithChildren, ReactNode } from \"react\";\n\nexport interface TabItemProps extends PropsWithChildren<{}> {\n title?: string;\n TabItemComponent?: ReactNode;\n children?: ReactNode;\n}\n\nconst TabItem = (props: TabItemProps) => {\n const { children, title, TabItemComponent } = props;\n
|
|
1
|
+
{"version":3,"file":"TabItem.js","sources":["../../../../src/components/Tabbar/tabbar/TabItem.tsx"],"sourcesContent":["import React, { PropsWithChildren, ReactNode } from \"react\";\n\nexport interface TabItemProps extends PropsWithChildren<{}> {\n title?: string;\n TabItemComponent?: ReactNode;\n children?: ReactNode;\n dataTrackId?: string;\n}\n\nconst TabItem = (props: TabItemProps) => {\n const { children, title, TabItemComponent, ...rest } = props;\n return (\n <div className=\"xh-tabbar-item\" data-track-id={props.dataTrackId} {...rest}>\n {TabItemComponent ? TabItemComponent : title}\n {children}\n </div>\n );\n};\n\nexport default TabItem;\n"],"names":["TabItem","props","children","title","TabItemComponent","rest","React","createElement","__assign","className","dataTrackId"],"mappings":"kGASM,IAAAA,EAAU,SAACC,GACP,IAAAC,EAA+CD,EAAKC,SAA1CC,EAAqCF,EAAhCE,MAAEC,EAA8BH,mBAATI,IAASJ,EAAjD,CAA8C,WAAA,QAAA,qBACpD,OACEK,EAAKC,cAAA,MAAAC,EAAA,CAAAC,UAAU,iCAAgCR,EAAMS,aAAiBL,GACnED,GAAsCD,EACtCD,EAGP"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__read as t}from"../../node_modules/tslib/tslib.es6.js";import e,{useState as n,useRef as a,useEffect as r}from"react";import{createSelectorQuery as o}from"@tarojs/taro";import{View as
|
|
1
|
+
import{__read as t}from"../../node_modules/tslib/tslib.es6.js";import e,{useState as n,useRef as a,useEffect as r}from"react";import{createSelectorQuery as o}from"@tarojs/taro";import{View as c}from"@tarojs/components";import i from"classnames";import l from"./TabItem.js";var s=function(l){var s=l.children,m=void 0===s?[]:s,b=l.animated,h=void 0!==b&&b,u=l.lineColor,d=void 0===u?"#F6AB00":u,f=l.titleActiveColor,v=void 0===f?"#333":f,p=l.titleInctiveColor,x=void 0===p?"#999":p,g=l.onChange,C=l.content,T=l.selectIndex,R=void 0===T?0:T,A=t(n(0),2),E=A[0],I=A[1],N=t(n(0),2),k=N[0],y=N[1],j=t(n(0),2),B=j[0],w=j[1],X=a([]),_=a([]),F=a([]);r((function(){var t=setTimeout((function(){if("h5"!==process.env.TARO_ENV){var e=o();e.selectAll(".xh-tabbar-nav-item").boundingClientRect(),e.selectAll(".xh-tabbar-content-item").boundingClientRect(),e.selectAll(".xh-tabbar-content-slot").boundingClientRect(),e.exec((function(e){if(e[0][R]){var n=e[0][R].width;I(n),e[1][R]&&(y(e[1][R].height),e[2][R]&&(w(e[2][R].height),clearTimeout(t)))}}))}else{var n=X.current[R];if(n){var a=n.getBoundingClientRect();I(a.width)}var r=F.current[0];if(r){a=r.getBoundingClientRect();w(a.height)}var c=_.current[R];if(c){a=c.getBoundingClientRect();y(a.height)}clearTimeout(t)}}),300)}),[R,m]);var O;return e.createElement(c,{className:"xh-tabbar"},e.createElement(c,{className:"xh-tabbar-nav"},m.map((function(t,n){return e.createElement(c,{key:n,dataTrackId:t.props.dataTrackId||"xh-tabbar-nav-item-".concat(n),ref:function(t){return X.current[n]=t},className:"xh-tabbar-nav-item",style:{color:R===n?v:x},onClick:function(){return function(t){var e=o();e.selectAll(".xh-tabbar-content-item").boundingClientRect(),e.selectAll(".xh-tabbar-content-slot").boundingClientRect(),e.exec((function(e){if(e[0][t]){var n=e[0][t].height;y(n),e[1][t]&&w(e[1][t].height)}})),g&&g(t)}(n)}},t.props.TabItemComponent?t.props.TabItemComponent:t.props.title)})),(O=E/2+R*E,e.createElement("div",{className:i("xh-tabbar-nav-line",{"xh-tabbar-nav-line-active":h}),style:{background:"".concat(d),transform:"translateX(".concat(O,"px) translate(-50%, -50%)"),WebkitTransform:"translateX(".concat(O,"px) translate(-50%, -50%)")}}))),e.createElement(c,{className:"xh-tabbar-content",style:{width:"".concat(100*m.length,"%"),height:k+B?"".concat(k+B,"px"):"auto"}},C&&e.createElement(c,{className:"xh-tabbar-content-slot",ref:F},C),m.map((function(t,n){return e.createElement(c,{key:n,ref:function(t){return _.current[n]=t},className:i("xh-tabbar-content-item",{"xh-tabbar-content-item-dispaly":R!==n&&!h,"xh-tabbar-content-item-active":R===n}),style:{transform:h?"translateX(-".concat(100*R,"%)"):""}},t.props.children)}))))};s.Item=l;export{s as default};
|
|
2
2
|
//# sourceMappingURL=Tabbar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabbar.js","sources":["../../../../src/components/Tabbar/tabbar/Tabbar.tsx"],"sourcesContent":["import React, {\n FC,\n ReactElement,\n useEffect,\n useState,\n ReactNode,\n useRef,\n} from \"react\";\nimport { createSelectorQuery } from \"@tarojs/taro\";\nimport { View } from \"@tarojs/components\";\nimport classNames from \"classnames\";\nimport Item from \"./TabItem\";\n\n/**\n * Tab切换\n *\n * @param children //子组件\n * @param animated //是否开启转场动画\n * @param selectIndex //默认选中第几个\n * @param lineColor //下划线颜色\n * @param titleActiveColor //标题选中态颜色\n * @param titleInctiveColor //标题默认态颜色\n * @param onChange //切换回调事件\n * @param content //item公共节点\n *\n */\n\nexport interface TabProps {\n children: ReactElement[];\n animated?: boolean;\n // initIndex?: number;\n lineColor?: string;\n titleActiveColor?: string;\n titleInctiveColor?: string;\n onChange?: (index: number) => void;\n content?: string | ReactNode;\n selectIndex: number;\n}\n\nexport interface TabsComponent<P = {}> extends FC<P> {\n Item: typeof Item;\n}\n\nconst XHTabs: TabsComponent<TabProps> = props => {\n const {\n children = [],\n animated = false,\n // initIndex = 0,\n lineColor = \"#F6AB00\",\n titleActiveColor = \"#333\",\n titleInctiveColor = \"#999\",\n onChange,\n content,\n selectIndex = 0,\n } = props;\n\n // const [selectIndex, setSelectIndex] = useState(initIndex);\n const [tabWdith, setTabWdith] = useState(0);\n const [tabContentHeight, setTabContentHeight] = useState(0);\n const [tabSlotHeight, setTabSlotHeight] = useState(0);\n\n const itemNavRef = useRef<(HTMLLIElement | null)[]>([]);\n const itemContentRef = useRef<(HTMLDivElement | null)[]>([]);\n const itemSlotRef = useRef<(HTMLDivElement | null)[]>([]);\n\n useEffect(() => {\n const timer = setTimeout(() => {\n if (process.env.TARO_ENV === \"h5\") {\n const el = itemNavRef.current[selectIndex];\n if (el) {\n const rect = el.getBoundingClientRect();\n console.log(\"el\", rect);\n setTabWdith(rect.width);\n }\n const elSlot = itemSlotRef.current[0];\n if (elSlot) {\n const rect = elSlot.getBoundingClientRect();\n console.log(\"elSlot\", rect);\n setTabSlotHeight(rect.height);\n }\n\n const elitem = itemContentRef.current[selectIndex];\n if (elitem) {\n const rect = elitem.getBoundingClientRect();\n console.log(\"elitem\", rect);\n setTabContentHeight(rect.height);\n }\n clearTimeout(timer);\n return;\n }\n\n const query = createSelectorQuery();\n query.selectAll(\".xh-tabbar-nav-item\").boundingClientRect();\n query.selectAll(\".xh-tabbar-content-item\").boundingClientRect();\n query.selectAll(\".xh-tabbar-content-slot\").boundingClientRect();\n\n query.exec(res => {\n if (!res[0][selectIndex]) return;\n const width: number = res[0][selectIndex].width;\n setTabWdith(width);\n\n if (!res[1][selectIndex]) return;\n setTabContentHeight(res[1][selectIndex].height);\n\n if (!res[2][selectIndex]) return;\n setTabSlotHeight(res[2][selectIndex].height);\n clearTimeout(timer);\n });\n }, 300);\n console.log(children.length);\n }, [selectIndex, children]);\n\n const handleClick = (index: number): void => {\n // setSelectIndex(index);\n const query = createSelectorQuery();\n query.selectAll(\".xh-tabbar-content-item\").boundingClientRect();\n query.selectAll(\".xh-tabbar-content-slot\").boundingClientRect();\n query.exec(res => {\n if (!res[0][index]) return;\n const height: number = res[0][index].height;\n setTabContentHeight(height);\n if (!res[1][index]) return;\n setTabSlotHeight(res[1][index].height);\n });\n\n onChange && onChange(index);\n };\n\n function renderLine(): ReactElement | null {\n const left: number = tabWdith / 2 + selectIndex * tabWdith;\n return (\n <div\n className={classNames(\"xh-tabbar-nav-line\", {\n \"xh-tabbar-nav-line-active\": animated,\n })}\n style={{\n background: `${lineColor}`,\n transform: `translateX(${left}px) translate(-50%, -50%)`,\n WebkitTransform: `translateX(${left}px) translate(-50%, -50%)`,\n }}\n />\n );\n }\n\n return (\n <View className=\"xh-tabbar\">\n <View className=\"xh-tabbar-nav\">\n {children.map((child, index) => (\n <View\n key={index}\n ref={el => (itemNavRef.current[index] = el)}\n className=\"xh-tabbar-nav-item\"\n style={{\n color:\n selectIndex === index ? titleActiveColor : titleInctiveColor,\n }}\n onClick={() => handleClick(index)}\n >\n {child.props.TabItemComponent\n ? child.props.TabItemComponent\n : child.props.title}\n </View>\n ))}\n {renderLine()}\n </View>\n <View\n className=\"xh-tabbar-content\"\n style={{\n width: `${children.length * 100}%`,\n height:\n tabContentHeight + tabSlotHeight\n ? `${tabContentHeight + tabSlotHeight}px`\n : \"auto\",\n }}\n >\n {content && (\n <View className=\"xh-tabbar-content-slot\" ref={itemSlotRef}>\n {content}\n </View>\n )}\n {children.map((child, index) => (\n <View\n key={index}\n ref={el => (itemContentRef.current[index] = el)}\n className={classNames(\"xh-tabbar-content-item\", {\n \"xh-tabbar-content-item-dispaly\":\n selectIndex !== index && !animated,\n \"xh-tabbar-content-item-active\": selectIndex === index,\n })}\n style={{\n transform: animated ? `translateX(-${selectIndex * 100}%)` : \"\",\n }}\n >\n {child.props.children}\n </View>\n ))}\n </View>\n </View>\n );\n};\n\nXHTabs.Item = Item;\n\nexport default XHTabs;\nexport const TabItem = Item;\n"],"names":["XHTabs","props","_a","children","_b","animated","_c","lineColor","_d","titleActiveColor","_e","titleInctiveColor","onChange","content","_f","selectIndex","_g","__read","useState","tabWdith","setTabWdith","_h","tabContentHeight","setTabContentHeight","_j","tabSlotHeight","setTabSlotHeight","itemNavRef","useRef","itemContentRef","itemSlotRef","useEffect","timer","setTimeout","process","env","TARO_ENV","query","createSelectorQuery","selectAll","boundingClientRect","exec","res","width","height","clearTimeout","el","current","rect","getBoundingClientRect","elSlot","elitem","left","React","createElement","View","className","map","child","index","key","ref","style","color","onClick","handleClick","TabItemComponent","title","classNames","background","
|
|
1
|
+
{"version":3,"file":"Tabbar.js","sources":["../../../../src/components/Tabbar/tabbar/Tabbar.tsx"],"sourcesContent":["import React, {\n FC,\n ReactElement,\n useEffect,\n useState,\n ReactNode,\n useRef,\n} from \"react\";\nimport { createSelectorQuery } from \"@tarojs/taro\";\nimport { View } from \"@tarojs/components\";\nimport classNames from \"classnames\";\nimport Item from \"./TabItem\";\n\n/**\n * Tab切换\n *\n * @param children //子组件\n * @param animated //是否开启转场动画\n * @param selectIndex //默认选中第几个\n * @param lineColor //下划线颜色\n * @param titleActiveColor //标题选中态颜色\n * @param titleInctiveColor //标题默认态颜色\n * @param onChange //切换回调事件\n * @param content //item公共节点\n *\n */\n\nexport interface TabProps {\n children: ReactElement[];\n animated?: boolean;\n // initIndex?: number;\n lineColor?: string;\n titleActiveColor?: string;\n titleInctiveColor?: string;\n onChange?: (index: number) => void;\n content?: string | ReactNode;\n selectIndex: number;\n}\n\nexport interface TabsComponent<P = {}> extends FC<P> {\n Item: typeof Item;\n}\n\nconst XHTabs: TabsComponent<TabProps> = props => {\n const {\n children = [],\n animated = false,\n // initIndex = 0,\n lineColor = \"#F6AB00\",\n titleActiveColor = \"#333\",\n titleInctiveColor = \"#999\",\n onChange,\n content,\n selectIndex = 0,\n } = props;\n\n // const [selectIndex, setSelectIndex] = useState(initIndex);\n const [tabWdith, setTabWdith] = useState(0);\n const [tabContentHeight, setTabContentHeight] = useState(0);\n const [tabSlotHeight, setTabSlotHeight] = useState(0);\n\n const itemNavRef = useRef<(HTMLLIElement | null)[]>([]);\n const itemContentRef = useRef<(HTMLDivElement | null)[]>([]);\n const itemSlotRef = useRef<(HTMLDivElement | null)[]>([]);\n\n useEffect(() => {\n const timer = setTimeout(() => {\n if (process.env.TARO_ENV === \"h5\") {\n const el = itemNavRef.current[selectIndex];\n if (el) {\n const rect = el.getBoundingClientRect();\n console.log(\"el\", rect);\n setTabWdith(rect.width);\n }\n const elSlot = itemSlotRef.current[0];\n if (elSlot) {\n const rect = elSlot.getBoundingClientRect();\n console.log(\"elSlot\", rect);\n setTabSlotHeight(rect.height);\n }\n\n const elitem = itemContentRef.current[selectIndex];\n if (elitem) {\n const rect = elitem.getBoundingClientRect();\n console.log(\"elitem\", rect);\n setTabContentHeight(rect.height);\n }\n clearTimeout(timer);\n return;\n }\n\n const query = createSelectorQuery();\n query.selectAll(\".xh-tabbar-nav-item\").boundingClientRect();\n query.selectAll(\".xh-tabbar-content-item\").boundingClientRect();\n query.selectAll(\".xh-tabbar-content-slot\").boundingClientRect();\n\n query.exec(res => {\n if (!res[0][selectIndex]) return;\n const width: number = res[0][selectIndex].width;\n setTabWdith(width);\n\n if (!res[1][selectIndex]) return;\n setTabContentHeight(res[1][selectIndex].height);\n\n if (!res[2][selectIndex]) return;\n setTabSlotHeight(res[2][selectIndex].height);\n clearTimeout(timer);\n });\n }, 300);\n console.log(children.length);\n }, [selectIndex, children]);\n\n const handleClick = (index: number): void => {\n // setSelectIndex(index);\n const query = createSelectorQuery();\n query.selectAll(\".xh-tabbar-content-item\").boundingClientRect();\n query.selectAll(\".xh-tabbar-content-slot\").boundingClientRect();\n query.exec(res => {\n if (!res[0][index]) return;\n const height: number = res[0][index].height;\n setTabContentHeight(height);\n if (!res[1][index]) return;\n setTabSlotHeight(res[1][index].height);\n });\n\n onChange && onChange(index);\n };\n\n function renderLine(): ReactElement | null {\n const left: number = tabWdith / 2 + selectIndex * tabWdith;\n return (\n <div\n className={classNames(\"xh-tabbar-nav-line\", {\n \"xh-tabbar-nav-line-active\": animated,\n })}\n style={{\n background: `${lineColor}`,\n transform: `translateX(${left}px) translate(-50%, -50%)`,\n WebkitTransform: `translateX(${left}px) translate(-50%, -50%)`,\n }}\n />\n );\n }\n\n return (\n <View className=\"xh-tabbar\">\n <View className=\"xh-tabbar-nav\">\n {children.map((child, index) => (\n <View\n key={index}\n // @ts-ignore\n dataTrackId={\n child.props.dataTrackId || `xh-tabbar-nav-item-${index}`\n }\n ref={el => (itemNavRef.current[index] = el)}\n className=\"xh-tabbar-nav-item\"\n style={{\n color:\n selectIndex === index ? titleActiveColor : titleInctiveColor,\n }}\n onClick={() => handleClick(index)}\n >\n {child.props.TabItemComponent\n ? child.props.TabItemComponent\n : child.props.title}\n </View>\n ))}\n {renderLine()}\n </View>\n <View\n className=\"xh-tabbar-content\"\n style={{\n width: `${children.length * 100}%`,\n height:\n tabContentHeight + tabSlotHeight\n ? `${tabContentHeight + tabSlotHeight}px`\n : \"auto\",\n }}\n >\n {content && (\n <View className=\"xh-tabbar-content-slot\" ref={itemSlotRef}>\n {content}\n </View>\n )}\n {children.map((child, index) => (\n <View\n key={index}\n ref={el => (itemContentRef.current[index] = el)}\n className={classNames(\"xh-tabbar-content-item\", {\n \"xh-tabbar-content-item-dispaly\":\n selectIndex !== index && !animated,\n \"xh-tabbar-content-item-active\": selectIndex === index,\n })}\n style={{\n transform: animated ? `translateX(-${selectIndex * 100}%)` : \"\",\n }}\n >\n {child.props.children}\n </View>\n ))}\n </View>\n </View>\n );\n};\n\nXHTabs.Item = Item;\n\nexport default XHTabs;\nexport const TabItem = Item;\n"],"names":["XHTabs","props","_a","children","_b","animated","_c","lineColor","_d","titleActiveColor","_e","titleInctiveColor","onChange","content","_f","selectIndex","_g","__read","useState","tabWdith","setTabWdith","_h","tabContentHeight","setTabContentHeight","_j","tabSlotHeight","setTabSlotHeight","itemNavRef","useRef","itemContentRef","itemSlotRef","useEffect","timer","setTimeout","process","env","TARO_ENV","query","createSelectorQuery","selectAll","boundingClientRect","exec","res","width","height","clearTimeout","el","current","rect","getBoundingClientRect","elSlot","elitem","left","React","createElement","View","className","map","child","index","key","dataTrackId","concat","ref","style","color","onClick","handleClick","TabItemComponent","title","classNames","background","transform","WebkitTransform","length","Item"],"mappings":"iRA2CM,IAAAA,EAAkC,SAAAC,GAEpC,IAAAC,EASED,EAAKE,SATPA,aAAW,GAAED,EACbE,EAQEH,EARcI,SAAhBA,OAAQ,IAAAD,GAAQA,EAEhBE,EAMEL,EANmBM,UAArBA,aAAY,UAASD,EACrBE,EAKEP,mBALFQ,OAAmB,IAAAD,EAAA,SACnBE,EAIET,EAJwBU,kBAA1BA,OAAoB,IAAAD,EAAA,OAAMA,EAC1BE,EAGEX,WAFFY,EAEEZ,EAAKY,QADPC,EACEb,EADac,YAAfA,OAAc,IAAAD,EAAA,IAIVE,EAAAC,EAA0BC,EAAS,GAAE,GAApCC,EAAQH,EAAA,GAAEI,OACXC,EAAAJ,EAA0CC,EAAS,GAAE,GAApDI,EAAgBD,EAAA,GAAEE,OACnBC,EAAAP,EAAoCC,EAAS,GAAE,GAA9CO,EAAaD,EAAA,GAAEE,OAEhBC,EAAaC,EAAiC,IAC9CC,EAAiBD,EAAkC,IACnDE,EAAcF,EAAkC,IAEtDG,GAAU,WACR,IAAMC,EAAQC,YAAW,WACvB,GAA6B,OAAzBC,QAAQC,IAAIC,SAAhB,CAwBA,IAAMC,EAAQC,IACdD,EAAME,UAAU,uBAAuBC,qBACvCH,EAAME,UAAU,2BAA2BC,qBAC3CH,EAAME,UAAU,2BAA2BC,qBAE3CH,EAAMI,MAAK,SAAAC,GACT,GAAKA,EAAI,GAAG3B,GAAZ,CACA,IAAM4B,EAAgBD,EAAI,GAAG3B,GAAa4B,MAC1CvB,EAAYuB,GAEPD,EAAI,GAAG3B,KACZQ,EAAoBmB,EAAI,GAAG3B,GAAa6B,QAEnCF,EAAI,GAAG3B,KACZW,EAAiBgB,EAAI,GAAG3B,GAAa6B,QACrCC,aAAab,IAToB,CAUnC,GAlBC,KAtBD,CACE,IAAMc,EAAKnB,EAAWoB,QAAQhC,GAC9B,GAAI+B,EAAI,CACN,IAAME,EAAOF,EAAGG,wBAEhB7B,EAAY4B,EAAKL,MAClB,CACD,IAAMO,EAASpB,EAAYiB,QAAQ,GACnC,GAAIG,EAAQ,CACJF,EAAOE,EAAOD,wBAEpBvB,EAAiBsB,EAAKJ,OACvB,CAED,IAAMO,EAAStB,EAAekB,QAAQhC,GACtC,GAAIoC,EAAQ,CACJH,EAAOG,EAAOF,wBAEpB1B,EAAoByB,EAAKJ,OAC1B,CACDC,aAAab,EAEd,CAmBF,GAAE,IAEL,GAAG,CAACjB,EAAaZ,IAEjB,IAiBQiD,EAeR,OACEC,EAACC,cAAAC,EAAK,CAAAC,UAAU,aACdH,EAAAC,cAACC,EAAI,CAACC,UAAU,iBACbrD,EAASsD,KAAI,SAACC,EAAOC,GAAU,OAC9BN,EAACC,cAAAC,EACC,CAAAK,IAAKD,EAELE,YACEH,EAAMzD,MAAM4D,aAAe,sBAAsBC,OAAAH,GAEnDI,IAAK,SAAAjB,GAAM,OAACnB,EAAWoB,QAAQY,GAASb,GACxCU,UAAU,qBACVQ,MAAO,CACLC,MACElD,IAAgB4C,EAAQlD,EAAmBE,GAE/CuD,QAAS,WAAM,OAhDL,SAACP,GAEnB,IAAMtB,EAAQC,IACdD,EAAME,UAAU,2BAA2BC,qBAC3CH,EAAME,UAAU,2BAA2BC,qBAC3CH,EAAMI,MAAK,SAAAC,GACT,GAAKA,EAAI,GAAGiB,GAAZ,CACA,IAAMf,EAAiBF,EAAI,GAAGiB,GAAOf,OACrCrB,EAAoBqB,GACfF,EAAI,GAAGiB,IACZjC,EAAiBgB,EAAI,GAAGiB,GAAOf,OAJJ,CAK7B,IAEAhC,GAAYA,EAAS+C,EACvB,CAkCyBQ,CAAYR,KAE1BD,EAAMzD,MAAMmE,iBACTV,EAAMzD,MAAMmE,iBACZV,EAAMzD,MAAMoE,WAnClBjB,EAAejC,EAAW,EAAIJ,EAAcI,EAEhDkC,EACEC,cAAA,MAAA,CAAAE,UAAWc,EAAW,qBAAsB,CAC1C,4BAA6BjE,IAE/B2D,MAAO,CACLO,WAAY,GAAGT,OAAAvD,GACfiE,UAAW,cAAcV,OAAAV,EAA+B,6BACxDqB,gBAAiB,cAAcX,OAAAV,EAA+B,kCA+BlEC,EAAAC,cAACC,EACC,CAAAC,UAAU,oBACVQ,MAAO,CACLrB,MAAO,GAAGmB,OAAkB,IAAlB3D,EAASuE,OAAe,KAClC9B,OACEtB,EAAmBG,EACf,GAAAqC,OAAGxC,EAAmBG,EAAiB,MACvC,SAGPZ,GACCwC,EAACC,cAAAC,GAAKC,UAAU,yBAAyBO,IAAKjC,GAC3CjB,GAGJV,EAASsD,KAAI,SAACC,EAAOC,GAAU,OAC9BN,EAAAC,cAACC,EACC,CAAAK,IAAKD,EACLI,IAAK,SAAAjB,GAAM,OAACjB,EAAekB,QAAQY,GAASb,CAAG,EAC/CU,UAAWc,EAAW,yBAA0B,CAC9C,iCACEvD,IAAgB4C,IAAUtD,EAC5B,gCAAiCU,IAAgB4C,IAEnDK,MAAO,CACLQ,UAAWnE,EAAW,eAAAyD,OAA6B,IAAd/C,EAAiB,MAAO,KAG9D2C,EAAMzD,MAAME,SAEhB,KAIT,EAEAH,EAAO2E,KAAOA"}
|