@bindu-dashing/dam-solution 1.0.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 (48) hide show
  1. package/README.md +1 -0
  2. package/dist/AssetType/assetTypeContainer.js +40 -0
  3. package/dist/AssetType/assetTypeTable.js +359 -0
  4. package/dist/AssetType/createAssetType.js +832 -0
  5. package/dist/AssetType/index.js +26 -0
  6. package/dist/AssetType/style.css +110 -0
  7. package/dist/Components/ImagePickerFiltersTest.js +121 -0
  8. package/dist/Components/ImagePickerTest.js +120 -0
  9. package/dist/CreateClient/createClient.js +34 -0
  10. package/dist/CreateClient/createClientForm.js +269 -0
  11. package/dist/CreateClient/index.js +26 -0
  12. package/dist/Folder/ImagePickerFolder.js +47 -0
  13. package/dist/Folder/index.js +26 -0
  14. package/dist/Folder/style.css +0 -0
  15. package/dist/Folders/bulkDownload.js +102 -0
  16. package/dist/Folders/bulkUpdate.js +186 -0
  17. package/dist/Folders/bulkUploadFiles.js +162 -0
  18. package/dist/Folders/bulkUploadUsingQueue.js +404 -0
  19. package/dist/Folders/createOrUpdateFolder.js +264 -0
  20. package/dist/Folders/exportFolder.js +109 -0
  21. package/dist/Folders/file.js +194 -0
  22. package/dist/Folders/fileManagementContainer.js +345 -0
  23. package/dist/Folders/files.js +315 -0
  24. package/dist/Folders/filesContainer.js +650 -0
  25. package/dist/Folders/filesListView.js +439 -0
  26. package/dist/Folders/foldersContainer.js +408 -0
  27. package/dist/Folders/foldersTree.js +136 -0
  28. package/dist/Folders/index.js +26 -0
  29. package/dist/Folders/style.css +400 -0
  30. package/dist/Folders/uploadFile.js +507 -0
  31. package/dist/ImagePicker/imagePicker.js +141 -0
  32. package/dist/ImagePicker/imagePickerFiles.js +42 -0
  33. package/dist/ImagePicker/index.js +26 -0
  34. package/dist/ImagePicker/style.css +128 -0
  35. package/dist/ImagePickerFilters/imagePickerFilters.js +382 -0
  36. package/dist/ImagePickerFilters/index.js +26 -0
  37. package/dist/ImagePickerFilters/style.css +15 -0
  38. package/dist/RefreshKey/index.js +26 -0
  39. package/dist/RefreshKey/refreshKey.js +86 -0
  40. package/dist/assets/images/default-img.svg +9 -0
  41. package/dist/constants/actionTypes.js +74 -0
  42. package/dist/constants/apiEndpoints.js +88 -0
  43. package/dist/constants/appConstants.js +55 -0
  44. package/dist/hocs/folderHelpers.js +76 -0
  45. package/dist/hocs/helpers.js +52 -0
  46. package/dist/hocs/useFetch.js +97 -0
  47. package/dist/index.js +55 -0
  48. package/package.json +61 -0
@@ -0,0 +1,315 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _antd = require("antd");
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _useFetch = _interopRequireDefault(require("../hocs/useFetch"));
12
+ var APIS = _interopRequireWildcard(require("../constants/apiEndpoints"));
13
+ var _file = _interopRequireDefault(require("./file"));
14
+ require("./style.css");
15
+ var _filesListView = _interopRequireDefault(require("./filesListView"));
16
+ var _icons = require("@ant-design/icons");
17
+ var _bulkDownload = _interopRequireDefault(require("./bulkDownload"));
18
+ const Files = _ref => {
19
+ let {
20
+ folderId,
21
+ isImagePicker,
22
+ onSelect,
23
+ files,
24
+ prevKey,
25
+ nextKey,
26
+ prevPrevKey,
27
+ page,
28
+ setFiles,
29
+ setNextKey,
30
+ setPrevKey,
31
+ setPrevPrevKey,
32
+ setPage,
33
+ fetchFiles,
34
+ folder,
35
+ searchValue,
36
+ setLoadingFiles,
37
+ teamIds,
38
+ isAdmin,
39
+ damAccessKey,
40
+ secretKey,
41
+ subdomain,
42
+ styles,
43
+ sortBy,
44
+ sortOrder,
45
+ onSearch,
46
+ totalSearchedFilesCount,
47
+ currentPage,
48
+ assetTypes,
49
+ view,
50
+ onChangeSort,
51
+ sortOrders,
52
+ setSortOrders,
53
+ setSortOrder,
54
+ setSortBy,
55
+ teams,
56
+ currentImagePicker,
57
+ accessToken,
58
+ currentUser,
59
+ fileSearchValue,
60
+ onSearchFiles,
61
+ setFileSearchValue,
62
+ searchColumn,
63
+ setSearchColumn,
64
+ searchKey,
65
+ setSearchKey,
66
+ userEmail
67
+ } = _ref;
68
+ const {
69
+ fetchApi
70
+ } = (0, _useFetch.default)();
71
+ const [selectedFiles, setSelectedFiles] = (0, _react.useState)([]);
72
+ const [isAllFilesSelected, setIsAllFilesSelected] = (0, _react.useState)(false);
73
+ const [bulkDeleteLoading, setBulkDeleteLoading] = (0, _react.useState)(false);
74
+ const [showBulkDownloadFiles, setShowBulkDownloadFiles] = (0, _react.useState)(false);
75
+ const onPrev = () => {
76
+ setLoadingFiles(true);
77
+ fetchApi({
78
+ params: {
79
+ startKey: encodeURIComponent(JSON.stringify(prevKey)),
80
+ prevKey: encodeURIComponent(JSON.stringify(prevPrevKey)),
81
+ page: page - 1,
82
+ folder_id: folderId,
83
+ team_ids: JSON.stringify(teamIds),
84
+ is_component: true,
85
+ sortBy: sortBy,
86
+ sortOrder: sortOrder,
87
+ skip_team_visibility: isImagePicker ? currentImagePicker === null || currentImagePicker === void 0 ? void 0 : currentImagePicker.skip_team_visibility : true,
88
+ exclude_expired_files: isImagePicker ? true : false
89
+ },
90
+ httpMethod: "get",
91
+ route: APIS.FETCH_FILES,
92
+ onSuccess: response => {
93
+ setLoadingFiles(false);
94
+ const data = response === null || response === void 0 ? void 0 : response.data;
95
+ setFiles(data === null || data === void 0 ? void 0 : data.items);
96
+ setNextKey(data.nextKey);
97
+ setPage(data.page);
98
+ setPrevKey(data === null || data === void 0 ? void 0 : data.prevKey);
99
+ setPrevPrevKey(data === null || data === void 0 ? void 0 : data.prevPrevKey);
100
+ },
101
+ onFailure: () => {
102
+ setLoadingFiles(false);
103
+ },
104
+ accessToken,
105
+ damAccessKey,
106
+ secretKey,
107
+ subdomain
108
+ });
109
+ };
110
+ const onNext = () => {
111
+ setLoadingFiles(true);
112
+ fetchApi({
113
+ params: {
114
+ folder_id: folderId,
115
+ startKey: encodeURIComponent(JSON.stringify(nextKey)),
116
+ prevKey: encodeURIComponent(JSON.stringify(prevKey)),
117
+ page: page + 1,
118
+ team_ids: JSON.stringify(teamIds),
119
+ is_component: true,
120
+ sortBy: sortBy,
121
+ sortOrder: sortOrder,
122
+ skip_team_visibility: isImagePicker ? currentImagePicker === null || currentImagePicker === void 0 ? void 0 : currentImagePicker.skip_team_visibility : true,
123
+ exclude_expired_files: isImagePicker ? true : false
124
+ },
125
+ httpMethod: "get",
126
+ route: APIS.FETCH_FILES,
127
+ onSuccess: response => {
128
+ setLoadingFiles(false);
129
+ const data = response === null || response === void 0 ? void 0 : response.data;
130
+ setFiles(data === null || data === void 0 ? void 0 : data.items);
131
+ setNextKey(data.nextKey);
132
+ setPage(data.page);
133
+ setPrevKey(data === null || data === void 0 ? void 0 : data.prevKey);
134
+ setPrevPrevKey(data === null || data === void 0 ? void 0 : data.prevPrevKey);
135
+ },
136
+ onFailure: () => {
137
+ setLoadingFiles(false);
138
+ },
139
+ accessToken,
140
+ damAccessKey,
141
+ secretKey,
142
+ subdomain
143
+ });
144
+ };
145
+ const onPageChange = page => {
146
+ if (fileSearchValue) {
147
+ onSearchFiles(page);
148
+ } else {
149
+ onSearch(page);
150
+ }
151
+ };
152
+ const onBulkDelete = () => {
153
+ const deleteModal = _antd.Modal.confirm();
154
+ deleteModal.update({
155
+ title: `Are you sure you want to delete ${selectedFiles === null || selectedFiles === void 0 ? void 0 : selectedFiles.length} selected files?`,
156
+ closable: false,
157
+ onOk: () => {
158
+ const deleteFiles = selectedFiles === null || selectedFiles === void 0 ? void 0 : selectedFiles.map(fileId => {
159
+ const currentFile = files === null || files === void 0 ? void 0 : files.find(file => (file === null || file === void 0 ? void 0 : file.id) == fileId);
160
+ return {
161
+ pk: currentFile === null || currentFile === void 0 ? void 0 : currentFile.pk,
162
+ sk: currentFile === null || currentFile === void 0 ? void 0 : currentFile.sk
163
+ };
164
+ });
165
+ setBulkDeleteLoading(true);
166
+ fetchApi({
167
+ body: {
168
+ file_ids: deleteFiles
169
+ },
170
+ httpMethod: "DELETE",
171
+ route: APIS.FILES_BULK_DELETE,
172
+ onSuccess: response => {
173
+ deleteModal.destroy();
174
+ setSelectedFiles([]);
175
+ setBulkDeleteLoading(false);
176
+ setFileSearchValue("");
177
+ _antd.notification.success({
178
+ message: "Files deleted successfully"
179
+ });
180
+ fetchFiles(null, folderId);
181
+ },
182
+ onFailure: () => {
183
+ setBulkDeleteLoading(false);
184
+ },
185
+ accessToken,
186
+ damAccessKey,
187
+ secretKey,
188
+ subdomain
189
+ });
190
+ },
191
+ icon: null,
192
+ okButtonProps: {
193
+ type: "primary",
194
+ danger: true
195
+ }
196
+ });
197
+ };
198
+ const onBulkDownload = () => {
199
+ setShowBulkDownloadFiles(true);
200
+ };
201
+ return (files === null || files === void 0 ? void 0 : files.length) === 0 && !searchKey ? /*#__PURE__*/_react.default.createElement("div", {
202
+ className: "empty-files-container"
203
+ }, /*#__PURE__*/_react.default.createElement(_antd.Typography.Text, null, "No files found")) : /*#__PURE__*/_react.default.createElement("div", null, (selectedFiles === null || selectedFiles === void 0 ? void 0 : selectedFiles.length) > 0 && /*#__PURE__*/_react.default.createElement("div", {
204
+ className: "dam-files-selection-header"
205
+ }, /*#__PURE__*/_react.default.createElement("div", {
206
+ className: "dam-files-selection-left-container"
207
+ }, view == "grid" && /*#__PURE__*/_react.default.createElement(_antd.Checkbox, {
208
+ checked: (selectedFiles === null || selectedFiles === void 0 ? void 0 : selectedFiles.length) > 0,
209
+ onChange: e => {
210
+ if (!e.target.checked) {
211
+ setSelectedFiles([]);
212
+ }
213
+ }
214
+ }), selectedFiles === null || selectedFiles === void 0 ? void 0 : selectedFiles.length, " files are selected"), /*#__PURE__*/_react.default.createElement("div", {
215
+ className: "dam-files-selection-right-container"
216
+ }, /*#__PURE__*/_react.default.createElement(_antd.Space, null, /*#__PURE__*/_react.default.createElement(_antd.Tooltip, {
217
+ title: "Bulk Download"
218
+ }, /*#__PURE__*/_react.default.createElement(_icons.DownloadOutlined, {
219
+ onClick: () => onBulkDownload()
220
+ })), /*#__PURE__*/_react.default.createElement(_antd.Tooltip, {
221
+ title: "Bulk Delete"
222
+ }, /*#__PURE__*/_react.default.createElement(_icons.DeleteOutlined, {
223
+ onClick: () => onBulkDelete()
224
+ })), bulkDeleteLoading && /*#__PURE__*/_react.default.createElement(_antd.Spin, {
225
+ indicator: /*#__PURE__*/_react.default.createElement(_icons.LoadingOutlined, null)
226
+ })))), view === "grid" ? /*#__PURE__*/_react.default.createElement("div", {
227
+ className: "files-container"
228
+ }, files === null || files === void 0 ? void 0 : files.map((file, index) => {
229
+ return /*#__PURE__*/_react.default.createElement(_file.default, {
230
+ item: file,
231
+ key: index,
232
+ isImagePicker: isImagePicker,
233
+ onSelect: onSelect,
234
+ fetchFiles: fetchFiles,
235
+ folder: folder,
236
+ setFiles: setFiles,
237
+ isAdmin: isAdmin,
238
+ damAccessKey: damAccessKey,
239
+ secretKey: secretKey,
240
+ subdomain: subdomain,
241
+ styles: styles,
242
+ assetTypes: assetTypes,
243
+ teams: teams,
244
+ accessToken: accessToken,
245
+ currentUser: currentUser,
246
+ setSelectedFiles: setSelectedFiles,
247
+ selectedFiles: selectedFiles
248
+ });
249
+ })) : /*#__PURE__*/_react.default.createElement(_filesListView.default, {
250
+ onChangeSort: onChangeSort,
251
+ setSortOrders: setSortOrders,
252
+ sortOrders: sortOrders,
253
+ sortBy: sortBy,
254
+ sortOrder: sortOrder,
255
+ setSortBy: setSortBy,
256
+ setSortOrder: setSortOrder,
257
+ isImagePicker: isImagePicker,
258
+ onSelect: onSelect,
259
+ files: files,
260
+ fetchFiles: fetchFiles,
261
+ folder: folder,
262
+ isAdmin: isAdmin,
263
+ damAccessKey: damAccessKey,
264
+ secretKey: secretKey,
265
+ subdomain: subdomain,
266
+ styles: styles,
267
+ assetTypes: assetTypes,
268
+ teams: teams,
269
+ accessToken: accessToken,
270
+ currentUser: currentUser,
271
+ setSelectedFiles: setSelectedFiles,
272
+ selectedFiles: selectedFiles,
273
+ setIsAllFilesSelected: setIsAllFilesSelected,
274
+ isAllFilesSelected: isAllFilesSelected,
275
+ onSearchFiles: onSearchFiles,
276
+ folderId: folderId,
277
+ searchColumn: searchColumn,
278
+ setSearchColumn: setSearchColumn,
279
+ searchKey: searchKey,
280
+ setSearchKey: setSearchKey
281
+ }), ((nextKey === null || nextKey === void 0 ? void 0 : nextKey.startKey) || page !== 0) && !totalSearchedFilesCount && /*#__PURE__*/_react.default.createElement(_antd.Space, {
282
+ className: "file-pagination"
283
+ }, /*#__PURE__*/_react.default.createElement(_antd.Button, {
284
+ onClick: () => onPrev(),
285
+ disabled: page === 0 ? true : false
286
+ }, "Prev"), /*#__PURE__*/_react.default.createElement(_antd.Button, {
287
+ type: "primary",
288
+ style: {
289
+ backgroundColor: styles === null || styles === void 0 ? void 0 : styles.primaryColor
290
+ }
291
+ }, page + 1), /*#__PURE__*/_react.default.createElement(_antd.Button, {
292
+ onClick: () => onNext(),
293
+ disabled: !(nextKey !== null && nextKey !== void 0 && nextKey.startKey)
294
+ }, "Next")), totalSearchedFilesCount != 0 && /*#__PURE__*/_react.default.createElement(_antd.Space, {
295
+ className: "file-pagination"
296
+ }, /*#__PURE__*/_react.default.createElement(_antd.Pagination, {
297
+ total: totalSearchedFilesCount,
298
+ pageSize: 20,
299
+ hideOnSinglePage: true,
300
+ current: currentPage,
301
+ onChange: page => onPageChange(page)
302
+ })), showBulkDownloadFiles && /*#__PURE__*/_react.default.createElement(_bulkDownload.default, {
303
+ setShowBulkDownloadFiles: setShowBulkDownloadFiles,
304
+ bulkDownloadEmail: userEmail,
305
+ setSelectedFiles: setSelectedFiles,
306
+ selectedFiles: selectedFiles,
307
+ accessToken: accessToken,
308
+ damAccessKey: damAccessKey,
309
+ secretKey: secretKey,
310
+ subdomain: subdomain,
311
+ files: files
312
+ }));
313
+ };
314
+ var _default = Files;
315
+ exports.default = _default;