@pawover/kit 0.0.0-beta.40 → 0.0.0-beta.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/enums.d.ts +1 -1
- package/dist/{except-MacUK44u.d.ts → except-C_xUtgFe.d.ts} +44 -19
- package/dist/except-C_xUtgFe.d.ts.map +1 -0
- package/dist/hooks-alova.d.ts +4 -4
- package/dist/hooks-react.d.ts +42 -10
- package/dist/hooks-react.d.ts.map +1 -1
- package/dist/hooks-react.js +48 -39
- package/dist/hooks-react.js.map +1 -1
- package/dist/{index-Bn_PNnsM.d.ts → index-CN5K25yO.d.ts} +2 -2
- package/dist/{index-Bn_PNnsM.d.ts.map → index-CN5K25yO.d.ts.map} +1 -1
- package/dist/index-DBPmnr4a.d.ts.map +1 -1
- package/dist/index.d.ts +383 -50
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/patches-fetchEventSource.d.ts +1 -1
- package/dist/patches-fetchEventSource.js +1 -1
- package/dist/{utils-DbMbll5L.js → utils-adQi5T1g.js} +28 -18
- package/dist/utils-adQi5T1g.js.map +1 -0
- package/dist/{value-of-DUmTbnuw.d.ts → value-of-DPr10cdW.d.ts} +2 -2
- package/dist/{value-of-DUmTbnuw.d.ts.map → value-of-DPr10cdW.d.ts.map} +1 -1
- package/metadata.json +2 -7
- package/package.json +11 -7
- package/dist/except-MacUK44u.d.ts.map +0 -1
- package/dist/utils-DbMbll5L.js.map +0 -1
package/dist/hooks-react.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks-react.js","names":["
|
|
1
|
+
{"version":3,"file":"hooks-react.js","names":["DEFAULT_VALUES: ResponsiveValues","responsiveValues: ResponsiveValues","responsiveTokens: BREAK_POINT_TOKEN_TYPE"],"sources":["../src/hooks/react/useCreation.ts","../src/hooks/react/useLatest.ts","../src/hooks/react/useMount.ts","../src/hooks/react/useResponsive.ts","../src/hooks/react/useUnmount.ts","../src/hooks/react/useTitle.ts"],"sourcesContent":["import { useRef, type DependencyList } from \"react\";\nimport { isEqual } from \"src/utils\";\n\ninterface RefObject<T> {\n deps: DependencyList;\n result: T;\n isInitialized: boolean;\n}\n\n/**\n * useCreation\n * @reference https://ahooks.js.org/zh-CN/hooks/use-creation\n *\n * @param factory\n * @param deps\n */\nexport function useCreation<T> (factory: () => T, deps: DependencyList) {\n const { current } = useRef<RefObject<T>>({ deps, result: undefined!, isInitialized: false });\n\n if (current.isInitialized === false || !isEqual(current.deps, deps)) {\n current.deps = deps;\n current.result = factory();\n current.isInitialized = true;\n }\n\n return current.result;\n}\n","import { useRef, type RefObject } from \"react\";\n\n/**\n * 返回当前最新值的 Hook\n * @reference https://ahooks.js.org/zh-CN/hooks/use-latest\n *\n * @param value\n */\nexport function useLatest<T> (value: T): RefObject<T> {\n const ref = useRef(value);\n // eslint-disable-next-line react-x/refs\n ref.current = value;\n\n return ref;\n}\n","import { useEffect, useRef, type EffectCallback } from \"react\";\nimport { isFunction, isPromise } from \"src/utils\";\nimport { useLatest } from \"./useLatest\";\nimport type { AnyAsyncFunction } from \"@pawover/types\";\n\n/**\n * 在组件初始化时执行的 Hook\n * - 即使在严格模式(React StrictMode)也只执行一次\n * - 自动使用最新版 effect 函数\n *\n * @param effect 副作用函数(必须为同步函数;若为异步函数,清理逻辑需自行处理)\n * @example\n * useMount(() => {\n * console.log('组件挂载');\n * return () => console.log('组件卸载');\n * });\n *\n * useMount(async () => {\n * const data = await fetchData();\n * // 清理逻辑需通过 ref/AbortController 自行管理\n * // ❌ 不要 return cleanupFn(async 函数返回 Promise,无法作为清理函数)\n * });\n */\nexport function useMount (effect: EffectCallback | AnyAsyncFunction) {\n const isMountedRef = useRef(false);\n const effectRef = useLatest(effect);\n\n useEffect(() => {\n if (!isFunction(effectRef.current)) {\n console.error(`[useMount] Expected parameter to be a function, but got ${typeof effectRef.current}. This effect will not execute.`);\n\n return;\n }\n if (isMountedRef.current) {\n return;\n }\n\n isMountedRef.current = true;\n const cleanup = effectRef.current?.();\n\n return isFunction(cleanup) && !isPromise(cleanup) ? cleanup : undefined;\n }, [effectRef]);\n}\n","import type { AnyFunction } from \"@pawover/types\";\nimport { arrayZipToObject, objectAssign, objectKeys, stringToUpperCase, objectMapEntries, isEqual } from \"../../utils\";\nimport { useMemo, useState, useLayoutEffect } from \"react\";\nimport type { TupleToUnion } from \"type-fest\";\nimport { BREAK_POINT_TOKEN_ENUM, type BREAK_POINT_TOKEN_TYPE } from \"src/enums\";\n\ntype Breakpoint = TupleToUnion<typeof BREAK_POINTS>;\ntype ResponsiveValues = Record<Breakpoint, boolean>;\n\nconst SUBSCRIBER_SET = new Set<AnyFunction>();\nconst BREAK_POINTS = [\"xxxl\", \"xxl\", \"xl\", \"lg\", \"md\", \"sm\", \"xs\"] as const;\nconst DEFAULT_VALUES: ResponsiveValues = Object.freeze(arrayZipToObject(BREAK_POINTS, false));\nlet responsiveValues: ResponsiveValues = { ...DEFAULT_VALUES };\nlet responsiveTokens: BREAK_POINT_TOKEN_TYPE = BREAK_POINT_TOKEN_ENUM;\n\nexport interface ResponsiveHookOptions {\n /** 屏幕响应断点 token 配置 */\n breakPointTokens?: BREAK_POINT_TOKEN_TYPE;\n}\nexport function useResponsive (options?: ResponsiveHookOptions | undefined) {\n const { breakPointTokens = {} } = options || {};\n const tokens = useMemo(() => objectAssign(BREAK_POINT_TOKEN_ENUM, breakPointTokens), [breakPointTokens]);\n const [responsive, setResponsive] = useState<ResponsiveValues>(() => calculateResponsive(tokens));\n const current = objectKeys(DEFAULT_VALUES).find((key) => responsive[key] === true) || \"xs\";\n\n useLayoutEffect(() => {\n responsiveTokens = tokens;\n window.addEventListener(\"resize\", resizeListener);\n\n const subscriber = () => {\n setResponsive(responsiveValues);\n };\n\n SUBSCRIBER_SET.add(subscriber);\n\n return () => {\n SUBSCRIBER_SET.delete(subscriber);\n\n if (!SUBSCRIBER_SET.size) {\n window.removeEventListener(\"resize\", resizeListener);\n }\n };\n }, [tokens]);\n\n return { responsive, current, breakPointTokens: tokens };\n}\n\nfunction resizeListener () {\n const newValues = calculateResponsive(responsiveTokens);\n\n if (!isEqual(responsiveValues, newValues)) {\n responsiveValues = newValues;\n\n for (const subscriber of SUBSCRIBER_SET) {\n subscriber();\n }\n }\n}\n\nfunction calculateResponsive (tokens: BREAK_POINT_TOKEN_TYPE) {\n const config = arrayZipToObject(BREAK_POINTS, BREAK_POINTS.map((t) => tokens[stringToUpperCase(t)]));\n\n return objectMapEntries(DEFAULT_VALUES, (key) => [key, window.innerWidth >= config[key]]);\n}\n","import type { AnyFunction } from \"@pawover/types\";\nimport { useEffect } from \"react\";\nimport { isFunction } from \"src/utils\";\nimport { useLatest } from \"./useLatest\";\n\n/**\n * 在组件卸载时执行的 Hook\n * @reference https://ahooks.js.org/zh-CN/hooks/use-unmount\n *\n * @param effect 副作用函数\n */\nexport function useUnmount (effect: AnyFunction) {\n const effectRef = useLatest(effect);\n\n useEffect(\n () => () => {\n if (!isFunction(effectRef.current)) {\n console.error(`useUnmount expected parameter is a function, but got ${typeof effectRef.current}`);\n\n return;\n }\n effectRef.current?.();\n },\n [effectRef],\n );\n}\n","import { useEffect, useRef } from \"react\";\nimport { isBrowser, isString } from \"../../utils\";\nimport { useUnmount } from \"./useUnmount\";\n\ninterface TitleHookOptions {\n /** 件卸载时是否恢复原始标题 */\n isRestoreOnUnmount?: boolean;\n}\n\n/**\n * 设置页面标题\n * - 轻量级,适用于无路由库时设置页面标题\n * - 多个 `useTitle` 实例会互相干扰,需在顶层组件使用\n * - 无法处理 `document.title` 固有的竞态问题\n *\n * @param title 页面标题\n * @param options 配置选项\n */\nexport function useTitle (title: string, options?: TitleHookOptions | undefined) {\n const titleRef = useRef(isBrowser() ? document.title : \"\");\n\n useEffect(() => {\n if (!isString(title)) {\n console.error(`useTitle expected title is a string, but got ${typeof title}`);\n\n return;\n }\n if (isBrowser()) {\n document.title = title;\n }\n }, [title]);\n\n useUnmount(() => {\n if (isBrowser() && options?.isRestoreOnUnmount) {\n document.title = titleRef.current;\n }\n });\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as ValueOf } from "./value-of-
|
|
1
|
+
import { t as ValueOf } from "./value-of-DPr10cdW.js";
|
|
2
2
|
|
|
3
3
|
//#region src/enums/date.d.ts
|
|
4
4
|
declare const DATE_FORMAT: {
|
|
@@ -209,4 +209,4 @@ declare const THEME_MODE_ENUM: {
|
|
|
209
209
|
};
|
|
210
210
|
//#endregion
|
|
211
211
|
export { MIME as a, DATE_FORMAT as c, THEME_TYPE as i, THEME_MODE_ENUM as n, BREAK_POINT_TOKEN_ENUM as o, THEME_MODE_TYPE as r, BREAK_POINT_TOKEN_TYPE as s, THEME_ENUM as t };
|
|
212
|
-
//# sourceMappingURL=index-
|
|
212
|
+
//# sourceMappingURL=index-CN5K25yO.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-CN5K25yO.d.ts","names":[],"sources":["../src/enums/date.ts","../src/enums/grid.ts","../src/enums/mime.ts","../src/enums/theme.ts"],"sourcesContent":[],"mappings":";;;cAAa;;;EAAA,SAAA,aAmDH,EAAA,qBAAA;;;;ECnDE,SAAA,OAAA,EAAA,YAAsB;EAErB,SAAA,YAAA,EAAA,qBA2BH;;;;ECzBG,SA+HH,OAAA,EAAA,aAAA;;;;ECjIE,SAAA,UAAU,EAAA,UAAkB;EAC3B,SAAA,gBAGH,EAAA,UAAA;EAEE,SAAA,SAAe,EAAA,OAAA;EACd,SAAA,YAIH,EAAA,QAAA;;;;;;;;;;;;;;;;KFbE,sBAAA,GAAyB,oBAAoB;;cAE5C;EDFA,SAAA,EAAA,EAAA,GAmDH;;;;ECnDE,SAAA,KAAA,EAAA,GAAA;EAEC,SAAA,KAAA,EAAA,GAAA;;;;ECEA,SA+HH,EAAA,EAAA,GAAA;;;;ECjIE,SAAA,KAAU,EAAA,IAAA;EACT,SAAA,KAGH,EAAA,IAAA;EAEE,SAAA,GAAA,EAAA,IAAe;EACd,SAAA,MAAA,EAAA,IAIH;;;;;;;;;;AHbV;cEIa;;;EDJD;EAEC,SAAA,IAAA,EAAA,WA2BH;;;;ECzBG,SA+HH,GAAA,EAAA,UAAA;;;;ECjIE,SAAA,GAAA,EAAU,UAAA;EACT;EAKD,SAAA,KAAA,EAAA,uBAAiC;EAChC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAPD,UAAA,GAAa,eAAe;cAC3B;EHHA,SAAA,KAmDH,EAAA,OAAA;;;KG3CE,eAAA,GAAkB,eAAe;AFRjC,cESC,eFTqB,EAAA;EAErB,SAAA,KAAA,EAAA,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-DBPmnr4a.d.ts","names":["Split","TupleToUnion","ALPHABET","Alphabet","ValidChar","ApiNameCheck","N","P","R","L","AdvancedRecordMode","AdvancedRecord","K","A","mode","PropertyKey","AnyObject","T","Record","PlainObject","TreeLike","CK","AnyFunction","R$1","AnyAsyncFunction","Promise","AnyGeneratorFunction","Generator","AnyAsyncGeneratorFunction","AsyncGenerator"],"sources":["../node_modules/.pnpm/@pawover+types@0.0.0-alpha._d6a4faea50420a71bc77e0a59520b8b6/node_modules/@pawover/types/dist/index.d.ts"],"sourcesContent":["import { Split, TupleToUnion } from \"type-fest\";\n\n//#region src/api.d.ts\n/** 字母表 */\ntype ALPHABET = \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\";\n/** 单个字母 */\ntype Alphabet = TupleToUnion<Split<ALPHABET, \"\">>;\n/** 有效字符 */\ntype ValidChar = Alphabet | \"_\";\n/** 定义 API 命名 - 键名检查 */\ntype ApiNameCheck<N extends string, P extends string = \"\"> = N extends `${infer L extends ValidChar}${infer R}` ? ApiNameCheck<R, `${P}${L}`> : P extends `${infer S}_` ? S : P;\n//#endregion\n//#region src/advancedRecord.d.ts\ntype AdvancedRecordMode = [\"?\" | \"!\", \"W\" | \"R\"];\ntype AdvancedRecord<K extends PropertyKey, A = unknown, mode extends AdvancedRecordMode = [\"!\", \"W\"]> = {\n \"!\": {\n R: { readonly [P in K]: A };\n W: { [P in K]: A };\n };\n \"?\": {\n R: { readonly [P in K]?: A };\n W: { [P in K]?: A };\n };\n}[mode[0]][mode[1]];\n//#endregion\n//#region src/index.d.ts\n/** 任意对象类型 */\ntype AnyObject<K extends PropertyKey = PropertyKey, T = any> = Record<K, T>;\n/** 普通对象类型 */\ntype PlainObject<K extends PropertyKey = PropertyKey, T = unknown> = Record<K, T>;\n/** 描述树类型 */\ntype TreeLike<T extends AnyObject, CK extends string = \"children\"> = T & Record<CK, TreeLike<T, CK>[]>;\n/** 描述函数类型 */\ntype AnyFunction<P extends any[] = any[], R$1 = any> = (...arg: P) => R$1;\n/** 描述异步函数类型 */\ntype AnyAsyncFunction<P extends any[] = any[], R$1 = any> = (...args: P) => Promise<R$1>;\ntype AnyGeneratorFunction<P extends any[] = any[], T = any, R$1 = any, N = any> = (...args: P) => Generator<T, R$1, N>;\ntype AnyAsyncGeneratorFunction<P extends any[] = any[], T = any, R$1 = any, N = any> = (...args: P) => AsyncGenerator<T, R$1, N>;\n//#endregion\nexport { AdvancedRecord, AdvancedRecordMode, AnyAsyncFunction, AnyAsyncGeneratorFunction, AnyFunction, AnyGeneratorFunction, AnyObject, type ApiNameCheck, PlainObject, TreeLike };\n//# sourceMappingURL=index.d.ts.map"],"x_google_ignoreList":[0],"mappings":";;AA+B+E;AAEN;;KANpEgB,SAQ+EO,CAAAA,UAR3DR,WAQ2DQ,GAR7CR,WAQ6CQ,EAAAA,IAAAA,GAAAA,CAAAA,GARrBL,MAQqBK,CARdX,CAQcW,EARXN,CAQWM,CAAAA;;KAN/EJ,WAM8E,CAAA,UANxDJ,WAMwD,GAN1CA,WAM0C,EAAA,IAAA,OAAA,CAAA,GANdG,MAMc,CANPN,CAMO,EANJK,CAMI,CAAA;AAAA;KAJ9EG,QAKuFb,CAAAA,UALpES,SAKoET,EAAAA,WAAAA,MAAAA,GAAAA,UAAAA,CAAAA,GALvBU,CAKuBV,GALnBW,MAKmBX,CALZc,EAKYd,EALRa,QAKQb,CALCU,CAKDV,EALIc,EAKJd,CAAAA,EAAAA,CAAAA;;KAHvFe,WAG0GC,CAAAA,UAAAA,GAAAA,EAAAA,GAAAA,GAAAA,EAAAA,EAAAA,MAAAA,GAAAA,CAAAA,GAAAA,CAAAA,GAAAA,GAAAA,EAH/ChB,CAG+CgB,EAAAA,GAHzCA,GAGyCA;;KAD1GC,gBAC6FG,CAAAA,UAAAA,GAAAA,EAAAA,GAAAA,GAAAA,EAAAA,EAAAA,MAAAA,GAAAA,CAAAA,GAAAA,CAAAA,GAAAA,IAAAA,EAD5BpB,CAC4BoB,EAAAA,GADtBF,OACsBE,CADdJ,GACcI,CAAAA;KAA7FD,oBAAsG,CAAA,UAAA,GAAA,EAAA,GAAA,GAAA,EAAA,EAAA,IAAA,GAAA,EAAA,MAAA,GAAA,EAAA,IAAA,GAAA,CAAA,GAAA,CAAA,GAAA,IAAA,EAAfnB,CAAe,EAAA,GAAToB,SAAS,CAACV,CAAD,EAAIM,GAAJ,EAASjB,CAAT,CAAA;AAAA,KACtGsB,yBAAAA,CAAAA,
|
|
1
|
+
{"version":3,"file":"index-DBPmnr4a.d.ts","names":["Split","TupleToUnion","ALPHABET","Alphabet","ValidChar","ApiNameCheck","N","P","R","L","AdvancedRecordMode","AdvancedRecord","K","A","mode","PropertyKey","AnyObject","T","Record","PlainObject","TreeLike","CK","AnyFunction","R$1","AnyAsyncFunction","Promise","AnyGeneratorFunction","Generator","AnyAsyncGeneratorFunction","AsyncGenerator"],"sources":["../node_modules/.pnpm/@pawover+types@0.0.0-alpha._d6a4faea50420a71bc77e0a59520b8b6/node_modules/@pawover/types/dist/index.d.ts"],"sourcesContent":["import { Split, TupleToUnion } from \"type-fest\";\n\n//#region src/api.d.ts\n/** 字母表 */\ntype ALPHABET = \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\";\n/** 单个字母 */\ntype Alphabet = TupleToUnion<Split<ALPHABET, \"\">>;\n/** 有效字符 */\ntype ValidChar = Alphabet | \"_\";\n/** 定义 API 命名 - 键名检查 */\ntype ApiNameCheck<N extends string, P extends string = \"\"> = N extends `${infer L extends ValidChar}${infer R}` ? ApiNameCheck<R, `${P}${L}`> : P extends `${infer S}_` ? S : P;\n//#endregion\n//#region src/advancedRecord.d.ts\ntype AdvancedRecordMode = [\"?\" | \"!\", \"W\" | \"R\"];\ntype AdvancedRecord<K extends PropertyKey, A = unknown, mode extends AdvancedRecordMode = [\"!\", \"W\"]> = {\n \"!\": {\n R: { readonly [P in K]: A };\n W: { [P in K]: A };\n };\n \"?\": {\n R: { readonly [P in K]?: A };\n W: { [P in K]?: A };\n };\n}[mode[0]][mode[1]];\n//#endregion\n//#region src/index.d.ts\n/** 任意对象类型 */\ntype AnyObject<K extends PropertyKey = PropertyKey, T = any> = Record<K, T>;\n/** 普通对象类型 */\ntype PlainObject<K extends PropertyKey = PropertyKey, T = unknown> = Record<K, T>;\n/** 描述树类型 */\ntype TreeLike<T extends AnyObject, CK extends string = \"children\"> = T & Record<CK, TreeLike<T, CK>[]>;\n/** 描述函数类型 */\ntype AnyFunction<P extends any[] = any[], R$1 = any> = (...arg: P) => R$1;\n/** 描述异步函数类型 */\ntype AnyAsyncFunction<P extends any[] = any[], R$1 = any> = (...args: P) => Promise<R$1>;\ntype AnyGeneratorFunction<P extends any[] = any[], T = any, R$1 = any, N = any> = (...args: P) => Generator<T, R$1, N>;\ntype AnyAsyncGeneratorFunction<P extends any[] = any[], T = any, R$1 = any, N = any> = (...args: P) => AsyncGenerator<T, R$1, N>;\n//#endregion\nexport { AdvancedRecord, AdvancedRecordMode, AnyAsyncFunction, AnyAsyncGeneratorFunction, AnyFunction, AnyGeneratorFunction, AnyObject, type ApiNameCheck, PlainObject, TreeLike };\n//# sourceMappingURL=index.d.ts.map"],"x_google_ignoreList":[0],"mappings":";;AA+B+E;AAEN;;KANpEgB,SAQ+EO,CAAAA,UAR3DR,WAQ2DQ,GAR7CR,WAQ6CQ,EAAAA,IAAAA,GAAAA,CAAAA,GARrBL,MAQqBK,CARdX,CAQcW,EARXN,CAQWM,CAAAA;;KAN/EJ,WAM8E,CAAA,UANxDJ,WAMwD,GAN1CA,WAM0C,EAAA,IAAA,OAAA,CAAA,GANdG,MAMc,CANPN,CAMO,EANJK,CAMI,CAAA;AAAA;KAJ9EG,QAKuFb,CAAAA,UALpES,SAKoET,EAAAA,WAAAA,MAAAA,GAAAA,UAAAA,CAAAA,GALvBU,CAKuBV,GALnBW,MAKmBX,CALZc,EAKYd,EALRa,QAKQb,CALCU,CAKDV,EALIc,EAKJd,CAAAA,EAAAA,CAAAA;;KAHvFe,WAG0GC,CAAAA,UAAAA,GAAAA,EAAAA,GAAAA,GAAAA,EAAAA,EAAAA,MAAAA,GAAAA,CAAAA,GAAAA,CAAAA,GAAAA,GAAAA,EAH/ChB,CAG+CgB,EAAAA,GAHzCA,GAGyCA;;KAD1GC,gBAC6FG,CAAAA,UAAAA,GAAAA,EAAAA,GAAAA,GAAAA,EAAAA,EAAAA,MAAAA,GAAAA,CAAAA,GAAAA,CAAAA,GAAAA,IAAAA,EAD5BpB,CAC4BoB,EAAAA,GADtBF,OACsBE,CADdJ,GACcI,CAAAA;KAA7FD,oBAAsG,CAAA,UAAA,GAAA,EAAA,GAAA,GAAA,EAAA,EAAA,IAAA,GAAA,EAAA,MAAA,GAAA,EAAA,IAAA,GAAA,CAAA,GAAA,CAAA,GAAA,IAAA,EAAfnB,CAAe,EAAA,GAAToB,SAAS,CAACV,CAAD,EAAIM,GAAJ,EAASjB,CAAT,CAAA;AAAA,KACtGsB,yBAAAA,CAAAA,UAAyBX,GAAAM,EAAAA,GAAAjB,GAAAA,EAAAA,EAAA,IAAA,GAAA,EAAA,MAAA,GAAA,EAAA,IAAA,GAAA,CAAA,GAAA,CAAA,GAAA,IAAA,EAAmEC,CAAnE,EAAA,GAAyEsB,cAAzE,CAAwFZ,CAAxF,EAA2FM,GAA3F,EAAgGjB,CAAhG,CAAA"}
|