@bit.rhplus/data 0.0.9 → 0.0.10

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/index.d.ts CHANGED
@@ -1,4 +1,11 @@
1
- export default function useData(): {
1
+ export function useData(): {
2
+ fetchData: (api: any, data: any) => Promise<any>;
3
+ fetchDataUIAsync: (api: any, data: any) => Promise<any>;
4
+ getFileURL: (content: any, type: any) => string;
5
+ downloadFileURL: (content: any, type: any, fileName: any) => void;
6
+ };
7
+ export default useSecureData;
8
+ declare function useSecureData(): {
2
9
  fetchData: (api: any, data: any) => Promise<any>;
3
10
  fetchDataUIAsync: (api: any, data: any) => Promise<any>;
4
11
  getFileURL: (content: any, type: any) => string;
package/dist/index.js CHANGED
@@ -1,15 +1,43 @@
1
- import { FetchData, errorNotification } from '@rhplus/wieldy.api';
2
- import { useOidcAccessToken } from "@axa-fr/react-oidc";
3
- export default function useData() {
4
- const { accessToken } = useOidcAccessToken();
5
- const fetchData = (api, data) => FetchData(api, data, accessToken);
1
+ import { FetchData, errorNotification } from '@bit.rhplus/api';
2
+ import { useOidcAccessToken } from '@axa-fr/react-oidc';
3
+ const getFileURL = (content, type) => {
4
+ // Kontrola, zda je `content` base64 řetězec (například zkontrolujeme, jestli obsahuje pouze znaky base64)
5
+ const isBase64 = typeof content === 'string' && /^[A-Za-z0-9+/=]+$/.test(content);
6
+ let byteArray;
7
+ if (isBase64) {
8
+ // Je to base64, převedeme na byteArray
9
+ const byteCharacters = atob(content);
10
+ const byteNumbers = new Array(byteCharacters.length);
11
+ // eslint-disable-next-line no-plusplus
12
+ for (let i = 0; i < byteCharacters.length; i++) {
13
+ byteNumbers[i] = byteCharacters.charCodeAt(i);
14
+ }
15
+ byteArray = new Uint8Array(byteNumbers);
16
+ }
17
+ else {
18
+ // Očekáváme, že content je již byte array
19
+ byteArray = new Uint8Array(content);
20
+ }
21
+ const blob = new Blob([byteArray], { type });
22
+ const fileUrl = window.URL.createObjectURL(blob);
23
+ return fileUrl;
24
+ };
25
+ const downloadFileURL = (content, type, fileName) => {
26
+ const fileURL = getFileURL(content, type);
27
+ const tempLink = document.createElement('a');
28
+ tempLink.href = fileURL;
29
+ tempLink.download = fileName;
30
+ tempLink.click();
31
+ };
32
+ export const useData = () => {
33
+ const fetchData = (api, data) => FetchData(api, data);
6
34
  const fetchDataUIAsync = async (api, data) => {
7
35
  try {
8
36
  const result = await fetchData(api, data);
9
37
  return {
10
38
  ...result,
11
39
  result: 'success',
12
- success: true
40
+ success: true,
13
41
  };
14
42
  }
15
43
  catch (error) {
@@ -17,45 +45,45 @@ export default function useData() {
17
45
  return {
18
46
  result: 'fail',
19
47
  success: false,
20
- error
48
+ error,
21
49
  };
22
50
  }
23
51
  };
24
- const getFileURL = (content, type) => {
25
- // Kontrola, zda je `content` base64 řetězec (například zkontrolujeme, jestli obsahuje pouze znaky base64)
26
- const isBase64 = typeof content === 'string' && /^[A-Za-z0-9+/=]+$/.test(content);
27
- let byteArray;
28
- if (isBase64) {
29
- // Je to base64, převedeme na byteArray
30
- const byteCharacters = atob(content);
31
- const byteNumbers = new Array(byteCharacters.length);
32
- // eslint-disable-next-line no-plusplus
33
- for (let i = 0; i < byteCharacters.length; i++) {
34
- byteNumbers[i] = byteCharacters.charCodeAt(i);
35
- }
36
- byteArray = new Uint8Array(byteNumbers);
52
+ return {
53
+ fetchData,
54
+ fetchDataUIAsync,
55
+ getFileURL,
56
+ downloadFileURL,
57
+ };
58
+ };
59
+ const useSecureData = () => {
60
+ const { accessToken } = useOidcAccessToken();
61
+ const fetchData = (api, data) => FetchData(api, data, accessToken);
62
+ const fetchDataUIAsync = async (api, data) => {
63
+ try {
64
+ const result = await fetchData(api, data);
65
+ return {
66
+ ...result,
67
+ result: 'success',
68
+ success: true,
69
+ };
37
70
  }
38
- else {
39
- // Očekáváme, že content je již byte array
40
- byteArray = new Uint8Array(content);
71
+ catch (error) {
72
+ errorNotification(error);
73
+ return {
74
+ result: 'fail',
75
+ success: false,
76
+ error,
77
+ };
41
78
  }
42
- const blob = new Blob([byteArray], { type });
43
- const fileUrl = window.URL.createObjectURL(blob);
44
- return fileUrl;
45
- };
46
- const downloadFileURL = (content, type, fileName) => {
47
- const fileURL = getFileURL(content, type);
48
- const tempLink = document.createElement("a");
49
- tempLink.href = fileURL;
50
- tempLink.download = fileName;
51
- tempLink.click();
52
79
  };
53
80
  return {
54
81
  fetchData,
55
82
  fetchDataUIAsync,
56
83
  getFileURL,
57
- downloadFileURL
84
+ downloadFileURL,
58
85
  };
59
- }
86
+ };
87
+ export default useSecureData;
60
88
  export { useApiQuery, useApiQuerySilence, useStaticQuery } from './reactQuery';
61
89
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,CAAC,OAAO,UAAU,OAAO;IAC7B,MAAM,EAAE,WAAW,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC7C,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAEnE,MAAM,gBAAgB,GAAG,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC1C,OAAO;gBACL,GAAG,MAAM;gBACT,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,IAAI;aACd,CAAA;QACH,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACb,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,KAAK;gBACd,KAAK;aACN,CAAA;QACH,CAAC;IACH,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QACnC,0GAA0G;QAC1G,MAAM,QAAQ,GAAG,OAAO,OAAO,KAAK,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAElF,IAAI,SAAS,CAAC;QAEd,IAAI,QAAQ,EAAE,CAAC;YACb,uCAAuC;YACvC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YACrC,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACrD,uCAAuC;YACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/C,WAAW,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC;YACD,SAAS,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,0CAA0C;YAC1C,SAAS,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;QAClD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC7C,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC;QACxB,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,QAAQ,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC,CAAA;IAED,OAAO;QACL,SAAS;QACT,gBAAgB;QAChB,UAAU;QACV,eAAe;KAChB,CAAA;AACH,CAAC;AAED,OAAO,EAAC,WAAW,EAAE,kBAAkB,EAAE,cAAc,EAAC,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;IAClC,0GAA0G;IAC1G,MAAM,QAAQ,GACZ,OAAO,OAAO,KAAK,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEnE,IAAI,SAAS,CAAC;IAEd,IAAI,QAAQ,EAAE,CAAC;QACb,uCAAuC;QACvC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrD,uCAAuC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,WAAW,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,SAAS,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,0CAA0C;QAC1C,SAAS,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACjD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEJ,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;IAClD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC7C,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC;IACxB,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,EAAE;IAC1B,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEtD,MAAM,gBAAgB,GAAG,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC1C,OAAO;gBACL,GAAG,MAAM;gBACT,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,KAAK;gBACd,KAAK;aACN,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAGF,OAAO;QACL,SAAS;QACT,gBAAgB;QAChB,UAAU;QACV,eAAe;KAChB,CAAC;AACJ,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,GAAG,EAAE;IACzB,MAAM,EAAE,WAAW,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC7C,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAEnE,MAAM,gBAAgB,GAAG,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC1C,OAAO;gBACL,GAAG,MAAM;gBACT,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,KAAK;gBACd,KAAK;aACN,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAGF,OAAO;QACL,SAAS;QACT,gBAAgB;QAChB,UAAU;QACV,eAAe;KAChB,CAAC;AACJ,CAAC,CAAA;AAED,eAAe,aAAa,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { useQuery, useQueryClient } from '@tanstack/react-query';
2
- import useData from '.';
2
+ import useSecureData from '.';
3
3
  export const useApiQuery = (key, api, params = {}, returnFn, ui = true) => {
4
- const { fetchData, fetchDataUIAsync } = useData();
4
+ const { fetchData, fetchDataUIAsync } = useSecureData();
5
5
  const queryClient = useQueryClient();
6
6
  return {
7
7
  ...useQuery({
@@ -1 +1 @@
1
- {"version":3,"file":"reactQuery.js","sourceRoot":"","sources":["../reactQuery.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,OAAO,MAAM,GAAG,CAAC;AAExB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE;IACxE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,OAAO,EAAE,CAAC;IAClD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO;QACL,GAAG,QAAQ,CAAC;YACV,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,+BAA+B;YAChD,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,MAAM,QAAQ,GAAG,EAAE;oBACjB,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;oBACrC,CAAC,CAAC,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAEjC,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACjC,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC;SACF,CAAC;QACF,sCAAsC;QACtC,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;YACvB,WAAW,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC1C,6BAA6B;gBAC7B,IAAI,CAAC,OAAO;oBAAE,OAAO,OAAO,CAAC;gBAC7B,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,CAClE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAEnD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;IAChD,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,CAAC,GAAG,CAAC;QACf,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;QAC1C,WAAW,EAAE,UAAU;QACvB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"reactQuery.js","sourceRoot":"","sources":["../reactQuery.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,aAAa,MAAM,GAAG,CAAC;AAE9B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE;IACxE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,aAAa,EAAE,CAAC;IACxD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO;QACL,GAAG,QAAQ,CAAC;YACV,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,+BAA+B;YAChD,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,MAAM,QAAQ,GAAG,EAAE;oBACjB,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;oBACrC,CAAC,CAAC,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAEjC,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACjC,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC;SACF,CAAC;QACF,sCAAsC;QACtC,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;YACvB,WAAW,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC1C,6BAA6B;gBAC7B,IAAI,CAAC,OAAO;oBAAE,OAAO,OAAO,CAAC;gBAC7B,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,CAClE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAEnD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;IAChD,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,CAAC,GAAG,CAAC;QACf,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;QAC1C,WAAW,EAAE,UAAU;QACvB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC;AACL,CAAC,CAAC"}
package/index.js CHANGED
@@ -1,32 +1,10 @@
1
- import { FetchData, errorNotification } from '@rhplus/wieldy.api';
2
- import { useOidcAccessToken } from "@axa-fr/react-oidc";
1
+ import { FetchData, errorNotification } from '@bit.rhplus/api';
2
+ import { useOidcAccessToken } from '@axa-fr/react-oidc';
3
3
 
4
- export default function useData() {
5
- const { accessToken } = useOidcAccessToken();
6
- const fetchData = (api, data) => FetchData(api, data, accessToken);
7
-
8
- const fetchDataUIAsync = async (api, data) => {
9
- try {
10
- const result = await fetchData(api, data);
11
- return {
12
- ...result,
13
- result: 'success',
14
- success: true
15
- }
16
- }
17
- catch (error) {
18
- errorNotification(error);
19
- return {
20
- result: 'fail',
21
- success: false,
22
- error
23
- }
24
- }
25
- }
26
-
27
- const getFileURL = (content, type) => {
4
+ const getFileURL = (content, type) => {
28
5
  // Kontrola, zda je `content` base64 řetězec (například zkontrolujeme, jestli obsahuje pouze znaky base64)
29
- const isBase64 = typeof content === 'string' && /^[A-Za-z0-9+/=]+$/.test(content);
6
+ const isBase64 =
7
+ typeof content === 'string' && /^[A-Za-z0-9+/=]+$/.test(content);
30
8
 
31
9
  let byteArray;
32
10
 
@@ -44,25 +22,79 @@ export default function useData() {
44
22
  byteArray = new Uint8Array(content);
45
23
  }
46
24
 
47
- const blob = new Blob([byteArray], { type });
48
- const fileUrl = window.URL.createObjectURL(blob);
25
+ const blob = new Blob([byteArray], { type });
26
+ const fileUrl = window.URL.createObjectURL(blob);
49
27
  return fileUrl;
50
- }
51
-
52
- const downloadFileURL = (content, type, fileName) => {
53
- const fileURL = getFileURL(content, type);
54
- const tempLink = document.createElement("a");
55
- tempLink.href = fileURL;
56
- tempLink.download = fileName;
57
- tempLink.click();
58
- }
28
+ };
59
29
 
30
+ const downloadFileURL = (content, type, fileName) => {
31
+ const fileURL = getFileURL(content, type);
32
+ const tempLink = document.createElement('a');
33
+ tempLink.href = fileURL;
34
+ tempLink.download = fileName;
35
+ tempLink.click();
36
+ };
37
+
38
+ export const useData = () => {
39
+ const fetchData = (api, data) => FetchData(api, data);
40
+
41
+ const fetchDataUIAsync = async (api, data) => {
42
+ try {
43
+ const result = await fetchData(api, data);
44
+ return {
45
+ ...result,
46
+ result: 'success',
47
+ success: true,
48
+ };
49
+ } catch (error) {
50
+ errorNotification(error);
51
+ return {
52
+ result: 'fail',
53
+ success: false,
54
+ error,
55
+ };
56
+ }
57
+ };
58
+
59
+
60
+ return {
61
+ fetchData,
62
+ fetchDataUIAsync,
63
+ getFileURL,
64
+ downloadFileURL,
65
+ };
66
+ }
67
+
68
+ const useSecureData = () => {
69
+ const { accessToken } = useOidcAccessToken();
70
+ const fetchData = (api, data) => FetchData(api, data, accessToken);
71
+
72
+ const fetchDataUIAsync = async (api, data) => {
73
+ try {
74
+ const result = await fetchData(api, data);
75
+ return {
76
+ ...result,
77
+ result: 'success',
78
+ success: true,
79
+ };
80
+ } catch (error) {
81
+ errorNotification(error);
82
+ return {
83
+ result: 'fail',
84
+ success: false,
85
+ error,
86
+ };
87
+ }
88
+ };
89
+
90
+
60
91
  return {
61
92
  fetchData,
62
93
  fetchDataUIAsync,
63
94
  getFileURL,
64
- downloadFileURL
65
- }
95
+ downloadFileURL,
96
+ };
66
97
  }
67
98
 
68
- export {useApiQuery, useApiQuerySilence, useStaticQuery} from './reactQuery';
99
+ export default useSecureData;
100
+ export { useApiQuery, useApiQuerySilence, useStaticQuery } from './reactQuery';
package/package.json CHANGED
@@ -1,19 +1,19 @@
1
1
  {
2
2
  "name": "@bit.rhplus/data",
3
- "version": "0.0.9",
3
+ "version": "0.0.10",
4
4
  "homepage": "https://bit.cloud/remote-scope/data",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "remote-scope",
8
8
  "name": "data",
9
- "version": "0.0.9"
9
+ "version": "0.0.10"
10
10
  },
11
11
  "dependencies": {
12
12
  "@tanstack/react-query": "^5.66.9",
13
- "@rhplus/wieldy.api": "0.0.10"
13
+ "@bit.rhplus/api": "0.0.3"
14
14
  },
15
15
  "devDependencies": {
16
- "@teambit/react.react-env": "1.0.111"
16
+ "@teambit/react.react-env": "1.0.129"
17
17
  },
18
18
  "peerDependencies": {
19
19
  "@axa-fr/react-oidc": "7.24.1"
package/reactQuery.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { useQuery, useQueryClient } from '@tanstack/react-query';
2
- import useData from '.';
2
+ import useSecureData from '.';
3
3
 
4
4
  export const useApiQuery = (key, api, params = {}, returnFn, ui = true) => {
5
- const { fetchData, fetchDataUIAsync } = useData();
5
+ const { fetchData, fetchDataUIAsync } = useSecureData();
6
6
  const queryClient = useQueryClient();
7
7
 
8
8
  return {