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