@timeback/oneroster 0.1.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 +295 -0
- package/dist/client.d.ts +125 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/constants.d.ts +23 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/errors.d.ts +7 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +1414 -0
- package/dist/factory.d.ts +100 -0
- package/dist/factory.d.ts.map +1 -0
- package/dist/index.d.ts +42 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2614 -0
- package/dist/lib/index.d.ts +11 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/pagination.d.ts +30 -0
- package/dist/lib/pagination.d.ts.map +1 -0
- package/dist/lib/resolve.d.ts +21 -0
- package/dist/lib/resolve.d.ts.map +1 -0
- package/dist/lib/transport.d.ts +32 -0
- package/dist/lib/transport.d.ts.map +1 -0
- package/dist/resources/assessment/index.d.ts +6 -0
- package/dist/resources/assessment/index.d.ts.map +1 -0
- package/dist/resources/assessment/line-items.d.ts +38 -0
- package/dist/resources/assessment/line-items.d.ts.map +1 -0
- package/dist/resources/assessment/results.d.ts +25 -0
- package/dist/resources/assessment/results.d.ts.map +1 -0
- package/dist/resources/base.d.ts +181 -0
- package/dist/resources/base.d.ts.map +1 -0
- package/dist/resources/gradebook/categories.d.ts +16 -0
- package/dist/resources/gradebook/categories.d.ts.map +1 -0
- package/dist/resources/gradebook/index.d.ts +8 -0
- package/dist/resources/gradebook/index.d.ts.map +1 -0
- package/dist/resources/gradebook/line-items.d.ts +52 -0
- package/dist/resources/gradebook/line-items.d.ts.map +1 -0
- package/dist/resources/gradebook/results.d.ts +24 -0
- package/dist/resources/gradebook/results.d.ts.map +1 -0
- package/dist/resources/gradebook/score-scales.d.ts +16 -0
- package/dist/resources/gradebook/score-scales.d.ts.map +1 -0
- package/dist/resources/index.d.ts +11 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/resources/index.d.ts +5 -0
- package/dist/resources/resources/index.d.ts.map +1 -0
- package/dist/resources/resources/resources.d.ts +39 -0
- package/dist/resources/resources/resources.d.ts.map +1 -0
- package/dist/resources/rostering/academic-sessions.d.ts +97 -0
- package/dist/resources/rostering/academic-sessions.d.ts.map +1 -0
- package/dist/resources/rostering/classes.d.ts +276 -0
- package/dist/resources/rostering/classes.d.ts.map +1 -0
- package/dist/resources/rostering/courses.d.ts +75 -0
- package/dist/resources/rostering/courses.d.ts.map +1 -0
- package/dist/resources/rostering/demographics.d.ts +18 -0
- package/dist/resources/rostering/demographics.d.ts.map +1 -0
- package/dist/resources/rostering/enrollments.d.ts +28 -0
- package/dist/resources/rostering/enrollments.d.ts.map +1 -0
- package/dist/resources/rostering/index.d.ts +12 -0
- package/dist/resources/rostering/index.d.ts.map +1 -0
- package/dist/resources/rostering/orgs.d.ts +18 -0
- package/dist/resources/rostering/orgs.d.ts.map +1 -0
- package/dist/resources/rostering/schools.d.ts +214 -0
- package/dist/resources/rostering/schools.d.ts.map +1 -0
- package/dist/resources/rostering/users.d.ts +191 -0
- package/dist/resources/rostering/users.d.ts.map +1 -0
- package/dist/types/base.d.ts +127 -0
- package/dist/types/base.d.ts.map +1 -0
- package/dist/types/callable.d.ts +246 -0
- package/dist/types/callable.d.ts.map +1 -0
- package/dist/types/client.d.ts +58 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/filters.d.ts +165 -0
- package/dist/types/filters.d.ts.map +1 -0
- package/dist/types/gradebook.d.ts +262 -0
- package/dist/types/gradebook.d.ts.map +1 -0
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/resources.d.ts +191 -0
- package/dist/types/resources.d.ts.map +1 -0
- package/dist/types/rostering.d.ts +732 -0
- package/dist/types/rostering.d.ts.map +1 -0
- package/dist/types.d.ts +10 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +0 -0
- package/dist/utils.d.ts +51 -0
- package/dist/utils.d.ts.map +1 -0
- package/package.json +41 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OneRoster Client Factory
|
|
3
|
+
*
|
|
4
|
+
* Creates OneRosterClient classes bound to specific provider registries.
|
|
5
|
+
* Enables platform-specific packages and custom deployments.
|
|
6
|
+
*/
|
|
7
|
+
import { AssessmentResultsResource } from './resources/assessment';
|
|
8
|
+
import { CategoriesResource, ResultsResource, ScoreScalesResource } from './resources/gradebook';
|
|
9
|
+
import { AcademicSessionsResource, DemographicsResource, EnrollmentsResource, GradingPeriodsResource, OrgsResource } from './resources/rostering';
|
|
10
|
+
import type { AuthCheckResult, ProviderRegistry, TimebackProvider } from '@timeback/internal-client-infra';
|
|
11
|
+
import type { AssessmentLineItemsCallable, ClassesCallable, CoursesCallable, LineItemsCallable, OneRosterClientConfig, OneRosterTransportLike, ResourcesCallable, SchoolsCallable, StudentsCallable, TeachersCallable, TermsCallable, UsersCallable } from './types';
|
|
12
|
+
/**
|
|
13
|
+
* Create a OneRosterClient class bound to a specific provider registry.
|
|
14
|
+
*
|
|
15
|
+
* This factory enables:
|
|
16
|
+
* - Platform-specific packages (different default registries)
|
|
17
|
+
* - Custom registries for enterprise deployments
|
|
18
|
+
* - Easier testing with mock registries
|
|
19
|
+
*
|
|
20
|
+
* @param registry - Provider registry to use (defaults to all Timeback platforms)
|
|
21
|
+
* @returns OneRosterClient class bound to the registry
|
|
22
|
+
*
|
|
23
|
+
* @example Default usage (all platforms)
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const OneRosterClient = createOneRosterClient()
|
|
26
|
+
* const client = new OneRosterClient({ env: 'staging', auth: { ... } })
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* @example BeyondAI-only package
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const BEYONDAI_REGISTRY = {
|
|
32
|
+
* defaultPlatform: 'BEYOND_AI',
|
|
33
|
+
* templates: {
|
|
34
|
+
* BEYOND_AI: {
|
|
35
|
+
* staging: { platform: 'BEYOND_AI', env: 'staging' },
|
|
36
|
+
* production: { platform: 'BEYOND_AI', env: 'production' },
|
|
37
|
+
* },
|
|
38
|
+
* },
|
|
39
|
+
* }
|
|
40
|
+
* export const OneRosterClient = createOneRosterClient(BEYONDAI_REGISTRY)
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare function createOneRosterClient(registry?: ProviderRegistry): {
|
|
44
|
+
new (config?: OneRosterClientConfig): {
|
|
45
|
+
/** @internal */
|
|
46
|
+
readonly transport: OneRosterTransportLike;
|
|
47
|
+
/** @internal */
|
|
48
|
+
readonly _provider?: TimebackProvider | undefined;
|
|
49
|
+
/** Query and manage user accounts across the district, including students, teachers, and staff */
|
|
50
|
+
readonly users: UsersCallable;
|
|
51
|
+
/** Query and manage student records, including their classes, enrollments, and demographics */
|
|
52
|
+
readonly students: StudentsCallable;
|
|
53
|
+
/** Query and manage teacher records, including their class assignments and org affiliations */
|
|
54
|
+
readonly teachers: TeachersCallable;
|
|
55
|
+
/** Query and manage organizational hierarchy including districts, schools, and departments */
|
|
56
|
+
readonly orgs: OrgsResource;
|
|
57
|
+
/** Query and manage school records within the district hierarchy */
|
|
58
|
+
readonly schools: SchoolsCallable;
|
|
59
|
+
/** Query and manage class sections, including their teachers, students, and schedules */
|
|
60
|
+
readonly classes: ClassesCallable;
|
|
61
|
+
/** Query and manage course catalog definitions and subject metadata */
|
|
62
|
+
readonly courses: CoursesCallable;
|
|
63
|
+
/** Query and manage student and teacher enrollments in classes */
|
|
64
|
+
readonly enrollments: EnrollmentsResource;
|
|
65
|
+
/** Query and manage academic sessions like school years and semesters */
|
|
66
|
+
readonly academicSessions: AcademicSessionsResource;
|
|
67
|
+
/** Query and manage academic terms within sessions */
|
|
68
|
+
readonly terms: TermsCallable;
|
|
69
|
+
/** Query and manage grading periods for progress reporting */
|
|
70
|
+
readonly gradingPeriods: GradingPeriodsResource;
|
|
71
|
+
/** Query demographic information including race, ethnicity, and other protected data */
|
|
72
|
+
readonly demographics: DemographicsResource;
|
|
73
|
+
/** Query and manage gradebook line items like assignments, quizzes, and assessments */
|
|
74
|
+
readonly lineItems: LineItemsCallable;
|
|
75
|
+
/** Query and manage student grades and scores for line items */
|
|
76
|
+
readonly results: ResultsResource;
|
|
77
|
+
/** Query and manage grading categories for organizing line items (e.g., Homework, Tests) */
|
|
78
|
+
readonly categories: CategoriesResource;
|
|
79
|
+
/** Query and manage score scales that define grading rubrics and point values */
|
|
80
|
+
readonly scoreScales: ScoreScalesResource;
|
|
81
|
+
/** Query and manage formal assessment line items for standardized testing */
|
|
82
|
+
readonly assessmentLineItems: AssessmentLineItemsCallable;
|
|
83
|
+
/** Query and manage student results from formal assessments */
|
|
84
|
+
readonly assessmentResults: AssessmentResultsResource;
|
|
85
|
+
/** Query and manage digital learning resources (content, activities, materials) */
|
|
86
|
+
readonly resources: ResourcesCallable;
|
|
87
|
+
/**
|
|
88
|
+
* Get the underlying transport for advanced use cases.
|
|
89
|
+
* @returns The transport instance used by this client
|
|
90
|
+
*/
|
|
91
|
+
getTransport(): OneRosterTransportLike;
|
|
92
|
+
/**
|
|
93
|
+
* Verify that OAuth authentication is working.
|
|
94
|
+
* @returns Auth check result
|
|
95
|
+
* @throws {Error} If client was initialized with custom transport (no provider)
|
|
96
|
+
*/
|
|
97
|
+
checkAuth(): Promise<AuthCheckResult>;
|
|
98
|
+
};
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EACN,yBAAyB,EAEzB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACN,kBAAkB,EAElB,eAAe,EACf,mBAAmB,EACnB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACN,wBAAwB,EAQxB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,MAAM,uBAAuB,CAAA;AAG9B,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAC1G,OAAO,KAAK,EACX,2BAA2B,EAC3B,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,MAAM,SAAS,CAAA;AAEhB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,GAAE,gBAA4C;;QAQ1F,gBAAgB;;QAGhB,gBAAgB;;QAIhB,kGAAkG;;QAElG,+FAA+F;;QAE/F,+FAA+F;;QAE/F,8FAA8F;;QAE9F,oEAAoE;;QAEpE,yFAAyF;;QAEzF,uEAAuE;;QAEvE,kEAAkE;;QAElE,yEAAyE;;QAEzE,sDAAsD;;QAEtD,8DAA8D;;QAE9D,wFAAwF;;QAIxF,uFAAuF;;QAEvF,gEAAgE;;QAEhE,4FAA4F;;QAE5F,iFAAiF;;QAIjF,6EAA6E;;QAE7E,+DAA+D;;QAI/D,mFAAmF;;QA+DnF;;;WAGG;;QAKH;;;;WAIG;;;EASJ"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OneRoster v1.2 client SDK for Timeback.
|
|
3
|
+
*
|
|
4
|
+
* @example Environment mode (Timeback APIs)
|
|
5
|
+
* ```typescript
|
|
6
|
+
* import { OneRosterClient } from '@timeback/oneroster'
|
|
7
|
+
*
|
|
8
|
+
* const client = new OneRosterClient({
|
|
9
|
+
* env: 'staging',
|
|
10
|
+
* auth: {
|
|
11
|
+
* clientId: 'your-client-id',
|
|
12
|
+
* clientSecret: 'your-client-secret',
|
|
13
|
+
* },
|
|
14
|
+
* })
|
|
15
|
+
*
|
|
16
|
+
* for await (const school of client.schools.list()) {
|
|
17
|
+
* console.log(school.name)
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @example Explicit mode (custom OneRoster API)
|
|
22
|
+
* ```typescript
|
|
23
|
+
* const client = new OneRosterClient({
|
|
24
|
+
* baseUrl: 'https://api.example.com',
|
|
25
|
+
* auth: {
|
|
26
|
+
* clientId: 'your-client-id',
|
|
27
|
+
* clientSecret: 'your-client-secret',
|
|
28
|
+
* authUrl: 'https://auth.example.com/oauth2/token',
|
|
29
|
+
* },
|
|
30
|
+
* })
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export { OneRosterClient, type OneRosterClientInstance } from './client';
|
|
34
|
+
export { createOneRosterClient } from './factory';
|
|
35
|
+
export type { OneRosterClientConfig } from './types/client';
|
|
36
|
+
export type { Environment, EnvAuth, ExplicitAuth } from './types/client';
|
|
37
|
+
export type { StreamableResource } from './types/base';
|
|
38
|
+
export type { AuthCheckResult, ListParams, PageResult } from '@timeback/internal-client-infra';
|
|
39
|
+
export { whereToFilter } from '@timeback/internal-client-infra';
|
|
40
|
+
export type { FieldCondition, FieldOperators, FilterFields, FilterValue, OrCondition, WhereClause, } from '@timeback/internal-client-infra';
|
|
41
|
+
export { Paginator, Transport } from './lib';
|
|
42
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAMH,OAAO,EAAE,eAAe,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAExE,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAEjD,YAAY,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAM3D,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAExE,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAEtD,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAM9F,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAE/D,YAAY,EACX,cAAc,EACd,cAAc,EACd,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,GACX,MAAM,iCAAiC,CAAA;AAMxC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA"}
|