@illuminateeducation/dna-atd-frontend 1.0.1 → 1.0.2-DNAATD-3045-v3-POC.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/README.md +20 -20
- package/dist/assets/dna-atd-frontend.css +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.es.js +47350 -0
- package/dist/index.es.js.map +1 -0
- package/dist/src/App.vue.d.ts +2 -0
- package/dist/src/components/common/BaseButton.vue.d.ts +16 -0
- package/dist/src/components/common/BaseInput.vue.d.ts +8 -0
- package/dist/src/components/common/BaseModal.vue.d.ts +19 -0
- package/dist/src/components/common/ErrorBoundary.vue.d.ts +37 -0
- package/dist/src/composables/useAsync.d.ts +24 -0
- package/dist/src/composables/useClickOutside.d.ts +7 -0
- package/dist/src/composables/useForm.d.ts +38 -0
- package/dist/src/composables/useLocalStorage.d.ts +24 -0
- package/dist/src/composables/useWindowSize.d.ts +20 -0
- package/dist/src/config/app.config.d.ts +67 -0
- package/dist/src/context/backendContext.d.ts +9 -0
- package/dist/src/features/admin/customization/composables/useCustomization.d.ts +19 -0
- package/dist/src/features/admin/customization/store/customizationStore.d.ts +30 -0
- package/dist/src/features/admin/customization/views/CustomizationView.vue.d.ts +2 -0
- package/dist/src/features/admin/validation/composables/useValidation.d.ts +18 -0
- package/dist/src/features/admin/validation/store/validationStore.d.ts +27 -0
- package/dist/src/features/admin/validation/views/ValidationView.vue.d.ts +2 -0
- package/dist/src/features/reports/codeBasedJasper/components/AssessmentFinder.vue.d.ts +618 -0
- package/dist/src/features/reports/codeBasedJasper/components/DownloadButtons.vue.d.ts +13 -0
- package/dist/src/features/reports/codeBasedJasper/components/FavoritesWidget.vue.d.ts +10 -0
- package/dist/src/features/reports/codeBasedJasper/components/MultipleAssessmentIdsField.vue.d.ts +18 -0
- package/dist/src/features/reports/codeBasedJasper/components/ReportFilters.vue.d.ts +18 -0
- package/dist/src/features/reports/codeBasedJasper/components/ReportPagination.vue.d.ts +11 -0
- package/dist/src/features/reports/codeBasedJasper/components/ReportViewer.vue.d.ts +16 -0
- package/dist/src/features/reports/codeBasedJasper/composables/useCodeBasedJasper.d.ts +184 -0
- package/dist/src/features/reports/codeBasedJasper/mount.d.ts +1 -0
- package/dist/src/features/reports/codeBasedJasper/services/codeBasedJasperApi.d.ts +190 -0
- package/dist/src/features/reports/codeBasedJasper/store/codeBasedJasperStore.d.ts +503 -0
- package/dist/src/features/reports/codeBasedJasper/types/index.d.ts +54 -0
- package/dist/src/features/reports/codeBasedJasper/views/CodeBasedJasperReportView.vue.d.ts +32 -0
- package/dist/src/index.d.ts +51 -0
- package/dist/src/layouts/AdminLayout.vue.d.ts +2 -0
- package/dist/src/plugins/globalErrorHandling.d.ts +36 -0
- package/dist/src/plugins/vuetify.d.ts +86 -0
- package/dist/src/router/index.d.ts +16 -0
- package/dist/src/services/apiService.d.ts +33 -0
- package/dist/src/services/integration.d.ts +54 -0
- package/dist/src/types/api.d.ts +27 -0
- package/dist/src/types/backend.d.ts +27 -0
- package/dist/src/utils/helpers.d.ts +50 -0
- package/dist/src/utils/safeJson.d.ts +17 -0
- package/dist/src/views/HomeView.vue.d.ts +2 -0
- package/dist/src/views/NotFoundView.vue.d.ts +2 -0
- package/package.json +32 -9
- package/dist/.vite/manifest.json +0 -80
- package/dist/assets/AdminLayout.css +0 -1
- package/dist/assets/AdminLayout.js +0 -1
- package/dist/assets/CustomizationView.css +0 -1
- package/dist/assets/CustomizationView.js +0 -1
- package/dist/assets/HomeView.js +0 -1
- package/dist/assets/NotFoundView.css +0 -1
- package/dist/assets/NotFoundView.js +0 -1
- package/dist/assets/ValidationView.css +0 -1
- package/dist/assets/ValidationView.js +0 -1
- package/dist/assets/_plugin-vue_export-helper.js +0 -1
- package/dist/assets/index.css +0 -1
- package/dist/assets/index.js +0 -2
- package/dist/index.html +0 -14
- package/index.js +0 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ReportData } from '../services/codeBasedJasperApi';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
formData?: ReportData;
|
|
4
|
+
extraHtml?: string;
|
|
5
|
+
};
|
|
6
|
+
declare function getFormData(): Record<string, unknown>;
|
|
7
|
+
declare function submitForm(): void;
|
|
8
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {
|
|
9
|
+
getFormData: typeof getFormData;
|
|
10
|
+
submitForm: typeof submitForm;
|
|
11
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
12
|
+
"form-submitted": (data: Record<string, unknown>) => any;
|
|
13
|
+
"field-changed": (fieldName: string, value: unknown) => any;
|
|
14
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
15
|
+
"onForm-submitted"?: ((data: Record<string, unknown>) => any) | undefined;
|
|
16
|
+
"onField-changed"?: ((fieldName: string, value: unknown) => any) | undefined;
|
|
17
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
18
|
+
export default _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { PaginationData } from '../services/codeBasedJasperApi';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
pagination: PaginationData;
|
|
4
|
+
loading?: boolean;
|
|
5
|
+
};
|
|
6
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
7
|
+
"page-changed": (page: number) => any;
|
|
8
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
9
|
+
"onPage-changed"?: ((page: number) => any) | undefined;
|
|
10
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
11
|
+
export default _default;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PaginationData } from '../services/codeBasedJasperApi';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
html: string;
|
|
4
|
+
iframeSrc?: string | null;
|
|
5
|
+
usesVisualizeJs?: boolean;
|
|
6
|
+
usesItemPreviewJs?: boolean;
|
|
7
|
+
pagination?: PaginationData;
|
|
8
|
+
};
|
|
9
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
10
|
+
"page-changed": (page: number) => any;
|
|
11
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
12
|
+
"onPage-changed"?: ((page: number) => any) | undefined;
|
|
13
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
14
|
+
iframeRef: HTMLIFrameElement;
|
|
15
|
+
}, HTMLDivElement>;
|
|
16
|
+
export default _default;
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file useCodeBasedJasper.ts
|
|
3
|
+
* @description Vue composable for Code Based Jasper Report functionality
|
|
4
|
+
* @author Illuminate Education
|
|
5
|
+
* @lastUpdated 2025-01-03
|
|
6
|
+
*
|
|
7
|
+
* @responsibilities
|
|
8
|
+
* - Provides reactive access to Code Based Jasper store
|
|
9
|
+
* - Exposes report data and loading states
|
|
10
|
+
* - Wraps API calls with error handling
|
|
11
|
+
* - Simplifies component integration
|
|
12
|
+
*/
|
|
13
|
+
export declare function useCodeBasedJasper(): {
|
|
14
|
+
reportData: import('vue').Ref<{
|
|
15
|
+
form_html?: string | undefined;
|
|
16
|
+
form_fields?: Record<string, {
|
|
17
|
+
label?: string;
|
|
18
|
+
default?: unknown;
|
|
19
|
+
options?: Record<string, string>;
|
|
20
|
+
required?: boolean;
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
}> | undefined;
|
|
23
|
+
demographic_fields?: Record<string, {
|
|
24
|
+
label?: string;
|
|
25
|
+
default?: unknown;
|
|
26
|
+
options?: Record<string, string>;
|
|
27
|
+
required?: boolean;
|
|
28
|
+
disabled?: boolean;
|
|
29
|
+
}> | undefined;
|
|
30
|
+
form_action?: string | undefined;
|
|
31
|
+
form_method?: string | undefined;
|
|
32
|
+
hidden_fields?: Record<string, unknown> | undefined;
|
|
33
|
+
form_data?: Record<string, unknown> | undefined;
|
|
34
|
+
selected_filter_options?: Record<string, unknown> | undefined;
|
|
35
|
+
additional_field_names?: string[] | undefined;
|
|
36
|
+
additional_fields?: Record<string, {
|
|
37
|
+
label?: string;
|
|
38
|
+
default?: unknown;
|
|
39
|
+
options?: Record<string, string>;
|
|
40
|
+
required?: boolean;
|
|
41
|
+
disabled?: boolean;
|
|
42
|
+
control?: "select" | "checkbox" | "text";
|
|
43
|
+
}> | undefined;
|
|
44
|
+
additional_fields_html?: Record<string, string> | undefined;
|
|
45
|
+
extra_html?: string | undefined;
|
|
46
|
+
report_html?: string | undefined;
|
|
47
|
+
pagination?: {
|
|
48
|
+
currentPage: number;
|
|
49
|
+
totalPages: number;
|
|
50
|
+
hasNext: boolean;
|
|
51
|
+
hasPrev: boolean;
|
|
52
|
+
} | undefined;
|
|
53
|
+
has_assessment_finder?: boolean | undefined;
|
|
54
|
+
cascading_field_names?: string[] | undefined;
|
|
55
|
+
multiple_assessment_ids_data?: {
|
|
56
|
+
label?: string | undefined;
|
|
57
|
+
value?: string | undefined;
|
|
58
|
+
selected?: {
|
|
59
|
+
[x: string]: unknown;
|
|
60
|
+
type_id: number;
|
|
61
|
+
title: string;
|
|
62
|
+
date_administered?: string | undefined;
|
|
63
|
+
author?: string | undefined;
|
|
64
|
+
}[] | undefined;
|
|
65
|
+
} | undefined;
|
|
66
|
+
assessment_finder_form_html?: string | undefined;
|
|
67
|
+
assessment_finder_data?: {
|
|
68
|
+
filters: {
|
|
69
|
+
year: Record<string, string>;
|
|
70
|
+
grade: Record<string, string>;
|
|
71
|
+
subject: Record<string, string>;
|
|
72
|
+
sub_type: Record<string, string>;
|
|
73
|
+
type_id: Record<string, string>;
|
|
74
|
+
date_taken: Record<string, string>;
|
|
75
|
+
};
|
|
76
|
+
defaults: Record<string, unknown>;
|
|
77
|
+
placeholders: Record<string, string>;
|
|
78
|
+
selected_assessments?: unknown[] | undefined;
|
|
79
|
+
} | undefined;
|
|
80
|
+
assessment_finder_extra_html?: string | undefined;
|
|
81
|
+
favorites?: unknown;
|
|
82
|
+
drilldown_fields?: string[] | undefined;
|
|
83
|
+
debug_report?: string | undefined;
|
|
84
|
+
} | null, import('../services/codeBasedJasperApi').ReportData | {
|
|
85
|
+
form_html?: string | undefined;
|
|
86
|
+
form_fields?: Record<string, {
|
|
87
|
+
label?: string;
|
|
88
|
+
default?: unknown;
|
|
89
|
+
options?: Record<string, string>;
|
|
90
|
+
required?: boolean;
|
|
91
|
+
disabled?: boolean;
|
|
92
|
+
}> | undefined;
|
|
93
|
+
demographic_fields?: Record<string, {
|
|
94
|
+
label?: string;
|
|
95
|
+
default?: unknown;
|
|
96
|
+
options?: Record<string, string>;
|
|
97
|
+
required?: boolean;
|
|
98
|
+
disabled?: boolean;
|
|
99
|
+
}> | undefined;
|
|
100
|
+
form_action?: string | undefined;
|
|
101
|
+
form_method?: string | undefined;
|
|
102
|
+
hidden_fields?: Record<string, unknown> | undefined;
|
|
103
|
+
form_data?: Record<string, unknown> | undefined;
|
|
104
|
+
selected_filter_options?: Record<string, unknown> | undefined;
|
|
105
|
+
additional_field_names?: string[] | undefined;
|
|
106
|
+
additional_fields?: Record<string, {
|
|
107
|
+
label?: string;
|
|
108
|
+
default?: unknown;
|
|
109
|
+
options?: Record<string, string>;
|
|
110
|
+
required?: boolean;
|
|
111
|
+
disabled?: boolean;
|
|
112
|
+
control?: "select" | "checkbox" | "text";
|
|
113
|
+
}> | undefined;
|
|
114
|
+
additional_fields_html?: Record<string, string> | undefined;
|
|
115
|
+
extra_html?: string | undefined;
|
|
116
|
+
report_html?: string | undefined;
|
|
117
|
+
pagination?: {
|
|
118
|
+
currentPage: number;
|
|
119
|
+
totalPages: number;
|
|
120
|
+
hasNext: boolean;
|
|
121
|
+
hasPrev: boolean;
|
|
122
|
+
} | undefined;
|
|
123
|
+
has_assessment_finder?: boolean | undefined;
|
|
124
|
+
cascading_field_names?: string[] | undefined;
|
|
125
|
+
multiple_assessment_ids_data?: {
|
|
126
|
+
label?: string | undefined;
|
|
127
|
+
value?: string | undefined;
|
|
128
|
+
selected?: {
|
|
129
|
+
[x: string]: unknown;
|
|
130
|
+
type_id: number;
|
|
131
|
+
title: string;
|
|
132
|
+
date_administered?: string | undefined;
|
|
133
|
+
author?: string | undefined;
|
|
134
|
+
}[] | undefined;
|
|
135
|
+
} | undefined;
|
|
136
|
+
assessment_finder_form_html?: string | undefined;
|
|
137
|
+
assessment_finder_data?: {
|
|
138
|
+
filters: {
|
|
139
|
+
year: Record<string, string>;
|
|
140
|
+
grade: Record<string, string>;
|
|
141
|
+
subject: Record<string, string>;
|
|
142
|
+
sub_type: Record<string, string>;
|
|
143
|
+
type_id: Record<string, string>;
|
|
144
|
+
date_taken: Record<string, string>;
|
|
145
|
+
};
|
|
146
|
+
defaults: Record<string, unknown>;
|
|
147
|
+
placeholders: Record<string, string>;
|
|
148
|
+
selected_assessments?: unknown[] | undefined;
|
|
149
|
+
} | undefined;
|
|
150
|
+
assessment_finder_extra_html?: string | undefined;
|
|
151
|
+
favorites?: unknown;
|
|
152
|
+
drilldown_fields?: string[] | undefined;
|
|
153
|
+
debug_report?: string | undefined;
|
|
154
|
+
} | null>;
|
|
155
|
+
reportHtml: import('vue').Ref<string | null, string | null>;
|
|
156
|
+
pagination: import('vue').Ref<{
|
|
157
|
+
currentPage: number;
|
|
158
|
+
totalPages: number;
|
|
159
|
+
hasNext: boolean;
|
|
160
|
+
hasPrev: boolean;
|
|
161
|
+
}, import('../services/codeBasedJasperApi').PaginationData | {
|
|
162
|
+
currentPage: number;
|
|
163
|
+
totalPages: number;
|
|
164
|
+
hasNext: boolean;
|
|
165
|
+
hasPrev: boolean;
|
|
166
|
+
}>;
|
|
167
|
+
isLoading: import('vue').Ref<boolean, boolean>;
|
|
168
|
+
isGeneratingDownload: import('vue').Ref<boolean, boolean>;
|
|
169
|
+
isFavorite: import('vue').Ref<boolean, boolean>;
|
|
170
|
+
debugReport: import('vue').Ref<string | null, string | null>;
|
|
171
|
+
hasReport: import('vue').ComputedRef<boolean>;
|
|
172
|
+
canShowFavorites: import('vue').ComputedRef<boolean>;
|
|
173
|
+
loadReportData: (params?: Record<string, unknown>) => Promise<import('../services/codeBasedJasperApi').ReportData>;
|
|
174
|
+
changeScope: (params: Record<string, unknown>) => Promise<import('../services/codeBasedJasperApi').ScopeChangeResponse>;
|
|
175
|
+
generateReport: (data: Record<string, unknown>) => Promise<import('../services/codeBasedJasperApi').GenerateReportResponse>;
|
|
176
|
+
loadReportHtml: (params?: Record<string, unknown>) => Promise<{
|
|
177
|
+
report_html: string;
|
|
178
|
+
pagination?: import('../services/codeBasedJasperApi').PaginationData;
|
|
179
|
+
}>;
|
|
180
|
+
downloadReport: (data: Record<string, unknown>) => Promise<import('../services/codeBasedJasperApi').DownloadReportResponse>;
|
|
181
|
+
loadFavorites: (jasperPrebuiltId: number | string) => Promise<import('../services/codeBasedJasperApi').FavoritesResponse>;
|
|
182
|
+
toggleFavorite: (jasperPrebuiltId: number | string) => Promise<import('../services/codeBasedJasperApi').ToggleFavoriteResponse>;
|
|
183
|
+
reset: () => void;
|
|
184
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function mountCodeBasedJasperReport(elementId?: string): import('vue').App<Element> | null;
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file codeBasedJasperApi.ts
|
|
3
|
+
* @description API service for Code Based Jasper Report endpoints
|
|
4
|
+
* @author Illuminate Education
|
|
5
|
+
* @lastUpdated 2025-01-03
|
|
6
|
+
*
|
|
7
|
+
* @responsibilities
|
|
8
|
+
* - Provides typed API methods for Code Based Jasper Report operations
|
|
9
|
+
* - Handles request/response formatting following bulk assessment pattern
|
|
10
|
+
* - Response format: { payload: {...}, status: 'OK' | 'Bad Request', error: '...' }
|
|
11
|
+
*/
|
|
12
|
+
export type { FormFieldData, FormDataWithFields, InitialData } from '../types';
|
|
13
|
+
export type CodeBasedJasperResponse<T = unknown> = {
|
|
14
|
+
payload: T;
|
|
15
|
+
status: 'OK' | 'Bad Request';
|
|
16
|
+
error?: string;
|
|
17
|
+
debug_message?: string;
|
|
18
|
+
debug_data?: unknown;
|
|
19
|
+
};
|
|
20
|
+
export type ReportData = {
|
|
21
|
+
form_html?: string;
|
|
22
|
+
form_fields?: Record<string, {
|
|
23
|
+
label?: string;
|
|
24
|
+
default?: unknown;
|
|
25
|
+
options?: Record<string, string>;
|
|
26
|
+
required?: boolean;
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
}>;
|
|
29
|
+
demographic_fields?: ReportData['form_fields'];
|
|
30
|
+
form_action?: string;
|
|
31
|
+
form_method?: string;
|
|
32
|
+
hidden_fields?: Record<string, unknown>;
|
|
33
|
+
form_data?: Record<string, unknown>;
|
|
34
|
+
selected_filter_options?: Record<string, unknown>;
|
|
35
|
+
additional_field_names?: string[];
|
|
36
|
+
additional_fields?: Record<string, {
|
|
37
|
+
label?: string;
|
|
38
|
+
default?: unknown;
|
|
39
|
+
options?: Record<string, string>;
|
|
40
|
+
required?: boolean;
|
|
41
|
+
disabled?: boolean;
|
|
42
|
+
control?: 'select' | 'checkbox' | 'text';
|
|
43
|
+
}>;
|
|
44
|
+
additional_fields_html?: Record<string, string>;
|
|
45
|
+
extra_html?: string;
|
|
46
|
+
report_html?: string;
|
|
47
|
+
pagination?: PaginationData;
|
|
48
|
+
has_assessment_finder?: boolean;
|
|
49
|
+
cascading_field_names?: string[];
|
|
50
|
+
multiple_assessment_ids_data?: {
|
|
51
|
+
label?: string;
|
|
52
|
+
value?: string;
|
|
53
|
+
selected?: Array<{
|
|
54
|
+
type_id: number;
|
|
55
|
+
title: string;
|
|
56
|
+
date_administered?: string;
|
|
57
|
+
author?: string;
|
|
58
|
+
[key: string]: unknown;
|
|
59
|
+
}>;
|
|
60
|
+
};
|
|
61
|
+
assessment_finder_form_html?: string;
|
|
62
|
+
assessment_finder_data?: {
|
|
63
|
+
filters: {
|
|
64
|
+
year: Record<string, string>;
|
|
65
|
+
grade: Record<string, string>;
|
|
66
|
+
subject: Record<string, string>;
|
|
67
|
+
sub_type: Record<string, string>;
|
|
68
|
+
type_id: Record<string, string>;
|
|
69
|
+
date_taken: Record<string, string>;
|
|
70
|
+
};
|
|
71
|
+
defaults: Record<string, unknown>;
|
|
72
|
+
placeholders: Record<string, string>;
|
|
73
|
+
selected_assessments?: unknown[];
|
|
74
|
+
};
|
|
75
|
+
assessment_finder_extra_html?: string;
|
|
76
|
+
favorites?: unknown;
|
|
77
|
+
drilldown_fields?: string[];
|
|
78
|
+
debug_report?: string;
|
|
79
|
+
};
|
|
80
|
+
export type PaginationData = {
|
|
81
|
+
currentPage: number;
|
|
82
|
+
totalPages: number;
|
|
83
|
+
hasNext: boolean;
|
|
84
|
+
hasPrev: boolean;
|
|
85
|
+
};
|
|
86
|
+
export type ScopeChangeResponse = {
|
|
87
|
+
form_fields?: ReportData['form_fields'];
|
|
88
|
+
demographic_fields?: ReportData['demographic_fields'];
|
|
89
|
+
};
|
|
90
|
+
export type GenerateReportResponse = {
|
|
91
|
+
uses_visualize_js?: boolean;
|
|
92
|
+
visualize_js_url?: string;
|
|
93
|
+
background_process_id?: string;
|
|
94
|
+
};
|
|
95
|
+
export type DownloadReportResponse = {
|
|
96
|
+
download_url?: string;
|
|
97
|
+
blob?: Blob;
|
|
98
|
+
content_type?: string;
|
|
99
|
+
filename?: string;
|
|
100
|
+
};
|
|
101
|
+
export type BackgroundJobStatus = {
|
|
102
|
+
status: string;
|
|
103
|
+
background_process?: {
|
|
104
|
+
id: number | string;
|
|
105
|
+
status: string;
|
|
106
|
+
name?: string;
|
|
107
|
+
start_time?: string;
|
|
108
|
+
end_time?: string;
|
|
109
|
+
user_notice?: string;
|
|
110
|
+
};
|
|
111
|
+
};
|
|
112
|
+
export type FavoritesResponse = {
|
|
113
|
+
favorites: Array<{
|
|
114
|
+
jasper_prebuilt_id: number | string;
|
|
115
|
+
}>;
|
|
116
|
+
};
|
|
117
|
+
export type ToggleFavoriteResponse = {
|
|
118
|
+
is_favorite: boolean;
|
|
119
|
+
};
|
|
120
|
+
declare class CodeBasedJasperApiService {
|
|
121
|
+
private getBaseRequestParams;
|
|
122
|
+
private request;
|
|
123
|
+
/**
|
|
124
|
+
* List courses for the Courses autocomplete (remote search)
|
|
125
|
+
*/
|
|
126
|
+
listCourses(params: Record<string, unknown>): Promise<{
|
|
127
|
+
courses: Array<{
|
|
128
|
+
value: string;
|
|
129
|
+
title: string;
|
|
130
|
+
}>;
|
|
131
|
+
count: number;
|
|
132
|
+
}>;
|
|
133
|
+
/**
|
|
134
|
+
* Get initial report data including form fields and current filters
|
|
135
|
+
*/
|
|
136
|
+
getReportData(params?: Record<string, unknown>): Promise<ReportData>;
|
|
137
|
+
/**
|
|
138
|
+
* Handle scope changes (AJAX)
|
|
139
|
+
*/
|
|
140
|
+
changeScope(params: Record<string, unknown>): Promise<ScopeChangeResponse>;
|
|
141
|
+
/**
|
|
142
|
+
* List assessments based on search criteria
|
|
143
|
+
*/
|
|
144
|
+
listAssessments(searchParams: Record<string, unknown>): Promise<{
|
|
145
|
+
assessments: Array<{
|
|
146
|
+
type_id: number;
|
|
147
|
+
title: string;
|
|
148
|
+
date_administered: string;
|
|
149
|
+
author?: string;
|
|
150
|
+
[key: string]: unknown;
|
|
151
|
+
}>;
|
|
152
|
+
headers?: Record<string, string>;
|
|
153
|
+
count?: number;
|
|
154
|
+
error_message?: string;
|
|
155
|
+
}>;
|
|
156
|
+
/**
|
|
157
|
+
* Generate report with parameters
|
|
158
|
+
*/
|
|
159
|
+
generateReport(data: Record<string, unknown>): Promise<GenerateReportResponse>;
|
|
160
|
+
/**
|
|
161
|
+
* Get report HTML
|
|
162
|
+
*/
|
|
163
|
+
getReportHtml(params?: Record<string, unknown>): Promise<{
|
|
164
|
+
report_html: string;
|
|
165
|
+
pagination?: PaginationData;
|
|
166
|
+
}>;
|
|
167
|
+
/**
|
|
168
|
+
* Download report (PDF, Excel, Word)
|
|
169
|
+
*/
|
|
170
|
+
downloadReport(data: Record<string, unknown>): Promise<DownloadReportResponse>;
|
|
171
|
+
/**
|
|
172
|
+
* Poll background job status (legacy endpoint used by BackgroundProcessStatusChecker)
|
|
173
|
+
*/
|
|
174
|
+
getBackgroundJobStatus(background_process_id: number | string): Promise<BackgroundJobStatus>;
|
|
175
|
+
/**
|
|
176
|
+
* Generate drilldown report
|
|
177
|
+
*/
|
|
178
|
+
drilldown(data: Record<string, unknown>): Promise<unknown>;
|
|
179
|
+
/**
|
|
180
|
+
* Get favorites data
|
|
181
|
+
*/
|
|
182
|
+
getFavorites(): Promise<FavoritesResponse>;
|
|
183
|
+
/**
|
|
184
|
+
* Toggle favorite (add/remove)
|
|
185
|
+
*/
|
|
186
|
+
toggleFavorite(data: {
|
|
187
|
+
jasper_prebuilt_id: number | string;
|
|
188
|
+
}): Promise<ToggleFavoriteResponse>;
|
|
189
|
+
}
|
|
190
|
+
export declare const codeBasedJasperApi: CodeBasedJasperApiService;
|