@esri/hub-common 14.178.0 → 14.180.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/esm/content/HubContent.js +5 -0
  2. package/dist/esm/content/HubContent.js.map +1 -1
  3. package/dist/esm/content/_internal/ContentSchema.js +5 -0
  4. package/dist/esm/content/_internal/ContentSchema.js.map +1 -1
  5. package/dist/esm/content/_internal/ContentUiSchemaSettings.js +5 -23
  6. package/dist/esm/content/_internal/ContentUiSchemaSettings.js.map +1 -1
  7. package/dist/esm/content/_internal/computeProps.js +1 -0
  8. package/dist/esm/content/_internal/computeProps.js.map +1 -1
  9. package/dist/esm/content/_internal/getDownloadsSection.js +135 -0
  10. package/dist/esm/content/_internal/getDownloadsSection.js.map +1 -0
  11. package/dist/esm/content/_internal/shouldShowDownloadsConfiguration.js +23 -0
  12. package/dist/esm/content/_internal/shouldShowDownloadsConfiguration.js.map +1 -0
  13. package/dist/esm/content/edit.js +40 -3
  14. package/dist/esm/content/edit.js.map +1 -1
  15. package/dist/esm/downloads/_internal/additional-resources/utils.js +23 -0
  16. package/dist/esm/downloads/_internal/additional-resources/utils.js.map +1 -0
  17. package/dist/esm/downloads/_internal/getDownloadConfigurationDisplayFormats.js +75 -0
  18. package/dist/esm/downloads/_internal/getDownloadConfigurationDisplayFormats.js.map +1 -0
  19. package/dist/esm/downloads/_internal/getDownloadFlow.js +26 -0
  20. package/dist/esm/downloads/_internal/getDownloadFlow.js.map +1 -0
  21. package/dist/esm/downloads/_internal/getDownloadFormatsByFlow.js +28 -0
  22. package/dist/esm/downloads/_internal/getDownloadFormatsByFlow.js.map +1 -0
  23. package/dist/esm/downloads/fetchDownloadFile.js +20 -0
  24. package/dist/esm/downloads/fetchDownloadFile.js.map +1 -1
  25. package/dist/esm/downloads/fetchDownloadFormats.js +4 -0
  26. package/dist/esm/downloads/fetchDownloadFormats.js.map +1 -1
  27. package/dist/esm/downloads/getDownloadConfiguration.js +52 -0
  28. package/dist/esm/downloads/getDownloadConfiguration.js.map +1 -0
  29. package/dist/esm/downloads/getDownloadFormats.js +59 -0
  30. package/dist/esm/downloads/getDownloadFormats.js.map +1 -0
  31. package/dist/esm/downloads/index.js +2 -0
  32. package/dist/esm/downloads/index.js.map +1 -1
  33. package/dist/node/content/HubContent.js +5 -0
  34. package/dist/node/content/HubContent.js.map +1 -1
  35. package/dist/node/content/_internal/ContentSchema.js +5 -0
  36. package/dist/node/content/_internal/ContentSchema.js.map +1 -1
  37. package/dist/node/content/_internal/ContentUiSchemaSettings.js +5 -23
  38. package/dist/node/content/_internal/ContentUiSchemaSettings.js.map +1 -1
  39. package/dist/node/content/_internal/computeProps.js +1 -0
  40. package/dist/node/content/_internal/computeProps.js.map +1 -1
  41. package/dist/node/content/_internal/getDownloadsSection.js +139 -0
  42. package/dist/node/content/_internal/getDownloadsSection.js.map +1 -0
  43. package/dist/node/content/_internal/shouldShowDownloadsConfiguration.js +27 -0
  44. package/dist/node/content/_internal/shouldShowDownloadsConfiguration.js.map +1 -0
  45. package/dist/node/content/edit.js +39 -2
  46. package/dist/node/content/edit.js.map +1 -1
  47. package/dist/node/downloads/_internal/additional-resources/utils.js +28 -0
  48. package/dist/node/downloads/_internal/additional-resources/utils.js.map +1 -0
  49. package/dist/node/downloads/_internal/getDownloadConfigurationDisplayFormats.js +79 -0
  50. package/dist/node/downloads/_internal/getDownloadConfigurationDisplayFormats.js.map +1 -0
  51. package/dist/node/downloads/_internal/getDownloadFlow.js +30 -0
  52. package/dist/node/downloads/_internal/getDownloadFlow.js.map +1 -0
  53. package/dist/node/downloads/_internal/getDownloadFormatsByFlow.js +32 -0
  54. package/dist/node/downloads/_internal/getDownloadFormatsByFlow.js.map +1 -0
  55. package/dist/node/downloads/fetchDownloadFile.js +20 -0
  56. package/dist/node/downloads/fetchDownloadFile.js.map +1 -1
  57. package/dist/node/downloads/fetchDownloadFormats.js +4 -0
  58. package/dist/node/downloads/fetchDownloadFormats.js.map +1 -1
  59. package/dist/node/downloads/getDownloadConfiguration.js +56 -0
  60. package/dist/node/downloads/getDownloadConfiguration.js.map +1 -0
  61. package/dist/node/downloads/getDownloadFormats.js +63 -0
  62. package/dist/node/downloads/getDownloadFormats.js.map +1 -0
  63. package/dist/node/downloads/index.js +2 -0
  64. package/dist/node/downloads/index.js.map +1 -1
  65. package/dist/types/content/_internal/getDownloadsSection.d.ts +13 -0
  66. package/dist/types/content/_internal/shouldShowDownloadsConfiguration.d.ts +13 -0
  67. package/dist/types/core/types/IHubCardViewModel.d.ts +1 -0
  68. package/dist/types/core/types/IHubEditableContent.d.ts +57 -1
  69. package/dist/types/downloads/_internal/additional-resources/utils.d.ts +19 -0
  70. package/dist/types/downloads/_internal/getDownloadConfigurationDisplayFormats.d.ts +10 -0
  71. package/dist/types/downloads/_internal/getDownloadFlow.d.ts +11 -0
  72. package/dist/types/downloads/_internal/getDownloadFormatsByFlow.d.ts +11 -0
  73. package/dist/types/downloads/fetchDownloadFormats.d.ts +2 -0
  74. package/dist/types/downloads/getDownloadConfiguration.d.ts +11 -0
  75. package/dist/types/downloads/getDownloadFormats.d.ts +9 -0
  76. package/dist/types/downloads/index.d.ts +2 -0
  77. package/package.json +1 -1
@@ -1,11 +1,15 @@
1
1
  import { canUseExportImageFlow } from "./_internal/canUseExportImageFlow";
2
2
  import { canUseHubDownloadApi } from "./canUseHubDownloadApi";
3
3
  /**
4
+ * DEPRECATED: This will be removed in the next breaking version. Use "getDownloadFormats()" instead.
5
+ *
4
6
  * Fetches download formats for the given entity. Also folds in any additional resources defined on the entity.
5
7
  * @param options options to refine / filter the results of the fetchDownloadFormats operation
6
8
  * @returns a promise that resolves with the download formats
7
9
  */
8
10
  export async function fetchDownloadFormats(options) {
11
+ /* tslint:disable no-console */
12
+ console.warn(`"fetchDownloadFormats()" is deprecated. Please use "getDownloadFormats()"`);
9
13
  const { entity, context, layers } = options;
10
14
  // fetch base formats for the item
11
15
  let baseFormats = [];
@@ -1 +1 @@
1
- {"version":3,"file":"fetchDownloadFormats.js","sourceRoot":"","sources":["../../../src/downloads/fetchDownloadFormats.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAO9D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAqC;IAErC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC5C,kCAAkC;IAClC,IAAI,WAAW,GAAsB,EAAE,CAAC;IACxC,IAAI,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;QACzC,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAC/C,4BAA4B,CAC7B,CAAC;QACF,WAAW,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;KAChD;SAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;QACxC,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAC5C,mDAAmD,CACpD,CAAC;QACF,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;KAC7C;IAED,kDAAkD;IAClD,0DAA0D;IAC1D,MAAM,iBAAiB,GAAG,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,GAAG,CAC9D,cAAc,CACf,CAAC;IAEF,mCAAmC;IACnC,OAAO,CAAC,GAAG,WAAW,EAAE,GAAG,iBAAiB,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,cAAc,CACrB,QAAgC;IAEhC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,EACH,QAAQ,CAAC,IAAI;YACb,CAAC,QAAQ,CAAC,YAAY,IAAI,0BAA0B,CAAC,IAAI,+CAA+C;YACxG,uBAAuB;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;KAClB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"fetchDownloadFormats.js","sourceRoot":"","sources":["../../../src/downloads/fetchDownloadFormats.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAO9D;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAqC;IAErC,+BAA+B;IAC/B,OAAO,CAAC,IAAI,CACV,2EAA2E,CAC5E,CAAC;IAEF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC5C,kCAAkC;IAClC,IAAI,WAAW,GAAsB,EAAE,CAAC;IACxC,IAAI,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;QACzC,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAC/C,4BAA4B,CAC7B,CAAC;QACF,WAAW,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;KAChD;SAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;QACxC,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAC5C,mDAAmD,CACpD,CAAC;QACF,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;KAC7C;IAED,kDAAkD;IAClD,0DAA0D;IAC1D,MAAM,iBAAiB,GAAG,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,GAAG,CAC9D,cAAc,CACf,CAAC;IAEF,mCAAmC;IACnC,OAAO,CAAC,GAAG,WAAW,EAAE,GAAG,iBAAiB,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,cAAc,CACrB,QAAgC;IAEhC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,EACH,QAAQ,CAAC,IAAI;YACb,CAAC,QAAQ,CAAC,YAAY,IAAI,0BAA0B,CAAC,IAAI,+CAA+C;YACxG,uBAAuB;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;KAClB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,52 @@
1
+ import { getProp } from "../objects/get-prop";
2
+ import { getDownloadFlow } from "./_internal/getDownloadFlow";
3
+ import { getDownloadFormatsByFlow } from "./_internal/getDownloadFormatsByFlow";
4
+ /**
5
+ * Returns the download configuration for an entity at this moment in time.
6
+ *
7
+ * If no configuration exists, a default configuration is returned based on the entity's current download flow.
8
+ * If a configuration exists but is no longer valid, the default configuration will also be returned.
9
+ *
10
+ * @param entity entity to get download configuration for
11
+ * @returns the current download configuration for the entity
12
+ */
13
+ export function getDownloadConfiguration(entity) {
14
+ // TODO: account for enterprise environments
15
+ const downloadFlow = getDownloadFlow(entity);
16
+ const serverFormats = getDownloadFormatsByFlow(downloadFlow, entity);
17
+ const additionalResources = getProp(entity, "extendedProps.additionalResources") || [];
18
+ const existingConfiguration = getProp(entity, "extendedProps.downloads");
19
+ // Base combined default formats
20
+ const combinedDefaultFormats = serverFormats.map((f) => {
21
+ return {
22
+ key: f.format,
23
+ hidden: false,
24
+ };
25
+ });
26
+ additionalResources.forEach((f, idx) => {
27
+ combinedDefaultFormats.push({
28
+ key: `additionalResource::${idx}`,
29
+ hidden: false,
30
+ });
31
+ });
32
+ const shouldUseExistingConfiguration = existingConfiguration && existingConfiguration.flowType === downloadFlow;
33
+ // Existing configuration matches the current flow
34
+ if (shouldUseExistingConfiguration) {
35
+ const missingDefaultFormats = combinedDefaultFormats.filter((f) => {
36
+ return !existingConfiguration.formats.find((df) => df.key === f.key);
37
+ });
38
+ const validConfiguredFormats = existingConfiguration.formats.filter((f) => {
39
+ return combinedDefaultFormats.find((df) => df.key === f.key);
40
+ });
41
+ return {
42
+ flowType: downloadFlow,
43
+ formats: [...validConfiguredFormats, ...missingDefaultFormats],
44
+ };
45
+ }
46
+ // Existing configuration does not match the current flow
47
+ return {
48
+ flowType: downloadFlow,
49
+ formats: combinedDefaultFormats,
50
+ };
51
+ }
52
+ //# sourceMappingURL=getDownloadConfiguration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDownloadConfiguration.js","sourceRoot":"","sources":["../../../src/downloads/getDownloadConfiguration.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAEhF;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAA2B;IAE3B,4CAA4C;IAC5C,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACrE,MAAM,mBAAmB,GACvB,OAAO,CAAC,MAAM,EAAE,mCAAmC,CAAC,IAAI,EAAE,CAAC;IAC7D,MAAM,qBAAqB,GAAiC,OAAO,CACjE,MAAM,EACN,yBAAyB,CAC1B,CAAC;IAEF,gCAAgC;IAChC,MAAM,sBAAsB,GAC1B,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAgC,EAAE;QACpD,OAAO;YACL,GAAG,EAAE,CAAC,CAAC,MAAM;YACb,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC,CAAC,CAAC;IACL,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACrC,sBAAsB,CAAC,IAAI,CAAC;YAC1B,GAAG,EAAE,uBAAuB,GAAG,EAAE;YACjC,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,8BAA8B,GAClC,qBAAqB,IAAI,qBAAqB,CAAC,QAAQ,KAAK,YAAY,CAAC;IAE3E,kDAAkD;IAClD,IAAI,8BAA8B,EAAE;QAClC,MAAM,qBAAqB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAChE,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;QACH,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACxE,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,OAAO;YACL,QAAQ,EAAE,YAAY;YACtB,OAAO,EAAE,CAAC,GAAG,sBAAsB,EAAE,GAAG,qBAAqB,CAAC;SAC/D,CAAC;KACH;IAED,yDAAyD;IACzD,OAAO;QACL,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE,sBAAsB;KAChC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { getProp } from "../objects/get-prop";
2
+ import { canUseExportImageFlow } from "./_internal/canUseExportImageFlow";
3
+ import { getExportImageFormats } from "./_internal/format-fetchers/getExportImageFormats";
4
+ import { getAdditionalResourceIndex, isAdditionalResourceConfiguration, } from "./_internal/additional-resources/utils";
5
+ import { canUseHubDownloadApi } from "./canUseHubDownloadApi";
6
+ import { getDownloadConfiguration } from "./getDownloadConfiguration";
7
+ import { getHubDownloadApiFormats } from "./getHubDownloadApiFormats";
8
+ /**
9
+ * Gets available download formats / additional resources for the given entity in the order they have been configured.
10
+ * If a format has been configured to be hidden, it will not be included in the results.
11
+ *
12
+ * @param options options to refine / filter the results of the fetchDownloadFormats operation
13
+ * @returns The available download formats and additional resources
14
+ */
15
+ export function getDownloadFormats(options) {
16
+ const { entity, context } = options;
17
+ // get the base formats for the item
18
+ let baseFormats = [];
19
+ // TODO: use typescript to enforce a branch for each flow type
20
+ if (canUseHubDownloadApi(entity, context)) {
21
+ baseFormats = getHubDownloadApiFormats(entity);
22
+ }
23
+ else if (canUseExportImageFlow(entity)) {
24
+ baseFormats = getExportImageFormats(entity);
25
+ }
26
+ // add additional resource links as static formats
27
+ const additionalResources = getProp(entity, "extendedProps.additionalResources") || [];
28
+ const additionalFormats = additionalResources.map(toStaticFormat);
29
+ // Respect the order and visibility of the formats as configured for the entity
30
+ const downloadConfiguration = getDownloadConfiguration(entity);
31
+ return downloadConfiguration.formats.reduce((acc, format) => {
32
+ if (!format.hidden) {
33
+ let includedFormat;
34
+ if (isAdditionalResourceConfiguration(format)) {
35
+ const additionalResourceIndex = getAdditionalResourceIndex(format);
36
+ includedFormat = additionalFormats[additionalResourceIndex];
37
+ }
38
+ else {
39
+ baseFormats.forEach((baseFormat) => {
40
+ if (baseFormat.format === format.key) {
41
+ includedFormat = baseFormat;
42
+ }
43
+ });
44
+ }
45
+ acc.push(includedFormat);
46
+ }
47
+ return acc;
48
+ }, []);
49
+ }
50
+ function toStaticFormat(resource) {
51
+ return {
52
+ type: "static",
53
+ label: resource.name ||
54
+ (resource.isDataSource && `{{dataSource:translate}}`) || // if the additional resource is the datasource
55
+ `{{noTitle:translate}}`,
56
+ url: resource.url,
57
+ };
58
+ }
59
+ //# sourceMappingURL=getDownloadFormats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDownloadFormats.js","sourceRoot":"","sources":["../../../src/downloads/getDownloadFormats.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EACL,0BAA0B,EAC1B,iCAAiC,GAClC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAQtE;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAqC;IAErC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IACpC,oCAAoC;IACpC,IAAI,WAAW,GAA6B,EAAE,CAAC;IAC/C,8DAA8D;IAC9D,IAAI,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;QACzC,WAAW,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;KAChD;SAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;QACxC,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;KAC7C;IAED,kDAAkD;IAClD,MAAM,mBAAmB,GACvB,OAAO,CAAC,MAAM,EAAE,mCAAmC,CAAC,IAAI,EAAE,CAAC;IAC7D,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAElE,+EAA+E;IAC/E,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC/D,OAAO,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;QAC1D,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAClB,IAAI,cAAc,CAAC;YACnB,IAAI,iCAAiC,CAAC,MAAM,CAAC,EAAE;gBAC7C,MAAM,uBAAuB,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;gBACnE,cAAc,GAAG,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;aAC7D;iBAAM;gBACL,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;oBACjC,IAAI,UAAU,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,EAAE;wBACpC,cAAc,GAAG,UAAU,CAAC;qBAC7B;gBACH,CAAC,CAAC,CAAC;aACJ;YACD,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC1B;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,SAAS,cAAc,CACrB,QAAgC;IAEhC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,EACH,QAAQ,CAAC,IAAI;YACb,CAAC,QAAQ,CAAC,YAAY,IAAI,0BAA0B,CAAC,IAAI,+CAA+C;YACxG,uBAAuB;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;KAClB,CAAC;AACJ,CAAC"}
@@ -6,4 +6,6 @@ export * from "./canUseCreateReplica";
6
6
  export * from "./canUseHubDownloadSystem";
7
7
  export * from "./canUseHubDownloadApi";
8
8
  export * from "./getHubDownloadApiFormats";
9
+ export * from "./getDownloadConfiguration";
10
+ export * from "./getDownloadFormats";
9
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/downloads/index.ts"],"names":[],"mappings":"AAAA,cAAc,uCAAuC,CAAC;AACtD,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/downloads/index.ts"],"names":[],"mappings":"AAAA,cAAc,uCAAuC,CAAC;AACtD,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC"}
@@ -6,6 +6,8 @@ const getEditorConfig_1 = require("../core/schemas/getEditorConfig");
6
6
  const util_1 = require("../util");
7
7
  const edit_1 = require("./edit");
8
8
  const enrichEntity_1 = require("../core/enrichEntity");
9
+ const shouldShowDownloadsConfiguration_1 = require("./_internal/shouldShowDownloadsConfiguration");
10
+ const getDownloadConfigurationDisplayFormats_1 = require("../downloads/_internal/getDownloadConfigurationDisplayFormats");
9
11
  class HubContent extends HubItemEntity_1.HubItemEntity {
10
12
  constructor(content, context) {
11
13
  super(content, context);
@@ -84,6 +86,9 @@ class HubContent extends HubItemEntity_1.HubItemEntity {
84
86
  : util_1.cloneObject(this.entity);
85
87
  // 2. Apply transforms to relevant entity values so they
86
88
  // can be consumed by the editor
89
+ if (shouldShowDownloadsConfiguration_1.shouldShowDownloadsConfiguration(this.entity)) {
90
+ editor.downloadFormats = getDownloadConfigurationDisplayFormats_1.getDownloadConfigurationDisplayFormats(this.entity);
91
+ }
87
92
  return editor;
88
93
  }
89
94
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"HubContent.js","sourceRoot":"","sources":["../../../src/content/HubContent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HubContent.js","sourceRoot":"","sources":["../../../src/content/HubContent.ts"],"names":[],"mappings":"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"}
@@ -22,5 +22,10 @@ exports.ContentSchema = Object.assign(Object.assign({}, HubItemEntitySchema_1.Hu
22
22
  type: "boolean",
23
23
  enum: [true],
24
24
  },
25
+ }, downloadFormats: {
26
+ type: "array",
27
+ items: {
28
+ type: "object",
29
+ },
25
30
  } }) });
26
31
  //# sourceMappingURL=ContentSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContentSchema.js","sourceRoot":"","sources":["../../../../src/content/_internal/ContentSchema.ts"],"names":[],"mappings":";;;AACA,uFAAoF;AAGvE,QAAA,kBAAkB,GAAG;IAChC,kBAAkB;IAClB,sBAAsB;IACtB,yBAAyB;CACjB,CAAC;AAEX;;GAEG;AACU,QAAA,aAAa,GAAyB,gCAC9C,yCAAmB,KACtB,UAAU,kCACL,yCAAmB,CAAC,UAAU,KACjC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;SACf,EACD,uBAAuB,EAAE;YACvB,IAAI,EAAE,SAAS;SAChB,EACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;SACf,EACD,YAAY,EAAE;YACZ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,CAAC,IAAI,CAAC;aACb;SACF,MAEoB,CAAC"}
1
+ {"version":3,"file":"ContentSchema.js","sourceRoot":"","sources":["../../../../src/content/_internal/ContentSchema.ts"],"names":[],"mappings":";;;AACA,uFAAoF;AAGvE,QAAA,kBAAkB,GAAG;IAChC,kBAAkB;IAClB,sBAAsB;IACtB,yBAAyB;CACjB,CAAC;AAEX;;GAEG;AACU,QAAA,aAAa,GAAyB,gCAC9C,yCAAmB,KACtB,UAAU,kCACL,yCAAmB,CAAC,UAAU,KACjC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;SACf,EACD,uBAAuB,EAAE;YACvB,IAAI,EAAE,SAAS;SAChB,EACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;SACf,EACD,YAAY,EAAE;YACZ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,CAAC,IAAI,CAAC;aACb;SACF,EACD,eAAe,EAAE;YACf,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;aACf;SACF,MAEoB,CAAC"}
@@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildUiSchema = void 0;
4
4
  const types_1 = require("../../core/schemas/types");
5
5
  const checkPermission_1 = require("../../permissions/checkPermission");
6
- const hostedServiceUtils_1 = require("../hostedServiceUtils");
6
+ const getDownloadsSection_1 = require("./getDownloadsSection");
7
+ const shouldShowDownloadsConfiguration_1 = require("./shouldShowDownloadsConfiguration");
7
8
  /**
8
9
  * @private
9
10
  * constructs the complete settings uiSchema for Hub Editable Content.
@@ -81,28 +82,9 @@ exports.buildUiSchema = async (i18nScope, options, _context) => {
81
82
  elements: scheduleSectionElements,
82
83
  });
83
84
  }
84
- if (hostedServiceUtils_1.isHostedFeatureServiceMainEntity(options)) {
85
- uiSchema.elements.push({
86
- type: "Section",
87
- labelKey: `${i18nScope}.sections.downloads.label`,
88
- options: {
89
- helperText: {
90
- labelKey: `${i18nScope}.sections.downloads.helperText`,
91
- },
92
- },
93
- elements: [
94
- {
95
- labelKey: `${i18nScope}.fields.serverExtractCapability.label`,
96
- scope: "/properties/serverExtractCapability",
97
- type: "Control",
98
- options: {
99
- helperText: {
100
- labelKey: `${i18nScope}.fields.serverExtractCapability.helperText`,
101
- },
102
- },
103
- },
104
- ],
105
- });
85
+ if (shouldShowDownloadsConfiguration_1.shouldShowDownloadsConfiguration(options)) {
86
+ const downloadsSection = getDownloadsSection_1.getDownloadsSection(i18nScope, options);
87
+ uiSchema.elements.push(downloadsSection);
106
88
  }
107
89
  return uiSchema;
108
90
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ContentUiSchemaSettings.js","sourceRoot":"","sources":["../../../../src/content/_internal/ContentUiSchemaSettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContentUiSchemaSettings.js","sourceRoot":"","sources":["../../../../src/content/_internal/ContentUiSchemaSettings.ts"],"names":[],"mappings":";;;AAEA,oDAKkC;AAElC,uEAAoE;AACpE,+DAA4D;AAC5D,yFAAsF;AAEtF;;;;;GAKG;AACU,QAAA,aAAa,GAAG,KAAK,EAChC,SAAiB,EACjB,OAA4B,EAC5B,QAAwB,EACJ,EAAE;IACtB,MAAM,QAAQ,GAAc;QAC1B,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,EAAE;KACb,CAAC;IACF,IACE,iCAAe,CACb,yCAAyC,EACzC,QAAQ,EACR,OAAO,CACR,CAAC,MAAM,EACR;QACA,MAAM,sBAAsB,GAAqB;YAC/C,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,sBAAsB;YAC7B,QAAQ,EAAE,GAAG,SAAS,+BAA+B;YACrD,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,2BAA2B;gBACpC,QAAQ,EAAE,aAAa;gBACvB,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE;oBACN,EAAE,IAAI,EAAE,WAAW,EAAE;oBACrB,EAAE,IAAI,EAAE,OAAO,EAAE;oBACjB,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAClB,EAAE,IAAI,EAAE,SAAS,EAAE;oBACnB,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAClB;wBACE,IAAI,EAAE,QAAQ;wBACd,gBAAgB,EAAE,eAAe;wBACjC,gBAAgB,EAAE,KAAK,SAAS,sDAAsD;qBACvF;iBACF;aACF;SACF,CAAC;QAEF,MAAM,uBAAuB,GAAuB;YAClD,sBAAsB;SACvB,CAAC;QAEF,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE;YAC/B,8DAA8D;YAC9D,sBAAsB,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC/C,sBAAsB,CAAC,OAAO,CAAC,QAAQ,GAAG;gBACxC;oBACE,IAAI,EAAE,4BAAoB,CAAC,MAAM;oBACjC,OAAO,EAAE,QAAQ;oBACjB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,2BAA2B;oBACjC,QAAQ,EAAE,GAAG,SAAS,0CAA0C;oBAChE,QAAQ,EAAE,GAAG,SAAS,yCAAyC;oBAC/D,uBAAuB,EAAE,IAAI;oBAC7B,UAAU,EAAE,IAAI;iBACjB;aACoB,CAAC;SACzB;aAAM;YACL,oEAAoE;YACpE,uBAAuB,CAAC,IAAI,CAAC;gBAC3B,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,0BAA0B;gBACjC,OAAO,EAAE;oBACP,OAAO,EAAE,6BAA6B;oBACtC,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE;wBACN,KAAK,SAAS,sDAAsD;qBACrE;oBACD,YAAY,EAAE;wBACZ,KAAK,SAAS,4DAA4D;qBAC3E;iBACF;aACF,CAAC,CAAC;SACJ;QAED,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,GAAG,SAAS,0BAA0B;YAChD,QAAQ,EAAE,uBAAuB;SAClC,CAAC,CAAC;KACJ;IAED,IAAI,mEAAgC,CAAC,OAA8B,CAAC,EAAE;QACpE,MAAM,gBAAgB,GAAG,yCAAmB,CAC1C,SAAS,EACT,OAA8B,CAC/B,CAAC;QACF,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;KAC1C;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
@@ -107,6 +107,7 @@ function getBaseExtendedProps(item, enrichments, requestOptions) {
107
107
  kind: null,
108
108
  metadata: enrichments.metadata,
109
109
  additionalResources: internalContentUtils_1.getAdditionalResources(item, enrichments.metadata, requestOptions),
110
+ downloads: objects_1.getProp(item, "properties.downloads"),
110
111
  };
111
112
  }
112
113
  //# sourceMappingURL=computeProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/content/_internal/computeProps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/content/_internal/computeProps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getDownloadsSection = void 0;
4
+ const types_1 = require("../../core/schemas/types");
5
+ const getDownloadFlow_1 = require("../../downloads/_internal/getDownloadFlow");
6
+ const hostedServiceUtils_1 = require("../hostedServiceUtils");
7
+ /**
8
+ * @private
9
+ * Constructs the downloads section for an IHubEditableContent entity.
10
+ * Due to numerous product requirements, the content and state of this section
11
+ * can vary greatly depending on the entity type and configuration.
12
+ *
13
+ * @param i18nScope translation scope
14
+ * @param entity entity to get the downloads section for
15
+ * @returns ui schema elements for the downloads section
16
+ */
17
+ function getDownloadsSection(i18nScope, entity) {
18
+ const downloadSectionElements = [];
19
+ if (shouldShowExtractToggleElement(entity)) {
20
+ const extractToggleElement = getExtractToggleElement(i18nScope);
21
+ downloadSectionElements.push(extractToggleElement);
22
+ }
23
+ const downloadFormatsElement = getDownloadFormatsElement(i18nScope, entity);
24
+ downloadSectionElements.push(downloadFormatsElement);
25
+ return {
26
+ type: "Section",
27
+ labelKey: `${i18nScope}.sections.downloads.label`,
28
+ options: {},
29
+ elements: downloadSectionElements,
30
+ };
31
+ }
32
+ exports.getDownloadsSection = getDownloadsSection;
33
+ /**
34
+ * NOTE: we only show the extract toggle for main entities of a hosted feature service
35
+ * since we can guarantee that the user will have the necessary permissions to enable
36
+ * extract capabilities on the service.
37
+ */
38
+ function shouldShowExtractToggleElement(entity) {
39
+ return hostedServiceUtils_1.isHostedFeatureServiceMainEntity(entity);
40
+ }
41
+ function getExtractToggleElement(i18nScope) {
42
+ return {
43
+ labelKey: `${i18nScope}.fields.serverExtractCapability.label`,
44
+ scope: "/properties/serverExtractCapability",
45
+ type: "Control",
46
+ options: {
47
+ helperText: {
48
+ labelKey: `${i18nScope}.fields.serverExtractCapability.helperText`,
49
+ },
50
+ messages: [
51
+ {
52
+ type: types_1.UiSchemaMessageTypes.custom,
53
+ display: "notice",
54
+ kind: "warning",
55
+ icon: "exclamation-mark-triangle",
56
+ titleKey: `${i18nScope}.fields.serverExtractCapability.noFormatConfigurationNotice.title`,
57
+ labelKey: `${i18nScope}.fields.serverExtractCapability.noFormatConfigurationNotice.body`,
58
+ allowShowBeforeInteract: true,
59
+ conditions: [
60
+ {
61
+ scope: "/properties/serverExtractCapability",
62
+ schema: {
63
+ const: false,
64
+ },
65
+ },
66
+ ],
67
+ },
68
+ ],
69
+ },
70
+ };
71
+ }
72
+ /**
73
+ * Returns the ui schema element for the download formats field. Populating this field
74
+ * is a complex process that depends on the entity type, configuration, and product requirements.
75
+ */
76
+ function getDownloadFormatsElement(i18nScope, entity) {
77
+ const result = {
78
+ labelKey: `${i18nScope}.fields.downloadFormats.label`,
79
+ scope: "/properties/downloadFormats",
80
+ type: "Control",
81
+ options: {
82
+ control: "hub-field-input-list",
83
+ helperText: {
84
+ labelKey: `${i18nScope}.fields.downloadFormats.helperText`,
85
+ },
86
+ allowReorder: true,
87
+ allowHide: true,
88
+ },
89
+ rules: [],
90
+ };
91
+ // Product has asked that if the extract capability toggle is present, we should disable
92
+ // the download formats control when the toggle is off. We hope this will encourage more
93
+ // users to opt into the hosted downloads experience.
94
+ if (shouldShowExtractToggleElement(entity)) {
95
+ result.rules.push({
96
+ effect: types_1.UiSchemaRuleEffects.DISABLE,
97
+ conditions: [
98
+ {
99
+ scope: "/properties/serverExtractCapability",
100
+ schema: {
101
+ const: false,
102
+ },
103
+ },
104
+ ],
105
+ });
106
+ // Product had us add this branch in to encourage users to make their content / service downloadable.
107
+ // This branch should run when the entity represents a service that cannot be downloaded and extract
108
+ // cannot be enabled. The control will list all the formats that _could_ be available if the user
109
+ // were to make the necessary changes
110
+ }
111
+ else if (shouldDisableDownloadFormatsControl(entity)) {
112
+ result.rules.push({
113
+ effect: types_1.UiSchemaRuleEffects.DISABLE,
114
+ conditions: [true],
115
+ });
116
+ result.options.messages = [
117
+ {
118
+ type: types_1.UiSchemaMessageTypes.custom,
119
+ display: "notice",
120
+ kind: "warning",
121
+ icon: "exclamation-mark-triangle",
122
+ titleKey: `${i18nScope}.fields.downloadFormats.downloadsUnavailableNotice.title`,
123
+ labelKey: `${i18nScope}.fields.downloadFormats.downloadsUnavailableNotice.body`,
124
+ allowShowBeforeInteract: true,
125
+ alwaysShow: true,
126
+ },
127
+ ];
128
+ }
129
+ return result;
130
+ }
131
+ /**
132
+ * Returns true when an entity represents a item/service that
133
+ * cannot be downloaded with its current configuration.
134
+ */
135
+ function shouldDisableDownloadFormatsControl(entity) {
136
+ const downloadFlow = getDownloadFlow_1.getDownloadFlow(entity);
137
+ return !downloadFlow;
138
+ }
139
+ //# sourceMappingURL=getDownloadsSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDownloadsSection.js","sourceRoot":"","sources":["../../../../src/content/_internal/getDownloadsSection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.shouldShowDownloadsConfiguration = void 0;
4
+ const canUseExportImageFlow_1 = require("../../downloads/_internal/canUseExportImageFlow");
5
+ const get_prop_1 = require("../../objects/get-prop");
6
+ /**
7
+ * @private
8
+ * Determines if the downloads configuration should be shown for an entity.
9
+ *
10
+ * NOTE: product has asked that the download configuration be shown for entities that _can_
11
+ * be downloaded, as well as certain entities that _cannot_ be downloaded currently, but
12
+ * could be downloaded with a change in item / service settings.
13
+ *
14
+ * @param entity entity to check
15
+ * @returns whether downloads configuration should be shown
16
+ */
17
+ function shouldShowDownloadsConfiguration(entity) {
18
+ // NOTE: At this time, product has asked that we hide the downloads configuration
19
+ // for multi-layer service entities.
20
+ const isReferenceLayerEntity = ["Feature Service", "Map Service"].includes(entity.type) &&
21
+ /\/\d+$/.test(entity.url);
22
+ const isSingleLayerEntity = get_prop_1.getProp(entity, "extendedProps.server.layers.length") === 1;
23
+ const isDownloadableImageService = canUseExportImageFlow_1.canUseExportImageFlow(entity);
24
+ return (isReferenceLayerEntity || isSingleLayerEntity || isDownloadableImageService);
25
+ }
26
+ exports.shouldShowDownloadsConfiguration = shouldShowDownloadsConfiguration;
27
+ //# sourceMappingURL=shouldShowDownloadsConfiguration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shouldShowDownloadsConfiguration.js","sourceRoot":"","sources":["../../../../src/content/_internal/shouldShowDownloadsConfiguration.ts"],"names":[],"mappings":";;;AACA,2FAAwF;AACxF,qDAAiD;AAEjD;;;;;;;;;;GAUG;AACH,SAAgB,gCAAgC,CAC9C,MAA2B;IAE3B,iFAAiF;IACjF,oCAAoC;IACpC,MAAM,sBAAsB,GAC1B,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;QACxD,QAAQ,CAAC,IAAI,CAAE,MAA8B,CAAC,GAAG,CAAC,CAAC;IACrD,MAAM,mBAAmB,GACvB,kBAAO,CAAC,MAAM,EAAE,oCAAoC,CAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,0BAA0B,GAAG,6CAAqB,CAAC,MAAM,CAAC,CAAC;IAEjE,OAAO,CACL,sBAAsB,IAAI,mBAAmB,IAAI,0BAA0B,CAC5E,CAAC;AACJ,CAAC;AAfD,4EAeC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.editorToContent = exports.deleteContent = exports.updateContent = exports.createContent = void 0;
4
+ const tslib_1 = require("tslib");
4
5
  const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
5
6
  // Note - we separate these imports so we can cleanly spy on things in tests
6
7
  const models_1 = require("../models");
@@ -15,6 +16,9 @@ const hostedServiceUtils_1 = require("./hostedServiceUtils");
15
16
  const manageSchedule_1 = require("./manageSchedule");
16
17
  const internalContentUtils_1 = require("./_internal/internalContentUtils");
17
18
  const objects_1 = require("../objects");
19
+ const getDownloadFlow_1 = require("../downloads/_internal/getDownloadFlow");
20
+ const getDownloadConfiguration_1 = require("../downloads/getDownloadConfiguration");
21
+ const shouldShowDownloadsConfiguration_1 = require("./_internal/shouldShowDownloadsConfiguration");
18
22
  // TODO: move this to defaults?
19
23
  const DEFAULT_CONTENT_MODEL = {
20
24
  item: {
@@ -84,6 +88,22 @@ async function updateContent(content, requestOptions) {
84
88
  // we are not attempting to handle "concurrent edit" conflict resolution
85
89
  // but this is where we would apply that sort of logic
86
90
  const modelToUpdate = mapper.entityToStore(content, model);
91
+ // NOTE: Product has asked that we display a _disabled_ downloads configuration for
92
+ // certain types of entities, but not allow users to change any settings. The following
93
+ // checks are in place to make sure we don't accidentally save configurations in
94
+ // situations where we shouldn't
95
+ const downloadFlow = getDownloadFlow_1.getDownloadFlow(content);
96
+ const updatedFormats = objects_1.getProp(content, "extendedProps.downloads.formats");
97
+ const isMainEntityExtractDisabled = hostedServiceUtils_1.isHostedFeatureServiceMainEntity(content) &&
98
+ downloadFlow !== "createReplica";
99
+ const wasDownloadsConfigurationDisplayed = shouldShowDownloadsConfiguration_1.shouldShowDownloadsConfiguration(content);
100
+ if (wasDownloadsConfigurationDisplayed && // whether the downloads configuration was displayed
101
+ downloadFlow && // whether the entity can be downloaded
102
+ updatedFormats && // whether download format configuration is present
103
+ !isMainEntityExtractDisabled) {
104
+ const updatedDownloadsConfiguration = util_1.cloneObject(content.extendedProps.downloads);
105
+ objects_1.setProp("item.properties.downloads", updatedDownloadsConfiguration, modelToUpdate, true);
106
+ }
87
107
  // TODO: if we have resources disconnect them from the model for now.
88
108
  // if (modelToUpdate.resources) {
89
109
  // resources = configureBaseResources(
@@ -152,8 +172,25 @@ exports.deleteContent = deleteContent;
152
172
  */
153
173
  function editorToContent(editor, portal) {
154
174
  var _a;
155
- // clone into a IHubContentEditor
156
- const content = util_1.cloneObject(editor);
175
+ // Clone the editor to prevent mutation
176
+ const clonedEditor = util_1.cloneObject(editor);
177
+ // Remove unneeded properties
178
+ delete clonedEditor.downloadFormats;
179
+ // Cast the editor to a content
180
+ const content = util_1.cloneObject(clonedEditor);
181
+ // Conditionally set the downloads configuration. We only want
182
+ // to set the configuration if the entity is actually downloadable
183
+ const downloadFlow = getDownloadFlow_1.getDownloadFlow(content);
184
+ if (downloadFlow && editor.downloadFormats) {
185
+ const downloadConfiguration = getDownloadConfiguration_1.getDownloadConfiguration(content);
186
+ // Convert the download format display objects to the stored format
187
+ const forStorage = editor.downloadFormats.map((format) => {
188
+ const { label } = format, rest = tslib_1.__rest(format, ["label"]);
189
+ return rest;
190
+ });
191
+ downloadConfiguration.formats = forStorage;
192
+ objects_1.setProp("extendedProps.downloads", downloadConfiguration, content, true);
193
+ }
157
194
  // copy the location extent up one level
158
195
  content.extent = (_a = editor.location) === null || _a === void 0 ? void 0 : _a.extent;
159
196
  return content;
@@ -1 +1 @@
1
- {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/content/edit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/content/edit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAdditionalResourceIndex = exports.isAdditionalResourceConfiguration = void 0;
4
+ /**
5
+ * @private
6
+ * Determines if the given download format configuration is for
7
+ * an additional resource.
8
+ *
9
+ * @param config IDownloadFormatConfiguration
10
+ * @returns boolean
11
+ */
12
+ function isAdditionalResourceConfiguration(config) {
13
+ return config.key.startsWith("additionalResource::");
14
+ }
15
+ exports.isAdditionalResourceConfiguration = isAdditionalResourceConfiguration;
16
+ /**
17
+ * @private
18
+ * Get's the index of the additional resource from the given
19
+ * download format configuration.
20
+ *
21
+ * @param config IDownloadFormatConfiguration
22
+ * @returns number - The index of the additional resource
23
+ */
24
+ function getAdditionalResourceIndex(config) {
25
+ return parseInt(config.key.split("::")[1], 10);
26
+ }
27
+ exports.getAdditionalResourceIndex = getAdditionalResourceIndex;
28
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/downloads/_internal/additional-resources/utils.ts"],"names":[],"mappings":";;;AAEA;;;;;;;GAOG;AACH,SAAgB,iCAAiC,CAC/C,MAAoC;IAEpC,OAAO,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;AACvD,CAAC;AAJD,8EAIC;AAED;;;;;;;GAOG;AACH,SAAgB,0BAA0B,CACxC,MAAoC;IAEpC,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC;AAJD,gEAIC"}