@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.
- package/dist/components/DataBrowserUI.d.ts +6 -14
- package/dist/components/DataBrowserUI.js +79 -55
- package/dist/components/Editor.d.ts +1 -1
- package/dist/components/Editor.js +3 -3
- package/dist/components/__tests__/BucketCreate.test.js +102 -102
- package/dist/components/__tests__/BucketDetails.test.js +122 -123
- package/dist/components/__tests__/BucketLifecycleFormPage.test.js +177 -177
- package/dist/components/__tests__/BucketLifecycleList.test.js +85 -85
- package/dist/components/__tests__/BucketList.test.js +175 -176
- package/dist/components/__tests__/BucketNotificationCreatePage.test.js +84 -84
- package/dist/components/__tests__/BucketOverview.test.js +257 -201
- package/dist/components/__tests__/BucketPolicyPage.test.js +62 -62
- package/dist/components/__tests__/BucketReplicationFormPage.test.js +542 -542
- package/dist/components/__tests__/BucketReplicationList.test.js +106 -106
- package/dist/components/__tests__/CreateFolderButton.test.js +56 -56
- package/dist/components/__tests__/DeleteBucketButton.test.js +62 -62
- package/dist/components/__tests__/DeleteBucketConfigRuleButton.test.js +47 -47
- package/dist/components/__tests__/DeleteObjectButton.test.js +63 -63
- package/dist/components/__tests__/EmptyBucketButton.test.js +56 -56
- package/dist/components/__tests__/MetadataSearch.test.js +65 -65
- package/dist/components/__tests__/ObjectList.test.js +252 -251
- package/dist/components/__tests__/UploadButton.test.js +45 -45
- package/dist/components/buckets/BucketCreate.d.ts +2 -2
- package/dist/components/buckets/BucketCreate.js +41 -41
- package/dist/components/buckets/BucketDetails.d.ts +2 -2
- package/dist/components/buckets/BucketDetails.js +48 -36
- package/dist/components/buckets/BucketLifecycleFormPage.js +161 -160
- package/dist/components/buckets/BucketLifecycleList.d.ts +2 -2
- package/dist/components/buckets/BucketLifecycleList.js +46 -46
- package/dist/components/buckets/BucketList.d.ts +2 -2
- package/dist/components/buckets/BucketList.js +28 -27
- package/dist/components/buckets/BucketLocation.js +3 -3
- package/dist/components/buckets/BucketOverview.d.ts +1 -1
- package/dist/components/buckets/BucketOverview.js +64 -65
- package/dist/components/buckets/BucketPage.js +19 -11
- package/dist/components/buckets/BucketPolicyButton.js +2 -2
- package/dist/components/buckets/BucketPolicyPage.js +27 -25
- package/dist/components/buckets/BucketReplicationFormPage.js +133 -132
- package/dist/components/buckets/BucketReplicationList.d.ts +2 -2
- package/dist/components/buckets/BucketReplicationList.js +41 -41
- package/dist/components/buckets/BucketVersioning.js +11 -11
- package/dist/components/buckets/DeleteBucketButton.js +5 -5
- package/dist/components/buckets/DeleteBucketConfigRuleButton.d.ts +2 -2
- package/dist/components/buckets/DeleteBucketConfigRuleButton.js +1 -1
- package/dist/components/buckets/EmptyBucketButton.js +19 -19
- package/dist/components/buckets/EmptyBucketSummary.d.ts +1 -1
- package/dist/components/buckets/EmptyBucketSummary.js +1 -1
- package/dist/components/buckets/EmptyBucketSummaryList.js +22 -22
- package/dist/components/buckets/__tests__/BucketVersioning.test.js +45 -45
- package/dist/components/buckets/notifications/BucketNotificationCreatePage.js +34 -33
- package/dist/components/buckets/notifications/EventsSection.js +144 -28
- package/dist/components/buckets/notifications/__tests__/events.test.d.ts +1 -0
- package/dist/components/buckets/notifications/__tests__/events.test.js +56 -0
- package/dist/components/buckets/notifications/events.d.ts +71 -7
- package/dist/components/buckets/notifications/events.js +98 -16
- package/dist/components/index.d.ts +24 -22
- package/dist/components/index.js +5 -3
- package/dist/components/layouts/ArrowNavigation.d.ts +1 -2
- package/dist/components/layouts/ArrowNavigation.js +3 -3
- package/dist/components/layouts/BrowserPageLayout.d.ts +2 -3
- package/dist/components/layouts/BrowserPageLayout.js +1 -1
- package/dist/components/objects/CreateFolderButton.d.ts +2 -2
- package/dist/components/objects/CreateFolderButton.js +9 -9
- package/dist/components/objects/DeleteObjectButton.d.ts +1 -1
- package/dist/components/objects/DeleteObjectButton.js +20 -20
- package/dist/components/objects/ObjectDetails/ObjectMetadata.d.ts +1 -1
- package/dist/components/objects/ObjectDetails/ObjectMetadata.js +56 -56
- package/dist/components/objects/ObjectDetails/ObjectSummary.d.ts +1 -1
- package/dist/components/objects/ObjectDetails/ObjectSummary.js +39 -39
- package/dist/components/objects/ObjectDetails/ObjectTags.d.ts +1 -1
- package/dist/components/objects/ObjectDetails/ObjectTags.js +25 -25
- package/dist/components/objects/ObjectDetails/__tests__/ObjectDetails.test.js +119 -119
- package/dist/components/objects/ObjectDetails/__tests__/ObjectSummary.test.js +211 -211
- package/dist/components/objects/ObjectDetails/index.d.ts +1 -1
- package/dist/components/objects/ObjectDetails/index.js +30 -30
- package/dist/components/objects/ObjectList.d.ts +5 -5
- package/dist/components/objects/ObjectList.js +113 -112
- package/dist/components/objects/ObjectLock/EditRetentionButton.js +3 -3
- package/dist/components/objects/ObjectLock/ObjectLockRetentionSettings.js +14 -14
- package/dist/components/objects/ObjectLock/ObjectLockSettings.d.ts +1 -1
- package/dist/components/objects/ObjectLock/ObjectLockSettings.js +29 -28
- package/dist/components/objects/ObjectLock/ObjectLockSettingsUtils.d.ts +1 -1
- package/dist/components/objects/ObjectLock/ObjectLockSettingsUtils.js +6 -6
- package/dist/components/objects/ObjectLock/__tests__/EditRetentionButton.test.js +50 -50
- package/dist/components/objects/ObjectLock/__tests__/ObjectLockSettings.test.js +77 -77
- package/dist/components/objects/ObjectPage.js +5 -4
- package/dist/components/objects/UploadButton.d.ts +3 -3
- package/dist/components/objects/UploadButton.js +5 -5
- package/dist/components/providers/DataBrowserProvider.d.ts +23 -12
- package/dist/components/providers/DataBrowserProvider.js +60 -38
- package/dist/components/providers/QueryProvider.d.ts +9 -0
- package/dist/components/providers/QueryProvider.js +22 -0
- package/dist/components/search/MetadataSearch.js +26 -25
- package/dist/components/search/SearchHints.js +1 -1
- package/dist/components/ui/ArrayFieldActions.js +4 -4
- package/dist/components/ui/ConfirmDeleteRuleModal.d.ts +1 -1
- package/dist/components/ui/ConfirmDeleteRuleModal.js +1 -1
- package/dist/components/ui/DeleteObjectModalContent.d.ts +1 -1
- package/dist/components/ui/DeleteObjectModalContent.js +12 -12
- package/dist/components/ui/FilterFormSection.d.ts +2 -2
- package/dist/components/ui/FilterFormSection.js +29 -29
- package/dist/components/ui/Search.elements.d.ts +1 -1
- package/dist/components/ui/Search.elements.js +7 -7
- package/dist/components/ui/Table.elements.js +5 -5
- package/dist/config/factory.d.ts +23 -10
- package/dist/config/factory.js +22 -7
- package/dist/config/types.d.ts +20 -3
- package/dist/contexts/DataBrowserUICustomizationContext.d.ts +2 -2
- package/dist/hooks/__tests__/useISVBucketDetection.test.js +42 -42
- package/dist/hooks/__tests__/useIsBucketEmpty.test.js +25 -25
- package/dist/hooks/bucketConfiguration.d.ts +1 -1
- package/dist/hooks/bucketConfiguration.js +48 -48
- package/dist/hooks/bucketOperations.d.ts +1 -1
- package/dist/hooks/bucketOperations.js +6 -6
- package/dist/hooks/factories/__tests__/useCreateS3FunctionMutationHook.test.js +78 -78
- package/dist/hooks/factories/__tests__/useCreateS3InfiniteQueryHook.test.js +78 -78
- package/dist/hooks/factories/__tests__/useCreateS3LoginHook.test.js +42 -42
- package/dist/hooks/factories/__tests__/useCreateS3MutationHook.test.js +61 -61
- package/dist/hooks/factories/__tests__/useCreateS3QueryHook.test.js +63 -63
- package/dist/hooks/factories/index.d.ts +4 -4
- package/dist/hooks/factories/useCreateS3InfiniteQueryHook.d.ts +2 -2
- package/dist/hooks/factories/useCreateS3InfiniteQueryHook.js +15 -12
- package/dist/hooks/factories/useCreateS3LoginHook.d.ts +2 -2
- package/dist/hooks/factories/useCreateS3MutationHook.d.ts +3 -3
- package/dist/hooks/factories/useCreateS3MutationHook.js +6 -1
- package/dist/hooks/factories/useCreateS3QueryHook.d.ts +2 -2
- package/dist/hooks/factories/useCreateS3QueryHook.js +8 -5
- package/dist/hooks/index.d.ts +16 -13
- package/dist/hooks/index.js +4 -1
- package/dist/hooks/loginOperations.d.ts +1 -1
- package/dist/hooks/loginOperations.js +1 -1
- package/dist/hooks/objectOperations.d.ts +2 -2
- package/dist/hooks/objectOperations.js +49 -49
- package/dist/hooks/presignedOperations.d.ts +2 -2
- package/dist/hooks/presignedOperations.js +3 -3
- package/dist/hooks/useBatchObjectLegalHold.js +7 -4
- package/dist/hooks/useDataBrowserNavigate.d.ts +28 -0
- package/dist/hooks/useDataBrowserNavigate.js +24 -0
- package/dist/hooks/useDeleteBucketConfigRule.d.ts +2 -2
- package/dist/hooks/useDeleteBucketConfigRule.js +4 -4
- package/dist/hooks/useEmptyBucket.js +10 -10
- package/dist/hooks/useFeatures.d.ts +7 -0
- package/dist/hooks/useFeatures.js +8 -0
- package/dist/hooks/useISVBucketDetection.js +5 -5
- package/dist/hooks/useIsBucketEmpty.js +4 -4
- package/dist/hooks/useLoginMutation.d.ts +1 -1
- package/dist/hooks/useLoginMutation.js +1 -1
- package/dist/hooks/useS3Client.d.ts +6 -0
- package/dist/hooks/useS3Client.js +3 -2
- package/dist/hooks/useS3ConfigSwitch.d.ts +11 -0
- package/dist/hooks/useS3ConfigSwitch.js +37 -0
- package/dist/hooks/useSupportedNotificationEvents.d.ts +6 -0
- package/dist/hooks/useSupportedNotificationEvents.js +8 -0
- package/dist/index.d.ts +6 -6
- package/dist/test/msw/handlers/deleteBucket.d.ts +1 -1
- package/dist/test/msw/handlers/deleteBucket.js +20 -10
- package/dist/test/msw/handlers/getBucketAcl.d.ts +1 -1
- package/dist/test/msw/handlers/getBucketAcl.js +29 -17
- package/dist/test/msw/handlers/getBucketLocation.d.ts +1 -1
- package/dist/test/msw/handlers/getBucketLocation.js +29 -15
- package/dist/test/msw/handlers/getBucketPolicy.d.ts +1 -1
- package/dist/test/msw/handlers/getBucketPolicy.js +52 -32
- package/dist/test/msw/handlers/headObject.d.ts +1 -1
- package/dist/test/msw/handlers/headObject.js +31 -13
- package/dist/test/msw/handlers/listBuckets.d.ts +1 -1
- package/dist/test/msw/handlers/listBuckets.js +5 -3
- package/dist/test/msw/handlers/listObjectVersions.d.ts +1 -1
- package/dist/test/msw/handlers/listObjectVersions.js +38 -26
- package/dist/test/msw/handlers/listObjects.d.ts +1 -1
- package/dist/test/msw/handlers/listObjects.js +35 -23
- package/dist/test/msw/handlers/objectLegalHold.d.ts +1 -1
- package/dist/test/msw/handlers/objectLegalHold.js +31 -16
- package/dist/test/msw/handlers/objectRetention.d.ts +1 -1
- package/dist/test/msw/handlers/objectRetention.js +31 -17
- package/dist/test/msw/handlers/putBucketAcl.d.ts +1 -1
- package/dist/test/msw/handlers/putBucketAcl.js +29 -14
- package/dist/test/msw/handlers/putObject.d.ts +1 -1
- package/dist/test/msw/handlers/putObject.js +27 -12
- package/dist/test/msw/handlers.d.ts +3 -3
- package/dist/test/msw/handlers.js +72 -49
- package/dist/test/msw/index.d.ts +2 -2
- package/dist/test/msw/server.d.ts +1 -1
- package/dist/test/msw/server.js +1 -1
- package/dist/test/msw/utils.js +2 -2
- package/dist/test/setup.d.ts +1 -1
- package/dist/test/setup.js +19 -19
- package/dist/test/testUtils.d.ts +9 -15
- package/dist/test/testUtils.js +73 -91
- package/dist/test/utils/errorHandling.test.js +119 -119
- package/dist/types/index.d.ts +6 -31
- package/dist/utils/__tests__/s3ConfigIdentifier.test.d.ts +1 -0
- package/dist/utils/__tests__/s3ConfigIdentifier.test.js +429 -0
- package/dist/utils/constants.js +8 -8
- package/dist/utils/deletion/index.d.ts +2 -2
- package/dist/utils/deletion/messages.d.ts +1 -1
- package/dist/utils/deletion/messages.js +4 -4
- package/dist/utils/errorHandling.d.ts +3 -3
- package/dist/utils/errorHandling.js +6 -6
- package/dist/utils/hooks.js +8 -8
- package/dist/utils/index.d.ts +5 -4
- package/dist/utils/index.js +2 -0
- package/dist/utils/proxyMiddleware.d.ts +1 -1
- package/dist/utils/proxyMiddleware.js +6 -11
- package/dist/utils/s3Client.d.ts +2 -2
- package/dist/utils/s3Client.js +1 -1
- package/dist/utils/s3ConfigIdentifier.d.ts +68 -0
- package/dist/utils/s3ConfigIdentifier.js +55 -0
- package/dist/utils/s3RuleUtils.d.ts +5 -5
- package/dist/utils/s3RuleUtils.js +17 -17
- package/package.json +2 -2
- package/dist/utils/useFeatures.d.ts +0 -1
- package/dist/utils/useFeatures.js +0 -7
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { LifecycleRule } from
|
|
1
|
+
import type { LifecycleRule } from '@aws-sdk/client-s3';
|
|
2
2
|
interface BucketLifecycleListProps {
|
|
3
3
|
bucketName: string;
|
|
4
4
|
lifecycleRules: LifecycleRule[];
|
|
5
|
-
lifecycleStatus?:
|
|
5
|
+
lifecycleStatus?: 'idle' | 'loading' | 'error' | 'success';
|
|
6
6
|
onCreateRule?: () => void;
|
|
7
7
|
onEditRule?: (ruleId: string) => void;
|
|
8
8
|
}
|
|
@@ -14,18 +14,18 @@ const formatActions = (rule)=>{
|
|
|
14
14
|
description: `Expire current versions of objects after ${pluralizeDays(rule.Expiration.Days)}`
|
|
15
15
|
});
|
|
16
16
|
else if (rule.Expiration.Date) actions.push({
|
|
17
|
-
text:
|
|
18
|
-
description:
|
|
17
|
+
text: 'Expire current',
|
|
18
|
+
description: 'Expire current versions of objects on date',
|
|
19
19
|
date: rule.Expiration.Date
|
|
20
20
|
});
|
|
21
21
|
else if (rule.Expiration.ExpiredObjectDeleteMarker) actions.push({
|
|
22
|
-
text:
|
|
23
|
-
description:
|
|
22
|
+
text: 'Delete expired markers',
|
|
23
|
+
description: 'Delete expired object delete markers'
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
26
|
if (rule.NoncurrentVersionExpiration?.NoncurrentDays) {
|
|
27
|
-
const keepText = rule.NoncurrentVersionExpiration.NewerNoncurrentVersions ? `, keep ${rule.NoncurrentVersionExpiration.NewerNoncurrentVersions}` :
|
|
28
|
-
const keepDescription = rule.NoncurrentVersionExpiration.NewerNoncurrentVersions ? `, keep ${rule.NoncurrentVersionExpiration.NewerNoncurrentVersions} newest versions` :
|
|
27
|
+
const keepText = rule.NoncurrentVersionExpiration.NewerNoncurrentVersions ? `, keep ${rule.NoncurrentVersionExpiration.NewerNoncurrentVersions}` : '';
|
|
28
|
+
const keepDescription = rule.NoncurrentVersionExpiration.NewerNoncurrentVersions ? `, keep ${rule.NoncurrentVersionExpiration.NewerNoncurrentVersions} newest versions` : '';
|
|
29
29
|
actions.push({
|
|
30
30
|
text: `Expire noncurrent (${pluralizeDays(rule.NoncurrentVersionExpiration.NoncurrentDays)}${keepText})`,
|
|
31
31
|
description: `Permanently delete noncurrent versions of objects after ${pluralizeDays(rule.NoncurrentVersionExpiration.NoncurrentDays)}${keepDescription}`
|
|
@@ -37,15 +37,15 @@ const formatActions = (rule)=>{
|
|
|
37
37
|
description: `Transition current versions of objects after ${pluralizeDays(transition.Days)}`
|
|
38
38
|
});
|
|
39
39
|
else if (transition.Date) actions.push({
|
|
40
|
-
text:
|
|
41
|
-
description:
|
|
40
|
+
text: 'Transition current',
|
|
41
|
+
description: 'Transition current versions of objects on date',
|
|
42
42
|
date: transition.Date
|
|
43
43
|
});
|
|
44
44
|
});
|
|
45
45
|
if (rule.NoncurrentVersionTransitions && rule.NoncurrentVersionTransitions.length > 0) rule.NoncurrentVersionTransitions.forEach((transition)=>{
|
|
46
46
|
if (transition.NoncurrentDays) {
|
|
47
|
-
const keepText = transition.NewerNoncurrentVersions ? `, keep ${transition.NewerNoncurrentVersions}` :
|
|
48
|
-
const keepDescription = transition.NewerNoncurrentVersions ? `, keep ${transition.NewerNoncurrentVersions} newest versions` :
|
|
47
|
+
const keepText = transition.NewerNoncurrentVersions ? `, keep ${transition.NewerNoncurrentVersions}` : '';
|
|
48
|
+
const keepDescription = transition.NewerNoncurrentVersions ? `, keep ${transition.NewerNoncurrentVersions} newest versions` : '';
|
|
49
49
|
actions.push({
|
|
50
50
|
text: `Transition noncurrent (${pluralizeDays(transition.NoncurrentDays)}${keepText})`,
|
|
51
51
|
description: `Transition noncurrent versions of objects after ${pluralizeDays(transition.NoncurrentDays)}${keepDescription}`
|
|
@@ -58,8 +58,8 @@ const formatActions = (rule)=>{
|
|
|
58
58
|
});
|
|
59
59
|
return actions.length > 0 ? actions : [
|
|
60
60
|
{
|
|
61
|
-
text:
|
|
62
|
-
description:
|
|
61
|
+
text: '-',
|
|
62
|
+
description: '-'
|
|
63
63
|
}
|
|
64
64
|
];
|
|
65
65
|
};
|
|
@@ -68,39 +68,39 @@ function BucketLifecycleList({ bucketName, lifecycleRules, lifecycleStatus, onCr
|
|
|
68
68
|
const deleteLifecycleMutation = useDeleteBucketLifecycle();
|
|
69
69
|
const columns = useMemo(()=>[
|
|
70
70
|
{
|
|
71
|
-
Header:
|
|
72
|
-
accessor:
|
|
73
|
-
id:
|
|
71
|
+
Header: 'Rule ID',
|
|
72
|
+
accessor: 'ID',
|
|
73
|
+
id: 'id',
|
|
74
74
|
Cell: ({ value })=>/*#__PURE__*/ jsx(ConstrainedText, {
|
|
75
|
-
text: value ||
|
|
75
|
+
text: value || '-',
|
|
76
76
|
lineClamp: 2
|
|
77
77
|
}),
|
|
78
78
|
cellStyle: {
|
|
79
|
-
flex:
|
|
80
|
-
width:
|
|
79
|
+
flex: '1',
|
|
80
|
+
width: 'unset'
|
|
81
81
|
}
|
|
82
82
|
},
|
|
83
83
|
{
|
|
84
|
-
Header:
|
|
85
|
-
accessor:
|
|
86
|
-
id:
|
|
84
|
+
Header: 'Status',
|
|
85
|
+
accessor: 'Status',
|
|
86
|
+
id: 'status',
|
|
87
87
|
Cell: ({ value })=>{
|
|
88
|
-
const statusText =
|
|
88
|
+
const statusText = 'Enabled' === value ? 'Active' : 'Disabled' === value ? 'Inactive' : value;
|
|
89
89
|
return /*#__PURE__*/ jsx("span", {
|
|
90
|
-
children: statusText ||
|
|
90
|
+
children: statusText || '-'
|
|
91
91
|
});
|
|
92
92
|
},
|
|
93
93
|
cellStyle: {
|
|
94
|
-
width:
|
|
95
|
-
flex:
|
|
94
|
+
width: 'unset',
|
|
95
|
+
flex: '0.5'
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
{
|
|
99
|
-
Header:
|
|
100
|
-
accessor:
|
|
101
|
-
id:
|
|
99
|
+
Header: 'Actions',
|
|
100
|
+
accessor: 'Actions',
|
|
101
|
+
id: 'actions',
|
|
102
102
|
Cell: ({ value })=>{
|
|
103
|
-
if (!value || 0 === value.length || 1 === value.length &&
|
|
103
|
+
if (!value || 0 === value.length || 1 === value.length && '-' === value[0].text) return /*#__PURE__*/ jsx("span", {
|
|
104
104
|
children: "-"
|
|
105
105
|
});
|
|
106
106
|
const firstAction = value[0];
|
|
@@ -112,7 +112,7 @@ function BucketLifecycleList({ bucketName, lifecycleRules, lifecycleStatus, onCr
|
|
|
112
112
|
" (",
|
|
113
113
|
/*#__PURE__*/ jsx(FormattedDateTime, {
|
|
114
114
|
format: "date",
|
|
115
|
-
value:
|
|
115
|
+
value: 'string' == typeof date ? new Date(date) : date
|
|
116
116
|
}),
|
|
117
117
|
")"
|
|
118
118
|
]
|
|
@@ -124,7 +124,7 @@ function BucketLifecycleList({ bucketName, lifecycleRules, lifecycleStatus, onCr
|
|
|
124
124
|
const multiActionTooltip = /*#__PURE__*/ jsx("ul", {
|
|
125
125
|
style: {
|
|
126
126
|
margin: 0,
|
|
127
|
-
paddingLeft:
|
|
127
|
+
paddingLeft: '1.5rem'
|
|
128
128
|
},
|
|
129
129
|
children: value.map((action, index)=>/*#__PURE__*/ jsx("li", {
|
|
130
130
|
children: renderDescription(action)
|
|
@@ -145,11 +145,11 @@ function BucketLifecycleList({ bucketName, lifecycleRules, lifecycleStatus, onCr
|
|
|
145
145
|
overlay: multiActionTooltip,
|
|
146
146
|
placement: "top",
|
|
147
147
|
overlayStyle: {
|
|
148
|
-
maxWidth:
|
|
148
|
+
maxWidth: '30rem'
|
|
149
149
|
},
|
|
150
150
|
children: /*#__PURE__*/ jsx("span", {
|
|
151
151
|
style: {
|
|
152
|
-
cursor:
|
|
152
|
+
cursor: 'help'
|
|
153
153
|
},
|
|
154
154
|
children: /*#__PURE__*/ jsx(Icon, {
|
|
155
155
|
name: "Info",
|
|
@@ -164,19 +164,19 @@ function BucketLifecycleList({ bucketName, lifecycleRules, lifecycleStatus, onCr
|
|
|
164
164
|
});
|
|
165
165
|
},
|
|
166
166
|
cellStyle: {
|
|
167
|
-
width:
|
|
168
|
-
flex:
|
|
167
|
+
width: 'unset',
|
|
168
|
+
flex: '1.5'
|
|
169
169
|
}
|
|
170
170
|
},
|
|
171
171
|
{
|
|
172
|
-
Header:
|
|
173
|
-
accessor:
|
|
174
|
-
id:
|
|
172
|
+
Header: '',
|
|
173
|
+
accessor: 'ID',
|
|
174
|
+
id: 'operations',
|
|
175
175
|
cellStyle: {
|
|
176
|
-
flex:
|
|
177
|
-
textAlign:
|
|
176
|
+
flex: '0.5',
|
|
177
|
+
textAlign: 'right',
|
|
178
178
|
paddingRight: spacing.r16,
|
|
179
|
-
width:
|
|
179
|
+
width: 'unset'
|
|
180
180
|
},
|
|
181
181
|
Cell: ({ value })=>/*#__PURE__*/ jsxs(Box, {
|
|
182
182
|
display: "flex",
|
|
@@ -195,7 +195,7 @@ function BucketLifecycleList({ bucketName, lifecycleRules, lifecycleStatus, onCr
|
|
|
195
195
|
},
|
|
196
196
|
"aria-label": "Edit rule",
|
|
197
197
|
tooltip: {
|
|
198
|
-
overlay:
|
|
198
|
+
overlay: 'Edit rule'
|
|
199
199
|
}
|
|
200
200
|
}),
|
|
201
201
|
/*#__PURE__*/ jsx(DeleteBucketConfigRuleButton, {
|
|
@@ -222,8 +222,8 @@ function BucketLifecycleList({ bucketName, lifecycleRules, lifecycleStatus, onCr
|
|
|
222
222
|
onEditRule
|
|
223
223
|
]);
|
|
224
224
|
const tableData = useMemo(()=>lifecycleRules.map((rule)=>({
|
|
225
|
-
ID: rule.ID ||
|
|
226
|
-
Status: rule.Status ||
|
|
225
|
+
ID: rule.ID || '-',
|
|
226
|
+
Status: rule.Status || 'Disabled',
|
|
227
227
|
Actions: formatActions(rule),
|
|
228
228
|
rule
|
|
229
229
|
})), [
|
|
@@ -237,8 +237,8 @@ function BucketLifecycleList({ bucketName, lifecycleRules, lifecycleStatus, onCr
|
|
|
237
237
|
defaultSortingKey: "id",
|
|
238
238
|
entityName: {
|
|
239
239
|
en: {
|
|
240
|
-
singular:
|
|
241
|
-
plural:
|
|
240
|
+
singular: 'lifecycle rule',
|
|
241
|
+
plural: 'lifecycle rules'
|
|
242
242
|
}
|
|
243
243
|
},
|
|
244
244
|
children: [
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Bucket } from
|
|
1
|
+
import type { Bucket } from '@aws-sdk/client-s3';
|
|
2
2
|
interface BucketListProps {
|
|
3
3
|
buckets: Bucket[];
|
|
4
|
-
bucketStatus?:
|
|
4
|
+
bucketStatus?: 'idle' | 'loading' | 'error' | 'success';
|
|
5
5
|
selectedBucketName?: string | null;
|
|
6
6
|
onBucketSelect?: (bucketName: string) => void;
|
|
7
7
|
onCreateBucket?: () => void;
|
|
@@ -4,12 +4,12 @@ import { ConstrainedText, FormattedDateTime, Icon, Link, Wrap, spacing } from "@
|
|
|
4
4
|
import { Box, Button, Table } from "@scality/core-ui/dist/next";
|
|
5
5
|
import { useDataBrowserUICustomization } from "../../contexts/DataBrowserUICustomizationContext.js";
|
|
6
6
|
import { BucketLocation } from "./BucketLocation.js";
|
|
7
|
-
const SEARCH_QUERY_PARAM =
|
|
8
|
-
const LOCATION_COLUMN_FLEX =
|
|
7
|
+
const SEARCH_QUERY_PARAM = 'search';
|
|
8
|
+
const LOCATION_COLUMN_FLEX = '1.2';
|
|
9
9
|
const createBucketNameColumn = (onNavigateToBucket)=>({
|
|
10
|
-
Header:
|
|
11
|
-
accessor:
|
|
12
|
-
id:
|
|
10
|
+
Header: 'Bucket Name',
|
|
11
|
+
accessor: 'Name',
|
|
12
|
+
id: 'name',
|
|
13
13
|
Cell: ({ value })=>{
|
|
14
14
|
if (!value) return /*#__PURE__*/ jsx("span", {
|
|
15
15
|
children: "-"
|
|
@@ -26,14 +26,14 @@ const createBucketNameColumn = (onNavigateToBucket)=>({
|
|
|
26
26
|
});
|
|
27
27
|
},
|
|
28
28
|
cellStyle: {
|
|
29
|
-
flex:
|
|
30
|
-
width:
|
|
29
|
+
flex: '1',
|
|
30
|
+
width: 'unset'
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
33
|
const createLocationColumn = ()=>({
|
|
34
|
-
Header:
|
|
35
|
-
accessor:
|
|
36
|
-
id:
|
|
34
|
+
Header: 'Storage Location',
|
|
35
|
+
accessor: 'Name',
|
|
36
|
+
id: 'location',
|
|
37
37
|
Cell: ({ value })=>{
|
|
38
38
|
if (!value) return /*#__PURE__*/ jsx("span", {
|
|
39
39
|
children: "-"
|
|
@@ -43,19 +43,19 @@ const createLocationColumn = ()=>({
|
|
|
43
43
|
});
|
|
44
44
|
},
|
|
45
45
|
cellStyle: {
|
|
46
|
-
width:
|
|
46
|
+
width: 'unset',
|
|
47
47
|
flex: LOCATION_COLUMN_FLEX
|
|
48
48
|
}
|
|
49
49
|
});
|
|
50
50
|
const createDateColumn = ()=>({
|
|
51
|
-
Header:
|
|
52
|
-
accessor:
|
|
53
|
-
id:
|
|
51
|
+
Header: 'Created on',
|
|
52
|
+
accessor: 'CreationDate',
|
|
53
|
+
id: 'date',
|
|
54
54
|
cellStyle: {
|
|
55
|
-
flex:
|
|
56
|
-
textAlign:
|
|
55
|
+
flex: '1',
|
|
56
|
+
textAlign: 'right',
|
|
57
57
|
paddingRight: spacing.r16,
|
|
58
|
-
width:
|
|
58
|
+
width: 'unset'
|
|
59
59
|
},
|
|
60
60
|
Cell: ({ value })=>{
|
|
61
61
|
if (!value) return /*#__PURE__*/ jsx("span", {
|
|
@@ -77,8 +77,9 @@ const buildCustomColumn = (columnConfig)=>({
|
|
|
77
77
|
});
|
|
78
78
|
},
|
|
79
79
|
cellStyle: {
|
|
80
|
-
width: columnConfig.width ??
|
|
81
|
-
flex: columnConfig.width ? void 0 :
|
|
80
|
+
width: columnConfig.width ?? 'unset',
|
|
81
|
+
flex: columnConfig.width ? void 0 : '1',
|
|
82
|
+
...columnConfig.cellStyle
|
|
82
83
|
}
|
|
83
84
|
});
|
|
84
85
|
function createOverrideMap(customItems) {
|
|
@@ -100,10 +101,10 @@ function BucketList({ buckets, bucketStatus, selectedBucketName, onBucketSelect,
|
|
|
100
101
|
const getColumn = (id)=>customColumnsMap.get(id) || defaultColumnsMap[id];
|
|
101
102
|
const extraColumns = customColumns.filter((col)=>col.id && !(col.id in defaultColumnsMap));
|
|
102
103
|
return [
|
|
103
|
-
getColumn(
|
|
104
|
-
getColumn(
|
|
104
|
+
getColumn('name'),
|
|
105
|
+
getColumn('location'),
|
|
105
106
|
...extraColumns,
|
|
106
|
-
getColumn(
|
|
107
|
+
getColumn('date')
|
|
107
108
|
];
|
|
108
109
|
}, [
|
|
109
110
|
onNavigateToBucket,
|
|
@@ -120,7 +121,7 @@ function BucketList({ buckets, bucketStatus, selectedBucketName, onBucketSelect,
|
|
|
120
121
|
const actions = useMemo(()=>{
|
|
121
122
|
const defaultActionsMap = {
|
|
122
123
|
createBucket: {
|
|
123
|
-
id:
|
|
124
|
+
id: 'createBucket',
|
|
124
125
|
render: ()=>/*#__PURE__*/ jsx(Button, {
|
|
125
126
|
icon: /*#__PURE__*/ jsx(Icon, {
|
|
126
127
|
name: "Create-add"
|
|
@@ -140,7 +141,7 @@ function BucketList({ buckets, bucketStatus, selectedBucketName, onBucketSelect,
|
|
|
140
141
|
const getAction = (id)=>customActionsMap.get(id) || defaultActionsMap[id];
|
|
141
142
|
const extraActions = customActions.filter((action)=>!(action.id in defaultActionsMap));
|
|
142
143
|
return [
|
|
143
|
-
getAction(
|
|
144
|
+
getAction('createBucket'),
|
|
144
145
|
...extraActions
|
|
145
146
|
];
|
|
146
147
|
}, [
|
|
@@ -161,8 +162,8 @@ function BucketList({ buckets, bucketStatus, selectedBucketName, onBucketSelect,
|
|
|
161
162
|
defaultSortingKey: "CreationDate",
|
|
162
163
|
entityName: {
|
|
163
164
|
en: {
|
|
164
|
-
singular:
|
|
165
|
-
plural:
|
|
165
|
+
singular: 'bucket',
|
|
166
|
+
plural: 'buckets'
|
|
166
167
|
}
|
|
167
168
|
},
|
|
168
169
|
children: [
|
|
@@ -197,5 +198,5 @@ function BucketList({ buckets, bucketStatus, selectedBucketName, onBucketSelect,
|
|
|
197
198
|
]
|
|
198
199
|
});
|
|
199
200
|
}
|
|
200
|
-
BucketList.displayName =
|
|
201
|
+
BucketList.displayName = 'BucketList';
|
|
201
202
|
export { BucketList };
|
|
@@ -5,12 +5,12 @@ const BucketLocation = ({ bucketName })=>{
|
|
|
5
5
|
const { data: bucketLocation, status } = useGetBucketLocation({
|
|
6
6
|
Bucket: bucketName
|
|
7
7
|
});
|
|
8
|
-
if (
|
|
9
|
-
if (
|
|
8
|
+
if ('pending' === status) return /*#__PURE__*/ jsx(Loader, {});
|
|
9
|
+
if ('error' === status) return /*#__PURE__*/ jsx("div", {
|
|
10
10
|
children: "Error"
|
|
11
11
|
});
|
|
12
12
|
return /*#__PURE__*/ jsx("div", {
|
|
13
|
-
children: bucketLocation?.LocationConstraint ||
|
|
13
|
+
children: bucketLocation?.LocationConstraint || 'us-east-1'
|
|
14
14
|
});
|
|
15
15
|
};
|
|
16
16
|
export { BucketLocation };
|