@instructure/athena-api-client 4.5.1 → 4.6.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 (70) hide show
  1. package/README.md +10 -0
  2. package/dist/apis/AdminApi.d.ts +29 -1
  3. package/dist/apis/AdminApi.js +79 -0
  4. package/dist/esm/apis/AdminApi.d.ts +29 -1
  5. package/dist/esm/apis/AdminApi.js +80 -1
  6. package/dist/esm/models/AdminClaimConceptMediaReviewNotificationsRequest.d.ts +32 -0
  7. package/dist/esm/models/AdminClaimConceptMediaReviewNotificationsRequest.js +41 -0
  8. package/dist/esm/models/AdminConceptDiagram.d.ts +15 -2
  9. package/dist/esm/models/AdminConceptDiagram.js +9 -0
  10. package/dist/esm/models/AdminConceptDiagramDetail.d.ts +15 -2
  11. package/dist/esm/models/AdminConceptDiagramDetail.js +9 -0
  12. package/dist/esm/models/AdminConceptImage.d.ts +15 -2
  13. package/dist/esm/models/AdminConceptImage.js +9 -0
  14. package/dist/esm/models/AdminConceptImageDetail.d.ts +15 -2
  15. package/dist/esm/models/AdminConceptImageDetail.js +9 -0
  16. package/dist/esm/models/AdminConceptMediaAgentReview.d.ts +131 -0
  17. package/dist/esm/models/AdminConceptMediaAgentReview.js +117 -0
  18. package/dist/esm/models/AdminConceptMediaReviewDurationStats.d.ts +50 -0
  19. package/dist/esm/models/AdminConceptMediaReviewDurationStats.js +55 -0
  20. package/dist/esm/models/AdminConceptMediaReviewKindStats.d.ts +89 -0
  21. package/dist/esm/models/AdminConceptMediaReviewKindStats.js +83 -0
  22. package/dist/esm/models/AdminConceptMediaReviewNotification.d.ts +123 -0
  23. package/dist/esm/models/AdminConceptMediaReviewNotification.js +111 -0
  24. package/dist/esm/models/AdminConceptMediaReviewNotifications.d.ts +33 -0
  25. package/dist/esm/models/AdminConceptMediaReviewNotifications.js +44 -0
  26. package/dist/esm/models/AdminConceptMediaReviewStats.d.ts +51 -0
  27. package/dist/esm/models/AdminConceptMediaReviewStats.js +56 -0
  28. package/dist/esm/models/AdminShownConceptDiagram.d.ts +15 -2
  29. package/dist/esm/models/AdminShownConceptDiagram.js +9 -0
  30. package/dist/esm/models/AdminShownConceptImage.d.ts +15 -2
  31. package/dist/esm/models/AdminShownConceptImage.js +9 -0
  32. package/dist/esm/models/ConceptMediaFlagResult.d.ts +16 -0
  33. package/dist/esm/models/ConceptMediaFlagResult.js +13 -0
  34. package/dist/esm/models/ConceptMediaReviewIssue.d.ts +64 -0
  35. package/dist/esm/models/ConceptMediaReviewIssue.js +69 -0
  36. package/dist/esm/models/index.d.ts +8 -0
  37. package/dist/esm/models/index.js +8 -0
  38. package/dist/models/AdminClaimConceptMediaReviewNotificationsRequest.d.ts +32 -0
  39. package/dist/models/AdminClaimConceptMediaReviewNotificationsRequest.js +48 -0
  40. package/dist/models/AdminConceptDiagram.d.ts +15 -2
  41. package/dist/models/AdminConceptDiagram.js +9 -0
  42. package/dist/models/AdminConceptDiagramDetail.d.ts +15 -2
  43. package/dist/models/AdminConceptDiagramDetail.js +9 -0
  44. package/dist/models/AdminConceptImage.d.ts +15 -2
  45. package/dist/models/AdminConceptImage.js +9 -0
  46. package/dist/models/AdminConceptImageDetail.d.ts +15 -2
  47. package/dist/models/AdminConceptImageDetail.js +9 -0
  48. package/dist/models/AdminConceptMediaAgentReview.d.ts +131 -0
  49. package/dist/models/AdminConceptMediaAgentReview.js +125 -0
  50. package/dist/models/AdminConceptMediaReviewDurationStats.d.ts +50 -0
  51. package/dist/models/AdminConceptMediaReviewDurationStats.js +62 -0
  52. package/dist/models/AdminConceptMediaReviewKindStats.d.ts +89 -0
  53. package/dist/models/AdminConceptMediaReviewKindStats.js +91 -0
  54. package/dist/models/AdminConceptMediaReviewNotification.d.ts +123 -0
  55. package/dist/models/AdminConceptMediaReviewNotification.js +119 -0
  56. package/dist/models/AdminConceptMediaReviewNotifications.d.ts +33 -0
  57. package/dist/models/AdminConceptMediaReviewNotifications.js +51 -0
  58. package/dist/models/AdminConceptMediaReviewStats.d.ts +51 -0
  59. package/dist/models/AdminConceptMediaReviewStats.js +63 -0
  60. package/dist/models/AdminShownConceptDiagram.d.ts +15 -2
  61. package/dist/models/AdminShownConceptDiagram.js +9 -0
  62. package/dist/models/AdminShownConceptImage.d.ts +15 -2
  63. package/dist/models/AdminShownConceptImage.js +9 -0
  64. package/dist/models/ConceptMediaFlagResult.d.ts +16 -0
  65. package/dist/models/ConceptMediaFlagResult.js +14 -0
  66. package/dist/models/ConceptMediaReviewIssue.d.ts +64 -0
  67. package/dist/models/ConceptMediaReviewIssue.js +77 -0
  68. package/dist/models/index.d.ts +8 -0
  69. package/dist/models/index.js +8 -0
  70. package/package.json +1 -1
@@ -0,0 +1,83 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { AdminConceptMediaReviewDurationStatsFromJSON, AdminConceptMediaReviewDurationStatsToJSON, } from './AdminConceptMediaReviewDurationStats';
15
+ /**
16
+ * @export
17
+ */
18
+ export const AdminConceptMediaReviewKindStatsKindEnum = {
19
+ Image: 'image',
20
+ Diagram: 'diagram'
21
+ };
22
+ /**
23
+ * Check if a given object implements the AdminConceptMediaReviewKindStats interface.
24
+ */
25
+ export function instanceOfAdminConceptMediaReviewKindStats(value) {
26
+ if (!('kind' in value) || value['kind'] === undefined)
27
+ return false;
28
+ if (!('total' in value) || value['total'] === undefined)
29
+ return false;
30
+ if (!('passed' in value) || value['passed'] === undefined)
31
+ return false;
32
+ if (!('flagged' in value) || value['flagged'] === undefined)
33
+ return false;
34
+ if (!('failed' in value) || value['failed'] === undefined)
35
+ return false;
36
+ if (!('flagRate' in value) || value['flagRate'] === undefined)
37
+ return false;
38
+ if (!('durationMs' in value) || value['durationMs'] === undefined)
39
+ return false;
40
+ if (!('sinceCreatedMs' in value) || value['sinceCreatedMs'] === undefined)
41
+ return false;
42
+ if (!('costUsd' in value) || value['costUsd'] === undefined)
43
+ return false;
44
+ return true;
45
+ }
46
+ export function AdminConceptMediaReviewKindStatsFromJSON(json) {
47
+ return AdminConceptMediaReviewKindStatsFromJSONTyped(json, false);
48
+ }
49
+ export function AdminConceptMediaReviewKindStatsFromJSONTyped(json, ignoreDiscriminator) {
50
+ if (json == null) {
51
+ return json;
52
+ }
53
+ return {
54
+ 'kind': json['kind'],
55
+ 'total': json['total'],
56
+ 'passed': json['passed'],
57
+ 'flagged': json['flagged'],
58
+ 'failed': json['failed'],
59
+ 'flagRate': json['flagRate'],
60
+ 'durationMs': AdminConceptMediaReviewDurationStatsFromJSON(json['durationMs']),
61
+ 'sinceCreatedMs': AdminConceptMediaReviewDurationStatsFromJSON(json['sinceCreatedMs']),
62
+ 'costUsd': json['costUsd'],
63
+ };
64
+ }
65
+ export function AdminConceptMediaReviewKindStatsToJSON(json) {
66
+ return AdminConceptMediaReviewKindStatsToJSONTyped(json, false);
67
+ }
68
+ export function AdminConceptMediaReviewKindStatsToJSONTyped(value, ignoreDiscriminator = false) {
69
+ if (value == null) {
70
+ return value;
71
+ }
72
+ return {
73
+ 'kind': value['kind'],
74
+ 'total': value['total'],
75
+ 'passed': value['passed'],
76
+ 'flagged': value['flagged'],
77
+ 'failed': value['failed'],
78
+ 'flagRate': value['flagRate'],
79
+ 'durationMs': AdminConceptMediaReviewDurationStatsToJSON(value['durationMs']),
80
+ 'sinceCreatedMs': AdminConceptMediaReviewDurationStatsToJSON(value['sinceCreatedMs']),
81
+ 'costUsd': value['costUsd'],
82
+ };
83
+ }
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * A media row the reviewer agent flagged, claimed once for the admin notification email.
14
+ * @export
15
+ * @interface AdminConceptMediaReviewNotification
16
+ */
17
+ export interface AdminConceptMediaReviewNotification {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof AdminConceptMediaReviewNotification
22
+ */
23
+ reviewId: string;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof AdminConceptMediaReviewNotification
28
+ */
29
+ mediaKind: AdminConceptMediaReviewNotificationMediaKindEnum;
30
+ /**
31
+ * The concept image or diagram id, per mediaKind
32
+ * @type {string}
33
+ * @memberof AdminConceptMediaReviewNotification
34
+ */
35
+ mediaId: string;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof AdminConceptMediaReviewNotification
40
+ */
41
+ conceptId: string;
42
+ /**
43
+ *
44
+ * @type {string}
45
+ * @memberof AdminConceptMediaReviewNotification
46
+ */
47
+ conceptName: string;
48
+ /**
49
+ * The diagram's title; null for an image
50
+ * @type {string}
51
+ * @memberof AdminConceptMediaReviewNotification
52
+ */
53
+ mediaTitle: string | null;
54
+ /**
55
+ * The diagram's description, or the image's alt text
56
+ * @type {string}
57
+ * @memberof AdminConceptMediaReviewNotification
58
+ */
59
+ mediaDescription: string;
60
+ /**
61
+ *
62
+ * @type {string}
63
+ * @memberof AdminConceptMediaReviewNotification
64
+ */
65
+ reason: AdminConceptMediaReviewNotificationReasonEnum;
66
+ /**
67
+ * The agent's explanation for an admin
68
+ * @type {string}
69
+ * @memberof AdminConceptMediaReviewNotification
70
+ */
71
+ details: string;
72
+ /**
73
+ * What the flag did: hidden and flagged_again changed the row; already_hidden (admin drafts start hidden) and already_flagged did not.
74
+ * @type {string}
75
+ * @memberof AdminConceptMediaReviewNotification
76
+ */
77
+ flagOutcome: AdminConceptMediaReviewNotificationFlagOutcomeEnum | null;
78
+ /**
79
+ *
80
+ * @type {Date}
81
+ * @memberof AdminConceptMediaReviewNotification
82
+ */
83
+ completedAt: Date;
84
+ }
85
+ /**
86
+ * @export
87
+ */
88
+ export declare const AdminConceptMediaReviewNotificationMediaKindEnum: {
89
+ readonly Image: "image";
90
+ readonly Diagram: "diagram";
91
+ };
92
+ export type AdminConceptMediaReviewNotificationMediaKindEnum = typeof AdminConceptMediaReviewNotificationMediaKindEnum[keyof typeof AdminConceptMediaReviewNotificationMediaKindEnum];
93
+ /**
94
+ * @export
95
+ */
96
+ export declare const AdminConceptMediaReviewNotificationReasonEnum: {
97
+ readonly Inaccurate: "inaccurate";
98
+ readonly HardToRead: "hard_to_read";
99
+ readonly Irrelevant: "irrelevant";
100
+ readonly Inappropriate: "inappropriate";
101
+ readonly NotHelpful: "not_helpful";
102
+ readonly Other: "other";
103
+ };
104
+ export type AdminConceptMediaReviewNotificationReasonEnum = typeof AdminConceptMediaReviewNotificationReasonEnum[keyof typeof AdminConceptMediaReviewNotificationReasonEnum];
105
+ /**
106
+ * @export
107
+ */
108
+ export declare const AdminConceptMediaReviewNotificationFlagOutcomeEnum: {
109
+ readonly Hidden: "hidden";
110
+ readonly AlreadyHidden: "already_hidden";
111
+ readonly FlaggedAgain: "flagged_again";
112
+ readonly AlreadyFlagged: "already_flagged";
113
+ readonly NotFound: "not_found";
114
+ };
115
+ export type AdminConceptMediaReviewNotificationFlagOutcomeEnum = typeof AdminConceptMediaReviewNotificationFlagOutcomeEnum[keyof typeof AdminConceptMediaReviewNotificationFlagOutcomeEnum];
116
+ /**
117
+ * Check if a given object implements the AdminConceptMediaReviewNotification interface.
118
+ */
119
+ export declare function instanceOfAdminConceptMediaReviewNotification(value: object): value is AdminConceptMediaReviewNotification;
120
+ export declare function AdminConceptMediaReviewNotificationFromJSON(json: any): AdminConceptMediaReviewNotification;
121
+ export declare function AdminConceptMediaReviewNotificationFromJSONTyped(json: any, ignoreDiscriminator: boolean): AdminConceptMediaReviewNotification;
122
+ export declare function AdminConceptMediaReviewNotificationToJSON(json: any): AdminConceptMediaReviewNotification;
123
+ export declare function AdminConceptMediaReviewNotificationToJSONTyped(value?: AdminConceptMediaReviewNotification | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,111 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const AdminConceptMediaReviewNotificationMediaKindEnum = {
18
+ Image: 'image',
19
+ Diagram: 'diagram'
20
+ };
21
+ /**
22
+ * @export
23
+ */
24
+ export const AdminConceptMediaReviewNotificationReasonEnum = {
25
+ Inaccurate: 'inaccurate',
26
+ HardToRead: 'hard_to_read',
27
+ Irrelevant: 'irrelevant',
28
+ Inappropriate: 'inappropriate',
29
+ NotHelpful: 'not_helpful',
30
+ Other: 'other'
31
+ };
32
+ /**
33
+ * @export
34
+ */
35
+ export const AdminConceptMediaReviewNotificationFlagOutcomeEnum = {
36
+ Hidden: 'hidden',
37
+ AlreadyHidden: 'already_hidden',
38
+ FlaggedAgain: 'flagged_again',
39
+ AlreadyFlagged: 'already_flagged',
40
+ NotFound: 'not_found'
41
+ };
42
+ /**
43
+ * Check if a given object implements the AdminConceptMediaReviewNotification interface.
44
+ */
45
+ export function instanceOfAdminConceptMediaReviewNotification(value) {
46
+ if (!('reviewId' in value) || value['reviewId'] === undefined)
47
+ return false;
48
+ if (!('mediaKind' in value) || value['mediaKind'] === undefined)
49
+ return false;
50
+ if (!('mediaId' in value) || value['mediaId'] === undefined)
51
+ return false;
52
+ if (!('conceptId' in value) || value['conceptId'] === undefined)
53
+ return false;
54
+ if (!('conceptName' in value) || value['conceptName'] === undefined)
55
+ return false;
56
+ if (!('mediaTitle' in value) || value['mediaTitle'] === undefined)
57
+ return false;
58
+ if (!('mediaDescription' in value) || value['mediaDescription'] === undefined)
59
+ return false;
60
+ if (!('reason' in value) || value['reason'] === undefined)
61
+ return false;
62
+ if (!('details' in value) || value['details'] === undefined)
63
+ return false;
64
+ if (!('flagOutcome' in value) || value['flagOutcome'] === undefined)
65
+ return false;
66
+ if (!('completedAt' in value) || value['completedAt'] === undefined)
67
+ return false;
68
+ return true;
69
+ }
70
+ export function AdminConceptMediaReviewNotificationFromJSON(json) {
71
+ return AdminConceptMediaReviewNotificationFromJSONTyped(json, false);
72
+ }
73
+ export function AdminConceptMediaReviewNotificationFromJSONTyped(json, ignoreDiscriminator) {
74
+ if (json == null) {
75
+ return json;
76
+ }
77
+ return {
78
+ 'reviewId': json['reviewId'],
79
+ 'mediaKind': json['mediaKind'],
80
+ 'mediaId': json['mediaId'],
81
+ 'conceptId': json['conceptId'],
82
+ 'conceptName': json['conceptName'],
83
+ 'mediaTitle': json['mediaTitle'],
84
+ 'mediaDescription': json['mediaDescription'],
85
+ 'reason': json['reason'],
86
+ 'details': json['details'],
87
+ 'flagOutcome': json['flagOutcome'],
88
+ 'completedAt': (new Date(json['completedAt'])),
89
+ };
90
+ }
91
+ export function AdminConceptMediaReviewNotificationToJSON(json) {
92
+ return AdminConceptMediaReviewNotificationToJSONTyped(json, false);
93
+ }
94
+ export function AdminConceptMediaReviewNotificationToJSONTyped(value, ignoreDiscriminator = false) {
95
+ if (value == null) {
96
+ return value;
97
+ }
98
+ return {
99
+ 'reviewId': value['reviewId'],
100
+ 'mediaKind': value['mediaKind'],
101
+ 'mediaId': value['mediaId'],
102
+ 'conceptId': value['conceptId'],
103
+ 'conceptName': value['conceptName'],
104
+ 'mediaTitle': value['mediaTitle'],
105
+ 'mediaDescription': value['mediaDescription'],
106
+ 'reason': value['reason'],
107
+ 'details': value['details'],
108
+ 'flagOutcome': value['flagOutcome'],
109
+ 'completedAt': value['completedAt'].toISOString(),
110
+ };
111
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { AdminConceptMediaReviewNotification } from './AdminConceptMediaReviewNotification';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface AdminConceptMediaReviewNotifications
17
+ */
18
+ export interface AdminConceptMediaReviewNotifications {
19
+ /**
20
+ * Flagged reviews claimed by this call, oldest first. Each is returned by exactly one call; empty when none are waiting.
21
+ * @type {Array<AdminConceptMediaReviewNotification>}
22
+ * @memberof AdminConceptMediaReviewNotifications
23
+ */
24
+ data: Array<AdminConceptMediaReviewNotification>;
25
+ }
26
+ /**
27
+ * Check if a given object implements the AdminConceptMediaReviewNotifications interface.
28
+ */
29
+ export declare function instanceOfAdminConceptMediaReviewNotifications(value: object): value is AdminConceptMediaReviewNotifications;
30
+ export declare function AdminConceptMediaReviewNotificationsFromJSON(json: any): AdminConceptMediaReviewNotifications;
31
+ export declare function AdminConceptMediaReviewNotificationsFromJSONTyped(json: any, ignoreDiscriminator: boolean): AdminConceptMediaReviewNotifications;
32
+ export declare function AdminConceptMediaReviewNotificationsToJSON(json: any): AdminConceptMediaReviewNotifications;
33
+ export declare function AdminConceptMediaReviewNotificationsToJSONTyped(value?: AdminConceptMediaReviewNotifications | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,44 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { AdminConceptMediaReviewNotificationFromJSON, AdminConceptMediaReviewNotificationToJSON, } from './AdminConceptMediaReviewNotification';
15
+ /**
16
+ * Check if a given object implements the AdminConceptMediaReviewNotifications interface.
17
+ */
18
+ export function instanceOfAdminConceptMediaReviewNotifications(value) {
19
+ if (!('data' in value) || value['data'] === undefined)
20
+ return false;
21
+ return true;
22
+ }
23
+ export function AdminConceptMediaReviewNotificationsFromJSON(json) {
24
+ return AdminConceptMediaReviewNotificationsFromJSONTyped(json, false);
25
+ }
26
+ export function AdminConceptMediaReviewNotificationsFromJSONTyped(json, ignoreDiscriminator) {
27
+ if (json == null) {
28
+ return json;
29
+ }
30
+ return {
31
+ 'data': (json['data'].map(AdminConceptMediaReviewNotificationFromJSON)),
32
+ };
33
+ }
34
+ export function AdminConceptMediaReviewNotificationsToJSON(json) {
35
+ return AdminConceptMediaReviewNotificationsToJSONTyped(json, false);
36
+ }
37
+ export function AdminConceptMediaReviewNotificationsToJSONTyped(value, ignoreDiscriminator = false) {
38
+ if (value == null) {
39
+ return value;
40
+ }
41
+ return {
42
+ 'data': (value['data'].map(AdminConceptMediaReviewNotificationToJSON)),
43
+ };
44
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { AdminConceptMediaReviewKindStats } from './AdminConceptMediaReviewKindStats';
13
+ /**
14
+ * How the concept media reviewer agent has performed over a window: volume, flag rate, latency, and spend, per media kind.
15
+ * @export
16
+ * @interface AdminConceptMediaReviewStats
17
+ */
18
+ export interface AdminConceptMediaReviewStats {
19
+ /**
20
+ * The window, in days
21
+ * @type {number}
22
+ * @memberof AdminConceptMediaReviewStats
23
+ */
24
+ days: number;
25
+ /**
26
+ * Start of the window: reviews created at or after this
27
+ * @type {Date}
28
+ * @memberof AdminConceptMediaReviewStats
29
+ */
30
+ since: Date;
31
+ /**
32
+ * One entry per kind, image then diagram, even when empty
33
+ * @type {Array<AdminConceptMediaReviewKindStats>}
34
+ * @memberof AdminConceptMediaReviewStats
35
+ */
36
+ kinds: Array<AdminConceptMediaReviewKindStats>;
37
+ /**
38
+ * Sum of known review costs in USD across both kinds
39
+ * @type {number}
40
+ * @memberof AdminConceptMediaReviewStats
41
+ */
42
+ totalCostUsd: number;
43
+ }
44
+ /**
45
+ * Check if a given object implements the AdminConceptMediaReviewStats interface.
46
+ */
47
+ export declare function instanceOfAdminConceptMediaReviewStats(value: object): value is AdminConceptMediaReviewStats;
48
+ export declare function AdminConceptMediaReviewStatsFromJSON(json: any): AdminConceptMediaReviewStats;
49
+ export declare function AdminConceptMediaReviewStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): AdminConceptMediaReviewStats;
50
+ export declare function AdminConceptMediaReviewStatsToJSON(json: any): AdminConceptMediaReviewStats;
51
+ export declare function AdminConceptMediaReviewStatsToJSONTyped(value?: AdminConceptMediaReviewStats | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,56 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { AdminConceptMediaReviewKindStatsFromJSON, AdminConceptMediaReviewKindStatsToJSON, } from './AdminConceptMediaReviewKindStats';
15
+ /**
16
+ * Check if a given object implements the AdminConceptMediaReviewStats interface.
17
+ */
18
+ export function instanceOfAdminConceptMediaReviewStats(value) {
19
+ if (!('days' in value) || value['days'] === undefined)
20
+ return false;
21
+ if (!('since' in value) || value['since'] === undefined)
22
+ return false;
23
+ if (!('kinds' in value) || value['kinds'] === undefined)
24
+ return false;
25
+ if (!('totalCostUsd' in value) || value['totalCostUsd'] === undefined)
26
+ return false;
27
+ return true;
28
+ }
29
+ export function AdminConceptMediaReviewStatsFromJSON(json) {
30
+ return AdminConceptMediaReviewStatsFromJSONTyped(json, false);
31
+ }
32
+ export function AdminConceptMediaReviewStatsFromJSONTyped(json, ignoreDiscriminator) {
33
+ if (json == null) {
34
+ return json;
35
+ }
36
+ return {
37
+ 'days': json['days'],
38
+ 'since': (new Date(json['since'])),
39
+ 'kinds': (json['kinds'].map(AdminConceptMediaReviewKindStatsFromJSON)),
40
+ 'totalCostUsd': json['totalCostUsd'],
41
+ };
42
+ }
43
+ export function AdminConceptMediaReviewStatsToJSON(json) {
44
+ return AdminConceptMediaReviewStatsToJSONTyped(json, false);
45
+ }
46
+ export function AdminConceptMediaReviewStatsToJSONTyped(value, ignoreDiscriminator = false) {
47
+ if (value == null) {
48
+ return value;
49
+ }
50
+ return {
51
+ 'days': value['days'],
52
+ 'since': value['since'].toISOString(),
53
+ 'kinds': (value['kinds'].map(AdminConceptMediaReviewKindStatsToJSON)),
54
+ 'totalCostUsd': value['totalCostUsd'],
55
+ };
56
+ }
@@ -9,6 +9,7 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { AdminConceptMediaAgentReview } from './AdminConceptMediaAgentReview';
12
13
  import type { AdminConceptMediaConcept } from './AdminConceptMediaConcept';
13
14
  import type { AdminConceptMediaHistoryEntry } from './AdminConceptMediaHistoryEntry';
14
15
  import type { AdminConceptMediaActor } from './AdminConceptMediaActor';
@@ -80,7 +81,7 @@ export interface AdminShownConceptDiagram {
80
81
  */
81
82
  hiddenBy: AdminConceptMediaActor | null;
82
83
  /**
83
- * True when the current hide came from a learner's thumbs-down flag rather than an admin. False when visible or hidden by an admin. List these with state=flagged.
84
+ * True when the current hide came from a flag (a learner's thumbs-down, or the reviewer agent's; see flaggedByAgent) rather than an admin. False when visible or hidden by an admin. List these with state=flagged.
84
85
  * @type {boolean}
85
86
  * @memberof AdminShownConceptDiagram
86
87
  */
@@ -98,7 +99,19 @@ export interface AdminShownConceptDiagram {
98
99
  */
99
100
  approvedBy: AdminConceptMediaActor | null;
100
101
  /**
101
- * When a learner first flagged it after an admin approved it. The flag leaves an approved row visible, so this is what puts it back in state=flagged for re-review. Null when no flag has come in since the last admin show or hide; cleared by show, hide, restore, and by showing another version with hideOtherVersions.
102
+ * True while a concept media reviewer agent flag awaits an admin's review: the flag hid the row (hiddenByFlag), queued an approved row for re-review (flaggedAfterApprovalAt), or found the row hidden and unapproved (e.g. an admin draft) and left it hidden. Such rows list under state=flagged; agentReview carries the reason. hiddenBy is null for an agent hide. Cleared by show, hide, and showing another version with hideOtherVersions; restore keeps it on a row that stays hidden. Never set on a row a learner's flag hid.
103
+ * @type {boolean}
104
+ * @memberof AdminShownConceptDiagram
105
+ */
106
+ flaggedByAgent: boolean;
107
+ /**
108
+ * The reviewer agent's latest review of this row; null when none has run (the review is off, or still pending).
109
+ * @type {AdminConceptMediaAgentReview}
110
+ * @memberof AdminShownConceptDiagram
111
+ */
112
+ agentReview: AdminConceptMediaAgentReview | null;
113
+ /**
114
+ * When a learner (or the reviewer agent, see flaggedByAgent) first flagged it after an admin approved it. The flag leaves an approved row visible, so this is what puts it back in state=flagged for re-review. Null when no flag has come in since the last admin show or hide; cleared by show, hide, restore, and by showing another version with hideOtherVersions.
102
115
  * @type {Date}
103
116
  * @memberof AdminShownConceptDiagram
104
117
  */
@@ -11,6 +11,7 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { AdminConceptMediaAgentReviewFromJSON, AdminConceptMediaAgentReviewToJSON, } from './AdminConceptMediaAgentReview';
14
15
  import { AdminConceptMediaConceptFromJSON, AdminConceptMediaConceptToJSON, } from './AdminConceptMediaConcept';
15
16
  import { AdminConceptMediaHistoryEntryFromJSON, AdminConceptMediaHistoryEntryToJSON, } from './AdminConceptMediaHistoryEntry';
16
17
  import { AdminConceptMediaActorFromJSON, AdminConceptMediaActorToJSON, } from './AdminConceptMediaActor';
@@ -60,6 +61,10 @@ export function instanceOfAdminShownConceptDiagram(value) {
60
61
  return false;
61
62
  if (!('approvedBy' in value) || value['approvedBy'] === undefined)
62
63
  return false;
64
+ if (!('flaggedByAgent' in value) || value['flaggedByAgent'] === undefined)
65
+ return false;
66
+ if (!('agentReview' in value) || value['agentReview'] === undefined)
67
+ return false;
63
68
  if (!('flaggedAfterApprovalAt' in value) || value['flaggedAfterApprovalAt'] === undefined)
64
69
  return false;
65
70
  if (!('deletedAt' in value) || value['deletedAt'] === undefined)
@@ -123,6 +128,8 @@ export function AdminShownConceptDiagramFromJSONTyped(json, ignoreDiscriminator)
123
128
  'hiddenByFlag': json['hiddenByFlag'],
124
129
  'approvedAt': (json['approvedAt'] == null ? null : new Date(json['approvedAt'])),
125
130
  'approvedBy': AdminConceptMediaActorFromJSON(json['approvedBy']),
131
+ 'flaggedByAgent': json['flaggedByAgent'],
132
+ 'agentReview': AdminConceptMediaAgentReviewFromJSON(json['agentReview']),
126
133
  'flaggedAfterApprovalAt': (json['flaggedAfterApprovalAt'] == null ? null : new Date(json['flaggedAfterApprovalAt'])),
127
134
  'deletedAt': (json['deletedAt'] == null ? null : new Date(json['deletedAt'])),
128
135
  'deletedBy': AdminConceptMediaActorFromJSON(json['deletedBy']),
@@ -166,6 +173,8 @@ export function AdminShownConceptDiagramToJSONTyped(value, ignoreDiscriminator =
166
173
  'hiddenByFlag': value['hiddenByFlag'],
167
174
  'approvedAt': value['approvedAt'] == null ? value['approvedAt'] : value['approvedAt'].toISOString(),
168
175
  'approvedBy': AdminConceptMediaActorToJSON(value['approvedBy']),
176
+ 'flaggedByAgent': value['flaggedByAgent'],
177
+ 'agentReview': AdminConceptMediaAgentReviewToJSON(value['agentReview']),
169
178
  'flaggedAfterApprovalAt': value['flaggedAfterApprovalAt'] == null ? value['flaggedAfterApprovalAt'] : value['flaggedAfterApprovalAt'].toISOString(),
170
179
  'deletedAt': value['deletedAt'] == null ? value['deletedAt'] : value['deletedAt'].toISOString(),
171
180
  'deletedBy': AdminConceptMediaActorToJSON(value['deletedBy']),
@@ -9,6 +9,7 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { AdminConceptMediaAgentReview } from './AdminConceptMediaAgentReview';
12
13
  import type { AdminConceptMediaConcept } from './AdminConceptMediaConcept';
13
14
  import type { AdminConceptMediaHistoryEntry } from './AdminConceptMediaHistoryEntry';
14
15
  import type { AdminConceptMediaActor } from './AdminConceptMediaActor';
@@ -80,7 +81,7 @@ export interface AdminShownConceptImage {
80
81
  */
81
82
  hiddenBy: AdminConceptMediaActor | null;
82
83
  /**
83
- * True when the current hide came from a learner's thumbs-down flag rather than an admin. False when visible or hidden by an admin. List these with state=flagged.
84
+ * True when the current hide came from a flag (a learner's thumbs-down, or the reviewer agent's; see flaggedByAgent) rather than an admin. False when visible or hidden by an admin. List these with state=flagged.
84
85
  * @type {boolean}
85
86
  * @memberof AdminShownConceptImage
86
87
  */
@@ -98,7 +99,19 @@ export interface AdminShownConceptImage {
98
99
  */
99
100
  approvedBy: AdminConceptMediaActor | null;
100
101
  /**
101
- * When a learner first flagged it after an admin approved it. The flag leaves an approved row visible, so this is what puts it back in state=flagged for re-review. Null when no flag has come in since the last admin show or hide; cleared by show, hide, restore, and by showing another version with hideOtherVersions.
102
+ * True while a concept media reviewer agent flag awaits an admin's review: the flag hid the row (hiddenByFlag), queued an approved row for re-review (flaggedAfterApprovalAt), or found the row hidden and unapproved (e.g. an admin draft) and left it hidden. Such rows list under state=flagged; agentReview carries the reason. hiddenBy is null for an agent hide. Cleared by show, hide, and showing another version with hideOtherVersions; restore keeps it on a row that stays hidden. Never set on a row a learner's flag hid.
103
+ * @type {boolean}
104
+ * @memberof AdminShownConceptImage
105
+ */
106
+ flaggedByAgent: boolean;
107
+ /**
108
+ * The reviewer agent's latest review of this row; null when none has run (the review is off, or still pending).
109
+ * @type {AdminConceptMediaAgentReview}
110
+ * @memberof AdminShownConceptImage
111
+ */
112
+ agentReview: AdminConceptMediaAgentReview | null;
113
+ /**
114
+ * When a learner (or the reviewer agent, see flaggedByAgent) first flagged it after an admin approved it. The flag leaves an approved row visible, so this is what puts it back in state=flagged for re-review. Null when no flag has come in since the last admin show or hide; cleared by show, hide, restore, and by showing another version with hideOtherVersions.
102
115
  * @type {Date}
103
116
  * @memberof AdminShownConceptImage
104
117
  */
@@ -11,6 +11,7 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { AdminConceptMediaAgentReviewFromJSON, AdminConceptMediaAgentReviewToJSON, } from './AdminConceptMediaAgentReview';
14
15
  import { AdminConceptMediaConceptFromJSON, AdminConceptMediaConceptToJSON, } from './AdminConceptMediaConcept';
15
16
  import { AdminConceptMediaHistoryEntryFromJSON, AdminConceptMediaHistoryEntryToJSON, } from './AdminConceptMediaHistoryEntry';
16
17
  import { AdminConceptMediaActorFromJSON, AdminConceptMediaActorToJSON, } from './AdminConceptMediaActor';
@@ -60,6 +61,10 @@ export function instanceOfAdminShownConceptImage(value) {
60
61
  return false;
61
62
  if (!('approvedBy' in value) || value['approvedBy'] === undefined)
62
63
  return false;
64
+ if (!('flaggedByAgent' in value) || value['flaggedByAgent'] === undefined)
65
+ return false;
66
+ if (!('agentReview' in value) || value['agentReview'] === undefined)
67
+ return false;
63
68
  if (!('flaggedAfterApprovalAt' in value) || value['flaggedAfterApprovalAt'] === undefined)
64
69
  return false;
65
70
  if (!('deletedAt' in value) || value['deletedAt'] === undefined)
@@ -129,6 +134,8 @@ export function AdminShownConceptImageFromJSONTyped(json, ignoreDiscriminator) {
129
134
  'hiddenByFlag': json['hiddenByFlag'],
130
135
  'approvedAt': (json['approvedAt'] == null ? null : new Date(json['approvedAt'])),
131
136
  'approvedBy': AdminConceptMediaActorFromJSON(json['approvedBy']),
137
+ 'flaggedByAgent': json['flaggedByAgent'],
138
+ 'agentReview': AdminConceptMediaAgentReviewFromJSON(json['agentReview']),
132
139
  'flaggedAfterApprovalAt': (json['flaggedAfterApprovalAt'] == null ? null : new Date(json['flaggedAfterApprovalAt'])),
133
140
  'deletedAt': (json['deletedAt'] == null ? null : new Date(json['deletedAt'])),
134
141
  'deletedBy': AdminConceptMediaActorFromJSON(json['deletedBy']),
@@ -175,6 +182,8 @@ export function AdminShownConceptImageToJSONTyped(value, ignoreDiscriminator = f
175
182
  'hiddenByFlag': value['hiddenByFlag'],
176
183
  'approvedAt': value['approvedAt'] == null ? value['approvedAt'] : value['approvedAt'].toISOString(),
177
184
  'approvedBy': AdminConceptMediaActorToJSON(value['approvedBy']),
185
+ 'flaggedByAgent': value['flaggedByAgent'],
186
+ 'agentReview': AdminConceptMediaAgentReviewToJSON(value['agentReview']),
178
187
  'flaggedAfterApprovalAt': value['flaggedAfterApprovalAt'] == null ? value['flaggedAfterApprovalAt'] : value['flaggedAfterApprovalAt'].toISOString(),
179
188
  'deletedAt': value['deletedAt'] == null ? value['deletedAt'] : value['deletedAt'].toISOString(),
180
189
  'deletedBy': AdminConceptMediaActorToJSON(value['deletedBy']),