@comet/cms-admin 9.0.0-beta.3 → 9.0.0-beta.4

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 (178) hide show
  1. package/lib/blocks/PixelImageBlock.d.ts.map +1 -1
  2. package/lib/blocks/PixelImageBlock.fragment.d.ts +2 -0
  3. package/lib/blocks/PixelImageBlock.fragment.d.ts.map +1 -0
  4. package/lib/blocks/PixelImageBlock.fragment.generated.d.ts +20 -0
  5. package/lib/blocks/PixelImageBlock.fragment.generated.d.ts.map +1 -0
  6. package/lib/blocks/PixelImageBlock.fragment.generated.js +5 -0
  7. package/lib/blocks/PixelImageBlock.fragment.js +4 -0
  8. package/lib/blocks/PixelImageBlock.js +3 -2
  9. package/lib/blocks/__stories__/RichTextBlock.stories.js +53 -0
  10. package/lib/blocks/createLinkBlock.d.ts.map +1 -1
  11. package/lib/blocks/createLinkBlock.js +50 -1
  12. package/lib/blocks/createRichTextBlock.d.ts.map +1 -1
  13. package/lib/blocks/createRichTextBlock.js +56 -20
  14. package/lib/blocks/createSeoBlock.d.ts.map +1 -1
  15. package/lib/blocks/createSeoBlock.js +6 -4
  16. package/lib/blocks/createTextLinkBlock.d.ts.map +1 -1
  17. package/lib/blocks/createTextLinkBlock.js +36 -1
  18. package/lib/blocks/factories/createBlocksBlock.d.ts.map +1 -1
  19. package/lib/blocks/factories/createBlocksBlock.js +70 -13
  20. package/lib/blocks/factories/createColumnsBlock.d.ts.map +1 -1
  21. package/lib/blocks/factories/createColumnsBlock.js +56 -6
  22. package/lib/blocks/factories/createListBlock.d.ts.map +1 -1
  23. package/lib/blocks/factories/createListBlock.js +56 -6
  24. package/lib/blocks/factories/createOneOfBlock.d.ts.map +1 -1
  25. package/lib/blocks/factories/createOneOfBlock.js +62 -5
  26. package/lib/blocks/factories/createOptionalBlock.d.ts.map +1 -1
  27. package/lib/blocks/factories/createOptionalBlock.js +38 -1
  28. package/lib/blocks/helpers/composeBlocks/composeBlocks.d.ts.map +1 -1
  29. package/lib/blocks/helpers/composeBlocks/composeBlocks.js +52 -16
  30. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.d.ts +2 -1
  31. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.d.ts.map +1 -1
  32. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.js +4 -2
  33. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.d.ts +2 -1
  34. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.d.ts.map +1 -1
  35. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.js +5 -1
  36. package/lib/blocks/helpers/createBlockSkeleton.js +15 -1
  37. package/lib/blocks/helpers/createCompositeBlockTextField.d.ts +2 -1
  38. package/lib/blocks/helpers/createCompositeBlockTextField.d.ts.map +1 -1
  39. package/lib/blocks/helpers/createCompositeBlockTextField.js +20 -2
  40. package/lib/blocks/tipTap/BlockStyleContext.d.ts +3 -0
  41. package/lib/blocks/tipTap/BlockStyleContext.d.ts.map +1 -0
  42. package/lib/blocks/tipTap/BlockStyleContext.js +2 -0
  43. package/lib/blocks/tipTap/InlineStyleContext.d.ts +3 -0
  44. package/lib/blocks/tipTap/InlineStyleContext.d.ts.map +1 -0
  45. package/lib/blocks/tipTap/InlineStyleContext.js +2 -0
  46. package/lib/blocks/tipTap/TipTapLinkDialog.d.ts +10 -0
  47. package/lib/blocks/tipTap/TipTapLinkDialog.d.ts.map +1 -0
  48. package/lib/blocks/tipTap/TipTapLinkDialog.js +105 -0
  49. package/lib/blocks/tipTap/TipTapToolbar.d.ts +12 -0
  50. package/lib/blocks/tipTap/TipTapToolbar.d.ts.map +1 -0
  51. package/lib/blocks/tipTap/TipTapToolbar.js +611 -0
  52. package/lib/blocks/tipTap/__stories__/TipTapRichTextBlock.stories.js +1566 -0
  53. package/lib/blocks/tipTap/createTipTapRichTextBlock.d.ts +56 -0
  54. package/lib/blocks/tipTap/createTipTapRichTextBlock.d.ts.map +1 -0
  55. package/lib/blocks/tipTap/createTipTapRichTextBlock.js +418 -0
  56. package/lib/blocks/tipTap/extensions/BlockStyleHeading.d.ts +2 -0
  57. package/lib/blocks/tipTap/extensions/BlockStyleHeading.d.ts.map +1 -0
  58. package/lib/blocks/tipTap/extensions/BlockStyleHeading.js +57 -0
  59. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.d.ts +2 -0
  60. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.d.ts.map +1 -0
  61. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.js +56 -0
  62. package/lib/blocks/tipTap/extensions/CmsLink.d.ts +13 -0
  63. package/lib/blocks/tipTap/extensions/CmsLink.d.ts.map +1 -0
  64. package/lib/blocks/tipTap/extensions/CmsLink.js +42 -0
  65. package/lib/blocks/tipTap/extensions/InlineStyleMark.d.ts +13 -0
  66. package/lib/blocks/tipTap/extensions/InlineStyleMark.d.ts.map +1 -0
  67. package/lib/blocks/tipTap/extensions/InlineStyleMark.js +71 -0
  68. package/lib/blocks/tipTap/extensions/NonBreakingSpace.d.ts +10 -0
  69. package/lib/blocks/tipTap/extensions/NonBreakingSpace.d.ts.map +1 -0
  70. package/lib/blocks/tipTap/extensions/NonBreakingSpace.js +57 -0
  71. package/lib/blocks/tipTap/extensions/SoftHyphen.d.ts +10 -0
  72. package/lib/blocks/tipTap/extensions/SoftHyphen.d.ts.map +1 -0
  73. package/lib/blocks/tipTap/extensions/SoftHyphen.js +51 -0
  74. package/lib/blocks/tipTap/listLevelMaxHelpers.d.ts +6 -0
  75. package/lib/blocks/tipTap/listLevelMaxHelpers.d.ts.map +1 -0
  76. package/lib/blocks/tipTap/listLevelMaxHelpers.js +108 -0
  77. package/lib/blocks/types.d.ts +7 -0
  78. package/lib/blocks/types.d.ts.map +1 -1
  79. package/lib/config/CometConfigContext.d.ts +2 -1
  80. package/lib/config/CometConfigContext.d.ts.map +1 -1
  81. package/lib/config/CometConfigContext.js +9 -5
  82. package/lib/contentScope/__stories__/ContentScopeProvider.stories.js +85 -0
  83. package/lib/contentScope/__stories__/ContentScopeSelect.stories.js +655 -0
  84. package/lib/contentScope/noContentScopeFallback/__stories__/NoContentScopeFallback.stories.js +7 -0
  85. package/lib/dam/DamTable.d.ts +5 -1
  86. package/lib/dam/DamTable.d.ts.map +1 -1
  87. package/lib/dam/DamTable.js +5 -1
  88. package/lib/dam/DataGrid/FolderDataGrid.d.ts +1 -1
  89. package/lib/dam/DataGrid/FolderDataGrid.d.ts.map +1 -1
  90. package/lib/dam/DataGrid/FolderDataGrid.js +52 -43
  91. package/lib/dam/DataGrid/selection/DamSelectionContext.d.ts +7 -4
  92. package/lib/dam/DataGrid/selection/DamSelectionContext.d.ts.map +1 -1
  93. package/lib/dam/DataGrid/selection/DamSelectionContext.js +11 -3
  94. package/lib/form/file/FileField.d.ts +15 -12
  95. package/lib/form/file/FileField.d.ts.map +1 -1
  96. package/lib/form/file/FileField.gql.d.ts +2 -0
  97. package/lib/form/file/FileField.gql.d.ts.map +1 -1
  98. package/lib/form/file/FileField.gql.generated.d.ts +40 -0
  99. package/lib/form/file/FileField.gql.generated.d.ts.map +1 -1
  100. package/lib/form/file/FileField.gql.generated.js +2 -1
  101. package/lib/form/file/FileField.gql.js +6 -3
  102. package/lib/form/file/FileField.js +170 -86
  103. package/lib/form/file/FileFieldMenu.d.ts +17 -0
  104. package/lib/form/file/FileFieldMenu.d.ts.map +1 -0
  105. package/lib/form/file/FileFieldMenu.js +91 -0
  106. package/lib/form/file/FileFieldRow.d.ts +12 -0
  107. package/lib/form/file/FileFieldRow.d.ts.map +1 -0
  108. package/lib/form/file/FileFieldRow.js +96 -0
  109. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.d.ts +20 -0
  110. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.d.ts.map +1 -0
  111. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.js +106 -0
  112. package/lib/form/file/chooseFile/ChooseDamFileDialog.d.ts.map +1 -1
  113. package/lib/form/file/chooseFile/ChooseDamFileDialog.js +34 -89
  114. package/lib/form/file/chooseFile/ChooseDamFilesDialog.d.ts +9 -0
  115. package/lib/form/file/chooseFile/ChooseDamFilesDialog.d.ts.map +1 -0
  116. package/lib/form/file/chooseFile/ChooseDamFilesDialog.js +117 -0
  117. package/lib/graphql.generated.d.ts +12 -1
  118. package/lib/graphql.generated.d.ts.map +1 -1
  119. package/lib/index.d.ts +8 -1
  120. package/lib/index.d.ts.map +1 -1
  121. package/lib/index.js +5 -0
  122. package/lib/pages/createEditPageNode.d.ts.map +1 -1
  123. package/lib/pages/createEditPageNode.js +1 -12
  124. package/lib/pages/createUsePage.d.ts +1 -0
  125. package/lib/pages/createUsePage.d.ts.map +1 -1
  126. package/lib/pages/createUsePage.js +135 -6
  127. package/lib/pages/pageTree/PageActions.d.ts.map +1 -1
  128. package/lib/pages/pageTree/PageActions.js +21 -3
  129. package/lib/pages/pageTree/findAvailableSlug.d.ts +11 -0
  130. package/lib/pages/pageTree/findAvailableSlug.d.ts.map +1 -0
  131. package/lib/pages/pageTree/findAvailableSlug.generated.d.ts +16 -0
  132. package/lib/pages/pageTree/findAvailableSlug.generated.d.ts.map +1 -0
  133. package/lib/pages/pageTree/findAvailableSlug.generated.js +5 -0
  134. package/lib/pages/pageTree/findAvailableSlug.js +62 -0
  135. package/lib/pages/pageTree/transformToSlug.d.ts +2 -0
  136. package/lib/pages/pageTree/transformToSlug.d.ts.map +1 -0
  137. package/lib/pages/pageTree/transformToSlug.js +12 -0
  138. package/lib/pages/pageTree/useCopyPastePages/sendPages.d.ts.map +1 -1
  139. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.d.ts +0 -10
  140. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.d.ts.map +1 -1
  141. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.js +0 -1
  142. package/lib/pages/pageTree/useCopyPastePages/sendPages.js +19 -40
  143. package/lib/pages/pageTree/useCopyPastePages.d.ts.map +1 -1
  144. package/lib/pages/pageTree/useCopyPastePages.js +1 -1
  145. package/lib/pages/pageTree/{useCopyPastePages/ProgressDialog.d.ts → useProgressDialog.d.ts} +1 -1
  146. package/lib/pages/pageTree/useProgressDialog.d.ts.map +1 -0
  147. package/lib/pages/pageTree/useTranslatePagesAction.d.ts +16 -0
  148. package/lib/pages/pageTree/useTranslatePagesAction.d.ts.map +1 -0
  149. package/lib/pages/pageTree/useTranslatePagesAction.generated.d.ts +20 -0
  150. package/lib/pages/pageTree/useTranslatePagesAction.generated.d.ts.map +1 -0
  151. package/lib/pages/pageTree/useTranslatePagesAction.generated.js +5 -0
  152. package/lib/pages/pageTree/useTranslatePagesAction.js +339 -0
  153. package/lib/pages/pagesPage/PagesPageActionToolbar.d.ts.map +1 -1
  154. package/lib/pages/pagesPage/PagesPageActionToolbar.js +29 -2
  155. package/lib/pages/pagesPage/PagesPageActionToolbar.sc.d.ts +2 -2
  156. package/lib/translation/AzureAiTranslatorProvider.d.ts +1 -1
  157. package/lib/translation/AzureAiTranslatorProvider.d.ts.map +1 -1
  158. package/lib/translation/AzureAiTranslatorProvider.generated.d.ts +8 -0
  159. package/lib/translation/AzureAiTranslatorProvider.generated.d.ts.map +1 -1
  160. package/lib/translation/AzureAiTranslatorProvider.generated.js +2 -1
  161. package/lib/translation/AzureAiTranslatorProvider.js +31 -2
  162. package/lib/translation/TranslatableInterface.d.ts +4 -0
  163. package/lib/translation/TranslatableInterface.d.ts.map +1 -0
  164. package/lib/translation/TranslatableInterface.js +1 -0
  165. package/lib/translation/TranslateContentMenuItem.d.ts +7 -0
  166. package/lib/translation/TranslateContentMenuItem.d.ts.map +1 -0
  167. package/lib/translation/TranslateContentMenuItem.js +99 -0
  168. package/lib/translation/createDocumentTranslationMethods.d.ts +4 -0
  169. package/lib/translation/createDocumentTranslationMethods.d.ts.map +1 -0
  170. package/lib/translation/createDocumentTranslationMethods.js +62 -0
  171. package/lib/validation/validateJson.d.ts +2 -0
  172. package/lib/validation/validateJson.d.ts.map +1 -0
  173. package/lib/validation/validateJson.js +15 -0
  174. package/package.json +32 -23
  175. package/lib/dashboard/__stories__/DateTime.stories.d.ts +0 -7
  176. package/lib/dashboard/__stories__/DateTime.stories.d.ts.map +0 -1
  177. package/lib/pages/pageTree/useCopyPastePages/ProgressDialog.d.ts.map +0 -1
  178. /package/lib/pages/pageTree/{useCopyPastePages/ProgressDialog.js → useProgressDialog.js} +0 -0
@@ -10,7 +10,7 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
10
10
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
11
11
  import { useApolloClient } from "@apollo/client";
12
12
  import { RowActionsItem, RowActionsMenu, useStackSwitchApi, writeClipboardText } from "@comet/admin";
13
- import { Add, Delete, Domain, Edit, Preview, PreviewUnavailable, Settings } from "@comet/admin-icons";
13
+ import { Add, Delete, Domain, Edit, Preview, PreviewUnavailable, Settings, Translate } from "@comet/admin-icons";
14
14
  import { Divider } from "@mui/material";
15
15
  import { useState } from "react";
16
16
  import { FormattedMessage } from "react-intl";
@@ -24,6 +24,7 @@ import { deletePageMutation } from "./Page";
24
24
  import { PageDeleteDialog } from "./PageDeleteDialog";
25
25
  import { subTreeFromNode, traverse } from "./treemap/TreeMapUtils";
26
26
  import { usePageTreeContext } from "./usePageTreeContext";
27
+ import { useTranslatePagesAction } from "./useTranslatePagesAction";
27
28
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
28
29
  export default function PageActions(_ref) {
29
30
  var page = _ref.page,
@@ -43,6 +44,15 @@ export default function PageActions(_ref) {
43
44
  deleteDialogOpen = _useState2[0],
44
45
  setDeleteDialogOpen = _useState2[1];
45
46
  var documentType = documentTypes[page.documentType];
47
+ var _useTranslatePagesAct = useTranslatePagesAction({
48
+ pages: [page],
49
+ documentTypes: documentTypes
50
+ }),
51
+ translateDialogs = _useTranslatePagesAct.dialogs,
52
+ translateEnabled = _useTranslatePagesAct.enabled,
53
+ hasTranslatableContent = _useTranslatePagesAct.hasTranslatableContent,
54
+ translating = _useTranslatePagesAct.translating,
55
+ openTranslateDialog = _useTranslatePagesAct.openDialog;
46
56
  var isEditable = !!(page.visibility !== "Archived" && documentType.editComponent);
47
57
  var handleDeleteClick = /*#__PURE__*/function () {
48
58
  var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
@@ -148,7 +158,15 @@ export default function PageActions(_ref) {
148
158
  page: page
149
159
  }, "movePage"), /*#__PURE__*/_jsx(Divider, {}, "divider2"), /*#__PURE__*/_jsx(CopyPasteMenuItem, {
150
160
  page: page
151
- }, "copyPaste"), /*#__PURE__*/_jsx(Divider, {}, "divider3")], /*#__PURE__*/_jsx(RowActionsItem, {
161
+ }, "copyPaste"), translateEnabled && /*#__PURE__*/_jsx(RowActionsItem, {
162
+ icon: /*#__PURE__*/_jsx(Translate, {}),
163
+ disabled: translating || !hasTranslatableContent,
164
+ onClick: openTranslateDialog,
165
+ children: /*#__PURE__*/_jsx(FormattedMessage, {
166
+ id: "comet.translator.translate",
167
+ defaultMessage: "Translate"
168
+ })
169
+ }, "translate"), /*#__PURE__*/_jsx(Divider, {}, "divider3")], /*#__PURE__*/_jsx(RowActionsItem, {
152
170
  icon: /*#__PURE__*/_jsx(Delete, {}),
153
171
  disabled: page.slug === "home",
154
172
  onClick: function onClick() {
@@ -160,7 +178,7 @@ export default function PageActions(_ref) {
160
178
  })
161
179
  })]
162
180
  })]
163
- }), /*#__PURE__*/_jsx(PageDeleteDialog, {
181
+ }), translateDialogs, /*#__PURE__*/_jsx(PageDeleteDialog, {
164
182
  dialogOpen: deleteDialogOpen,
165
183
  handleCancelClick: function handleCancelClick() {
166
184
  setDeleteDialogOpen(false);
@@ -0,0 +1,11 @@
1
+ import { type ApolloClient } from "@apollo/client";
2
+ export declare function findAvailableSlug(apolloClient: ApolloClient<unknown>, { slug, name, parentId, scope }: {
3
+ slug: string;
4
+ name: string;
5
+ parentId: string | null;
6
+ scope: Record<string, unknown>;
7
+ }): Promise<{
8
+ slug: string;
9
+ name: string;
10
+ }>;
11
+ //# sourceMappingURL=findAvailableSlug.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findAvailableSlug.d.ts","sourceRoot":"","sources":["../../../src/pages/pageTree/findAvailableSlug.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAO,MAAM,gBAAgB,CAAC;AASxD,wBAAsB,iBAAiB,CACnC,YAAY,EAAE,YAAY,CAAC,OAAO,CAAC,EACnC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GACzH,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAqBzC"}
@@ -0,0 +1,16 @@
1
+ import * as Types from '../../graphql.generated';
2
+ export declare const namedOperations: {
3
+ Query: {
4
+ FindAvailableSlug: string;
5
+ };
6
+ };
7
+ export type GQLFindAvailableSlugQueryVariables = Types.Exact<{
8
+ parentId?: Types.InputMaybe<Types.Scalars['ID']['input']>;
9
+ slug: Types.Scalars['String']['input'];
10
+ scope: Types.GQLPageTreeNodeScopeInput;
11
+ }>;
12
+ export type GQLFindAvailableSlugQuery = {
13
+ __typename?: 'Query';
14
+ pageTreeNodeSlugAvailable: Types.GQLSlugAvailability;
15
+ };
16
+ //# sourceMappingURL=findAvailableSlug.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findAvailableSlug.generated.d.ts","sourceRoot":"","sources":["../../../src/pages/pageTree/findAvailableSlug.generated.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AAEjD,eAAO,MAAM,eAAe;;;;CAI3B,CAAA;AACD,MAAM,MAAM,kCAAkC,GAAG,KAAK,CAAC,KAAK,CAAC;IAC3D,QAAQ,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;IACvC,KAAK,EAAE,KAAK,CAAC,yBAAyB,CAAC;CACxC,CAAC,CAAC;AAGH,MAAM,MAAM,yBAAyB,GAAG;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,yBAAyB,EAAE,KAAK,CAAC,mBAAmB,CAAA;CAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ export var namedOperations = {
2
+ Query: {
3
+ FindAvailableSlug: 'FindAvailableSlug'
4
+ }
5
+ };
@@ -0,0 +1,62 @@
1
+ var _templateObject;
2
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
3
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
4
+ function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
5
+ function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
6
+ function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
7
+ import { gql } from "@apollo/client";
8
+ import { LocalErrorScopeApolloContext } from "@comet/admin";
9
+ var slugAvailableQuery = gql(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n query FindAvailableSlug($parentId: ID, $slug: String!, $scope: PageTreeNodeScopeInput!) {\n pageTreeNodeSlugAvailable(parentId: $parentId, slug: $slug, scope: $scope)\n }\n"])));
10
+ export function findAvailableSlug(_x, _x2) {
11
+ return _findAvailableSlug.apply(this, arguments);
12
+ }
13
+ function _findAvailableSlug() {
14
+ _findAvailableSlug = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(apolloClient, _ref) {
15
+ var slug, name, parentId, scope, candidateSlug, candidateName, duplicateNumber, _yield$apolloClient$q, data;
16
+ return _regenerator().w(function (_context) {
17
+ while (1) switch (_context.n) {
18
+ case 0:
19
+ slug = _ref.slug, name = _ref.name, parentId = _ref.parentId, scope = _ref.scope;
20
+ candidateSlug = slug;
21
+ candidateName = name;
22
+ duplicateNumber = 1;
23
+ case 1:
24
+ if (!true) {
25
+ _context.n = 4;
26
+ break;
27
+ }
28
+ _context.n = 2;
29
+ return apolloClient.query({
30
+ query: slugAvailableQuery,
31
+ variables: {
32
+ parentId: parentId,
33
+ slug: candidateSlug,
34
+ scope: scope
35
+ },
36
+ fetchPolicy: "network-only",
37
+ context: LocalErrorScopeApolloContext
38
+ });
39
+ case 2:
40
+ _yield$apolloClient$q = _context.v;
41
+ data = _yield$apolloClient$q.data;
42
+ if (!(data.pageTreeNodeSlugAvailable === "Available")) {
43
+ _context.n = 3;
44
+ break;
45
+ }
46
+ return _context.a(2, {
47
+ slug: candidateSlug,
48
+ name: candidateName
49
+ });
50
+ case 3:
51
+ ++duplicateNumber;
52
+ candidateName = "".concat(name, " ").concat(duplicateNumber);
53
+ candidateSlug = "".concat(slug, "-").concat(duplicateNumber);
54
+ _context.n = 1;
55
+ break;
56
+ case 4:
57
+ return _context.a(2);
58
+ }
59
+ }, _callee);
60
+ }));
61
+ return _findAvailableSlug.apply(this, arguments);
62
+ }
@@ -0,0 +1,2 @@
1
+ export declare const transformToSlug: (name: string, locale: string) => string;
2
+ //# sourceMappingURL=transformToSlug.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformToSlug.d.ts","sourceRoot":"","sources":["../../../src/pages/pageTree/transformToSlug.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,QAAQ,MAAM,WAM3D,CAAC"}
@@ -0,0 +1,12 @@
1
+ import slugify from "slugify";
2
+ export var transformToSlug = function transformToSlug(name, locale) {
3
+ var slug = slugify(name, {
4
+ replacement: "-",
5
+ lower: true,
6
+ locale: locale
7
+ });
8
+ // Remove everything except unreserved characters and percent encoding (https://tools.ietf.org/html/rfc3986#section-2.1)
9
+ // This is necessary because slugify does not remove all reserved characters per default (e.g. "@")
10
+ slug = slug.replace(/[^a-zA-Z0-9-._~]/g, "");
11
+ return slug;
12
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"sendPages.d.ts","sourceRoot":"","sources":["../../../../src/pages/pageTree/useCopyPastePages/sendPages.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAO,MAAM,gBAAgB,CAAC;AAGxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAGnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,sBAAsB,CAAC;AA0C1E,MAAM,WAAW,gBAAgB;IAC7B;;;SAGK;IACL,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC;CACnE;AAED,UAAU,qBAAqB;IAC3B,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,YAAY,CAAC;IACpB,aAAa,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;IAcI;AACJ,wBAAsB,SAAS,CAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,cAAc,EACpD,OAAO,EAAE,gBAAgB,EACzB,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,EAAE,qBAAqB,EAC3I,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,GAC/D,OAAO,CAAC,IAAI,CAAC,CAyPf"}
1
+ {"version":3,"file":"sendPages.d.ts","sourceRoot":"","sources":["../../../../src/pages/pageTree/useCopyPastePages/sendPages.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAO,MAAM,gBAAgB,CAAC;AAGxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAGnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAkC1E,MAAM,WAAW,gBAAgB;IAC7B;;;SAGK;IACL,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC;CACnE;AAED,UAAU,qBAAqB;IAC3B,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,YAAY,CAAC;IACpB,aAAa,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;IAcI;AACJ,wBAAsB,SAAS,CAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,cAAc,EACpD,OAAO,EAAE,gBAAgB,EACzB,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,EAAE,qBAAqB,EAC3I,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,GAC/D,OAAO,CAAC,IAAI,CAAC,CAuOf"}
@@ -1,7 +1,6 @@
1
1
  import * as Types from '../../../graphql.generated';
2
2
  export declare const namedOperations: {
3
3
  Query: {
4
- SlugAvailable: string;
5
4
  FindCopiesOfFileInScope: string;
6
5
  };
7
6
  Mutation: {
@@ -9,15 +8,6 @@ export declare const namedOperations: {
9
8
  CopyFilesToScope: string;
10
9
  };
11
10
  };
12
- export type GQLSlugAvailableQueryVariables = Types.Exact<{
13
- parentId?: Types.InputMaybe<Types.Scalars['ID']['input']>;
14
- slug: Types.Scalars['String']['input'];
15
- scope: Types.GQLPageTreeNodeScopeInput;
16
- }>;
17
- export type GQLSlugAvailableQuery = {
18
- __typename?: 'Query';
19
- pageTreeNodeSlugAvailable: Types.GQLSlugAvailability;
20
- };
21
11
  export type GQLCreatePageNodeMutationVariables = Types.Exact<{
22
12
  input: Types.GQLPageTreeNodeCreateInput;
23
13
  contentScope: Types.GQLPageTreeNodeScopeInput;
@@ -1 +1 @@
1
- {"version":3,"file":"sendPages.generated.d.ts","sourceRoot":"","sources":["../../../../src/pages/pageTree/useCopyPastePages/sendPages.generated.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AAEpD,eAAO,MAAM,eAAe;;;;;;;;;CAS3B,CAAA;AACD,MAAM,MAAM,8BAA8B,GAAG,KAAK,CAAC,KAAK,CAAC;IACvD,QAAQ,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;IACvC,KAAK,EAAE,KAAK,CAAC,yBAAyB,CAAC;CACxC,CAAC,CAAC;AAGH,MAAM,MAAM,qBAAqB,GAAG;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,yBAAyB,EAAE,KAAK,CAAC,mBAAmB,CAAA;CAAE,CAAC;AAEnH,MAAM,MAAM,kCAAkC,GAAG,KAAK,CAAC,KAAK,CAAC;IAC3D,KAAK,EAAE,KAAK,CAAC,0BAA0B,CAAC;IACxC,YAAY,EAAE,KAAK,CAAC,yBAAyB,CAAC;IAC9C,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;CAC5C,CAAC,CAAC;AAGH,MAAM,MAAM,yBAAyB,GAAG;IAAE,UAAU,CAAC,EAAE,UAAU,CAAC;IAAC,kBAAkB,EAAE;QAAE,UAAU,CAAC,EAAE,cAAc,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC;AAErI,MAAM,MAAM,oCAAoC,GAAG,KAAK,CAAC,KAAK,CAAC;IAC7D,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IAC5E,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;CAC7C,CAAC,CAAC;AAGH,MAAM,MAAM,2BAA2B,GAAG;IAAE,UAAU,CAAC,EAAE,UAAU,CAAC;IAAC,gBAAgB,EAAE;QAAE,UAAU,CAAC,EAAE,mBAAmB,CAAC;QAAC,WAAW,EAAE,KAAK,CAAC;YAAE,UAAU,CAAC,EAAE,YAAY,CAAC;YAAC,QAAQ,EAAE;gBAAE,UAAU,CAAC,EAAE,SAAS,CAAC;gBAAC,EAAE,EAAE,MAAM,CAAA;aAAE,CAAC;YAAC,IAAI,EAAE;gBAAE,UAAU,CAAC,EAAE,SAAS,CAAC;gBAAC,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC,CAAA;KAAE,CAAA;CAAE,CAAC;AAEjR,MAAM,MAAM,wCAAwC,GAAG,KAAK,CAAC,KAAK,CAAC;IACjE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IACjC,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;CAC/D,CAAC,CAAC;AAGH,MAAM,MAAM,+BAA+B,GAAG;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,uBAAuB,EAAE,KAAK,CAAC;QAAE,UAAU,CAAC,EAAE,SAAS,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"sendPages.generated.d.ts","sourceRoot":"","sources":["../../../../src/pages/pageTree/useCopyPastePages/sendPages.generated.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AAEpD,eAAO,MAAM,eAAe;;;;;;;;CAQ3B,CAAA;AACD,MAAM,MAAM,kCAAkC,GAAG,KAAK,CAAC,KAAK,CAAC;IAC3D,KAAK,EAAE,KAAK,CAAC,0BAA0B,CAAC;IACxC,YAAY,EAAE,KAAK,CAAC,yBAAyB,CAAC;IAC9C,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;CAC5C,CAAC,CAAC;AAGH,MAAM,MAAM,yBAAyB,GAAG;IAAE,UAAU,CAAC,EAAE,UAAU,CAAC;IAAC,kBAAkB,EAAE;QAAE,UAAU,CAAC,EAAE,cAAc,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC;AAErI,MAAM,MAAM,oCAAoC,GAAG,KAAK,CAAC,KAAK,CAAC;IAC7D,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IAC5E,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;CAC7C,CAAC,CAAC;AAGH,MAAM,MAAM,2BAA2B,GAAG;IAAE,UAAU,CAAC,EAAE,UAAU,CAAC;IAAC,gBAAgB,EAAE;QAAE,UAAU,CAAC,EAAE,mBAAmB,CAAC;QAAC,WAAW,EAAE,KAAK,CAAC;YAAE,UAAU,CAAC,EAAE,YAAY,CAAC;YAAC,QAAQ,EAAE;gBAAE,UAAU,CAAC,EAAE,SAAS,CAAC;gBAAC,EAAE,EAAE,MAAM,CAAA;aAAE,CAAC;YAAC,IAAI,EAAE;gBAAE,UAAU,CAAC,EAAE,SAAS,CAAC;gBAAC,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC,CAAA;KAAE,CAAA;CAAE,CAAC;AAEjR,MAAM,MAAM,wCAAwC,GAAG,KAAK,CAAC,KAAK,CAAC;IACjE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IACjC,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;CAC/D,CAAC,CAAC;AAGH,MAAM,MAAM,+BAA+B,GAAG;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,uBAAuB,EAAE,KAAK,CAAC;QAAE,UAAU,CAAC,EAAE,SAAS,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC"}
@@ -1,6 +1,5 @@
1
1
  export var namedOperations = {
2
2
  Query: {
3
- SlugAvailable: 'SlugAvailable',
4
3
  FindCopiesOfFileInScope: 'FindCopiesOfFileInScope'
5
4
  },
6
5
  Mutation: {
@@ -1,5 +1,5 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- var _templateObject, _templateObject2, _templateObject3, _templateObject4;
2
+ var _templateObject, _templateObject2, _templateObject3;
3
3
  function _regeneratorValues(e) { if (null != e) { var t = e["function" == typeof Symbol && Symbol.iterator || "@@iterator"], r = 0; if (t) return t.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) return { next: function next() { return e && r >= e.length && (e = void 0), { value: e && e[r++], done: !e }; } }; } throw new TypeError(_typeof(e) + " is not iterable"); }
4
4
  function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
5
5
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -18,12 +18,12 @@ import { LocalErrorScopeApolloContext } from "@comet/admin";
18
18
  import isEqual from "lodash.isequal";
19
19
  import { FormattedMessage } from "react-intl";
20
20
  import { v4 as uuid } from "uuid";
21
+ import { findAvailableSlug } from "../findAvailableSlug";
21
22
  import { arrayToTreeMap } from "../treemap/TreeMapUtils";
22
23
  import { createInboxFolder } from "./createInboxFolder";
23
24
  import { jsx as _jsx } from "react/jsx-runtime";
24
- var slugAvailableQuery = gql(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n query SlugAvailable($parentId: ID, $slug: String!, $scope: PageTreeNodeScopeInput!) {\n pageTreeNodeSlugAvailable(parentId: $parentId, slug: $slug, scope: $scope)\n }\n"])));
25
- var createPageNodeMutation = gql(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n mutation CreatePageNode($input: PageTreeNodeCreateInput!, $contentScope: PageTreeNodeScopeInput!, $category: String!) {\n createPageTreeNode(input: $input, scope: $contentScope, category: $category) {\n id\n }\n }\n"])));
26
- var copyFilesToScopeMutation = gql(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n mutation CopyFilesToScope($fileIds: [ID!]!, $inboxFolderId: ID!) {\n copyFilesToScope(fileIds: $fileIds, inboxFolderId: $inboxFolderId) {\n mappedFiles {\n rootFile {\n id\n }\n copy {\n id\n }\n }\n }\n }\n"])));
25
+ var createPageNodeMutation = gql(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n mutation CreatePageNode($input: PageTreeNodeCreateInput!, $contentScope: PageTreeNodeScopeInput!, $category: String!) {\n createPageTreeNode(input: $input, scope: $contentScope, category: $category) {\n id\n }\n }\n"])));
26
+ var copyFilesToScopeMutation = gql(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n mutation CopyFilesToScope($fileIds: [ID!]!, $inboxFolderId: ID!) {\n copyFilesToScope(fileIds: $fileIds, inboxFolderId: $inboxFolderId) {\n mappedFiles {\n rootFile {\n id\n }\n copy {\n id\n }\n }\n }\n }\n"])));
27
27
  /**
28
28
  * Iterates over passed pages synchronous and creates data with mutations
29
29
  *
@@ -110,7 +110,7 @@ function _sendPages() {
110
110
  case 2:
111
111
  _context.n = 3;
112
112
  return client.query({
113
- query: gql(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n query FindCopiesOfFileInScope($id: ID!, $scope: DamScopeInput!, $imageCropArea: ImageCropAreaInput) {\n findCopiesOfFileInScope(id: $id, scope: $scope, imageCropArea: $imageCropArea) {\n id\n }\n }\n "]))),
113
+ query: gql(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n query FindCopiesOfFileInScope($id: ID!, $scope: DamScopeInput!, $imageCropArea: ImageCropAreaInput) {\n findCopiesOfFileInScope(id: $id, scope: $scope, imageCropArea: $imageCropArea) {\n id\n }\n }\n "]))),
114
114
  variables: {
115
115
  id: damFile.id,
116
116
  scope: targetDamScope,
@@ -205,7 +205,7 @@ function _sendPages() {
205
205
  handlePageTreeNode = /*#__PURE__*/function () {
206
206
  var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(node, newParentId, posOffset) {
207
207
  var _dependencyReplacemen;
208
- var documentType, slug, name, duplicateNumber, slugAvailable, _yield$client$query2, _data, _yield$client$mutate, data;
208
+ var documentType, _yield$findAvailableS, slug, name, _yield$client$mutate, data;
209
209
  return _regenerator().w(function (_context2) {
210
210
  while (1) switch (_context2.n) {
211
211
  case 0:
@@ -216,39 +216,18 @@ function _sendPages() {
216
216
  }
217
217
  throw new Error("Unknown document type \"".concat(documentType, "\""));
218
218
  case 1:
219
- // 2a. Generate unique slug by adding "{slug}-{uniqueNumber}" to the slug
220
- slug = node.slug;
221
- name = node.name;
222
- duplicateNumber = 1;
223
- slugAvailable = false;
219
+ _context2.n = 2;
220
+ return findAvailableSlug(client, {
221
+ slug: node.slug,
222
+ name: node.name,
223
+ parentId: newParentId,
224
+ scope: targetContentScope
225
+ });
224
226
  case 2:
227
+ _yield$findAvailableS = _context2.v;
228
+ slug = _yield$findAvailableS.slug;
229
+ name = _yield$findAvailableS.name;
225
230
  _context2.n = 3;
226
- return client.query({
227
- query: slugAvailableQuery,
228
- variables: {
229
- parentId: newParentId,
230
- slug: slug,
231
- scope: targetContentScope
232
- },
233
- fetchPolicy: "network-only",
234
- context: LocalErrorScopeApolloContext
235
- });
236
- case 3:
237
- _yield$client$query2 = _context2.v;
238
- _data = _yield$client$query2.data;
239
- slugAvailable = _data.pageTreeNodeSlugAvailable === "Available";
240
- if (!slugAvailable) {
241
- ++duplicateNumber;
242
- name = "".concat(node.name, " ").concat(duplicateNumber);
243
- slug = "".concat(node.slug, "-").concat(duplicateNumber);
244
- }
245
- case 4:
246
- if (!slugAvailable) {
247
- _context2.n = 2;
248
- break;
249
- }
250
- case 5:
251
- _context2.n = 6;
252
231
  return client.mutate({
253
232
  mutation: createPageNodeMutation,
254
233
  variables: {
@@ -270,15 +249,15 @@ function _sendPages() {
270
249
  },
271
250
  context: LocalErrorScopeApolloContext
272
251
  });
273
- case 6:
252
+ case 3:
274
253
  _yield$client$mutate = _context2.v;
275
254
  data = _yield$client$mutate.data;
276
255
  if (data !== null && data !== void 0 && data.createPageTreeNode.id) {
277
- _context2.n = 7;
256
+ _context2.n = 4;
278
257
  break;
279
258
  }
280
259
  throw Error("Did not receive new uuid for page tree node");
281
- case 7:
260
+ case 4:
282
261
  return _context2.a(2, data.createPageTreeNode.id);
283
262
  }
284
263
  }, _callee);
@@ -1 +1 @@
1
- {"version":3,"file":"useCopyPastePages.d.ts","sourceRoot":"","sources":["../../../src/pages/pageTree/useCopyPastePages.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAe,MAAM,OAAO,CAAC;AAIpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE,OAAO,KAAK,EAAE,WAAW,EAAuC,MAAM,uBAAuB,CAAC;AAI9F,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAG7D,MAAM,MAAM,aAAa,GAAG,uBAAuB,GAAG;IAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;CAAE,CAAC;AAExF,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,KAAK,EAAE,YAAY,CAAC;CACvB;AAUD;;;GAGG;AACH,KAAK,wBAAwB,GAAG;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,cAAc,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEpH,UAAU,oBAAoB;IAC1B;;;OAGG;IACH,mBAAmB,EAAE,CAAC,KAAK,EAAE,uBAAuB,EAAE,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IAEnF;;;OAGG;IACH,gBAAgB,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3D;;OAEG;IACH,gBAAgB,EAAE,MAAM,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAE1D;;;;OAIG;IACH,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAExG,cAAc,EAAE,SAAS,CAAC;CAC7B;AAED;;GAEG;AACH,iBAAS,iBAAiB,IAAI,oBAAoB,CA2IjD;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"useCopyPastePages.d.ts","sourceRoot":"","sources":["../../../src/pages/pageTree/useCopyPastePages.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAe,MAAM,OAAO,CAAC;AAIpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE,OAAO,KAAK,EAAE,WAAW,EAAuC,MAAM,uBAAuB,CAAC;AAG9F,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAI7D,MAAM,MAAM,aAAa,GAAG,uBAAuB,GAAG;IAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;CAAE,CAAC;AAExF,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,KAAK,EAAE,YAAY,CAAC;CACvB;AAUD;;;GAGG;AACH,KAAK,wBAAwB,GAAG;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,cAAc,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEpH,UAAU,oBAAoB;IAC1B;;;OAGG;IACH,mBAAmB,EAAE,CAAC,KAAK,EAAE,uBAAuB,EAAE,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IAEnF;;;OAGG;IACH,gBAAgB,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3D;;OAEG;IACH,gBAAgB,EAAE,MAAM,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAE1D;;;;OAIG;IACH,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAExG,cAAc,EAAE,SAAS,CAAC;CAC7B;AAED;;GAEG;AACH,iBAAS,iBAAiB,IAAI,oBAAoB,CA2IjD;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -17,9 +17,9 @@ import { useDamBasePath } from "../../dam/config/damConfig";
17
17
  import { useDamScope } from "../../dam/config/useDamScope";
18
18
  import { usePageTreeScope } from "../config/usePageTreeScope";
19
19
  import { usePageTreeConfig } from "../pageTreeConfig";
20
- import { useProgressDialog } from "./useCopyPastePages/ProgressDialog";
21
20
  import { sendPages } from "./useCopyPastePages/sendPages";
22
21
  import { usePageTreeContext } from "./usePageTreeContext";
22
+ import { useProgressDialog } from "./useProgressDialog";
23
23
  import { jsx as _jsx } from "react/jsx-runtime";
24
24
  /**
25
25
  * Typeguard to check if an object is a PagesClipboard Type
@@ -8,4 +8,4 @@ export declare function useProgressDialog(options: {
8
8
  updateProgress: (progress: number | undefined, message?: ReactNode) => void;
9
9
  dialog: import("react/jsx-runtime").JSX.Element;
10
10
  };
11
- //# sourceMappingURL=ProgressDialog.d.ts.map
11
+ //# sourceMappingURL=useProgressDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useProgressDialog.d.ts","sourceRoot":"","sources":["../../../src/pages/pageTree/useProgressDialog.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,SAAS,EAAyB,MAAM,OAAO,CAAC;AA6C9D,wBAAgB,iBAAiB,CAAC,OAAO,EAAE;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE;;;+BASpC,MAAM,GAAG,SAAS,YAAY,SAAS;;EAUxF"}
@@ -0,0 +1,16 @@
1
+ import { type ReactNode } from "react";
2
+ import type { DocumentInterface } from "../../documents/types";
3
+ import type { PageTreePage } from "./usePageTree";
4
+ interface Props {
5
+ pages: PageTreePage[];
6
+ documentTypes: Record<string, DocumentInterface>;
7
+ }
8
+ export declare function useTranslatePagesAction({ pages, documentTypes }: Props): {
9
+ dialogs: ReactNode;
10
+ translating: boolean;
11
+ enabled: boolean;
12
+ hasTranslatableContent: boolean;
13
+ openDialog: () => void;
14
+ };
15
+ export {};
16
+ //# sourceMappingURL=useTranslatePagesAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTranslatePagesAction.d.ts","sourceRoot":"","sources":["../../../src/pages/pageTree/useTranslatePagesAction.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAIjD,OAAO,KAAK,EAAE,iBAAiB,EAAe,MAAM,uBAAuB,CAAC;AAI5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AASlD,UAAU,KAAK;IACX,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;CACpD;AAED,wBAAgB,uBAAuB,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,KAAK,GAAG;IACtE,OAAO,EAAE,SAAS,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,MAAM,IAAI,CAAC;CAC1B,CAyLA"}
@@ -0,0 +1,20 @@
1
+ import * as Types from '../../graphql.generated';
2
+ export declare const namedOperations: {
3
+ Mutation: {
4
+ TranslatePageTreeNode: string;
5
+ };
6
+ };
7
+ export type GQLTranslatePageTreeNodeMutationVariables = Types.Exact<{
8
+ id: Types.Scalars['ID']['input'];
9
+ input: Types.GQLPageTreeNodeUpdateInput;
10
+ }>;
11
+ export type GQLTranslatePageTreeNodeMutation = {
12
+ __typename?: 'Mutation';
13
+ updatePageTreeNode: {
14
+ __typename?: 'PageTreeNode';
15
+ id: string;
16
+ name: string;
17
+ slug: string;
18
+ };
19
+ };
20
+ //# sourceMappingURL=useTranslatePagesAction.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTranslatePagesAction.generated.d.ts","sourceRoot":"","sources":["../../../src/pages/pageTree/useTranslatePagesAction.generated.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AAEjD,eAAO,MAAM,eAAe;;;;CAI3B,CAAA;AACD,MAAM,MAAM,yCAAyC,GAAG,KAAK,CAAC,KAAK,CAAC;IAClE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IACjC,KAAK,EAAE,KAAK,CAAC,0BAA0B,CAAC;CACzC,CAAC,CAAC;AAGH,MAAM,MAAM,gCAAgC,GAAG;IAAE,UAAU,CAAC,EAAE,UAAU,CAAC;IAAC,kBAAkB,EAAE;QAAE,UAAU,CAAC,EAAE,cAAc,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ export var namedOperations = {
2
+ Mutation: {
3
+ TranslatePageTreeNode: 'TranslatePageTreeNode'
4
+ }
5
+ };