@plone/volto 17.0.0-alpha.26 → 17.0.0-alpha.28
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/.eslintrc +26 -3
- package/.yarn/install-state.gz +0 -0
- package/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs +541 -0
- package/.yarn/releases/yarn-3.6.3.cjs +874 -0
- package/CHANGELOG.md +60 -0
- package/addon-registry.js +10 -1
- package/create-addons-loader.js +1 -1
- package/locales/ca/LC_MESSAGES/volto.po +57 -31
- package/locales/ca.json +1 -1
- package/locales/de/LC_MESSAGES/volto.po +58 -32
- package/locales/de.json +1 -1
- package/locales/en/LC_MESSAGES/volto.po +57 -31
- package/locales/en.json +1 -1
- package/locales/es/LC_MESSAGES/volto.po +65 -39
- package/locales/es.json +1 -1
- package/locales/eu/LC_MESSAGES/volto.po +57 -31
- package/locales/eu.json +1 -1
- package/locales/fi/LC_MESSAGES/volto.po +57 -31
- package/locales/fi.json +1 -1
- package/locales/fr/LC_MESSAGES/volto.po +57 -31
- package/locales/fr.json +1 -1
- package/locales/it/LC_MESSAGES/volto.po +57 -31
- package/locales/it.json +1 -1
- package/locales/ja/LC_MESSAGES/volto.po +57 -31
- package/locales/ja.json +1 -1
- package/locales/nl/LC_MESSAGES/volto.po +57 -31
- package/locales/nl.json +1 -1
- package/locales/pt/LC_MESSAGES/volto.po +57 -31
- package/locales/pt.json +1 -1
- package/locales/pt_BR/LC_MESSAGES/volto.po +57 -31
- package/locales/pt_BR.json +1 -1
- package/locales/ro/LC_MESSAGES/volto.po +57 -31
- package/locales/ro.json +1 -1
- package/locales/volto.pot +62 -32
- package/locales/zh_CN/LC_MESSAGES/volto.po +57 -31
- package/locales/zh_CN.json +1 -1
- package/package.json +35 -26
- package/packages/volto-slate/package.json +1 -1
- package/packages/volto-slate/src/blocks/Text/TextBlockView.jsx +2 -1
- package/packages/volto-slate/src/blocks/Text/index.js +0 -5
- package/packages/volto-slate/src/editor/plugins/Link/render.jsx +5 -6
- package/packages/volto-slate/src/editor/render.jsx +11 -1
- package/razzle.config.js +4 -6
- package/src/components/index.js +194 -194
- package/src/components/manage/Add/Add.jsx +7 -8
- package/src/components/manage/Blocks/Block/Settings.test.jsx +17 -15
- package/src/components/manage/Blocks/HTML/Edit.jsx +8 -8
- package/src/components/manage/Blocks/HeroImageLeft/Edit.jsx +30 -25
- package/src/components/manage/Blocks/Listing/ListingBody.jsx +6 -4
- package/src/components/manage/Blocks/Maps/Edit.test.jsx +1 -2
- package/src/components/manage/Blocks/Maps/View.test.jsx +1 -2
- package/src/components/manage/Blocks/Search/components/Facets.jsx +2 -3
- package/src/components/manage/Blocks/Search/components/FilterList.jsx +4 -6
- package/src/components/manage/Blocks/Search/components/SelectFacet.jsx +2 -9
- package/src/components/manage/Blocks/Search/hocs/withQueryString.jsx +3 -0
- package/src/components/manage/Blocks/Search/hocs/withSearch.jsx +8 -6
- package/src/components/manage/Blocks/Search/schema.js +13 -13
- package/src/components/manage/Blocks/Table/Cell.jsx +2 -3
- package/src/components/manage/Blocks/Text/Edit.jsx +2 -3
- package/src/components/manage/Blocks/Title/View.jsx +4 -37
- package/src/components/manage/Blocks/ToC/View.jsx +1 -0
- package/src/components/manage/Blocks/ToC/variations/DefaultTocRenderer.jsx +3 -2
- package/src/components/manage/Blocks/ToC/variations/HorizontalMenu.jsx +3 -2
- package/src/components/manage/Contents/Contents.jsx +252 -114
- package/src/components/manage/Contents/ContentsPropertiesModal.jsx +90 -154
- package/src/components/manage/Contents/ContentsRenameModal.jsx +88 -139
- package/src/components/manage/Contents/ContentsRenameModal.stories.jsx +61 -0
- package/src/components/manage/Contents/ContentsTagsModal.jsx +83 -130
- package/src/components/manage/Contents/ContentsTagsModal.stories.jsx +68 -0
- package/src/components/manage/Contents/ContentsUploadModal.jsx +1 -2
- package/src/components/manage/Contents/ContentsWorkflowModal.jsx +87 -154
- package/src/components/manage/Controlpanels/Aliases.jsx +4 -12
- package/src/components/manage/Controlpanels/Rules/AddRule.jsx +2 -9
- package/src/components/manage/Controlpanels/UndoControlpanel.jsx +6 -9
- package/src/components/manage/Form/BlockDataForm.test.jsx +17 -15
- package/src/components/manage/Form/Form.jsx +2 -3
- package/src/components/manage/Form/InlineForm.test.jsx +16 -14
- package/src/components/manage/LockingToastsFactory/LockingToastsFactory.jsx +1 -2
- package/src/components/manage/Sharing/Sharing.jsx +7 -0
- package/src/components/manage/Sidebar/Sidebar.jsx +139 -220
- package/src/components/manage/Toolbar/More.jsx +12 -12
- package/src/components/manage/Toolbar/PersonalTools.jsx +97 -155
- package/src/components/manage/Toolbar/Toolbar.jsx +2 -2
- package/src/components/manage/UniversalLink/UniversalLink.test.jsx +2 -1
- package/src/components/manage/Widgets/AlignWidget.jsx +2 -4
- package/src/components/manage/Widgets/ColorPickerWidget.test.jsx +9 -7
- package/src/components/manage/Widgets/DatetimeWidget.jsx +2 -8
- package/src/components/manage/Widgets/IdWidget.jsx +1 -2
- package/src/components/manage/Widgets/ObjectBrowserWidget.jsx +2 -9
- package/src/components/manage/Widgets/RecurrenceWidget/RecurrenceWidget.jsx +2 -9
- package/src/components/manage/Widgets/RecurrenceWidget/WeekdayOfTheMonthIndexField.jsx +4 -4
- package/src/components/manage/Widgets/SchemaWidget.jsx +6 -9
- package/src/components/manage/Widgets/WysiwygWidget.jsx +2 -9
- package/src/components/theme/Comments/Comments.jsx +3 -10
- package/src/components/theme/ContentMetadataTags/ContentMetadataTags.jsx +4 -0
- package/src/components/theme/Login/Login.jsx +1 -2
- package/src/components/theme/PasswordReset/PasswordReset.jsx +1 -2
- package/src/components/theme/PreviewImage/PreviewImage.jsx +10 -5
- package/src/components/theme/PreviewImage/PreviewImage.test.js +17 -0
- package/src/components/theme/Register/Register.jsx +2 -4
- package/src/components/theme/TsTest/TsTest.test.tsx +11 -0
- package/src/components/theme/TsTest/TsTest.tsx +15 -0
- package/src/components/theme/View/AlbumView.jsx +3 -2
- package/src/components/theme/Widgets/ImageWidget.stories.jsx +1 -2
- package/src/config/Loadables.jsx +1 -1
- package/src/config/RichTextEditor/Blocks.jsx +2 -3
- package/src/config/RichTextEditor/Plugins.jsx +2 -3
- package/src/config/RichTextEditor/ToHTML.jsx +12 -10
- package/src/config/RichTextEditor/index.js +2 -3
- package/src/config/Views.jsx +5 -5
- package/src/express-middleware/ok.js +1 -1
- package/src/helpers/Blocks/Blocks.js +4 -6
- package/src/helpers/Blocks/Blocks.test.js +35 -35
- package/src/helpers/Extensions/withBlockSchemaEnhancer.js +48 -50
- package/src/helpers/FormValidation/FormValidation.js +7 -6
- package/src/helpers/Html/Html.jsx +2 -8
- package/src/helpers/Loadable/__mocks__/Loadable.js +18 -18
- package/src/helpers/MessageLabels/MessageLabels.js +2 -3
- package/src/helpers/Utils/UseDetectClickOutside.stories.jsx +2 -3
- package/src/helpers/Utils/Utils.js +10 -0
- package/src/helpers/Utils/Utils.test.js +13 -0
- package/src/helpers/index.js +1 -0
- package/src/hooks/index.js +1 -1
- package/src/middleware/api.js +194 -190
- package/src/middleware/blacklistRoutes.js +25 -22
- package/src/middleware/storeProtectLoadUtils.js +61 -62
- package/src/middleware/storeProtectLoadUtils.test.js +47 -43
- package/src/reducers/content/content.test.js +4 -4
- package/src/reducers/navigation/navigation.js +5 -5
- package/src/reducers/navigation/navigation.test.js +30 -0
- package/src/registry.js +2 -2
- package/src/storybook.jsx +24 -38
- package/theme/themes/pastanaga/collections/menu.overrides +3 -2
- package/theme/themes/pastanaga/elements/container.overrides +5 -2
- package/theme/themes/pastanaga/elements/input.overrides +1 -1
- package/theme/themes/pastanaga/elements/step.overrides +2 -1
- package/theme/themes/pastanaga/extras/blocks.less +20 -14
- package/theme/themes/pastanaga/extras/color-picker-widget.less +1 -1
- package/theme/themes/pastanaga/extras/contents.less +5 -1
- package/theme/themes/pastanaga/extras/draftjs.less +4 -4
- package/theme/themes/pastanaga/extras/grid.less +5 -4
- package/theme/themes/pastanaga/extras/main.less +6 -6
- package/theme/themes/pastanaga/extras/react-dates-overrides.less +4 -2
- package/theme/themes/pastanaga/extras/search.less +2 -2
- package/theme/themes/pastanaga/extras/sidebar.less +5 -4
- package/theme/themes/pastanaga/extras/time-picker-overrides.less +5 -3
- package/theme/themes/pastanaga/extras/toolbar.less +6 -2
- package/theme/themes/pastanaga/extras/userscontrolpanel.less +17 -9
- package/theme/themes/pastanaga/extras/widgets.less +1 -1
- package/theme/themes/pastanaga/modules/rating.overrides +2 -1
- package/theme/themes/pastanaga-cms-ui/elements/container.overrides +2 -1
- package/theme/themes/pastanaga-cms-ui/extras/cms-ui.elements.container.less +6 -2
- package/theme/themes/pastanaga-cms-ui/extras/cms-ui.site.less +2 -2
- package/tsconfig.json +33 -0
|
@@ -35,6 +35,7 @@ import {
|
|
|
35
35
|
import move from 'lodash-move';
|
|
36
36
|
import { FormattedMessage, defineMessages, injectIntl } from 'react-intl';
|
|
37
37
|
import { asyncConnect } from '@plone/volto/helpers';
|
|
38
|
+
import { flattenToAppURL } from '@plone/volto/helpers';
|
|
38
39
|
|
|
39
40
|
import {
|
|
40
41
|
searchContent,
|
|
@@ -118,9 +119,13 @@ const messages = defineMessages({
|
|
|
118
119
|
id: 'Delete',
|
|
119
120
|
defaultMessage: 'Delete',
|
|
120
121
|
},
|
|
121
|
-
|
|
122
|
-
id: '
|
|
123
|
-
defaultMessage: '
|
|
122
|
+
deleteConfirmSingleItem: {
|
|
123
|
+
id: 'Delete this item?',
|
|
124
|
+
defaultMessage: 'Delete this item?',
|
|
125
|
+
},
|
|
126
|
+
deleteConfirmMultipleItems: {
|
|
127
|
+
id: 'Delete selected items?',
|
|
128
|
+
defaultMessage: 'Delete selected items?',
|
|
124
129
|
},
|
|
125
130
|
deleteError: {
|
|
126
131
|
id: 'The item could not be deleted.',
|
|
@@ -270,35 +275,6 @@ const messages = defineMessages({
|
|
|
270
275
|
id: 'All',
|
|
271
276
|
defaultMessage: 'All',
|
|
272
277
|
},
|
|
273
|
-
linkIntegrityMessageHeader: {
|
|
274
|
-
id: 'Potential link breakage',
|
|
275
|
-
defaultMessage: 'Potential link breakage',
|
|
276
|
-
},
|
|
277
|
-
linkIntegrityMessageBody: {
|
|
278
|
-
id:
|
|
279
|
-
'By deleting this item, you will break ' +
|
|
280
|
-
'links that exist in the items listed below. ' +
|
|
281
|
-
'If this is indeed what you want to do, ' +
|
|
282
|
-
'we recommend that remove these references first.',
|
|
283
|
-
defaultMessage:
|
|
284
|
-
'By deleting this item, ' +
|
|
285
|
-
'you will break links that exist in the items ' +
|
|
286
|
-
'listed below. If this is indeed what you ' +
|
|
287
|
-
'want to do, we recommend that remove ' +
|
|
288
|
-
'these references first.',
|
|
289
|
-
},
|
|
290
|
-
linkIntegrityMessageExtra: {
|
|
291
|
-
id: 'This Page is referenced by the following items:',
|
|
292
|
-
defaultMessage: 'This Page is referenced by the following items:',
|
|
293
|
-
},
|
|
294
|
-
deleteItemCountMessage: {
|
|
295
|
-
id: 'Total items to be deleted:',
|
|
296
|
-
defaultMessage: 'Total items to be deleted:',
|
|
297
|
-
},
|
|
298
|
-
deleteItemMessage: {
|
|
299
|
-
id: 'Items to be deleted:',
|
|
300
|
-
defaultMessage: 'Items to be deleted:',
|
|
301
|
-
},
|
|
302
278
|
});
|
|
303
279
|
|
|
304
280
|
/**
|
|
@@ -434,6 +410,8 @@ class Contents extends Component {
|
|
|
434
410
|
showProperties: false,
|
|
435
411
|
showWorkflow: false,
|
|
436
412
|
itemsToDelete: [],
|
|
413
|
+
containedItemsToDelete: [],
|
|
414
|
+
brokenReferences: [],
|
|
437
415
|
showAllItemsToDelete: true,
|
|
438
416
|
items: this.props.items,
|
|
439
417
|
filter: '',
|
|
@@ -469,12 +447,23 @@ class Contents extends Component {
|
|
|
469
447
|
this.state.itemsToDelete !== prevState.itemsToDelete &&
|
|
470
448
|
this.state.itemsToDelete.length > 0
|
|
471
449
|
) {
|
|
450
|
+
const linkintegrityInfo = await this.props.linkIntegrityCheck(
|
|
451
|
+
map(this.state.itemsToDelete, (item) => this.getFieldById(item, 'UID')),
|
|
452
|
+
);
|
|
453
|
+
let containedItems = 0;
|
|
454
|
+
let brokenReferencesCount = 0;
|
|
455
|
+
|
|
456
|
+
linkintegrityInfo.forEach((item) => {
|
|
457
|
+
containedItems += item.items_total ?? 0;
|
|
458
|
+
brokenReferencesCount += item.breaches.length;
|
|
459
|
+
});
|
|
472
460
|
this.setState({
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
461
|
+
containedItemsToDelete: containedItems,
|
|
462
|
+
brokenReferences: brokenReferencesCount,
|
|
463
|
+
brokenLinksList:
|
|
464
|
+
linkintegrityInfo.length === 1
|
|
465
|
+
? linkintegrityInfo[0]['@id'] + '/links-to-item'
|
|
466
|
+
: null,
|
|
478
467
|
showAllItemsToDelete:
|
|
479
468
|
this.state.itemsToDelete.length < this.deleteItemsToShowThreshold,
|
|
480
469
|
});
|
|
@@ -1200,84 +1189,234 @@ class Contents extends Component {
|
|
|
1200
1189
|
<Confirm
|
|
1201
1190
|
open={this.state.showDelete}
|
|
1202
1191
|
confirmButton="Delete"
|
|
1203
|
-
header={
|
|
1204
|
-
|
|
1205
|
-
|
|
1192
|
+
header={
|
|
1193
|
+
this.state.itemsToDelete.length === 1
|
|
1194
|
+
? this.props.intl.formatMessage(
|
|
1195
|
+
messages.deleteConfirmSingleItem,
|
|
1196
|
+
)
|
|
1197
|
+
: this.props.intl.formatMessage(
|
|
1198
|
+
messages.deleteConfirmMultipleItems,
|
|
1199
|
+
)
|
|
1200
|
+
}
|
|
1206
1201
|
content={
|
|
1207
1202
|
<div className="content">
|
|
1208
|
-
<
|
|
1209
|
-
{this.
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1203
|
+
<p>
|
|
1204
|
+
{this.state.itemsToDelete.length > 1 ? (
|
|
1205
|
+
this.state.containedItemsToDelete > 0 ? (
|
|
1206
|
+
<>
|
|
1207
|
+
<FormattedMessage
|
|
1208
|
+
id="Some items are also a folder.
|
|
1209
|
+
By deleting them you will delete {containedItemsToDelete} {variation} inside the folders."
|
|
1210
|
+
defaultMessage="Some items are also a folder.
|
|
1211
|
+
By deleting them you will delete {containedItemsToDelete} {variation} inside the folders."
|
|
1212
|
+
values={{
|
|
1213
|
+
containedItemsToDelete: (
|
|
1214
|
+
<span>
|
|
1215
|
+
{this.state.containedItemsToDelete}
|
|
1216
|
+
</span>
|
|
1217
|
+
),
|
|
1218
|
+
variation: (
|
|
1219
|
+
<span>
|
|
1220
|
+
{this.state.containedItemsToDelete ===
|
|
1221
|
+
1 ? (
|
|
1222
|
+
<FormattedMessage
|
|
1223
|
+
id="item"
|
|
1224
|
+
defaultMessage="item"
|
|
1225
|
+
/>
|
|
1226
|
+
) : (
|
|
1227
|
+
<FormattedMessage
|
|
1228
|
+
id="items"
|
|
1229
|
+
defaultMessage="items"
|
|
1230
|
+
/>
|
|
1231
|
+
)}
|
|
1232
|
+
</span>
|
|
1233
|
+
),
|
|
1234
|
+
}}
|
|
1235
|
+
/>
|
|
1236
|
+
{this.state.brokenReferences > 0 && (
|
|
1237
|
+
<>
|
|
1238
|
+
<br />
|
|
1239
|
+
<FormattedMessage
|
|
1240
|
+
id="Some items are referenced by other contents. By deleting them {brokenReferences} {variation} will be broken."
|
|
1241
|
+
defaultMessage="Some items are referenced by other contents. By deleting them {brokenReferences} {variation} will be broken."
|
|
1242
|
+
values={{
|
|
1243
|
+
brokenReferences: (
|
|
1244
|
+
<span>
|
|
1245
|
+
{this.state.brokenReferences}
|
|
1246
|
+
</span>
|
|
1247
|
+
),
|
|
1248
|
+
variation: (
|
|
1249
|
+
<span>
|
|
1250
|
+
{this.state.brokenReferences ===
|
|
1251
|
+
1 ? (
|
|
1252
|
+
<FormattedMessage
|
|
1253
|
+
id="reference"
|
|
1254
|
+
defaultMessage="reference"
|
|
1255
|
+
/>
|
|
1256
|
+
) : (
|
|
1257
|
+
<FormattedMessage
|
|
1258
|
+
id="references"
|
|
1259
|
+
defaultMessage="references"
|
|
1260
|
+
/>
|
|
1261
|
+
)}
|
|
1262
|
+
</span>
|
|
1263
|
+
),
|
|
1264
|
+
}}
|
|
1265
|
+
/>
|
|
1266
|
+
</>
|
|
1267
|
+
)}
|
|
1268
|
+
</>
|
|
1269
|
+
) : (
|
|
1270
|
+
<>
|
|
1271
|
+
{this.state.brokenReferences > 0 && (
|
|
1272
|
+
<>
|
|
1273
|
+
<FormattedMessage
|
|
1274
|
+
id="Some items are referenced by other contents. By deleting them {brokenReferences} {variation} will be broken."
|
|
1275
|
+
defaultMessage="Some items are referenced by other contents. By deleting them {brokenReferences} {variation} will be broken."
|
|
1276
|
+
values={{
|
|
1277
|
+
brokenReferences: (
|
|
1278
|
+
<span>
|
|
1279
|
+
{this.state.brokenReferences}
|
|
1280
|
+
</span>
|
|
1281
|
+
),
|
|
1282
|
+
variation: (
|
|
1283
|
+
<span>
|
|
1284
|
+
{this.state.brokenReferences ===
|
|
1285
|
+
1 ? (
|
|
1286
|
+
<FormattedMessage
|
|
1287
|
+
id="reference"
|
|
1288
|
+
defaultMessage="reference"
|
|
1289
|
+
/>
|
|
1290
|
+
) : (
|
|
1291
|
+
<FormattedMessage
|
|
1292
|
+
id="references"
|
|
1293
|
+
defaultMessage="references"
|
|
1294
|
+
/>
|
|
1295
|
+
)}
|
|
1296
|
+
</span>
|
|
1297
|
+
),
|
|
1298
|
+
}}
|
|
1299
|
+
/>
|
|
1300
|
+
</>
|
|
1301
|
+
)}
|
|
1302
|
+
</>
|
|
1303
|
+
)
|
|
1304
|
+
) : this.state.containedItemsToDelete > 0 ? (
|
|
1305
|
+
<>
|
|
1306
|
+
<FormattedMessage
|
|
1307
|
+
id="This item is also a folder.
|
|
1308
|
+
By deleting it you will delete {containedItemsToDelete} {variation} inside the folder."
|
|
1309
|
+
defaultMessage="This item is also a folder.
|
|
1310
|
+
By deleting it you will delete {containedItemsToDelete} {variation} inside the folder."
|
|
1311
|
+
values={{
|
|
1312
|
+
containedItemsToDelete: (
|
|
1313
|
+
<span>
|
|
1314
|
+
{this.state.containedItemsToDelete}
|
|
1315
|
+
</span>
|
|
1316
|
+
),
|
|
1317
|
+
variation: (
|
|
1318
|
+
<span>
|
|
1319
|
+
{this.state.containedItemsToDelete ===
|
|
1320
|
+
1 ? (
|
|
1321
|
+
<FormattedMessage
|
|
1322
|
+
id="item"
|
|
1323
|
+
defaultMessage="item"
|
|
1324
|
+
/>
|
|
1325
|
+
) : (
|
|
1326
|
+
<FormattedMessage
|
|
1327
|
+
id="items"
|
|
1328
|
+
defaultMessage="items"
|
|
1329
|
+
/>
|
|
1262
1330
|
)}
|
|
1263
|
-
</
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1331
|
+
</span>
|
|
1332
|
+
),
|
|
1333
|
+
}}
|
|
1334
|
+
/>
|
|
1335
|
+
{this.state.brokenReferences > 0 && (
|
|
1336
|
+
<>
|
|
1337
|
+
<br />
|
|
1338
|
+
<FormattedMessage
|
|
1339
|
+
id="This item is referenced by other items. By deleting it {brokenReferences} {variation} will be broken."
|
|
1340
|
+
defaultMessage="This item is referenced by other items. By deleting it {brokenReferences} {variation} will be broken."
|
|
1341
|
+
values={{
|
|
1342
|
+
brokenReferences: (
|
|
1343
|
+
<span>
|
|
1344
|
+
{this.state.brokenReferences}
|
|
1345
|
+
</span>
|
|
1346
|
+
),
|
|
1347
|
+
variation: (
|
|
1348
|
+
<span>
|
|
1349
|
+
{this.state.brokenReferences === 1 ? (
|
|
1350
|
+
<FormattedMessage
|
|
1351
|
+
id="reference"
|
|
1352
|
+
defaultMessage="reference"
|
|
1353
|
+
/>
|
|
1354
|
+
) : (
|
|
1355
|
+
<FormattedMessage
|
|
1356
|
+
id="references"
|
|
1357
|
+
defaultMessage="references"
|
|
1358
|
+
/>
|
|
1359
|
+
)}
|
|
1360
|
+
</span>
|
|
1361
|
+
),
|
|
1362
|
+
}}
|
|
1363
|
+
/>
|
|
1364
|
+
<div className="broken-links-list-link-wrapper">
|
|
1365
|
+
<Link
|
|
1366
|
+
to={flattenToAppURL(
|
|
1367
|
+
this.state.brokenLinksList,
|
|
1368
|
+
)}
|
|
1369
|
+
>
|
|
1370
|
+
<FormattedMessage
|
|
1371
|
+
id="View broken links list"
|
|
1372
|
+
defaultMessage="View broken links list"
|
|
1373
|
+
/>
|
|
1374
|
+
</Link>
|
|
1375
|
+
</div>
|
|
1376
|
+
</>
|
|
1275
1377
|
)}
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1378
|
+
</>
|
|
1379
|
+
) : this.state.brokenReferences > 0 ? (
|
|
1380
|
+
<>
|
|
1381
|
+
<FormattedMessage
|
|
1382
|
+
id="This item is referenced by other items. By deleting it {brokenReferences} {variation} will be broken."
|
|
1383
|
+
defaultMessage="This item is referenced by other items. By deleting it {brokenReferences} {variation} will be broken."
|
|
1384
|
+
values={{
|
|
1385
|
+
brokenReferences: (
|
|
1386
|
+
<span>{this.state.brokenReferences}</span>
|
|
1387
|
+
),
|
|
1388
|
+
variation: (
|
|
1389
|
+
<span>
|
|
1390
|
+
{this.state.brokenReferences === 1 ? (
|
|
1391
|
+
<FormattedMessage
|
|
1392
|
+
id="reference"
|
|
1393
|
+
defaultMessage="reference"
|
|
1394
|
+
/>
|
|
1395
|
+
) : (
|
|
1396
|
+
<FormattedMessage
|
|
1397
|
+
id="references"
|
|
1398
|
+
defaultMessage="references"
|
|
1399
|
+
/>
|
|
1400
|
+
)}
|
|
1401
|
+
</span>
|
|
1402
|
+
),
|
|
1403
|
+
}}
|
|
1404
|
+
/>
|
|
1405
|
+
<div className="broken-links-list-link-wrapper">
|
|
1406
|
+
<Link
|
|
1407
|
+
to={flattenToAppURL(
|
|
1408
|
+
this.state.brokenLinksList,
|
|
1409
|
+
)}
|
|
1410
|
+
>
|
|
1411
|
+
<FormattedMessage
|
|
1412
|
+
id="View broken links list"
|
|
1413
|
+
defaultMessage="View broken links list"
|
|
1414
|
+
/>
|
|
1415
|
+
</Link>
|
|
1416
|
+
</div>
|
|
1417
|
+
</>
|
|
1418
|
+
) : null}
|
|
1419
|
+
</p>
|
|
1281
1420
|
</div>
|
|
1282
1421
|
}
|
|
1283
1422
|
onCancel={this.onDeleteCancel}
|
|
@@ -1656,9 +1795,8 @@ class Contents extends Component {
|
|
|
1656
1795
|
{this.props.intl.formatMessage({
|
|
1657
1796
|
id: this.state.index.values[index]
|
|
1658
1797
|
.label,
|
|
1659
|
-
defaultMessage:
|
|
1660
|
-
index
|
|
1661
|
-
].label,
|
|
1798
|
+
defaultMessage:
|
|
1799
|
+
this.state.index.values[index].label,
|
|
1662
1800
|
})}
|
|
1663
1801
|
</span>
|
|
1664
1802
|
</Dropdown.Item>
|