@pagopa/selfcare-common-frontend 0.0.6 → 0.1.2

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.
Files changed (83) hide show
  1. package/README.md +5 -3
  2. package/build.info +2 -2
  3. package/common-polyfill.d.ts +8 -0
  4. package/common-polyfill.js +11 -0
  5. package/common-polyfill.js.map +1 -0
  6. package/components/CustomAvatar.d.ts +8 -1
  7. package/components/CustomAvatar.js +11 -5
  8. package/components/CustomAvatar.js.map +1 -0
  9. package/components/CustomPagination.d.ts +4 -0
  10. package/components/CustomPagination.js +14 -7
  11. package/components/CustomPagination.js.map +1 -0
  12. package/components/ErrorBoundary/ErrorBoundary.js +30 -20
  13. package/components/ErrorBoundary/ErrorBoundary.js.map +1 -0
  14. package/components/ErrorBoundary/components/BlockingErrorPage.js +8 -5
  15. package/components/ErrorBoundary/components/BlockingErrorPage.js.map +1 -0
  16. package/components/FilterModal.d.ts +12 -1
  17. package/components/FilterModal.js +20 -14
  18. package/components/FilterModal.js.map +1 -0
  19. package/components/Footer/Footer.d.ts +2 -0
  20. package/components/Footer/Footer.js +15 -11
  21. package/components/Footer/Footer.js.map +1 -0
  22. package/components/Header/Header.d.ts +4 -0
  23. package/components/Header/Header.js +15 -10
  24. package/components/Header/Header.js.map +1 -0
  25. package/components/Header/subHeader/SubHeader.js +9 -5
  26. package/components/Header/subHeader/SubHeader.js.map +1 -0
  27. package/components/Loading/LoadingOverlay.d.ts +6 -1
  28. package/components/Loading/LoadingOverlay.js +21 -11
  29. package/components/Loading/LoadingOverlay.js.map +1 -0
  30. package/components/SessionModal.d.ts +12 -0
  31. package/components/SessionModal.js +16 -10
  32. package/components/SessionModal.js.map +1 -0
  33. package/components/TitleBox.d.ts +10 -2
  34. package/components/TitleBox.js +10 -5
  35. package/components/TitleBox.js.map +1 -0
  36. package/components/Toast.d.ts +13 -3
  37. package/components/Toast.js +26 -19
  38. package/components/Toast.js.map +1 -0
  39. package/config/env.d.ts +1 -1
  40. package/config/env.js +8 -2
  41. package/config/env.js.map +1 -0
  42. package/decorators/__mocks__/withLogin.js +17 -12
  43. package/decorators/__mocks__/withLogin.js.map +1 -0
  44. package/decorators/withLogin.d.ts +4 -0
  45. package/decorators/withLogin.js +22 -13
  46. package/decorators/withLogin.js.map +1 -0
  47. package/hooks/useErrorDispatcher.d.ts +1 -0
  48. package/hooks/useErrorDispatcher.js +10 -5
  49. package/hooks/useErrorDispatcher.js.map +1 -0
  50. package/hooks/useLoading.d.ts +1 -0
  51. package/hooks/useLoading.js +13 -8
  52. package/hooks/useLoading.js.map +1 -0
  53. package/hooks/useLogin.js +21 -15
  54. package/hooks/useLogin.js.map +1 -0
  55. package/index.d.ts +10 -0
  56. package/index.js +35 -10
  57. package/index.js.map +1 -0
  58. package/model/Page.js +3 -1
  59. package/model/Page.js.map +1 -0
  60. package/model/PageRequest.js +3 -1
  61. package/model/PageRequest.js.map +1 -0
  62. package/model/PageResource.js +3 -1
  63. package/model/PageResource.js.map +1 -0
  64. package/model/Party.js +3 -1
  65. package/model/Party.js.map +1 -0
  66. package/model/User.js +3 -1
  67. package/model/User.js.map +1 -0
  68. package/package.json +1 -1
  69. package/redux/slices/appStateSlice.d.ts +9 -0
  70. package/redux/slices/appStateSlice.js +9 -5
  71. package/redux/slices/appStateSlice.js.map +1 -0
  72. package/redux/slices/userSlice.js +9 -5
  73. package/redux/slices/userSlice.js.map +1 -0
  74. package/services/errorService.js +6 -1
  75. package/services/errorService.js.map +1 -0
  76. package/utils/constants.js +8 -4
  77. package/utils/constants.js.map +1 -0
  78. package/utils/routes-utils.js +6 -1
  79. package/utils/routes-utils.js.map +1 -0
  80. package/utils/storage-utils.js +10 -3
  81. package/utils/storage-utils.js.map +1 -0
  82. package/utils/utils.js +6 -1
  83. package/utils/utils.js.map +1 -0
package/model/Page.js CHANGED
@@ -1 +1,3 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Page.js","sourceRoot":"","sources":["../../src/lib/model/Page.ts"],"names":[],"mappings":""}
@@ -1 +1,3 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=PageRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageRequest.js","sourceRoot":"","sources":["../../src/lib/model/PageRequest.ts"],"names":[],"mappings":""}
@@ -1 +1,3 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=PageResource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageResource.js","sourceRoot":"","sources":["../../src/lib/model/PageResource.ts"],"names":[],"mappings":""}
package/model/Party.js CHANGED
@@ -1 +1,3 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Party.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Party.js","sourceRoot":"","sources":["../../src/lib/model/Party.tsx"],"names":[],"mappings":""}
package/model/User.js CHANGED
@@ -1 +1,3 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=User.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"User.js","sourceRoot":"","sources":["../../src/lib/model/User.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pagopa/selfcare-common-frontend",
3
3
  "description": "Shared React components for the pagopa selfcare project",
4
- "version": "0.0.6",
4
+ "version": "0.1.2",
5
5
  "license": "MIT",
6
6
  "repository": "https://github.com/pagopa/selfcare-common-frontend",
7
7
  "author": "https://www.pagopa.gov.it",
@@ -1,15 +1,24 @@
1
1
  import { PayloadAction } from '@reduxjs/toolkit';
2
2
  import { ErrorInfo } from 'react';
3
3
  export declare type AppError = {
4
+ /** The identifier used to recognize the error: it cannot be possible to have the same error id at the same time */
4
5
  id: string;
6
+ /** The Error thrown */
5
7
  error: Error;
6
8
  errorInfo?: ErrorInfo;
9
+ /** If true, this error will show the error page, not allowing the user to do anything, otherwise it will show a closable popup */
7
10
  blocking: boolean;
11
+ /** A description of the error to send when notifying the error */
8
12
  techDescription: string;
13
+ /** A text to show as title of the popup when a not blocking error occurs */
9
14
  displayableTitle?: string;
15
+ /** A text to show as body of the popup when a not blocking error occurs */
10
16
  displayableDescription?: string;
17
+ /** If defined, in case of not blocking error, it will render a retry button which will execute this function */
11
18
  onRetry?: () => void;
19
+ /** If defined, in case of not blocking error, it will be executed when closing the popup */
12
20
  onClose?: () => void;
21
+ /** If true, it will notify the error */
13
22
  toNotify: boolean;
14
23
  };
15
24
  interface AppStateState {
@@ -1,4 +1,7 @@
1
- import { createSlice } from '@reduxjs/toolkit';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.appStateSelectors = exports.appStateReducer = exports.appStateActions = exports.appStateSlice = void 0;
4
+ const toolkit_1 = require("@reduxjs/toolkit");
2
5
  const initialState = {
3
6
  loading: {
4
7
  result: false,
@@ -7,7 +10,7 @@ const initialState = {
7
10
  errors: [],
8
11
  };
9
12
  /* eslint-disable functional/immutable-data */
10
- export const appStateSlice = createSlice({
13
+ exports.appStateSlice = (0, toolkit_1.createSlice)({
11
14
  name: 'appState',
12
15
  initialState,
13
16
  reducers: {
@@ -29,9 +32,10 @@ export const appStateSlice = createSlice({
29
32
  },
30
33
  },
31
34
  });
32
- export const appStateActions = appStateSlice.actions;
33
- export const appStateReducer = appStateSlice.reducer;
34
- export const appStateSelectors = {
35
+ exports.appStateActions = exports.appStateSlice.actions;
36
+ exports.appStateReducer = exports.appStateSlice.reducer;
37
+ exports.appStateSelectors = {
35
38
  selectLoading: (state) => state.appState.loading.result,
36
39
  selectErrors: (state) => state.appState.errors,
37
40
  };
41
+ //# sourceMappingURL=appStateSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appStateSlice.js","sourceRoot":"","sources":["../../../src/lib/redux/slices/appStateSlice.ts"],"names":[],"mappings":";;;AAAA,8CAA8D;AAiC9D,MAAM,YAAY,GAAkB;IAClC,OAAO,EAAE;QACP,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,EAAE;KACV;IACD,MAAM,EAAE,EAAE;CACX,CAAC;AAEF,8CAA8C;AACjC,QAAA,aAAa,GAAG,IAAA,qBAAW,EAAC;IACvC,IAAI,EAAE,UAAU;IAChB,YAAY;IACZ,QAAQ,EAAE;QACR,UAAU,EAAE,CAAC,KAAK,EAAE,MAAyD,EAAE,EAAE;YAC/E,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE;gBAC1B,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;gBAC5B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;aACjD;iBAAM;gBACL,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChD,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;aACpE;QACH,CAAC;QACD,QAAQ,EAAE,CAAC,KAAK,EAAE,MAA+B,EAAE,EAAE;YACnD,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QACD,WAAW,EAAE,CAAC,KAAK,EAAE,MAA+B,EAAE,EAAE;YACtD,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;KACF;CACF,CAAC,CAAC;AAEU,QAAA,eAAe,GAAG,qBAAa,CAAC,OAAO,CAAC;AACxC,QAAA,eAAe,GAAG,qBAAa,CAAC,OAAO,CAAC;AAExC,QAAA,iBAAiB,GAAG;IAC/B,aAAa,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM;IAC5D,YAAY,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM;CACpD,CAAC"}
@@ -1,7 +1,10 @@
1
- import { createSlice } from '@reduxjs/toolkit';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.userSelectors = exports.userReducer = exports.userActions = exports.userSlice = void 0;
4
+ const toolkit_1 = require("@reduxjs/toolkit");
2
5
  const initialState = {};
3
6
  /* eslint-disable functional/immutable-data */
4
- export const userSlice = createSlice({
7
+ exports.userSlice = (0, toolkit_1.createSlice)({
5
8
  name: 'user',
6
9
  initialState,
7
10
  reducers: {
@@ -10,8 +13,9 @@ export const userSlice = createSlice({
10
13
  },
11
14
  },
12
15
  });
13
- export const userActions = userSlice.actions;
14
- export const userReducer = userSlice.reducer;
15
- export const userSelectors = {
16
+ exports.userActions = exports.userSlice.actions;
17
+ exports.userReducer = exports.userSlice.reducer;
18
+ exports.userSelectors = {
16
19
  selectLoggedUser: (state) => state.user.logged,
17
20
  };
21
+ //# sourceMappingURL=userSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userSlice.js","sourceRoot":"","sources":["../../../src/lib/redux/slices/userSlice.ts"],"names":[],"mappings":";;;AAAA,8CAA8D;AAO9D,MAAM,YAAY,GAAc,EAAE,CAAC;AAEnC,8CAA8C;AACjC,QAAA,SAAS,GAAG,IAAA,qBAAW,EAAC;IACnC,IAAI,EAAE,MAAM;IACZ,YAAY;IACZ,QAAQ,EAAE;QACR,aAAa,EAAE,CAAC,KAAK,EAAE,MAA2B,EAAE,EAAE;YACpD,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC;KACF;CACF,CAAC,CAAC;AAEU,QAAA,WAAW,GAAG,iBAAS,CAAC,OAAO,CAAC;AAChC,QAAA,WAAW,GAAG,iBAAS,CAAC,OAAO,CAAC;AAEhC,QAAA,aAAa,GAAG;IAC3B,gBAAgB,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM;CACpD,CAAC"}
@@ -1,7 +1,12 @@
1
- export const handleErrors = (errors) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleErrors = void 0;
4
+ const handleErrors = (errors) => {
2
5
  errors
3
6
  .filter((e) => e.toNotify)
4
7
  .forEach((e) => {
5
8
  console.error('An error occurred: ', e);
6
9
  });
7
10
  };
11
+ exports.handleErrors = handleErrors;
12
+ //# sourceMappingURL=errorService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorService.js","sourceRoot":"","sources":["../../src/lib/services/errorService.ts"],"names":[],"mappings":";;;AAEO,MAAM,YAAY,GAAG,CAAC,MAAuB,EAAE,EAAE;IACtD,MAAM;SACH,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;SACzB,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACb,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AANW,QAAA,YAAY,gBAMvB"}
@@ -1,7 +1,11 @@
1
- export const STORAGE_KEY_USER = 'user';
2
- export const STORAGE_KEY_TOKEN = 'token';
3
- export const LOADING_TASK_LOGIN_CHECK = 'LOGIN_CHECK';
4
- export const roleLabels = {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.roleLabels = exports.LOADING_TASK_LOGIN_CHECK = exports.STORAGE_KEY_TOKEN = exports.STORAGE_KEY_USER = void 0;
4
+ exports.STORAGE_KEY_USER = 'user';
5
+ exports.STORAGE_KEY_TOKEN = 'token';
6
+ exports.LOADING_TASK_LOGIN_CHECK = 'LOGIN_CHECK';
7
+ exports.roleLabels = {
5
8
  ADMIN: { shortLabel: 'Ref. Amministrativo', longLabel: 'Referente Amministrativo' },
6
9
  LIMITED: { shortLabel: 'Ref. Operativo', longLabel: 'Referente Operativo' },
7
10
  };
11
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/lib/utils/constants.ts"],"names":[],"mappings":";;;AAEa,QAAA,gBAAgB,GAAG,MAAM,CAAC;AAC1B,QAAA,iBAAiB,GAAG,OAAO,CAAC;AAE5B,QAAA,wBAAwB,GAAG,aAAa,CAAC;AAEzC,QAAA,UAAU,GAAqE;IAC1F,KAAK,EAAE,EAAE,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAE,0BAA0B,EAAE;IACnF,OAAO,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,qBAAqB,EAAE;CAC5E,CAAC"}
@@ -1 +1,6 @@
1
- export const resolvePathVariables = (path, pathVariables) => Object.keys(pathVariables).reduce((result, key) => result.replace(`:${key}`, pathVariables[key]), path);
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolvePathVariables = void 0;
4
+ const resolvePathVariables = (path, pathVariables) => Object.keys(pathVariables).reduce((result, key) => result.replace(`:${key}`, pathVariables[key]), path);
5
+ exports.resolvePathVariables = resolvePathVariables;
6
+ //# sourceMappingURL=routes-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes-utils.js","sourceRoot":"","sources":["../../src/lib/utils/routes-utils.tsx"],"names":[],"mappings":";;;AAAO,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,aAAwC,EAAE,EAAE,CAC7F,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CAC/B,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,EAC9D,IAAI,CACL,CAAC;AAJS,QAAA,oBAAoB,wBAI7B"}
@@ -1,7 +1,11 @@
1
- export function storageDelete(key) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.storageRead = exports.storageWrite = exports.storageDelete = void 0;
4
+ function storageDelete(key) {
2
5
  window.sessionStorage.removeItem(key);
3
6
  }
4
- export function storageWrite(key, value, type) {
7
+ exports.storageDelete = storageDelete;
8
+ function storageWrite(key, value, type) {
5
9
  const stringifyFn = {
6
10
  string: () => value,
7
11
  number: () => String(value),
@@ -10,7 +14,8 @@ export function storageWrite(key, value, type) {
10
14
  const stringified = stringifyFn[type]();
11
15
  window.sessionStorage.setItem(key, stringified);
12
16
  }
13
- export function storageRead(key, type) {
17
+ exports.storageWrite = storageWrite;
18
+ function storageRead(key, type) {
14
19
  const value = window.sessionStorage.getItem(key);
15
20
  if (value === null) {
16
21
  return;
@@ -22,3 +27,5 @@ export function storageRead(key, type) {
22
27
  };
23
28
  return parseFn[type]();
24
29
  }
30
+ exports.storageRead = storageRead;
31
+ //# sourceMappingURL=storage-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-utils.js","sourceRoot":"","sources":["../../src/lib/utils/storage-utils.ts"],"names":[],"mappings":";;;AAIA,SAAgB,aAAa,CAAC,GAAW;IACvC,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACxC,CAAC;AAFD,sCAEC;AAED,SAAgB,YAAY,CAAC,GAAW,EAAE,KAAmB,EAAE,IAAsB;IACnF,MAAM,WAAW,GAAgD;QAC/D,MAAM,EAAE,GAAG,EAAE,CAAC,KAAe;QAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;KACpC,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;IAExC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AAClD,CAAC;AAVD,oCAUC;AAED,SAAgB,WAAW,CAAC,GAAW,EAAE,IAAsB;IAC7D,MAAM,KAAK,GAAkB,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEhE,IAAI,KAAK,KAAK,IAAI,EAAE;QAClB,OAAO;KACR;IAED,MAAM,OAAO,GAAG;QACd,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK;QACnB,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;KAChC,CAAC;IAEF,OAAO,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;AACzB,CAAC;AAdD,kCAcC"}
package/utils/utils.js CHANGED
@@ -1,6 +1,11 @@
1
- export const formatDateAsLongString = (date) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatDateAsLongString = void 0;
4
+ const formatDateAsLongString = (date) => {
2
5
  const ye = new Intl.DateTimeFormat('it', { year: 'numeric' }).format(date);
3
6
  const mo = new Intl.DateTimeFormat('it', { month: 'long' }).format(date);
4
7
  const da = new Intl.DateTimeFormat('it', { day: '2-digit' }).format(date);
5
8
  return `${da} ${mo} ${ye}`;
6
9
  };
10
+ exports.formatDateAsLongString = formatDateAsLongString;
11
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils/utils.ts"],"names":[],"mappings":";;;AAAO,MAAM,sBAAsB,GAAG,CAAC,IAAU,EAAU,EAAE;IAEzD,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE1E,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;AAC/B,CAAC,CAAC;AAPW,QAAA,sBAAsB,0BAOjC"}