@scality/data-browser-library 1.0.0-preview.13 → 1.0.0-preview.16

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 (212) hide show
  1. package/dist/components/DataBrowserUI.d.ts +6 -14
  2. package/dist/components/DataBrowserUI.js +79 -55
  3. package/dist/components/Editor.d.ts +1 -1
  4. package/dist/components/Editor.js +3 -3
  5. package/dist/components/__tests__/BucketCreate.test.js +102 -102
  6. package/dist/components/__tests__/BucketDetails.test.js +122 -123
  7. package/dist/components/__tests__/BucketLifecycleFormPage.test.js +177 -177
  8. package/dist/components/__tests__/BucketLifecycleList.test.js +85 -85
  9. package/dist/components/__tests__/BucketList.test.js +175 -176
  10. package/dist/components/__tests__/BucketNotificationCreatePage.test.js +84 -84
  11. package/dist/components/__tests__/BucketOverview.test.js +257 -201
  12. package/dist/components/__tests__/BucketPolicyPage.test.js +62 -62
  13. package/dist/components/__tests__/BucketReplicationFormPage.test.js +542 -542
  14. package/dist/components/__tests__/BucketReplicationList.test.js +106 -106
  15. package/dist/components/__tests__/CreateFolderButton.test.js +56 -56
  16. package/dist/components/__tests__/DeleteBucketButton.test.js +62 -62
  17. package/dist/components/__tests__/DeleteBucketConfigRuleButton.test.js +47 -47
  18. package/dist/components/__tests__/DeleteObjectButton.test.js +63 -63
  19. package/dist/components/__tests__/EmptyBucketButton.test.js +56 -56
  20. package/dist/components/__tests__/MetadataSearch.test.js +65 -65
  21. package/dist/components/__tests__/ObjectList.test.js +252 -251
  22. package/dist/components/__tests__/UploadButton.test.js +45 -45
  23. package/dist/components/buckets/BucketCreate.d.ts +2 -2
  24. package/dist/components/buckets/BucketCreate.js +41 -41
  25. package/dist/components/buckets/BucketDetails.d.ts +2 -2
  26. package/dist/components/buckets/BucketDetails.js +48 -36
  27. package/dist/components/buckets/BucketLifecycleFormPage.js +161 -160
  28. package/dist/components/buckets/BucketLifecycleList.d.ts +2 -2
  29. package/dist/components/buckets/BucketLifecycleList.js +46 -46
  30. package/dist/components/buckets/BucketList.d.ts +2 -2
  31. package/dist/components/buckets/BucketList.js +28 -27
  32. package/dist/components/buckets/BucketLocation.js +3 -3
  33. package/dist/components/buckets/BucketOverview.d.ts +1 -1
  34. package/dist/components/buckets/BucketOverview.js +64 -65
  35. package/dist/components/buckets/BucketPage.js +19 -11
  36. package/dist/components/buckets/BucketPolicyButton.js +2 -2
  37. package/dist/components/buckets/BucketPolicyPage.js +27 -25
  38. package/dist/components/buckets/BucketReplicationFormPage.js +133 -132
  39. package/dist/components/buckets/BucketReplicationList.d.ts +2 -2
  40. package/dist/components/buckets/BucketReplicationList.js +41 -41
  41. package/dist/components/buckets/BucketVersioning.js +11 -11
  42. package/dist/components/buckets/DeleteBucketButton.js +5 -5
  43. package/dist/components/buckets/DeleteBucketConfigRuleButton.d.ts +2 -2
  44. package/dist/components/buckets/DeleteBucketConfigRuleButton.js +1 -1
  45. package/dist/components/buckets/EmptyBucketButton.js +19 -19
  46. package/dist/components/buckets/EmptyBucketSummary.d.ts +1 -1
  47. package/dist/components/buckets/EmptyBucketSummary.js +1 -1
  48. package/dist/components/buckets/EmptyBucketSummaryList.js +22 -22
  49. package/dist/components/buckets/__tests__/BucketVersioning.test.js +45 -45
  50. package/dist/components/buckets/notifications/BucketNotificationCreatePage.js +34 -33
  51. package/dist/components/buckets/notifications/EventsSection.js +144 -28
  52. package/dist/components/buckets/notifications/__tests__/events.test.d.ts +1 -0
  53. package/dist/components/buckets/notifications/__tests__/events.test.js +56 -0
  54. package/dist/components/buckets/notifications/events.d.ts +71 -7
  55. package/dist/components/buckets/notifications/events.js +98 -16
  56. package/dist/components/index.d.ts +24 -22
  57. package/dist/components/index.js +5 -3
  58. package/dist/components/layouts/ArrowNavigation.d.ts +1 -2
  59. package/dist/components/layouts/ArrowNavigation.js +3 -3
  60. package/dist/components/layouts/BrowserPageLayout.d.ts +2 -3
  61. package/dist/components/layouts/BrowserPageLayout.js +1 -1
  62. package/dist/components/objects/CreateFolderButton.d.ts +2 -2
  63. package/dist/components/objects/CreateFolderButton.js +9 -9
  64. package/dist/components/objects/DeleteObjectButton.d.ts +1 -1
  65. package/dist/components/objects/DeleteObjectButton.js +20 -20
  66. package/dist/components/objects/ObjectDetails/ObjectMetadata.d.ts +1 -1
  67. package/dist/components/objects/ObjectDetails/ObjectMetadata.js +56 -56
  68. package/dist/components/objects/ObjectDetails/ObjectSummary.d.ts +1 -1
  69. package/dist/components/objects/ObjectDetails/ObjectSummary.js +39 -39
  70. package/dist/components/objects/ObjectDetails/ObjectTags.d.ts +1 -1
  71. package/dist/components/objects/ObjectDetails/ObjectTags.js +25 -25
  72. package/dist/components/objects/ObjectDetails/__tests__/ObjectDetails.test.js +119 -119
  73. package/dist/components/objects/ObjectDetails/__tests__/ObjectSummary.test.js +211 -211
  74. package/dist/components/objects/ObjectDetails/index.d.ts +1 -1
  75. package/dist/components/objects/ObjectDetails/index.js +30 -30
  76. package/dist/components/objects/ObjectList.d.ts +5 -5
  77. package/dist/components/objects/ObjectList.js +113 -112
  78. package/dist/components/objects/ObjectLock/EditRetentionButton.js +3 -3
  79. package/dist/components/objects/ObjectLock/ObjectLockRetentionSettings.js +14 -14
  80. package/dist/components/objects/ObjectLock/ObjectLockSettings.d.ts +1 -1
  81. package/dist/components/objects/ObjectLock/ObjectLockSettings.js +29 -28
  82. package/dist/components/objects/ObjectLock/ObjectLockSettingsUtils.d.ts +1 -1
  83. package/dist/components/objects/ObjectLock/ObjectLockSettingsUtils.js +6 -6
  84. package/dist/components/objects/ObjectLock/__tests__/EditRetentionButton.test.js +50 -50
  85. package/dist/components/objects/ObjectLock/__tests__/ObjectLockSettings.test.js +77 -77
  86. package/dist/components/objects/ObjectPage.js +5 -4
  87. package/dist/components/objects/UploadButton.d.ts +3 -3
  88. package/dist/components/objects/UploadButton.js +5 -5
  89. package/dist/components/providers/DataBrowserProvider.d.ts +23 -12
  90. package/dist/components/providers/DataBrowserProvider.js +60 -38
  91. package/dist/components/providers/QueryProvider.d.ts +9 -0
  92. package/dist/components/providers/QueryProvider.js +22 -0
  93. package/dist/components/search/MetadataSearch.js +26 -25
  94. package/dist/components/search/SearchHints.js +1 -1
  95. package/dist/components/ui/ArrayFieldActions.js +4 -4
  96. package/dist/components/ui/ConfirmDeleteRuleModal.d.ts +1 -1
  97. package/dist/components/ui/ConfirmDeleteRuleModal.js +1 -1
  98. package/dist/components/ui/DeleteObjectModalContent.d.ts +1 -1
  99. package/dist/components/ui/DeleteObjectModalContent.js +12 -12
  100. package/dist/components/ui/FilterFormSection.d.ts +2 -2
  101. package/dist/components/ui/FilterFormSection.js +29 -29
  102. package/dist/components/ui/Search.elements.d.ts +1 -1
  103. package/dist/components/ui/Search.elements.js +7 -7
  104. package/dist/components/ui/Table.elements.js +5 -5
  105. package/dist/config/factory.d.ts +23 -10
  106. package/dist/config/factory.js +22 -7
  107. package/dist/config/types.d.ts +20 -3
  108. package/dist/contexts/DataBrowserUICustomizationContext.d.ts +2 -2
  109. package/dist/hooks/__tests__/useISVBucketDetection.test.js +42 -42
  110. package/dist/hooks/__tests__/useIsBucketEmpty.test.js +25 -25
  111. package/dist/hooks/bucketConfiguration.d.ts +1 -1
  112. package/dist/hooks/bucketConfiguration.js +48 -48
  113. package/dist/hooks/bucketOperations.d.ts +1 -1
  114. package/dist/hooks/bucketOperations.js +6 -6
  115. package/dist/hooks/factories/__tests__/useCreateS3FunctionMutationHook.test.js +78 -78
  116. package/dist/hooks/factories/__tests__/useCreateS3InfiniteQueryHook.test.js +78 -78
  117. package/dist/hooks/factories/__tests__/useCreateS3LoginHook.test.js +42 -42
  118. package/dist/hooks/factories/__tests__/useCreateS3MutationHook.test.js +61 -61
  119. package/dist/hooks/factories/__tests__/useCreateS3QueryHook.test.js +63 -63
  120. package/dist/hooks/factories/index.d.ts +4 -4
  121. package/dist/hooks/factories/useCreateS3InfiniteQueryHook.d.ts +2 -2
  122. package/dist/hooks/factories/useCreateS3InfiniteQueryHook.js +15 -12
  123. package/dist/hooks/factories/useCreateS3LoginHook.d.ts +2 -2
  124. package/dist/hooks/factories/useCreateS3MutationHook.d.ts +3 -3
  125. package/dist/hooks/factories/useCreateS3MutationHook.js +6 -1
  126. package/dist/hooks/factories/useCreateS3QueryHook.d.ts +2 -2
  127. package/dist/hooks/factories/useCreateS3QueryHook.js +8 -5
  128. package/dist/hooks/index.d.ts +16 -13
  129. package/dist/hooks/index.js +4 -1
  130. package/dist/hooks/loginOperations.d.ts +1 -1
  131. package/dist/hooks/loginOperations.js +1 -1
  132. package/dist/hooks/objectOperations.d.ts +2 -2
  133. package/dist/hooks/objectOperations.js +49 -49
  134. package/dist/hooks/presignedOperations.d.ts +2 -2
  135. package/dist/hooks/presignedOperations.js +3 -3
  136. package/dist/hooks/useBatchObjectLegalHold.js +7 -4
  137. package/dist/hooks/useDataBrowserNavigate.d.ts +28 -0
  138. package/dist/hooks/useDataBrowserNavigate.js +24 -0
  139. package/dist/hooks/useDeleteBucketConfigRule.d.ts +2 -2
  140. package/dist/hooks/useDeleteBucketConfigRule.js +4 -4
  141. package/dist/hooks/useEmptyBucket.js +10 -10
  142. package/dist/hooks/useFeatures.d.ts +7 -0
  143. package/dist/hooks/useFeatures.js +8 -0
  144. package/dist/hooks/useISVBucketDetection.js +5 -5
  145. package/dist/hooks/useIsBucketEmpty.js +4 -4
  146. package/dist/hooks/useLoginMutation.d.ts +1 -1
  147. package/dist/hooks/useLoginMutation.js +1 -1
  148. package/dist/hooks/useS3Client.d.ts +6 -0
  149. package/dist/hooks/useS3Client.js +3 -2
  150. package/dist/hooks/useS3ConfigSwitch.d.ts +11 -0
  151. package/dist/hooks/useS3ConfigSwitch.js +37 -0
  152. package/dist/hooks/useSupportedNotificationEvents.d.ts +6 -0
  153. package/dist/hooks/useSupportedNotificationEvents.js +8 -0
  154. package/dist/index.d.ts +6 -6
  155. package/dist/test/msw/handlers/deleteBucket.d.ts +1 -1
  156. package/dist/test/msw/handlers/deleteBucket.js +20 -10
  157. package/dist/test/msw/handlers/getBucketAcl.d.ts +1 -1
  158. package/dist/test/msw/handlers/getBucketAcl.js +29 -17
  159. package/dist/test/msw/handlers/getBucketLocation.d.ts +1 -1
  160. package/dist/test/msw/handlers/getBucketLocation.js +29 -15
  161. package/dist/test/msw/handlers/getBucketPolicy.d.ts +1 -1
  162. package/dist/test/msw/handlers/getBucketPolicy.js +52 -32
  163. package/dist/test/msw/handlers/headObject.d.ts +1 -1
  164. package/dist/test/msw/handlers/headObject.js +31 -13
  165. package/dist/test/msw/handlers/listBuckets.d.ts +1 -1
  166. package/dist/test/msw/handlers/listBuckets.js +5 -3
  167. package/dist/test/msw/handlers/listObjectVersions.d.ts +1 -1
  168. package/dist/test/msw/handlers/listObjectVersions.js +38 -26
  169. package/dist/test/msw/handlers/listObjects.d.ts +1 -1
  170. package/dist/test/msw/handlers/listObjects.js +35 -23
  171. package/dist/test/msw/handlers/objectLegalHold.d.ts +1 -1
  172. package/dist/test/msw/handlers/objectLegalHold.js +31 -16
  173. package/dist/test/msw/handlers/objectRetention.d.ts +1 -1
  174. package/dist/test/msw/handlers/objectRetention.js +31 -17
  175. package/dist/test/msw/handlers/putBucketAcl.d.ts +1 -1
  176. package/dist/test/msw/handlers/putBucketAcl.js +29 -14
  177. package/dist/test/msw/handlers/putObject.d.ts +1 -1
  178. package/dist/test/msw/handlers/putObject.js +27 -12
  179. package/dist/test/msw/handlers.d.ts +3 -3
  180. package/dist/test/msw/handlers.js +72 -49
  181. package/dist/test/msw/index.d.ts +2 -2
  182. package/dist/test/msw/server.d.ts +1 -1
  183. package/dist/test/msw/server.js +1 -1
  184. package/dist/test/msw/utils.js +2 -2
  185. package/dist/test/setup.d.ts +1 -1
  186. package/dist/test/setup.js +19 -19
  187. package/dist/test/testUtils.d.ts +9 -15
  188. package/dist/test/testUtils.js +73 -91
  189. package/dist/test/utils/errorHandling.test.js +119 -119
  190. package/dist/types/index.d.ts +6 -31
  191. package/dist/utils/__tests__/s3ConfigIdentifier.test.d.ts +1 -0
  192. package/dist/utils/__tests__/s3ConfigIdentifier.test.js +429 -0
  193. package/dist/utils/constants.js +8 -8
  194. package/dist/utils/deletion/index.d.ts +2 -2
  195. package/dist/utils/deletion/messages.d.ts +1 -1
  196. package/dist/utils/deletion/messages.js +4 -4
  197. package/dist/utils/errorHandling.d.ts +3 -3
  198. package/dist/utils/errorHandling.js +6 -6
  199. package/dist/utils/hooks.js +8 -8
  200. package/dist/utils/index.d.ts +5 -4
  201. package/dist/utils/index.js +2 -0
  202. package/dist/utils/proxyMiddleware.d.ts +1 -1
  203. package/dist/utils/proxyMiddleware.js +6 -11
  204. package/dist/utils/s3Client.d.ts +2 -2
  205. package/dist/utils/s3Client.js +1 -1
  206. package/dist/utils/s3ConfigIdentifier.d.ts +68 -0
  207. package/dist/utils/s3ConfigIdentifier.js +55 -0
  208. package/dist/utils/s3RuleUtils.d.ts +5 -5
  209. package/dist/utils/s3RuleUtils.js +17 -17
  210. package/package.json +2 -2
  211. package/dist/utils/useFeatures.d.ts +0 -1
  212. package/dist/utils/useFeatures.js +0 -7
@@ -4,34 +4,34 @@ import { Icon, Loader, Text, spacing, useToast } from "@scality/core-ui";
4
4
  import { Box, Button, Input, Select } from "@scality/core-ui/dist/next";
5
5
  import { convertSizeToRem } from "@scality/core-ui/dist/components/inputv2/inputv2";
6
6
  import { Controller, useFieldArray, useForm } from "react-hook-form";
7
- import { useQueryClient } from "@tanstack/react-query";
8
7
  import { useCopyObject, useObjectMetadata } from "../../../hooks/index.js";
8
+ import { useInvalidateQueries } from "../../providers/DataBrowserProvider.js";
9
9
  import { TableContainer } from "../../ui/Table.elements.js";
10
10
  import { ArrayFieldActions } from "../../ui/ArrayFieldActions.js";
11
11
  const METADATA_KEYS = [
12
12
  {
13
- key: "CacheControl",
14
- label: "cache-control"
13
+ key: 'CacheControl',
14
+ label: 'cache-control'
15
15
  },
16
16
  {
17
- key: "ContentDisposition",
18
- label: "content-disposition"
17
+ key: 'ContentDisposition',
18
+ label: 'content-disposition'
19
19
  },
20
20
  {
21
- key: "ContentEncoding",
22
- label: "content-encoding"
21
+ key: 'ContentEncoding',
22
+ label: 'content-encoding'
23
23
  },
24
24
  {
25
- key: "ContentType",
26
- label: "content-type"
25
+ key: 'ContentType',
26
+ label: 'content-type'
27
27
  },
28
28
  {
29
- key: "WebsiteRedirectLocation",
30
- label: "website-redirect-location"
29
+ key: 'WebsiteRedirectLocation',
30
+ label: 'website-redirect-location'
31
31
  },
32
32
  {
33
- key: "x-amz-meta",
34
- label: "x-amz-meta"
33
+ key: 'x-amz-meta',
34
+ label: 'x-amz-meta'
35
35
  }
36
36
  ];
37
37
  const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
@@ -45,17 +45,17 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
45
45
  });
46
46
  const copyObjectMutation = useCopyObject();
47
47
  const { showToast } = useToast();
48
- const queryClient = useQueryClient();
48
+ const invalidateQueries = useInvalidateQueries();
49
49
  const [isInitialized, setIsInitialized] = useState(false);
50
50
  const { control, handleSubmit, setValue, watch, formState: { errors, isValid, isSubmitting } } = useForm({
51
- mode: "onChange",
51
+ mode: 'onChange',
52
52
  defaultValues: {
53
53
  metadata: []
54
54
  }
55
55
  });
56
56
  const { fields, append, remove } = useFieldArray({
57
57
  control,
58
- name: "metadata"
58
+ name: 'metadata'
59
59
  });
60
60
  useEffect(()=>{
61
61
  setIsInitialized(false);
@@ -66,37 +66,37 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
66
66
  versionId
67
67
  ]);
68
68
  useEffect(()=>{
69
- if (metadata && "success" === metadataStatus && !isInitialized) {
69
+ if (metadata && 'success' === metadataStatus && !isInitialized) {
70
70
  const rows = [];
71
71
  const standardKeys = [
72
- "CacheControl",
73
- "ContentDisposition",
74
- "ContentEncoding",
75
- "ContentType",
76
- "WebsiteRedirectLocation"
72
+ 'CacheControl',
73
+ 'ContentDisposition',
74
+ 'ContentEncoding',
75
+ 'ContentType',
76
+ 'WebsiteRedirectLocation'
77
77
  ];
78
78
  standardKeys.forEach((keyType)=>{
79
79
  const value = metadata[keyType];
80
80
  if (value) rows.push({
81
81
  keyType,
82
- customKey: "",
82
+ customKey: '',
83
83
  value
84
84
  });
85
85
  });
86
86
  const userMetadata = metadata.Metadata || {};
87
87
  Object.entries(userMetadata).forEach(([key, value])=>{
88
88
  rows.push({
89
- keyType: "x-amz-meta",
89
+ keyType: 'x-amz-meta',
90
90
  customKey: key,
91
91
  value: value
92
92
  });
93
93
  });
94
94
  if (0 === rows.length) rows.push({
95
- keyType: "",
96
- customKey: "",
97
- value: ""
95
+ keyType: '',
96
+ customKey: '',
97
+ value: ''
98
98
  });
99
- setValue("metadata", rows);
99
+ setValue('metadata', rows);
100
100
  setIsInitialized(true);
101
101
  }
102
102
  }, [
@@ -106,9 +106,9 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
106
106
  isInitialized
107
107
  ]);
108
108
  const getAvailableOptions = (currentIndex)=>{
109
- const allMetadata = watch("metadata") || [];
110
- const usedKeys = new Set(allMetadata.filter((row, idx)=>idx !== currentIndex && "x-amz-meta" !== row.keyType).map((row)=>row.keyType));
111
- return METADATA_KEYS.filter((key)=>"x-amz-meta" === key.key || !usedKeys.has(key.key));
109
+ const allMetadata = watch('metadata') || [];
110
+ const usedKeys = new Set(allMetadata.filter((row, idx)=>idx !== currentIndex && 'x-amz-meta' !== row.keyType).map((row)=>row.keyType));
111
+ return METADATA_KEYS.filter((key)=>'x-amz-meta' === key.key || !usedKeys.has(key.key));
112
112
  };
113
113
  const onSubmit = async (data)=>{
114
114
  if (!metadata) return;
@@ -120,18 +120,18 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
120
120
  Bucket: bucketName,
121
121
  Key: objectKey,
122
122
  CopySource: copySource,
123
- MetadataDirective: "REPLACE",
123
+ MetadataDirective: 'REPLACE',
124
124
  Metadata: {}
125
125
  };
126
126
  validMetadata.forEach((row)=>{
127
- if ("x-amz-meta" === row.keyType) copyParams.Metadata[row.customKey.trim()] = row.value.trim();
127
+ if ('x-amz-meta' === row.keyType) copyParams.Metadata[row.customKey.trim()] = row.value.trim();
128
128
  else if (row.keyType) copyParams[row.keyType] = row.value.trim();
129
129
  });
130
130
  if (!copyParams.ContentType && metadata.ContentType) copyParams.ContentType = metadata.ContentType;
131
131
  await copyObjectMutation.mutateAsync(copyParams);
132
- await queryClient.invalidateQueries({
132
+ await invalidateQueries({
133
133
  queryKey: [
134
- "HeadObject",
134
+ 'HeadObject',
135
135
  {
136
136
  Bucket: bucketName,
137
137
  Key: objectKey,
@@ -141,19 +141,19 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
141
141
  });
142
142
  showToast({
143
143
  open: true,
144
- message: "Metadata saved successfully",
145
- status: "success"
144
+ message: 'Metadata saved successfully',
145
+ status: 'success'
146
146
  });
147
147
  } catch (error) {
148
- const errorMessage = error instanceof Error ? error.message : "Failed to save metadata";
148
+ const errorMessage = error instanceof Error ? error.message : 'Failed to save metadata';
149
149
  showToast({
150
150
  open: true,
151
151
  message: errorMessage,
152
- status: "error"
152
+ status: 'error'
153
153
  });
154
154
  }
155
155
  };
156
- if ("pending" === metadataStatus) return /*#__PURE__*/ jsx(TableContainer, {
156
+ if ('pending' === metadataStatus) return /*#__PURE__*/ jsx(TableContainer, {
157
157
  children: /*#__PURE__*/ jsx(Box, {
158
158
  display: "flex",
159
159
  justifyContent: "center",
@@ -161,7 +161,7 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
161
161
  children: /*#__PURE__*/ jsx(Loader, {})
162
162
  })
163
163
  });
164
- if ("error" === metadataStatus) return /*#__PURE__*/ jsx(TableContainer, {
164
+ if ('error' === metadataStatus) return /*#__PURE__*/ jsx(TableContainer, {
165
165
  children: /*#__PURE__*/ jsx(Box, {
166
166
  padding: spacing.r16,
167
167
  children: /*#__PURE__*/ jsx(Text, {
@@ -224,7 +224,7 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
224
224
  })
225
225
  }),
226
226
  /*#__PURE__*/ jsx(Box, {
227
- width: convertSizeToRem("1/3")
227
+ width: convertSizeToRem('1/3')
228
228
  })
229
229
  ]
230
230
  }),
@@ -241,14 +241,14 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
241
241
  rules: {
242
242
  validate: (value, formValues)=>{
243
243
  if (1 === formValues.metadata.length && !value && !formValues.metadata[0].value.trim()) return true;
244
- if (!value) return "Please select a metadata key";
244
+ if (!value) return 'Please select a metadata key';
245
245
  const allMetadata = formValues.metadata;
246
246
  const usedKeys = allMetadata.map((row, idx)=>{
247
247
  if (idx === index) return null;
248
- if ("x-amz-meta" === row.keyType) return row.customKey ? `x-amz-meta-${row.customKey.trim()}` : null;
248
+ if ('x-amz-meta' === row.keyType) return row.customKey ? `x-amz-meta-${row.customKey.trim()}` : null;
249
249
  return row.keyType;
250
250
  }).filter(Boolean);
251
- const currentKey = "x-amz-meta" === value ? formValues.metadata[index].customKey ? `x-amz-meta-${formValues.metadata[index].customKey.trim()}` : null : value;
251
+ const currentKey = 'x-amz-meta' === value ? formValues.metadata[index].customKey ? `x-amz-meta-${formValues.metadata[index].customKey.trim()}` : null : value;
252
252
  if (currentKey && usedKeys.includes(currentKey)) return `Duplicate key "${currentKey}"`;
253
253
  return true;
254
254
  }
@@ -258,7 +258,7 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
258
258
  value: value,
259
259
  onChange: (newValue)=>{
260
260
  onChange(newValue);
261
- if ("x-amz-meta" !== newValue) setValue(`metadata.${index}.customKey`, "");
261
+ if ('x-amz-meta' !== newValue) setValue(`metadata.${index}.customKey`, '');
262
262
  },
263
263
  placeholder: "Select key",
264
264
  children: getAvailableOptions(index).map((key)=>/*#__PURE__*/ jsx(Select.Option, {
@@ -267,13 +267,13 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
267
267
  }, key.key))
268
268
  })
269
269
  }),
270
- "x-amz-meta" === watch(`metadata.${index}.keyType`) && /*#__PURE__*/ jsx(Controller, {
270
+ 'x-amz-meta' === watch(`metadata.${index}.keyType`) && /*#__PURE__*/ jsx(Controller, {
271
271
  control: control,
272
272
  name: `metadata.${index}.customKey`,
273
273
  rules: {
274
274
  validate: (value, formValues)=>{
275
- if ("x-amz-meta" === formValues.metadata[index].keyType) {
276
- if (!value.trim()) return "Custom key required";
275
+ if ('x-amz-meta' === formValues.metadata[index].keyType) {
276
+ if (!value.trim()) return 'Custom key required';
277
277
  }
278
278
  return true;
279
279
  }
@@ -295,7 +295,7 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
295
295
  rules: {
296
296
  validate: (value, formValues)=>{
297
297
  if (1 === formValues.metadata.length && !value.trim() && !formValues.metadata[0].keyType) return true;
298
- if (!value.trim()) return "Value cannot be empty";
298
+ if (!value.trim()) return 'Value cannot be empty';
299
299
  return true;
300
300
  }
301
301
  },
@@ -311,15 +311,15 @@ const ObjectMetadata = ({ bucketName, objectKey, versionId })=>{
311
311
  onRemove: ()=>{
312
312
  remove(index);
313
313
  if (1 === fields.length) append({
314
- keyType: "",
315
- customKey: "",
316
- value: ""
314
+ keyType: '',
315
+ customKey: '',
316
+ value: ''
317
317
  });
318
318
  },
319
319
  onAdd: ()=>append({
320
- keyType: "",
321
- customKey: "",
322
- value: ""
320
+ keyType: '',
321
+ customKey: '',
322
+ value: ''
323
323
  }),
324
324
  canRemove: true,
325
325
  canAdd: !!watch(`metadata.${index}.keyType`) && !!watch(`metadata.${index}.value`),
@@ -1,3 +1,3 @@
1
- import { ObjectCommonProps } from ".";
1
+ import { ObjectCommonProps } from '.';
2
2
  declare const ObjectSummary: ({ bucketName, objectKey, versionId, }: ObjectCommonProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export { ObjectSummary };
@@ -31,9 +31,9 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
31
31
  });
32
32
  const { mutate: setLegalHold, isPending: isUpdatingLegalHold } = useSetObjectLegalHold();
33
33
  const { showToast } = useToast();
34
- const isLegalHoldEnabled = legalHoldData?.LegalHold?.Status === "ON";
34
+ const isLegalHoldEnabled = legalHoldData?.LegalHold?.Status === 'ON';
35
35
  const hasRetention = retentionData?.Retention?.Mode;
36
- const isObjectLockAvailable = hasRetention || "pending" === retentionStatus || "success" === legalHoldStatus;
36
+ const isObjectLockAvailable = hasRetention || 'pending' === retentionStatus || 'success' === legalHoldStatus;
37
37
  const handleLegalHoldChange = useCallback(()=>{
38
38
  setLegalHold({
39
39
  Bucket: bucketName,
@@ -42,21 +42,21 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
42
42
  VersionId: versionId
43
43
  },
44
44
  LegalHold: {
45
- Status: isLegalHoldEnabled ? "OFF" : "ON"
45
+ Status: isLegalHoldEnabled ? 'OFF' : 'ON'
46
46
  }
47
47
  }, {
48
48
  onSuccess: ()=>{
49
49
  showToast({
50
50
  open: true,
51
- message: `Legal hold ${isLegalHoldEnabled ? "inactive" : "active"}`,
52
- status: "success"
51
+ message: `Legal hold ${isLegalHoldEnabled ? 'inactive' : 'active'}`,
52
+ status: 'success'
53
53
  });
54
54
  },
55
55
  onError: (error)=>{
56
56
  showToast({
57
57
  open: true,
58
- message: error instanceof Error ? error.message : "Failed to update legal hold",
59
- status: "error"
58
+ message: error instanceof Error ? error.message : 'Failed to update legal hold',
59
+ status: 'error'
60
60
  });
61
61
  }
62
62
  });
@@ -71,8 +71,8 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
71
71
  const informationFields = useMemo(()=>{
72
72
  const defaultFields = {
73
73
  name: {
74
- id: "name",
75
- label: "Name",
74
+ id: 'name',
75
+ label: 'Name',
76
76
  node: /*#__PURE__*/ jsxs(Row, {
77
77
  children: [
78
78
  /*#__PURE__*/ jsx(Key, {
@@ -89,28 +89,28 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
89
89
  }, "name")
90
90
  },
91
91
  versionId: {
92
- id: "versionId",
93
- label: "Version ID",
92
+ id: 'versionId',
93
+ label: 'Version ID',
94
94
  node: /*#__PURE__*/ jsxs(Row, {
95
95
  children: [
96
96
  /*#__PURE__*/ jsx(Key, {
97
97
  children: "Version ID"
98
98
  }),
99
99
  /*#__PURE__*/ jsx(Value, {
100
- children: "pending" === metadataStatus ? /*#__PURE__*/ jsx(Loader, {}) : "error" === metadataStatus ? "Error" : /*#__PURE__*/ jsxs(GroupValues, {
100
+ children: 'pending' === metadataStatus ? /*#__PURE__*/ jsx(Loader, {}) : 'error' === metadataStatus ? 'Error' : /*#__PURE__*/ jsxs(GroupValues, {
101
101
  children: [
102
102
  /*#__PURE__*/ jsx(Box, {
103
103
  flex: "1",
104
104
  minWidth: "0",
105
105
  children: /*#__PURE__*/ jsx(ConstrainedText, {
106
- text: metadata?.VersionId || versionId || "N/A",
106
+ text: metadata?.VersionId || versionId || 'N/A',
107
107
  lineClamp: 1
108
108
  })
109
109
  }),
110
110
  /*#__PURE__*/ jsx(ExtraCell, {
111
111
  marginLeft: spacing.f8,
112
112
  children: /*#__PURE__*/ jsx(CopyButton, {
113
- textToCopy: metadata?.VersionId || versionId || ""
113
+ textToCopy: metadata?.VersionId || versionId || ''
114
114
  })
115
115
  })
116
116
  ]
@@ -120,15 +120,15 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
120
120
  }, "versionId")
121
121
  },
122
122
  size: {
123
- id: "size",
124
- label: "Size",
123
+ id: 'size',
124
+ label: 'Size',
125
125
  node: /*#__PURE__*/ jsxs(Row, {
126
126
  children: [
127
127
  /*#__PURE__*/ jsx(Key, {
128
128
  children: "Size"
129
129
  }),
130
130
  /*#__PURE__*/ jsx(Value, {
131
- children: "pending" === metadataStatus ? /*#__PURE__*/ jsx(Loader, {}) : "error" === metadataStatus ? "Error" : /*#__PURE__*/ jsx(PrettyBytes, {
131
+ children: 'pending' === metadataStatus ? /*#__PURE__*/ jsx(Loader, {}) : 'error' === metadataStatus ? 'Error' : /*#__PURE__*/ jsx(PrettyBytes, {
132
132
  bytes: metadata?.ContentLength || 0
133
133
  })
134
134
  })
@@ -136,45 +136,45 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
136
136
  }, "size")
137
137
  },
138
138
  lastModified: {
139
- id: "lastModified",
140
- label: "Modified On",
139
+ id: 'lastModified',
140
+ label: 'Modified On',
141
141
  node: /*#__PURE__*/ jsxs(Row, {
142
142
  children: [
143
143
  /*#__PURE__*/ jsx(Key, {
144
144
  children: "Modified On"
145
145
  }),
146
146
  /*#__PURE__*/ jsx(Value, {
147
- children: "pending" === metadataStatus ? /*#__PURE__*/ jsx(Loader, {}) : "error" === metadataStatus ? "Error" : metadata?.LastModified ? /*#__PURE__*/ jsx(FormattedDateTime, {
147
+ children: 'pending' === metadataStatus ? /*#__PURE__*/ jsx(Loader, {}) : 'error' === metadataStatus ? 'Error' : metadata?.LastModified ? /*#__PURE__*/ jsx(FormattedDateTime, {
148
148
  value: metadata.LastModified,
149
149
  format: "date-time-second"
150
- }) : "N/A"
150
+ }) : 'N/A'
151
151
  })
152
152
  ]
153
153
  }, "lastModified")
154
154
  },
155
155
  etag: {
156
- id: "etag",
157
- label: "ETag",
156
+ id: 'etag',
157
+ label: 'ETag',
158
158
  node: /*#__PURE__*/ jsxs(Row, {
159
159
  children: [
160
160
  /*#__PURE__*/ jsx(Key, {
161
161
  children: "ETag"
162
162
  }),
163
163
  /*#__PURE__*/ jsx(Value, {
164
- children: "pending" === metadataStatus ? /*#__PURE__*/ jsx(Loader, {}) : "error" === metadataStatus ? "Error" : /*#__PURE__*/ jsxs(GroupValues, {
164
+ children: 'pending' === metadataStatus ? /*#__PURE__*/ jsx(Loader, {}) : 'error' === metadataStatus ? 'Error' : /*#__PURE__*/ jsxs(GroupValues, {
165
165
  children: [
166
166
  /*#__PURE__*/ jsx(Box, {
167
167
  flex: "1",
168
168
  minWidth: "0",
169
169
  children: /*#__PURE__*/ jsx(ConstrainedText, {
170
- text: metadata.ETag?.replace(/^"|"$/g, "") || "N/A",
170
+ text: metadata.ETag?.replace(/^"|"$/g, '') || 'N/A',
171
171
  lineClamp: 1
172
172
  })
173
173
  }),
174
174
  /*#__PURE__*/ jsx(ExtraCell, {
175
175
  marginLeft: spacing.f8,
176
176
  children: /*#__PURE__*/ jsx(CopyButton, {
177
- textToCopy: metadata.ETag?.replace(/^"|"$/g, "") || ""
177
+ textToCopy: metadata.ETag?.replace(/^"|"$/g, '') || ''
178
178
  })
179
179
  })
180
180
  ]
@@ -184,8 +184,8 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
184
184
  }, "etag")
185
185
  },
186
186
  location: {
187
- id: "location",
188
- label: "Location",
187
+ id: 'location',
188
+ label: 'Location',
189
189
  node: /*#__PURE__*/ jsxs(Row, {
190
190
  children: [
191
191
  /*#__PURE__*/ jsx(Key, {
@@ -242,39 +242,39 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
242
242
  const dataProtectionFields = useMemo(()=>{
243
243
  const defaultFields = {
244
244
  lock: {
245
- id: "lock",
246
- label: "Lock",
245
+ id: 'lock',
246
+ label: 'Lock',
247
247
  node: /*#__PURE__*/ jsxs(Row, {
248
248
  children: [
249
249
  /*#__PURE__*/ jsx(Key, {
250
250
  children: "Lock"
251
251
  }),
252
252
  /*#__PURE__*/ jsx(Value, {
253
- children: "pending" === retentionStatus ? /*#__PURE__*/ jsx(Loader, {}) : "error" === retentionStatus ? "No Retention" : retentionData?.Retention?.Mode ? /*#__PURE__*/ jsxs(Fragment, {
253
+ children: 'pending' === retentionStatus ? /*#__PURE__*/ jsx(Loader, {}) : 'error' === retentionStatus ? 'No Retention' : retentionData?.Retention?.Mode ? /*#__PURE__*/ jsxs(Fragment, {
254
254
  children: [
255
255
  retentionData.Retention.Mode,
256
256
  " until",
257
- " ",
257
+ ' ',
258
258
  retentionData.Retention.RetainUntilDate ? /*#__PURE__*/ jsx(FormattedDateTime, {
259
259
  format: "date-time-second",
260
260
  value: new Date(retentionData.Retention.RetainUntilDate)
261
- }) : "N/A"
261
+ }) : 'N/A'
262
262
  ]
263
- }) : "No Retention"
263
+ }) : 'No Retention'
264
264
  })
265
265
  ]
266
266
  }, "lock")
267
267
  },
268
268
  legalHold: {
269
- id: "legalHold",
270
- label: "Legal Hold",
269
+ id: 'legalHold',
270
+ label: 'Legal Hold',
271
271
  node: /*#__PURE__*/ jsxs(Row, {
272
272
  children: [
273
273
  /*#__PURE__*/ jsx(Key, {
274
274
  children: "Legal Hold"
275
275
  }),
276
276
  /*#__PURE__*/ jsx(Value, {
277
- children: "pending" === legalHoldStatus ? /*#__PURE__*/ jsx(Loader, {}) : isObjectLockAvailable ? /*#__PURE__*/ jsxs(Box, {
277
+ children: 'pending' === legalHoldStatus ? /*#__PURE__*/ jsx(Loader, {}) : isObjectLockAvailable ? /*#__PURE__*/ jsxs(Box, {
278
278
  display: "flex",
279
279
  alignItems: "center",
280
280
  gap: spacing.r8,
@@ -283,14 +283,14 @@ const ObjectSummary = ({ bucketName, objectKey, versionId })=>{
283
283
  id: "legalHoldToggle",
284
284
  disabled: isUpdatingLegalHold,
285
285
  toggle: isLegalHoldEnabled,
286
- label: isLegalHoldEnabled ? "Active" : "Inactive",
286
+ label: isLegalHoldEnabled ? 'Active' : 'Inactive',
287
287
  onChange: handleLegalHoldChange
288
288
  }),
289
289
  isLegalHoldEnabled && /*#__PURE__*/ jsx(Icon, {
290
290
  name: "Rebalance"
291
291
  })
292
292
  ]
293
- }) : "N/A"
293
+ }) : 'N/A'
294
294
  })
295
295
  ]
296
296
  }, "legalHold")
@@ -1,3 +1,3 @@
1
- import { ObjectCommonProps } from ".";
1
+ import { ObjectCommonProps } from '.';
2
2
  declare const ObjectTags: ({ bucketName, objectKey, versionId, }: ObjectCommonProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export { ObjectTags };