1mod admin;
2pub use admin::*;
3mod api;
4mod auth;
5mod board_settings;
6mod boards;
7mod bulk_cards;
8mod cards;
9mod checklist_items;
10mod checklists;
11mod comments;
12mod custom_field_items;
13mod custom_fields;
14mod dependencies;
15mod exports;
16pub(crate) use exports::StagedExport;
17pub use exports::{ExportResource, ExportSuccess};
18mod imports;
19mod integrations;
20pub use imports::*;
21mod rules;
22pub use rules::*;
23mod lists;
24mod profiles;
25mod swimlanes;
26mod users;
27
28pub use api::{
29 ApiResponseSuccess, RawApiResponseData, RawResponseBody, RawResponseHeader, RawValueEncoding,
30};
31pub use auth::{
32 AuthStatusEmail, AuthStatusSuccess, AuthStatusUser, AuthSuccess, LogoutScope, LogoutSuccess,
33};
34pub use board_settings::*;
35pub use boards::{
36 BoardCountSuccess, BoardCreateSuccess, BoardDeleteSuccess, BoardDetail, BoardDetailDomain,
37 BoardDetailLabel, BoardDetailMember, BoardDetailOrganization, BoardDetailTeam,
38 BoardDetailWatcher, BoardListScope, BoardListSuccess, BoardRenameSuccess, BoardSummary,
39 UserBoardSummary,
40};
41pub use boards::{
42 BoardMemberCollectionSuccess, BoardMemberMutationSuccess, BoardMemberSubmittedField,
43 BoardMemberUpdateSuccess,
44};
45pub use cards::{
46 CardArchiveSuccess, CardCollectionSuccess, CardCreateSuccess, CardDeleteMode,
47 CardDeleteSuccess, CardDetail, CardDetailCustomField, CardDetailCustomFieldValue,
48 CardDetailDependency, CardDetailLocation, CardDetailPoker, CardDetailSticker,
49 CardDetailStickerHighlight, CardDetailVote, CardRestoreSuccess, CardSubmittedField,
50 CardSummary, CardUpdateSuccess,
51};
52pub use cards::{
53 CardAssigneeCollectionSuccess, CardMemberCollectionSuccess, CardMembershipKind,
54 CardMembershipMutationSuccess,
55};
56pub use cards::{CardCustomFieldQuerySuccess, CardCustomFieldSetSuccess};
57pub use checklist_items::{
58 ChecklistItemCreateSuccess, ChecklistItemDeleteMode, ChecklistItemDeleteSuccess,
59 ChecklistItemDetail, ChecklistItemSubmittedField, ChecklistItemUpdateSuccess,
60};
61pub use checklists::{
62 ChecklistCollectionSuccess, ChecklistCreateSuccess, ChecklistDeleteMode,
63 ChecklistDeleteSuccess, ChecklistDetail, ChecklistItemSummary, ChecklistSummary,
64};
65pub use comments::{
66 CommentCollectionSuccess, CommentCreateSuccess, CommentDeleteMode, CommentDeleteSuccess,
67 CommentDetail, CommentSummary,
68};
69pub use custom_field_items::{
70 CustomFieldItemCreateSuccess, CustomFieldItemDeleteMode, CustomFieldItemDeleteSuccess,
71 CustomFieldItemSubmittedField, CustomFieldItemUpdateSuccess,
72};
73pub use custom_fields::{
74 CustomFieldCollectionSuccess, CustomFieldCreateSuccess, CustomFieldDeleteMode,
75 CustomFieldDeleteSuccess, CustomFieldDetail, CustomFieldDropdownItem, CustomFieldSettings,
76 CustomFieldSubmittedField, CustomFieldSummary, CustomFieldUpdateSuccess,
77};
78pub use dependencies::{
79 BoardDependencyCollectionSuccess, CardDependencyCollectionSuccess, DependencyCreateSuccess,
80 DependencyDeleteSuccess, DependencyLine, DependencySubmittedField, DependencySummary,
81 DependencyUpdateSuccess,
82};
83pub use lists::{
84 ListCollectionSuccess, ListCreateSuccess, ListDeleteMode, ListDeleteSuccess, ListDetail,
85 ListSummary, ListUpdateSuccess, ListUpdatedField, ListWipLimitDetail,
86};
87pub use profiles::{ProfileItem, ProfileListSuccess, ProfileRemoveSuccess};
88pub use swimlanes::{
89 SwimlaneCollectionSuccess, SwimlaneCreateSuccess, SwimlaneDeleteMode, SwimlaneDeleteSuccess,
90 SwimlaneDetail, SwimlaneSummary, SwimlaneUpdateSuccess, SwimlaneUpdatedField,
91};
92pub use users::{
93 UserBoardMembership, UserBoardsSuccess, UserCard, UserCardsSuccess, UserCreateSuccess,
94 UserCreateWarning, UserDeleteSuccess, UserDetail, UserEmail, UserListSuccess, UserLoginAction,
95 UserLoginChangeSuccess, UserOrganization, UserOwnershipSuccess, UserProfileDetail,
96 UserProfileNotificationDetail, UserProfileStarredPageDetail, UserSessionData, UserSummary,
97 UserTeam, UserWorkspaceNodeDetail,
98};
99
100use serde::Serialize;
101
102pub use bulk_cards::*;
103pub use integrations::*;
104
105pub use boards::{BoardLabelAdded, BoardLabelCollection};
106pub use cards::CardLabelCollection;
107
108pub mod attachments;
109pub use attachments::*;
110pub use boards::BoardCopySuccess;
111pub use cards::{
112 CardCopySuccess, CardCountSuccess, SwimlaneCardCollectionSuccess, SwimlaneCardSummary,
113};
114pub use lists::ListTransferSuccess;
115pub use swimlanes::SwimlaneTransferSuccess;
116
117#[derive(Debug, Eq, PartialEq)]
118pub enum CommandSuccess {
119 BoardImported(BoardImportSuccess),
120 ZipImported(ZipImportSuccess),
121 IcsImported(IcsImportSuccess),
122 Exported(ExportSuccess),
123 AdminDomains(AdminDomainCollectionSuccess),
124 AdminOrganizations(AdminOrganizationCollectionSuccess),
125 AdminTeams(AdminTeamCollectionSuccess),
126 AdminOrganizationUpdated(Box<AdminOrganizationUpdateSuccess>),
127 AdminTeamUpdated(Box<AdminTeamUpdateSuccess>),
128 AdminOrganizationFeaturesUpdatedAll(AdminFeaturesUpdateAllSuccess),
129 AdminTeamFeaturesUpdatedAll(AdminFeaturesUpdateAllSuccess),
130 GlobalSettings(Box<GlobalSettingsSuccess>),
131 GlobalSettingsUpdated(Box<GlobalSettingsUpdateSuccess>),
132 AttachmentSettings(Box<AttachmentSettingsSuccess>),
133 AttachmentSettingsUpdated(Box<AttachmentSettingsUpdateSuccess>),
134 RuleCollection(RuleCollectionSuccess),
135 RuleShown(Box<RuleDetail>),
136 RuleCreated(RuleCreateSuccess),
137 RuleUpdated(RuleUpdateSuccess),
138 RuleDeleted(RuleDeleteSuccess),
139 BoardCardSettings(BoardCardSettingsSuccess),
140 BoardCardSettingsUpdated(BoardCardSettingsUpdateSuccess),
141 BoardDomains(BoardDomainCollectionSuccess),
142 BoardDomainChanged(BoardDomainMutationSuccess),
143 IntegrationCollection(IntegrationCollectionSuccess),
144 IntegrationShown(IntegrationDetail),
145 IntegrationCreated(IntegrationCreateSuccess),
146 IntegrationUpdated(IntegrationUpdateSuccess),
147 IntegrationDeleted(IntegrationDeleteSuccess),
148 IntegrationActivitiesChanged(IntegrationActivityMutationSuccess),
149 BoardCopied(boards::BoardCopySuccess),
150 CardCopied(cards::CardCopySuccess),
151 ListCopied(lists::ListTransferSuccess),
152 ListMoved(lists::ListTransferSuccess),
153 SwimlaneCopied(swimlanes::SwimlaneTransferSuccess),
154 SwimlaneMoved(swimlanes::SwimlaneTransferSuccess),
155 CardCount(cards::CardCountSuccess),
156 SwimlaneCards(cards::SwimlaneCardCollectionSuccess),
157 CardBatch(CardBatchResult),
158 BoardLabels(BoardLabelCollection),
159 BoardLabelAdded(BoardLabelAdded),
160 CardLabels(CardLabelCollection),
161 BoardMembers(BoardMemberCollectionSuccess),
162 BoardMemberChanged(BoardMemberMutationSuccess),
163 BoardMemberUpdated(BoardMemberUpdateSuccess),
164 CardMembers(CardMemberCollectionSuccess),
165 CardAssignees(CardAssigneeCollectionSuccess),
166 CardMembershipChanged(CardMembershipMutationSuccess),
167 BoardDependencies(BoardDependencyCollectionSuccess),
168 CardDependencies(CardDependencyCollectionSuccess),
169 DependencyCreated(DependencyCreateSuccess),
170 DependencyUpdated(DependencyUpdateSuccess),
171 DependencyDeleted(DependencyDeleteSuccess),
172 AttachmentList(AttachmentCollectionSuccess),
173 AttachmentShown(crate::client::attachments::AttachmentInfo),
174 AttachmentUploaded(
175 AttachmentMutationSuccess<crate::client::attachments::AttachmentUploadResponse>,
176 ),
177 BackgroundUploaded(
178 AttachmentMutationSuccess<crate::client::attachments::BackgroundUploadResponse>,
179 ),
180 AttachmentCopied(AttachmentMutationSuccess<crate::client::attachments::AttachmentCopyResponse>),
181 AttachmentMoved(AttachmentMutationSuccess<crate::client::attachments::AttachmentMoveResponse>),
182 AttachmentDeleted(
183 AttachmentMutationSuccess<crate::client::attachments::AttachmentDeleteResponse>,
184 ),
185 AttachmentDownloaded(AttachmentDownloadSuccess),
186 ApiResponse(ApiResponseSuccess),
187 Cancelled(CancellationSuccess),
188 Registration(AuthSuccess),
189 Login(AuthSuccess),
190 Logout(LogoutSuccess),
191 AuthStatus(AuthStatusSuccess),
192 UserCurrent(UserDetail),
193 UserList(UserListSuccess),
194 UserShown(UserDetail),
195 UserUpdated(UserDetail),
196 UserCards(UserCardsSuccess),
197 UserCreated(UserCreateSuccess),
198 UserBoards(UserBoardsSuccess),
199 UserOwnershipTaken(UserOwnershipSuccess),
200 UserLoginChanged(UserLoginChangeSuccess),
201 UserDeleted(UserDeleteSuccess),
202 BoardList(BoardListSuccess),
203 BoardCount(BoardCountSuccess),
204 BoardShown(Box<BoardDetail>),
205 BoardCreated(BoardCreateSuccess),
206 BoardRenamed(BoardRenameSuccess),
207 BoardDeleted(BoardDeleteSuccess),
208 ListCollection(ListCollectionSuccess),
209 ListShown(ListDetail),
210 ListCreated(ListCreateSuccess),
211 ListUpdated(ListUpdateSuccess),
212 ListDeleted(ListDeleteSuccess),
213 CardCollection(CardCollectionSuccess),
214 CardShown(Box<CardDetail>),
215 CardCreated(CardCreateSuccess),
216 CardUpdated(CardUpdateSuccess),
217 CardArchived(CardArchiveSuccess),
218 CardRestored(CardRestoreSuccess),
219 CardDeleted(CardDeleteSuccess),
220 ChecklistCollection(ChecklistCollectionSuccess),
221 ChecklistShown(ChecklistDetail),
222 ChecklistCreated(ChecklistCreateSuccess),
223 ChecklistDeleted(ChecklistDeleteSuccess),
224 ChecklistItemShown(ChecklistItemDetail),
225 ChecklistItemCreated(ChecklistItemCreateSuccess),
226 ChecklistItemUpdated(ChecklistItemUpdateSuccess),
227 ChecklistItemDeleted(ChecklistItemDeleteSuccess),
228 CustomFieldCollection(CustomFieldCollectionSuccess),
229 CustomFieldShown(CustomFieldDetail),
230 CustomFieldCreated(CustomFieldCreateSuccess),
231 CustomFieldUpdated(CustomFieldUpdateSuccess),
232 CustomFieldDeleted(CustomFieldDeleteSuccess),
233 CustomFieldItemsCreated(CustomFieldItemCreateSuccess),
234 CustomFieldItemUpdated(CustomFieldItemUpdateSuccess),
235 CustomFieldItemDeleted(CustomFieldItemDeleteSuccess),
236 CardCustomFieldSet(CardCustomFieldSetSuccess),
237 CardCustomFieldQuery(CardCustomFieldQuerySuccess),
238 CommentCollection(CommentCollectionSuccess),
239 CommentShown(CommentDetail),
240 CommentCreated(CommentCreateSuccess),
241 CommentDeleted(CommentDeleteSuccess),
242 SwimlaneCollection(SwimlaneCollectionSuccess),
243 SwimlaneShown(SwimlaneDetail),
244 SwimlaneCreated(SwimlaneCreateSuccess),
245 SwimlaneUpdated(SwimlaneUpdateSuccess),
246 SwimlaneDeleted(SwimlaneDeleteSuccess),
247 ProfileAdded(ProfileItem),
248 ProfileList(ProfileListSuccess),
249 ProfileShown(ProfileItem),
250 ProfileUsed(ProfileItem),
251 ProfileUpdated(ProfileItem),
252 ProfileRemoved(ProfileRemoveSuccess),
253}
254
255#[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize)]
256#[serde(rename_all = "snake_case")]
257pub enum MembershipAction {
258 Add,
259 Remove,
260}
261
262#[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize)]
263#[serde(rename_all = "snake_case")]
264pub enum DestructiveOperation {
265 AdminOrganizationFeaturesUpdateAll,
266 AdminTeamFeaturesUpdateAll,
267 IntegrationDelete,
268 RuleDelete,
269 CardBulkDelete,
270 DependencyDelete,
271 AttachmentDelete,
272 ApiRequest,
273 AuthLogout,
274 ProfileRemove,
275 UserTakeOwnership,
276 UserDisableLogin,
277 UserDelete,
278 BoardDelete,
279 ListDelete,
280 CardDelete,
281 ChecklistDelete,
282 ChecklistItemDelete,
283 CustomFieldDelete,
284 CustomFieldItemDelete,
285 CommentDelete,
286 SwimlaneDelete,
287}
288
289impl DestructiveOperation {
290 pub const fn as_command(self) -> &'static str {
291 match self {
292 Self::AdminOrganizationFeaturesUpdateAll => "admin org features update-all",
293 Self::AdminTeamFeaturesUpdateAll => "admin team features update-all",
294 Self::IntegrationDelete => "integration delete",
295 Self::RuleDelete => "rule delete",
296 Self::CardBulkDelete => "card bulk delete",
297 Self::DependencyDelete => "dependency delete",
298 Self::AttachmentDelete => "attachment delete",
299 Self::ApiRequest => "api request",
300 Self::AuthLogout => "auth logout",
301 Self::ProfileRemove => "profile remove",
302 Self::UserTakeOwnership => "user take-ownership",
303 Self::UserDisableLogin => "user disable-login",
304 Self::UserDelete => "user delete",
305 Self::BoardDelete => "board delete",
306 Self::ListDelete => "list delete",
307 Self::CardDelete => "card delete",
308 Self::ChecklistDelete => "checklist delete",
309 Self::ChecklistItemDelete => "checklist item delete",
310 Self::CustomFieldDelete => "custom-field delete",
311 Self::CustomFieldItemDelete => "custom-field item delete",
312 Self::CommentDelete => "comment delete",
313 Self::SwimlaneDelete => "swimlane delete",
314 }
315 }
316}
317
318#[derive(Debug, Eq, PartialEq, Serialize)]
319pub struct CancellationSuccess {
320 pub cancelled: bool,
321 pub operation: DestructiveOperation,
322}
323
324impl CancellationSuccess {
325 pub const fn new(operation: DestructiveOperation) -> Self {
326 Self {
327 cancelled: true,
328 operation,
329 }
330 }
331}