@bit.rhplus/data 0.0.12 → 0.0.14

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,11 +1,4 @@
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(): {
1
+ export default function useData(): {
9
2
  fetchData: (api: any, data: any) => Promise<any>;
10
3
  fetchDataUIAsync: (api: any, data: any) => Promise<any>;
11
4
  getFileURL: (content: any, type: any) => string;
package/dist/index.js CHANGED
@@ -1,42 +1,15 @@
1
- import { FetchData, errorNotification } from '@bit.rhplus/api';
2
- import { useOidcAccessToken } from '@axa-fr/react-oidc';
3
- const getFileURL = (content, type) => {
4
- const isBase64 = typeof content === 'string' && /^[A-Za-z0-9+/=]+$/.test(content);
5
- let byteArray;
6
- if (isBase64) {
7
- // Je to base64, převedeme na byteArray
8
- const byteCharacters = atob(content);
9
- const byteNumbers = new Array(byteCharacters.length);
10
- // eslint-disable-next-line no-plusplus
11
- for (let i = 0; i < byteCharacters.length; i++) {
12
- byteNumbers[i] = byteCharacters.charCodeAt(i);
13
- }
14
- byteArray = new Uint8Array(byteNumbers);
15
- }
16
- else {
17
- // Očekáváme, že content je již byte array
18
- byteArray = new Uint8Array(content);
19
- }
20
- const blob = new Blob([byteArray], { type });
21
- const fileUrl = window.URL.createObjectURL(blob);
22
- return fileUrl;
23
- };
24
- const downloadFileURL = (content, type, fileName) => {
25
- const fileURL = getFileURL(content, type);
26
- const tempLink = document.createElement('a');
27
- tempLink.href = fileURL;
28
- tempLink.download = fileName;
29
- tempLink.click();
30
- };
31
- export const useData = () => {
32
- const fetchData = (api, data) => FetchData(api, data);
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);
33
6
  const fetchDataUIAsync = async (api, data) => {
34
7
  try {
35
8
  const result = await fetchData(api, data);
36
9
  return {
37
10
  ...result,
38
11
  result: 'success',
39
- success: true,
12
+ success: true
40
13
  };
41
14
  }
42
15
  catch (error) {
@@ -44,45 +17,45 @@ export const useData = () => {
44
17
  return {
45
18
  result: 'fail',
46
19
  success: false,
47
- error,
20
+ error
48
21
  };
49
22
  }
50
23
  };
51
- return {
52
- fetchData,
53
- fetchDataUIAsync,
54
- getFileURL,
55
- downloadFileURL,
56
- };
57
- };
58
- const useSecureData = () => {
59
- const { accessToken } = useOidcAccessToken();
60
- const fetchData = (api, data) => FetchData(api, data, accessToken);
61
- const fetchDataUIAsync = async (api, data) => {
62
- try {
63
- const result = await fetchData(api, data);
64
- return {
65
- ...result,
66
- result: 'success',
67
- success: true,
68
- };
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);
69
37
  }
70
- catch (error) {
71
- errorNotification(error);
72
- return {
73
- result: 'fail',
74
- success: false,
75
- error,
76
- };
38
+ else {
39
+ // Očekáváme, že content je již byte array
40
+ byteArray = new Uint8Array(content);
77
41
  }
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();
78
52
  };
79
53
  return {
80
54
  fetchData,
81
55
  fetchDataUIAsync,
82
56
  getFileURL,
83
- downloadFileURL,
57
+ downloadFileURL
84
58
  };
85
- };
86
- export default useSecureData;
59
+ }
87
60
  export { useApiQuery, useApiQuerySilence, useStaticQuery } from './reactQuery';
88
61
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.js"],"names":[],"mappings":"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"}
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;IACD,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,7 +1,7 @@
1
1
  import { useQuery, useQueryClient } from '@tanstack/react-query';
2
- import useSecureData from '.';
2
+ import useData from '.';
3
3
  export const useApiQuery = (key, api, params = {}, returnFn, ui = true) => {
4
- const { fetchData, fetchDataUIAsync } = useSecureData();
4
+ const { fetchData, fetchDataUIAsync } = useData();
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,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"}
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"}
package/index.js CHANGED
@@ -1,39 +1,9 @@
1
- import { FetchData, errorNotification } from '@bit.rhplus/api';
2
- import { useOidcAccessToken } from '@axa-fr/react-oidc';
1
+ import { FetchData, errorNotification } from '@rhplus/wieldy.api';
2
+ import { useOidcAccessToken } from "@axa-fr/react-oidc";
3
3
 
4
- const getFileURL = (content, type) => {
5
- const isBase64 =
6
- typeof content === 'string' && /^[A-Za-z0-9+/=]+$/.test(content);
7
-
8
- let byteArray;
9
- if (isBase64) {
10
- // Je to base64, převedeme na byteArray
11
- const byteCharacters = atob(content);
12
- const byteNumbers = new Array(byteCharacters.length);
13
- // eslint-disable-next-line no-plusplus
14
- for (let i = 0; i < byteCharacters.length; i++) {
15
- byteNumbers[i] = byteCharacters.charCodeAt(i);
16
- }
17
- byteArray = new Uint8Array(byteNumbers);
18
- } else {
19
- // Očekáváme, že content je již byte array
20
- byteArray = new Uint8Array(content);
21
- }
22
- const blob = new Blob([byteArray], { type });
23
- const fileUrl = window.URL.createObjectURL(blob);
24
- return fileUrl;
25
- };
26
-
27
- const downloadFileURL = (content, type, fileName) => {
28
- const fileURL = getFileURL(content, type);
29
- const tempLink = document.createElement('a');
30
- tempLink.href = fileURL;
31
- tempLink.download = fileName;
32
- tempLink.click();
33
- };
34
-
35
- export const useData = () => {
36
- const fetchData = (api, data) => FetchData(api, data);
4
+ export default function useData() {
5
+ const { accessToken } = useOidcAccessToken();
6
+ const fetchData = (api, data) => FetchData(api, data, accessToken);
37
7
 
38
8
  const fetchDataUIAsync = async (api, data) => {
39
9
  try {
@@ -41,57 +11,57 @@ export const useData = () => {
41
11
  return {
42
12
  ...result,
43
13
  result: 'success',
44
- success: true,
45
- };
46
- } catch (error) {
14
+ success: true
15
+ }
16
+ }
17
+ catch (error) {
47
18
  errorNotification(error);
48
19
  return {
49
20
  result: 'fail',
50
21
  success: false,
51
- error,
52
- };
22
+ error
23
+ }
53
24
  }
54
- };
25
+ }
55
26
 
56
-
57
- return {
58
- fetchData,
59
- fetchDataUIAsync,
60
- getFileURL,
61
- downloadFileURL,
62
- };
63
- }
27
+ const getFileURL = (content, type) => {
28
+ // 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);
64
30
 
65
- const useSecureData = () => {
66
- const { accessToken } = useOidcAccessToken();
67
- const fetchData = (api, data) => FetchData(api, data, accessToken);
31
+ let byteArray;
68
32
 
69
- const fetchDataUIAsync = async (api, data) => {
70
- try {
71
- const result = await fetchData(api, data);
72
- return {
73
- ...result,
74
- result: 'success',
75
- success: true,
76
- };
77
- } catch (error) {
78
- errorNotification(error);
79
- return {
80
- result: 'fail',
81
- success: false,
82
- error,
83
- };
33
+ if (isBase64) {
34
+ // Je to base64, převedeme na byteArray
35
+ const byteCharacters = atob(content);
36
+ const byteNumbers = new Array(byteCharacters.length);
37
+ // eslint-disable-next-line no-plusplus
38
+ for (let i = 0; i < byteCharacters.length; i++) {
39
+ byteNumbers[i] = byteCharacters.charCodeAt(i);
40
+ }
41
+ byteArray = new Uint8Array(byteNumbers);
42
+ } else {
43
+ // Očekáváme, že content je již byte array
44
+ byteArray = new Uint8Array(content);
84
45
  }
85
- };
86
46
 
87
-
47
+ const blob = new Blob([byteArray], { type });
48
+ const fileUrl = window.URL.createObjectURL(blob);
49
+ 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
+ }
88
59
  return {
89
60
  fetchData,
90
61
  fetchDataUIAsync,
91
62
  getFileURL,
92
- downloadFileURL,
93
- };
63
+ downloadFileURL
64
+ }
94
65
  }
95
66
 
96
- export default useSecureData;
97
- export { useApiQuery, useApiQuerySilence, useStaticQuery } from './reactQuery';
67
+ 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.12",
3
+ "version": "0.0.14",
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.12"
9
+ "version": "0.0.14"
10
10
  },
11
11
  "dependencies": {
12
12
  "@tanstack/react-query": "^5.66.9",
13
- "@bit.rhplus/api": "0.0.2"
13
+ "@rhplus/wieldy.api": "0.0.10"
14
14
  },
15
15
  "devDependencies": {
16
- "@teambit/react.react-env": "1.0.129"
16
+ "@teambit/react.react-env": "1.0.111"
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 useSecureData from '.';
2
+ import useData from '.';
3
3
 
4
4
  export const useApiQuery = (key, api, params = {}, returnFn, ui = true) => {
5
- const { fetchData, fetchDataUIAsync } = useSecureData();
5
+ const { fetchData, fetchDataUIAsync } = useData();
6
6
  const queryClient = useQueryClient();
7
7
 
8
8
  return {