@orbe-agro/client-core 5.3.57 → 5.3.59

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.
@@ -1,11 +1,16 @@
1
- import { jsx as e } from "react/jsx-runtime";
1
+ import { jsx as r } from "react/jsx-runtime";
2
2
  import "../../ui/index.js";
3
3
  import "../../../store/index.js";
4
- import { useThemeStore as t } from "../../../store/themeStore.js";
5
- import o from "../../ui/Spinner/Spinner.js";
6
- const m = () => {
7
- const { loading: r } = t();
8
- return r ? /* @__PURE__ */ e(
4
+ import "../../../../base/store/index.js";
5
+ import { useThemeStore as i } from "../../../store/themeStore.js";
6
+ import { useLoadingConfigStore as a, getCurrentMicrofrontendId as l } from "../../../../base/store/loadingConfigStore.js";
7
+ import s from "../../ui/Spinner/Spinner.js";
8
+ const b = () => {
9
+ const { loading: e } = i(), o = a((t) => {
10
+ const n = l();
11
+ return t.microfrontendConfigs[n] ?? !0;
12
+ });
13
+ return !e || !o ? null : /* @__PURE__ */ r(
9
14
  "div",
10
15
  {
11
16
  className: "fixed inset-0 z-[9999] flex items-center justify-center bg-black bg-opacity-50",
@@ -15,11 +20,11 @@ const m = () => {
15
20
  },
16
21
  role: "progressbar",
17
22
  "aria-label": "Carregando...",
18
- children: /* @__PURE__ */ e(o, {})
23
+ children: /* @__PURE__ */ r(s, {})
19
24
  }
20
- ) : null;
25
+ );
21
26
  };
22
27
  export {
23
- m as default
28
+ b as default
24
29
  };
25
30
  //# sourceMappingURL=GlobalLoading.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalLoading.js","sources":["../../../../../lib/@ecme/components/shared/loaders/GlobalLoading.tsx"],"sourcesContent":["import { Spinner } from \"@/components/ui\";\nimport { useThemeStore } from \"@/store\";\n\nconst GlobalLoading = () => {\n const { loading } = useThemeStore();\n\n if (!loading) return null;\n\n return (\n <div\n className=\"fixed inset-0 z-[9999] flex items-center justify-center bg-black bg-opacity-50\"\n style={{\n pointerEvents: \"all\",\n userSelect: \"none\",\n }}\n role=\"progressbar\"\n aria-label=\"Carregando...\"\n >\n <Spinner />\n </div>\n );\n};\n\nexport default GlobalLoading;\n"],"names":["GlobalLoading","loading","useThemeStore","jsx","Spinner"],"mappings":";;;;;AAGA,MAAMA,IAAgB,MAAM;AAC1B,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAA;AAEpB,SAAKD,IAGH,gBAAAE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,OAAO;AAAA,QACL,eAAe;AAAA,QACf,YAAY;AAAA,MAAA;AAAA,MAEd,MAAK;AAAA,MACL,cAAW;AAAA,MAEX,4BAACC,GAAA,CAAA,CAAQ;AAAA,IAAA;AAAA,EAAA,IAZQ;AAevB;"}
1
+ {"version":3,"file":"GlobalLoading.js","sources":["../../../../../lib/@ecme/components/shared/loaders/GlobalLoading.tsx"],"sourcesContent":["import { Spinner } from \"@/components/ui\";\nimport { useThemeStore } from \"@/store\";\nimport { useLoadingConfigStore, getCurrentMicrofrontendId } from \"@base/store\";\n\nconst GlobalLoading = () => {\n const { loading } = useThemeStore();\n \n const globalLoadingEnabled = useLoadingConfigStore((state) => {\n const microfrontendId = getCurrentMicrofrontendId();\n return state.microfrontendConfigs[microfrontendId] ?? true;\n });\n\n if (!loading || !globalLoadingEnabled) return null;\n\n return (\n <div\n className=\"fixed inset-0 z-[9999] flex items-center justify-center bg-black bg-opacity-50\"\n style={{\n pointerEvents: \"all\",\n userSelect: \"none\",\n }}\n role=\"progressbar\"\n aria-label=\"Carregando...\"\n >\n <Spinner />\n </div>\n );\n};\n\nexport default GlobalLoading;\n"],"names":["GlobalLoading","loading","useThemeStore","globalLoadingEnabled","useLoadingConfigStore","state","microfrontendId","getCurrentMicrofrontendId","jsx","Spinner"],"mappings":";;;;;;;AAIA,MAAMA,IAAgB,MAAM;AAC1B,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAA,GAEdC,IAAuBC,EAAsB,CAACC,MAAU;AAC5D,UAAMC,IAAkBC,EAAA;AACxB,WAAOF,EAAM,qBAAqBC,CAAe,KAAK;AAAA,EACxD,CAAC;AAED,SAAI,CAACL,KAAW,CAACE,IAA6B,OAG5C,gBAAAK;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,OAAO;AAAA,QACL,eAAe;AAAA,QACf,YAAY;AAAA,MAAA;AAAA,MAEd,MAAK;AAAA,MACL,cAAW;AAAA,MAEX,4BAACC,GAAA,CAAA,CAAQ;AAAA,IAAA;AAAA,EAAA;AAGf;"}
@@ -1,23 +1,49 @@
1
1
  import s from "axios";
2
- import { API_URL as a } from "../../../base/configs/api.config.js";
2
+ import { API_URL as f } from "../../../base/configs/api.config.js";
3
3
  import "../../store/index.js";
4
- import i from "./AxiosRequestIntrceptorConfigCallback.js";
5
- import m from "./AxiosResponseIntrceptorErrorCallback.js";
6
- import { useThemeStore as r } from "../../store/themeStore.js";
7
- const o = s.create({
4
+ import "../../../base/store/index.js";
5
+ import d from "./AxiosRequestIntrceptorConfigCallback.js";
6
+ import l from "./AxiosResponseIntrceptorErrorCallback.js";
7
+ import { getCurrentMicrofrontendId as n, useLoadingConfigStore as i } from "../../../base/store/loadingConfigStore.js";
8
+ import { useThemeStore as a } from "../../store/themeStore.js";
9
+ const g = s.create({
8
10
  timeout: 6e4,
9
- baseURL: a
11
+ baseURL: f
10
12
  });
11
- let e = 0;
12
- o.interceptors.request.use(
13
- (t) => (e++, e === 1 && r.getState().setLoading(!0), i(t)),
14
- (t) => (e = Math.max(0, e - 1), e === 0 && r.getState().setLoading(!1), Promise.reject(t))
13
+ let t = 0;
14
+ g.interceptors.request.use(
15
+ (e) => {
16
+ if (t++, t === 1) {
17
+ const o = n();
18
+ i.getState().getGlobalLoadingEnabled(o) && a.getState().setLoading(!0);
19
+ }
20
+ return d(e);
21
+ },
22
+ (e) => {
23
+ if (t = Math.max(0, t - 1), t === 0) {
24
+ const o = n();
25
+ i.getState().getGlobalLoadingEnabled(o) && a.getState().setLoading(!1);
26
+ }
27
+ return Promise.reject(e);
28
+ }
15
29
  );
16
- o.interceptors.response.use(
17
- (t) => (e = Math.max(0, e - 1), e === 0 && r.getState().setLoading(!1), t),
18
- (t) => (e = Math.max(0, e - 1), e === 0 && r.getState().setLoading(!1), m(t), Promise.reject(t))
30
+ g.interceptors.response.use(
31
+ (e) => {
32
+ if (t = Math.max(0, t - 1), t === 0) {
33
+ const o = n();
34
+ i.getState().getGlobalLoadingEnabled(o) && a.getState().setLoading(!1);
35
+ }
36
+ return e;
37
+ },
38
+ (e) => {
39
+ if (t = Math.max(0, t - 1), t === 0) {
40
+ const o = n();
41
+ i.getState().getGlobalLoadingEnabled(o) && a.getState().setLoading(!1);
42
+ }
43
+ return l(e), Promise.reject(e);
44
+ }
19
45
  );
20
46
  export {
21
- o as default
47
+ g as default
22
48
  };
23
49
  //# sourceMappingURL=AxiosBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AxiosBase.js","sources":["../../../../lib/@ecme/services/axios/AxiosBase.ts"],"sourcesContent":["import type { AxiosError } from \"axios\";\nimport axios from \"axios\";\nimport { API_URL } from \"~/base/configs/api.config\";\nimport { useThemeStore } from \"@/store\";\nimport AxiosRequestIntrceptorConfigCallback from \"./AxiosRequestIntrceptorConfigCallback\";\nimport AxiosResponseIntrceptorErrorCallback from \"./AxiosResponseIntrceptorErrorCallback\";\n\nconst AxiosBase = axios.create({\n timeout: 60000,\n baseURL: API_URL,\n});\n\nlet activeRequests = 0;\n\nAxiosBase.interceptors.request.use(\n (config) => {\n activeRequests++;\n if (activeRequests === 1) {\n useThemeStore.getState().setLoading(true);\n }\n return AxiosRequestIntrceptorConfigCallback(config);\n },\n (error) => {\n activeRequests = Math.max(0, activeRequests - 1);\n if (activeRequests === 0) {\n useThemeStore.getState().setLoading(false);\n }\n return Promise.reject(error);\n }\n);\n\nAxiosBase.interceptors.response.use(\n (response) => {\n activeRequests = Math.max(0, activeRequests - 1);\n if (activeRequests === 0) {\n useThemeStore.getState().setLoading(false);\n }\n return response;\n },\n (error: AxiosError) => {\n activeRequests = Math.max(0, activeRequests - 1);\n if (activeRequests === 0) {\n useThemeStore.getState().setLoading(false);\n }\n AxiosResponseIntrceptorErrorCallback(error);\n return Promise.reject(error);\n }\n);\n\nexport default AxiosBase;\n"],"names":["AxiosBase","axios","API_URL","activeRequests","config","useThemeStore","AxiosRequestIntrceptorConfigCallback","error","response","AxiosResponseIntrceptorErrorCallback"],"mappings":";;;;;;AAOA,MAAMA,IAAYC,EAAM,OAAO;AAAA,EAC7B,SAAS;AAAA,EACT,SAASC;AACX,CAAC;AAED,IAAIC,IAAiB;AAErBH,EAAU,aAAa,QAAQ;AAAA,EAC7B,CAACI,OACCD,KACIA,MAAmB,KACrBE,EAAc,SAAA,EAAW,WAAW,EAAI,GAEnCC,EAAqCF,CAAM;AAAA,EAEpD,CAACG,OACCJ,IAAiB,KAAK,IAAI,GAAGA,IAAiB,CAAC,GAC3CA,MAAmB,KACrBE,EAAc,SAAA,EAAW,WAAW,EAAK,GAEpC,QAAQ,OAAOE,CAAK;AAE/B;AAEAP,EAAU,aAAa,SAAS;AAAA,EAC9B,CAACQ,OACCL,IAAiB,KAAK,IAAI,GAAGA,IAAiB,CAAC,GAC3CA,MAAmB,KACrBE,EAAc,SAAA,EAAW,WAAW,EAAK,GAEpCG;AAAA,EAET,CAACD,OACCJ,IAAiB,KAAK,IAAI,GAAGA,IAAiB,CAAC,GAC3CA,MAAmB,KACrBE,EAAc,SAAA,EAAW,WAAW,EAAK,GAE3CI,EAAqCF,CAAK,GACnC,QAAQ,OAAOA,CAAK;AAE/B;"}
1
+ {"version":3,"file":"AxiosBase.js","sources":["../../../../lib/@ecme/services/axios/AxiosBase.ts"],"sourcesContent":["import type { AxiosError } from \"axios\";\nimport axios from \"axios\";\nimport { API_URL } from \"~/base/configs/api.config\";\nimport { useThemeStore } from \"@/store\";\nimport { useLoadingConfigStore, getCurrentMicrofrontendId } from \"@base/store\";\nimport AxiosRequestIntrceptorConfigCallback from \"./AxiosRequestIntrceptorConfigCallback\";\nimport AxiosResponseIntrceptorErrorCallback from \"./AxiosResponseIntrceptorErrorCallback\";\n\nconst AxiosBase = axios.create({\n timeout: 60000,\n baseURL: API_URL,\n});\n\nlet activeRequests = 0;\n\nAxiosBase.interceptors.request.use(\n (config) => {\n activeRequests++;\n if (activeRequests === 1) {\n const microfrontendId = getCurrentMicrofrontendId();\n const loadingConfig = useLoadingConfigStore.getState();\n if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {\n useThemeStore.getState().setLoading(true);\n }\n }\n return AxiosRequestIntrceptorConfigCallback(config);\n },\n (error) => {\n activeRequests = Math.max(0, activeRequests - 1);\n if (activeRequests === 0) {\n const microfrontendId = getCurrentMicrofrontendId();\n const loadingConfig = useLoadingConfigStore.getState();\n if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {\n useThemeStore.getState().setLoading(false);\n }\n }\n return Promise.reject(error);\n }\n);\n\nAxiosBase.interceptors.response.use(\n (response) => {\n activeRequests = Math.max(0, activeRequests - 1);\n if (activeRequests === 0) {\n const microfrontendId = getCurrentMicrofrontendId();\n const loadingConfig = useLoadingConfigStore.getState();\n if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {\n useThemeStore.getState().setLoading(false);\n }\n }\n return response;\n },\n (error: AxiosError) => {\n activeRequests = Math.max(0, activeRequests - 1);\n if (activeRequests === 0) {\n const microfrontendId = getCurrentMicrofrontendId();\n const loadingConfig = useLoadingConfigStore.getState();\n if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {\n useThemeStore.getState().setLoading(false);\n }\n }\n AxiosResponseIntrceptorErrorCallback(error);\n return Promise.reject(error);\n }\n);\n\nexport default AxiosBase;\n"],"names":["AxiosBase","axios","API_URL","activeRequests","config","microfrontendId","getCurrentMicrofrontendId","useLoadingConfigStore","useThemeStore","AxiosRequestIntrceptorConfigCallback","error","response","AxiosResponseIntrceptorErrorCallback"],"mappings":";;;;;;;;AAQA,MAAMA,IAAYC,EAAM,OAAO;AAAA,EAC7B,SAAS;AAAA,EACT,SAASC;AACX,CAAC;AAED,IAAIC,IAAiB;AAErBH,EAAU,aAAa,QAAQ;AAAA,EAC7B,CAACI,MAAW;AAEV,QADAD,KACIA,MAAmB,GAAG;AACxB,YAAME,IAAkBC,EAAA;AAExB,MADsBC,EAAsB,SAAA,EAC1B,wBAAwBF,CAAe,KACvDG,EAAc,SAAA,EAAW,WAAW,EAAI;AAAA,IAE5C;AACA,WAAOC,EAAqCL,CAAM;AAAA,EACpD;AAAA,EACA,CAACM,MAAU;AAET,QADAP,IAAiB,KAAK,IAAI,GAAGA,IAAiB,CAAC,GAC3CA,MAAmB,GAAG;AACxB,YAAME,IAAkBC,EAAA;AAExB,MADsBC,EAAsB,SAAA,EAC1B,wBAAwBF,CAAe,KACvDG,EAAc,SAAA,EAAW,WAAW,EAAK;AAAA,IAE7C;AACA,WAAO,QAAQ,OAAOE,CAAK;AAAA,EAC7B;AACF;AAEAV,EAAU,aAAa,SAAS;AAAA,EAC9B,CAACW,MAAa;AAEZ,QADAR,IAAiB,KAAK,IAAI,GAAGA,IAAiB,CAAC,GAC3CA,MAAmB,GAAG;AACxB,YAAME,IAAkBC,EAAA;AAExB,MADsBC,EAAsB,SAAA,EAC1B,wBAAwBF,CAAe,KACvDG,EAAc,SAAA,EAAW,WAAW,EAAK;AAAA,IAE7C;AACA,WAAOG;AAAA,EACT;AAAA,EACA,CAACD,MAAsB;AAErB,QADAP,IAAiB,KAAK,IAAI,GAAGA,IAAiB,CAAC,GAC3CA,MAAmB,GAAG;AACxB,YAAME,IAAkBC,EAAA;AAExB,MADsBC,EAAsB,SAAA,EAC1B,wBAAwBF,CAAe,KACvDG,EAAc,SAAA,EAAW,WAAW,EAAK;AAAA,IAE7C;AACA,WAAAI,EAAqCF,CAAK,GACnC,QAAQ,OAAOA,CAAK;AAAA,EAC7B;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalLoading.d.ts","sourceRoot":"","sources":["../../../../../../lib/@ecme/components/shared/loaders/GlobalLoading.tsx"],"names":[],"mappings":"AAGA,QAAA,MAAM,aAAa,sDAkBlB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"GlobalLoading.d.ts","sourceRoot":"","sources":["../../../../../../lib/@ecme/components/shared/loaders/GlobalLoading.tsx"],"names":[],"mappings":"AAIA,QAAA,MAAM,aAAa,sDAuBlB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AxiosBase.d.ts","sourceRoot":"","sources":["../../../../../lib/@ecme/services/axios/AxiosBase.ts"],"names":[],"mappings":"AAOA,QAAA,MAAM,SAAS,+BAGb,CAAC;AAuCH,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"AxiosBase.d.ts","sourceRoot":"","sources":["../../../../../lib/@ecme/services/axios/AxiosBase.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,SAAS,+BAGb,CAAC;AAuDH,eAAe,SAAS,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export * from './components';
2
2
  export * from './configs';
3
+ export * from './store';
3
4
  export * from './@types';
4
5
  export * from './hooks';
5
6
  export * from './services';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/base/index.ts"],"names":[],"mappings":"AAEA,cAAc,cAAc,CAAC;AAG7B,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,YAAY,CAAC;AAG3B,cAAc,SAAS,CAAC;AAGxB,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/base/index.ts"],"names":[],"mappings":"AAEA,cAAc,cAAc,CAAC;AAG7B,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,YAAY,CAAC;AAG3B,cAAc,SAAS,CAAC;AAGxB,cAAc,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './loadingConfigStore';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/base/store/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,40 @@
1
+ interface MicrofrontendLoadingConfig {
2
+ [microfrontendId: string]: boolean;
3
+ }
4
+ interface LoadingConfigState {
5
+ microfrontendConfigs: MicrofrontendLoadingConfig;
6
+ }
7
+ interface LoadingConfigActions {
8
+ setGlobalLoadingEnabled: (enabled: boolean, microfrontendId: string) => void;
9
+ enableGlobalLoading: (microfrontendId: string) => void;
10
+ disableGlobalLoading: (microfrontendId: string) => void;
11
+ getGlobalLoadingEnabled: (microfrontendId: string) => boolean;
12
+ }
13
+ export declare const useLoadingConfigStore: import("zustand").UseBoundStore<Omit<import("zustand").StoreApi<LoadingConfigState & LoadingConfigActions>, "setState" | "persist"> & {
14
+ setState(partial: (LoadingConfigState & LoadingConfigActions) | Partial<LoadingConfigState & LoadingConfigActions> | ((state: LoadingConfigState & LoadingConfigActions) => (LoadingConfigState & LoadingConfigActions) | Partial<LoadingConfigState & LoadingConfigActions>), replace?: false | undefined): unknown;
15
+ setState(state: (LoadingConfigState & LoadingConfigActions) | ((state: LoadingConfigState & LoadingConfigActions) => LoadingConfigState & LoadingConfigActions), replace: true): unknown;
16
+ persist: {
17
+ setOptions: (options: Partial<import("zustand/middleware").PersistOptions<LoadingConfigState & LoadingConfigActions, LoadingConfigState & LoadingConfigActions, unknown>>) => void;
18
+ clearStorage: () => void;
19
+ rehydrate: () => Promise<void> | void;
20
+ hasHydrated: () => boolean;
21
+ onHydrate: (fn: (state: LoadingConfigState & LoadingConfigActions) => void) => () => void;
22
+ onFinishHydration: (fn: (state: LoadingConfigState & LoadingConfigActions) => void) => () => void;
23
+ getOptions: () => Partial<import("zustand/middleware").PersistOptions<LoadingConfigState & LoadingConfigActions, LoadingConfigState & LoadingConfigActions, unknown>>;
24
+ };
25
+ }>;
26
+ export declare const useLoadingConfigForMicrofrontend: (microfrontendId: string) => {
27
+ globalLoadingEnabled: boolean;
28
+ setGlobalLoadingEnabled: (enabled: boolean) => void;
29
+ enableGlobalLoading: () => void;
30
+ disableGlobalLoading: () => void;
31
+ };
32
+ export declare const getCurrentMicrofrontendId: () => string;
33
+ export declare const useAutoLoadingConfig: () => {
34
+ globalLoadingEnabled: boolean;
35
+ setGlobalLoadingEnabled: (enabled: boolean) => void;
36
+ enableGlobalLoading: () => void;
37
+ disableGlobalLoading: () => void;
38
+ };
39
+ export {};
40
+ //# sourceMappingURL=loadingConfigStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadingConfigStore.d.ts","sourceRoot":"","sources":["../../../../lib/base/store/loadingConfigStore.ts"],"names":[],"mappings":"AAKA,UAAU,0BAA0B;IAClC,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC;CACpC;AAED,UAAU,kBAAkB;IAC1B,oBAAoB,EAAE,0BAA0B,CAAC;CAClD;AAED,UAAU,oBAAoB;IAC5B,uBAAuB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7E,mBAAmB,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,oBAAoB,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,IAAI,CAAC;IACxD,uBAAuB,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,OAAO,CAAC;CAC/D;AAMD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EA6BjC,CAAC;AAGF,eAAO,MAAM,gCAAgC,GAAI,iBAAiB,MAAM;;uCAajC,OAAO;;;CAI7C,CAAC;AAGF,eAAO,MAAM,yBAAyB,QAAO,MAiB5C,CAAC;AAGF,eAAO,MAAM,oBAAoB;;uCA3BM,OAAO;;;CAiC7C,CAAC"}