@tridion-sites/extensions 3.1.0 → 3.2.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.
package/CHANGELOG.md CHANGED
@@ -1,6 +1,24 @@
1
1
  # @tridion-sites/extensions
2
2
 
3
- ## 4.0.0
3
+ ## 3.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - edc11cc: Add proccessing state for Ok button of the Modal footer component
8
+ - 3512d64: Add new accessibility variables and colors
9
+ - 4788821: Add info menu extension point
10
+ - e99c6e4: Add AccessControl extension point and it's dependencies.
11
+ - a4fda02: Add `revertProcess` activitiesExplorerActionId
12
+ - afdf8b0: deprecate `onUpdate` in favor of `updateItem`
13
+ - cf7b3ba: Add `finishprocess` activitiesExplorerActionId
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [c8abfb1], [482b9d1], [bc98a17], [a7a8cd6], [68fd3dc], [77cdc6c], [a4fda02], [cf7b3ba]
18
+ - @tridion-sites/models@2.2.0
19
+ - @tridion-sites/open-api-client@4.2.0
20
+
21
+ ## 3.1.0
4
22
 
5
23
  ### Minor Changes
6
24
 
package/dist/index.d.ts CHANGED
@@ -63,6 +63,22 @@ import type { UserProfile } from '@tridion-sites/models';
63
63
  import type { VersionedItem } from '@tridion-sites/models';
64
64
  import type { XhtmlFieldDefinition } from '@tridion-sites/models';
65
65
 
66
+ /**
67
+ * @public
68
+ */
69
+ export declare interface AccessControlExtensions {
70
+ commandRights: CommandRightExtension[];
71
+ }
72
+
73
+ /**
74
+ * @public
75
+ */
76
+ export declare class AccessControlExtensionsBuilder {
77
+ private _commandRights;
78
+ addCommandRight: (commandRightExtension: CommandRightExtension) => this;
79
+ build: () => AccessControlExtensions;
80
+ }
81
+
66
82
  /**
67
83
  * Accessibility-related props
68
84
  * @public
@@ -228,6 +244,7 @@ export declare type ActivitiesExplorerActionGroupId = ValuesOfArray<typeof activ
228
244
  * @public
229
245
  */
230
246
  export declare const activitiesExplorerActionGroupId: {
247
+ processInstance: "processInstance";
231
248
  exporting: "exporting";
232
249
  refreshing: "refreshing";
233
250
  workflow: "workflow";
@@ -236,7 +253,7 @@ export declare const activitiesExplorerActionGroupId: {
236
253
  /**
237
254
  * @public
238
255
  */
239
- export declare const activitiesExplorerActionGroupIds: readonly ["exporting", "refreshing", "workflow"];
256
+ export declare const activitiesExplorerActionGroupIds: readonly ["exporting", "refreshing", "workflow", "processInstance"];
240
257
 
241
258
  /**
242
259
  * @public
@@ -252,15 +269,17 @@ export declare const activitiesExplorerActionId: {
252
269
  assignActivity: "assignActivity";
253
270
  startActivity: "startActivity";
254
271
  finishActivity: "finishActivity";
272
+ finishProcess: "finishProcess";
255
273
  restartActivity: "restartActivity";
256
274
  export: "export";
257
275
  refresh: "refresh";
276
+ revertProcess: "revertProcess";
258
277
  };
259
278
 
260
279
  /**
261
280
  * @public
262
281
  */
263
- export declare const activitiesExplorerActionIds: readonly ["export", "refresh", "startActivity", "finishActivity", "restartActivity", "assignActivity"];
282
+ export declare const activitiesExplorerActionIds: readonly ["export", "refresh", "startActivity", "finishActivity", "restartActivity", "assignActivity", "revertProcess", "finishProcess"];
264
283
 
265
284
  /**
266
285
  * @internal
@@ -608,7 +627,7 @@ export declare interface AriaProps {
608
627
  /**
609
628
  * @public
610
629
  */
611
- export declare type AriaRole = 'button' | 'columnheader' | 'combobox' | 'grid' | 'gridcell' | 'group' | 'list' | 'listbox' | 'listitem' | 'menu' | 'menubar' | 'menuitem' | 'none' | 'option' | 'radiogroup' | 'row' | 'rowgroup' | 'rowheader' | 'tree' | 'treeitem';
630
+ export declare type AriaRole = 'alert' | 'button' | 'columnheader' | 'combobox' | 'grid' | 'gridcell' | 'group' | 'list' | 'listbox' | 'listitem' | 'menu' | 'menubar' | 'menuitem' | 'none' | 'option' | 'radiogroup' | 'row' | 'rowgroup' | 'rowheader' | 'tree' | 'treeitem';
612
631
 
613
632
  /**
614
633
  * @public
@@ -978,6 +997,7 @@ export declare interface ColorPalette {
978
997
  brandPrimary: string;
979
998
  brandAccessible: string;
980
999
  brandDark: string;
1000
+ brand140: string;
981
1001
  gray0: string;
982
1002
  gray10: string;
983
1003
  gray20: string;
@@ -991,6 +1011,7 @@ export declare interface ColorPalette {
991
1011
  red50: string;
992
1012
  red100: string;
993
1013
  red120: string;
1014
+ red140: string;
994
1015
  orange50: string;
995
1016
  orange100: string;
996
1017
  magenta50: string;
@@ -1022,6 +1043,41 @@ declare interface ColorProps_2 {
1022
1043
  color?: Color_2 | 'inherit';
1023
1044
  }
1024
1045
 
1046
+ /**
1047
+ * @public
1048
+ */
1049
+ export declare type CommandRightExtension = () => CommandRightExtensionConfiguration;
1050
+
1051
+ /**
1052
+ * @public
1053
+ */
1054
+ export declare interface CommandRightExtensionConfiguration {
1055
+ commandId: string;
1056
+ useCommand: CommandRightExtensionHook;
1057
+ }
1058
+
1059
+ /**
1060
+ * @public
1061
+ */
1062
+ export declare type CommandRightExtensionHook = () => CommandRightExtensionHookResult;
1063
+
1064
+ /**
1065
+ * @public
1066
+ */
1067
+ export declare interface CommandRightExtensionHookResult {
1068
+ /**
1069
+ * Callback will be executed for each item passed to the command.
1070
+ * @param item - The item to check.
1071
+ * @returns Whether the command is applicable to the item.
1072
+ */
1073
+ isItemApplicable?: (item: IdentifiableObject) => boolean;
1074
+ /**
1075
+ * Whether the command is available regardless of the items.
1076
+ * This will not override `isAvailable: false` from built-in command.
1077
+ */
1078
+ isCommandAvailable?: boolean;
1079
+ }
1080
+
1025
1081
  /**
1026
1082
  * @internal
1027
1083
  */
@@ -2146,7 +2202,11 @@ export declare interface EditorHookResult {
2146
2202
  */
2147
2203
  isEditing: boolean;
2148
2204
  /**
2149
- * Callback to update internal editor state.
2205
+ * Callback to update item in the editor state.
2206
+ */
2207
+ updateItem: (item: Bundle | KeywordCategory | Component | MultimediaComponent | Folder | Keyword | Page | StructureGroup) => void;
2208
+ /**
2209
+ * @deprecated have been renamed to `updateItem`.
2150
2210
  */
2151
2211
  onUpdate: (item: Bundle | KeywordCategory | Component | MultimediaComponent | Folder | Keyword | Page | StructureGroup) => void;
2152
2212
  }
@@ -2220,6 +2280,10 @@ export declare class ExtensionBuilder {
2220
2280
  * Provides a mechanism for customizing Publishing Queue Explorer.
2221
2281
  */
2222
2282
  readonly publishingQueueExplorer: PublishingQueueExplorerExtensionsBuilder;
2283
+ /**
2284
+ * Provides a mechanism for customizing Access Control.
2285
+ */
2286
+ readonly accessControl: AccessControlExtensionsBuilder;
2223
2287
  build: () => ExtensionPoints;
2224
2288
  }
2225
2289
 
@@ -2250,6 +2314,7 @@ export declare interface ExtensionPoints {
2250
2314
  activitiesExplorer: ActivitiesExplorerExtensions;
2251
2315
  translations: TranslationExtensions;
2252
2316
  publishingQueueExplorer: PublishingQueueExplorerExtensions;
2317
+ accessControl: AccessControlExtensions;
2253
2318
  }
2254
2319
 
2255
2320
  /**
@@ -2669,6 +2734,7 @@ export declare const getZIndex: ZIndexGetter;
2669
2734
  */
2670
2735
  export declare interface HeaderExtensions {
2671
2736
  navigation: NavigationExtensions;
2737
+ infoMenu: InfoMenuExtensions;
2672
2738
  }
2673
2739
 
2674
2740
  /**
@@ -2679,6 +2745,10 @@ export declare class HeaderExtensionsBuilder {
2679
2745
  * Provides a mechanism for customizing navigation items.
2680
2746
  */
2681
2747
  readonly navigation: NavigationExtensionsBuilder;
2748
+ /**
2749
+ * Provides a mechanism for customizing the configuration of info menu items.
2750
+ */
2751
+ readonly infoMenu: InfoMenuExtensionsBuilder;
2682
2752
  build: () => HeaderExtensions;
2683
2753
  }
2684
2754
 
@@ -2718,6 +2788,85 @@ export declare interface IconProps extends TooltipProps, SpaceProps, SizeProps,
2718
2788
  declare interface IconProps_2 extends SvgProps, Partial<IconDefaultProps> {
2719
2789
  }
2720
2790
 
2791
+ /**
2792
+ * @public
2793
+ */
2794
+ export declare type InfoMenuExtension = () => InfoMenuExtensionConfiguration;
2795
+
2796
+ /**
2797
+ * @public
2798
+ */
2799
+ export declare interface InfoMenuExtensionConfiguration {
2800
+ readonly id: string;
2801
+ readonly useInfoMenuItem: InfoMenuItemHook;
2802
+ }
2803
+
2804
+ /**
2805
+ * @public
2806
+ */
2807
+ export declare interface InfoMenuExtensions {
2808
+ items: ReadonlyArray<InfoMenuExtension>;
2809
+ config: ReadonlyArray<ListBuilderConfigurationExtension<string>>;
2810
+ }
2811
+
2812
+ /**
2813
+ * @public
2814
+ */
2815
+ export declare class InfoMenuExtensionsBuilder {
2816
+ private _infoMenuExtensions;
2817
+ /**
2818
+ * Provides a mechanism for customizing the configuration of info menu items.
2819
+ */
2820
+ readonly config: ListBuilder<string>;
2821
+ /**
2822
+ * Registers a new info menu item.
2823
+ *
2824
+ * @remarks
2825
+ * This method only registers the info menu item and does not automatically make it visible in the application.
2826
+ * To add the info menu item to the application, use {@link InfoMenuExtensionsBuilder.config}.
2827
+ *
2828
+ * @param item - info menu item to be registered
2829
+ */
2830
+ register: (item: InfoMenuExtension) => this;
2831
+ build: () => InfoMenuExtensions;
2832
+ }
2833
+
2834
+ /**
2835
+ * @public
2836
+ */
2837
+ export declare type InfoMenuItemHook = () => InfoMenuItemHookResult;
2838
+
2839
+ /**
2840
+ * @public
2841
+ */
2842
+ export declare type InfoMenuItemHookResult = MenuItem;
2843
+
2844
+ /**
2845
+ * Type represents ID of a built-in info menu item.
2846
+ *
2847
+ * @public
2848
+ */
2849
+ export declare type InfoMenuItemId = ValuesOfArray<typeof infoMenuItemIds>;
2850
+
2851
+ /**
2852
+ * All available built-in info menu item IDs.
2853
+ *
2854
+ * @public
2855
+ */
2856
+ export declare const infoMenuItemId: {
2857
+ documentation: "documentation";
2858
+ classicUI: "classicUI";
2859
+ accessManagement: "accessManagement";
2860
+ about: "about";
2861
+ };
2862
+
2863
+ /**
2864
+ * List of all built-in info menu item IDs.
2865
+ *
2866
+ * @public
2867
+ */
2868
+ export declare const infoMenuItemIds: readonly ["documentation", "classicUI", "accessManagement", "about"];
2869
+
2721
2870
  /**
2722
2871
  * @public
2723
2872
  */
@@ -2909,6 +3058,60 @@ export declare interface ItemClassifiedItemsQueryProps {
2909
3058
  resultLimit?: number;
2910
3059
  }
2911
3060
 
3061
+ /**
3062
+ * @public
3063
+ */
3064
+ export declare type ItemCommandId = ValuesOfArray<typeof itemCommandIds>;
3065
+
3066
+ /**
3067
+ * @public
3068
+ */
3069
+ export declare const itemCommandId: {
3070
+ startActivity: "startActivity";
3071
+ finishActivity: "finishActivity";
3072
+ addParentPublication: "addParentPublication";
3073
+ addSelectedItemsToBundle: "addSelectedItemsToBundle";
3074
+ addToBundle: "addToBundle";
3075
+ addToFavorites: "addToFavorites";
3076
+ finishEditing: "finishEditing";
3077
+ removeFromBundle: "removeFromBundle";
3078
+ removeFromFavorites: "removeFromFavorites";
3079
+ assignActivities: "assignActivities";
3080
+ autoClassifyItems: "autoClassifyItems";
3081
+ cloneTranslationJobs: "cloneTranslationJobs";
3082
+ createChildPublication: "createChildPublication";
3083
+ deleteItems: "deleteItems";
3084
+ deleteTranslationJobs: "deleteTranslationJobs";
3085
+ demoteItems: "demoteItems";
3086
+ exportItems: "exportItems";
3087
+ finishProcesses: "finishProcesses";
3088
+ localizeItems: "localizeItems";
3089
+ openItemsInEditor: "openItemsInEditor";
3090
+ openTranslationJob: "openTranslationJob";
3091
+ promoteItems: "promoteItems";
3092
+ publishItems: "publishItems";
3093
+ redoPublishTransactions: "redoPublishTransactions";
3094
+ removePublicationFromParents: "removePublicationFromParents";
3095
+ removeItemsFromTranslationJob: "removeItemsFromTranslationJob";
3096
+ restartActivities: "restartActivities";
3097
+ retryTranslationJob: "retryTranslationJob";
3098
+ revertItems: "revertItems";
3099
+ revertProcesses: "revertProcesses";
3100
+ rollbackItem: "rollbackItem";
3101
+ sendForTranslation: "sendForTranslation";
3102
+ startBundleWorkflow: "startBundleWorkflow";
3103
+ translateItems: "translateItems";
3104
+ unlocalizeItems: "unlocalizeItems";
3105
+ unpublishItems: "unpublishItems";
3106
+ updateParentPublicationPriority: "updateParentPublicationPriority";
3107
+ viewInExplorer: "viewInExplorer";
3108
+ };
3109
+
3110
+ /**
3111
+ * @public
3112
+ */
3113
+ export declare const itemCommandIds: readonly ["addParentPublication", "addSelectedItemsToBundle", "addToBundle", "addToFavorites", "assignActivities", "autoClassifyItems", "cloneTranslationJobs", "createChildPublication", "deleteItems", "deleteTranslationJobs", "demoteItems", "exportItems", "finishActivity", "finishEditing", "finishProcesses", "localizeItems", "openItemsInEditor", "openTranslationJob", "promoteItems", "publishItems", "redoPublishTransactions", "removeFromBundle", "removeFromFavorites", "removePublicationFromParents", "removeItemsFromTranslationJob", "restartActivities", "retryTranslationJob", "revertItems", "revertProcesses", "rollbackItem", "sendForTranslation", "startActivity", "startBundleWorkflow", "translateItems", "unlocalizeItems", "unpublishItems", "updateParentPublicationPriority", "viewInExplorer"];
3114
+
2912
3115
  /**
2913
3116
  * @public
2914
3117
  */
@@ -3283,6 +3486,17 @@ export declare interface LocalizeItemsRequest {
3283
3486
  */
3284
3487
  export declare type MainAxisAlignment = 'start' | 'center' | 'end' | 'space-between' | 'space-around' | 'space-evenly' | 'stretch';
3285
3488
 
3489
+ /**
3490
+ * @public
3491
+ */
3492
+ export declare interface MenuItem {
3493
+ readonly title: string;
3494
+ readonly tooltip?: string;
3495
+ readonly icon: ReactNode;
3496
+ readonly onClick: () => void;
3497
+ readonly isAvailable: boolean;
3498
+ }
3499
+
3286
3500
  /**
3287
3501
  * A component to render Content of a Modal
3288
3502
  *
@@ -3341,6 +3555,10 @@ export declare interface ModalFooterComponentProps {
3341
3555
  * Boolean that indicates disabled state of the Ok button.
3342
3556
  */
3343
3557
  isOkButtonDisabled?: boolean;
3558
+ /**
3559
+ * Boolean that indicates processing state of the Ok button.
3560
+ */
3561
+ isOkButtonProcessing?: boolean;
3344
3562
  /**
3345
3563
  * Label for the Ok button of the Modal.
3346
3564
  */
@@ -3733,12 +3951,13 @@ export declare const navigationItemId: {
3733
3951
  activitiesExplorer: "activitiesExplorer";
3734
3952
  contentExplorer: "contentExplorer";
3735
3953
  publishingQueueExplorer: "publishingQueueExplorer";
3954
+ translationsExplorer: "translationsExplorer";
3736
3955
  };
3737
3956
 
3738
3957
  /**
3739
3958
  * @public
3740
3959
  */
3741
- export declare const navigationItemIds: readonly ["activitiesExplorer", "contentExplorer", "publishingQueueExplorer"];
3960
+ export declare const navigationItemIds: readonly ["activitiesExplorer", "contentExplorer", "publishingQueueExplorer", "translationsExplorer"];
3742
3961
 
3743
3962
  /**
3744
3963
  * @public
@@ -4066,6 +4285,7 @@ declare const palette: {
4066
4285
  brandPrimary: string;
4067
4286
  brandAccessible: string;
4068
4287
  brandDark: string;
4288
+ brand140: string;
4069
4289
  gray0: string;
4070
4290
  gray10: string;
4071
4291
  gray20: string;
@@ -4079,6 +4299,7 @@ declare const palette: {
4079
4299
  red50: string;
4080
4300
  red100: string;
4081
4301
  red120: string;
4302
+ red140: string;
4082
4303
  orange50: string;
4083
4304
  orange100: string;
4084
4305
  magenta50: string;
package/dist/index.js CHANGED
@@ -570,6 +570,8 @@ const activitiesExplorerActionIds = [
570
570
  'finishActivity',
571
571
  'restartActivity',
572
572
  'assignActivity',
573
+ 'revertProcess',
574
+ 'finishProcess',
573
575
  ];
574
576
  /**
575
577
  * All built-in action IDs available in Activities Explorer.
@@ -580,7 +582,7 @@ const activitiesExplorerActionId = createEnumObject(activitiesExplorerActionIds)
580
582
  /**
581
583
  * @public
582
584
  */
583
- const activitiesExplorerActionGroupIds = ['exporting', 'refreshing', 'workflow'];
585
+ const activitiesExplorerActionGroupIds = ['exporting', 'refreshing', 'workflow', 'processInstance'];
584
586
  /**
585
587
  * All built-in action group IDs available in Activities Explorer.
586
588
  *
@@ -1035,6 +1037,87 @@ class ContentExplorerExtensionsBuilder {
1035
1037
  }
1036
1038
  }
1037
1039
 
1040
+ /**
1041
+ * @public
1042
+ */
1043
+ class AccessControlExtensionsBuilder {
1044
+ constructor() {
1045
+ Object.defineProperty(this, "_commandRights", {
1046
+ enumerable: true,
1047
+ configurable: true,
1048
+ writable: true,
1049
+ value: []
1050
+ });
1051
+ Object.defineProperty(this, "addCommandRight", {
1052
+ enumerable: true,
1053
+ configurable: true,
1054
+ writable: true,
1055
+ value: (commandRightExtension) => {
1056
+ this._commandRights.push(commandRightExtension);
1057
+ return this;
1058
+ }
1059
+ });
1060
+ Object.defineProperty(this, "build", {
1061
+ enumerable: true,
1062
+ configurable: true,
1063
+ writable: true,
1064
+ value: () => {
1065
+ return {
1066
+ commandRights: this._commandRights,
1067
+ };
1068
+ }
1069
+ });
1070
+ }
1071
+ }
1072
+
1073
+ /**
1074
+ * @public
1075
+ */
1076
+ const itemCommandIds = [
1077
+ 'addParentPublication',
1078
+ 'addSelectedItemsToBundle',
1079
+ 'addToBundle',
1080
+ 'addToFavorites',
1081
+ 'assignActivities',
1082
+ 'autoClassifyItems',
1083
+ 'cloneTranslationJobs',
1084
+ 'createChildPublication',
1085
+ 'deleteItems',
1086
+ 'deleteTranslationJobs',
1087
+ 'demoteItems',
1088
+ 'exportItems',
1089
+ 'finishActivity',
1090
+ 'finishEditing',
1091
+ 'finishProcesses',
1092
+ 'localizeItems',
1093
+ 'openItemsInEditor',
1094
+ 'openTranslationJob',
1095
+ 'promoteItems',
1096
+ 'publishItems',
1097
+ 'redoPublishTransactions',
1098
+ 'removeFromBundle',
1099
+ 'removeFromFavorites',
1100
+ 'removePublicationFromParents',
1101
+ 'removeItemsFromTranslationJob',
1102
+ 'restartActivities',
1103
+ 'retryTranslationJob',
1104
+ 'revertItems',
1105
+ 'revertProcesses',
1106
+ 'rollbackItem',
1107
+ 'sendForTranslation',
1108
+ 'startActivity',
1109
+ 'startBundleWorkflow',
1110
+ 'translateItems',
1111
+ 'unlocalizeItems',
1112
+ 'unpublishItems',
1113
+ 'updateParentPublicationPriority',
1114
+ 'viewInExplorer',
1115
+ ];
1116
+ /**
1117
+ * @public
1118
+ */
1119
+ const itemCommandId = createEnumObject(itemCommandIds);
1120
+
1038
1121
  /**
1039
1122
  * @public
1040
1123
  */
@@ -1090,7 +1173,12 @@ class NavigationExtensionsBuilder {
1090
1173
  /**
1091
1174
  * @public
1092
1175
  */
1093
- const navigationItemIds = ['activitiesExplorer', 'contentExplorer', 'publishingQueueExplorer'];
1176
+ const navigationItemIds = [
1177
+ 'activitiesExplorer',
1178
+ 'contentExplorer',
1179
+ 'publishingQueueExplorer',
1180
+ 'translationsExplorer',
1181
+ ];
1094
1182
  /**
1095
1183
  * All available built-in navigation item IDs.
1096
1184
  *
@@ -1098,6 +1186,71 @@ const navigationItemIds = ['activitiesExplorer', 'contentExplorer', 'publishingQ
1098
1186
  */
1099
1187
  const navigationItemId = createEnumObject(navigationItemIds);
1100
1188
 
1189
+ /**
1190
+ * @public
1191
+ */
1192
+ class InfoMenuExtensionsBuilder {
1193
+ constructor() {
1194
+ Object.defineProperty(this, "_infoMenuExtensions", {
1195
+ enumerable: true,
1196
+ configurable: true,
1197
+ writable: true,
1198
+ value: []
1199
+ });
1200
+ /**
1201
+ * Provides a mechanism for customizing the configuration of info menu items.
1202
+ */
1203
+ Object.defineProperty(this, "config", {
1204
+ enumerable: true,
1205
+ configurable: true,
1206
+ writable: true,
1207
+ value: new ListBuilder(itemId => itemId)
1208
+ });
1209
+ /**
1210
+ * Registers a new info menu item.
1211
+ *
1212
+ * @remarks
1213
+ * This method only registers the info menu item and does not automatically make it visible in the application.
1214
+ * To add the info menu item to the application, use {@link InfoMenuExtensionsBuilder.config}.
1215
+ *
1216
+ * @param item - info menu item to be registered
1217
+ */
1218
+ Object.defineProperty(this, "register", {
1219
+ enumerable: true,
1220
+ configurable: true,
1221
+ writable: true,
1222
+ value: (item) => {
1223
+ this._infoMenuExtensions.push(item);
1224
+ return this;
1225
+ }
1226
+ });
1227
+ Object.defineProperty(this, "build", {
1228
+ enumerable: true,
1229
+ configurable: true,
1230
+ writable: true,
1231
+ value: () => {
1232
+ return {
1233
+ items: this._infoMenuExtensions,
1234
+ config: this.config.build(),
1235
+ };
1236
+ }
1237
+ });
1238
+ }
1239
+ }
1240
+
1241
+ /**
1242
+ * List of all built-in info menu item IDs.
1243
+ *
1244
+ * @public
1245
+ */
1246
+ const infoMenuItemIds = ['documentation', 'classicUI', 'accessManagement', 'about'];
1247
+ /**
1248
+ * All available built-in info menu item IDs.
1249
+ *
1250
+ * @public
1251
+ */
1252
+ const infoMenuItemId = createEnumObject(infoMenuItemIds);
1253
+
1101
1254
  /**
1102
1255
  * @public
1103
1256
  */
@@ -1112,6 +1265,15 @@ class HeaderExtensionsBuilder {
1112
1265
  writable: true,
1113
1266
  value: new NavigationExtensionsBuilder()
1114
1267
  });
1268
+ /**
1269
+ * Provides a mechanism for customizing the configuration of info menu items.
1270
+ */
1271
+ Object.defineProperty(this, "infoMenu", {
1272
+ enumerable: true,
1273
+ configurable: true,
1274
+ writable: true,
1275
+ value: new InfoMenuExtensionsBuilder()
1276
+ });
1115
1277
  Object.defineProperty(this, "build", {
1116
1278
  enumerable: true,
1117
1279
  configurable: true,
@@ -1119,6 +1281,7 @@ class HeaderExtensionsBuilder {
1119
1281
  value: () => {
1120
1282
  return {
1121
1283
  navigation: this.navigation.build(),
1284
+ infoMenu: this.infoMenu.build(),
1122
1285
  };
1123
1286
  }
1124
1287
  });
@@ -1415,6 +1578,15 @@ class ExtensionBuilder {
1415
1578
  writable: true,
1416
1579
  value: new PublishingQueueExplorerExtensionsBuilder()
1417
1580
  });
1581
+ /**
1582
+ * Provides a mechanism for customizing Access Control.
1583
+ */
1584
+ Object.defineProperty(this, "accessControl", {
1585
+ enumerable: true,
1586
+ configurable: true,
1587
+ writable: true,
1588
+ value: new AccessControlExtensionsBuilder()
1589
+ });
1418
1590
  Object.defineProperty(this, "build", {
1419
1591
  enumerable: true,
1420
1592
  configurable: true,
@@ -1427,6 +1599,7 @@ class ExtensionBuilder {
1427
1599
  translations: this.translations.build(),
1428
1600
  activitiesExplorer: this.activitiesExplorer.build(),
1429
1601
  publishingQueueExplorer: this.publishingQueueExplorer.build(),
1602
+ accessControl: this.accessControl.build(),
1430
1603
  };
1431
1604
  }
1432
1605
  });
@@ -1649,7 +1822,7 @@ const isSystemNode = (node) => extensionApiBridge.get().contentExplorer.utils.hi
1649
1822
  */
1650
1823
  const PropertiesList = memo(props => {
1651
1824
  const PropertiesList = extensionApiBridge.get().contentExplorer.components.PropertiesList;
1652
- return jsx(PropertiesList, Object.assign({}, props));
1825
+ return jsx(PropertiesList, { ...props });
1653
1826
  });
1654
1827
  PropertiesList.displayName = 'PropertiesList';
1655
1828
 
@@ -1804,7 +1977,7 @@ const useOptionalStructureGroupEditor = () => {
1804
1977
  */
1805
1978
  const Block = memo(props => {
1806
1979
  const Block = extensionApiBridge.get().general.components.Block;
1807
- return jsx(Block, Object.assign({}, props));
1980
+ return jsx(Block, { ...props });
1808
1981
  });
1809
1982
  Block.displayName = 'Block';
1810
1983
  /**
@@ -1814,7 +1987,7 @@ Block.displayName = 'Block';
1814
1987
  */
1815
1988
  const Button = memo(props => {
1816
1989
  const Button = extensionApiBridge.get().general.components.Button;
1817
- return jsx(Button, Object.assign({}, props));
1990
+ return jsx(Button, { ...props });
1818
1991
  });
1819
1992
  Button.displayName = 'Button';
1820
1993
  /**
@@ -1829,7 +2002,7 @@ Button.displayName = 'Button';
1829
2002
  */
1830
2003
  const Center = memo(props => {
1831
2004
  const Center = extensionApiBridge.get().general.components.Center;
1832
- return jsx(Center, Object.assign({}, props));
2005
+ return jsx(Center, { ...props });
1833
2006
  });
1834
2007
  Center.displayName = 'Center';
1835
2008
  /**
@@ -1843,7 +2016,7 @@ Center.displayName = 'Center';
1843
2016
  */
1844
2017
  const Flex = memo(props => {
1845
2018
  const Flex = extensionApiBridge.get().general.components.Flex;
1846
- return jsx(Flex, Object.assign({}, props));
2019
+ return jsx(Flex, { ...props });
1847
2020
  });
1848
2021
  Flex.displayName = 'Flex';
1849
2022
  /**
@@ -1853,7 +2026,7 @@ Flex.displayName = 'Flex';
1853
2026
  */
1854
2027
  const Icon = memo(props => {
1855
2028
  const Icon = extensionApiBridge.get().general.components.Icon;
1856
- return jsx(Icon, Object.assign({}, props));
2029
+ return jsx(Icon, { ...props });
1857
2030
  });
1858
2031
  Icon.displayName = 'Icon';
1859
2032
  /**
@@ -1863,7 +2036,7 @@ Icon.displayName = 'Icon';
1863
2036
  */
1864
2037
  const Link = memo(props => {
1865
2038
  const Link = extensionApiBridge.get().general.components.Link;
1866
- return jsx(Link, Object.assign({}, props));
2039
+ return jsx(Link, { ...props });
1867
2040
  });
1868
2041
  Link.displayName = 'Link';
1869
2042
  /**
@@ -1876,7 +2049,7 @@ Link.displayName = 'Link';
1876
2049
  */
1877
2050
  const Stack = memo(props => {
1878
2051
  const Stack = extensionApiBridge.get().general.components.Stack;
1879
- return jsx(Stack, Object.assign({}, props));
2052
+ return jsx(Stack, { ...props });
1880
2053
  });
1881
2054
  Stack.displayName = 'Stack';
1882
2055
  /**
@@ -1886,7 +2059,7 @@ Stack.displayName = 'Stack';
1886
2059
  */
1887
2060
  const Text = memo(props => {
1888
2061
  const Text = extensionApiBridge.get().general.components.Text;
1889
- return jsx(Text, Object.assign({}, props));
2062
+ return jsx(Text, { ...props });
1890
2063
  });
1891
2064
  Text.displayName = 'Text';
1892
2065
  /**
@@ -1896,7 +2069,7 @@ Text.displayName = 'Text';
1896
2069
  */
1897
2070
  const TextLink = memo(props => {
1898
2071
  const TextLink = extensionApiBridge.get().general.components.TextLink;
1899
- return jsx(TextLink, Object.assign({}, props));
2072
+ return jsx(TextLink, { ...props });
1900
2073
  });
1901
2074
  TextLink.displayName = 'TextLink';
1902
2075
  /**
@@ -1906,7 +2079,7 @@ TextLink.displayName = 'TextLink';
1906
2079
  */
1907
2080
  const ModalContent = memo(props => {
1908
2081
  const ModalContent = extensionApiBridge.get().general.components.ModalContent;
1909
- return jsx(ModalContent, Object.assign({}, props));
2082
+ return jsx(ModalContent, { ...props });
1910
2083
  });
1911
2084
  ModalContent.displayName = 'ModalContent';
1912
2085
  /**
@@ -1916,7 +2089,7 @@ ModalContent.displayName = 'ModalContent';
1916
2089
  */
1917
2090
  const ModalHeader = memo(props => {
1918
2091
  const ModalHeader = extensionApiBridge.get().general.components.ModalHeader;
1919
- return jsx(ModalHeader, Object.assign({}, props));
2092
+ return jsx(ModalHeader, { ...props });
1920
2093
  });
1921
2094
  ModalHeader.displayName = 'ModalHeader';
1922
2095
  /**
@@ -1926,7 +2099,7 @@ ModalHeader.displayName = 'ModalHeader';
1926
2099
  */
1927
2100
  const ModalFooter = memo(props => {
1928
2101
  const ModalFooter = extensionApiBridge.get().general.components.ModalFooter;
1929
- return jsx(ModalFooter, Object.assign({}, props));
2102
+ return jsx(ModalFooter, { ...props });
1930
2103
  });
1931
2104
  ModalFooter.displayName = 'ModalFooter';
1932
2105
 
@@ -2590,20 +2763,20 @@ const createExtensionGlobals = () => {
2590
2763
  };
2591
2764
  return {
2592
2765
  initialize,
2593
- t: (key, options) => extensionGlobals === null || extensionGlobals === void 0 ? void 0 : extensionGlobals.t(key, options),
2594
- getConfiguration: () => extensionGlobals === null || extensionGlobals === void 0 ? void 0 : extensionGlobals.getConfiguration(),
2766
+ t: (key, options) => extensionGlobals?.t(key, options),
2767
+ getConfiguration: () => extensionGlobals?.getConfiguration(),
2595
2768
  };
2596
2769
  };
2597
2770
 
2598
- const version = "3.1.0";
2771
+ const version = "3.2.0";
2599
2772
  const peerDependencies = {
2600
2773
  "@tridion-sites/models": "workspace:*",
2601
2774
  "@tridion-sites/open-api-client": "workspace:*",
2602
2775
  react: "18.3.1",
2603
2776
  "react-dom": "18.3.1",
2604
2777
  "react-is": "18.3.1",
2605
- "styled-components": "6.1.13",
2606
- tinymce: "7.3.0"
2778
+ "styled-components": "6.1.19",
2779
+ tinymce: "7.9.1"
2607
2780
  };
2608
2781
 
2609
2782
  /**
@@ -2614,4 +2787,4 @@ const frameworkInfo = {
2614
2787
  peerDependencies,
2615
2788
  };
2616
2789
 
2617
- export { ActionsConfigurationExtensionsBuilder, ActivitiesExplorerExtensionsBuilder, ActivitiesExplorerInsightsPanelsExtensionsBuilder, ActivitiesExplorerTableExtensionsBuilder, Block, Button, Center, ContentEditorExtensionsBuilder, ContentExplorerExtensionsBuilder, ContentExplorerInsightsPanelsExtensionsBuilder, ContentExplorerTableExtensionsBuilder, ContentExplorerTreeExtensionsBuilder, ExtensionBuilder, Flex, HeaderExtensionsBuilder, Icon, Link, ModalContent, ModalFooter, ModalHeader, NavigationExtensionsBuilder, PropertiesList, PublishingQueueExplorerExtensionsBuilder, PublishingQueueExplorerInsightsPanelsExtensionsBuilder, PublishingQueueExplorerTableExtensionsBuilder, RichTextFieldExtensionsBuilder, Stack, Text, TextLink, TranslationExtensionsBuilder, activitiesExplorerActionGroupId, activitiesExplorerActionGroupIds, activitiesExplorerActionId, activitiesExplorerActionIds, activitiesExplorerPanelId, activitiesExplorerPanelIds, contentExplorerActionGroupId, contentExplorerActionGroupIds, contentExplorerActionId, contentExplorerActionIds, contentExplorerInsightsPanelId, contentExplorerInsightsPanelIds, contentExplorerPanelId, contentExplorerPanelIds, createExtensionGlobals, extensionApiBridge, frameworkInfo, getBorderRadius, getColorPalette, getOpacityLevel, getSpacing, getTransitionDuration, getZIndex, isFavoritesNodeId, isItemNode, isItemNodeOfType, isItemsInProgressNode, isItemsInProgressNodeId, isPublicationsNode, isPublicationsNodeId, isRootNode, isRootNodeId, isSystemNode, modalStatus, modalStatuses, modalType, modalTypes, navigationItemId, navigationItemIds, publishingQueueExplorerActionGroupId, publishingQueueExplorerActionGroupIds, publishingQueueExplorerActionId, publishingQueueExplorerActionIds, publishingQueueExplorerPanelId, publishingQueueExplorerPanelIds, useActivitiesExplorer, useActivitiesExplorerTable, useActivityInstancesQuery, useAddToBundleMutation, useAssignActivitiesMutation, useAssignActivityMutation, useAutoClassifyItemMutation, useAutoClassifyItemsMutation, useChangeUserLanguageMutation, useChangeUserLocaleMutation, useConfirmation, useContainerItems, useContentExplorer, useContentExplorerTable, useContentExplorerTree, useCopyItemMutation, useCopyItemsMutation, useCreateTranslationJobMutation, useDefaultTranslationJobQuery, useDeleteItemMutation, useDeleteItemsMutation, useDemoteItemMutation, useDemoteItemsMutation, useEditor, useFavoritesQuery, useFinishActivitiesMutation, useFinishActivityMutation, useFinishEditingItemMutation, useFinishEditingItemsMutation, useItemBlueprintHierarchyQuery, useItemChildrenQuery, useItemClassifiedItemsQuery, useItemDefaultDataQuery, useItemHistoryQuery, useItemPublishUrlsQuery, useItemPublishedPagesQuery, useItemPublishedToQuery, useItemQuery, useItemTranslationInfoQuery, useItemUsedByQuery, useItemUsesQuery, useItemsInProgressQuery, useItemsQuery, useItemsToPublishQuery, useItemsToUnpublishQuery, useLocalizeItemMutation, useLocalizeItemsMutation, useModal, useMoveItemMutation, useMoveItemsMutation, useNotifications, useOptionalActivitiesExplorer, useOptionalActivitiesExplorerTable, useOptionalBundleEditor, useOptionalCategoryEditor, useOptionalComponentEditor, useOptionalContentExplorer, useOptionalContentExplorerTable, useOptionalContentExplorerTree, useOptionalEditor, useOptionalFolderEditor, useOptionalKeywordEditor, useOptionalPageEditor, useOptionalPublishingQueueExplorer, useOptionalPublishingQueueExplorerTable, useOptionalStructureGroupEditor, usePublicationBlueprintHierarchyQuery, usePublicationsQuery, usePublishItemsMutation, usePublishableTargetTypesQuery, usePublishingQueueExplorer, usePublishingQueueExplorerTable, useRemoveFromBundleMutation, useRestartActivitiesMutation, useRestartActivityMutation, useRevertItemMutation, useRevertItemsMutation, useRollbackItemMutation, useSearchInContainerQuery, useStartActivitiesMutation, useStartActivityMutation, useStartWorkflowMutation, useSystemSearchQuery, useUnlocalizeItemMutation, useUnlocalizeItemsMutation, useUnpublishItemsMutation, useUpdateItemMutation, useUploadMultimediaMutation, useUserGroupsQuery, useUserProfile, useUserProfileQuery, useUsersQuery };
2790
+ export { AccessControlExtensionsBuilder, ActionsConfigurationExtensionsBuilder, ActivitiesExplorerExtensionsBuilder, ActivitiesExplorerInsightsPanelsExtensionsBuilder, ActivitiesExplorerTableExtensionsBuilder, Block, Button, Center, ContentEditorExtensionsBuilder, ContentExplorerExtensionsBuilder, ContentExplorerInsightsPanelsExtensionsBuilder, ContentExplorerTableExtensionsBuilder, ContentExplorerTreeExtensionsBuilder, ExtensionBuilder, Flex, HeaderExtensionsBuilder, Icon, InfoMenuExtensionsBuilder, Link, ModalContent, ModalFooter, ModalHeader, NavigationExtensionsBuilder, PropertiesList, PublishingQueueExplorerExtensionsBuilder, PublishingQueueExplorerInsightsPanelsExtensionsBuilder, PublishingQueueExplorerTableExtensionsBuilder, RichTextFieldExtensionsBuilder, Stack, Text, TextLink, TranslationExtensionsBuilder, activitiesExplorerActionGroupId, activitiesExplorerActionGroupIds, activitiesExplorerActionId, activitiesExplorerActionIds, activitiesExplorerPanelId, activitiesExplorerPanelIds, contentExplorerActionGroupId, contentExplorerActionGroupIds, contentExplorerActionId, contentExplorerActionIds, contentExplorerInsightsPanelId, contentExplorerInsightsPanelIds, contentExplorerPanelId, contentExplorerPanelIds, createExtensionGlobals, extensionApiBridge, frameworkInfo, getBorderRadius, getColorPalette, getOpacityLevel, getSpacing, getTransitionDuration, getZIndex, infoMenuItemId, infoMenuItemIds, isFavoritesNodeId, isItemNode, isItemNodeOfType, isItemsInProgressNode, isItemsInProgressNodeId, isPublicationsNode, isPublicationsNodeId, isRootNode, isRootNodeId, isSystemNode, itemCommandId, itemCommandIds, modalStatus, modalStatuses, modalType, modalTypes, navigationItemId, navigationItemIds, publishingQueueExplorerActionGroupId, publishingQueueExplorerActionGroupIds, publishingQueueExplorerActionId, publishingQueueExplorerActionIds, publishingQueueExplorerPanelId, publishingQueueExplorerPanelIds, useActivitiesExplorer, useActivitiesExplorerTable, useActivityInstancesQuery, useAddToBundleMutation, useAssignActivitiesMutation, useAssignActivityMutation, useAutoClassifyItemMutation, useAutoClassifyItemsMutation, useChangeUserLanguageMutation, useChangeUserLocaleMutation, useConfirmation, useContainerItems, useContentExplorer, useContentExplorerTable, useContentExplorerTree, useCopyItemMutation, useCopyItemsMutation, useCreateTranslationJobMutation, useDefaultTranslationJobQuery, useDeleteItemMutation, useDeleteItemsMutation, useDemoteItemMutation, useDemoteItemsMutation, useEditor, useFavoritesQuery, useFinishActivitiesMutation, useFinishActivityMutation, useFinishEditingItemMutation, useFinishEditingItemsMutation, useItemBlueprintHierarchyQuery, useItemChildrenQuery, useItemClassifiedItemsQuery, useItemDefaultDataQuery, useItemHistoryQuery, useItemPublishUrlsQuery, useItemPublishedPagesQuery, useItemPublishedToQuery, useItemQuery, useItemTranslationInfoQuery, useItemUsedByQuery, useItemUsesQuery, useItemsInProgressQuery, useItemsQuery, useItemsToPublishQuery, useItemsToUnpublishQuery, useLocalizeItemMutation, useLocalizeItemsMutation, useModal, useMoveItemMutation, useMoveItemsMutation, useNotifications, useOptionalActivitiesExplorer, useOptionalActivitiesExplorerTable, useOptionalBundleEditor, useOptionalCategoryEditor, useOptionalComponentEditor, useOptionalContentExplorer, useOptionalContentExplorerTable, useOptionalContentExplorerTree, useOptionalEditor, useOptionalFolderEditor, useOptionalKeywordEditor, useOptionalPageEditor, useOptionalPublishingQueueExplorer, useOptionalPublishingQueueExplorerTable, useOptionalStructureGroupEditor, usePublicationBlueprintHierarchyQuery, usePublicationsQuery, usePublishItemsMutation, usePublishableTargetTypesQuery, usePublishingQueueExplorer, usePublishingQueueExplorerTable, useRemoveFromBundleMutation, useRestartActivitiesMutation, useRestartActivityMutation, useRevertItemMutation, useRevertItemsMutation, useRollbackItemMutation, useSearchInContainerQuery, useStartActivitiesMutation, useStartActivityMutation, useStartWorkflowMutation, useSystemSearchQuery, useUnlocalizeItemMutation, useUnlocalizeItemsMutation, useUnpublishItemsMutation, useUpdateItemMutation, useUploadMultimediaMutation, useUserGroupsQuery, useUserProfile, useUserProfileQuery, useUsersQuery };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tridion-sites/extensions",
3
- "version": "3.1.0",
3
+ "version": "3.2.0",
4
4
  "description": "Tridion Sites Extensions API",
5
5
  "author": "RWS",
6
6
  "homepage": "https://www.rws.com",
@@ -22,32 +22,32 @@
22
22
  "prepublish": "yarn build"
23
23
  },
24
24
  "peerDependencies": {
25
- "@tridion-sites/models": "2.1.0",
26
- "@tridion-sites/open-api-client": "4.1.0",
25
+ "@tridion-sites/models": "2.2.0",
26
+ "@tridion-sites/open-api-client": "4.2.0",
27
27
  "react": "18.3.1",
28
28
  "react-dom": "18.3.1",
29
29
  "react-is": "18.3.1",
30
- "styled-components": "6.1.13",
31
- "tinymce": "7.3.0"
30
+ "styled-components": "6.1.19",
31
+ "tinymce": "7.9.1"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@rollup/plugin-commonjs": "25.0.8",
35
35
  "@rollup/plugin-json": "6.1.0",
36
- "@rollup/plugin-node-resolve": "15.3.0",
36
+ "@rollup/plugin-node-resolve": "15.3.1",
37
37
  "@rollup/plugin-typescript": "11.1.6",
38
- "@tridion-sites/models": "2.1.0",
39
- "@tridion-sites/open-api-client": "4.1.0",
40
- "@tridion/graphene": "3.4.0",
38
+ "@tridion-sites/models": "2.2.0",
39
+ "@tridion-sites/open-api-client": "4.2.0",
40
+ "@tridion/graphene": "3.9.1",
41
41
  "@types/react": "18.3.11",
42
42
  "react": "18.3.1",
43
43
  "react-dom": "18.3.1",
44
44
  "react-is": "18.3.1",
45
45
  "rimraf": "5.0.10",
46
46
  "rollup": "3.29.5",
47
- "rollup-plugin-delete": "2.1.0",
47
+ "rollup-plugin-delete": "2.2.0",
48
48
  "rollup-plugin-node-externals": "6.1.2",
49
- "tinymce": "7.3.0",
50
- "typescript": "5.5.2",
51
- "typescript-transform-paths": "3.5.1"
49
+ "tinymce": "7.9.1",
50
+ "typescript": "5.9.2",
51
+ "typescript-transform-paths": "3.5.5"
52
52
  }
53
53
  }