@xhsreds/reds-rn-next 0.10.1-beta202512022044 → 0.10.1-beta202512041155
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/coverage/.tmp/coverage-0.json +1 -1
- package/coverage/.tmp/coverage-1.json +1 -1
- package/coverage/.tmp/coverage-10.json +1 -1
- package/coverage/.tmp/coverage-11.json +1 -1
- package/coverage/.tmp/coverage-12.json +1 -1
- package/coverage/.tmp/coverage-13.json +1 -1
- package/coverage/.tmp/coverage-14.json +1 -1
- package/coverage/.tmp/coverage-15.json +1 -1
- package/coverage/.tmp/coverage-16.json +1 -1
- package/coverage/.tmp/coverage-2.json +1 -1
- package/coverage/.tmp/coverage-23.json +1 -1
- package/coverage/.tmp/coverage-24.json +1 -1
- package/coverage/.tmp/coverage-25.json +1 -1
- package/coverage/.tmp/coverage-26.json +1 -1
- package/coverage/.tmp/coverage-27.json +1 -1
- package/coverage/.tmp/coverage-28.json +1 -1
- package/coverage/.tmp/coverage-3.json +1 -1
- package/coverage/.tmp/coverage-30.json +1 -1
- package/coverage/.tmp/coverage-31.json +1 -1
- package/coverage/.tmp/coverage-33.json +1 -1
- package/coverage/.tmp/coverage-34.json +1 -1
- package/coverage/.tmp/coverage-35.json +1 -1
- package/coverage/.tmp/coverage-36.json +1 -1
- package/coverage/.tmp/coverage-37.json +1 -1
- package/coverage/.tmp/coverage-38.json +1 -1
- package/coverage/.tmp/coverage-39.json +1 -1
- package/coverage/.tmp/coverage-4.json +1 -1
- package/coverage/.tmp/coverage-40.json +1 -1
- package/coverage/.tmp/coverage-42.json +1 -1
- package/coverage/.tmp/coverage-5.json +1 -1
- package/coverage/.tmp/coverage-6.json +1 -1
- package/coverage/.tmp/coverage-7.json +1 -1
- package/coverage/.tmp/coverage-8.json +1 -1
- package/coverage/.tmp/coverage-9.json +1 -1
- package/lib/cjs/components/Alert/hooks/alert.js +1 -1
- package/lib/cjs/components/Image/Image.js +13 -13
- package/lib/cjs/components/Image/Image.js.map +1 -1
- package/lib/cjs/components/NoticeBar/NoticeBar.js +2 -1
- package/lib/cjs/components/NoticeBar/NoticeBar.js.map +1 -1
- package/lib/cjs/components/Portal/core/PortalHost.js +2 -3
- package/lib/cjs/components/Portal/core/PortalHost.js.map +1 -1
- package/lib/cjs/components/Portal/core/PortalProvider.js +0 -1
- package/lib/cjs/components/Portal/core/PortalProvider.js.map +1 -1
- package/lib/cjs/components/Portal/index.js +0 -1
- package/lib/cjs/components/Portal/index.js.map +1 -1
- package/lib/esm/components/Alert/hooks/alert.js +1 -1
- package/lib/esm/components/Image/Image.js +13 -13
- package/lib/esm/components/Image/Image.js.map +1 -1
- package/lib/esm/components/NoticeBar/NoticeBar.js +2 -1
- package/lib/esm/components/NoticeBar/NoticeBar.js.map +1 -1
- package/lib/esm/components/Portal/core/PortalHost.js +2 -3
- package/lib/esm/components/Portal/core/PortalHost.js.map +1 -1
- package/lib/esm/components/Portal/core/PortalProvider.js +0 -1
- package/lib/esm/components/Portal/core/PortalProvider.js.map +1 -1
- package/lib/esm/components/Portal/index.js +0 -1
- package/lib/esm/components/Portal/index.js.map +1 -1
- package/package.json +2 -2
- package/src/components/Image/Image.tsx +14 -9
- package/src/components/Image/demo/index.tsx +4 -5
- package/src/components/NoticeBar/NoticeBar.tsx +3 -1
- package/src/components/Portal/core/PortalHost.tsx +3 -1
- package/src/i18n/@types/resources.d.ts +27 -27
- package/src/i18n/index.json +31 -31
|
@@ -1 +1 @@
|
|
|
1
|
-
{"/builds/fe/infra/reds/packages/reds-rn/src/components/PullRefresh/interface/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/PullRefresh/interface/index.ts","statementMap":{"0":{"start":{"line":1,"column":39},"end":{"line":8,"column":19}},"1":{"start":{"line":2,"column":2},"end":{"line":2,"column":46}},"2":{"start":{"line":3,"column":2},"end":{"line":3,"column":50}},"3":{"start":{"line":4,"column":2},"end":{"line":4,"column":52}},"4":{"start":{"line":5,"column":2},"end":{"line":5,"column":52}},"5":{"start":{"line":6,"column":2},"end":{"line":6,"column":52}},"6":{"start":{"line":7,"column":2},"end":{"line":7,"column":20}},"7":{"start":{"line":9,"column":39},"end":{"line":20,"column":1}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":1,"column":40},"end":{"line":1,"column":41}},"loc":{"start":{"line":1,"column":56},"end":{"line":8,"column":1}},"line":1}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":3},"end":{"line":8,"column":18}},"type":"binary-expr","locations":[{"start":{"line":8,"column":3},"end":{"line":8,"column":12}},{"start":{"line":8,"column":16},"end":{"line":8,"column":18}}],"line":8}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1},"f":{"0":1},"b":{"0":[1,1]},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/PullRefresh/interface/index.ts"],"sourcesContent":["import type { RefreshControlProps } from \"react-native\";\nimport { ViewStyle } from \"react-native\";\nexport interface RedsPullRefresh {\n children: React.ReactNode;\n pullAnimHeight?: number;\n minPullDistance?: number;\n msHoldingTime?: number;\n isRefreshing: boolean;\n pullDownToRefreshText?: string;\n releaseRefreshText?: string;\n requestDataText?: string;\n requestSuccessfulText?: string;\n style?: ViewStyle;\n controlStyle?: ViewStyle;\n onRequest?: () => void;\n showText?: boolean;\n initRefresh?: boolean;\n refresh?: boolean;\n nativeAndroidPullRefresh?: boolean;\n androidRefreshProps?: Object;\n androidColors?: string[];\n}\n\nexport enum PullState {\n INIT, // 初始化\n FINISH, // 结束\n PULLING, // 下拉中\n LOADING, // 请求数据中\n HOLDING, // 请求完数据的停留状态\n}\n\nexport interface RedsPullRefreshEvent {}\nexport const PullRefreshDefaultProps = {\n children: undefined,\n pullAnimHeight: 0,\n minPullDistance: 20,\n msHoldingTime: 1000,\n isRefreshing: false,\n showText: true,\n initRefresh: false,\n refresh: false,\n nativeAndroidPullRefresh: false,\n androidRefreshProps: {},\n};\n"],"mappings":"AAuBO,WAAK,YAAL,kBAAKA,eAAL;AACL,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AALU,SAAAA;AAAA,GAAA;AASL,aAAM,0BAA0B;AAAA,EACrC,UAAU;AAAA,EACV,gBAAgB;AAAA,EAChB,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,cAAc;AAAA,EACd,UAAU;AAAA,EACV,aAAa;AAAA,EACb,SAAS;AAAA,EACT,0BAA0B;AAAA,EAC1B,qBAAqB,CAAC;AACxB;","names":["PullState"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"17d63b8c4f2770430fdc1bb3936f362a131c032a"},"/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/interface/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/interface/index.ts","statementMap":{"0":{"start":{"line":1,"column":45},"end":{"line":6,"column":1}},"1":{"start":{"line":4,"column":27},"end":{"line":4,"column":65}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":4,"column":14},"end":{"line":4,"column":15}},"loc":{"start":{"line":4,"column":27},"end":{"line":4,"column":65}},"line":4}},"branchMap":{"0":{"loc":{"start":{"line":4,"column":27},"end":{"line":4,"column":65}},"type":"cond-expr","locations":[{"start":{"line":4,"column":43},"end":{"line":4,"column":49}},{"start":{"line":4,"column":52},"end":{"line":4,"column":65}}],"line":4}},"s":{"0":1,"1":0},"f":{"0":0},"b":{"0":[0,0]},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/interface/index.ts"],"sourcesContent":["import { GestureResponderEvent } from \"react-native\";\nimport { lightColor } from \"@xhs/reds-token-next\";\nexport interface RedsProgressIndicator {\n percent?: number;\n showPercent?: boolean;\n textStyle?: any;\n formatText?: (percent: number) => string;\n size?: number;\n type?: string;\n strokeColor?: \"dark\" | \"light\" | \"primary\";\n strokeWidth?: number;\n lottieSource?: string;\n}\n\nexport interface RedsProgressIndicatorEvent {}\nexport const ProgressIndicatorDefaultProps = {\n percent: 0,\n showPercent: true,\n formatText: (percent: number) => (percent > 100 ? \"100%\" : percent + \"%\"),\n type: \"default\",\n};\n"],"mappings":"AAeO,aAAM,gCAAgC;AAAA,EAC3C,SAAS;AAAA,EACT,aAAa;AAAA,EACb,YAAY,CAAC,YAAqB,UAAU,MAAM,SAAS,UAAU;AAAA,EACrE,MAAM;AACR;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"bb5c985532efe785d8fa6e31c798d36b6d368756"},"/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/lottie/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/lottie/index.ts","statementMap":{},"fnMap":{},"branchMap":{},"s":{},"f":{},"b":{},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/lottie/index.ts"],"sourcesContent":["import pullup from \"./pullup.json\";\nimport pullup_dark from \"./pullup_dark.json\";\nimport refresh from \"./refresh.json\";\nimport refresh_dark from \"./refresh_dark.json\";\nimport refresh_primary from \"./refresh_primary.json\";\nimport progress_loading from \"./progress_loading.json\";\nimport progress_loading_dark from \"./progress_loading_dark.json\";\nimport progress_loading_primary from \"./progress_loading_primary.json\";\nimport loading from \"./loading.json\";\nimport loading_dark from \"./loading_dark.json\";\nimport loading_primary from \"./loading_primary.json\";\n\nexport default {\n pullup,\n pullup_dark,\n refresh,\n refresh_dark,\n refresh_primary,\n progress_loading,\n progress_loading_dark,\n progress_loading_primary,\n loading,\n loading_dark,\n loading_primary,\n} as const;\n"],"mappings":"AAAA,OAAO,YAAY;AACnB,OAAO,iBAAiB;AACxB,OAAO,aAAa;AACpB,OAAO,kBAAkB;AACzB,OAAO,qBAAqB;AAC5B,OAAO,sBAAsB;AAC7B,OAAO,2BAA2B;AAClC,OAAO,8BAA8B;AACrC,OAAO,aAAa;AACpB,OAAO,kBAAkB;AACzB,OAAO,qBAAqB;AAE5B,eAAe;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"ab8b6deb723185630266ac2d259f0812fe9ab9b3"},"/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/lottie/getLottieSource.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/lottie/getLottieSource.ts","statementMap":{"0":{"start":{"line":2,"column":21},"end":{"line":22,"column":1}},"1":{"start":{"line":23,"column":31},"end":{"line":25,"column":1}},"2":{"start":{"line":24,"column":2},"end":{"line":24,"column":28}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":23,"column":31},"end":{"line":23,"column":32}},"loc":{"start":{"line":23,"column":41},"end":{"line":25,"column":1}},"line":23}},"branchMap":{},"s":{"0":1,"1":1,"2":0},"f":{"0":0},"b":{},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/ProgressIndicator/lottie/getLottieSource.ts"],"sourcesContent":["import LottieSource from \"./index\";\n\ntype TLottieSourceType = \"pullup\" | \"progress\" | \"refresh\" | \"default\";\n\nconst lottieSource = {\n pullup: {\n dark: LottieSource.pullup_dark,\n light: LottieSource.pullup,\n },\n progress: {\n dark: LottieSource.progress_loading_dark,\n light: LottieSource.progress_loading,\n primary: LottieSource.progress_loading_primary,\n },\n default: {\n dark: LottieSource.loading_dark,\n light: LottieSource.loading,\n primary: LottieSource.loading_primary,\n },\n refresh: {\n dark: LottieSource.refresh_dark,\n light: LottieSource.refresh,\n primary: LottieSource.refresh_primary,\n },\n};\n\nexport const getLottieSource = (type: TLottieSourceType): any => {\n return lottieSource[type];\n};\n"],"mappings":"AAAA,OAAO,kBAAkB;AAIzB,MAAM,eAAe;AAAA,EACnB,QAAQ;AAAA,IACN,MAAM,aAAa;AAAA,IACnB,OAAO,aAAa;AAAA,EACtB;AAAA,EACA,UAAU;AAAA,IACR,MAAM,aAAa;AAAA,IACnB,OAAO,aAAa;AAAA,IACpB,SAAS,aAAa;AAAA,EACxB;AAAA,EACA,SAAS;AAAA,IACP,MAAM,aAAa;AAAA,IACnB,OAAO,aAAa;AAAA,IACpB,SAAS,aAAa;AAAA,EACxB;AAAA,EACA,SAAS;AAAA,IACP,MAAM,aAAa;AAAA,IACnB,OAAO,aAAa;AAAA,IACpB,SAAS,aAAa;AAAA,EACxB;AACF;AAEO,aAAM,kBAAkB,CAAC,SAAiC;AAC/D,SAAO,aAAa,IAAI;AAC1B;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"89cdebfd40dc1ef4ebb208309314cb9784782eaa"}}
|
|
1
|
+
{"/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/interface/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/interface/index.ts","statementMap":{"0":{"start":{"line":1,"column":34},"end":{"line":15,"column":1}}},"fnMap":{},"branchMap":{},"s":{"0":1},"f":{},"b":{},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/interface/index.ts"],"sourcesContent":["import { ViewStyle } from \"react-native\";\nimport { lightColor } from \"@xhs/reds-token-next\";\nexport interface RedsSlider {\n value?: number;\n min?: number;\n max?: number;\n defaultValue?: number;\n initalValue?: number;\n disabled?: boolean;\n clickable?: boolean;\n showLabel?: boolean;\n section?: boolean;\n labels?: string[] | any[];\n step?: number;\n activeColor?: string;\n inactiveColor?: string;\n onValueChange?: (value: number) => any;\n onDrag?: (value: Event) => any;\n onDragStart?: (value: Event) => any;\n onDragEnd?: (value: Event) => any;\n dotStyle?: ViewStyle;\n}\n\nexport interface RedsSliderEvent {}\nexport const SliderDefaultProps = {\n value: 0,\n min: 0,\n max: 100,\n defaultValue: 60,\n initalValue: 60,\n disabled: false,\n clickable: false,\n showLabel: true,\n section: false,\n step: 5,\n activeColor: \"rgba(48, 48, 52, 0.10)\",\n inactiveColor: \"rgba(48, 48, 52, 0.10)\",\n dotStyle: {},\n};\n"],"mappings":"AAwBO,aAAM,qBAAqB;AAAA,EAChC,OAAO;AAAA,EACP,KAAK;AAAA,EACL,KAAK;AAAA,EACL,cAAc;AAAA,EACd,aAAa;AAAA,EACb,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EACX,SAAS;AAAA,EACT,MAAM;AAAA,EACN,aAAa;AAAA,EACb,eAAe;AAAA,EACf,UAAU,CAAC;AACb;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"da58e3b0c2582c03390dcd52a0131f160291ca94"},"/builds/fe/infra/reds/packages/reds-rn/src/pvCount/pvData.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/pvCount/pvData.ts","statementMap":{"0":{"start":{"line":4,"column":19},"end":{"line":4,"column":21}},"1":{"start":{"line":5,"column":30},"end":{"line":19,"column":1}},"2":{"start":{"line":6,"column":2},"end":{"line":18,"column":3}},"3":{"start":{"line":7,"column":4},"end":{"line":16,"column":7}},"4":{"start":{"line":17,"column":4},"end":{"line":17,"column":22}},"5":{"start":{"line":20,"column":23},"end":{"line":27,"column":1}},"6":{"start":{"line":21,"column":2},"end":{"line":25,"column":3}},"7":{"start":{"line":22,"column":4},"end":{"line":22,"column":36}},"8":{"start":{"line":24,"column":4},"end":{"line":24,"column":34}},"9":{"start":{"line":26,"column":2},"end":{"line":26,"column":44}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":30},"end":{"line":5,"column":31}},"loc":{"start":{"line":5,"column":36},"end":{"line":19,"column":1}},"line":5},"1":{"name":"(anonymous_1)","decl":{"start":{"line":20,"column":23},"end":{"line":20,"column":24}},"loc":{"start":{"line":20,"column":42},"end":{"line":27,"column":1}},"line":20}},"branchMap":{"0":{"loc":{"start":{"line":6,"column":2},"end":{"line":18,"column":3}},"type":"if","locations":[{"start":{"line":6,"column":2},"end":{"line":18,"column":3}},{"start":{},"end":{}}],"line":6},"1":{"loc":{"start":{"line":21,"column":2},"end":{"line":25,"column":3}},"type":"if","locations":[{"start":{"line":21,"column":2},"end":{"line":25,"column":3}},{"start":{"line":23,"column":9},"end":{"line":25,"column":3}}],"line":21}},"s":{"0":1,"1":1,"2":0,"3":0,"4":0,"5":1,"6":0,"7":0,"8":0,"9":0},"f":{"0":0,"1":0},"b":{"0":[0,0],"1":[0,0]},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/pvCount/pvData.ts"],"sourcesContent":["import pack from \"../../package.json\";\nimport { push } from \"@xhs/reds-apm/src/index.native\";\nimport { pushByrequestIdleCallback } from \"@xhs/reds-apm/src/index.native\";\n\nlet globalPvData: Record<string, number> = {};\nexport const pushGlobalData = () => {\n if (Object.keys(globalPvData).length) {\n push({\n context_artifactName: \"reds-rn-next\",\n context_aritfactVersion: pack.version,\n measurement_name: \"reds_component_usage_pv\",\n measurement_data: {\n packageName: process.env.APP_NAME,\n packageVersion: process.env.APP_VERSION,\n pvData: JSON.stringify(globalPvData),\n },\n });\n // 上报完数据后清空数据\n globalPvData = {};\n }\n};\n\nexport const pvCount = (componentName: string) => {\n if (!globalPvData[componentName]) {\n globalPvData[componentName] = 1;\n } else {\n globalPvData[componentName]++;\n }\n pushByrequestIdleCallback(pushGlobalData);\n};\n"],"mappings":"AAAA,OAAO,UAAU;AACjB,SAAS,YAAY;AACrB,SAAS,iCAAiC;AAE1C,IAAI,eAAuC,CAAC;AACrC,aAAM,iBAAiB,MAAM;AAClC,MAAI,OAAO,KAAK,YAAY,EAAE,QAAQ;AACpC,SAAK;AAAA,MACH,sBAAsB;AAAA,MACtB,yBAAyB,KAAK;AAAA,MAC9B,kBAAkB;AAAA,MAClB,kBAAkB;AAAA,QAChB,aAAa,QAAQ,IAAI;AAAA,QACzB,gBAAgB,QAAQ,IAAI;AAAA,QAC5B,QAAQ,KAAK,UAAU,YAAY;AAAA,MACrC;AAAA,IACF,CAAC;AAED,mBAAe,CAAC;AAAA,EAClB;AACF;AAEO,aAAM,UAAU,CAAC,kBAA0B;AAChD,MAAI,CAAC,aAAa,aAAa,GAAG;AAChC,iBAAa,aAAa,IAAI;AAAA,EAChC,OAAO;AACL,iBAAa,aAAa;AAAA,EAC5B;AACA,4BAA0B,cAAc;AAC1C;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"eec79479ebaf88fb81cde31cc9239afcebef422b"},"/builds/fe/infra/reds/packages/reds-rn/src/pvCount/useUnmountedProcess.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/pvCount/useUnmountedProcess.ts","statementMap":{"0":{"start":{"line":4,"column":19},"end":{"line":9,"column":1}},"1":{"start":{"line":5,"column":2},"end":{"line":8,"column":9}},"2":{"start":{"line":6,"column":4},"end":{"line":6,"column":34}},"3":{"start":{"line":6,"column":27},"end":{"line":6,"column":34}},"4":{"start":{"line":7,"column":4},"end":{"line":7,"column":27}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":4,"column":19},"end":{"line":4,"column":20}},"loc":{"start":{"line":4,"column":38},"end":{"line":9,"column":1}},"line":4},"1":{"name":"(anonymous_1)","decl":{"start":{"line":5,"column":12},"end":{"line":5,"column":13}},"loc":{"start":{"line":5,"column":18},"end":{"line":8,"column":3}},"line":5}},"branchMap":{"0":{"loc":{"start":{"line":6,"column":4},"end":{"line":6,"column":34}},"type":"if","locations":[{"start":{"line":6,"column":4},"end":{"line":6,"column":34}},{"start":{},"end":{}}],"line":6}},"s":{"0":1,"1":6,"2":6,"3":6,"4":0},"f":{"0":6,"1":6},"b":{"0":[6,0]},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/pvCount/useUnmountedProcess.ts"],"sourcesContent":["import { isApmInstalled } from \"@xhs/reds-apm/src/index.native\";\nimport { useEffect } from \"react\";\nimport { pvCount } from \"./pvData\";\n\nconst useMounted = (componentName: string) => {\n useEffect(() => {\n // 没装直接返回\n if (!isApmInstalled()) return;\n pvCount(componentName);\n }, []);\n};\n\nexport default useMounted;\n"],"mappings":"AAAA,SAAS,sBAAsB;AAC/B,SAAS,iBAAiB;AAC1B,SAAS,eAAe;AAExB,MAAM,aAAa,CAAC,kBAA0B;AAC5C,YAAU,MAAM;AAEd,QAAI,CAAC,eAAe,EAAG;AACvB,YAAQ,aAAa;AAAA,EACvB,GAAG,CAAC,CAAC;AACP;AAEA,eAAe;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"2b6f2d905e538809287733be3177e02e1d78a66f"},"/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/Slider.tsx":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/Slider.tsx","statementMap":{"0":{"start":{"line":13,"column":15},"end":{"line":179,"column":1}},"1":{"start":{"line":22,"column":2},"end":{"line":22,"column":23}},"2":{"start":{"line":23,"column":40},"end":{"line":23,"column":80}},"3":{"start":{"line":24,"column":28},"end":{"line":24,"column":49}},"4":{"start":{"line":25,"column":2},"end":{"line":27,"column":3}},"5":{"start":{"line":26,"column":4},"end":{"line":26,"column":11}},"6":{"start":{"line":28,"column":2},"end":{"line":30,"column":3}},"7":{"start":{"line":29,"column":4},"end":{"line":29,"column":11}},"8":{"start":{"line":31,"column":26},"end":{"line":37,"column":3}},"9":{"start":{"line":33,"column":27},"end":{"line":33,"column":75}},"10":{"start":{"line":34,"column":6},"end":{"line":34,"column":56}},"11":{"start":{"line":38,"column":24},"end":{"line":38,"column":99}},"12":{"start":{"line":39,"column":29},"end":{"line":43,"column":11}},"13":{"start":{"line":44,"column":2},"end":{"line":52,"column":9}},"14":{"start":{"line":45,"column":36},"end":{"line":47,"column":5}},"15":{"start":{"line":46,"column":6},"end":{"line":46,"column":53}},"16":{"start":{"line":48,"column":25},"end":{"line":48,"column":87}},"17":{"start":{"line":49,"column":4},"end":{"line":51,"column":6}},"18":{"start":{"line":50,"column":6},"end":{"line":50,"column":28}},"19":{"start":{"line":53,"column":27},"end":{"line":67,"column":3}},"20":{"start":{"line":55,"column":23},"end":{"line":55,"column":110}},"21":{"start":{"line":56,"column":27},"end":{"line":56,"column":52}},"22":{"start":{"line":57,"column":6},"end":{"line":57,"column":29}},"23":{"start":{"line":58,"column":6},"end":{"line":58,"column":71}},"24":{"start":{"line":59,"column":6},"end":{"line":61,"column":8}},"25":{"start":{"line":62,"column":6},"end":{"line":64,"column":7}},"26":{"start":{"line":63,"column":8},"end":{"line":63,"column":36}},"27":{"start":{"line":68,"column":27},"end":{"line":89,"column":3}},"28":{"start":{"line":70,"column":28},"end":{"line":70,"column":45}},"29":{"start":{"line":71,"column":23},"end":{"line":71,"column":66}},"30":{"start":{"line":72,"column":27},"end":{"line":72,"column":52}},"31":{"start":{"line":73,"column":6},"end":{"line":73,"column":29}},"32":{"start":{"line":74,"column":6},"end":{"line":78,"column":17}},"33":{"start":{"line":79,"column":6},"end":{"line":83,"column":17}},"34":{"start":{"line":84,"column":6},"end":{"line":86,"column":7}},"35":{"start":{"line":85,"column":8},"end":{"line":85,"column":36}},"36":{"start":{"line":90,"column":23},"end":{"line":92,"column":3}},"37":{"start":{"line":91,"column":4},"end":{"line":91,"column":51}},"38":{"start":{"line":93,"column":23},"end":{"line":106,"column":3}},"39":{"start":{"line":94,"column":10},"end":{"line":104,"column":6}},"40":{"start":{"line":95,"column":42},"end":{"line":95,"column":46}},"41":{"start":{"line":96,"column":41},"end":{"line":96,"column":45}},"42":{"start":{"line":97,"column":33},"end":{"line":97,"column":37}},"43":{"start":{"line":98,"column":35},"end":{"line":98,"column":39}},"44":{"start":{"line":102,"column":8},"end":{"line":102,"column":39}},"45":{"start":{"line":107,"column":18},"end":{"line":138,"column":4}},"46":{"start":{"line":139,"column":2},"end":{"line":178,"column":11}},"47":{"start":{"line":180,"column":0},"end":{"line":180,"column":41}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":13,"column":15},"end":{"line":13,"column":16}},"loc":{"start":{"line":21,"column":6},"end":{"line":179,"column":1}},"line":21},"1":{"name":"(anonymous_1)","decl":{"start":{"line":32,"column":4},"end":{"line":32,"column":5}},"loc":{"start":{"line":32,"column":18},"end":{"line":35,"column":5}},"line":32},"2":{"name":"(anonymous_2)","decl":{"start":{"line":44,"column":12},"end":{"line":44,"column":13}},"loc":{"start":{"line":44,"column":18},"end":{"line":52,"column":3}},"line":44},"3":{"name":"(anonymous_3)","decl":{"start":{"line":45,"column":36},"end":{"line":45,"column":37}},"loc":{"start":{"line":45,"column":42},"end":{"line":47,"column":5}},"line":45},"4":{"name":"(anonymous_4)","decl":{"start":{"line":49,"column":11},"end":{"line":49,"column":12}},"loc":{"start":{"line":49,"column":17},"end":{"line":51,"column":5}},"line":49},"5":{"name":"(anonymous_5)","decl":{"start":{"line":54,"column":4},"end":{"line":54,"column":5}},"loc":{"start":{"line":54,"column":22},"end":{"line":65,"column":5}},"line":54},"6":{"name":"(anonymous_6)","decl":{"start":{"line":69,"column":4},"end":{"line":69,"column":5}},"loc":{"start":{"line":69,"column":15},"end":{"line":87,"column":5}},"line":69},"7":{"name":"(anonymous_7)","decl":{"start":{"line":90,"column":23},"end":{"line":90,"column":24}},"loc":{"start":{"line":90,"column":34},"end":{"line":92,"column":3}},"line":90},"8":{"name":"(anonymous_8)","decl":{"start":{"line":94,"column":4},"end":{"line":94,"column":5}},"loc":{"start":{"line":94,"column":10},"end":{"line":104,"column":6}},"line":94},"9":{"name":"(anonymous_9)","decl":{"start":{"line":95,"column":36},"end":{"line":95,"column":37}},"loc":{"start":{"line":95,"column":42},"end":{"line":95,"column":46}},"line":95},"10":{"name":"(anonymous_10)","decl":{"start":{"line":96,"column":35},"end":{"line":96,"column":36}},"loc":{"start":{"line":96,"column":41},"end":{"line":96,"column":45}},"line":96},"11":{"name":"(anonymous_11)","decl":{"start":{"line":97,"column":27},"end":{"line":97,"column":28}},"loc":{"start":{"line":97,"column":33},"end":{"line":97,"column":37}},"line":97},"12":{"name":"(anonymous_12)","decl":{"start":{"line":98,"column":29},"end":{"line":98,"column":30}},"loc":{"start":{"line":98,"column":35},"end":{"line":98,"column":39}},"line":98},"13":{"name":"(anonymous_13)","decl":{"start":{"line":99,"column":31},"end":{"line":99,"column":32}},"loc":{"start":{"line":99,"column":37},"end":{"line":100,"column":7}},"line":99},"14":{"name":"(anonymous_14)","decl":{"start":{"line":101,"column":26},"end":{"line":101,"column":27}},"loc":{"start":{"line":101,"column":49},"end":{"line":103,"column":7}},"line":101}},"branchMap":{"0":{"loc":{"start":{"line":15,"column":2},"end":{"line":15,"column":9}},"type":"default-arg","locations":[{"start":{"line":15,"column":8},"end":{"line":15,"column":9}}],"line":15},"1":{"loc":{"start":{"line":16,"column":2},"end":{"line":16,"column":11}},"type":"default-arg","locations":[{"start":{"line":16,"column":8},"end":{"line":16,"column":11}}],"line":16},"2":{"loc":{"start":{"line":17,"column":2},"end":{"line":17,"column":17}},"type":"default-arg","locations":[{"start":{"line":17,"column":16},"end":{"line":17,"column":17}}],"line":17},"3":{"loc":{"start":{"line":19,"column":2},"end":{"line":19,"column":15}},"type":"default-arg","locations":[{"start":{"line":19,"column":13},"end":{"line":19,"column":15}}],"line":19},"4":{"loc":{"start":{"line":20,"column":2},"end":{"line":20,"column":10}},"type":"default-arg","locations":[{"start":{"line":20,"column":9},"end":{"line":20,"column":10}}],"line":20},"5":{"loc":{"start":{"line":25,"column":2},"end":{"line":27,"column":3}},"type":"if","locations":[{"start":{"line":25,"column":2},"end":{"line":27,"column":3}},{"start":{},"end":{}}],"line":25},"6":{"loc":{"start":{"line":28,"column":2},"end":{"line":30,"column":3}},"type":"if","locations":[{"start":{"line":28,"column":2},"end":{"line":30,"column":3}},{"start":{},"end":{}}],"line":28},"7":{"loc":{"start":{"line":28,"column":6},"end":{"line":28,"column":32}},"type":"binary-expr","locations":[{"start":{"line":28,"column":6},"end":{"line":28,"column":17}},{"start":{"line":28,"column":21},"end":{"line":28,"column":32}}],"line":28},"8":{"loc":{"start":{"line":41,"column":6},"end":{"line":41,"column":137}},"type":"cond-expr","locations":[{"start":{"line":41,"column":52},"end":{"line":41,"column":95}},{"start":{"line":41,"column":98},"end":{"line":41,"column":137}}],"line":41},"9":{"loc":{"start":{"line":60,"column":8},"end":{"line":60,"column":142}},"type":"cond-expr","locations":[{"start":{"line":60,"column":55},"end":{"line":60,"column":99}},{"start":{"line":60,"column":102},"end":{"line":60,"column":142}}],"line":60},"10":{"loc":{"start":{"line":62,"column":6},"end":{"line":64,"column":7}},"type":"if","locations":[{"start":{"line":62,"column":6},"end":{"line":64,"column":7}},{"start":{},"end":{}}],"line":62},"11":{"loc":{"start":{"line":80,"column":17},"end":{"line":80,"column":151}},"type":"cond-expr","locations":[{"start":{"line":80,"column":64},"end":{"line":80,"column":108}},{"start":{"line":80,"column":111},"end":{"line":80,"column":151}}],"line":80},"12":{"loc":{"start":{"line":84,"column":6},"end":{"line":86,"column":7}},"type":"if","locations":[{"start":{"line":84,"column":6},"end":{"line":86,"column":7}},{"start":{},"end":{}}],"line":84}},"s":{"0":1,"1":6,"2":6,"3":6,"4":6,"5":1,"6":5,"7":4,"8":1,"9":0,"10":0,"11":1,"12":1,"13":1,"14":1,"15":0,"16":1,"17":1,"18":1,"19":1,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":1,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":1,"37":0,"38":1,"39":1,"40":0,"41":0,"42":0,"43":0,"44":0,"45":1,"46":1,"47":1},"f":{"0":6,"1":0,"2":1,"3":0,"4":1,"5":0,"6":0,"7":0,"8":1,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0},"b":{"0":[0],"1":[0],"2":[0],"3":[0],"4":[0],"5":[1,5],"6":[4,1],"7":[5,5],"8":[1,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0]},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/Slider.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo, useCallback } from \"react\";\nimport {\n View,\n TouchableWithoutFeedback,\n Animated,\n StyleSheet,\n Dimensions,\n GestureResponderEvent,\n PanResponder,\n LayoutChangeEvent,\n PanResponderGestureState,\n} from \"react-native\";\n\nimport { RedsSlider, SliderDefaultProps } from \"./interface/index\";\nimport styles from \"./styles\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\n\nconst Slider = ({\n defaultValue,\n min = 0,\n max = 100,\n initalValue = 0,\n onValueChange,\n dotStyle = {},\n step = 1,\n}: RedsSlider) => {\n useMounted(\"Slider\");\n const [sliderWidth, setSliderWidth] = useState(Dimensions.get(\"window\").width);\n const [value, setValue] = useState(initalValue);\n\n if (max < min) {\n return;\n }\n if (value < min || value > max) {\n return;\n }\n\n // 添加一个函数来计算最接近的step值\n const getSteppedValue = useCallback(\n (rawValue: number) => {\n const steppedValue = Math.round((rawValue - min) / step) * step + min;\n return Math.max(min, Math.min(max, steppedValue));\n },\n [min, max, step],\n );\n\n const animatedValue = useRef(new Animated.Value((initalValue * sliderWidth) / (max - min))).current;\n\n const animatedThumbValue = useRef(\n new Animated.Value(\n (initalValue * sliderWidth) / (max - min) > 0\n ? (initalValue * sliderWidth) / (max - min) - 8\n : (initalValue * sliderWidth) / (max - min),\n ),\n ).current;\n\n useEffect(() => {\n const handleOrientationChange = () => {\n setSliderWidth(Dimensions.get(\"window\").width);\n };\n\n const subscription = Dimensions.addEventListener(\"change\", handleOrientationChange);\n return () => {\n subscription.remove();\n };\n }, []);\n\n // 可以根据需要调整的滑块高度\n const hanleValueUpdate = useCallback(\n (gestureState: PanResponderGestureState) => {\n // 计算原始值\n const rawValue = Math.max(min, Math.min(max, (gestureState.dx / sliderWidth) * (max - min) + initalValue));\n // 根据step计算实际值\n const steppedValue = getSteppedValue(rawValue);\n\n setValue(steppedValue);\n animatedValue.setValue((steppedValue * sliderWidth) / (max - min));\n animatedThumbValue.setValue(\n (steppedValue * sliderWidth) / (max - min) > 0\n ? (steppedValue * sliderWidth) / (max - min) - 8\n : (steppedValue * sliderWidth) / (max - min),\n );\n\n if (onValueChange) {\n onValueChange(steppedValue);\n }\n },\n [min, max, sliderWidth, initalValue, step, getSteppedValue, onValueChange],\n );\n\n // 添加点击轨道跳转功能(可选)\n const handleTrackPress = useCallback(\n (event: GestureResponderEvent) => {\n const { locationX } = event.nativeEvent;\n const rawValue = (locationX / sliderWidth) * (max - min) + min;\n const steppedValue = getSteppedValue(rawValue);\n\n setValue(steppedValue);\n\n // 使用动画过渡到新位置\n Animated.timing(animatedValue, {\n toValue: (steppedValue * sliderWidth) / (max - min),\n duration: 200,\n useNativeDriver: false,\n }).start();\n\n Animated.timing(animatedThumbValue, {\n toValue:\n (steppedValue * sliderWidth) / (max - min) > 0\n ? (steppedValue * sliderWidth) / (max - min) - 8\n : (steppedValue * sliderWidth) / (max - min),\n duration: 200,\n useNativeDriver: false,\n }).start();\n\n if (onValueChange) {\n onValueChange(steppedValue);\n }\n },\n [sliderWidth, min, max, getSteppedValue, onValueChange, animatedValue, animatedThumbValue],\n );\n\n const handleLayout = (event: LayoutChangeEvent) => {\n setSliderWidth(event.nativeEvent.layout.width);\n };\n\n const panResponder = useMemo(\n () =>\n PanResponder.create({\n onStartShouldSetPanResponder: () => true,\n onMoveShouldSetPanResponder: () => true,\n onPanResponderGrant: () => true,\n onPanResponderRelease: () => true,\n onPanResponderTerminate: () => {},\n onPanResponderMove: (evt, gestureState) => {\n hanleValueUpdate(gestureState);\n },\n }),\n [hanleValueUpdate],\n );\n\n const styles = StyleSheet.create({\n sliderContainer: {\n flexDirection: \"row\",\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n trackContainer: {\n width: \"100%\",\n height: 4,\n backgroundColor: \"rgba(48, 48, 52, 0.20)\",\n borderRadius: 2,\n },\n coloredTrack: {\n height: 4,\n backgroundColor: \"#FF2442\",\n borderRadius: 2,\n },\n thumbButton: {\n width: 16,\n height: 16,\n position: \"absolute\",\n top: -8,\n borderRadius: 10,\n backgroundColor: \"#FFF\",\n shadowColor: \"rgba(0, 0, 0, 0.20)\",\n shadowOffset: { width: 0, height: 1 },\n shadowOpacity: 1,\n shadowRadius: 4,\n //Android\n elevation: 2,\n },\n });\n\n return (\n <View style={styles.sliderContainer}>\n <View style={styles.trackContainer} onLayout={handleLayout}>\n {/* 添加可点击的轨道 */}\n <TouchableWithoutFeedback onPress={handleTrackPress}>\n <View style={{ position: \"absolute\", width: \"100%\", height: 4 }} />\n </TouchableWithoutFeedback>\n\n <Animated.View style={[styles.coloredTrack, { width: animatedValue }]} />\n <Animated.View\n style={[styles.thumbButton, { transform: [{ translateX: animatedThumbValue }] }, dotStyle]}\n {...panResponder.panHandlers}\n hitSlop={{ top: 20, bottom: 20, left: 20, right: 20 }}\n />\n </View>\n </View>\n );\n};\n\nSlider.defaultProps = SliderDefaultProps;\nexport default Slider;\n"],"mappings":"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","names":["styles"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"bb8e8c60e780502865b65f9153dc5f0487bdde09"},"/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/index.ts","statementMap":{},"fnMap":{},"branchMap":{},"s":{},"f":{},"b":{},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/Slider/index.ts"],"sourcesContent":["import Slider from \"./Slider\";\nimport * as SliderType from \"./interface\";\n\nexport default Slider;\nexport { Slider, SliderType };\n"],"mappings":"AAAA,OAAO,YAAY;AACnB,YAAY,gBAAgB;AAE5B,eAAe;AACf,SAAS,QAAQ;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"965e3e86e29a6baa46b35c44e0147975dff717b9"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"/builds/fe/infra/reds/packages/reds-rn/src/components/
|
|
1
|
+
{"/builds/fe/infra/reds/packages/reds-rn/src/components/CheckBoxGroup/interface/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/CheckBoxGroup/interface/index.ts","statementMap":{"0":{"start":{"line":1,"column":49},"end":{"line":5,"column":29}},"1":{"start":{"line":2,"column":2},"end":{"line":2,"column":52}},"2":{"start":{"line":3,"column":2},"end":{"line":3,"column":48}},"3":{"start":{"line":4,"column":2},"end":{"line":4,"column":30}},"4":{"start":{"line":6,"column":47},"end":{"line":10,"column":27}},"5":{"start":{"line":7,"column":2},"end":{"line":7,"column":40}},"6":{"start":{"line":8,"column":2},"end":{"line":8,"column":38}},"7":{"start":{"line":9,"column":2},"end":{"line":9,"column":28}},"8":{"start":{"line":11,"column":47},"end":{"line":16,"column":27}},"9":{"start":{"line":12,"column":2},"end":{"line":12,"column":40}},"10":{"start":{"line":13,"column":2},"end":{"line":13,"column":42}},"11":{"start":{"line":14,"column":2},"end":{"line":14,"column":40}},"12":{"start":{"line":15,"column":2},"end":{"line":15,"column":28}},"13":{"start":{"line":17,"column":43},"end":{"line":22,"column":23}},"14":{"start":{"line":18,"column":2},"end":{"line":18,"column":34}},"15":{"start":{"line":19,"column":2},"end":{"line":19,"column":34}},"16":{"start":{"line":20,"column":2},"end":{"line":20,"column":34}},"17":{"start":{"line":21,"column":2},"end":{"line":21,"column":24}},"18":{"start":{"line":23,"column":41},"end":{"line":30,"column":1}},"19":{"start":{"line":31,"column":40},"end":{"line":37,"column":1}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":1,"column":50},"end":{"line":1,"column":51}},"loc":{"start":{"line":1,"column":76},"end":{"line":5,"column":1}},"line":1},"1":{"name":"(anonymous_1)","decl":{"start":{"line":6,"column":48},"end":{"line":6,"column":49}},"loc":{"start":{"line":6,"column":72},"end":{"line":10,"column":1}},"line":6},"2":{"name":"(anonymous_2)","decl":{"start":{"line":11,"column":48},"end":{"line":11,"column":49}},"loc":{"start":{"line":11,"column":72},"end":{"line":16,"column":1}},"line":11},"3":{"name":"(anonymous_3)","decl":{"start":{"line":17,"column":44},"end":{"line":17,"column":45}},"loc":{"start":{"line":17,"column":64},"end":{"line":22,"column":1}},"line":17}},"branchMap":{"0":{"loc":{"start":{"line":5,"column":3},"end":{"line":5,"column":28}},"type":"binary-expr","locations":[{"start":{"line":5,"column":3},"end":{"line":5,"column":22}},{"start":{"line":5,"column":26},"end":{"line":5,"column":28}}],"line":5},"1":{"loc":{"start":{"line":10,"column":3},"end":{"line":10,"column":26}},"type":"binary-expr","locations":[{"start":{"line":10,"column":3},"end":{"line":10,"column":20}},{"start":{"line":10,"column":24},"end":{"line":10,"column":26}}],"line":10},"2":{"loc":{"start":{"line":16,"column":3},"end":{"line":16,"column":26}},"type":"binary-expr","locations":[{"start":{"line":16,"column":3},"end":{"line":16,"column":20}},{"start":{"line":16,"column":24},"end":{"line":16,"column":26}}],"line":16},"3":{"loc":{"start":{"line":22,"column":3},"end":{"line":22,"column":22}},"type":"binary-expr","locations":[{"start":{"line":22,"column":3},"end":{"line":22,"column":16}},{"start":{"line":22,"column":20},"end":{"line":22,"column":22}}],"line":22}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1},"f":{"0":1,"1":1,"2":1,"3":1},"b":{"0":[1,1],"1":[1,1],"2":[1,1],"3":[1,1]},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/CheckBoxGroup/interface/index.ts"],"sourcesContent":["import { ViewStyle, TextStyle } from \"react-native\";\nimport { ReactNode } from \"react\";\n\nexport interface CheckBoxGroupOption {\n label: string;\n value: string | number;\n}\n\nexport const enum CheckBoxGroupLayout {\n HORIZONTAL = \"horizontal\",\n VERTICAL = \"vertical\",\n}\n\nexport const enum CheckBoxPlacement {\n RIGHT = \"right\",\n LEFT = \"left\",\n}\n\nexport const enum CheckBoxGroupSize {\n SMALL = \"small\",\n MEDIUM = \"medium\",\n LARGE = \"large\",\n}\n\nexport const enum CheckedStatus {\n FULL = \"full\",\n HALF = \"half\",\n NONE = \"none\",\n}\nexport interface RedsCheckBoxGroup {\n value?: string[] | number[];\n options?: CheckBoxGroupOption[];\n disable?: boolean;\n full?: boolean;\n fullText?: string;\n fullContainerStyle?: ViewStyle;\n checkboxStyle?: ViewStyle;\n layout?: CheckBoxGroupLayout;\n size?: CheckBoxGroupSize;\n onChange?: (value: string[] | number[]) => void;\n children?: ReactNode[];\n}\n\nexport interface RedsCheckBoxGroupEvent {}\nexport const CheckBoxGroupDefaultProps = {\n value: [],\n options: [],\n disable: false,\n full: false,\n layout: CheckBoxGroupLayout.HORIZONTAL,\n size: CheckBoxGroupSize.LARGE,\n};\n\nexport interface RedsCheckBox {\n value: string | number;\n label?: string;\n placement?: CheckBoxPlacement;\n disable?: boolean;\n checked?: boolean;\n layout?: CheckBoxGroupLayout;\n style?: ViewStyle;\n size?: CheckBoxGroupSize;\n onChange?: (value: string | number, checked: boolean) => void;\n isControl?: boolean;\n labelStyle?: ViewStyle;\n labelTextStyle?: TextStyle;\n isGroup?: boolean;\n checkboxStyle?: ViewStyle;\n}\n\nexport const RedsCheckBoxDefaultProps = {\n placement: CheckBoxPlacement.RIGHT,\n layout: CheckBoxGroupLayout.HORIZONTAL,\n size: CheckBoxGroupSize.MEDIUM,\n isControl: true,\n isGroup: false,\n};\n\nexport interface ICheckBoxGroupContext {\n checkList: number[] | string[];\n}\n"],"mappings":"AAQO,WAAW,sBAAX,kBAAWA,yBAAX;AACL,EAAAA,qBAAA,gBAAa;AACb,EAAAA,qBAAA,cAAW;AAFK,SAAAA;AAAA,GAAA;AAKX,WAAW,oBAAX,kBAAWC,uBAAX;AACL,EAAAA,mBAAA,WAAQ;AACR,EAAAA,mBAAA,UAAO;AAFS,SAAAA;AAAA,GAAA;AAKX,WAAW,oBAAX,kBAAWC,uBAAX;AACL,EAAAA,mBAAA,WAAQ;AACR,EAAAA,mBAAA,YAAS;AACT,EAAAA,mBAAA,WAAQ;AAHQ,SAAAA;AAAA,GAAA;AAMX,WAAW,gBAAX,kBAAWC,mBAAX;AACL,EAAAA,eAAA,UAAO;AACP,EAAAA,eAAA,UAAO;AACP,EAAAA,eAAA,UAAO;AAHS,SAAAA;AAAA,GAAA;AAoBX,aAAM,4BAA4B;AAAA,EACvC,OAAO,CAAC;AAAA,EACR,SAAS,CAAC;AAAA,EACV,SAAS;AAAA,EACT,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,MAAM;AACR;AAmBO,aAAM,2BAA2B;AAAA,EACtC,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,WAAW;AAAA,EACX,SAAS;AACX;","names":["CheckBoxGroupLayout","CheckBoxPlacement","CheckBoxGroupSize","CheckedStatus"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"fc7c8b5a271c82ad6926938b49b00c3dfd14f542"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"/builds/fe/infra/reds/packages/reds-rn/src/components/
|
|
1
|
+
{"/builds/fe/infra/reds/packages/reds-rn/src/components/Result/interface/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/Result/interface/index.ts","statementMap":{"0":{"start":{"line":1,"column":34},"end":{"line":5,"column":1}}},"fnMap":{},"branchMap":{},"s":{"0":1},"f":{},"b":{},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/Result/interface/index.ts"],"sourcesContent":["import { ReactNode } from \"react\";\nexport interface RedsResult {\n type?: \"Success\" | \"Warning\" | \"Info\";\n title?: string;\n description?: string;\n action?: ReactNode;\n image?: ReactNode;\n}\n\nexport const ResultDefaultProps = {\n type: \"Success\",\n title: \"\",\n description: \"\",\n};\n"],"mappings":"AASO,aAAM,qBAAqB;AAAA,EAChC,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aAAa;AACf;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"c0f65f92a08822d9008c6c1f1b6e41d7eb3260c5"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"/builds/fe/infra/reds/packages/reds-rn/src/components/
|
|
1
|
+
{"/builds/fe/infra/reds/packages/reds-rn/src/components/Badge/interface/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/Badge/interface/index.ts","statementMap":{"0":{"start":{"line":1,"column":33},"end":{"line":10,"column":1}}},"fnMap":{},"branchMap":{},"s":{"0":1},"f":{},"b":{},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/Badge/interface/index.ts"],"sourcesContent":["import { GestureResponderEvent } from \"react-native\";\nimport { lightColor } from \"@xhs/reds-token-next\";\nexport interface RedsBadge {\n content?: number | string;\n color?: string;\n dot?: boolean;\n max?: number | string;\n offset?: [number | string, number | string];\n showZero?: boolean;\n position?: \"topLeft\" | \"centerLeft\" | \"centerRight\" | \"topCenter\" | \"centerCenter\";\n children?: any;\n}\n\nexport interface RedsBadgeEvent {}\nexport const BadgeDefaultProps = {\n content: undefined,\n color: undefined,\n dot: false,\n max: undefined,\n offset: undefined,\n showZero: true,\n position: \"topLeft\",\n children: undefined,\n};\n"],"mappings":"AAcO,aAAM,oBAAoB;AAAA,EAC/B,SAAS;AAAA,EACT,OAAO;AAAA,EACP,KAAK;AAAA,EACL,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AACZ;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"4a7de1e70bcb88874b26f4354b9147824dc8d870"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"/builds/fe/infra/reds/packages/reds-rn/src/components/
|
|
1
|
+
{"/builds/fe/infra/reds/packages/reds-rn/src/components/Tab/interface/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/Tab/interface/index.ts","statementMap":{"0":{"start":{"line":1,"column":42},"end":{"line":6,"column":22}},"1":{"start":{"line":2,"column":2},"end":{"line":2,"column":41}},"2":{"start":{"line":3,"column":2},"end":{"line":3,"column":43}},"3":{"start":{"line":4,"column":2},"end":{"line":4,"column":35}},"4":{"start":{"line":5,"column":2},"end":{"line":5,"column":23}},"5":{"start":{"line":7,"column":41},"end":{"line":12,"column":21}},"6":{"start":{"line":8,"column":2},"end":{"line":8,"column":34}},"7":{"start":{"line":9,"column":2},"end":{"line":9,"column":36}},"8":{"start":{"line":10,"column":2},"end":{"line":10,"column":34}},"9":{"start":{"line":11,"column":2},"end":{"line":11,"column":22}},"10":{"start":{"line":13,"column":42},"end":{"line":17,"column":22}},"11":{"start":{"line":14,"column":2},"end":{"line":14,"column":43}},"12":{"start":{"line":15,"column":2},"end":{"line":15,"column":33}},"13":{"start":{"line":16,"column":2},"end":{"line":16,"column":23}},"14":{"start":{"line":18,"column":43},"end":{"line":24,"column":23}},"15":{"start":{"line":19,"column":2},"end":{"line":19,"column":34}},"16":{"start":{"line":20,"column":2},"end":{"line":20,"column":38}},"17":{"start":{"line":21,"column":2},"end":{"line":21,"column":36}},"18":{"start":{"line":22,"column":2},"end":{"line":22,"column":36}},"19":{"start":{"line":23,"column":2},"end":{"line":23,"column":24}},"20":{"start":{"line":25,"column":31},"end":{"line":37,"column":1}},"21":{"start":{"line":38,"column":32},"end":{"line":47,"column":1}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":1,"column":43},"end":{"line":1,"column":44}},"loc":{"start":{"line":1,"column":62},"end":{"line":6,"column":1}},"line":1},"1":{"name":"(anonymous_1)","decl":{"start":{"line":7,"column":42},"end":{"line":7,"column":43}},"loc":{"start":{"line":7,"column":60},"end":{"line":12,"column":1}},"line":7},"2":{"name":"(anonymous_2)","decl":{"start":{"line":13,"column":43},"end":{"line":13,"column":44}},"loc":{"start":{"line":13,"column":62},"end":{"line":17,"column":1}},"line":13},"3":{"name":"(anonymous_3)","decl":{"start":{"line":18,"column":44},"end":{"line":18,"column":45}},"loc":{"start":{"line":18,"column":64},"end":{"line":24,"column":1}},"line":18}},"branchMap":{"0":{"loc":{"start":{"line":6,"column":3},"end":{"line":6,"column":21}},"type":"binary-expr","locations":[{"start":{"line":6,"column":3},"end":{"line":6,"column":15}},{"start":{"line":6,"column":19},"end":{"line":6,"column":21}}],"line":6},"1":{"loc":{"start":{"line":12,"column":3},"end":{"line":12,"column":20}},"type":"binary-expr","locations":[{"start":{"line":12,"column":3},"end":{"line":12,"column":14}},{"start":{"line":12,"column":18},"end":{"line":12,"column":20}}],"line":12},"2":{"loc":{"start":{"line":17,"column":3},"end":{"line":17,"column":21}},"type":"binary-expr","locations":[{"start":{"line":17,"column":3},"end":{"line":17,"column":15}},{"start":{"line":17,"column":19},"end":{"line":17,"column":21}}],"line":17},"3":{"loc":{"start":{"line":24,"column":3},"end":{"line":24,"column":22}},"type":"binary-expr","locations":[{"start":{"line":24,"column":3},"end":{"line":24,"column":16}},{"start":{"line":24,"column":20},"end":{"line":24,"column":22}}],"line":24}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1},"f":{"0":1,"1":1,"2":1,"3":1},"b":{"0":[1,1],"1":[1,1],"2":[1,1],"3":[1,1]},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/Tab/interface/index.ts"],"sourcesContent":["import { ReactNode } from \"react\";\nimport { ImageStyle, TextStyle } from \"react-native\";\nimport { RedsIcon } from \"../../Icon/interface\";\nimport { RedsBadge } from \"../../Badge/interface\";\nexport interface TabItemType {\n name?: string;\n image?: string;\n activeImage?: string;\n imageStyle?: ImageStyle;\n value: string;\n iconProps?: RedsIcon;\n badgeProps?: any;\n labelNumber?: number;\n}\n\nexport const enum TabLabelType {\n leftIcon = \"leftIcon\",\n rightIcon = \"rightIcon\",\n digit = \"digit\",\n}\nexport const enum TabSizeType {\n small = \"small\",\n normal = \"normal\",\n large = \"large\",\n}\n\nexport const enum TabThemeType {\n underline = \"underline\",\n text = \"text\",\n}\n\nexport const enum TabLayoutType {\n left = \"left\",\n middle = \"middle\",\n space = \"space\",\n right = \"right\",\n}\nexport interface RedsTab {\n theme?: TabThemeType;\n size?: TabSizeType;\n labelType?: TabLabelType;\n layout?: TabLayoutType;\n badge?: boolean;\n containerStyle?: any;\n onChange?: (value: string, index: number) => any;\n spaceWidth?: number;\n tabPadding?: number;\n active?: string;\n children: ReactNode[];\n key?: string | number;\n contentOffset?: number;\n textStyle?: TextStyle;\n activeTextStyle?: TextStyle;\n}\n\nexport interface RedsTabEvent {}\nexport const TabDefaultProps = {\n theme: TabThemeType.underline,\n size: TabSizeType.normal,\n labelType: TabLabelType.leftIcon,\n layout: TabLayoutType.left,\n badge: false,\n spaceWidth: 12,\n tabPadding: 0,\n active: \"\",\n contentOffset: 0,\n textStyle: {},\n activeTextStyle: {},\n};\n\nexport interface TabChild {\n name?: string;\n image?: string;\n imageStyle?: ImageStyle;\n activeImage?: string;\n value: string;\n labelNumber?: number;\n iconProps?: RedsIcon;\n badgeProps?: RedsBadge;\n children: ReactNode;\n}\nexport interface RedsTabs {\n theme?: TabThemeType;\n size?: TabSizeType;\n labelType?: TabLabelType;\n layout?: TabLayoutType;\n badge?: boolean;\n containerStyle?: any;\n onChange?: (value: string, index: number) => any;\n spaceWidth?: number;\n tabPadding?: number;\n active?: string;\n children: ReactNode[];\n}\n\nexport const TabsDefaultProps = {\n theme: TabThemeType.underline,\n size: TabSizeType.normal,\n labelType: TabLabelType.leftIcon,\n layout: TabLayoutType.space,\n badge: false,\n spaceWidth: 12,\n tabPadding: 24,\n active: \"\",\n};\n"],"mappings":"AAeO,WAAW,eAAX,kBAAWA,kBAAX;AACL,EAAAA,cAAA,cAAW;AACX,EAAAA,cAAA,eAAY;AACZ,EAAAA,cAAA,WAAQ;AAHQ,SAAAA;AAAA,GAAA;AAKX,WAAW,cAAX,kBAAWC,iBAAX;AACL,EAAAA,aAAA,WAAQ;AACR,EAAAA,aAAA,YAAS;AACT,EAAAA,aAAA,WAAQ;AAHQ,SAAAA;AAAA,GAAA;AAMX,WAAW,eAAX,kBAAWC,kBAAX;AACL,EAAAA,cAAA,eAAY;AACZ,EAAAA,cAAA,UAAO;AAFS,SAAAA;AAAA,GAAA;AAKX,WAAW,gBAAX,kBAAWC,mBAAX;AACL,EAAAA,eAAA,UAAO;AACP,EAAAA,eAAA,YAAS;AACT,EAAAA,eAAA,WAAQ;AACR,EAAAA,eAAA,WAAQ;AAJQ,SAAAA;AAAA,GAAA;AAyBX,aAAM,kBAAkB;AAAA,EAC7B,OAAO;AAAA,EACP,MAAM;AAAA,EACN,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,eAAe;AAAA,EACf,WAAW,CAAC;AAAA,EACZ,iBAAiB,CAAC;AACpB;AA2BO,aAAM,mBAAmB;AAAA,EAC9B,OAAO;AAAA,EACP,MAAM;AAAA,EACN,WAAW;AAAA,EACX,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,QAAQ;AACV;","names":["TabLabelType","TabSizeType","TabThemeType","TabLayoutType"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"94c9502f2b3612dd537ea197077b6f626891006b"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"/builds/fe/infra/reds/packages/reds-rn/src/components/
|
|
1
|
+
{"/builds/fe/infra/reds/packages/reds-rn/src/components/TextView/interface/index.ts":{"path":"/builds/fe/infra/reds/packages/reds-rn/src/components/TextView/interface/index.ts","statementMap":{"0":{"start":{"line":1,"column":36},"end":{"line":13,"column":1}}},"fnMap":{},"branchMap":{},"s":{"0":1},"f":{},"b":{},"inputSourceMap":{"version":3,"sources":["/builds/fe/infra/reds/packages/reds-rn/src/components/TextView/interface/index.ts"],"sourcesContent":["import { ViewStyle } from \"react-native\";\ntype inputTypeRN = \"default\" | \"number-pad\" | \"decimal-pad\" | \"numeric\" | \"email-address\" | \"phone-pad\" | \"url\";\nexport interface RedsTextView {\n modelValue?: string;\n placeholder?: string;\n layout?: \"primary\" | \"normal\" | \"basic\";\n type?: inputTypeRN;\n maxLength?: number;\n showCount?: boolean;\n isFormItem?: boolean;\n disabled?: boolean;\n readonly?: boolean;\n clearable?: boolean;\n autofocus?: boolean;\n rows?: number;\n style?: ViewStyle;\n onChange?: (value: string) => any;\n onClear?: (value: string) => any;\n onFocus?: (event: any) => any;\n onBlur?: (event: any) => any;\n containerStyle?: ViewStyle;\n actionLayout?: \"horizontal\" | \"vertical\";\n placeholderTextColor?: String;\n ref?: any;\n returnKeyType?: string;\n onSubmitEditing?: () => void;\n}\n\nexport const TextViewDefaultProps = {\n layout: \"basic\",\n type: \"default\" as inputTypeRN,\n showCount: false,\n isFormItem: false,\n disabled: false,\n readonly: false,\n clearable: false,\n autofocus: false,\n rows: 3,\n actionLayout: \"vertical\",\n returnKeyType: \"next\",\n};\n"],"mappings":"AA4BO,aAAM,uBAAuB;AAAA,EAClC,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EACX,MAAM;AAAA,EACN,cAAc;AAAA,EACd,eAAe;AACjB;","names":[]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"c22d4028256df8ef10d5d9ab5d49aa48b4fff907"}}
|
|
@@ -15,8 +15,8 @@ require('../../Portal/core/PortalContext.js');
|
|
|
15
15
|
require('../../../pvCount/useUnmountedProcess.js');
|
|
16
16
|
require('@xhs/reds-apm/src/index.native');
|
|
17
17
|
require('../../../pvCount/pvData.js');
|
|
18
|
-
require('react-native');
|
|
19
18
|
require('../../Portal/core/hooks/usePortalState.js');
|
|
19
|
+
require('react-native');
|
|
20
20
|
require('../../ConfigProvider/hooks/ConfigCache/ConfigCache.js');
|
|
21
21
|
require('@xhsreds/reds-token-next');
|
|
22
22
|
require('../../ConfigProvider/hooks/themeToken/useThemeToken.js');
|
|
@@ -177,11 +177,12 @@ var Image = function Image(_ref) {
|
|
|
177
177
|
};
|
|
178
178
|
var colorMode = components_ConfigProvider_hooks_themeToken_useColorMode.useColorMode();
|
|
179
179
|
return /* @__PURE__ */React.createElement(reactNative.View, {
|
|
180
|
-
style: _rollupPluginBabelHelpers._objectSpread2({
|
|
181
|
-
borderRadius: borderRadius
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
180
|
+
style: _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({
|
|
181
|
+
borderRadius: borderRadius || (style === null || style === void 0 ? void 0 : style.borderRadius)
|
|
182
|
+
}, style), {}, {
|
|
183
|
+
height: (height || (style === null || style === void 0 ? void 0 : style.height) || 0) + ((style === null || style === void 0 ? void 0 : style.borderWidth) || 0) * 2,
|
|
184
|
+
width: (width || (style === null || style === void 0 ? void 0 : style.width) || 0) + ((style === null || style === void 0 ? void 0 : style.borderWidth) || 0) * 2
|
|
185
|
+
})
|
|
185
186
|
}, imageStatus !== components_Image_interface_index.IMAGE_STATUS.HIDE && /* @__PURE__ */React.createElement(reactNative.Image, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, props), {}, {
|
|
186
187
|
source: formatSource,
|
|
187
188
|
onLoadStart: onLoadStart,
|
|
@@ -196,24 +197,24 @@ var Image = function Image(_ref) {
|
|
|
196
197
|
style: {
|
|
197
198
|
width: width || (style === null || style === void 0 ? void 0 : style.width),
|
|
198
199
|
height: height || (style === null || style === void 0 ? void 0 : style.height),
|
|
199
|
-
borderRadius: borderRadius
|
|
200
|
+
borderRadius: borderRadius || (style === null || style === void 0 ? void 0 : style.borderRadius)
|
|
200
201
|
// opacity: imageStatus === IMAGE_STATUS.LOADED ? 1 : 0,
|
|
201
202
|
},
|
|
202
203
|
apmBiz: props.apmBiz
|
|
203
204
|
})), imageStatus === components_Image_interface_index.IMAGE_STATUS.LOADING && loadStyle !== components_Image_interface_index.TLoadStyle.NONE && /* @__PURE__ */React.createElement(reactNative.View, {
|
|
204
205
|
style: _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({
|
|
205
|
-
width: width,
|
|
206
|
-
height: height,
|
|
207
|
-
borderRadius: borderRadius
|
|
206
|
+
width: width || (style === null || style === void 0 ? void 0 : style.width),
|
|
207
|
+
height: height || (style === null || style === void 0 ? void 0 : style.height),
|
|
208
|
+
borderRadius: borderRadius || (style === null || style === void 0 ? void 0 : style.borderRadius)
|
|
208
209
|
}, components_Image_styles.default.loadingContainer), {}, {
|
|
209
210
|
backgroundColor: loadStyle === components_Image_interface_index.TLoadStyle.AVE ? aveColor : components_Image_styles.default.loadingContainer.backgroundColor
|
|
210
|
-
}
|
|
211
|
+
})
|
|
211
212
|
}, loadStyle === components_Image_interface_index.TLoadStyle.BLUR && /* @__PURE__ */React.createElement(reactNative.Image, {
|
|
212
213
|
source: blurSource,
|
|
213
214
|
style: {
|
|
214
215
|
width: width || (style === null || style === void 0 ? void 0 : style.width),
|
|
215
216
|
height: height || (style === null || style === void 0 ? void 0 : style.height),
|
|
216
|
-
borderRadius: borderRadius
|
|
217
|
+
borderRadius: borderRadius || (style === null || style === void 0 ? void 0 : style.borderRadius)
|
|
217
218
|
},
|
|
218
219
|
apmBiz: props.apmBiz
|
|
219
220
|
}), loadStyle === components_Image_interface_index.TLoadStyle.LOADING && /* @__PURE__ */React.createElement(components_Image_CircularProgress.default, {
|
|
@@ -225,8 +226,7 @@ var Image = function Image(_ref) {
|
|
|
225
226
|
},
|
|
226
227
|
style: _rollupPluginBabelHelpers._objectSpread2({
|
|
227
228
|
width: width,
|
|
228
|
-
height: height
|
|
229
|
-
borderRadius: borderRadius
|
|
229
|
+
height: height
|
|
230
230
|
}, components_Image_styles.default.loadingContainer)
|
|
231
231
|
}, /* @__PURE__ */React.createElement(reactNative.Image, {
|
|
232
232
|
style: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.js","sources":["../../../../src/components/Image/Image.tsx"],"sourcesContent":["import React, { useState, memo, useMemo, useRef, useCallback, useEffect } from \"react\";\nimport {\n View,\n Image as RNImage,\n GestureResponderEvent,\n ImageProps,\n TouchableOpacity,\n ImageLoadEventData,\n NativeSyntheticEvent,\n ImageErrorEventData,\n ImageProgressEventDataIOS,\n ImageSourcePropType,\n ImageURISource,\n} from \"react-native\";\nimport {\n RedsImage,\n ImageDefaultProps,\n IMAGE_STATUS,\n TErrorStyle,\n TLoadStyle,\n ImageTrackerProps,\n} from \"./interface/index\";\nimport styles from \"./styles\";\nimport { useAveColor, useBlur } from \"./hook\";\nimport CircularProgress from \"./CircularProgress\";\nimport { useColorMode } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { lightColor } from \"@xhsreds/reds-token-next\";\nimport { formatUri, isDataUri, isLocalFile, convertKeysToSnakeCase } from \"./utils\";\nimport { apmPush } from \"./apm\";\nimport { queryCacheBatched } from \"./queryCacheBatcher\";\n\nconst imageReLoad = {\n light: \"https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png\",\n dark: \"https://picasso-static.xiaohongshu.com/fe-platform/4f9bfbf2358aa970f1ec3dbf4ba5ff9355b7a41e.png\",\n platformLight: \"https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png\",\n};\n\nconst imageError = {\n light: \"https://picasso-static.xiaohongshu.com/fe-platform/76fee5bba4ce3bbf3e9ff5fe1935b737bb27625a.png\",\n dark: \"https://picasso-static.xiaohongshu.com/fe-platform/7d8debb5e2c3a1f37299a292342b77d479be6f28.png\",\n platformLight: \"https://picasso-static.xiaohongshu.com/fe-platform/76fee5bba4ce3bbf3e9ff5fe1935b737bb27625a.png\",\n};\n\nconst Image = ({\n src,\n source: _source,\n width,\n height,\n borderRadius,\n errorStyle,\n loadStyle,\n style,\n abortApmCollection,\n fadeDuration,\n onFirstDrawFinished,\n ...props\n}: RedsImage & Omit<ImageProps, keyof RedsImage>) => {\n // useMounted(\"Image\");\n const [imageStatus, setImageStatus] = useState(IMAGE_STATUS.LOADING);\n const [progress, setProgress] = useState(0);\n const mountTimeRef = useRef<number>(Date.now());\n\n const formatSource = useMemo(() => {\n // @ts-ignore\n if (_source) return _source as ImageSourcePropType;\n // @ts-ignore\n return { uri: src } as ImageSourcePropType;\n }, [src, _source]);\n\n const aveColor = useAveColor({\n source: formatSource,\n defaultColor: lightColor.Fill1,\n loadingAve: loadStyle === TLoadStyle.AVE,\n });\n\n const blurSource = useBlur({ source: formatSource });\n\n // Visibility tracking removed: no longer needed for APM\n const apmDataRef = useRef<ImageTrackerProps>({\n imageUrl: \"\",\n imageHost: \"\",\n intersectTime: 0,\n imageSize: 0,\n isFirstScreen: \"false\",\n isPrefetch: \"\",\n isSuccess: \"false\",\n errorReason: \"\",\n loadedStartTime: 0,\n loadedTime: 0,\n loadDuration: 0,\n viewDuration: 0,\n });\n const apmDoneRef = useRef(false);\n\n useEffect(() => {\n if (abortApmCollection) return;\n try {\n const apmData = apmDataRef.current;\n if (\n typeof formatSource !== \"number\" &&\n !isLocalFile((formatSource as ImageURISource).uri as string) &&\n !isDataUri((formatSource as ImageURISource).uri as string)\n ) {\n const imageUrl = new URL((formatSource as ImageURISource).uri as string);\n apmData.imageHost = `${imageUrl.protocol}//${imageUrl.host}`;\n apmData.imageUrl = (formatSource as ImageURISource).uri as string;\n }\n } catch (error) {\n //\n }\n }, [formatSource, abortApmCollection]);\n\n useEffect(() => {\n if (abortApmCollection) return;\n const imageUrl = (formatSource as ImageURISource)?.uri || \"\";\n if (!imageUrl) return;\n let alive = true;\n queryCacheBatched(imageUrl)\n .then((isPrefetched) => {\n if (!alive) return;\n apmDataRef.current.isPrefetch = String(isPrefetched);\n })\n .catch(() => {\n if (!alive) return;\n apmDataRef.current.isPrefetch = \"false\";\n });\n return () => {\n alive = false;\n apmDataRef.current.isPrefetch = \"\";\n };\n }, [formatSource, abortApmCollection]);\n\n const pushApmData = useCallback(() => {\n if (abortApmCollection) return;\n const apmData = apmDataRef.current;\n // Simplify: do not track view duration/intersect time\n apmData.intersectTime = 0;\n apmData.viewDuration = 0;\n /**\n * 如果Image.queryCache未完成时,通过imageSize来判断\n * 如果image_size是-1,那么认为图片已有缓存\n */\n const imageSize = apmDataRef.current.imageSize || 0;\n if (!apmDataRef.current.isPrefetch) {\n apmDataRef.current.isPrefetch = String((imageSize || 0) <= 0);\n }\n if (!apmDoneRef.current && apmData.imageUrl && !abortApmCollection) {\n apmDoneRef.current = true;\n apmPush(convertKeysToSnakeCase(apmData));\n }\n }, [abortApmCollection]);\n\n // 判断首屏\n // isFirstScreen stays \"false\" and intersectTime stays 0 by design\n const onLoadEnd = () => {\n props?.onLoadEnd?.();\n if (abortApmCollection) return;\n // Push regardless of visibility/intersect time\n pushApmData();\n };\n\n const onProgress = (e: NativeSyntheticEvent<ImageProgressEventDataIOS>) => {\n const {\n nativeEvent: { total, loaded },\n } = e;\n if (total) {\n setProgress(((loaded / total) * 100) | 0);\n }\n !abortApmCollection && (apmDataRef.current.imageSize = total);\n props.onProgress?.(e);\n };\n const onLoad = (e: NativeSyntheticEvent<ImageLoadEventData>) => {\n if (!abortApmCollection) {\n const now = Date.now();\n let start = apmDataRef.current.loadedStartTime || mountTimeRef.current;\n if (start > now) start = now;\n apmDataRef.current.loadedStartTime = start;\n const loadDuration = now - start;\n apmDataRef.current.loadedTime = now;\n apmDataRef.current.loadDuration = loadDuration < 0 ? 0 : loadDuration;\n apmDataRef.current.isSuccess = \"true\";\n }\n props.onLoad?.(e);\n setImageStatus(IMAGE_STATUS.LOADED);\n };\n\n const onLoadStart = () => {\n !abortApmCollection && (apmDataRef.current.loadedStartTime = Date.now());\n };\n\n const onError = (e: NativeSyntheticEvent<ImageErrorEventData>) => {\n if (!abortApmCollection) {\n apmDataRef.current.isSuccess = \"false\";\n apmDataRef.current.errorReason = `${e.nativeEvent.error}`;\n }\n props.onError?.(e);\n setImageStatus(errorStyle === TErrorStyle.ERROR ? IMAGE_STATUS.LOADERROR : IMAGE_STATUS.RELOAD);\n };\n const onReload = (e: GestureResponderEvent) => {\n setImageStatus(IMAGE_STATUS.HIDE);\n props.onReload?.(e);\n setTimeout(() => {\n setImageStatus(IMAGE_STATUS.LOADING);\n });\n };\n\n const colorMode = useColorMode();\n\n return (\n <View style={{ borderRadius, height, width, ...(style as {}) }}>\n {imageStatus !== IMAGE_STATUS.HIDE && (\n <RNImage\n {...props}\n // @ts-ignore\n source={formatSource}\n onLoadStart={onLoadStart}\n onLoad={onLoad}\n onProgress={onProgress}\n onError={onError}\n onLoadEnd={onLoadEnd}\n fadeDuration={fadeDuration}\n // @ts-ignore\n onFirstDrawFinished={(e) => onFirstDrawFinished(e)}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius,\n // opacity: imageStatus === IMAGE_STATUS.LOADED ? 1 : 0,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n )}\n {imageStatus === IMAGE_STATUS.LOADING && loadStyle !== TLoadStyle.NONE && (\n <View\n style={{\n width,\n height,\n borderRadius,\n ...styles.loadingContainer,\n backgroundColor: loadStyle === TLoadStyle.AVE ? aveColor : styles.loadingContainer.backgroundColor,\n ...style,\n }}\n >\n {loadStyle === TLoadStyle.BLUR && (\n <RNImage\n source={blurSource}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n )}\n {loadStyle === TLoadStyle.LOADING && <CircularProgress progress={progress}></CircularProgress>}\n </View>\n )}\n {(imageStatus === IMAGE_STATUS.LOADERROR || imageStatus === IMAGE_STATUS.RELOAD) &&\n errorStyle !== TErrorStyle.NONE && (\n <TouchableOpacity\n activeOpacity={1}\n onPress={(e) => {\n onReload(e);\n }}\n style={{ width, height, borderRadius, ...styles.loadingContainer }}\n >\n <RNImage\n style={{ width: 40, height: 40 }}\n source={{\n uri: imageStatus === IMAGE_STATUS.RELOAD ? imageReLoad[colorMode] : imageError[colorMode],\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n />\n </TouchableOpacity>\n )}\n </View>\n );\n};\n\nImage.defaultProps = ImageDefaultProps;\n\nexport default memo(Image);\n"],"names":["imageReLoad","light","dark","platformLight","imageError","Image","src","_ref","_source","source","width","height","borderRadius","errorStyle","loadStyle","style","abortApmCollection","fadeDuration","onFirstDrawFinished","props","_objectWithoutProperties","_excluded","_useState","useState","IMAGE_STATUS","LOADING","_useState2","_slicedToArray","imageStatus","setImageStatus","_useState3","_useState4","progress","setProgress","mountTimeRef","useRef","Date","now","formatSource","useMemo","uri","aveColor","useAveColor","defaultColor","lightColor","Fill1","loadingAve","TLoadStyle","AVE","blurSource","useBlur","apmDataRef","imageUrl","imageHost","intersectTime","imageSize","isFirstScreen","isPrefetch","isSuccess","errorReason","loadedStartTime","loadedTime","loadDuration","viewDuration","apmDoneRef","useEffect","apmData","current","isLocalFile","isDataUri","URL","protocol","concat","host","error","alive","queryCacheBatched","then","isPrefetched","String","pushApmData","useCallback","apmPush","convertKeysToSnakeCase","onLoadEnd","_props$onLoadEnd","call","onProgress","e","_props$onProgress","_e$nativeEvent","nativeEvent","total","loaded","onLoad","_props$onLoad","start","LOADED","onLoadStart","onError","_props$onError","TErrorStyle","ERROR","LOADERROR","RELOAD","onReload","_props$onReload","HIDE","setTimeout","colorMode","useColorMode","React","createElement","View","_objectSpread","RNImage","apmBiz","NONE","styles","loadingContainer","backgroundColor","BLUR","CircularProgress","TouchableOpacity","activeOpacity","onPress","defaultProps","ImageDefaultProps","memo"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAgCA,IAAMA,WAAc,GAAA;AAClBC,EAAAA,KAAO,EAAA,iGAAA;AACPC,EAAAA,IAAM,EAAA,iGAAA;AACNC,EAAAA,aAAe,EAAA,iGAAA;AACjB,CAAA,CAAA;AAEA,IAAMC,UAAa,GAAA;AACjBH,EAAAA,KAAO,EAAA,iGAAA;AACPC,EAAAA,IAAM,EAAA,iGAAA;AACNC,EAAAA,aAAe,EAAA,iGAAA;AACjB,CAAA,CAAA;AAEA,IAAME,QAAQ,SAARA,YAa+C;AAAA,EAAA,IAZnDC,GAAA,GAAAC,IAAA,CAAAD,GAAA;IACQE,OAAA,GAAAD,IAAA,CAARE,MAAQ;IACRC,KAAA,GAAAH,IAAA,CAAAG,KAAA;IACAC,MAAA,GAAAJ,IAAA,CAAAI,MAAA;IACAC,YAAA,GAAAL,IAAA,CAAAK,YAAA;IACAC,UAAA,GAAAN,IAAA,CAAAM,UAAA;IACAC,SAAA,GAAAP,IAAA,CAAAO,SAAA;IACAC,KAAA,GAAAR,IAAA,CAAAQ,KAAA;IACAC,kBAAA,GAAAT,IAAA,CAAAS,kBAAA;IACAC,YAAA,GAAAV,IAAA,CAAAU,YAAA;IACAC,oBAAA,GAAAX,IAAA,CAAAW,mBAAA;AACGC,IAAAA,KAAA,GAAAC,kDAAA,CAAAb,IAAA,EAAAc,SAAA,CAAA,CAAA;AAGH,EAAA,IAAAC,SAAA,GAAsCC,cAAA,CAASC,8CAAaC,OAAO,CAAA;IAAAC,UAAA,GAAAC,wCAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAA5DM,IAAAA,WAAa,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAAG,IAAAA,cAAc,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAClC,EAAA,IAAAI,UAAA,GAAgCP,eAAS,CAAC,CAAA;IAAAQ,UAAA,GAAAJ,wCAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAnCE,IAAAA,QAAA,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAUE,IAAAA,WAAW,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;EAC5B,IAAMG,YAAe,GAAAC,YAAA,CAAeC,IAAK,CAAAC,GAAA,EAAK,CAAA,CAAA;AAExC,EAAA,IAAAC,YAAA,GAAeC,cAAQ,YAAM;IAEjC,IAAI/B,SAAgB,OAAAA,OAAA,CAAA;IAEb,OAAA;AAAEgC,MAAAA,KAAKlC,GAAAA;KAAI,CAAA;AACpB,GAAG,EAAA,CAACA,GAAK,EAAAE,OAAO,CAAC,CAAA,CAAA;EAEjB,IAAMiC,WAAWC,uCAAY,CAAA;AAC3BjC,IAAAA,MAAQ,EAAA6B,YAAA;IACRK,cAAcC,wBAAW,CAAAC,KAAA;AACzBC,IAAAA,UAAA,EAAYhC,cAAciC,2CAAW,CAAAC,GAAAA;AACvC,GAAC,CAAA,CAAA;EAED,IAAMC,UAAa,GAAAC,mCAAA,CAAQ;AAAEzC,IAAAA,MAAA,EAAQ6B,YAAAA;AAAa,GAAC,CAAA,CAAA;EAGnD,IAAMa,aAAahB,YAA0B,CAAA;AAC3CiB,IAAAA,QAAU,EAAA,EAAA;AACVC,IAAAA,SAAW,EAAA,EAAA;AACXC,IAAAA,aAAe,EAAA,CAAA;AACfC,IAAAA,SAAW,EAAA,CAAA;AACXC,IAAAA,aAAe,EAAA,OAAA;AACfC,IAAAA,UAAY,EAAA,EAAA;AACZC,IAAAA,SAAW,EAAA,OAAA;AACXC,IAAAA,WAAa,EAAA,EAAA;AACbC,IAAAA,eAAiB,EAAA,CAAA;AACjBC,IAAAA,UAAY,EAAA,CAAA;AACZC,IAAAA,YAAc,EAAA,CAAA;AACdC,IAAAA,YAAc,EAAA,CAAA;AAChB,GAAC,CAAA,CAAA;AACK,EAAA,IAAAC,UAAA,GAAa7B,aAAO,KAAK,CAAA,CAAA;AAE/B8B,EAAAA,eAAA,CAAU,YAAM;AACd,IAAA,IAAIjD,kBAAoB,EAAA,OAAA;IACpB,IAAA;AACF,MAAA,IAAMkD,UAAUf,UAAW,CAAAgB,OAAA,CAAA;MAC3B,IACE,OAAO7B,YAAA,KAAiB,QACxB,IAAA,CAAC8B,kCAAa,CAAA9B,YAAA,CAAgCE,GAAa,CAAA,IAC3D,CAAC6B,gCAAA,CAAW/B,YAAgC,CAAAE,GAAa,CACzD,EAAA;QACA,IAAMY,QAAW,GAAA,IAAIkB,GAAK,CAAAhC,YAAA,CAAgCE,GAAa,CAAA,CAAA;AACvE0B,QAAAA,OAAA,CAAQb,sBAAeD,QAAA,CAASmB,QAAQ,EAAA,IAAA,CAAA,CAAAC,MAAA,CAAKpB,SAASqB,IAAI,CAAA,CAAA;AAC1DP,QAAAA,OAAA,CAAQd,WAAYd,YAAgC,CAAAE,GAAA,CAAA;AACtD,OAAA;AACF,aAASkC,KAAO,EAAA,EAEhB;AACF,GAAG,EAAA,CAACpC,YAAc,EAAAtB,kBAAkB,CAAC,CAAA,CAAA;AAErCiD,EAAAA,eAAA,CAAU,YAAM;AACd,IAAA,IAAIjD,kBAAoB,EAAA,OAAA;IAClB,IAAAoC,QAAA,GAAY,CAAAd,yBAAAA,mCAAAA,aAAiCE,GAAO,KAAA,EAAA,CAAA;IAC1D,IAAI,CAACY,QAAU,EAAA,OAAA;IACf,IAAIuB,KAAQ,GAAA,IAAA,CAAA;IACZC,oDAAA,CAAkBxB,QAAQ,CAAA,CACvByB,IAAK,CAAA,UAACC,YAAiB,EAAA;MACtB,IAAI,CAACH,KAAO,EAAA,OAAA;MACDxB,UAAA,CAAAgB,OAAA,CAAQV,UAAa,GAAAsB,MAAA,CAAOD,YAAY,CAAA,CAAA;KACpD,CACA,CAAA,OAAA,CAAA,CAAM,YAAM;MACX,IAAI,CAACH,KAAO,EAAA,OAAA;AACZxB,MAAAA,UAAA,CAAWgB,QAAQV,UAAa,GAAA,OAAA,CAAA;AAClC,KAAC,CAAA,CAAA;AACH,IAAA,OAAO,YAAM;AACHkB,MAAAA,KAAA,GAAA,KAAA,CAAA;AACRxB,MAAAA,UAAA,CAAWgB,QAAQV,UAAa,GAAA,EAAA,CAAA;KAClC,CAAA;AACF,GAAG,EAAA,CAACnB,YAAc,EAAAtB,kBAAkB,CAAC,CAAA,CAAA;AAE/B,EAAA,IAAAgE,WAAA,GAAcC,kBAAY,YAAM;AACpC,IAAA,IAAIjE,kBAAoB,EAAA,OAAA;AACxB,IAAA,IAAMkD,UAAUf,UAAW,CAAAgB,OAAA,CAAA;IAE3BD,OAAA,CAAQZ,aAAgB,GAAA,CAAA,CAAA;IACxBY,OAAA,CAAQH,YAAe,GAAA,CAAA,CAAA;IAKjB,IAAAR,SAAA,GAAYJ,UAAW,CAAAgB,OAAA,CAAQZ,SAAa,IAAA,CAAA,CAAA;AAC9C,IAAA,IAAA,CAACJ,UAAW,CAAAgB,OAAA,CAAQV,UAAY,EAAA;AAClCN,MAAAA,UAAA,CAAWgB,OAAQ,CAAAV,UAAA,GAAasB,MAAQ,CAAA,CAAAxB,SAAA,IAAa,MAAM,CAAC,CAAA,CAAA;AAC9D,KAAA;IACA,IAAI,CAACS,UAAW,CAAAG,OAAA,IAAWD,OAAQ,CAAAd,QAAA,IAAY,CAACpC,kBAAoB,EAAA;MAClEgD,UAAA,CAAWG,OAAU,GAAA,IAAA,CAAA;AACbe,MAAAA,4BAAA,CAAAC,6CAAA,CAAuBjB,OAAO,CAAC,CAAA,CAAA;AACzC,KAAA;AACF,GAAA,EAAG,CAAClD,kBAAkB,CAAC,CAAA,CAAA;AAIvB,EAAA,IAAMoE,YAAY,SAAZA,YAAkB;AAAA,IAAA,IAAAC,gBAAA,CAAA;AACtBlE,IAAAA,KAAA,aAAAA,KAAA,KAAA,KAAA,CAAA,IAAA,CAAAkE,gBAAA,GAAAlE,KAAA,CAAOiE,SAAY,MAAAC,IAAAA,IAAAA,gBAAA,eAAnBA,gBAAA,CAAAC,IAAA,CAAAnE,KAAmB,CAAA,CAAA;AACnB,IAAA,IAAIH,kBAAoB,EAAA,OAAA;AAEZgE,IAAAA,WAAA,EAAA,CAAA;GACd,CAAA;AAEM,EAAA,IAAAO,UAAA,GAAa,SAAbA,UAAAA,CAAcC,CAAuD,EAAA;AAAA,IAAA,IAAAC,iBAAA,CAAA;AACnE,IAAA,IAAAC,cAAA,GAEFF,CAAA,CADFG,WAAA;MAAeC,KAAA,GAAAF,cAAA,CAAAE,KAAA;MAAOC,MAAO,GAAAH,cAAA,CAAPG,MAAO,CAAA;AAE/B,IAAA,IAAID,KAAO,EAAA;MACK3D,WAAA,CAAA4D,MAAA,GAASD,KAAS,GAAA,GAAA,GAAO,CAAC,CAAA,CAAA;AAC1C,KAAA;IACC,CAAA5E,kBAAA,KAAuBmC,UAAW,CAAAgB,OAAA,CAAQZ,SAAY,GAAAqC,KAAA,CAAA,CAAA;AACvD,IAAA,CAAAH,iBAAA,GAAAtE,KAAA,CAAMoE,8CAANE,KAAAA,CAAAA,IAAAA,iBAAA,CAAAH,IAAA,CAAAnE,KAAA,EAAmBqE,CAAC,CAAA,CAAA;GACtB,CAAA;AACM,EAAA,IAAAM,MAAA,GAAS,SAATA,MAAAA,CAAUN,CAAgD,EAAA;AAAA,IAAA,IAAAO,aAAA,CAAA;IAC9D,IAAI,CAAC/E,kBAAoB,EAAA;AACjB,MAAA,IAAAqB,GAAA,GAAMD,KAAKC,GAAI,EAAA,CAAA;MACrB,IAAI2D,KAAQ,GAAA7C,UAAA,CAAWgB,OAAQ,CAAAP,eAAA,IAAmB1B,YAAa,CAAAiC,OAAA,CAAA;AAC3D,MAAA,IAAA6B,KAAA,GAAQ3D,KAAa2D,KAAA,GAAA3D,GAAA,CAAA;AACzBc,MAAAA,UAAA,CAAWgB,QAAQP,eAAkB,GAAAoC,KAAA,CAAA;AACrC,MAAA,IAAMlC,eAAezB,GAAM,GAAA2D,KAAA,CAAA;AAC3B7C,MAAAA,UAAA,CAAWgB,QAAQN,UAAa,GAAAxB,GAAA,CAAA;MAChCc,UAAA,CAAWgB,OAAQ,CAAAL,YAAA,GAAeA,YAAe,GAAA,CAAA,GAAI,CAAI,GAAAA,YAAA,CAAA;AACzDX,MAAAA,UAAA,CAAWgB,QAAQT,SAAY,GAAA,MAAA,CAAA;AACjC,KAAA;AACA,IAAA,CAAAqC,aAAA,GAAA5E,KAAA,CAAM2E,sCAANC,KAAAA,CAAAA,IAAAA,aAAA,CAAAT,IAAA,CAAAnE,KAAA,EAAeqE,CAAC,CAAA,CAAA;AAChB3D,IAAAA,cAAA,CAAeL,8CAAayE,MAAM,CAAA,CAAA;GACpC,CAAA;AAEA,EAAA,IAAMC,cAAc,SAAdA,cAAoB;AACxB,IAAA,CAAClF,kBAAuB,KAAAmC,UAAA,CAAWgB,OAAQ,CAAAP,eAAA,GAAkBxB,KAAKC,GAAI,EAAA,CAAA,CAAA;GACxE,CAAA;AAEM,EAAA,IAAA8D,OAAA,GAAU,SAAVA,OAAAA,CAAWX,CAAiD,EAAA;AAAA,IAAA,IAAAY,cAAA,CAAA;IAChE,IAAI,CAACpF,kBAAoB,EAAA;AACvBmC,MAAAA,UAAA,CAAWgB,QAAQT,SAAY,GAAA,OAAA,CAAA;AAC/BP,MAAAA,UAAA,CAAWgB,OAAQ,CAAAR,WAAA,GAAAa,EAAAA,CAAAA,MAAA,CAAiBgB,CAAA,CAAEG,YAAYjB,KAAK,CAAA,CAAA;AACzD,KAAA;AACA,IAAA,CAAA0B,cAAA,GAAAjF,KAAA,CAAMgF,wCAANC,KAAAA,CAAAA,IAAAA,cAAA,CAAAd,IAAA,CAAAnE,KAAA,EAAgBqE,CAAC,CAAA,CAAA;AACjB3D,IAAAA,cAAA,CAAehB,eAAewF,4CAAY,CAAAC,KAAA,GAAQ9E,6CAAa,CAAA+E,SAAA,GAAY/E,8CAAagF,MAAM,CAAA,CAAA;GAChG,CAAA;AACM,EAAA,IAAAC,QAAA,GAAW,SAAXA,QAAAA,CAAYjB,CAA6B,EAAA;AAAA,IAAA,IAAAkB,eAAA,CAAA;AAC7C7E,IAAAA,cAAA,CAAeL,8CAAamF,IAAI,CAAA,CAAA;AAChC,IAAA,CAAAD,eAAA,GAAAvF,KAAA,CAAMsF,0CAANC,KAAAA,CAAAA,IAAAA,eAAA,CAAApB,IAAA,CAAAnE,KAAA,EAAiBqE,CAAC,CAAA,CAAA;AAClBoB,IAAAA,UAAA,CAAW,YAAM;AACf/E,MAAAA,cAAA,CAAeL,8CAAaC,OAAO,CAAA,CAAA;AACrC,KAAC,CAAA,CAAA;GACH,CAAA;AAEA,EAAA,IAAMoF,YAAYC,oEAAa,EAAA,CAAA;AAE/B,EAAA,sBACGC,KAAA,CAAAC,aAAA,CAAAC,gBAAA,EAAA;AAAKlG,IAAAA,KAAO,EAAAmG,wCAAA,CAAA;AAAEtG,MAAAA,YAAc,EAAdA,YAAc;AAAAD,MAAAA,MAAA,EAAAA,MAAA;AAAQD,MAAAA,KAAO,EAAPA,KAAAA;AAAO,KAAA,EAAIK,KAAa,CAAA;AAAA,GAAA,EAC1Da,WAAgB,KAAAJ,6CAAA,CAAamF,IAC5B,mBAAAI,KAAA,CAAAC,aAAA,CAACG,iBAAA,EAAAD,wCAAA,CAAAA,wCAAA,KACK/F,KAAA,CAAA,EAAA,EAAA,EAAA;AAEJV,IAAAA,MAAQ,EAAA6B,YAAA;AACR4D,IAAAA,WAAA,EAAAA,WAAA;AACAJ,IAAAA,MAAA,EAAAA,MAAA;AACAP,IAAAA,UAAA,EAAAA,UAAA;AACAY,IAAAA,OAAA,EAAAA,OAAA;AACAf,IAAAA,SAAA,EAAAA,SAAA;AACAnE,IAAAA,YAAA,EAAAA,YAAA;AAEAC,IAAAA,mBAAqB,EAAA,SAArBA,mBAAqBA,CAACsE,CAAM,EAAA;MAAA,OAAAtE,oBAAA,CAAoBsE,CAAC,CAAA,CAAA;AAAA,KAAA;AACjDzE,IAAAA,KAAO,EAAA;MACLL,KAAA,EAAOA,UAASK,KAAO,aAAPA,KAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,KAAO,CAAAL,KAAA,CAAA;MACvBC,MAAA,EAAQA,WAAUI,KAAO,aAAPA,KAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,KAAO,CAAAJ,MAAA,CAAA;AACzBC,MAAAA,YAAA,EAAAA,YAAAA;AAAA;KAEF;IAEAwG,QAAQjG,KAAM,CAAAiG,MAAAA;GACf,CAAA,GAEFxF,WAAgB,KAAAJ,6CAAA,CAAaC,OAAW,IAAAX,SAAA,KAAciC,4CAAWsE,IAChE,mBAAAN,KAAA,CAAAC,aAAA,CAACC,gBAAA,EAAA;IACClG,KAAO,EAAAmG,wCAAA,CAAAA,wCAAA,CAAA;AACLxG,MAAAA,KAAA,EAAAA,KAAA;AACAC,MAAAA,MAAA,EAAAA,MAAA;AACAC,MAAAA,YAAA,EAAAA,YAAAA;KACG0G,EAAAA,+BAAO,CAAAC,gBAAA,CAAA,EAAA,EAAA,EAAA;AACVC,MAAAA,iBAAiB1G,SAAc,KAAAiC,2CAAA,CAAWC,GAAM,GAAAP,QAAA,GAAW6E,gCAAOC,gBAAiB,CAAAC,eAAAA;AAAA,KAAA,EAChFzG,KAAA,CAAA;AACL,GAAA,EAECD,SAAA,KAAciC,4CAAW0E,IACxB,mBAAAV,KAAA,CAAAC,aAAA,CAACG,iBAAA,EAAA;AACC1G,IAAAA,MAAQ,EAAAwC,UAAA;AACRlC,IAAAA,KAAO,EAAA;MACLL,KAAA,EAAOA,UAASK,KAAO,aAAPA,KAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,KAAO,CAAAL,KAAA,CAAA;MACvBC,MAAA,EAAQA,WAAUI,KAAO,aAAPA,KAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,KAAO,CAAAJ,MAAA,CAAA;AACzBC,MAAAA,YAAA,EAAAA,YAAAA;KACF;IAEAwG,QAAQjG,KAAM,CAAAiG,MAAAA;AAAA,GACf,CAAA,EAEFtG,SAAc,KAAAiC,2CAAA,CAAWtB,OAAW,mBAAAsF,KAAA,CAAAC,aAAA,CAACU;AAAiB1F,IAAAA,QAAoB,EAApBA,QAAAA;AAAoB,GAAA,CAC7E,CAAA,EAAA,CAEAJ,gBAAgBJ,6CAAa,CAAA+E,SAAA,IAAa3E,gBAAgBJ,6CAAa,CAAAgF,MAAA,KACvE3F,UAAe,KAAAwF,4CAAA,CAAYgB,IACzB,mBAAAN,KAAA,CAAAC,aAAA,CAACW,4BAAA,EAAA;AACCC,IAAAA,aAAe,EAAA,CAAA;AACfC,IAAAA,OAAA,EAAS,SAATA,OAAAA,CAAUrC,CAAM,EAAA;MACdiB,QAAA,CAASjB,CAAC,CAAA,CAAA;KACZ;AACAzE,IAAAA;AAASL,MAAAA,KAAA,EAAAA,KAAA;AAAOC,MAAAA,QAAAA;AAAQC,MAAAA,YAAc,EAAdA,YAAAA;KAAiB0G,EAAAA,gCAAOC,gBAAiB,CAAA;AAAA,GAAA,iBAEjER,KAAA,CAAAC,aAAA,CAACG,iBAAA,EAAA;AACCpG,IAAAA,KAAO,EAAA;AAAEL,MAAAA,KAAO,EAAA,EAAA;AAAIC,MAAAA,QAAQ,EAAA;KAAG;AAC/BF,IAAAA,MAAQ,EAAA;AACN+B,MAAAA,GAAA,EAAKZ,gBAAgBJ,6CAAa,CAAAgF,MAAA,GAASxG,YAAY6G,SAAS,CAAA,GAAIzG,WAAWyG,SAAS,CAAA;KAC1F;IAEAO,QAAQjG,KAAM,CAAAiG,MAAAA;GAChB,CACF,CAEN,CAAA,CAAA;AAEJ,CAAA,CAAA;AAEA/G,KAAA,CAAMyH,YAAe,GAAAC,kDAAA,CAAA;AAErB,cAAeC,aAAAA,WAAK3H,KAAK,CAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"Image.js","sources":["../../../../src/components/Image/Image.tsx"],"sourcesContent":["import React, { useState, memo, useMemo, useRef, useCallback, useEffect } from \"react\";\nimport {\n View,\n Image as RNImage,\n GestureResponderEvent,\n ImageProps,\n TouchableOpacity,\n ImageLoadEventData,\n NativeSyntheticEvent,\n ImageErrorEventData,\n ImageProgressEventDataIOS,\n ImageSourcePropType,\n ImageURISource,\n} from \"react-native\";\nimport {\n RedsImage,\n ImageDefaultProps,\n IMAGE_STATUS,\n TErrorStyle,\n TLoadStyle,\n ImageTrackerProps,\n} from \"./interface/index\";\nimport styles from \"./styles\";\nimport { useAveColor, useBlur } from \"./hook\";\nimport CircularProgress from \"./CircularProgress\";\nimport { useColorMode } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { lightColor } from \"@xhsreds/reds-token-next\";\nimport { formatUri, isDataUri, isLocalFile, convertKeysToSnakeCase } from \"./utils\";\nimport { apmPush } from \"./apm\";\nimport { queryCacheBatched } from \"./queryCacheBatcher\";\n\nconst imageReLoad = {\n light: \"https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png\",\n dark: \"https://picasso-static.xiaohongshu.com/fe-platform/4f9bfbf2358aa970f1ec3dbf4ba5ff9355b7a41e.png\",\n platformLight: \"https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png\",\n};\n\nconst imageError = {\n light: \"https://picasso-static.xiaohongshu.com/fe-platform/76fee5bba4ce3bbf3e9ff5fe1935b737bb27625a.png\",\n dark: \"https://picasso-static.xiaohongshu.com/fe-platform/7d8debb5e2c3a1f37299a292342b77d479be6f28.png\",\n platformLight: \"https://picasso-static.xiaohongshu.com/fe-platform/76fee5bba4ce3bbf3e9ff5fe1935b737bb27625a.png\",\n};\n\nconst Image = ({\n src,\n source: _source,\n width,\n height,\n borderRadius,\n errorStyle,\n loadStyle,\n style,\n abortApmCollection,\n fadeDuration,\n onFirstDrawFinished,\n ...props\n}: RedsImage & Omit<ImageProps, keyof RedsImage>) => {\n // useMounted(\"Image\");\n const [imageStatus, setImageStatus] = useState(IMAGE_STATUS.LOADING);\n const [progress, setProgress] = useState(0);\n const mountTimeRef = useRef<number>(Date.now());\n\n const formatSource = useMemo(() => {\n // @ts-ignore\n if (_source) return _source as ImageSourcePropType;\n // @ts-ignore\n return { uri: src } as ImageSourcePropType;\n }, [src, _source]);\n\n const aveColor = useAveColor({\n source: formatSource,\n defaultColor: lightColor.Fill1,\n loadingAve: loadStyle === TLoadStyle.AVE,\n });\n\n const blurSource = useBlur({ source: formatSource });\n\n // Visibility tracking removed: no longer needed for APM\n const apmDataRef = useRef<ImageTrackerProps>({\n imageUrl: \"\",\n imageHost: \"\",\n intersectTime: 0,\n imageSize: 0,\n isFirstScreen: \"false\",\n isPrefetch: \"\",\n isSuccess: \"false\",\n errorReason: \"\",\n loadedStartTime: 0,\n loadedTime: 0,\n loadDuration: 0,\n viewDuration: 0,\n });\n const apmDoneRef = useRef(false);\n\n useEffect(() => {\n if (abortApmCollection) return;\n try {\n const apmData = apmDataRef.current;\n if (\n typeof formatSource !== \"number\" &&\n !isLocalFile((formatSource as ImageURISource).uri as string) &&\n !isDataUri((formatSource as ImageURISource).uri as string)\n ) {\n const imageUrl = new URL((formatSource as ImageURISource).uri as string);\n apmData.imageHost = `${imageUrl.protocol}//${imageUrl.host}`;\n apmData.imageUrl = (formatSource as ImageURISource).uri as string;\n }\n } catch (error) {\n //\n }\n }, [formatSource, abortApmCollection]);\n\n useEffect(() => {\n if (abortApmCollection) return;\n const imageUrl = (formatSource as ImageURISource)?.uri || \"\";\n if (!imageUrl) return;\n let alive = true;\n queryCacheBatched(imageUrl)\n .then((isPrefetched) => {\n if (!alive) return;\n apmDataRef.current.isPrefetch = String(isPrefetched);\n })\n .catch(() => {\n if (!alive) return;\n apmDataRef.current.isPrefetch = \"false\";\n });\n return () => {\n alive = false;\n apmDataRef.current.isPrefetch = \"\";\n };\n }, [formatSource, abortApmCollection]);\n\n const pushApmData = useCallback(() => {\n if (abortApmCollection) return;\n const apmData = apmDataRef.current;\n // Simplify: do not track view duration/intersect time\n apmData.intersectTime = 0;\n apmData.viewDuration = 0;\n /**\n * 如果Image.queryCache未完成时,通过imageSize来判断\n * 如果image_size是-1,那么认为图片已有缓存\n */\n const imageSize = apmDataRef.current.imageSize || 0;\n if (!apmDataRef.current.isPrefetch) {\n apmDataRef.current.isPrefetch = String((imageSize || 0) <= 0);\n }\n if (!apmDoneRef.current && apmData.imageUrl && !abortApmCollection) {\n apmDoneRef.current = true;\n apmPush(convertKeysToSnakeCase(apmData));\n }\n }, [abortApmCollection]);\n\n // 判断首屏\n // isFirstScreen stays \"false\" and intersectTime stays 0 by design\n const onLoadEnd = () => {\n props?.onLoadEnd?.();\n if (abortApmCollection) return;\n // Push regardless of visibility/intersect time\n pushApmData();\n };\n\n const onProgress = (e: NativeSyntheticEvent<ImageProgressEventDataIOS>) => {\n const {\n nativeEvent: { total, loaded },\n } = e;\n if (total) {\n setProgress(((loaded / total) * 100) | 0);\n }\n !abortApmCollection && (apmDataRef.current.imageSize = total);\n props.onProgress?.(e);\n };\n const onLoad = (e: NativeSyntheticEvent<ImageLoadEventData>) => {\n if (!abortApmCollection) {\n const now = Date.now();\n let start = apmDataRef.current.loadedStartTime || mountTimeRef.current;\n if (start > now) start = now;\n apmDataRef.current.loadedStartTime = start;\n const loadDuration = now - start;\n apmDataRef.current.loadedTime = now;\n apmDataRef.current.loadDuration = loadDuration < 0 ? 0 : loadDuration;\n apmDataRef.current.isSuccess = \"true\";\n }\n props.onLoad?.(e);\n setImageStatus(IMAGE_STATUS.LOADED);\n };\n\n const onLoadStart = () => {\n !abortApmCollection && (apmDataRef.current.loadedStartTime = Date.now());\n };\n\n const onError = (e: NativeSyntheticEvent<ImageErrorEventData>) => {\n if (!abortApmCollection) {\n apmDataRef.current.isSuccess = \"false\";\n apmDataRef.current.errorReason = `${e.nativeEvent.error}`;\n }\n props.onError?.(e);\n setImageStatus(errorStyle === TErrorStyle.ERROR ? IMAGE_STATUS.LOADERROR : IMAGE_STATUS.RELOAD);\n };\n const onReload = (e: GestureResponderEvent) => {\n setImageStatus(IMAGE_STATUS.HIDE);\n props.onReload?.(e);\n setTimeout(() => {\n setImageStatus(IMAGE_STATUS.LOADING);\n });\n };\n\n const colorMode = useColorMode();\n return (\n <View\n style={{\n borderRadius: borderRadius || style?.borderRadius,\n ...(style as {}),\n height: ((height || style?.height || 0) as number) + (style?.borderWidth || 0) * 2,\n width: ((width || style?.width || 0) as number) + (style?.borderWidth || 0) * 2,\n }}\n >\n {imageStatus !== IMAGE_STATUS.HIDE && (\n <RNImage\n {...props}\n // @ts-ignore\n source={formatSource}\n onLoadStart={onLoadStart}\n onLoad={onLoad}\n onProgress={onProgress}\n onError={onError}\n onLoadEnd={onLoadEnd}\n fadeDuration={fadeDuration}\n // @ts-ignore\n onFirstDrawFinished={(e) => onFirstDrawFinished(e)}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius: borderRadius || style?.borderRadius,\n // opacity: imageStatus === IMAGE_STATUS.LOADED ? 1 : 0,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n )}\n {imageStatus === IMAGE_STATUS.LOADING && loadStyle !== TLoadStyle.NONE && (\n <View\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius: borderRadius || style?.borderRadius,\n ...styles.loadingContainer,\n backgroundColor: loadStyle === TLoadStyle.AVE ? aveColor : styles.loadingContainer.backgroundColor,\n }}\n >\n {loadStyle === TLoadStyle.BLUR && (\n <RNImage\n source={blurSource}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius: borderRadius || style?.borderRadius,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n )}\n {loadStyle === TLoadStyle.LOADING && <CircularProgress progress={progress}></CircularProgress>}\n </View>\n )}\n {(imageStatus === IMAGE_STATUS.LOADERROR || imageStatus === IMAGE_STATUS.RELOAD) &&\n errorStyle !== TErrorStyle.NONE && (\n <TouchableOpacity\n activeOpacity={1}\n onPress={(e) => {\n onReload(e);\n }}\n style={{ width, height, ...styles.loadingContainer }}\n >\n <RNImage\n style={{ width: 40, height: 40 }}\n source={{\n uri: imageStatus === IMAGE_STATUS.RELOAD ? imageReLoad[colorMode] : imageError[colorMode],\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n />\n </TouchableOpacity>\n )}\n </View>\n );\n};\n\nImage.defaultProps = ImageDefaultProps;\n\nexport default memo(Image);\n"],"names":["imageReLoad","light","dark","platformLight","imageError","Image","src","_ref","_source","source","width","height","borderRadius","errorStyle","loadStyle","style","abortApmCollection","fadeDuration","onFirstDrawFinished","props","_objectWithoutProperties","_excluded","_useState","useState","IMAGE_STATUS","LOADING","_useState2","_slicedToArray","imageStatus","setImageStatus","_useState3","_useState4","progress","setProgress","mountTimeRef","useRef","Date","now","formatSource","useMemo","uri","aveColor","useAveColor","defaultColor","lightColor","Fill1","loadingAve","TLoadStyle","AVE","blurSource","useBlur","apmDataRef","imageUrl","imageHost","intersectTime","imageSize","isFirstScreen","isPrefetch","isSuccess","errorReason","loadedStartTime","loadedTime","loadDuration","viewDuration","apmDoneRef","useEffect","apmData","current","isLocalFile","isDataUri","URL","protocol","concat","host","error","alive","queryCacheBatched","then","isPrefetched","String","pushApmData","useCallback","apmPush","convertKeysToSnakeCase","onLoadEnd","_props$onLoadEnd","call","onProgress","e","_props$onProgress","_e$nativeEvent","nativeEvent","total","loaded","onLoad","_props$onLoad","start","LOADED","onLoadStart","onError","_props$onError","TErrorStyle","ERROR","LOADERROR","RELOAD","onReload","_props$onReload","HIDE","setTimeout","colorMode","useColorMode","React","createElement","View","_objectSpread","borderWidth","RNImage","apmBiz","NONE","styles","loadingContainer","backgroundColor","BLUR","CircularProgress","TouchableOpacity","activeOpacity","onPress","defaultProps","ImageDefaultProps","memo"],"mappings":"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"}
|
|
@@ -144,7 +144,8 @@ var NoticeBar = function NoticeBar(props) {
|
|
|
144
144
|
numberOfLines: props.type === components_NoticeBar_interface_index.NoticeBarType.BASIC ? 1 : void 0,
|
|
145
145
|
ellipsizeMode: "tail"
|
|
146
146
|
}, props.content)), props.actionType === components_NoticeBar_interface_index.NoticeBarActionType.TEXTACTION ? /* @__PURE__ */React.createElement(reactNative.Text, {
|
|
147
|
-
style: styles.linkText
|
|
147
|
+
style: styles.linkText,
|
|
148
|
+
onPress: handleLink
|
|
148
149
|
}, props.actionText || jumpKey) : /* @__PURE__ */React.createElement(React.Fragment, null), props.actionType === components_NoticeBar_interface_index.NoticeBarActionType.ICONACTION ? /* @__PURE__ */React.createElement(reactNative.TouchableWithoutFeedback, {
|
|
149
150
|
onPress: handleLink
|
|
150
151
|
}, /* @__PURE__ */React.createElement(reactNative.Image, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NoticeBar.js","sources":["../../../../src/components/NoticeBar/NoticeBar.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo, useCallback } from \"react\";\nimport { View, TouchableWithoutFeedback, Text, Image, Animated, Easing } from \"react-native\";\nimport { RedsNoticeBar, NoticeBarDefaultProps, NoticeBarType, NoticeBarActionType } from \"./interface/index\";\nimport getStyles from \"./styles\";\nimport { useThemeColor } from \"../ConfigProvider\";\nimport { useLanguage } from \"../LanguageProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nconst NoticeBar = (props: RedsNoticeBar) => {\n useMounted(\"NoticeBar\");\n const [_visible, setVisible] = useState(true);\n\n const themeColor = useThemeColor();\n\n const styles = getStyles(themeColor);\n\n const jumpKey = useLanguage(\"componentKey\", \"jumpKey\");\n\n const icon = useMemo(() => {\n switch (props.theme) {\n case \"info\":\n return \"https://picasso-static.xiaohongshu.com/fe-platform/1a246fbb8d573348d3f1e6d6e2c1e73b790e8ddc.png\";\n case \"success\":\n return \"https://picasso-static.xiaohongshu.com/fe-platform/c62ce17c572dff50aa28209bedf635fc303d18f8.png\";\n case \"warning\":\n return \"https://picasso-static.xiaohongshu.com/fe-platform/11b33735cbfddd621d1163dec26a5c240bc407f1.png\";\n case \"danger\":\n return \"https://picasso-static.xiaohongshu.com/fe-platform/4df0100d42449186672e3c4d9863ec4bce4bb23a.png\";\n default:\n return \"https://picasso-static.xiaohongshu.com/fe-platform/1a246fbb8d573348d3f1e6d6e2c1e73b790e8ddc.png\";\n }\n }, [props.theme]);\n\n const color = useMemo(() => {\n switch (props.theme) {\n case \"info\":\n return themeColor.Info2;\n case \"success\":\n return themeColor.Success2;\n case \"warning\":\n return themeColor.Warning2;\n case \"danger\":\n return themeColor.Primary2;\n default:\n return themeColor.Info2;\n }\n }, [props.theme, themeColor]);\n\n const [textWidth, setTextWidth] = useState(0);\n const [containerWidth, setContainerWidth] = useState(0);\n const scrollX = useRef(new Animated.Value(0)).current;\n\n const scrollDistance = useMemo(() => Math.max(textWidth - containerWidth, 0), [textWidth, containerWidth]);\n\n useEffect(() => {\n if (props.type === NoticeBarType.SCROLLABLE && textWidth > 0) {\n const startScrolling = () => {\n scrollX.setValue(0);\n Animated.timing(scrollX, {\n toValue: -scrollDistance,\n duration: scrollDistance * 30,\n easing: Easing.linear,\n useNativeDriver: true,\n }).start(({ finished }) => {\n if (finished) {\n startScrolling();\n }\n });\n };\n\n startScrolling();\n }\n }, [textWidth, containerWidth, props.type, scrollDistance]);\n\n const handleLink = () => {\n props.onClick?.();\n };\n\n const handleClose = () => {\n setVisible(false);\n props.onClose?.();\n };\n\n useEffect(() => {\n setVisible(!!props.visible);\n }, [props.visible]);\n\n return _visible ? (\n <View\n style={[\n styles.container,\n { backgroundColor: color, alignItems: props.type === NoticeBarType.MUTILINE ? \"flex-start\" : \"center\" },\n props.style,\n ]}\n >\n {props.withIcon ? <Image source={{ uri: icon }} style={styles.icon} testID=\"notice-icon\" /> : <></>}\n {props.children}\n <View\n style={styles.textWrapper}\n testID=\"text-wrapper\"\n onLayout={(e) => setContainerWidth(e.nativeEvent.layout.width)}\n >\n {props.type === NoticeBarType.SCROLLABLE ? (\n <View style={{ minHeight: 18, overflow: \"scroll\", flexDirection: \"row\" }}>\n <Animated.Text\n numberOfLines={1}\n style={[{ transform: [{ translateX: scrollX }] }]}\n onLayout={(e) => setTextWidth(e.nativeEvent.layout.width)}\n >\n <Text style={styles.text}>{props.content}</Text>\n <Text style={styles.text}>{\" \"}</Text>\n <Text style={styles.text}>{props.content}</Text>\n </Animated.Text>\n </View>\n ) : (\n <Text\n style={[styles.text]}\n numberOfLines={props.type === NoticeBarType.BASIC ? 1 : undefined}\n ellipsizeMode=\"tail\"\n >\n {props.content}\n </Text>\n )}\n </View>\n {props.actionType === NoticeBarActionType.TEXTACTION ? (\n <Text style={styles.linkText}>{props.actionText || jumpKey}</Text>\n ) : (\n <></>\n )}\n {/* 跳转icon */}\n {props.actionType === NoticeBarActionType.ICONACTION ? (\n <TouchableWithoutFeedback onPress={handleLink}>\n <Image\n testID=\"action-icon\"\n source={{\n uri: \"https://picasso-static.xiaohongshu.com/fe-platform/2708eed5e1ec88c28d5358d1496e6c8d28eaf819.png\",\n }}\n style={styles.link}\n />\n </TouchableWithoutFeedback>\n ) : (\n <></>\n )}\n {/* 关闭icon */}\n {props.closable ? (\n <TouchableWithoutFeedback onPress={handleClose}>\n <Image\n testID=\"close-icon\"\n source={{\n uri: \"https://picasso-static.xiaohongshu.com/fe-platform/0792412fe36bc5bed739e0a62c504b3b83caeedb.png\",\n }}\n style={styles.close}\n />\n </TouchableWithoutFeedback>\n ) : (\n <></>\n )}\n </View>\n ) : (\n <></>\n );\n};\n\nNoticeBar.defaultProps = NoticeBarDefaultProps;\n\nexport default NoticeBar;\n"],"names":["NoticeBar","props","useMounted","_useState","useState","_useState2","_slicedToArray","_visible","setVisible","themeColor","useThemeColor","styles","getStyles","jumpKey","useLanguage","icon","useMemo","theme","color","Info2","Success2","Warning2","Primary2","_useState3","_useState4","textWidth","setTextWidth","_useState5","_useState6","containerWidth","setContainerWidth","scrollX","useRef","Animated","Value","current","scrollDistance","Math","max","useEffect","type","NoticeBarType","SCROLLABLE","startScrolling","setValue","timing","toValue","duration","easing","Easing","linear","useNativeDriver","start","_ref","finished","handleLink","_props$onClick","onClick","call","handleClose","_props$onClose","onClose","visible","React","createElement","View","style","container","backgroundColor","alignItems","MUTILINE","withIcon","Image","source","uri","testID","Fragment","children","textWrapper","onLayout","e","nativeEvent","layout","width","minHeight","overflow","flexDirection","Text","numberOfLines","transform","translateX","text","content","BASIC","ellipsizeMode","actionType","NoticeBarActionType","TEXTACTION","linkText","actionText","ICONACTION","TouchableWithoutFeedback","onPress","link","closable","close","defaultProps","NoticeBarDefaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NoticeBar.js","sources":["../../../../src/components/NoticeBar/NoticeBar.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo, useCallback } from \"react\";\nimport { View, TouchableWithoutFeedback, Text, Image, Animated, Easing } from \"react-native\";\nimport { RedsNoticeBar, NoticeBarDefaultProps, NoticeBarType, NoticeBarActionType } from \"./interface/index\";\nimport getStyles from \"./styles\";\nimport { useThemeColor } from \"../ConfigProvider\";\nimport { useLanguage } from \"../LanguageProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nconst NoticeBar = (props: RedsNoticeBar) => {\n useMounted(\"NoticeBar\");\n const [_visible, setVisible] = useState(true);\n\n const themeColor = useThemeColor();\n\n const styles = getStyles(themeColor);\n\n const jumpKey = useLanguage(\"componentKey\", \"jumpKey\");\n\n const icon = useMemo(() => {\n switch (props.theme) {\n case \"info\":\n return \"https://picasso-static.xiaohongshu.com/fe-platform/1a246fbb8d573348d3f1e6d6e2c1e73b790e8ddc.png\";\n case \"success\":\n return \"https://picasso-static.xiaohongshu.com/fe-platform/c62ce17c572dff50aa28209bedf635fc303d18f8.png\";\n case \"warning\":\n return \"https://picasso-static.xiaohongshu.com/fe-platform/11b33735cbfddd621d1163dec26a5c240bc407f1.png\";\n case \"danger\":\n return \"https://picasso-static.xiaohongshu.com/fe-platform/4df0100d42449186672e3c4d9863ec4bce4bb23a.png\";\n default:\n return \"https://picasso-static.xiaohongshu.com/fe-platform/1a246fbb8d573348d3f1e6d6e2c1e73b790e8ddc.png\";\n }\n }, [props.theme]);\n\n const color = useMemo(() => {\n switch (props.theme) {\n case \"info\":\n return themeColor.Info2;\n case \"success\":\n return themeColor.Success2;\n case \"warning\":\n return themeColor.Warning2;\n case \"danger\":\n return themeColor.Primary2;\n default:\n return themeColor.Info2;\n }\n }, [props.theme, themeColor]);\n\n const [textWidth, setTextWidth] = useState(0);\n const [containerWidth, setContainerWidth] = useState(0);\n const scrollX = useRef(new Animated.Value(0)).current;\n\n const scrollDistance = useMemo(() => Math.max(textWidth - containerWidth, 0), [textWidth, containerWidth]);\n\n useEffect(() => {\n if (props.type === NoticeBarType.SCROLLABLE && textWidth > 0) {\n const startScrolling = () => {\n scrollX.setValue(0);\n Animated.timing(scrollX, {\n toValue: -scrollDistance,\n duration: scrollDistance * 30,\n easing: Easing.linear,\n useNativeDriver: true,\n }).start(({ finished }) => {\n if (finished) {\n startScrolling();\n }\n });\n };\n\n startScrolling();\n }\n }, [textWidth, containerWidth, props.type, scrollDistance]);\n\n const handleLink = () => {\n props.onClick?.();\n };\n\n const handleClose = () => {\n setVisible(false);\n props.onClose?.();\n };\n\n useEffect(() => {\n setVisible(!!props.visible);\n }, [props.visible]);\n\n return _visible ? (\n <View\n style={[\n styles.container,\n { backgroundColor: color, alignItems: props.type === NoticeBarType.MUTILINE ? \"flex-start\" : \"center\" },\n props.style,\n ]}\n >\n {props.withIcon ? <Image source={{ uri: icon }} style={styles.icon} testID=\"notice-icon\" /> : <></>}\n {props.children}\n <View\n style={styles.textWrapper}\n testID=\"text-wrapper\"\n onLayout={(e) => setContainerWidth(e.nativeEvent.layout.width)}\n >\n {props.type === NoticeBarType.SCROLLABLE ? (\n <View style={{ minHeight: 18, overflow: \"scroll\", flexDirection: \"row\" }}>\n <Animated.Text\n numberOfLines={1}\n style={[{ transform: [{ translateX: scrollX }] }]}\n onLayout={(e) => setTextWidth(e.nativeEvent.layout.width)}\n >\n <Text style={styles.text}>{props.content}</Text>\n <Text style={styles.text}>{\" \"}</Text>\n <Text style={styles.text}>{props.content}</Text>\n </Animated.Text>\n </View>\n ) : (\n <Text\n style={[styles.text]}\n numberOfLines={props.type === NoticeBarType.BASIC ? 1 : undefined}\n ellipsizeMode=\"tail\"\n >\n {props.content}\n </Text>\n )}\n </View>\n {props.actionType === NoticeBarActionType.TEXTACTION ? (\n <Text style={styles.linkText} onPress={handleLink}>\n {props.actionText || jumpKey}\n </Text>\n ) : (\n <></>\n )}\n {/* 跳转icon */}\n {props.actionType === NoticeBarActionType.ICONACTION ? (\n <TouchableWithoutFeedback onPress={handleLink}>\n <Image\n testID=\"action-icon\"\n source={{\n uri: \"https://picasso-static.xiaohongshu.com/fe-platform/2708eed5e1ec88c28d5358d1496e6c8d28eaf819.png\",\n }}\n style={styles.link}\n />\n </TouchableWithoutFeedback>\n ) : (\n <></>\n )}\n {/* 关闭icon */}\n {props.closable ? (\n <TouchableWithoutFeedback onPress={handleClose}>\n <Image\n testID=\"close-icon\"\n source={{\n uri: \"https://picasso-static.xiaohongshu.com/fe-platform/0792412fe36bc5bed739e0a62c504b3b83caeedb.png\",\n }}\n style={styles.close}\n />\n </TouchableWithoutFeedback>\n ) : (\n <></>\n )}\n </View>\n ) : (\n <></>\n );\n};\n\nNoticeBar.defaultProps = NoticeBarDefaultProps;\n\nexport default NoticeBar;\n"],"names":["NoticeBar","props","useMounted","_useState","useState","_useState2","_slicedToArray","_visible","setVisible","themeColor","useThemeColor","styles","getStyles","jumpKey","useLanguage","icon","useMemo","theme","color","Info2","Success2","Warning2","Primary2","_useState3","_useState4","textWidth","setTextWidth","_useState5","_useState6","containerWidth","setContainerWidth","scrollX","useRef","Animated","Value","current","scrollDistance","Math","max","useEffect","type","NoticeBarType","SCROLLABLE","startScrolling","setValue","timing","toValue","duration","easing","Easing","linear","useNativeDriver","start","_ref","finished","handleLink","_props$onClick","onClick","call","handleClose","_props$onClose","onClose","visible","React","createElement","View","style","container","backgroundColor","alignItems","MUTILINE","withIcon","Image","source","uri","testID","Fragment","children","textWrapper","onLayout","e","nativeEvent","layout","width","minHeight","overflow","flexDirection","Text","numberOfLines","transform","translateX","text","content","BASIC","ellipsizeMode","actionType","NoticeBarActionType","TEXTACTION","linkText","onPress","actionText","ICONACTION","TouchableWithoutFeedback","link","closable","close","defaultProps","NoticeBarDefaultProps"],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var reactNative = require('react-native');
|
|
5
4
|
var components_Portal_core_hooks_usePortalState = require('./hooks/usePortalState.js');
|
|
6
5
|
var components_Portal_core_hooks_usePortal = require('./hooks/usePortal.js');
|
|
7
6
|
require('./PortalContext.js');
|
|
@@ -20,9 +19,9 @@ var PortalHostComponent = function PortalHostComponent(_ref) {
|
|
|
20
19
|
};
|
|
21
20
|
}, []);
|
|
22
21
|
return /* @__PURE__ */React.createElement(React.Fragment, null, state.map(function (item, index) {
|
|
23
|
-
return
|
|
22
|
+
return /*#__PURE__*/React.cloneElement(item.node, {
|
|
24
23
|
key: index
|
|
25
|
-
}
|
|
24
|
+
});
|
|
26
25
|
}));
|
|
27
26
|
};
|
|
28
27
|
var PortalHost = /*#__PURE__*/React.memo(PortalHostComponent);
|