@illuminateeducation/dna-atd-frontend 1.0.1-DNAATD-2189.0 → 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.
Files changed (95) hide show
  1. package/README.md +21 -21
  2. package/dist/assets/dna-atd-frontend.css +1 -0
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.es.js +47350 -0
  5. package/dist/index.es.js.map +1 -0
  6. package/dist/src/App.vue.d.ts +2 -0
  7. package/dist/src/components/common/BaseButton.vue.d.ts +16 -0
  8. package/dist/src/components/common/BaseInput.vue.d.ts +8 -0
  9. package/dist/src/components/common/BaseModal.vue.d.ts +19 -0
  10. package/dist/src/components/common/ErrorBoundary.vue.d.ts +37 -0
  11. package/dist/src/composables/useAsync.d.ts +24 -0
  12. package/dist/src/composables/useClickOutside.d.ts +7 -0
  13. package/dist/src/composables/useForm.d.ts +38 -0
  14. package/dist/src/composables/useLocalStorage.d.ts +24 -0
  15. package/dist/src/composables/useWindowSize.d.ts +20 -0
  16. package/dist/src/config/app.config.d.ts +67 -0
  17. package/dist/src/context/backendContext.d.ts +9 -0
  18. package/dist/src/features/admin/customization/composables/useCustomization.d.ts +19 -0
  19. package/dist/src/features/admin/customization/store/customizationStore.d.ts +30 -0
  20. package/dist/src/features/admin/customization/views/CustomizationView.vue.d.ts +2 -0
  21. package/dist/src/features/admin/validation/composables/useValidation.d.ts +18 -0
  22. package/dist/src/features/admin/validation/store/validationStore.d.ts +27 -0
  23. package/dist/src/features/admin/validation/views/ValidationView.vue.d.ts +2 -0
  24. package/dist/src/features/reports/codeBasedJasper/components/AssessmentFinder.vue.d.ts +618 -0
  25. package/dist/src/features/reports/codeBasedJasper/components/DownloadButtons.vue.d.ts +13 -0
  26. package/dist/src/features/reports/codeBasedJasper/components/FavoritesWidget.vue.d.ts +10 -0
  27. package/dist/src/features/reports/codeBasedJasper/components/MultipleAssessmentIdsField.vue.d.ts +18 -0
  28. package/dist/src/features/reports/codeBasedJasper/components/ReportFilters.vue.d.ts +18 -0
  29. package/dist/src/features/reports/codeBasedJasper/components/ReportPagination.vue.d.ts +11 -0
  30. package/dist/src/features/reports/codeBasedJasper/components/ReportViewer.vue.d.ts +16 -0
  31. package/dist/src/features/reports/codeBasedJasper/composables/useCodeBasedJasper.d.ts +184 -0
  32. package/dist/src/features/reports/codeBasedJasper/mount.d.ts +1 -0
  33. package/dist/src/features/reports/codeBasedJasper/services/codeBasedJasperApi.d.ts +190 -0
  34. package/dist/src/features/reports/codeBasedJasper/store/codeBasedJasperStore.d.ts +503 -0
  35. package/dist/src/features/reports/codeBasedJasper/types/index.d.ts +54 -0
  36. package/dist/src/features/reports/codeBasedJasper/views/CodeBasedJasperReportView.vue.d.ts +32 -0
  37. package/dist/src/index.d.ts +51 -0
  38. package/dist/src/layouts/AdminLayout.vue.d.ts +2 -0
  39. package/dist/src/plugins/globalErrorHandling.d.ts +36 -0
  40. package/dist/src/plugins/vuetify.d.ts +86 -0
  41. package/dist/src/router/index.d.ts +16 -0
  42. package/dist/src/services/apiService.d.ts +33 -0
  43. package/dist/src/services/integration.d.ts +54 -0
  44. package/dist/src/types/api.d.ts +27 -0
  45. package/dist/src/types/backend.d.ts +27 -0
  46. package/dist/src/utils/helpers.d.ts +50 -0
  47. package/dist/src/utils/safeJson.d.ts +17 -0
  48. package/dist/src/views/HomeView.vue.d.ts +2 -0
  49. package/dist/src/views/NotFoundView.vue.d.ts +2 -0
  50. package/package.json +33 -22
  51. package/dist/.vite/manifest.json +0 -87
  52. package/dist/assets/AdminLayout.css +0 -1
  53. package/dist/assets/AdminLayout.js +0 -1
  54. package/dist/assets/CustomizationView.css +0 -1
  55. package/dist/assets/CustomizationView.js +0 -1
  56. package/dist/assets/HomeView.css +0 -1
  57. package/dist/assets/HomeView.js +0 -1
  58. package/dist/assets/NotFoundView.css +0 -1
  59. package/dist/assets/NotFoundView.js +0 -1
  60. package/dist/assets/ValidationView.css +0 -1
  61. package/dist/assets/ValidationView.js +0 -1
  62. package/dist/assets/_plugin-vue_export-helper.js +0 -1
  63. package/dist/assets/index.css +0 -1
  64. package/dist/assets/index.js +0 -2
  65. package/dist/index.html +0 -14
  66. package/index.js +0 -1
  67. package/src/App.vue +0 -68
  68. package/src/__tests__/App.spec.js +0 -26
  69. package/src/components/common/BaseButton.vue +0 -20
  70. package/src/components/common/BaseInput.vue +0 -27
  71. package/src/components/common/BaseModal.vue +0 -37
  72. package/src/composables/useAsync.js +0 -34
  73. package/src/composables/useClickOutside.js +0 -29
  74. package/src/composables/useForm.js +0 -89
  75. package/src/composables/useLocalStorage.js +0 -51
  76. package/src/composables/useWindowSize.js +0 -30
  77. package/src/config/app.config.js +0 -79
  78. package/src/features/admin/customization/composables/useCustomization.js +0 -19
  79. package/src/features/admin/customization/store/customizationStore.js +0 -30
  80. package/src/features/admin/customization/views/CustomizationView.vue +0 -17
  81. package/src/features/admin/validation/composables/useValidation.js +0 -18
  82. package/src/features/admin/validation/store/validationStore.js +0 -25
  83. package/src/features/admin/validation/views/ValidationView.vue +0 -17
  84. package/src/index.js +0 -53
  85. package/src/layouts/AdminLayout.vue +0 -146
  86. package/src/main.js +0 -41
  87. package/src/router/index.js +0 -57
  88. package/src/services/apiService.js +0 -72
  89. package/src/services/integration.js +0 -59
  90. package/src/services/phpIntegration.js +0 -1
  91. package/src/stores/counter.js +0 -12
  92. package/src/utils/helpers.js +0 -119
  93. package/src/utils/validators.js +0 -131
  94. package/src/views/HomeView.vue +0 -121
  95. package/src/views/NotFoundView.vue +0 -56
@@ -0,0 +1,503 @@
1
+ import { ReportData, PaginationData } from '../services/codeBasedJasperApi';
2
+ export declare const useCodeBasedJasperStore: import('pinia').StoreDefinition<"codeBasedJasper", Pick<{
3
+ reportData: import('vue').Ref<{
4
+ form_html?: string | undefined;
5
+ form_fields?: Record<string, {
6
+ label?: string;
7
+ default?: unknown;
8
+ options?: Record<string, string>;
9
+ required?: boolean;
10
+ disabled?: boolean;
11
+ }> | undefined;
12
+ demographic_fields?: Record<string, {
13
+ label?: string;
14
+ default?: unknown;
15
+ options?: Record<string, string>;
16
+ required?: boolean;
17
+ disabled?: boolean;
18
+ }> | undefined;
19
+ form_action?: string | undefined;
20
+ form_method?: string | undefined;
21
+ hidden_fields?: Record<string, unknown> | undefined;
22
+ form_data?: Record<string, unknown> | undefined;
23
+ selected_filter_options?: Record<string, unknown> | undefined;
24
+ additional_field_names?: string[] | undefined;
25
+ additional_fields?: Record<string, {
26
+ label?: string;
27
+ default?: unknown;
28
+ options?: Record<string, string>;
29
+ required?: boolean;
30
+ disabled?: boolean;
31
+ control?: "select" | "checkbox" | "text";
32
+ }> | undefined;
33
+ additional_fields_html?: Record<string, string> | undefined;
34
+ extra_html?: string | undefined;
35
+ report_html?: string | undefined;
36
+ pagination?: {
37
+ currentPage: number;
38
+ totalPages: number;
39
+ hasNext: boolean;
40
+ hasPrev: boolean;
41
+ } | undefined;
42
+ has_assessment_finder?: boolean | undefined;
43
+ cascading_field_names?: string[] | undefined;
44
+ multiple_assessment_ids_data?: {
45
+ label?: string | undefined;
46
+ value?: string | undefined;
47
+ selected?: {
48
+ [x: string]: unknown;
49
+ type_id: number;
50
+ title: string;
51
+ date_administered?: string | undefined;
52
+ author?: string | undefined;
53
+ }[] | undefined;
54
+ } | undefined;
55
+ assessment_finder_form_html?: string | undefined;
56
+ assessment_finder_data?: {
57
+ filters: {
58
+ year: Record<string, string>;
59
+ grade: Record<string, string>;
60
+ subject: Record<string, string>;
61
+ sub_type: Record<string, string>;
62
+ type_id: Record<string, string>;
63
+ date_taken: Record<string, string>;
64
+ };
65
+ defaults: Record<string, unknown>;
66
+ placeholders: Record<string, string>;
67
+ selected_assessments?: unknown[] | undefined;
68
+ } | undefined;
69
+ assessment_finder_extra_html?: string | undefined;
70
+ favorites?: unknown;
71
+ drilldown_fields?: string[] | undefined;
72
+ debug_report?: string | undefined;
73
+ } | null, ReportData | {
74
+ form_html?: string | undefined;
75
+ form_fields?: Record<string, {
76
+ label?: string;
77
+ default?: unknown;
78
+ options?: Record<string, string>;
79
+ required?: boolean;
80
+ disabled?: boolean;
81
+ }> | undefined;
82
+ demographic_fields?: Record<string, {
83
+ label?: string;
84
+ default?: unknown;
85
+ options?: Record<string, string>;
86
+ required?: boolean;
87
+ disabled?: boolean;
88
+ }> | undefined;
89
+ form_action?: string | undefined;
90
+ form_method?: string | undefined;
91
+ hidden_fields?: Record<string, unknown> | undefined;
92
+ form_data?: Record<string, unknown> | undefined;
93
+ selected_filter_options?: Record<string, unknown> | undefined;
94
+ additional_field_names?: string[] | undefined;
95
+ additional_fields?: Record<string, {
96
+ label?: string;
97
+ default?: unknown;
98
+ options?: Record<string, string>;
99
+ required?: boolean;
100
+ disabled?: boolean;
101
+ control?: "select" | "checkbox" | "text";
102
+ }> | undefined;
103
+ additional_fields_html?: Record<string, string> | undefined;
104
+ extra_html?: string | undefined;
105
+ report_html?: string | undefined;
106
+ pagination?: {
107
+ currentPage: number;
108
+ totalPages: number;
109
+ hasNext: boolean;
110
+ hasPrev: boolean;
111
+ } | undefined;
112
+ has_assessment_finder?: boolean | undefined;
113
+ cascading_field_names?: string[] | undefined;
114
+ multiple_assessment_ids_data?: {
115
+ label?: string | undefined;
116
+ value?: string | undefined;
117
+ selected?: {
118
+ [x: string]: unknown;
119
+ type_id: number;
120
+ title: string;
121
+ date_administered?: string | undefined;
122
+ author?: string | undefined;
123
+ }[] | undefined;
124
+ } | undefined;
125
+ assessment_finder_form_html?: string | undefined;
126
+ assessment_finder_data?: {
127
+ filters: {
128
+ year: Record<string, string>;
129
+ grade: Record<string, string>;
130
+ subject: Record<string, string>;
131
+ sub_type: Record<string, string>;
132
+ type_id: Record<string, string>;
133
+ date_taken: Record<string, string>;
134
+ };
135
+ defaults: Record<string, unknown>;
136
+ placeholders: Record<string, string>;
137
+ selected_assessments?: unknown[] | undefined;
138
+ } | undefined;
139
+ assessment_finder_extra_html?: string | undefined;
140
+ favorites?: unknown;
141
+ drilldown_fields?: string[] | undefined;
142
+ debug_report?: string | undefined;
143
+ } | null>;
144
+ reportHtml: import('vue').Ref<string | null, string | null>;
145
+ pagination: import('vue').Ref<{
146
+ currentPage: number;
147
+ totalPages: number;
148
+ hasNext: boolean;
149
+ hasPrev: boolean;
150
+ }, PaginationData | {
151
+ currentPage: number;
152
+ totalPages: number;
153
+ hasNext: boolean;
154
+ hasPrev: boolean;
155
+ }>;
156
+ isLoading: import('vue').Ref<boolean, boolean>;
157
+ isGeneratingDownload: import('vue').Ref<boolean, boolean>;
158
+ isFavorite: import('vue').Ref<boolean, boolean>;
159
+ debugReport: import('vue').Ref<string | null, string | null>;
160
+ hasReport: import('vue').ComputedRef<boolean>;
161
+ canShowFavorites: import('vue').ComputedRef<boolean>;
162
+ setReportData: (data: ReportData) => void;
163
+ setReportHtml: (html: string, paginationData?: PaginationData) => void;
164
+ setLoading: (loading: boolean) => void;
165
+ setGeneratingDownload: (generating: boolean) => void;
166
+ setFavorite: (favorite: boolean) => void;
167
+ setPagination: (paginationData: PaginationData) => void;
168
+ reset: () => void;
169
+ }, "isLoading" | "pagination" | "reportData" | "reportHtml" | "isGeneratingDownload" | "isFavorite" | "debugReport">, Pick<{
170
+ reportData: import('vue').Ref<{
171
+ form_html?: string | undefined;
172
+ form_fields?: Record<string, {
173
+ label?: string;
174
+ default?: unknown;
175
+ options?: Record<string, string>;
176
+ required?: boolean;
177
+ disabled?: boolean;
178
+ }> | undefined;
179
+ demographic_fields?: Record<string, {
180
+ label?: string;
181
+ default?: unknown;
182
+ options?: Record<string, string>;
183
+ required?: boolean;
184
+ disabled?: boolean;
185
+ }> | undefined;
186
+ form_action?: string | undefined;
187
+ form_method?: string | undefined;
188
+ hidden_fields?: Record<string, unknown> | undefined;
189
+ form_data?: Record<string, unknown> | undefined;
190
+ selected_filter_options?: Record<string, unknown> | undefined;
191
+ additional_field_names?: string[] | undefined;
192
+ additional_fields?: Record<string, {
193
+ label?: string;
194
+ default?: unknown;
195
+ options?: Record<string, string>;
196
+ required?: boolean;
197
+ disabled?: boolean;
198
+ control?: "select" | "checkbox" | "text";
199
+ }> | undefined;
200
+ additional_fields_html?: Record<string, string> | undefined;
201
+ extra_html?: string | undefined;
202
+ report_html?: string | undefined;
203
+ pagination?: {
204
+ currentPage: number;
205
+ totalPages: number;
206
+ hasNext: boolean;
207
+ hasPrev: boolean;
208
+ } | undefined;
209
+ has_assessment_finder?: boolean | undefined;
210
+ cascading_field_names?: string[] | undefined;
211
+ multiple_assessment_ids_data?: {
212
+ label?: string | undefined;
213
+ value?: string | undefined;
214
+ selected?: {
215
+ [x: string]: unknown;
216
+ type_id: number;
217
+ title: string;
218
+ date_administered?: string | undefined;
219
+ author?: string | undefined;
220
+ }[] | undefined;
221
+ } | undefined;
222
+ assessment_finder_form_html?: string | undefined;
223
+ assessment_finder_data?: {
224
+ filters: {
225
+ year: Record<string, string>;
226
+ grade: Record<string, string>;
227
+ subject: Record<string, string>;
228
+ sub_type: Record<string, string>;
229
+ type_id: Record<string, string>;
230
+ date_taken: Record<string, string>;
231
+ };
232
+ defaults: Record<string, unknown>;
233
+ placeholders: Record<string, string>;
234
+ selected_assessments?: unknown[] | undefined;
235
+ } | undefined;
236
+ assessment_finder_extra_html?: string | undefined;
237
+ favorites?: unknown;
238
+ drilldown_fields?: string[] | undefined;
239
+ debug_report?: string | undefined;
240
+ } | null, ReportData | {
241
+ form_html?: string | undefined;
242
+ form_fields?: Record<string, {
243
+ label?: string;
244
+ default?: unknown;
245
+ options?: Record<string, string>;
246
+ required?: boolean;
247
+ disabled?: boolean;
248
+ }> | undefined;
249
+ demographic_fields?: Record<string, {
250
+ label?: string;
251
+ default?: unknown;
252
+ options?: Record<string, string>;
253
+ required?: boolean;
254
+ disabled?: boolean;
255
+ }> | undefined;
256
+ form_action?: string | undefined;
257
+ form_method?: string | undefined;
258
+ hidden_fields?: Record<string, unknown> | undefined;
259
+ form_data?: Record<string, unknown> | undefined;
260
+ selected_filter_options?: Record<string, unknown> | undefined;
261
+ additional_field_names?: string[] | undefined;
262
+ additional_fields?: Record<string, {
263
+ label?: string;
264
+ default?: unknown;
265
+ options?: Record<string, string>;
266
+ required?: boolean;
267
+ disabled?: boolean;
268
+ control?: "select" | "checkbox" | "text";
269
+ }> | undefined;
270
+ additional_fields_html?: Record<string, string> | undefined;
271
+ extra_html?: string | undefined;
272
+ report_html?: string | undefined;
273
+ pagination?: {
274
+ currentPage: number;
275
+ totalPages: number;
276
+ hasNext: boolean;
277
+ hasPrev: boolean;
278
+ } | undefined;
279
+ has_assessment_finder?: boolean | undefined;
280
+ cascading_field_names?: string[] | undefined;
281
+ multiple_assessment_ids_data?: {
282
+ label?: string | undefined;
283
+ value?: string | undefined;
284
+ selected?: {
285
+ [x: string]: unknown;
286
+ type_id: number;
287
+ title: string;
288
+ date_administered?: string | undefined;
289
+ author?: string | undefined;
290
+ }[] | undefined;
291
+ } | undefined;
292
+ assessment_finder_form_html?: string | undefined;
293
+ assessment_finder_data?: {
294
+ filters: {
295
+ year: Record<string, string>;
296
+ grade: Record<string, string>;
297
+ subject: Record<string, string>;
298
+ sub_type: Record<string, string>;
299
+ type_id: Record<string, string>;
300
+ date_taken: Record<string, string>;
301
+ };
302
+ defaults: Record<string, unknown>;
303
+ placeholders: Record<string, string>;
304
+ selected_assessments?: unknown[] | undefined;
305
+ } | undefined;
306
+ assessment_finder_extra_html?: string | undefined;
307
+ favorites?: unknown;
308
+ drilldown_fields?: string[] | undefined;
309
+ debug_report?: string | undefined;
310
+ } | null>;
311
+ reportHtml: import('vue').Ref<string | null, string | null>;
312
+ pagination: import('vue').Ref<{
313
+ currentPage: number;
314
+ totalPages: number;
315
+ hasNext: boolean;
316
+ hasPrev: boolean;
317
+ }, PaginationData | {
318
+ currentPage: number;
319
+ totalPages: number;
320
+ hasNext: boolean;
321
+ hasPrev: boolean;
322
+ }>;
323
+ isLoading: import('vue').Ref<boolean, boolean>;
324
+ isGeneratingDownload: import('vue').Ref<boolean, boolean>;
325
+ isFavorite: import('vue').Ref<boolean, boolean>;
326
+ debugReport: import('vue').Ref<string | null, string | null>;
327
+ hasReport: import('vue').ComputedRef<boolean>;
328
+ canShowFavorites: import('vue').ComputedRef<boolean>;
329
+ setReportData: (data: ReportData) => void;
330
+ setReportHtml: (html: string, paginationData?: PaginationData) => void;
331
+ setLoading: (loading: boolean) => void;
332
+ setGeneratingDownload: (generating: boolean) => void;
333
+ setFavorite: (favorite: boolean) => void;
334
+ setPagination: (paginationData: PaginationData) => void;
335
+ reset: () => void;
336
+ }, "hasReport" | "canShowFavorites">, Pick<{
337
+ reportData: import('vue').Ref<{
338
+ form_html?: string | undefined;
339
+ form_fields?: Record<string, {
340
+ label?: string;
341
+ default?: unknown;
342
+ options?: Record<string, string>;
343
+ required?: boolean;
344
+ disabled?: boolean;
345
+ }> | undefined;
346
+ demographic_fields?: Record<string, {
347
+ label?: string;
348
+ default?: unknown;
349
+ options?: Record<string, string>;
350
+ required?: boolean;
351
+ disabled?: boolean;
352
+ }> | undefined;
353
+ form_action?: string | undefined;
354
+ form_method?: string | undefined;
355
+ hidden_fields?: Record<string, unknown> | undefined;
356
+ form_data?: Record<string, unknown> | undefined;
357
+ selected_filter_options?: Record<string, unknown> | undefined;
358
+ additional_field_names?: string[] | undefined;
359
+ additional_fields?: Record<string, {
360
+ label?: string;
361
+ default?: unknown;
362
+ options?: Record<string, string>;
363
+ required?: boolean;
364
+ disabled?: boolean;
365
+ control?: "select" | "checkbox" | "text";
366
+ }> | undefined;
367
+ additional_fields_html?: Record<string, string> | undefined;
368
+ extra_html?: string | undefined;
369
+ report_html?: string | undefined;
370
+ pagination?: {
371
+ currentPage: number;
372
+ totalPages: number;
373
+ hasNext: boolean;
374
+ hasPrev: boolean;
375
+ } | undefined;
376
+ has_assessment_finder?: boolean | undefined;
377
+ cascading_field_names?: string[] | undefined;
378
+ multiple_assessment_ids_data?: {
379
+ label?: string | undefined;
380
+ value?: string | undefined;
381
+ selected?: {
382
+ [x: string]: unknown;
383
+ type_id: number;
384
+ title: string;
385
+ date_administered?: string | undefined;
386
+ author?: string | undefined;
387
+ }[] | undefined;
388
+ } | undefined;
389
+ assessment_finder_form_html?: string | undefined;
390
+ assessment_finder_data?: {
391
+ filters: {
392
+ year: Record<string, string>;
393
+ grade: Record<string, string>;
394
+ subject: Record<string, string>;
395
+ sub_type: Record<string, string>;
396
+ type_id: Record<string, string>;
397
+ date_taken: Record<string, string>;
398
+ };
399
+ defaults: Record<string, unknown>;
400
+ placeholders: Record<string, string>;
401
+ selected_assessments?: unknown[] | undefined;
402
+ } | undefined;
403
+ assessment_finder_extra_html?: string | undefined;
404
+ favorites?: unknown;
405
+ drilldown_fields?: string[] | undefined;
406
+ debug_report?: string | undefined;
407
+ } | null, ReportData | {
408
+ form_html?: string | undefined;
409
+ form_fields?: Record<string, {
410
+ label?: string;
411
+ default?: unknown;
412
+ options?: Record<string, string>;
413
+ required?: boolean;
414
+ disabled?: boolean;
415
+ }> | undefined;
416
+ demographic_fields?: Record<string, {
417
+ label?: string;
418
+ default?: unknown;
419
+ options?: Record<string, string>;
420
+ required?: boolean;
421
+ disabled?: boolean;
422
+ }> | undefined;
423
+ form_action?: string | undefined;
424
+ form_method?: string | undefined;
425
+ hidden_fields?: Record<string, unknown> | undefined;
426
+ form_data?: Record<string, unknown> | undefined;
427
+ selected_filter_options?: Record<string, unknown> | undefined;
428
+ additional_field_names?: string[] | undefined;
429
+ additional_fields?: Record<string, {
430
+ label?: string;
431
+ default?: unknown;
432
+ options?: Record<string, string>;
433
+ required?: boolean;
434
+ disabled?: boolean;
435
+ control?: "select" | "checkbox" | "text";
436
+ }> | undefined;
437
+ additional_fields_html?: Record<string, string> | undefined;
438
+ extra_html?: string | undefined;
439
+ report_html?: string | undefined;
440
+ pagination?: {
441
+ currentPage: number;
442
+ totalPages: number;
443
+ hasNext: boolean;
444
+ hasPrev: boolean;
445
+ } | undefined;
446
+ has_assessment_finder?: boolean | undefined;
447
+ cascading_field_names?: string[] | undefined;
448
+ multiple_assessment_ids_data?: {
449
+ label?: string | undefined;
450
+ value?: string | undefined;
451
+ selected?: {
452
+ [x: string]: unknown;
453
+ type_id: number;
454
+ title: string;
455
+ date_administered?: string | undefined;
456
+ author?: string | undefined;
457
+ }[] | undefined;
458
+ } | undefined;
459
+ assessment_finder_form_html?: string | undefined;
460
+ assessment_finder_data?: {
461
+ filters: {
462
+ year: Record<string, string>;
463
+ grade: Record<string, string>;
464
+ subject: Record<string, string>;
465
+ sub_type: Record<string, string>;
466
+ type_id: Record<string, string>;
467
+ date_taken: Record<string, string>;
468
+ };
469
+ defaults: Record<string, unknown>;
470
+ placeholders: Record<string, string>;
471
+ selected_assessments?: unknown[] | undefined;
472
+ } | undefined;
473
+ assessment_finder_extra_html?: string | undefined;
474
+ favorites?: unknown;
475
+ drilldown_fields?: string[] | undefined;
476
+ debug_report?: string | undefined;
477
+ } | null>;
478
+ reportHtml: import('vue').Ref<string | null, string | null>;
479
+ pagination: import('vue').Ref<{
480
+ currentPage: number;
481
+ totalPages: number;
482
+ hasNext: boolean;
483
+ hasPrev: boolean;
484
+ }, PaginationData | {
485
+ currentPage: number;
486
+ totalPages: number;
487
+ hasNext: boolean;
488
+ hasPrev: boolean;
489
+ }>;
490
+ isLoading: import('vue').Ref<boolean, boolean>;
491
+ isGeneratingDownload: import('vue').Ref<boolean, boolean>;
492
+ isFavorite: import('vue').Ref<boolean, boolean>;
493
+ debugReport: import('vue').Ref<string | null, string | null>;
494
+ hasReport: import('vue').ComputedRef<boolean>;
495
+ canShowFavorites: import('vue').ComputedRef<boolean>;
496
+ setReportData: (data: ReportData) => void;
497
+ setReportHtml: (html: string, paginationData?: PaginationData) => void;
498
+ setLoading: (loading: boolean) => void;
499
+ setGeneratingDownload: (generating: boolean) => void;
500
+ setFavorite: (favorite: boolean) => void;
501
+ setPagination: (paginationData: PaginationData) => void;
502
+ reset: () => void;
503
+ }, "reset" | "setReportData" | "setReportHtml" | "setLoading" | "setGeneratingDownload" | "setFavorite" | "setPagination">>;
@@ -0,0 +1,54 @@
1
+ /**
2
+ * @file types/index.ts
3
+ * @description Type definitions for Code Based Jasper Report
4
+ * @author Illuminate Education
5
+ * @lastUpdated 2025-01-03
6
+ */
7
+ /**
8
+ * Initial data structure from APP_DATA (passed from PHP)
9
+ */
10
+ export interface InitialData {
11
+ base_url?: string;
12
+ jasper_prebuilt_id?: number | string;
13
+ jasper_report_title?: string;
14
+ report_uri?: string;
15
+ user?: {
16
+ user_id?: number | string;
17
+ is_god?: boolean;
18
+ };
19
+ utra?: unknown;
20
+ session?: unknown;
21
+ referrer_params?: {
22
+ ref_assessment_id?: number | string;
23
+ ref_skill_asmt_id?: number | string;
24
+ referrer_gradebook_id?: number | string;
25
+ };
26
+ ref_skill_asmt_id?: number | string;
27
+ ref_skill_asmt_title?: string;
28
+ uses_visualize_js?: boolean;
29
+ uses_item_preview_js?: boolean;
30
+ has_assessment_finder?: boolean;
31
+ can_share?: boolean;
32
+ request_params?: Record<string, unknown>;
33
+ }
34
+ /**
35
+ * Form field definition for dynamic form rendering
36
+ * Matches the structure returned by StudentSearch_Scope::getVueFields()
37
+ */
38
+ export interface FormFieldData {
39
+ default?: unknown;
40
+ options?: Record<string, string> | Array<{
41
+ label: string;
42
+ value: unknown;
43
+ }>;
44
+ }
45
+ /**
46
+ * Form data structure with fields
47
+ */
48
+ export interface FormDataWithFields {
49
+ fields?: Record<string, FormFieldData>;
50
+ form_action?: string;
51
+ form_method?: string;
52
+ hidden_fields?: Record<string, unknown>;
53
+ [key: string]: unknown;
54
+ }
@@ -0,0 +1,32 @@
1
+ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
2
+ reportFiltersRef: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
3
+ formData?: import('../services/codeBasedJasperApi').ReportData;
4
+ extraHtml?: string;
5
+ }> & Readonly<{
6
+ "onForm-submitted"?: ((data: Record<string, unknown>) => any) | undefined;
7
+ "onField-changed"?: ((fieldName: string, value: unknown) => any) | undefined;
8
+ }>, {
9
+ getFormData: () => Record<string, unknown>;
10
+ submitForm: () => void;
11
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
12
+ "form-submitted": (data: Record<string, unknown>) => any;
13
+ "field-changed": (fieldName: string, value: unknown) => any;
14
+ }, import('vue').PublicProps, {}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
15
+ P: {};
16
+ B: {};
17
+ D: {};
18
+ C: {};
19
+ M: {};
20
+ Defaults: {};
21
+ }, Readonly<{
22
+ formData?: import('../services/codeBasedJasperApi').ReportData;
23
+ extraHtml?: string;
24
+ }> & Readonly<{
25
+ "onForm-submitted"?: ((data: Record<string, unknown>) => any) | undefined;
26
+ "onField-changed"?: ((fieldName: string, value: unknown) => any) | undefined;
27
+ }>, {
28
+ getFormData: () => Record<string, unknown>;
29
+ submitForm: () => void;
30
+ }, {}, {}, {}, {}> | null;
31
+ }, HTMLDivElement>;
32
+ export default _default;
@@ -0,0 +1,51 @@
1
+ import { App as VueApp } from 'vue';
2
+ import { GlobalErrorHandlingOptions } from './plugins/globalErrorHandling';
3
+ import { BackendContext } from './context/backendContext';
4
+ import { IntegrationOptions } from './services/integration';
5
+ import { VuetifyOptions } from './plugins/vuetify';
6
+ export type CreateDnaAtdAppOptions = {
7
+ elementId?: string;
8
+ errorHandling?: GlobalErrorHandlingOptions | false;
9
+ vuetify?: VuetifyOptions | false;
10
+ /**
11
+ * Optional backend data to provide to the app.
12
+ * If omitted, values are read from the DOM via the integration service.
13
+ */
14
+ backendContext?: BackendContext;
15
+ /**
16
+ * Optional configuration for integration bootstrap lookup.
17
+ * Only used when backendContext is not provided.
18
+ */
19
+ integration?: IntegrationOptions;
20
+ };
21
+ export declare function createDnaAtdApp(options?: CreateDnaAtdAppOptions | string): import('vue').ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import('vue').ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import('vue').ComponentProvideOptions>, {}, {}, "", {}, any>;
22
+ export declare function createDnaAtdAppInstance(options?: {
23
+ errorHandling?: GlobalErrorHandlingOptions | false;
24
+ }): VueApp;
25
+ export { default as App } from './App.vue';
26
+ export { default as router } from './router';
27
+ export { default as BaseButton } from './components/common/BaseButton.vue';
28
+ export { default as BaseInput } from './components/common/BaseInput.vue';
29
+ export { default as BaseModal } from './components/common/BaseModal.vue';
30
+ export { default as ErrorBoundary } from './components/common/ErrorBoundary.vue';
31
+ export { useAsync } from './composables/useAsync';
32
+ export { useForm } from './composables/useForm';
33
+ export { useClickOutside } from './composables/useClickOutside';
34
+ export { useLocalStorage } from './composables/useLocalStorage';
35
+ export { useWindowSize } from './composables/useWindowSize';
36
+ export { useValidationStore } from './features/admin/validation/store/validationStore';
37
+ export { useCustomizationStore } from './features/admin/customization/store/customizationStore';
38
+ export { useCodeBasedJasperStore } from './features/reports/codeBasedJasper/store/codeBasedJasperStore';
39
+ export { useValidation } from './features/admin/validation/composables/useValidation';
40
+ export { useCustomization } from './features/admin/customization/composables/useCustomization';
41
+ export { useCodeBasedJasper } from './features/reports/codeBasedJasper/composables/useCodeBasedJasper';
42
+ export { mountCodeBasedJasperReport } from './features/reports/codeBasedJasper/mount';
43
+ export { apiService } from './services/apiService';
44
+ export { appConfig } from './config/app.config';
45
+ export { integration } from './services/integration';
46
+ export { createVuetifyInstance } from './plugins/vuetify';
47
+ export type { BackendConfig, BackendUser, BackendContextData } from './types/backend';
48
+ export type { ApiEndpointMap, ApiResponseFor, ApiMethod, JsonValue } from './types/api';
49
+ export * from './utils/helpers';
50
+ export * from './context/backendContext';
51
+ export * from './plugins/globalErrorHandling';
@@ -0,0 +1,2 @@
1
+ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
2
+ export default _default;
@@ -0,0 +1,36 @@
1
+ import { App as VueApp } from 'vue';
2
+ export type GlobalErrorContext = {
3
+ source: 'vue';
4
+ info?: string;
5
+ } | {
6
+ source: 'vue.captured';
7
+ info?: string;
8
+ } | {
9
+ source: 'window.error';
10
+ filename?: string;
11
+ lineno?: number;
12
+ colno?: number;
13
+ } | {
14
+ source: 'window.unhandledrejection';
15
+ };
16
+ export type GlobalErrorReporter = (error: unknown, context: GlobalErrorContext) => void;
17
+ export type GlobalErrorHandlingOptions = {
18
+ /**
19
+ * Optional hook to forward errors to your backend (or logging pipeline).
20
+ * If not provided, errors are ignored.
21
+ */
22
+ reporter?: GlobalErrorReporter;
23
+ /**
24
+ * When true, window handlers are registered (onerror + unhandledrejection).
25
+ * Defaults to true. Safe to call multiple times (idempotent).
26
+ */
27
+ enableWindowHandlers?: boolean;
28
+ };
29
+ export declare function reportGlobalError(error: unknown, context: GlobalErrorContext): void;
30
+ /**
31
+ * Configures global error handling for a Vue application:
32
+ * - Vue `app.config.errorHandler`
33
+ * - `window.onerror`
34
+ * - `window.unhandledrejection`
35
+ */
36
+ export declare function configureGlobalErrorHandling(app: VueApp, options?: GlobalErrorHandlingOptions): void;