oa-componentbook 0.18.87 → 0.18.89

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.
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.description.js");
4
+ require("core-js/modules/es.weak-map.js");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ require("core-js/modules/es.promise.js");
10
+ require("core-js/modules/es.string.starts-with.js");
11
+ require("core-js/modules/web.dom-collections.iterator.js");
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _propTypes = _interopRequireDefault(require("prop-types"));
14
+ var _icons = require("@ant-design/icons");
15
+ var _antd = require("antd");
16
+ var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
17
+ var _ColorVariablesMap = _interopRequireDefault(require("../../global-css/ColorVariablesMap"));
18
+ var _styles = require("./styles");
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
22
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
25
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
26
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
27
+ const getBase64 = file => new Promise((resolve, reject) => {
28
+ const reader = new FileReader();
29
+ reader.readAsDataURL(file);
30
+ reader.onload = () => resolve(reader.result);
31
+ reader.onerror = error => reject(error);
32
+ });
33
+ const isImageFile = file => file.type.startsWith('image/');
34
+ const downloadFile = (base64String, fileName) => {
35
+ const link = document.createElement('a');
36
+ link.href = base64String;
37
+ link.download = fileName || 'download';
38
+ link.click();
39
+ };
40
+ function DocumentUpload(props) {
41
+ const {
42
+ uploadedDocuments = [],
43
+ onChange,
44
+ subText,
45
+ heading
46
+ } = props;
47
+ const [previewOpen, setPreviewOpen] = (0, _react.useState)(false);
48
+ const [previewImage, setPreviewImage] = (0, _react.useState)('');
49
+ const [previewTitle, setPreviewTitle] = (0, _react.useState)('');
50
+ const [loading, setLoading] = (0, _react.useState)(false);
51
+ const [fileList, setFileList] = (0, _react.useState)(uploadedDocuments);
52
+ const handleCancel = () => setPreviewOpen(false);
53
+ const handlePreview = async file => {
54
+ var _modifiedFile;
55
+ let modifiedFile = file;
56
+ if (!file.url && !file.preview) {
57
+ const base64Preview = await getBase64(file.originFileObj);
58
+ modifiedFile = _objectSpread(_objectSpread({}, file), {}, {
59
+ preview: base64Preview
60
+ });
61
+ if (!isImageFile(file)) {
62
+ downloadFile(file.preview, file.name);
63
+ return;
64
+ }
65
+ }
66
+ setPreviewImage(modifiedFile.url || modifiedFile.preview);
67
+ setPreviewOpen(true);
68
+ setPreviewTitle((_modifiedFile = modifiedFile) === null || _modifiedFile === void 0 ? void 0 : _modifiedFile.name);
69
+ };
70
+ const handleChange = async _ref => {
71
+ let {
72
+ fileList: newFileList,
73
+ file
74
+ } = _ref;
75
+ if (file.status === 'removed') {
76
+ onChange(null, 'removed');
77
+ }
78
+ const modifiedList = await Promise.all(newFileList.map(async files => {
79
+ const modifiedFile = files;
80
+ // if (file.status === 'uploading') {
81
+ setLoading(true);
82
+ try {
83
+ await onChange(files);
84
+ modifiedFile.status = 'done';
85
+ } catch (error) {
86
+ console.error('Error during upload:', error);
87
+ modifiedFile.status = 'error';
88
+ }
89
+ setLoading(false);
90
+ // }
91
+ return modifiedFile;
92
+ }));
93
+ setFileList(modifiedList);
94
+ };
95
+ const uploadButton = /*#__PURE__*/_react.default.createElement("button", {
96
+ style: {
97
+ border: 0,
98
+ background: 'none'
99
+ },
100
+ type: "button"
101
+ }, loading ? /*#__PURE__*/_react.default.createElement(_icons.LoadingOutlined, null) : /*#__PURE__*/_react.default.createElement(_icons.PlusOutlined, null), /*#__PURE__*/_react.default.createElement("div", {
102
+ style: {
103
+ marginTop: 8
104
+ }
105
+ }, "Upload"));
106
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_styles.MainStyleSec, null, /*#__PURE__*/_react.default.createElement(_styles.StyledSection, null, (heading || subText) && /*#__PURE__*/_react.default.createElement("div", null, heading && /*#__PURE__*/_react.default.createElement("h2", {
107
+ className: "padding-bottom-8"
108
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
109
+ color: "primary-content",
110
+ className: "type-t2-700"
111
+ }, heading, /*#__PURE__*/_react.default.createElement(_Typography.default, {
112
+ color: "negative"
113
+ }, "*"))), subText && /*#__PURE__*/_react.default.createElement(_Typography.default, {
114
+ color: "secondary-content",
115
+ className: "type-b2-400"
116
+ }, subText)), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_antd.ConfigProvider, {
117
+ theme: {
118
+ token: {
119
+ colorBorder: _ColorVariablesMap.default['--color-primary'],
120
+ borderRadiusLG: 2,
121
+ colorPrimaryBorder: _ColorVariablesMap.default['--color-divider'],
122
+ colorFillAlter: _ColorVariablesMap.default['--color-primary-background'],
123
+ colorError: _ColorVariablesMap.default['--color-negative'],
124
+ colorText: _ColorVariablesMap.default['--color-primary']
125
+ }
126
+ }
127
+ }, /*#__PURE__*/_react.default.createElement(_antd.Upload, {
128
+ customRequest: () => {},
129
+ listType: "picture-card",
130
+ fileList: fileList,
131
+ onPreview: handlePreview,
132
+ onChange: handleChange
133
+ }, fileList.length >= 1 ? null : uploadButton))))), /*#__PURE__*/_react.default.createElement(_antd.Modal, {
134
+ open: previewOpen,
135
+ title: previewTitle,
136
+ footer: null,
137
+ onCancel: handleCancel
138
+ }, /*#__PURE__*/_react.default.createElement("img", {
139
+ alt: "example",
140
+ style: {
141
+ width: '100%'
142
+ },
143
+ src: previewImage
144
+ })));
145
+ }
146
+ DocumentUpload.propTypes = {
147
+ uploadedDocuments: _propTypes.default.array,
148
+ onChange: _propTypes.default.func,
149
+ subText: _propTypes.default.string,
150
+ heading: _propTypes.default.string
151
+ };
152
+ DocumentUpload.defaultProps = {
153
+ uploadedDocuments: [],
154
+ onChange: () => {},
155
+ subText: '',
156
+ heading: ''
157
+ };
158
+ var _default = exports.default = DocumentUpload;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StyledSection = exports.MainStyleSec = void 0;
7
+ var _antd = require("antd");
8
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
9
+ var _templateObject, _templateObject2;
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
12
+ const MainStyleSec = exports.MainStyleSec = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n gap: 24px;\n .ant-upload-list-item-done{\n border: 1px solid var(--color-divider) !important;\n }\n .ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item:hover::before{\n opacity: 1 !important;\n }\n .ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item:hover::before ant-upload-list-item-actions > a\n {\n background: red !important;\n }\n .ant-upload-list-item-actions{\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 16px;\n }\n .ant-upload-list-item-actions{\n \n }\n"])));
13
+ const StyledSection = exports.StyledSection = _styledComponents.default.section(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n gap: 16px;\n justify-content: space-between;\n h2{\n margin: 0;\n }\n .ant-upload-select, .ant-upload-wrapper, .ant-upload-wrapper, .ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-container{\n width: 96px;\n height: 96px;\n margin: 0;\n }\n .ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload.ant-upload-select{\n width: 96px !important;\n height: 96px !important;\n margin: 0;\n }\n"])));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oa-componentbook",
3
- "version": "0.18.87",
3
+ "version": "0.18.89",
4
4
  "private": false,
5
5
  "description": "Reusable components",
6
6
  "main": "build/index.js",