@aibrains/shared-types 0.1.1 → 0.3.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 (61) hide show
  1. package/dist/mappers/edfi/education-org.mapper.d.ts +156 -0
  2. package/dist/mappers/edfi/education-org.mapper.d.ts.map +1 -0
  3. package/dist/mappers/edfi/education-org.mapper.js +355 -0
  4. package/dist/mappers/edfi/education-org.mapper.js.map +1 -0
  5. package/dist/mappers/edfi/index.d.ts +1 -0
  6. package/dist/mappers/edfi/index.d.ts.map +1 -1
  7. package/dist/mappers/edfi/index.js +1 -0
  8. package/dist/mappers/edfi/index.js.map +1 -1
  9. package/dist/schemas/academics/assignment.schema.d.ts +10 -10
  10. package/dist/schemas/academics/course.schema.d.ts +10 -10
  11. package/dist/schemas/academics/grade.schema.d.ts +13 -13
  12. package/dist/schemas/enrollment/enrollment.schema.d.ts +49 -49
  13. package/dist/schemas/identity/academic-year.schema.d.ts +12 -12
  14. package/dist/schemas/identity/auth.schema.d.ts +10 -10
  15. package/dist/schemas/identity/credential.schema.d.ts +12 -12
  16. package/dist/schemas/identity/education-org-descriptors.d.ts +314 -0
  17. package/dist/schemas/identity/education-org-descriptors.d.ts.map +1 -0
  18. package/dist/schemas/identity/education-org-descriptors.js +245 -0
  19. package/dist/schemas/identity/education-org-descriptors.js.map +1 -0
  20. package/dist/schemas/identity/education-org-hierarchy.schema.d.ts +65 -0
  21. package/dist/schemas/identity/education-org-hierarchy.schema.d.ts.map +1 -0
  22. package/dist/schemas/identity/education-org-hierarchy.schema.js +46 -0
  23. package/dist/schemas/identity/education-org-hierarchy.schema.js.map +1 -0
  24. package/dist/schemas/identity/education-organization.schema.d.ts +127 -0
  25. package/dist/schemas/identity/education-organization.schema.d.ts.map +1 -0
  26. package/dist/schemas/identity/education-organization.schema.js +102 -0
  27. package/dist/schemas/identity/education-organization.schema.js.map +1 -0
  28. package/dist/schemas/identity/education-service-center.schema.d.ts +826 -0
  29. package/dist/schemas/identity/education-service-center.schema.d.ts.map +1 -0
  30. package/dist/schemas/identity/education-service-center.schema.js +85 -0
  31. package/dist/schemas/identity/education-service-center.schema.js.map +1 -0
  32. package/dist/schemas/identity/index.d.ts +8 -0
  33. package/dist/schemas/identity/index.d.ts.map +1 -1
  34. package/dist/schemas/identity/index.js +9 -0
  35. package/dist/schemas/identity/index.js.map +1 -1
  36. package/dist/schemas/identity/local-education-agency.schema.d.ts +888 -0
  37. package/dist/schemas/identity/local-education-agency.schema.d.ts.map +1 -0
  38. package/dist/schemas/identity/local-education-agency.schema.js +96 -0
  39. package/dist/schemas/identity/local-education-agency.schema.js.map +1 -0
  40. package/dist/schemas/identity/school.schema.d.ts +404 -0
  41. package/dist/schemas/identity/school.schema.d.ts.map +1 -1
  42. package/dist/schemas/identity/school.schema.js +35 -0
  43. package/dist/schemas/identity/school.schema.js.map +1 -1
  44. package/dist/schemas/identity/staff-assignment.schema.d.ts +240 -0
  45. package/dist/schemas/identity/staff-assignment.schema.d.ts.map +1 -0
  46. package/dist/schemas/identity/staff-assignment.schema.js +72 -0
  47. package/dist/schemas/identity/staff-assignment.schema.js.map +1 -0
  48. package/dist/schemas/identity/staff-employment-history.schema.d.ts +114 -0
  49. package/dist/schemas/identity/staff-employment-history.schema.d.ts.map +1 -0
  50. package/dist/schemas/identity/staff-employment-history.schema.js +31 -0
  51. package/dist/schemas/identity/staff-employment-history.schema.js.map +1 -0
  52. package/dist/schemas/identity/staff.schema.d.ts +482 -10
  53. package/dist/schemas/identity/staff.schema.d.ts.map +1 -1
  54. package/dist/schemas/identity/staff.schema.js +15 -1
  55. package/dist/schemas/identity/staff.schema.js.map +1 -1
  56. package/dist/schemas/identity/state-education-agency.schema.d.ts +511 -0
  57. package/dist/schemas/identity/state-education-agency.schema.d.ts.map +1 -0
  58. package/dist/schemas/identity/state-education-agency.schema.js +68 -0
  59. package/dist/schemas/identity/state-education-agency.schema.js.map +1 -0
  60. package/dist/schemas/identity/user.schema.d.ts +10 -10
  61. package/package.json +1 -1
@@ -0,0 +1,156 @@
1
+ /**
2
+ * Education Organization Ed-Fi Mapper
3
+ *
4
+ * Converts EdForge Education Organization data (School, LEA, SEA, ESC) to
5
+ * Ed-Fi Data Standard format for compliance export.
6
+ * Ed-Fi Data Standard v6.0: https://docs.ed-fi.org/reference/data-exchange/data-standard/
7
+ */
8
+ import type { SchoolResponseDto } from '../../schemas/identity/school.schema';
9
+ import type { SeaResponseDto } from '../../schemas/identity/state-education-agency.schema';
10
+ import type { LeaResponseDto } from '../../schemas/identity/local-education-agency.schema';
11
+ import type { EscResponseDto } from '../../schemas/identity/education-service-center.schema';
12
+ export interface EdFiSchool {
13
+ schoolId: number;
14
+ nameOfInstitution: string;
15
+ shortNameOfInstitution?: string;
16
+ webSite?: string;
17
+ operationalStatusDescriptor?: string;
18
+ schoolCategories?: EdFiDescriptorRef[];
19
+ schoolTypeDescriptor?: string;
20
+ gradeLevels?: EdFiDescriptorRef[];
21
+ charterStatusDescriptor?: string;
22
+ administrativeFundingControlDescriptor?: string;
23
+ titleIPartASchoolDesignationDescriptor?: string;
24
+ addresses?: EdFiEducationOrganizationAddress[];
25
+ identificationCodes?: EdFiEducationOrganizationIdentificationCode[];
26
+ institutionTelephones?: EdFiInstitutionTelephone[];
27
+ localEducationAgencyReference?: {
28
+ localEducationAgencyId: number;
29
+ };
30
+ _ext?: EdForgeSchoolExtension;
31
+ }
32
+ export interface EdFiLocalEducationAgency {
33
+ localEducationAgencyId: number;
34
+ nameOfInstitution: string;
35
+ shortNameOfInstitution?: string;
36
+ webSite?: string;
37
+ operationalStatusDescriptor: string;
38
+ localEducationAgencyCategoryDescriptor: string;
39
+ charterStatusDescriptor?: string;
40
+ categories?: EdFiDescriptorRef[];
41
+ addresses?: EdFiEducationOrganizationAddress[];
42
+ identificationCodes?: EdFiEducationOrganizationIdentificationCode[];
43
+ institutionTelephones?: EdFiInstitutionTelephone[];
44
+ stateEducationAgencyReference?: {
45
+ stateEducationAgencyId: number;
46
+ };
47
+ educationServiceCenterReference?: {
48
+ educationServiceCenterId: number;
49
+ };
50
+ parentLocalEducationAgencyReference?: {
51
+ localEducationAgencyId: number;
52
+ };
53
+ _ext?: EdForgeLeaExtension;
54
+ }
55
+ export interface EdFiStateEducationAgency {
56
+ stateEducationAgencyId: number;
57
+ nameOfInstitution: string;
58
+ shortNameOfInstitution?: string;
59
+ webSite?: string;
60
+ operationalStatusDescriptor: string;
61
+ categories?: EdFiDescriptorRef[];
62
+ addresses?: EdFiEducationOrganizationAddress[];
63
+ identificationCodes?: EdFiEducationOrganizationIdentificationCode[];
64
+ institutionTelephones?: EdFiInstitutionTelephone[];
65
+ _ext?: EdForgeSeaExtension;
66
+ }
67
+ export interface EdFiEducationServiceCenter {
68
+ educationServiceCenterId: number;
69
+ nameOfInstitution: string;
70
+ shortNameOfInstitution?: string;
71
+ webSite?: string;
72
+ operationalStatusDescriptor: string;
73
+ categories?: EdFiDescriptorRef[];
74
+ addresses?: EdFiEducationOrganizationAddress[];
75
+ identificationCodes?: EdFiEducationOrganizationIdentificationCode[];
76
+ institutionTelephones?: EdFiInstitutionTelephone[];
77
+ stateEducationAgencyReference?: {
78
+ stateEducationAgencyId: number;
79
+ };
80
+ _ext?: EdForgeEscExtension;
81
+ }
82
+ export interface EdFiDescriptorRef {
83
+ [descriptorName: string]: string;
84
+ }
85
+ export interface EdFiEducationOrganizationAddress {
86
+ addressTypeDescriptor: string;
87
+ streetNumberName: string;
88
+ apartmentRoomSuiteNumber?: string;
89
+ city: string;
90
+ stateAbbreviationDescriptor: string;
91
+ postalCode: string;
92
+ nameOfCounty?: string;
93
+ countyFIPSCode?: string;
94
+ latitude?: string;
95
+ longitude?: string;
96
+ }
97
+ export interface EdFiEducationOrganizationIdentificationCode {
98
+ educationOrganizationIdentificationSystemDescriptor: string;
99
+ identificationCode: string;
100
+ }
101
+ export interface EdFiInstitutionTelephone {
102
+ institutionTelephoneNumberTypeDescriptor: string;
103
+ telephoneNumber: string;
104
+ }
105
+ export interface EdForgeSchoolExtension {
106
+ edforge_schoolId: string;
107
+ edforge_tenantId?: string;
108
+ edforge_schoolCode: string;
109
+ edforge_internalSchoolType: string;
110
+ }
111
+ export interface EdForgeLeaExtension {
112
+ edforge_leaId: string;
113
+ edforge_tenantId: string;
114
+ }
115
+ export interface EdForgeSeaExtension {
116
+ edforge_seaId: string;
117
+ edforge_tenantId: string;
118
+ }
119
+ export interface EdForgeEscExtension {
120
+ edforge_escId: string;
121
+ edforge_tenantId: string;
122
+ }
123
+ /**
124
+ * Build an Ed-Fi descriptor URI from namespace and value.
125
+ * @example toEdFiDescriptorUri('SchoolCategoryDescriptor', 'High School')
126
+ * => 'uri://ed-fi.org/SchoolCategoryDescriptor#High School'
127
+ */
128
+ export declare function toEdFiDescriptorUri(namespace: string, value: string): string;
129
+ /**
130
+ * Convert EdForge School to Ed-Fi School format.
131
+ * Note: SchoolResponseDto uses a string schoolCode (EdForge internal), while
132
+ * Ed-Fi requires a numeric schoolId. The schoolCode is preserved in _ext.
133
+ * The caller must provide the numeric Ed-Fi school ID separately if different.
134
+ */
135
+ export declare function toEdFiSchool(school: SchoolResponseDto, edfiSchoolId?: number): EdFiSchool;
136
+ /**
137
+ * Convert EdForge LEA to Ed-Fi LocalEducationAgency format.
138
+ * Hierarchy references (SEA, ESC, parent LEA) use internal UUIDs in EdForge
139
+ * but Ed-Fi requires numeric IDs. The caller must resolve these.
140
+ */
141
+ export declare function toEdFiLocalEducationAgency(lea: LeaResponseDto, refs?: {
142
+ seaEdFiId?: number;
143
+ escEdFiId?: number;
144
+ parentLeaEdFiId?: number;
145
+ }): EdFiLocalEducationAgency;
146
+ /**
147
+ * Convert EdForge SEA to Ed-Fi StateEducationAgency format.
148
+ */
149
+ export declare function toEdFiStateEducationAgency(sea: SeaResponseDto): EdFiStateEducationAgency;
150
+ /**
151
+ * Convert EdForge ESC to Ed-Fi EducationServiceCenter format.
152
+ */
153
+ export declare function toEdFiEducationServiceCenter(esc: EscResponseDto, seaEdFiId?: number): EdFiEducationServiceCenter;
154
+ export declare function toEdFiSchoolBatch(schools: SchoolResponseDto[]): EdFiSchool[];
155
+ export declare function toEdFiLeaBatch(leas: LeaResponseDto[]): EdFiLocalEducationAgency[];
156
+ //# sourceMappingURL=education-org.mapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"education-org.mapper.d.ts","sourceRoot":"","sources":["../../../src/mappers/edfi/education-org.mapper.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AAO7F,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,gBAAgB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACvC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,sCAAsC,CAAC,EAAE,MAAM,CAAC;IAChD,sCAAsC,CAAC,EAAE,MAAM,CAAC;IAChD,SAAS,CAAC,EAAE,gCAAgC,EAAE,CAAC;IAC/C,mBAAmB,CAAC,EAAE,2CAA2C,EAAE,CAAC;IACpE,qBAAqB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACnD,6BAA6B,CAAC,EAAE;QAAE,sBAAsB,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,IAAI,CAAC,EAAE,sBAAsB,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACvC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B,EAAE,MAAM,CAAC;IACpC,sCAAsC,EAAE,MAAM,CAAC;IAC/C,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,UAAU,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,gCAAgC,EAAE,CAAC;IAC/C,mBAAmB,CAAC,EAAE,2CAA2C,EAAE,CAAC;IACpE,qBAAqB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACnD,6BAA6B,CAAC,EAAE;QAAE,sBAAsB,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,+BAA+B,CAAC,EAAE;QAAE,wBAAwB,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE,mCAAmC,CAAC,EAAE;QAAE,sBAAsB,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B,EAAE,MAAM,CAAC;IACpC,UAAU,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,gCAAgC,EAAE,CAAC;IAC/C,mBAAmB,CAAC,EAAE,2CAA2C,EAAE,CAAC;IACpE,qBAAqB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACnD,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC5B;AAED,MAAM,WAAW,0BAA0B;IACzC,wBAAwB,EAAE,MAAM,CAAC;IACjC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B,EAAE,MAAM,CAAC;IACpC,UAAU,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,gCAAgC,EAAE,CAAC;IAC/C,mBAAmB,CAAC,EAAE,2CAA2C,EAAE,CAAC;IACpE,qBAAqB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACnD,6BAA6B,CAAC,EAAE;QAAE,sBAAsB,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC5B;AAMD,MAAM,WAAW,iBAAiB;IAChC,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,gCAAgC;IAC/C,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B,EAAE,MAAM,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,2CAA2C;IAC1D,mDAAmD,EAAE,MAAM,CAAC;IAC5D,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,wCAAwC,EAAE,MAAM,CAAC;IACjD,eAAe,EAAE,MAAM,CAAC;CACzB;AAMD,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAMD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5E;AAsKD;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,iBAAiB,EACzB,YAAY,CAAC,EAAE,MAAM,GACpB,UAAU,CA6EZ;AAMD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,cAAc,EACnB,IAAI,CAAC,EAAE;IACL,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GACA,wBAAwB,CAyC1B;AAMD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,cAAc,GAAG,wBAAwB,CAyBxF;AAMD;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,cAAc,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,0BAA0B,CA6B5B;AAMD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,UAAU,EAAE,CAE5E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,wBAAwB,EAAE,CAEjF"}
@@ -0,0 +1,355 @@
1
+ "use strict";
2
+ /**
3
+ * Education Organization Ed-Fi Mapper
4
+ *
5
+ * Converts EdForge Education Organization data (School, LEA, SEA, ESC) to
6
+ * Ed-Fi Data Standard format for compliance export.
7
+ * Ed-Fi Data Standard v6.0: https://docs.ed-fi.org/reference/data-exchange/data-standard/
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.toEdFiDescriptorUri = toEdFiDescriptorUri;
11
+ exports.toEdFiSchool = toEdFiSchool;
12
+ exports.toEdFiLocalEducationAgency = toEdFiLocalEducationAgency;
13
+ exports.toEdFiStateEducationAgency = toEdFiStateEducationAgency;
14
+ exports.toEdFiEducationServiceCenter = toEdFiEducationServiceCenter;
15
+ exports.toEdFiSchoolBatch = toEdFiSchoolBatch;
16
+ exports.toEdFiLeaBatch = toEdFiLeaBatch;
17
+ // ============================================================================
18
+ // Descriptor URI Helpers
19
+ // ============================================================================
20
+ /**
21
+ * Build an Ed-Fi descriptor URI from namespace and value.
22
+ * @example toEdFiDescriptorUri('SchoolCategoryDescriptor', 'High School')
23
+ * => 'uri://ed-fi.org/SchoolCategoryDescriptor#High School'
24
+ */
25
+ function toEdFiDescriptorUri(namespace, value) {
26
+ return `uri://ed-fi.org/${namespace}#${value}`;
27
+ }
28
+ /** Map an operational status value to its Ed-Fi descriptor URI */
29
+ function mapOperationalStatus(status) {
30
+ const statusLabels = {
31
+ Active: 'Active',
32
+ Added: 'Added',
33
+ ChangedAgency: 'Changed Agency',
34
+ Closed: 'Closed',
35
+ Inactive: 'Inactive',
36
+ New: 'New',
37
+ Reopened: 'Reopened',
38
+ Future: 'Future',
39
+ };
40
+ return toEdFiDescriptorUri('OperationalStatusDescriptor', statusLabels[status] || status);
41
+ }
42
+ /** Map an address type value to its Ed-Fi descriptor URI */
43
+ function mapAddressType(type) {
44
+ return toEdFiDescriptorUri('AddressTypeDescriptor', type);
45
+ }
46
+ /** Map a state abbreviation to its Ed-Fi descriptor URI */
47
+ function mapStateAbbreviation(state) {
48
+ return toEdFiDescriptorUri('StateAbbreviationDescriptor', state);
49
+ }
50
+ /** Map an identification system value to its Ed-Fi descriptor URI */
51
+ function mapIdentificationSystem(system) {
52
+ const systemLabels = {
53
+ NCES: 'NCES Identification Number',
54
+ SEA: 'SEA',
55
+ DUNS: 'DUNS',
56
+ Federal: 'Federal',
57
+ Other: 'Other',
58
+ };
59
+ return toEdFiDescriptorUri('EducationOrganizationIdentificationSystemDescriptor', systemLabels[system] || system);
60
+ }
61
+ /** Map a telephone number type value to its Ed-Fi descriptor URI */
62
+ function mapTelephoneType(type) {
63
+ return toEdFiDescriptorUri('InstitutionTelephoneNumberTypeDescriptor', type);
64
+ }
65
+ /** Map a school category value to its Ed-Fi descriptor URI */
66
+ function mapSchoolCategory(value) {
67
+ const categoryLabels = {
68
+ AllLevels: 'All Levels',
69
+ Elementary: 'Elementary School',
70
+ HighSchool: 'High School',
71
+ MiddleSchool: 'Middle School',
72
+ SecondarySchool: 'Secondary School',
73
+ Ungraded: 'Ungraded',
74
+ };
75
+ return toEdFiDescriptorUri('SchoolCategoryDescriptor', categoryLabels[value] || value);
76
+ }
77
+ /** Map a school type descriptor value to its Ed-Fi descriptor URI */
78
+ function mapSchoolType(value) {
79
+ const typeLabels = {
80
+ Regular: 'Regular',
81
+ SpecialEducation: 'Special Education',
82
+ CareerAndTechnical: 'Career and Technical Education',
83
+ Alternative: 'Alternative',
84
+ };
85
+ return toEdFiDescriptorUri('SchoolTypeDescriptor', typeLabels[value] || value);
86
+ }
87
+ /** Map a grade level descriptor value to its Ed-Fi descriptor URI */
88
+ function mapGradeLevel(value) {
89
+ const gradeLabels = {
90
+ InfantToddler: 'Infant/toddler',
91
+ Prenursery: 'Prenursery',
92
+ Nursery: 'Nursery',
93
+ Prekindergarten: 'Pre-Kindergarten',
94
+ TransitionalKindergarten: 'Transitional Kindergarten',
95
+ Kindergarten: 'Kindergarten',
96
+ FirstGrade: 'First grade',
97
+ SecondGrade: 'Second grade',
98
+ ThirdGrade: 'Third grade',
99
+ FourthGrade: 'Fourth grade',
100
+ FifthGrade: 'Fifth grade',
101
+ SixthGrade: 'Sixth grade',
102
+ SeventhGrade: 'Seventh grade',
103
+ EighthGrade: 'Eighth grade',
104
+ NinthGrade: 'Ninth grade',
105
+ TenthGrade: 'Tenth grade',
106
+ EleventhGrade: 'Eleventh grade',
107
+ TwelfthGrade: 'Twelfth grade',
108
+ Postsecondary: 'Postsecondary',
109
+ Ungraded: 'Ungraded',
110
+ Other: 'Other',
111
+ };
112
+ return toEdFiDescriptorUri('GradeLevelDescriptor', gradeLabels[value] || value);
113
+ }
114
+ /** Map a LEA category value to its Ed-Fi descriptor URI */
115
+ function mapLeaCategory(value) {
116
+ const categoryLabels = {
117
+ Independent: 'Independent',
118
+ CharterLEA: 'Charter LEA',
119
+ Intermediate: 'Intermediate',
120
+ SupervisoryUnion: 'Supervisory Union',
121
+ Other: 'Other',
122
+ };
123
+ return toEdFiDescriptorUri('LocalEducationAgencyCategoryDescriptor', categoryLabels[value] || value);
124
+ }
125
+ /** Map a charter status value to its Ed-Fi descriptor URI */
126
+ function mapCharterStatus(value) {
127
+ const statusLabels = {
128
+ NotACharter: 'Not a Charter School',
129
+ SchoolCharter: 'School Charter',
130
+ CollegeUniversityCharter: 'College/University Charter',
131
+ OpenEnrollment: 'Open Enrollment',
132
+ };
133
+ return toEdFiDescriptorUri('CharterStatusDescriptor', statusLabels[value] || value);
134
+ }
135
+ // ============================================================================
136
+ // Shared Sub-Resource Mappers
137
+ // ============================================================================
138
+ function mapAddresses(addresses) {
139
+ if (!addresses || addresses.length === 0)
140
+ return undefined;
141
+ return addresses.map(addr => ({
142
+ addressTypeDescriptor: mapAddressType(addr.addressTypeDescriptor),
143
+ streetNumberName: addr.streetNumberName,
144
+ apartmentRoomSuiteNumber: addr.apartmentRoomSuiteNumber,
145
+ city: addr.city,
146
+ stateAbbreviationDescriptor: mapStateAbbreviation(addr.stateAbbreviationDescriptor),
147
+ postalCode: addr.postalCode,
148
+ nameOfCounty: addr.nameOfCounty,
149
+ countyFIPSCode: addr.countyFIPSCode,
150
+ latitude: addr.latitude,
151
+ longitude: addr.longitude,
152
+ }));
153
+ }
154
+ function mapIdentificationCodes(codes) {
155
+ if (!codes || codes.length === 0)
156
+ return undefined;
157
+ return codes.map(code => ({
158
+ educationOrganizationIdentificationSystemDescriptor: mapIdentificationSystem(code.educationOrganizationIdentificationSystemDescriptor),
159
+ identificationCode: code.identificationCode,
160
+ }));
161
+ }
162
+ function mapTelephones(telephones) {
163
+ if (!telephones || telephones.length === 0)
164
+ return undefined;
165
+ return telephones.map(tel => ({
166
+ institutionTelephoneNumberTypeDescriptor: mapTelephoneType(tel.institutionTelephoneNumberTypeDescriptor),
167
+ telephoneNumber: tel.telephoneNumber,
168
+ }));
169
+ }
170
+ // ============================================================================
171
+ // School Mapper
172
+ // ============================================================================
173
+ /**
174
+ * Convert EdForge School to Ed-Fi School format.
175
+ * Note: SchoolResponseDto uses a string schoolCode (EdForge internal), while
176
+ * Ed-Fi requires a numeric schoolId. The schoolCode is preserved in _ext.
177
+ * The caller must provide the numeric Ed-Fi school ID separately if different.
178
+ */
179
+ function toEdFiSchool(school, edfiSchoolId) {
180
+ const result = {
181
+ schoolId: edfiSchoolId !== null && edfiSchoolId !== void 0 ? edfiSchoolId : 0, // Caller should provide the numeric Ed-Fi ID
182
+ nameOfInstitution: school.name,
183
+ shortNameOfInstitution: school.shortName,
184
+ webSite: school.website,
185
+ };
186
+ // School categories
187
+ if (school.schoolCategories && school.schoolCategories.length > 0) {
188
+ result.schoolCategories = school.schoolCategories.map(cat => ({
189
+ schoolCategoryDescriptor: mapSchoolCategory(cat),
190
+ }));
191
+ }
192
+ // School type descriptor
193
+ if (school.schoolTypeDescriptor) {
194
+ result.schoolTypeDescriptor = mapSchoolType(school.schoolTypeDescriptor);
195
+ }
196
+ // Grade levels
197
+ if (school.gradeLevels && school.gradeLevels.length > 0) {
198
+ result.gradeLevels = school.gradeLevels.map(gl => ({
199
+ gradeLevelDescriptor: mapGradeLevel(gl),
200
+ }));
201
+ }
202
+ // Charter status
203
+ if (school.charterStatusDescriptor) {
204
+ result.charterStatusDescriptor = mapCharterStatus(school.charterStatusDescriptor);
205
+ }
206
+ // Administrative funding control
207
+ if (school.administrativeFundingControlDescriptor) {
208
+ result.administrativeFundingControlDescriptor = toEdFiDescriptorUri('AdministrativeFundingControlDescriptor', school.administrativeFundingControlDescriptor === 'Public' ? 'Public School' :
209
+ school.administrativeFundingControlDescriptor === 'Private' ? 'Private School' :
210
+ school.administrativeFundingControlDescriptor);
211
+ }
212
+ // Title I
213
+ if (school.titleIPartASchoolDesignationDescriptor) {
214
+ result.titleIPartASchoolDesignationDescriptor = school.titleIPartASchoolDesignationDescriptor;
215
+ }
216
+ // Addresses (from Ed-Fi-style addresses if present, or map from legacy address)
217
+ if (school.address) {
218
+ result.addresses = [{
219
+ addressTypeDescriptor: toEdFiDescriptorUri('AddressTypeDescriptor', 'Physical'),
220
+ streetNumberName: school.address.street1,
221
+ apartmentRoomSuiteNumber: school.address.street2,
222
+ city: school.address.city,
223
+ stateAbbreviationDescriptor: toEdFiDescriptorUri('StateAbbreviationDescriptor', school.address.state),
224
+ postalCode: school.address.zipCode,
225
+ }];
226
+ }
227
+ // Identification codes
228
+ if (school.identificationCodes && school.identificationCodes.length > 0) {
229
+ result.identificationCodes = mapIdentificationCodes(school.identificationCodes);
230
+ }
231
+ // Telephones
232
+ if (school.institutionTelephones && school.institutionTelephones.length > 0) {
233
+ result.institutionTelephones = mapTelephones(school.institutionTelephones);
234
+ }
235
+ // EdForge extension for round-trip
236
+ result._ext = {
237
+ edforge_schoolId: school.schoolId,
238
+ edforge_schoolCode: school.schoolCode,
239
+ edforge_internalSchoolType: school.schoolType,
240
+ };
241
+ return result;
242
+ }
243
+ // ============================================================================
244
+ // LEA Mapper
245
+ // ============================================================================
246
+ /**
247
+ * Convert EdForge LEA to Ed-Fi LocalEducationAgency format.
248
+ * Hierarchy references (SEA, ESC, parent LEA) use internal UUIDs in EdForge
249
+ * but Ed-Fi requires numeric IDs. The caller must resolve these.
250
+ */
251
+ function toEdFiLocalEducationAgency(lea, refs) {
252
+ const result = {
253
+ localEducationAgencyId: lea.localEducationAgencyId,
254
+ nameOfInstitution: lea.nameOfInstitution,
255
+ shortNameOfInstitution: lea.shortNameOfInstitution,
256
+ webSite: lea.webSite,
257
+ operationalStatusDescriptor: mapOperationalStatus(lea.operationalStatusDescriptor),
258
+ localEducationAgencyCategoryDescriptor: mapLeaCategory(lea.leaCategoryDescriptor),
259
+ };
260
+ if (lea.charterStatusDescriptor) {
261
+ result.charterStatusDescriptor = mapCharterStatus(lea.charterStatusDescriptor);
262
+ }
263
+ if (lea.categories && lea.categories.length > 0) {
264
+ result.categories = lea.categories.map(cat => ({
265
+ educationOrganizationCategoryDescriptor: cat.educationOrganizationCategoryDescriptor,
266
+ }));
267
+ }
268
+ result.addresses = mapAddresses(lea.addresses);
269
+ result.identificationCodes = mapIdentificationCodes(lea.identificationCodes);
270
+ result.institutionTelephones = mapTelephones(lea.telephones);
271
+ // Hierarchy references
272
+ if (refs === null || refs === void 0 ? void 0 : refs.seaEdFiId) {
273
+ result.stateEducationAgencyReference = { stateEducationAgencyId: refs.seaEdFiId };
274
+ }
275
+ if (refs === null || refs === void 0 ? void 0 : refs.escEdFiId) {
276
+ result.educationServiceCenterReference = { educationServiceCenterId: refs.escEdFiId };
277
+ }
278
+ if (refs === null || refs === void 0 ? void 0 : refs.parentLeaEdFiId) {
279
+ result.parentLocalEducationAgencyReference = { localEducationAgencyId: refs.parentLeaEdFiId };
280
+ }
281
+ result._ext = {
282
+ edforge_leaId: lea.id,
283
+ edforge_tenantId: lea.tenantId,
284
+ };
285
+ return result;
286
+ }
287
+ // ============================================================================
288
+ // SEA Mapper
289
+ // ============================================================================
290
+ /**
291
+ * Convert EdForge SEA to Ed-Fi StateEducationAgency format.
292
+ */
293
+ function toEdFiStateEducationAgency(sea) {
294
+ const result = {
295
+ stateEducationAgencyId: sea.stateEducationAgencyId,
296
+ nameOfInstitution: sea.nameOfInstitution,
297
+ shortNameOfInstitution: sea.shortNameOfInstitution,
298
+ webSite: sea.webSite,
299
+ operationalStatusDescriptor: mapOperationalStatus(sea.operationalStatusDescriptor),
300
+ };
301
+ if (sea.categories && sea.categories.length > 0) {
302
+ result.categories = sea.categories.map(cat => ({
303
+ educationOrganizationCategoryDescriptor: cat.educationOrganizationCategoryDescriptor,
304
+ }));
305
+ }
306
+ result.addresses = mapAddresses(sea.addresses);
307
+ result.identificationCodes = mapIdentificationCodes(sea.identificationCodes);
308
+ result.institutionTelephones = mapTelephones(sea.telephones);
309
+ result._ext = {
310
+ edforge_seaId: sea.id,
311
+ edforge_tenantId: sea.tenantId,
312
+ };
313
+ return result;
314
+ }
315
+ // ============================================================================
316
+ // ESC Mapper
317
+ // ============================================================================
318
+ /**
319
+ * Convert EdForge ESC to Ed-Fi EducationServiceCenter format.
320
+ */
321
+ function toEdFiEducationServiceCenter(esc, seaEdFiId) {
322
+ const result = {
323
+ educationServiceCenterId: esc.educationServiceCenterId,
324
+ nameOfInstitution: esc.nameOfInstitution,
325
+ shortNameOfInstitution: esc.shortNameOfInstitution,
326
+ webSite: esc.webSite,
327
+ operationalStatusDescriptor: mapOperationalStatus(esc.operationalStatusDescriptor),
328
+ };
329
+ if (esc.categories && esc.categories.length > 0) {
330
+ result.categories = esc.categories.map(cat => ({
331
+ educationOrganizationCategoryDescriptor: cat.educationOrganizationCategoryDescriptor,
332
+ }));
333
+ }
334
+ result.addresses = mapAddresses(esc.addresses);
335
+ result.identificationCodes = mapIdentificationCodes(esc.identificationCodes);
336
+ result.institutionTelephones = mapTelephones(esc.telephones);
337
+ if (seaEdFiId) {
338
+ result.stateEducationAgencyReference = { stateEducationAgencyId: seaEdFiId };
339
+ }
340
+ result._ext = {
341
+ edforge_escId: esc.id,
342
+ edforge_tenantId: esc.tenantId,
343
+ };
344
+ return result;
345
+ }
346
+ // ============================================================================
347
+ // Batch Converters
348
+ // ============================================================================
349
+ function toEdFiSchoolBatch(schools) {
350
+ return schools.map(s => toEdFiSchool(s));
351
+ }
352
+ function toEdFiLeaBatch(leas) {
353
+ return leas.map(l => toEdFiLocalEducationAgency(l));
354
+ }
355
+ //# sourceMappingURL=education-org.mapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"education-org.mapper.js","sourceRoot":"","sources":["../../../src/mappers/edfi/education-org.mapper.ts"],"names":[],"mappings":"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"}
@@ -7,4 +7,5 @@
7
7
  export * from './staff.mapper';
8
8
  export * from './credential.mapper';
9
9
  export * from './calendar.mapper';
10
+ export * from './education-org.mapper';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mappers/edfi/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mappers/edfi/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
@@ -23,4 +23,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
23
23
  __exportStar(require("./staff.mapper"), exports);
24
24
  __exportStar(require("./credential.mapper"), exports);
25
25
  __exportStar(require("./calendar.mapper"), exports);
26
+ __exportStar(require("./education-org.mapper"), exports);
26
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mappers/edfi/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,iDAA+B;AAC/B,sDAAoC;AACpC,oDAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mappers/edfi/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,iDAA+B;AAC/B,sDAAoC;AACpC,oDAAkC;AAClC,yDAAuC"}
@@ -557,8 +557,8 @@ export declare const updateAssignmentSchema: z.ZodObject<Omit<{
557
557
  learningStandardIds: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
558
558
  }, "classroomId">, "strip", z.ZodTypeAny, {
559
559
  status?: "archived" | "closed" | "draft" | "published" | undefined;
560
- description?: string | undefined;
561
560
  title?: string | undefined;
561
+ description?: string | undefined;
562
562
  gradingPeriodId?: string | undefined;
563
563
  categoryType?: "other" | "assignment" | "quiz" | "test" | "exam" | "project" | "homework" | "participation" | "lab" | "presentation" | undefined;
564
564
  isExtraCredit?: boolean | undefined;
@@ -610,8 +610,8 @@ export declare const updateAssignmentSchema: z.ZodObject<Omit<{
610
610
  learningStandardIds?: string[] | undefined;
611
611
  }, {
612
612
  status?: "archived" | "closed" | "draft" | "published" | undefined;
613
- description?: string | undefined;
614
613
  title?: string | undefined;
614
+ description?: string | undefined;
615
615
  gradingPeriodId?: string | undefined;
616
616
  categoryType?: "other" | "assignment" | "quiz" | "test" | "exam" | "project" | "homework" | "participation" | "lab" | "presentation" | undefined;
617
617
  isExtraCredit?: boolean | undefined;
@@ -817,9 +817,9 @@ export declare const assignmentResponseSchema: z.ZodObject<{
817
817
  createdAt: string;
818
818
  updatedAt: string;
819
819
  title: string;
820
+ assignmentId: string;
820
821
  classroomId: string;
821
822
  isExtraCredit: boolean;
822
- assignmentId: string;
823
823
  pointsPossible: number;
824
824
  assignedDate: string;
825
825
  dueDate: string;
@@ -882,9 +882,9 @@ export declare const assignmentResponseSchema: z.ZodObject<{
882
882
  createdAt: string;
883
883
  updatedAt: string;
884
884
  title: string;
885
+ assignmentId: string;
885
886
  classroomId: string;
886
887
  isExtraCredit: boolean;
887
- assignmentId: string;
888
888
  pointsPossible: number;
889
889
  assignedDate: string;
890
890
  dueDate: string;
@@ -1099,9 +1099,9 @@ export declare const assignmentListResponseSchema: z.ZodObject<{
1099
1099
  createdAt: string;
1100
1100
  updatedAt: string;
1101
1101
  title: string;
1102
+ assignmentId: string;
1102
1103
  classroomId: string;
1103
1104
  isExtraCredit: boolean;
1104
- assignmentId: string;
1105
1105
  pointsPossible: number;
1106
1106
  assignedDate: string;
1107
1107
  dueDate: string;
@@ -1164,9 +1164,9 @@ export declare const assignmentListResponseSchema: z.ZodObject<{
1164
1164
  createdAt: string;
1165
1165
  updatedAt: string;
1166
1166
  title: string;
1167
+ assignmentId: string;
1167
1168
  classroomId: string;
1168
1169
  isExtraCredit: boolean;
1169
- assignmentId: string;
1170
1170
  pointsPossible: number;
1171
1171
  assignedDate: string;
1172
1172
  dueDate: string;
@@ -1234,9 +1234,9 @@ export declare const assignmentListResponseSchema: z.ZodObject<{
1234
1234
  createdAt: string;
1235
1235
  updatedAt: string;
1236
1236
  title: string;
1237
+ assignmentId: string;
1237
1238
  classroomId: string;
1238
1239
  isExtraCredit: boolean;
1239
- assignmentId: string;
1240
1240
  pointsPossible: number;
1241
1241
  assignedDate: string;
1242
1242
  dueDate: string;
@@ -1304,9 +1304,9 @@ export declare const assignmentListResponseSchema: z.ZodObject<{
1304
1304
  createdAt: string;
1305
1305
  updatedAt: string;
1306
1306
  title: string;
1307
+ assignmentId: string;
1307
1308
  classroomId: string;
1308
1309
  isExtraCredit: boolean;
1309
- assignmentId: string;
1310
1310
  pointsPossible: number;
1311
1311
  assignedDate: string;
1312
1312
  dueDate: string;
@@ -1429,8 +1429,8 @@ export declare const studentSubmissionSchema: z.ZodObject<{
1429
1429
  submittedAt: z.ZodOptional<z.ZodString>;
1430
1430
  attemptNumber: z.ZodDefault<z.ZodNumber>;
1431
1431
  }, "strip", z.ZodTypeAny, {
1432
- studentId: string;
1433
1432
  assignmentId: string;
1433
+ studentId: string;
1434
1434
  attemptNumber: number;
1435
1435
  submittedAt?: string | undefined;
1436
1436
  attachments?: {
@@ -1444,8 +1444,8 @@ export declare const studentSubmissionSchema: z.ZodObject<{
1444
1444
  content?: string | undefined;
1445
1445
  externalUrl?: string | undefined;
1446
1446
  }, {
1447
- studentId: string;
1448
1447
  assignmentId: string;
1448
+ studentId: string;
1449
1449
  submittedAt?: string | undefined;
1450
1450
  attachments?: {
1451
1451
  name: string;