@tridion-sites/extensions 1.0.1 → 1.0.3
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/README.md +157 -0
- package/dist/index.d.ts +1362 -94
- package/dist/index.js +343 -15
- package/package.json +1 -1
package/README.md
ADDED
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
# Tridion Sites Extensions API
|
|
2
|
+
|
|
3
|
+
`@tridion-sites/extensions` provides an API for frontend extensions for Tridion Sites.
|
|
4
|
+
|
|
5
|
+
## Getting Started
|
|
6
|
+
|
|
7
|
+
All extensions export an [`ExtensionModule`](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.extensionmodule.html) object. The `initialize` function on this object receives an [`ExtensionBuilder`](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.extensionbuilder.html) from Tridion Sites as its argument, which gives a developer access to the extensions API.
|
|
8
|
+
|
|
9
|
+
## Common functionality
|
|
10
|
+
|
|
11
|
+
This functionality can be used in any extension point and is available throughout the application.
|
|
12
|
+
|
|
13
|
+
### Hooks
|
|
14
|
+
|
|
15
|
+
| Name | Description | Example |
|
|
16
|
+
| ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
17
|
+
| [useConfirmation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.confirmationhook.html) | Opens a confirmation dialog with the provided [options](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.confirmationhookarguments.html) | [useHelloAction](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/activities-explorer/simple-action-addon/hello-action/src/helloAction/useHelloAction.ts#L24) |
|
|
18
|
+
| [useNotifications](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.notificationshook.html) | Provides ability to show notifications and save them in Message Center | [useHelloAction](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/activities-explorer/simple-action-addon/hello-action/src/helloAction/useHelloAction.ts#L16) |
|
|
19
|
+
| [useUserProfile](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.userprofilehook.html) | Provides access to the current user profile information | [useHelloAction](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/activities-explorer/simple-action-addon/hello-action/src/helloAction/useHelloAction.ts#L12) |
|
|
20
|
+
|
|
21
|
+
### Components and styling
|
|
22
|
+
|
|
23
|
+
Components and style constants are provided so extensions can maintain a consistent look & feel with Tridion Sites.
|
|
24
|
+
|
|
25
|
+
#### Layout
|
|
26
|
+
|
|
27
|
+
_💡 **Tip:** Layout components have an exposed `className` prop. This allows custom styles to be added via [styled-components](https://stash.sdl.com/projects/TDX/repos/tridion-sites/browse/libs/public/extensions/src/api/general/components/link.ts) or [CSS modules](https://css-tricks.com/css-modules-part-1-need/)._
|
|
28
|
+
|
|
29
|
+
| Name | Description | Example |
|
|
30
|
+
| -------------------------------------------------------------------------------------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
31
|
+
| [Block](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.blockprops.html) | | [Users List Item](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/primary-navigation/async-page-addon/async-page/src/addUsersListNavigationItem/UsersList/UserListItem.tsx) |
|
|
32
|
+
| [Center](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.centerprops.html) | | [Schema Purpose Column](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/content-explorer/schema-purpose-addon/schema-purpose-column/src/SchemaPurposeColumn.tsx) |
|
|
33
|
+
| [Flex](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.flexprops.html) | | [Number Field](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/content-editor/custom-field-priority-addon/field-priority/src/addNumberField/NumberField.tsx) |
|
|
34
|
+
| [Stack](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.stackprops.html) | | [Users List](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/primary-navigation/async-page-addon/async-page/src/addUsersListNavigationItem/UsersList/UsersList.tsx) |
|
|
35
|
+
|
|
36
|
+
#### Other components
|
|
37
|
+
|
|
38
|
+
| Name | Description | Example |
|
|
39
|
+
| ------------------------------------------------------------------------------------------------------ | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
40
|
+
| [Button](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.buttonprops.html) | | |
|
|
41
|
+
| [Icon](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.iconprops.html) | | [Smile Icon](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/activities-explorer/simple-action-addon/hello-action/src/helloAction/SmileIcon.tsx) |
|
|
42
|
+
| [Link](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.linkprops.html) | | |
|
|
43
|
+
| [Text](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.textprops.html) | | [Number Field](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/content-editor/custom-field-priority-addon/field-priority/src/addNumberField/NumberField.tsx) |
|
|
44
|
+
| [TextLink](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.textlinkprops.html) | | [Item Link](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/activities-explorer/work-items-column-addon/work-items-column/src/workItemsColumn/ItemLink.tsx) |
|
|
45
|
+
|
|
46
|
+
#### Style constants
|
|
47
|
+
|
|
48
|
+
| Name | Description | Example |
|
|
49
|
+
| ------------------------------------------------------------------------------------------------------------------------------ | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
50
|
+
| [getBorderRadius](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.borderradiusgetter.html) | | [Hex Color Picker](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/content-editor/color-picker-field-addon/color-picker-field/src/HexColorPicker.tsx) |
|
|
51
|
+
| [getColorPalette](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.colorpalettegetter.html) | | |
|
|
52
|
+
| [getOpacityLevel](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.opacitylevelgetter.html) | | |
|
|
53
|
+
| [getSpacing](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.spacinggetter.html) | | |
|
|
54
|
+
| [getTransitionDuration](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.transitiondurationgetter.html) | | |
|
|
55
|
+
| [getZIndex](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.zindexgetter.html) | | |
|
|
56
|
+
|
|
57
|
+
## Data loading
|
|
58
|
+
|
|
59
|
+
Mutations and queries provide a way to requires Tridion Sites data. They operate with model instances of [`@tridion-sites/models`](https://www.npmjs.com/package/@tridion-sites/models) package rather than simple objects of [`@tridion-sites/open-api-client`](https://www.npmjs.com/package/@tridion-sites/open-api-client).
|
|
60
|
+
|
|
61
|
+
_💡 **Tip:** Mutations and queries share cached data between the host application and extensions. This means that if provided request was already loaded somewhere else - it is going to be retrieved from the cache if applicable._
|
|
62
|
+
|
|
63
|
+
### Queries
|
|
64
|
+
|
|
65
|
+
Queries provide a way of retrieving data from the backend as well as managing its loading and reloading.
|
|
66
|
+
|
|
67
|
+
| Name | Description | Example |
|
|
68
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
69
|
+
| [useActivityInstancesQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.activityinstancesqueryhook.html) | | |
|
|
70
|
+
| [useDefaultTranslationJobQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.defaulttranslationjobqueryhook.html) | | |
|
|
71
|
+
| [useFavoritesQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.favoritesqueryhook.html) | | |
|
|
72
|
+
| [useItemBlueprintHierarchyQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemblueprinthierarchyqueryhook.html) | | |
|
|
73
|
+
| [useItemChildrenQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemchildrenqueryhook.html) | | |
|
|
74
|
+
| [useItemClassifiedItemsQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemclassifieditemsqueryhook.html) | | |
|
|
75
|
+
| [useItemDefaultDataQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemdefaultdataqueryhook.html) | | |
|
|
76
|
+
| [useItemHistoryQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemhistoryqueryhook.html) | | |
|
|
77
|
+
| [useItemPublishedPagesQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itempublishedpagesqueryhook.html) | | |
|
|
78
|
+
| [useItemPublishedToQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itempublishedtoqueryhook.html) | | |
|
|
79
|
+
| [useItemPublishUrlsQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itempublishurlsqueryhook.html) | | |
|
|
80
|
+
| [useItemQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemqueryhook.html) | | [Work Items Popover](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/activities-explorer/work-items-column-addon/work-items-column/src/workItemsColumn/WorkItemsPopover.tsx) |
|
|
81
|
+
| [useItemsInProgressQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemsinprogressqueryhook.html) | | |
|
|
82
|
+
| [useItemsQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemsqueryhook.html) | | |
|
|
83
|
+
| [useItemsToPublishQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemstopublishqueryhook.html) | | |
|
|
84
|
+
| [useItemsToUnpublishQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemstounpublishqueryhook.html) | | |
|
|
85
|
+
| [useItemTranslationInfoQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemtranslationinfoqueryhook.html) | | |
|
|
86
|
+
| [useItemUsedByQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemusedbyqueryhook.html) | | |
|
|
87
|
+
| [useItemUsesQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.itemusesqueryhook.html) | | |
|
|
88
|
+
| [usePublicationBlueprintHierarchyQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.publicationblueprinthierarchyqueryhook.html) | | |
|
|
89
|
+
| [usePublicationsQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.publicationsqueryhook.html) | | |
|
|
90
|
+
| [usePublishableTargetTypesQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.publishabletargettypesqueryhook.html) | | |
|
|
91
|
+
| [useSearchInContainerQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.searchincontainerqueryhook.html) | | |
|
|
92
|
+
| [useSystemSearchQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.systemsearchqueryhook.html) | | |
|
|
93
|
+
| [useUserGroupsQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.usergroupsqueryhook.html) | | |
|
|
94
|
+
| [useUserProfileQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.userprofilequeryhook.html) | | |
|
|
95
|
+
| [useUsersQuery](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.usersqueryhook.html) | | [Users Page](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/primary-navigation/async-page-addon/async-page/src/addUsersListNavigationItem/UsersPage.tsx) |
|
|
96
|
+
|
|
97
|
+
### Mutations
|
|
98
|
+
|
|
99
|
+
Mutations provide a way of changing data on the backend as well as handling request execution.
|
|
100
|
+
|
|
101
|
+
| Name | Description | Example |
|
|
102
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------ | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
103
|
+
| [useAddToBundleMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.addtobundlemutationhook.html) | | |
|
|
104
|
+
| [useAssignActivitiesMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.assignactivitiesmutationhook.html) | | |
|
|
105
|
+
| [useAssignActivityMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.assignactivitymutationhook.html) | | |
|
|
106
|
+
| [useAutoClassifyItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.autoclassifyitemmutationhook.html) | | |
|
|
107
|
+
| [useAutoClassifyItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.autoclassifyitemsmutationhook.html) | | |
|
|
108
|
+
| [useChangeUserLanguageMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.changeuserlanguagemutationhook.html) | | [Change Language to Dutch Action](https://github.com/RWS/tridion-sites-extensions-examples/blob/main/content-explorer/action-with-mutation-addon/switch-language-action/src/addChangeToDutchAction.tsx) |
|
|
109
|
+
| [useChangeUserLocaleMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.changeuserlocalemutationhook.html) | | |
|
|
110
|
+
| [useCopyItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.copyitemmutationhook.html) | | |
|
|
111
|
+
| [useCopyItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.copyitemsmutationhook.html) | | |
|
|
112
|
+
| [useCreateTranslationJobMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.createtranslationjobmutationhook.html) | | |
|
|
113
|
+
| [useDeleteItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.deleteitemmutationhook.html) | | |
|
|
114
|
+
| [useDeleteItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.deleteitemsmutationhook.html) | | |
|
|
115
|
+
| [useFinishActivitiesMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.finishactivitiesmutationhook.html) | | |
|
|
116
|
+
| [useFinishActivityMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.finishactivitymutationhook.html) | | |
|
|
117
|
+
| [useFinishEditingItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.finisheditingitemmutationhook.html) | | |
|
|
118
|
+
| [useFinishEditingItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.finisheditingitemsmutationhook.html) | | |
|
|
119
|
+
| [useLocalizeItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.localizeitemmutationhook.html) | | |
|
|
120
|
+
| [useLocalizeItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.localizeitemsmutationhook.html) | | |
|
|
121
|
+
| [useMoveItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.moveitemmutationhook.html) | | |
|
|
122
|
+
| [useMoveItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.moveitemsmutationhook.html) | | |
|
|
123
|
+
| [usePublishItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.publishitemsmutationhook.html) | | |
|
|
124
|
+
| [useRemoveFromBundleMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.removefrombundlemutationhook.html) | | |
|
|
125
|
+
| [useRestartActivitiesMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.restartactivitiesmutationhook.html) | | |
|
|
126
|
+
| [useRestartActivityMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.restartactivitymutationhook.html) | | |
|
|
127
|
+
| [useRevertItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.revertitemmutationhook.html) | | |
|
|
128
|
+
| [useRevertItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.revertitemsmutationhook.html) | | |
|
|
129
|
+
| [useRollbackItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.rollbackitemmutationhook.html) | | |
|
|
130
|
+
| [useStartActivitiesMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.startactivitiesmutationhook.html) | | |
|
|
131
|
+
| [useStartActivityMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.startactivitymutationhook.html) | | |
|
|
132
|
+
| [useStartWorkflowMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.startworkflowmutationhook.html) | | |
|
|
133
|
+
| [useUnlocalizeItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.unlocalizeitemmutationhook.html) | | |
|
|
134
|
+
| [useUnlocalizeItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.unlocalizeitemsmutationhook.html) | | |
|
|
135
|
+
| [useUnpublishItemsMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.unpublishitemsmutationhook.html) | | |
|
|
136
|
+
| [useUpdateItemMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.updateitemmutationhook.html) | | |
|
|
137
|
+
| [useUploadMultimediaMutation](https://developers.rws.com/tridion-sites-extensions-api-docs/extensions.uploadmultimediamutationhook.html) | | |
|
|
138
|
+
|
|
139
|
+
## Data Contexts
|
|
140
|
+
|
|
141
|
+
Tridion Sites contains nested data contexts. All extension points and hooks exist within a data context. Within any given data context, one can access both the data in that context and any parent data contexts. It is important to note where an extension is located to determine what data it can access.
|
|
142
|
+
|
|
143
|
+
_💡 **Tip:** Some extensions might appear in multiple places. Hooks with optional contexts are provided for this purpose._
|
|
144
|
+
|
|
145
|
+
- Activities Explorer
|
|
146
|
+
- Activities Explorer Table
|
|
147
|
+
- Content Explorer
|
|
148
|
+
- Content Explorer Table
|
|
149
|
+
- Content Explorer Tree
|
|
150
|
+
- Content editors
|
|
151
|
+
- Bundle editor
|
|
152
|
+
- Category editor
|
|
153
|
+
- Component editor
|
|
154
|
+
- Folder editor
|
|
155
|
+
- Keyword editor
|
|
156
|
+
- Page editor
|
|
157
|
+
- Structure Group editor
|