@bosonprotocol/react-kit 0.32.0-alpha.9 → 0.32.0

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 (133) hide show
  1. package/dist/cjs/components/error/SimpleError.d.ts +7 -5
  2. package/dist/cjs/components/error/SimpleError.d.ts.map +1 -1
  3. package/dist/cjs/components/error/SimpleError.js +4 -4
  4. package/dist/cjs/components/error/SimpleError.js.map +1 -1
  5. package/dist/cjs/components/form/Field.styles.d.ts +0 -1
  6. package/dist/cjs/components/form/Field.styles.d.ts.map +1 -1
  7. package/dist/cjs/components/form/Field.styles.js.map +1 -1
  8. package/dist/cjs/components/form/FormField.d.ts +1 -1
  9. package/dist/cjs/components/form/FormField.d.ts.map +1 -1
  10. package/dist/cjs/components/form/FormField.js +5 -3
  11. package/dist/cjs/components/form/FormField.js.map +1 -1
  12. package/dist/cjs/components/form/Upload/ImageEditorModal/ImageEditor.d.ts +9 -0
  13. package/dist/cjs/components/form/Upload/ImageEditorModal/ImageEditor.d.ts.map +1 -0
  14. package/dist/cjs/components/form/Upload/ImageEditorModal/ImageEditor.js +65 -0
  15. package/dist/cjs/components/form/Upload/ImageEditorModal/ImageEditor.js.map +1 -0
  16. package/dist/cjs/components/form/Upload/ImageEditorModal/ImageEditorModal.d.ts +10 -0
  17. package/dist/cjs/components/form/Upload/ImageEditorModal/ImageEditorModal.d.ts.map +1 -0
  18. package/dist/cjs/components/form/Upload/ImageEditorModal/ImageEditorModal.js +100 -0
  19. package/dist/cjs/components/form/Upload/ImageEditorModal/ImageEditorModal.js.map +1 -0
  20. package/dist/cjs/components/form/Upload/Upload.d.ts +39 -2
  21. package/dist/cjs/components/form/Upload/Upload.d.ts.map +1 -1
  22. package/dist/cjs/components/form/Upload/Upload.js +81 -19
  23. package/dist/cjs/components/form/Upload/Upload.js.map +1 -1
  24. package/dist/cjs/components/form/Upload/WithUploadToIpfs.d.ts +1 -1
  25. package/dist/cjs/components/form/Upload/WithUploadToIpfs.d.ts.map +1 -1
  26. package/dist/cjs/components/form/Upload/WithUploadToIpfs.js +9 -7
  27. package/dist/cjs/components/form/Upload/WithUploadToIpfs.js.map +1 -1
  28. package/dist/cjs/components/form/index.d.ts +1 -1
  29. package/dist/cjs/components/form/index.d.ts.map +1 -1
  30. package/dist/cjs/components/form/index.js +1 -1
  31. package/dist/cjs/components/form/index.js.map +1 -1
  32. package/dist/cjs/components/form/types.d.ts +17 -4
  33. package/dist/cjs/components/form/types.d.ts.map +1 -1
  34. package/dist/cjs/components/modal/ModalComponents.d.ts +2 -0
  35. package/dist/cjs/components/modal/ModalComponents.d.ts.map +1 -1
  36. package/dist/cjs/components/modal/ModalComponents.js +3 -1
  37. package/dist/cjs/components/modal/ModalComponents.js.map +1 -1
  38. package/dist/cjs/components/modal/ModalContext.d.ts +2 -1
  39. package/dist/cjs/components/modal/ModalContext.d.ts.map +1 -1
  40. package/dist/cjs/components/modal/ModalContext.js.map +1 -1
  41. package/dist/cjs/components/modal/ModalTypes.d.ts +1 -0
  42. package/dist/cjs/components/modal/ModalTypes.d.ts.map +1 -1
  43. package/dist/cjs/components/modal/ModalTypes.js +2 -1
  44. package/dist/cjs/components/modal/ModalTypes.js.map +1 -1
  45. package/dist/cjs/components/modal/useModal.d.ts +3 -2
  46. package/dist/cjs/components/modal/useModal.d.ts.map +1 -1
  47. package/dist/cjs/hooks/images/useFileImage.d.ts +8 -0
  48. package/dist/cjs/hooks/images/useFileImage.d.ts.map +1 -0
  49. package/dist/cjs/hooks/images/useFileImage.js +26 -0
  50. package/dist/cjs/hooks/images/useFileImage.js.map +1 -0
  51. package/dist/cjs/hooks/images/useIpfsImage.d.ts +13 -0
  52. package/dist/cjs/hooks/images/useIpfsImage.d.ts.map +1 -0
  53. package/dist/cjs/hooks/images/useIpfsImage.js +26 -0
  54. package/dist/cjs/hooks/images/useIpfsImage.js.map +1 -0
  55. package/dist/cjs/lib/base64/base64.d.ts +4 -1
  56. package/dist/cjs/lib/base64/base64.d.ts.map +1 -1
  57. package/dist/cjs/lib/base64/base64.js +1 -1
  58. package/dist/cjs/lib/base64/base64.js.map +1 -1
  59. package/dist/esm/components/error/SimpleError.d.ts +7 -5
  60. package/dist/esm/components/error/SimpleError.d.ts.map +1 -1
  61. package/dist/esm/components/error/SimpleError.js +4 -4
  62. package/dist/esm/components/error/SimpleError.js.map +1 -1
  63. package/dist/esm/components/form/Field.styles.d.ts +0 -1
  64. package/dist/esm/components/form/Field.styles.d.ts.map +1 -1
  65. package/dist/esm/components/form/Field.styles.js.map +1 -1
  66. package/dist/esm/components/form/FormField.d.ts +1 -1
  67. package/dist/esm/components/form/FormField.d.ts.map +1 -1
  68. package/dist/esm/components/form/FormField.js +3 -2
  69. package/dist/esm/components/form/FormField.js.map +1 -1
  70. package/dist/esm/components/form/Upload/ImageEditorModal/ImageEditor.d.ts +9 -0
  71. package/dist/esm/components/form/Upload/ImageEditorModal/ImageEditor.d.ts.map +1 -0
  72. package/dist/esm/components/form/Upload/ImageEditorModal/ImageEditor.js +36 -0
  73. package/dist/esm/components/form/Upload/ImageEditorModal/ImageEditor.js.map +1 -0
  74. package/dist/esm/components/form/Upload/ImageEditorModal/ImageEditorModal.d.ts +10 -0
  75. package/dist/esm/components/form/Upload/ImageEditorModal/ImageEditorModal.d.ts.map +1 -0
  76. package/dist/esm/components/form/Upload/ImageEditorModal/ImageEditorModal.js +48 -0
  77. package/dist/esm/components/form/Upload/ImageEditorModal/ImageEditorModal.js.map +1 -0
  78. package/dist/esm/components/form/Upload/Upload.d.ts +39 -2
  79. package/dist/esm/components/form/Upload/Upload.d.ts.map +1 -1
  80. package/dist/esm/components/form/Upload/Upload.js +93 -19
  81. package/dist/esm/components/form/Upload/Upload.js.map +1 -1
  82. package/dist/esm/components/form/Upload/WithUploadToIpfs.d.ts +1 -1
  83. package/dist/esm/components/form/Upload/WithUploadToIpfs.d.ts.map +1 -1
  84. package/dist/esm/components/form/Upload/WithUploadToIpfs.js +9 -7
  85. package/dist/esm/components/form/Upload/WithUploadToIpfs.js.map +1 -1
  86. package/dist/esm/components/form/index.d.ts +1 -1
  87. package/dist/esm/components/form/index.d.ts.map +1 -1
  88. package/dist/esm/components/form/index.js +1 -1
  89. package/dist/esm/components/form/index.js.map +1 -1
  90. package/dist/esm/components/form/types.d.ts +17 -4
  91. package/dist/esm/components/form/types.d.ts.map +1 -1
  92. package/dist/esm/components/modal/ModalComponents.d.ts +2 -0
  93. package/dist/esm/components/modal/ModalComponents.d.ts.map +1 -1
  94. package/dist/esm/components/modal/ModalComponents.js +3 -1
  95. package/dist/esm/components/modal/ModalComponents.js.map +1 -1
  96. package/dist/esm/components/modal/ModalContext.d.ts +2 -1
  97. package/dist/esm/components/modal/ModalContext.d.ts.map +1 -1
  98. package/dist/esm/components/modal/ModalContext.js.map +1 -1
  99. package/dist/esm/components/modal/ModalTypes.d.ts +1 -0
  100. package/dist/esm/components/modal/ModalTypes.d.ts.map +1 -1
  101. package/dist/esm/components/modal/ModalTypes.js +2 -1
  102. package/dist/esm/components/modal/ModalTypes.js.map +1 -1
  103. package/dist/esm/components/modal/useModal.d.ts +3 -2
  104. package/dist/esm/components/modal/useModal.d.ts.map +1 -1
  105. package/dist/esm/hooks/images/useFileImage.d.ts +8 -0
  106. package/dist/esm/hooks/images/useFileImage.d.ts.map +1 -0
  107. package/dist/esm/hooks/images/useFileImage.js +13 -0
  108. package/dist/esm/hooks/images/useFileImage.js.map +1 -0
  109. package/dist/esm/hooks/images/useIpfsImage.d.ts +13 -0
  110. package/dist/esm/hooks/images/useIpfsImage.d.ts.map +1 -0
  111. package/dist/esm/hooks/images/useIpfsImage.js +16 -0
  112. package/dist/esm/hooks/images/useIpfsImage.js.map +1 -0
  113. package/dist/esm/lib/base64/base64.d.ts +4 -1
  114. package/dist/esm/lib/base64/base64.d.ts.map +1 -1
  115. package/dist/esm/lib/base64/base64.js +1 -1
  116. package/dist/esm/lib/base64/base64.js.map +1 -1
  117. package/package.json +7 -4
  118. package/src/components/error/SimpleError.tsx +19 -10
  119. package/src/components/form/Field.styles.ts +1 -1
  120. package/src/components/form/FormField.tsx +6 -4
  121. package/src/components/form/Upload/ImageEditorModal/ImageEditor.tsx +74 -0
  122. package/src/components/form/Upload/ImageEditorModal/ImageEditorModal.tsx +77 -0
  123. package/src/components/form/Upload/Upload.tsx +137 -41
  124. package/src/components/form/Upload/WithUploadToIpfs.tsx +13 -11
  125. package/src/components/form/index.ts +1 -1
  126. package/src/components/form/types.ts +18 -3
  127. package/src/components/modal/ModalComponents.tsx +3 -1
  128. package/src/components/modal/ModalContext.tsx +4 -3
  129. package/src/components/modal/ModalTypes.ts +2 -1
  130. package/src/hooks/images/useFileImage.ts +24 -0
  131. package/src/hooks/images/useIpfsImage.ts +27 -0
  132. package/src/lib/base64/base64.ts +1 -1
  133. package/src/stories/buttons/Upload.stories.tsx +82 -0
@@ -1,5 +1,7 @@
1
- /// <reference types="react" />
1
+ import { ReactNode } from "react";
2
2
  import { SingleValue } from "react-select";
3
+ import { CSSProperties } from "styled-components";
4
+ import { ImageEditorModalProps } from "./Upload/ImageEditorModal/ImageEditorModal";
3
5
  import type { TextAreaTheme } from "./Field.styles";
4
6
  export interface BaseProps {
5
7
  name: string;
@@ -25,12 +27,13 @@ export interface ErrorProps {
25
27
  }
26
28
  export interface FormFieldProps {
27
29
  title: string;
30
+ titleIcon?: ReactNode;
28
31
  subTitle?: string | false;
29
32
  required?: boolean;
30
33
  tooltip?: string;
31
34
  children: React.ReactNode | string;
32
35
  style?: React.CSSProperties;
33
- theme?: string;
36
+ copyIconColor?: CSSProperties["backgroundColor"];
34
37
  valueToCopy?: string | {
35
38
  [key: string]: unknown;
36
39
  };
@@ -70,7 +73,7 @@ export interface SelectProps extends BaseProps {
70
73
  onChange?: (option: SelectDataProps<string>) => void;
71
74
  label?: string;
72
75
  }
73
- export interface UploadProps extends BaseProps {
76
+ export type UploadProps = BaseProps & {
74
77
  accept?: string;
75
78
  multiple?: boolean;
76
79
  trigger?: React.ReactNode | JSX.Element;
@@ -81,7 +84,17 @@ export interface UploadProps extends BaseProps {
81
84
  onLoadSinglePreviewImage?: (base64Uri: string) => void;
82
85
  withUpload?: boolean;
83
86
  onLoading?: (loading: boolean) => void;
84
- }
87
+ borderRadius?: number;
88
+ width?: number;
89
+ height?: number;
90
+ imgPreviewStyle?: Pick<CSSProperties, "objectFit">;
91
+ } & ({
92
+ withEditor: true;
93
+ saveButtonTheme: ImageEditorModalProps["saveButtonTheme"];
94
+ } | {
95
+ withEditor: false;
96
+ saveButtonTheme: undefined;
97
+ });
85
98
  export interface FileProps {
86
99
  src: string;
87
100
  name?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/form/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/form/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import FinanceDeposit from "./components/SellerFinance/FinanceDeposit";
2
3
  import FinanceWithdraw from "./components/SellerFinance/FinanceWithdraw";
3
4
  import TransactionFailedModal from "./components/Transactions/TransactionFailedModal/TransactionFailedModal";
@@ -9,5 +10,6 @@ export declare const MODAL_COMPONENTS: {
9
10
  readonly TRANSACTION_FAILED: typeof TransactionFailedModal;
10
11
  readonly TRANSACTION_SUBMITTED: typeof TransactionSubmittedModal;
11
12
  readonly WAITING_FOR_CONFIRMATION: typeof WaitingForConfirmationModal;
13
+ readonly IMAGE_EDITOR: import("react").FC<import("../form/Upload/ImageEditorModal/ImageEditorModal").ImageEditorModalProps>;
12
14
  };
13
15
  //# sourceMappingURL=ModalComponents.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalComponents.d.ts","sourceRoot":"","sources":["../../../../src/components/modal/ModalComponents.tsx"],"names":[],"mappings":"AACA,OAAO,cAAc,MAAM,2CAA2C,CAAC;AACvE,OAAO,eAAe,MAAM,4CAA4C,CAAC;AACzE,OAAO,sBAAsB,MAAM,yEAAyE,CAAC;AAC7G,OAAO,yBAAyB,MAAM,+EAA+E,CAAC;AACtH,OAAO,2BAA2B,MAAM,mFAAmF,CAAC;AAE5H,eAAO,MAAM,gBAAgB;;;;;;CAMnB,CAAC"}
1
+ {"version":3,"file":"ModalComponents.d.ts","sourceRoot":"","sources":["../../../../src/components/modal/ModalComponents.tsx"],"names":[],"mappings":";AAEA,OAAO,cAAc,MAAM,2CAA2C,CAAC;AACvE,OAAO,eAAe,MAAM,4CAA4C,CAAC;AACzE,OAAO,sBAAsB,MAAM,yEAAyE,CAAC;AAC7G,OAAO,yBAAyB,MAAM,+EAA+E,CAAC;AACtH,OAAO,2BAA2B,MAAM,mFAAmF,CAAC;AAE5H,eAAO,MAAM,gBAAgB;;;;;;;CAOnB,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { ImageEditorModal } from "../form/Upload/ImageEditorModal/ImageEditorModal";
1
2
  import { MODAL_TYPES } from "./ModalTypes";
2
3
  import FinanceDeposit from "./components/SellerFinance/FinanceDeposit";
3
4
  import FinanceWithdraw from "./components/SellerFinance/FinanceWithdraw";
@@ -9,6 +10,7 @@ export const MODAL_COMPONENTS = {
9
10
  [MODAL_TYPES.FINANCE_WITHDRAW_MODAL]: FinanceWithdraw,
10
11
  [MODAL_TYPES.TRANSACTION_FAILED]: TransactionFailedModal,
11
12
  [MODAL_TYPES.TRANSACTION_SUBMITTED]: TransactionSubmittedModal,
12
- [MODAL_TYPES.WAITING_FOR_CONFIRMATION]: WaitingForConfirmationModal
13
+ [MODAL_TYPES.WAITING_FOR_CONFIRMATION]: WaitingForConfirmationModal,
14
+ [MODAL_TYPES.IMAGE_EDITOR]: ImageEditorModal
13
15
  };
14
16
  //# sourceMappingURL=ModalComponents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalComponents.js","sourceRoot":"","sources":["../../../../src/components/modal/ModalComponents.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,cAAc,MAAM,2CAA2C,CAAC;AACvE,OAAO,eAAe,MAAM,4CAA4C,CAAC;AACzE,OAAO,sBAAsB,MAAM,yEAAyE,CAAC;AAC7G,OAAO,yBAAyB,MAAM,+EAA+E,CAAC;AACtH,OAAO,2BAA2B,MAAM,mFAAmF,CAAC;AAE5H,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,cAAc;IACnD,CAAC,WAAW,CAAC,sBAAsB,CAAC,EAAE,eAAe;IACrD,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,sBAAsB;IACxD,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,yBAAyB;IAC9D,CAAC,WAAW,CAAC,wBAAwB,CAAC,EAAE,2BAA2B;CAC3D,CAAC"}
1
+ {"version":3,"file":"ModalComponents.js","sourceRoot":"","sources":["../../../../src/components/modal/ModalComponents.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,cAAc,MAAM,2CAA2C,CAAC;AACvE,OAAO,eAAe,MAAM,4CAA4C,CAAC;AACzE,OAAO,sBAAsB,MAAM,yEAAyE,CAAC;AAC7G,OAAO,yBAAyB,MAAM,+EAA+E,CAAC;AACtH,OAAO,2BAA2B,MAAM,mFAAmF,CAAC;AAE5H,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,cAAc;IACnD,CAAC,WAAW,CAAC,sBAAsB,CAAC,EAAE,eAAe;IACrD,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,sBAAsB;IACxD,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,yBAAyB;IAC9D,CAAC,WAAW,CAAC,wBAAwB,CAAC,EAAE,2BAA2B;IACnE,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,gBAAgB;CACpC,CAAC"}
@@ -8,6 +8,7 @@ export type ModalProps = {
8
8
  contentStyle?: CSSProperties;
9
9
  closable?: boolean;
10
10
  onClose?: (data: unknown | undefined | null) => void;
11
+ hidden?: boolean;
11
12
  };
12
13
  export type ModalType = keyof typeof MODAL_TYPES | null;
13
14
  type ModalSize = "xxs" | "xs" | "s" | "m" | "l" | "xl";
@@ -18,7 +19,7 @@ export type Store = {
18
19
  modalMaxWidth?: Partial<Record<ModalSize, React.CSSProperties["maxWidth"]>> | null;
19
20
  theme?: "light" | "dark";
20
21
  };
21
- export type GenericModalProps<T extends keyof typeof MODAL_TYPES> = Parameters<(typeof MODAL_COMPONENTS)[T]>[0] extends Record<string, never> ? ModalProps & Record<string, never> : ModalProps & Parameters<(typeof MODAL_COMPONENTS)[T]>[0];
22
+ export type GenericModalProps<T extends keyof typeof MODAL_TYPES> = Parameters<(typeof MODAL_COMPONENTS)[T]> extends [infer P, ...any[]] ? ModalProps & P : ModalProps;
22
23
  export interface ModalContextType {
23
24
  showModal: <T extends keyof typeof MODAL_TYPES>(modalType: T, modalProps?: GenericModalProps<T>, modalSize?: Store["modalSize"], theme?: Store["theme"], modalMaxWidth?: Store["modalMaxWidth"]) => void;
24
25
  hideModal: (data?: unknown | undefined | null) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"ModalContext.d.ts","sourceRoot":"","sources":["../../../../src/components/modal/ModalContext.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAiB,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC;CACtD,CAAC;AACF,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,WAAW,GAAG,IAAI,CAAC;AACxD,KAAK,SAAS,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;AACvD,MAAM,MAAM,KAAK,GAAG;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,YAAY,CAAC;IAC9C,aAAa,CAAC,EAAE,OAAO,CACrB,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CACnD,GAAG,IAAI,CAAC;IACT,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B,CAAC;AACF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,OAAO,WAAW,IAC9D,UAAU,CAAC,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACrE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAClC,UAAU,GAAG,UAAU,CAAC,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,CAAC,SAAS,MAAM,OAAO,WAAW,EAC5C,SAAS,EAAE,CAAC,EACZ,UAAU,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,EACjC,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,EAC9B,KAAK,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EACtB,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,KACnC,IAAI,CAAC;IACV,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC;IAEvD,WAAW,EAAE,CAAC,CAAC,SAAS,MAAM,OAAO,WAAW,EAC9C,KAAK,EAAE,KAAK,GAAG;QACb,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACjC,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QAC/B,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;QACvC,KAAK,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;KACxB,KACE,IAAI,CAAC;IAEV,KAAK,EAAE,KAAK,CAAC;CACd;AAED,eAAO,MAAM,WAAW,EAAE,gBAWzB,CAAC;AAEF,QAAA,MAAM,YAAY,iCAAiD,CAAC;AAEpE,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ModalContext.d.ts","sourceRoot":"","sources":["../../../../src/components/modal/ModalContext.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAiB,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC;IACrD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,WAAW,GAAG,IAAI,CAAC;AACxD,KAAK,SAAS,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;AACvD,MAAM,MAAM,KAAK,GAAG;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,YAAY,CAAC;IAC9C,aAAa,CAAC,EAAE,OAAO,CACrB,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CACnD,GAAG,IAAI,CAAC;IACT,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B,CAAC;AACF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,OAAO,WAAW,IAC9D,UAAU,CAAC,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,GAChE,UAAU,GAAG,CAAC,GACd,UAAU,CAAC;AAEjB,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,CAAC,SAAS,MAAM,OAAO,WAAW,EAC5C,SAAS,EAAE,CAAC,EACZ,UAAU,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,EACjC,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,EAC9B,KAAK,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EACtB,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,KACnC,IAAI,CAAC;IACV,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC;IAEvD,WAAW,EAAE,CAAC,CAAC,SAAS,MAAM,OAAO,WAAW,EAC9C,KAAK,EAAE,KAAK,GAAG;QACb,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACjC,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QAC/B,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;QACvC,KAAK,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;KACxB,KACE,IAAI,CAAC;IAEV,KAAK,EAAE,KAAK,CAAC;CACd;AAED,eAAO,MAAM,WAAW,EAAE,gBAWzB,CAAC;AAEF,QAAA,MAAM,YAAY,iCAAiD,CAAC;AAEpE,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ModalContext.js","sourceRoot":"","sources":["../../../../src/components/modal/ModalContext.tsx"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,sDAAsD;AACtD,OAAc,EAAE,aAAa,EAA4B,MAAM,OAAO,CAAC;AAmDvE,MAAM,CAAC,MAAM,WAAW,GAAqB;IAC3C,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;IACnB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;IACnB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;IACrB,KAAK,EAAE;QACL,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,EAAS;QACrB,SAAS,EAAE,GAAG;QACd,aAAa,EAAE,IAAI;QACnB,KAAK,EAAE,OAAO;KACN;CACX,CAAC;AAEF,MAAM,YAAY,GAAG,aAAa,CAAC,WAA+B,CAAC,CAAC;AAEpE,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ModalContext.js","sourceRoot":"","sources":["../../../../src/components/modal/ModalContext.tsx"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,sDAAsD;AACtD,OAAc,EAAE,aAAa,EAA4B,MAAM,OAAO,CAAC;AAoDvE,MAAM,CAAC,MAAM,WAAW,GAAqB;IAC3C,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;IACnB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;IACnB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;IACrB,KAAK,EAAE;QACL,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,EAAS;QACrB,SAAS,EAAE,GAAG;QACd,aAAa,EAAE,IAAI;QACnB,KAAK,EAAE,OAAO;KACN;CACX,CAAC;AAEF,MAAM,YAAY,GAAG,aAAa,CAAC,WAA+B,CAAC,CAAC;AAEpE,eAAe,YAAY,CAAC"}
@@ -4,5 +4,6 @@ export declare const MODAL_TYPES: {
4
4
  readonly TRANSACTION_FAILED: "TRANSACTION_FAILED";
5
5
  readonly TRANSACTION_SUBMITTED: "TRANSACTION_SUBMITTED";
6
6
  readonly WAITING_FOR_CONFIRMATION: "WAITING_FOR_CONFIRMATION";
7
+ readonly IMAGE_EDITOR: "IMAGE_EDITOR";
7
8
  };
8
9
  //# sourceMappingURL=ModalTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalTypes.d.ts","sourceRoot":"","sources":["../../../../src/components/modal/ModalTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;CAMd,CAAC"}
1
+ {"version":3,"file":"ModalTypes.d.ts","sourceRoot":"","sources":["../../../../src/components/modal/ModalTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;CAOd,CAAC"}
@@ -3,6 +3,7 @@ export const MODAL_TYPES = {
3
3
  FINANCE_WITHDRAW_MODAL: "FINANCE_WITHDRAW_MODAL",
4
4
  TRANSACTION_FAILED: "TRANSACTION_FAILED",
5
5
  TRANSACTION_SUBMITTED: "TRANSACTION_SUBMITTED",
6
- WAITING_FOR_CONFIRMATION: "WAITING_FOR_CONFIRMATION"
6
+ WAITING_FOR_CONFIRMATION: "WAITING_FOR_CONFIRMATION",
7
+ IMAGE_EDITOR: "IMAGE_EDITOR"
7
8
  };
8
9
  //# sourceMappingURL=ModalTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalTypes.js","sourceRoot":"","sources":["../../../../src/components/modal/ModalTypes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,qBAAqB,EAAE,uBAAuB;IAC9C,sBAAsB,EAAE,wBAAwB;IAChD,kBAAkB,EAAE,oBAAoB;IACxC,qBAAqB,EAAE,uBAAuB;IAC9C,wBAAwB,EAAE,0BAA0B;CAC5C,CAAC"}
1
+ {"version":3,"file":"ModalTypes.js","sourceRoot":"","sources":["../../../../src/components/modal/ModalTypes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,qBAAqB,EAAE,uBAAuB;IAC9C,sBAAsB,EAAE,wBAAwB;IAChD,kBAAkB,EAAE,oBAAoB;IACxC,qBAAqB,EAAE,uBAAuB;IAC9C,wBAAwB,EAAE,0BAA0B;IACpD,YAAY,EAAE,cAAc;CACpB,CAAC"}
@@ -5,10 +5,11 @@ export declare function useModal(): {
5
5
  readonly TRANSACTION_FAILED: "TRANSACTION_FAILED";
6
6
  readonly TRANSACTION_SUBMITTED: "TRANSACTION_SUBMITTED";
7
7
  readonly WAITING_FOR_CONFIRMATION: "WAITING_FOR_CONFIRMATION";
8
+ readonly IMAGE_EDITOR: "IMAGE_EDITOR";
8
9
  };
9
- showModal: <T extends "FINANCE_DEPOSIT_MODAL" | "FINANCE_WITHDRAW_MODAL" | "TRANSACTION_FAILED" | "TRANSACTION_SUBMITTED" | "WAITING_FOR_CONFIRMATION">(modalType: T, modalProps?: import("./ModalContext").GenericModalProps<T> | undefined, modalSize?: "auto" | ("s" | "m" | "xxs" | "xs" | "l" | "xl") | "fullscreen" | undefined, theme?: "light" | "dark" | undefined, modalMaxWidth?: Partial<Record<"s" | "m" | "xxs" | "xs" | "l" | "xl", import("csstype").Property.MaxWidth<string | number> | undefined>> | null | undefined) => void;
10
+ showModal: <T extends "FINANCE_DEPOSIT_MODAL" | "FINANCE_WITHDRAW_MODAL" | "TRANSACTION_FAILED" | "TRANSACTION_SUBMITTED" | "WAITING_FOR_CONFIRMATION" | "IMAGE_EDITOR">(modalType: T, modalProps?: import("./ModalContext").GenericModalProps<T> | undefined, modalSize?: "auto" | ("s" | "m" | "xxs" | "xs" | "l" | "xl") | "fullscreen" | undefined, theme?: "light" | "dark" | undefined, modalMaxWidth?: Partial<Record<"s" | "m" | "xxs" | "xs" | "l" | "xl", import("csstype").Property.MaxWidth<string | number> | undefined>> | null | undefined) => void;
10
11
  hideModal: (data?: unknown) => void;
11
- updateProps: <T_1 extends "FINANCE_DEPOSIT_MODAL" | "FINANCE_WITHDRAW_MODAL" | "TRANSACTION_FAILED" | "TRANSACTION_SUBMITTED" | "WAITING_FOR_CONFIRMATION">(store: import("./ModalContext").Store & {
12
+ updateProps: <T_1 extends "FINANCE_DEPOSIT_MODAL" | "FINANCE_WITHDRAW_MODAL" | "TRANSACTION_FAILED" | "TRANSACTION_SUBMITTED" | "WAITING_FOR_CONFIRMATION" | "IMAGE_EDITOR">(store: import("./ModalContext").Store & {
12
13
  modalProps: import("./ModalContext").GenericModalProps<T_1>;
13
14
  modalSize?: "auto" | ("s" | "m" | "xxs" | "xs" | "l" | "xl") | "fullscreen" | undefined;
14
15
  modalMaxWidth?: Partial<Record<"s" | "m" | "xxs" | "xs" | "l" | "xl", import("csstype").Property.MaxWidth<string | number> | undefined>> | null | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"useModal.d.ts","sourceRoot":"","sources":["../../../../src/components/modal/useModal.ts"],"names":[],"mappings":"AAKA,wBAAgB,QAAQ;;;;;;;;;;;;;;;;;EAOvB"}
1
+ {"version":3,"file":"useModal.d.ts","sourceRoot":"","sources":["../../../../src/components/modal/useModal.ts"],"names":[],"mappings":"AAKA,wBAAgB,QAAQ;;;;;;;;;;;;;;;;;;EAOvB"}
@@ -0,0 +1,8 @@
1
+ type UseFileImageProps = {
2
+ file: File | undefined;
3
+ };
4
+ export declare function useFileImage({ file }: UseFileImageProps, options: {
5
+ enabled: boolean;
6
+ }): import("react-query").UseQueryResult<string | undefined, unknown>;
7
+ export {};
8
+ //# sourceMappingURL=useFileImage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFileImage.d.ts","sourceRoot":"","sources":["../../../../src/hooks/images/useFileImage.ts"],"names":[],"mappings":"AAGA,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,IAAI,GAAG,SAAS,CAAC;CACxB,CAAC;AAEF,wBAAgB,YAAY,CAC1B,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAC3B,OAAO,EAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,qEAc9B"}
@@ -0,0 +1,13 @@
1
+ import { useQuery } from "react-query";
2
+ import { loadAndSetImagePromise } from "../../lib/base64/base64";
3
+ export function useFileImage({ file }, options) {
4
+ return useQuery(["useFileImage", file], async () => {
5
+ if (!file) {
6
+ return;
7
+ }
8
+ return await loadAndSetImagePromise(file);
9
+ }, {
10
+ enabled: !!file && options.enabled
11
+ });
12
+ }
13
+ //# sourceMappingURL=useFileImage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFileImage.js","sourceRoot":"","sources":["../../../../src/hooks/images/useFileImage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAMjE,MAAM,UAAU,YAAY,CAC1B,EAAE,IAAI,EAAqB,EAC3B,OAA6B;IAE7B,OAAO,QAAQ,CACb,CAAC,cAAc,EAAE,IAAI,CAAC,EACtB,KAAK,IAAI,EAAE;QACT,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QACD,OAAO,MAAM,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC,EACD;QACE,OAAO,EAAE,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,OAAO;KACnC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ type UseIpfsImageProps = {
2
+ url: string;
3
+ };
4
+ export declare function useIpfsImage({ url }: UseIpfsImageProps, options: {
5
+ enabled: boolean;
6
+ }): import("react-query").UseQueryResult<{
7
+ width: number;
8
+ height: number;
9
+ base64: string;
10
+ blob: Blob;
11
+ }, unknown>;
12
+ export {};
13
+ //# sourceMappingURL=useIpfsImage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIpfsImage.d.ts","sourceRoot":"","sources":["../../../../src/hooks/images/useIpfsImage.ts"],"names":[],"mappings":"AAIA,KAAK,iBAAiB,GAAG;IACvB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,wBAAgB,YAAY,CAC1B,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAC1B,OAAO,EAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE;;;;;YAgB9B"}
@@ -0,0 +1,16 @@
1
+ import { useQuery } from "react-query";
2
+ import { fetchImageAsBase64 } from "../../lib/base64/base64";
3
+ import { getImageMetadata } from "../../lib/images/images";
4
+ export function useIpfsImage({ url }, options) {
5
+ return useQuery(["useIpfsImage", url], async () => {
6
+ const result = await fetchImageAsBase64(url);
7
+ const metadata = await getImageMetadata(result.base64);
8
+ return {
9
+ ...result,
10
+ ...metadata
11
+ };
12
+ }, {
13
+ enabled: options.enabled
14
+ });
15
+ }
16
+ //# sourceMappingURL=useIpfsImage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIpfsImage.js","sourceRoot":"","sources":["../../../../src/hooks/images/useIpfsImage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAM3D,MAAM,UAAU,YAAY,CAC1B,EAAE,GAAG,EAAqB,EAC1B,OAA6B;IAE7B,OAAO,QAAQ,CACb,CAAC,cAAc,EAAE,GAAG,CAAC,EACrB,KAAK,IAAI,EAAE;QACT,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvD,OAAO;YACL,GAAG,MAAM;YACT,GAAG,QAAQ;SACZ,CAAC;IACJ,CAAC,EACD;QACE,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CACF,CAAC;AACJ,CAAC"}
@@ -1,6 +1,9 @@
1
1
  /// <reference types="node" />
2
2
  import { IpfsMetadataStorage } from "@bosonprotocol/ipfs-storage";
3
- export declare function fetchImageAsBase64(imageUrl: string): Promise<string>;
3
+ export declare function fetchImageAsBase64(imageUrl: string): Promise<{
4
+ base64: string;
5
+ blob: Blob;
6
+ }>;
4
7
  export declare function fromBase64ToBinary(base64: string): Buffer;
5
8
  export declare function blobToBase64(blob: Blob): Promise<string>;
6
9
  export declare const loadAndSetMedia: (fileOrBlob: File | Blob, callback: (base64Uri: string) => void, errorCallback?: ((...errorArgs: unknown[]) => void) | undefined) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"base64.d.ts","sourceRoot":"","sources":["../../../../src/lib/base64/base64.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,mBAIxD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAI9D;AAED,eAAO,MAAM,eAAe,eACd,IAAI,GAAG,IAAI,wBACD,MAAM,KAAK,IAAI,kCACN,OAAO,EAAE,KAAK,IAAI,sBAWlD,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAAW,IAAI,oBAMjD,CAAC;AAEF,eAAO,MAAM,oBAAoB,cACpB,MAAM,EAAE,uBACE,mBAAmB,KACvC,QAAQ,MAAM,EAAE,CAgBlB,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,QAsB5C"}
1
+ {"version":3,"file":"base64.d.ts","sourceRoot":"","sources":["../../../../src/lib/base64/base64.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM;;;GAIxD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAI9D;AAED,eAAO,MAAM,eAAe,eACd,IAAI,GAAG,IAAI,wBACD,MAAM,KAAK,IAAI,kCACN,OAAO,EAAE,KAAK,IAAI,sBAWlD,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAAW,IAAI,oBAMjD,CAAC;AAEF,eAAO,MAAM,oBAAoB,cACpB,MAAM,EAAE,uBACE,mBAAmB,KACvC,QAAQ,MAAM,EAAE,CAgBlB,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,QAsB5C"}
@@ -1,7 +1,7 @@
1
1
  export async function fetchImageAsBase64(imageUrl) {
2
2
  const response = await fetch(imageUrl);
3
3
  const blob = await response.blob();
4
- return blobToBase64(blob);
4
+ return { base64: await blobToBase64(blob), blob };
5
5
  }
6
6
  export function fromBase64ToBinary(base64) {
7
7
  return Buffer.from(base64.replace(/data:image\/.*;base64,/, ""), "base64");
@@ -1 +1 @@
1
- {"version":3,"file":"base64.js","sourceRoot":"","sources":["../../../../src/lib/base64/base64.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base64.js","sourceRoot":"","sources":["../../../../src/lib/base64/base64.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bosonprotocol/react-kit",
3
3
  "description": "React toolkit with smart components and hooks for building on top of the Boson Protocol.",
4
- "version": "0.32.0-alpha.9",
4
+ "version": "0.32.0",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
7
7
  "types": "./dist/cjs/index.d.ts",
@@ -15,8 +15,8 @@
15
15
  "license": "Apache-2.0",
16
16
  "dependencies": {
17
17
  "@bosonprotocol/chat-sdk": "^1.3.1-alpha.9",
18
- "@bosonprotocol/core-sdk": "^1.40.4-alpha.7",
19
- "@bosonprotocol/ethers-sdk": "^1.14.4-alpha.7",
18
+ "@bosonprotocol/core-sdk": "^1.40.4",
19
+ "@bosonprotocol/ethers-sdk": "^1.14.4",
20
20
  "@bosonprotocol/ipfs-storage": "^1.11.3",
21
21
  "@davatar/react": "1.11.1",
22
22
  "@ethersproject/units": "5.6.0",
@@ -54,7 +54,9 @@
54
54
  "multihashes": "^4.0.3",
55
55
  "phosphor-react": "^1.4.1",
56
56
  "polished": "^4.2.2",
57
+ "react-avatar-editor": "^13.0.2",
57
58
  "react-chartjs-2": "^5.2.0",
59
+ "react-dropzone": "^14.2.3",
58
60
  "react-error-boundary": "^4.0.13",
59
61
  "react-hot-toast": "2.4.0",
60
62
  "react-markdown": "8.0.6",
@@ -155,6 +157,7 @@
155
157
  "@types/lodash.uniqby": "^4.7.7",
156
158
  "@types/node": "^16.11.25",
157
159
  "@types/react": "^18.0.3",
160
+ "@types/react-avatar-editor": "^13.0.2",
158
161
  "@types/react-slick": "^0.23.13",
159
162
  "@types/react-table": "^7.7.14",
160
163
  "@types/storybook__react": "^5.2.1",
@@ -185,5 +188,5 @@
185
188
  "overrides": {
186
189
  "typescript": "^5.1.6"
187
190
  },
188
- "gitHead": "bbc2d285de7252d51efa9007980be0ba83e8fd5e"
191
+ "gitHead": "bf1e1287fdfa2eafb76eea318eec0cd62a9b491e"
189
192
  }
@@ -1,33 +1,42 @@
1
1
  import { Warning } from "phosphor-react";
2
2
  import React, { ReactNode } from "react";
3
- import styled from "styled-components";
3
+ import styled, { CSSProperties } from "styled-components";
4
4
 
5
5
  import { theme } from "../../theme";
6
- import { Grid } from "../ui/Grid";
6
+ import { Grid, GridProps } from "../ui/Grid";
7
7
  import { Typography } from "../ui/Typography";
8
8
  const colors = theme.colors.light;
9
9
 
10
- const StyledGrid = styled(Grid)`
11
- background-color: ${colors.lightGrey};
10
+ const StyledGrid = styled(Grid)<{
11
+ $background: CSSProperties["backgroundColor"];
12
+ }>`
13
+ background-color: ${({ $background }) => $background};
12
14
  `;
13
15
 
14
- interface Props {
16
+ export type SimpleProps = GridProps & {
15
17
  errorMessage?: string;
16
18
  children?: ReactNode;
17
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
- [x: string]: any;
19
- }
19
+ backgroundColor?: CSSProperties["backgroundColor"];
20
+ warningColor?: CSSProperties["backgroundColor"];
21
+ };
20
22
 
21
- export function SimpleError({ errorMessage, children, ...rest }: Props) {
23
+ export function SimpleError({
24
+ errorMessage,
25
+ children,
26
+ backgroundColor = colors.lightGrey,
27
+ warningColor = colors.darkOrange,
28
+ ...rest
29
+ }: SimpleProps) {
22
30
  return (
23
31
  <StyledGrid
24
32
  justifyContent="flex-start"
25
33
  gap="0.5rem"
26
34
  margin="1.5rem 0 0 0"
27
35
  padding="1.5rem"
36
+ $background={backgroundColor}
28
37
  {...rest}
29
38
  >
30
- <Warning color={colors.darkOrange} size={16} />
39
+ <Warning color={warningColor} size={16} />
31
40
  {children ? (
32
41
  children
33
42
  ) : (
@@ -115,7 +115,7 @@ export const FieldInput = styled.input<{
115
115
  `};
116
116
  `;
117
117
 
118
- export const FileUploadWrapper = styled.div<{ choosen: any; error: any }>`
118
+ export const FileUploadWrapper = styled.div<{ error: any }>`
119
119
  position: relative;
120
120
  overflow: hidden;
121
121
  display: flex;
@@ -13,15 +13,16 @@ import type { FormFieldProps } from "./types";
13
13
 
14
14
  const colors = theme.colors.light;
15
15
 
16
- export default function FormField({
16
+ export function FormField({
17
17
  title,
18
+ titleIcon,
18
19
  subTitle = false,
19
20
  required = false,
20
21
  tooltip,
21
22
  children,
22
23
  style = {},
23
- theme = "",
24
- valueToCopy
24
+ valueToCopy,
25
+ copyIconColor = colors.secondary
25
26
  }: FormFieldProps) {
26
27
  return (
27
28
  <FormFieldWrapper
@@ -59,10 +60,11 @@ export default function FormField({
59
60
  }
60
61
  }}
61
62
  >
62
- <Copy size={24} color={colors.secondary} weight="light" />
63
+ <Copy size={24} color={copyIconColor} weight="light" />
63
64
  </CopyButton>
64
65
  )}
65
66
  </Typography>
67
+ {titleIcon}
66
68
  {tooltip && <Tooltip content={tooltip} size={16} />}
67
69
  </Grid>
68
70
  {subTitle && (
@@ -0,0 +1,74 @@
1
+ import React, { ChangeEvent, forwardRef, useState } from "react";
2
+ import AvatarEditor, { AvatarEditorProps } from "react-avatar-editor";
3
+ import Dropzone from "react-dropzone";
4
+ import styled from "styled-components";
5
+ import { Grid } from "../../../ui/Grid";
6
+ import { useIpfsImage } from "../../../../hooks/images/useIpfsImage";
7
+
8
+ const StyledCanvasWrapper = styled.div`
9
+ display: flex;
10
+ justify-content: center;
11
+ > :first-child {
12
+ max-width: 100%;
13
+ object-fit: contain;
14
+ width: auto !important;
15
+ height: auto !important;
16
+ }
17
+ `;
18
+
19
+ export type ImageEditorProps = Pick<
20
+ AvatarEditorProps,
21
+ "borderRadius" | "width" | "height"
22
+ > & {
23
+ url?: string;
24
+ };
25
+
26
+ export const ImageEditor = forwardRef<AvatarEditor, ImageEditorProps>(
27
+ ({ url, borderRadius, width, height }, editorRef) => {
28
+ const [scale, setScale] = useState<number>();
29
+ const handleScale = (e: ChangeEvent<HTMLInputElement>) => {
30
+ const scale = parseFloat(e.target.value);
31
+ setScale(scale);
32
+ };
33
+ const { data } = useIpfsImage({ url: url ?? "" }, { enabled: !!url });
34
+ const image = data?.base64;
35
+ const { width: imageWidth, height: imageHeight } = data || {};
36
+ const w = borderRadius ? width : width || imageWidth;
37
+ const h = borderRadius ? height : height || imageHeight;
38
+ return (
39
+ <>
40
+ {image && (
41
+ <div style={{ margin: "2rem 0", maxWidth: "100%" }}>
42
+ <Dropzone noClick noKeyboard>
43
+ {({ getRootProps, getInputProps }) => (
44
+ <StyledCanvasWrapper {...getRootProps()}>
45
+ <AvatarEditor
46
+ image={image}
47
+ ref={editorRef}
48
+ width={w}
49
+ height={h}
50
+ scale={scale}
51
+ borderRadius={borderRadius}
52
+ />
53
+ <input {...getInputProps()} />
54
+ </StyledCanvasWrapper>
55
+ )}
56
+ </Dropzone>
57
+ <Grid alignItems="center" justifyContent="center">
58
+ Zoom:
59
+ <input
60
+ name="scale"
61
+ type="range"
62
+ onChange={handleScale}
63
+ min={"0.1"}
64
+ max="2"
65
+ step="0.01"
66
+ defaultValue="1"
67
+ />
68
+ </Grid>
69
+ </div>
70
+ )}
71
+ </>
72
+ );
73
+ }
74
+ );
@@ -0,0 +1,77 @@
1
+ import * as Sentry from "@sentry/browser";
2
+ import React, { useRef, useState } from "react";
3
+ import AvatarEditor from "react-avatar-editor";
4
+ import { dataURItoBlob } from "../../../../lib/base64/base64";
5
+ import Modal from "../../../modal/Modal";
6
+ import { Grid } from "../../../ui/Grid";
7
+ import { Spinner } from "../../../ui/loading/Spinner";
8
+ import { BaseButton, BaseButtonTheme } from "../../../buttons/BaseButton";
9
+ import { ImageEditor, ImageEditorProps } from "./ImageEditor";
10
+ import { useFileImage } from "../../../../hooks/images/useFileImage";
11
+
12
+ export type ImageEditorModalProps = Omit<ImageEditorProps, "url"> & {
13
+ files: File[] | null;
14
+ hideModal: (files?: File[]) => Promise<void>;
15
+ saveButtonTheme: BaseButtonTheme;
16
+ };
17
+
18
+ export const ImageEditorModal: React.FC<ImageEditorModalProps> = ({
19
+ hideModal,
20
+ files,
21
+ saveButtonTheme,
22
+ ...rest
23
+ }) => {
24
+ const originalFile = files?.[0];
25
+ const { data: url } = useFileImage(
26
+ { file: originalFile },
27
+ { enabled: !!originalFile }
28
+ );
29
+ const editorRef = useRef<AvatarEditor>(null);
30
+ const [isSaving, setSaving] = useState<boolean>(false);
31
+ const onClickSave = async () => {
32
+ setSaving(true);
33
+ try {
34
+ const img = editorRef.current?.getImageScaledToCanvas().toDataURL();
35
+ if (!img) {
36
+ return;
37
+ }
38
+ const blob = dataURItoBlob(img);
39
+ const file = new File([blob], originalFile?.name ?? "edited", {
40
+ type: originalFile?.type,
41
+ lastModified: originalFile?.lastModified
42
+ });
43
+ if (!file) {
44
+ return;
45
+ }
46
+ await hideModal([file]);
47
+ } catch (error) {
48
+ Sentry.captureException(error);
49
+ } finally {
50
+ setSaving(false);
51
+ }
52
+ };
53
+ return (
54
+ <Modal
55
+ modalType="IMAGE_EDITOR"
56
+ hideModal={() => hideModal()}
57
+ size="auto"
58
+ maxWidths={{
59
+ s: "50rem"
60
+ }}
61
+ theme="light"
62
+ >
63
+ <Grid flexDirection="column">
64
+ <ImageEditor url={url} {...rest} ref={editorRef} />
65
+ <BaseButton
66
+ type="button"
67
+ theme={saveButtonTheme}
68
+ onClick={() => onClickSave()}
69
+ disabled={isSaving}
70
+ >
71
+ {isSaving ? "Saving" : "Save"}
72
+ {isSaving && <Spinner />}
73
+ </BaseButton>
74
+ </Grid>
75
+ </Modal>
76
+ );
77
+ };