@timeback/powerpath 0.2.1-beta.20260314151810 → 0.2.1

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.
@@ -571,6 +571,13 @@ var BEYONDAI_PATHS = {
571
571
  webhookFilterUpdate: "/webhook-filters/{id}",
572
572
  webhookFilterDelete: "/webhook-filters/{id}",
573
573
  webhookFiltersByWebhook: "/webhook-filters/webhook/{webhookId}"
574
+ },
575
+ reporting: {
576
+ mcp: "/mcp/reporting",
577
+ savedQueryExecute: "/reporting/saved-queries/{id}",
578
+ adminGroupCheck: "/mcp/admin/users/{email}/group",
579
+ adminGroupAdd: "/mcp/admin/users/{email}/group",
580
+ adminGroupRemove: "/mcp/admin/users/{email}/group"
574
581
  }
575
582
  };
576
583
  var LEARNWITHAI_PATHS = {
@@ -587,6 +594,7 @@ var LEARNWITHAI_PATHS = {
587
594
  resources: "/resources/1.0"
588
595
  },
589
596
  webhooks: null,
597
+ reporting: null,
590
598
  edubridge: null,
591
599
  powerpath: null,
592
600
  clr: null,
@@ -615,6 +623,7 @@ function resolvePathProfiles(pathProfile, customPaths) {
615
623
  caliper: customPaths?.caliper ?? basePaths.caliper,
616
624
  oneroster: customPaths?.oneroster ?? basePaths.oneroster,
617
625
  webhooks: customPaths?.webhooks ?? basePaths.webhooks,
626
+ reporting: customPaths?.reporting ?? basePaths.reporting,
618
627
  edubridge: customPaths?.edubridge ?? basePaths.edubridge,
619
628
  powerpath: customPaths?.powerpath ?? basePaths.powerpath,
620
629
  clr: customPaths?.clr ?? basePaths.clr,
@@ -676,6 +685,10 @@ class TimebackProvider {
676
685
  baseUrl: platformEndpoints.caliper[env],
677
686
  authUrl: this.authUrl
678
687
  },
688
+ reporting: {
689
+ baseUrl: platformEndpoints.api[env],
690
+ authUrl: this.authUrl
691
+ },
679
692
  qti: {
680
693
  baseUrl: platformEndpoints.qti[env],
681
694
  authUrl: this.authUrl
@@ -693,6 +706,7 @@ class TimebackProvider {
693
706
  case: { baseUrl: config.baseUrl, authUrl: this.authUrl },
694
707
  caliper: { baseUrl: config.baseUrl, authUrl: this.authUrl },
695
708
  webhooks: { baseUrl: config.baseUrl, authUrl: this.authUrl },
709
+ reporting: { baseUrl: config.baseUrl, authUrl: this.authUrl },
696
710
  qti: { baseUrl: config.baseUrl, authUrl: this.authUrl }
697
711
  };
698
712
  } else if (isServicesConfig(config)) {
package/dist/client.d.ts CHANGED
@@ -67,6 +67,7 @@ export declare const PowerPathClient: {
67
67
  readonly screening: import("./resources").ScreeningResource;
68
68
  readonly syllabus: import("./resources").SyllabusResource;
69
69
  readonly testAssignments: import("./resources").TestAssignmentsResource;
70
+ readonly testOut: import("./resources").TestOutResource;
70
71
  getTransport(): import("./types").PowerPathTransportLike;
71
72
  checkAuth(): Promise<import("@timeback/internal-client-infra").AuthCheckResult>;
72
73
  };
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;CAA0B,CAAA;AAEtD,YAAY,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;CAA0B,CAAA;AAEtD,YAAY,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA"}
package/dist/errors.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  NotFoundError,
6
6
  UnauthorizedError,
7
7
  ValidationError
8
- } from "./chunk-22wv0xvg.js";
8
+ } from "./chunk-5a9p0re1.js";
9
9
  import"./chunk-6jf1natv.js";
10
10
  export {
11
11
  ValidationError,
package/dist/factory.d.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Creates PowerPathClient classes bound to specific provider registries.
5
5
  */
6
- import { AssessmentResource, LessonPlansResource, PlacementResource, RenderConfigResource, ScreeningResource, SyllabusResource, TestAssignmentsResource } from './resources';
6
+ import { AssessmentResource, LessonPlansResource, PlacementResource, RenderConfigResource, ScreeningResource, SyllabusResource, TestAssignmentsResource, TestOutResource } from './resources';
7
7
  import type { AuthCheckResult, ProviderRegistry, TimebackProvider } from '@timeback/internal-client-infra';
8
8
  import type { PowerPathClientConfig, PowerPathTransportLike } from './types';
9
9
  /**
@@ -32,6 +32,8 @@ export declare function createPowerPathClient(registry?: ProviderRegistry): {
32
32
  readonly syllabus: SyllabusResource;
33
33
  /** Test assignment CRUD and bulk operations */
34
34
  readonly testAssignments: TestAssignmentsResource;
35
+ /** Self-elected test-out eligibility and assignments */
36
+ readonly testOut: TestOutResource;
35
37
  /**
36
38
  * Get the underlying transport for advanced use cases.
37
39
  * @returns The transport instance used by this client
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EACN,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,MAAM,aAAa,CAAA;AAGpB,OAAO,KAAK,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAE5E;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,GAAE,gBAA4C;;QAQ1F,gBAAgB;;QAGhB,gBAAgB;;QAGhB,uDAAuD;;QAEvD,8CAA8C;;QAE9C,qCAAqC;;QAErC,iDAAiD;;QAEjD,qCAAqC;;QAErC,gCAAgC;;QAEhC,+CAA+C;;QA+C/C;;;WAGG;;QAKH;;;;WAIG;;;EASJ"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EACN,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EACf,MAAM,aAAa,CAAA;AAGpB,OAAO,KAAK,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAE5E;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,GAAE,gBAA4C;;QAQ1F,gBAAgB;;QAGhB,gBAAgB;;QAGhB,uDAAuD;;QAEvD,8CAA8C;;QAE9C,qCAAqC;;QAErC,iDAAiD;;QAEjD,qCAAqC;;QAErC,gCAAgC;;QAEhC,+CAA+C;;QAE/C,wDAAwD;;QAgDxD;;;WAGG;;QAKH;;;;WAIG;;;EASJ"}
package/dist/index.d.ts CHANGED
@@ -751,6 +751,26 @@ interface UpdateStudentItemResponseResult {
751
751
  [key: string]: unknown
752
752
  }
753
753
 
754
+ // ═══════════════════════════════════════════════════════════════════════════════
755
+ // TEST OUT (self-elected)
756
+ // ═══════════════════════════════════════════════════════════════════════════════
757
+
758
+ /**
759
+ * Result from checking test-out eligibility for a student/subject.
760
+ */
761
+ interface GetTestOutEligibilityResponse {
762
+ eligible: boolean
763
+ reason?: string
764
+ }
765
+
766
+ /**
767
+ * Result from creating a self-elected test-out assignment.
768
+ */
769
+ interface MakeExternalStudentTestOutAssignmentResponse {
770
+ success: boolean
771
+ data?: Record<string, unknown>
772
+ }
773
+
754
774
  // ═══════════════════════════════════════════════════════════════════════════════
755
775
  // RENDER CONFIG
756
776
  // ═══════════════════════════════════════════════════════════════════════════════
@@ -1083,6 +1103,11 @@ declare const PowerPathPlacementQueryParams = z.object({
1083
1103
  subject: TimebackSubject,
1084
1104
  })
1085
1105
 
1106
+ declare const PowerPathMakeExternalStudentTestOutAssignmentInput = z.object({
1107
+ oneRosterSourcedId: NonEmptyString,
1108
+ subject: NonEmptyString,
1109
+ })
1110
+
1086
1111
  declare const PowerPathRenderConfigUpsertInput = z.object({
1087
1112
  courseIds: z.array(NonEmptyString).min(1),
1088
1113
  rendererId: NonEmptyString,
@@ -1141,6 +1166,9 @@ type TestOutParams = input<typeof PowerPathTestOutParams>
1141
1166
  type ImportExternalTestAssignmentResultsParams = input<
1142
1167
  typeof PowerPathImportExternalTestAssignmentResultsParams
1143
1168
  >
1169
+ type MakeExternalStudentTestOutAssignmentInput = input<
1170
+ typeof PowerPathMakeExternalStudentTestOutAssignmentInput
1171
+ >
1144
1172
  type PlacementQueryParams = input<typeof PowerPathPlacementQueryParams>
1145
1173
  type RenderConfigUpsertInput = input<typeof PowerPathRenderConfigUpsertInput>
1146
1174
  type SyllabusQueryParams = input<typeof PowerPathSyllabusQueryParams>
@@ -1406,6 +1434,36 @@ declare class TestAssignmentsResource {
1406
1434
  import(input: TestAssignmentsImportInput): Promise<BulkResult>;
1407
1435
  }
1408
1436
 
1437
+ /**
1438
+ * Test Out Resource
1439
+ *
1440
+ * PowerPath self-elected test-out operations.
1441
+ */
1442
+
1443
+ /**
1444
+ * Test out resource for self-elected test-out eligibility and assignment creation.
1445
+ */
1446
+ declare class TestOutResource {
1447
+ private readonly transport;
1448
+ /** @param transport - PowerPath transport instance */
1449
+ constructor(transport: PowerPathTransportLike);
1450
+ /**
1451
+ * Check if a student is eligible to self-request a test-out for a subject.
1452
+ *
1453
+ * @param studentId - The student's OneRoster sourcedId
1454
+ * @param subject - The subject to check eligibility for
1455
+ * @returns Eligibility status and optional reason
1456
+ */
1457
+ getEligibility(studentId: string, subject: string): Promise<GetTestOutEligibilityResponse>;
1458
+ /**
1459
+ * Create a self-elected test-out assignment.
1460
+ *
1461
+ * @param input - Assignment data including oneRosterSourcedId and subject
1462
+ * @returns Success status and optional data
1463
+ */
1464
+ createAssignment(input: MakeExternalStudentTestOutAssignmentInput): Promise<MakeExternalStudentTestOutAssignmentResponse>;
1465
+ }
1466
+
1409
1467
  /**
1410
1468
  * PowerPath Client
1411
1469
  *
@@ -1475,6 +1533,7 @@ declare const PowerPathClient: {
1475
1533
  readonly screening: ScreeningResource;
1476
1534
  readonly syllabus: SyllabusResource;
1477
1535
  readonly testAssignments: TestAssignmentsResource;
1536
+ readonly testOut: TestOutResource;
1478
1537
  getTransport(): PowerPathTransportLike;
1479
1538
  checkAuth(): Promise<_timeback_internal_client_infra.AuthCheckResult>;
1480
1539
  };
@@ -1512,6 +1571,8 @@ declare function createPowerPathClient(registry?: ProviderRegistry): {
1512
1571
  readonly syllabus: SyllabusResource;
1513
1572
  /** Test assignment CRUD and bulk operations */
1514
1573
  readonly testAssignments: TestAssignmentsResource;
1574
+ /** Self-elected test-out eligibility and assignments */
1575
+ readonly testOut: TestOutResource;
1515
1576
  /**
1516
1577
  * Get the underlying transport for advanced use cases.
1517
1578
  * @returns The transport instance used by this client
@@ -1561,4 +1622,4 @@ declare class Transport extends BaseTransport {
1561
1622
  }
1562
1623
 
1563
1624
  export { Paginator, PowerPathClient, Transport, createPowerPathClient };
1564
- export type { AssignmentResult, Attempt, BulkResult, CourseProgressResponse, CreateAttemptResponse, CreateExternalPlacementTestInput, CreateExternalTestOutInput, CreateInternalTestInput, CreateNewAttemptInput, ExternalTestCapableLessonType, ExternalTestCreateResponse, FinalStudentAssessmentResponseInput, FinalizeAssessmentResponse, GetAllPlacementTestsResponse, GetAssessmentProgressParams, GetAssessmentProgressResponse, GetAttemptsParams, GetAttemptsResponse, GetCurrentLevelResponse, GetNextPlacementTestResponse, GetNextQuestionParams, GetNextQuestionResponse, GetSubjectProgressResponse, ImportExternalResultsResponse, ImportExternalTestAssignmentResultsParams, InternalTestCreateResponse, LessonPlanCourseSyncResult, LessonPlanCreateResponse, LessonPlanOperation, LessonPlanOperationInput, LessonPlanOperationResult, LessonPlanOperationsInput, LessonPlanOperationsResponse, LessonPlanResponse, LessonPlanSyncResult, LessonPlanUpdateStudentItemResponseInput, LessonPlansCreateInput, MakeExternalTestAssignmentInput, MakeExternalTestAssignmentResponse, PaginationMeta, PlacementQueryParams, PlacementResetUserPlacementInput, PowerPath100ProgressResponse, PowerPath100UpdateResponseResult, PowerPathClientConfig, PowerPathClientInstance, PowerPathLessonType, PowerPathQuestionContent, PowerPathQuestionDifficulty, PowerPathQuestionResult, PowerPathTestQuestion, QuizLikeLessonType, ResetAttemptInput, ResetAttemptResponse, ResetPlacementResponse, ResponseResult, ResponseResultFeedback, ScoreStatus, ScreeningAssignTestInput, ScreeningAssignTestResponse, ScreeningResetSessionInput, ScreeningResetSessionResponse, ScreeningResultsResponse, ScreeningSessionResponse, StandardProgressResponse, StandardUpdateResponseResult, SyllabusQueryParams, SyllabusResponse, TestAssignment, TestAssignmentStatus, TestAssignmentsAdminParams, TestAssignmentsBulkInput, TestAssignmentsCreateInput, TestAssignmentsImportInput, TestAssignmentsListParams, TestAssignmentsListResponse, TestAssignmentsUpdateInput, TestOutParams, TestOutResponse, UpdateStudentItemResponseResult, UpdateStudentQuestionResponseInput, UpdateStudentQuestionResponseResult };
1625
+ export type { AssignmentResult, Attempt, BulkResult, CourseProgressResponse, CreateAttemptResponse, CreateExternalPlacementTestInput, CreateExternalTestOutInput, CreateInternalTestInput, CreateNewAttemptInput, ExternalTestCapableLessonType, ExternalTestCreateResponse, FinalStudentAssessmentResponseInput, FinalizeAssessmentResponse, GetAllPlacementTestsResponse, GetAssessmentProgressParams, GetAssessmentProgressResponse, GetAttemptsParams, GetAttemptsResponse, GetCurrentLevelResponse, GetNextPlacementTestResponse, GetNextQuestionParams, GetNextQuestionResponse, GetSubjectProgressResponse, GetTestOutEligibilityResponse, ImportExternalResultsResponse, ImportExternalTestAssignmentResultsParams, InternalTestCreateResponse, LessonPlanCourseSyncResult, LessonPlanCreateResponse, LessonPlanOperation, LessonPlanOperationInput, LessonPlanOperationResult, LessonPlanOperationsInput, LessonPlanOperationsResponse, LessonPlanResponse, LessonPlanSyncResult, LessonPlanUpdateStudentItemResponseInput, LessonPlansCreateInput, MakeExternalStudentTestOutAssignmentInput, MakeExternalStudentTestOutAssignmentResponse, MakeExternalTestAssignmentInput, MakeExternalTestAssignmentResponse, PaginationMeta, PlacementQueryParams, PlacementResetUserPlacementInput, PowerPath100ProgressResponse, PowerPath100UpdateResponseResult, PowerPathClientConfig, PowerPathClientInstance, PowerPathLessonType, PowerPathQuestionContent, PowerPathQuestionDifficulty, PowerPathQuestionResult, PowerPathTestQuestion, QuizLikeLessonType, ResetAttemptInput, ResetAttemptResponse, ResetPlacementResponse, ResponseResult, ResponseResultFeedback, ScoreStatus, ScreeningAssignTestInput, ScreeningAssignTestResponse, ScreeningResetSessionInput, ScreeningResetSessionResponse, ScreeningResultsResponse, ScreeningSessionResponse, StandardProgressResponse, StandardUpdateResponseResult, SyllabusQueryParams, SyllabusResponse, TestAssignment, TestAssignmentStatus, TestAssignmentsAdminParams, TestAssignmentsBulkInput, TestAssignmentsCreateInput, TestAssignmentsImportInput, TestAssignmentsListParams, TestAssignmentsListResponse, TestAssignmentsUpdateInput, TestOutParams, TestOutResponse, UpdateStudentItemResponseResult, UpdateStudentQuestionResponseInput, UpdateStudentQuestionResponseResult };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAMH,OAAO,EAAE,eAAe,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAA;AACxE,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,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAE9F,YAAY,EAEX,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,2BAA2B,EAE3B,OAAO,EACP,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,6BAA6B,EAC7B,mBAAmB,EACnB,uBAAuB,EACvB,6BAA6B,EAC7B,0BAA0B,EAC1B,kCAAkC,EAClC,4BAA4B,EAC5B,gCAAgC,EAChC,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,eAAe,EACf,mCAAmC,EAEnC,4BAA4B,EAC5B,uBAAuB,EACvB,4BAA4B,EAC5B,0BAA0B,EAC1B,sBAAsB,EAEtB,2BAA2B,EAC3B,6BAA6B,EAC7B,wBAAwB,EACxB,wBAAwB,EAExB,sBAAsB,EACtB,0BAA0B,EAC1B,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,+BAA+B,EAE/B,gBAAgB,EAEhB,6BAA6B,EAC7B,cAAc,EACd,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,WAAW,GACX,MAAM,qCAAqC,CAAA;AAM5C,YAAY,EACX,gCAAgC,EAChC,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,mCAAmC,EACnC,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,yCAAyC,EACzC,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,wCAAwC,EACxC,+BAA+B,EAC/B,oBAAoB,EACpB,gCAAgC,EAChC,iBAAiB,EACjB,wBAAwB,EACxB,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,aAAa,EACb,kCAAkC,GAClC,MAAM,qBAAqB,CAAA;AAM5B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAMH,OAAO,EAAE,eAAe,EAAE,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAA;AACxE,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,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAE9F,YAAY,EAEX,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,2BAA2B,EAE3B,OAAO,EACP,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,6BAA6B,EAC7B,mBAAmB,EACnB,uBAAuB,EACvB,6BAA6B,EAC7B,6BAA6B,EAC7B,0BAA0B,EAC1B,4CAA4C,EAC5C,kCAAkC,EAClC,4BAA4B,EAC5B,gCAAgC,EAChC,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,eAAe,EACf,mCAAmC,EAEnC,4BAA4B,EAC5B,uBAAuB,EACvB,4BAA4B,EAC5B,0BAA0B,EAC1B,sBAAsB,EAEtB,2BAA2B,EAC3B,6BAA6B,EAC7B,wBAAwB,EACxB,wBAAwB,EAExB,sBAAsB,EACtB,0BAA0B,EAC1B,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,+BAA+B,EAE/B,gBAAgB,EAEhB,6BAA6B,EAC7B,cAAc,EACd,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,WAAW,GACX,MAAM,qCAAqC,CAAA;AAM5C,YAAY,EACX,gCAAgC,EAChC,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,mCAAmC,EACnC,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,yCAAyC,EACzC,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,wCAAwC,EACxC,yCAAyC,EACzC,+BAA+B,EAC/B,oBAAoB,EACpB,gCAAgC,EAChC,iBAAiB,EACjB,wBAAwB,EACxB,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,aAAa,EACb,kCAAkC,GAClC,MAAM,qBAAqB,CAAA;AAM5B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ import {
8
8
  resolveToProvider,
9
9
  validateNonEmptyString,
10
10
  validateWithSchema
11
- } from "./chunk-22wv0xvg.js";
11
+ } from "./chunk-5a9p0re1.js";
12
12
  import"./chunk-6jf1natv.js";
13
13
 
14
14
  // src/constants.ts
@@ -722,7 +722,9 @@ var EduBridgeEnrollment = z7.object({
722
722
  school: z7.object({
723
723
  id: z7.string(),
724
724
  name: z7.string()
725
- })
725
+ }),
726
+ testOutSupported: z7.boolean(),
727
+ testOutEligible: z7.boolean()
726
728
  });
727
729
  var SubjectMetrics = z7.object({
728
730
  activityMetrics: z7.object({
@@ -1519,6 +1521,10 @@ var PowerPathPlacementQueryParams = z10.object({
1519
1521
  student: NonEmptyString,
1520
1522
  subject: TimebackSubject
1521
1523
  });
1524
+ var PowerPathMakeExternalStudentTestOutAssignmentInput = z10.object({
1525
+ oneRosterSourcedId: NonEmptyString,
1526
+ subject: NonEmptyString
1527
+ });
1522
1528
  var PowerPathRenderConfigUpsertInput = z10.object({
1523
1529
  courseIds: z10.array(NonEmptyString).min(1),
1524
1530
  rendererId: NonEmptyString,
@@ -1791,6 +1797,23 @@ var QtiLessonFeedbackInput = z11.object({
1791
1797
  lessonId: NonEmptyString,
1792
1798
  humanApproved: z11.boolean().optional()
1793
1799
  }).strict();
1800
+ // ../../types/src/zod/reporting.ts
1801
+ import { z as z12 } from "zod/v4";
1802
+ var ReportingAuthMode = z12.enum(["creator_only", "same_org", "all_orgs"]);
1803
+ var ReportingSavedQueryId = z12.string().uuid();
1804
+ var ReportingUserEmail = z12.email();
1805
+ var ReportingQueryInput = z12.object({
1806
+ sql: NonEmptyString
1807
+ });
1808
+ var PersistReportingQueryInput = z12.object({
1809
+ endpointName: NonEmptyString,
1810
+ sql: NonEmptyString,
1811
+ authMode: ReportingAuthMode,
1812
+ description: NonEmptyString.optional()
1813
+ });
1814
+ var RemoveReportingQueryInput = z12.object({
1815
+ endpointId: ReportingSavedQueryId
1816
+ });
1794
1817
  // src/resources/assessment.ts
1795
1818
  class AssessmentResource {
1796
1819
  transport;
@@ -2156,6 +2179,22 @@ class TestAssignmentsResource {
2156
2179
  });
2157
2180
  }
2158
2181
  }
2182
+ // src/resources/test-out.ts
2183
+ class TestOutResource {
2184
+ transport;
2185
+ constructor(transport) {
2186
+ this.transport = transport;
2187
+ }
2188
+ getEligibility(studentId, subject) {
2189
+ validateNonEmptyString(studentId, "studentId");
2190
+ validateNonEmptyString(subject, "subject");
2191
+ return this.transport.request(`${this.transport.paths.base}/test-out/getTestOutEligibility/${encodeURIComponent(studentId)}/${encodeURIComponent(subject)}`);
2192
+ }
2193
+ createAssignment(input) {
2194
+ validateWithSchema(PowerPathMakeExternalStudentTestOutAssignmentInput, input, "make external student test out assignment");
2195
+ return this.transport.request(`${this.transport.paths.base}/test-out/makeExternalStudentTestOutAssignment`, { method: "POST", body: input });
2196
+ }
2197
+ }
2159
2198
  // src/factory.ts
2160
2199
  function createPowerPathClient(registry = DEFAULT_PROVIDER_REGISTRY) {
2161
2200
  return class PowerPathClient {
@@ -2168,6 +2207,7 @@ function createPowerPathClient(registry = DEFAULT_PROVIDER_REGISTRY) {
2168
2207
  screening;
2169
2208
  syllabus;
2170
2209
  testAssignments;
2210
+ testOut;
2171
2211
  constructor(config2 = {}) {
2172
2212
  const resolved = resolveToProvider2(config2, registry);
2173
2213
  if (resolved.mode === "transport") {
@@ -2200,6 +2240,7 @@ function createPowerPathClient(registry = DEFAULT_PROVIDER_REGISTRY) {
2200
2240
  this.screening = new ScreeningResource(this.transport);
2201
2241
  this.syllabus = new SyllabusResource(this.transport);
2202
2242
  this.testAssignments = new TestAssignmentsResource(this.transport);
2243
+ this.testOut = new TestOutResource(this.transport);
2203
2244
  }
2204
2245
  getTransport() {
2205
2246
  return this.transport;
@@ -759,6 +759,26 @@ interface UpdateStudentItemResponseResult {
759
759
  [key: string]: unknown
760
760
  }
761
761
 
762
+ // ═══════════════════════════════════════════════════════════════════════════════
763
+ // TEST OUT (self-elected)
764
+ // ═══════════════════════════════════════════════════════════════════════════════
765
+
766
+ /**
767
+ * Result from checking test-out eligibility for a student/subject.
768
+ */
769
+ interface GetTestOutEligibilityResponse {
770
+ eligible: boolean
771
+ reason?: string
772
+ }
773
+
774
+ /**
775
+ * Result from creating a self-elected test-out assignment.
776
+ */
777
+ interface MakeExternalStudentTestOutAssignmentResponse {
778
+ success: boolean
779
+ data?: Record<string, unknown>
780
+ }
781
+
762
782
  // ═══════════════════════════════════════════════════════════════════════════════
763
783
  // RENDER CONFIG
764
784
  // ═══════════════════════════════════════════════════════════════════════════════
@@ -1091,6 +1111,11 @@ declare const PowerPathPlacementQueryParams = z.object({
1091
1111
  subject: TimebackSubject,
1092
1112
  })
1093
1113
 
1114
+ declare const PowerPathMakeExternalStudentTestOutAssignmentInput = z.object({
1115
+ oneRosterSourcedId: NonEmptyString,
1116
+ subject: NonEmptyString,
1117
+ })
1118
+
1094
1119
  declare const PowerPathRenderConfigUpsertInput = z.object({
1095
1120
  courseIds: z.array(NonEmptyString).min(1),
1096
1121
  rendererId: NonEmptyString,
@@ -1149,8 +1174,11 @@ type TestOutParams = input<typeof PowerPathTestOutParams>
1149
1174
  type ImportExternalTestAssignmentResultsParams = input<
1150
1175
  typeof PowerPathImportExternalTestAssignmentResultsParams
1151
1176
  >
1177
+ type MakeExternalStudentTestOutAssignmentInput = input<
1178
+ typeof PowerPathMakeExternalStudentTestOutAssignmentInput
1179
+ >
1152
1180
  type PlacementQueryParams = input<typeof PowerPathPlacementQueryParams>
1153
1181
  type RenderConfigUpsertInput = input<typeof PowerPathRenderConfigUpsertInput>
1154
1182
  type SyllabusQueryParams = input<typeof PowerPathSyllabusQueryParams>
1155
1183
 
1156
- export type { AssignmentResult, Attempt, BulkResult, CourseProgressResponse, CreateAttemptResponse, CreateExternalPlacementTestInput, CreateExternalTestOutInput, CreateInternalTestInput, CreateNewAttemptInput, ExternalTestCapableLessonType, ExternalTestCreateResponse, FinalStudentAssessmentResponseInput, FinalizeAssessmentResponse, GetAllPlacementTestsResponse, GetAssessmentProgressParams, GetAssessmentProgressResponse, GetAttemptsParams, GetAttemptsResponse, GetCurrentLevelResponse, GetNextPlacementTestResponse, GetNextQuestionParams, GetNextQuestionResponse, GetSubjectProgressResponse, ImportExternalResultsResponse, ImportExternalTestAssignmentResultsParams, InternalTestCreateResponse, LessonPlanCourseSyncResult, LessonPlanCreateResponse, LessonPlanOperation, LessonPlanOperationInput, LessonPlanOperationResult, LessonPlanOperationType, LessonPlanOperationsInput, LessonPlanOperationsResponse, LessonPlanResponse, LessonPlanSyncResult, LessonPlanUpdateStudentItemResponseInput, LessonPlansCreateInput, MakeExternalTestAssignmentInput, MakeExternalTestAssignmentResponse, PaginationMeta, PlacementQueryParams, PlacementResetUserPlacementInput, PowerPath100ProgressResponse, PowerPath100UpdateResponseResult, PowerPathLessonType, PowerPathQuestionContent, PowerPathQuestionDifficulty, PowerPathQuestionResult, PowerPathTestQuestion, QuizLikeLessonType, RenderConfigDeleteResponse, RenderConfigGetResponse, RenderConfigUpsertInput, RenderConfigUpsertResponse, ResetAttemptInput, ResetAttemptResponse, ResetPlacementResponse, ResponseResult, ResponseResultFeedback, ScoreStatus, ScreeningAssignTestInput, ScreeningAssignTestResponse, ScreeningResetSessionInput, ScreeningResetSessionResponse, ScreeningResultsResponse, ScreeningSessionResponse, StandardProgressResponse, StandardUpdateResponseResult, SyllabusQueryParams, SyllabusResponse, TestAssignment, TestAssignmentStatus, TestAssignmentsAdminParams, TestAssignmentsBulkInput, TestAssignmentsCreateInput, TestAssignmentsImportInput, TestAssignmentsListParams, TestAssignmentsListResponse, TestAssignmentsUpdateInput, TestOutParams, TestOutResponse, UpdateStudentItemResponseResult, UpdateStudentQuestionResponseInput, UpdateStudentQuestionResponseResult };
1184
+ export type { AssignmentResult, Attempt, BulkResult, CourseProgressResponse, CreateAttemptResponse, CreateExternalPlacementTestInput, CreateExternalTestOutInput, CreateInternalTestInput, CreateNewAttemptInput, ExternalTestCapableLessonType, ExternalTestCreateResponse, FinalStudentAssessmentResponseInput, FinalizeAssessmentResponse, GetAllPlacementTestsResponse, GetAssessmentProgressParams, GetAssessmentProgressResponse, GetAttemptsParams, GetAttemptsResponse, GetCurrentLevelResponse, GetNextPlacementTestResponse, GetNextQuestionParams, GetNextQuestionResponse, GetSubjectProgressResponse, GetTestOutEligibilityResponse, ImportExternalResultsResponse, ImportExternalTestAssignmentResultsParams, InternalTestCreateResponse, LessonPlanCourseSyncResult, LessonPlanCreateResponse, LessonPlanOperation, LessonPlanOperationInput, LessonPlanOperationResult, LessonPlanOperationType, LessonPlanOperationsInput, LessonPlanOperationsResponse, LessonPlanResponse, LessonPlanSyncResult, LessonPlanUpdateStudentItemResponseInput, LessonPlansCreateInput, MakeExternalStudentTestOutAssignmentInput, MakeExternalStudentTestOutAssignmentResponse, MakeExternalTestAssignmentInput, MakeExternalTestAssignmentResponse, PaginationMeta, PlacementQueryParams, PlacementResetUserPlacementInput, PowerPath100ProgressResponse, PowerPath100UpdateResponseResult, PowerPathLessonType, PowerPathQuestionContent, PowerPathQuestionDifficulty, PowerPathQuestionResult, PowerPathTestQuestion, QuizLikeLessonType, RenderConfigDeleteResponse, RenderConfigGetResponse, RenderConfigUpsertInput, RenderConfigUpsertResponse, ResetAttemptInput, ResetAttemptResponse, ResetPlacementResponse, ResponseResult, ResponseResultFeedback, ScoreStatus, ScreeningAssignTestInput, ScreeningAssignTestResponse, ScreeningResetSessionInput, ScreeningResetSessionResponse, ScreeningResultsResponse, ScreeningSessionResponse, StandardProgressResponse, StandardUpdateResponseResult, SyllabusQueryParams, SyllabusResponse, TestAssignment, TestAssignmentStatus, TestAssignmentsAdminParams, TestAssignmentsBulkInput, TestAssignmentsCreateInput, TestAssignmentsImportInput, TestAssignmentsListParams, TestAssignmentsListResponse, TestAssignmentsUpdateInput, TestOutParams, TestOutResponse, UpdateStudentItemResponseResult, UpdateStudentQuestionResponseInput, UpdateStudentQuestionResponseResult };
@@ -1 +1 @@
1
- {"version":3,"file":"public-types.d.ts","sourceRoot":"","sources":["../src/public-types.ts"],"names":[],"mappings":"AAAA,cAAc,qCAAqC,CAAA;AAEnD,YAAY,EACX,gCAAgC,EAChC,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,mCAAmC,EACnC,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,yCAAyC,EACzC,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,wCAAwC,EACxC,+BAA+B,EAC/B,oBAAoB,EACpB,gCAAgC,EAChC,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,aAAa,EACb,kCAAkC,GAClC,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"public-types.d.ts","sourceRoot":"","sources":["../src/public-types.ts"],"names":[],"mappings":"AAAA,cAAc,qCAAqC,CAAA;AAEnD,YAAY,EACX,gCAAgC,EAChC,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,mCAAmC,EACnC,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,yCAAyC,EACzC,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,wCAAwC,EACxC,yCAAyC,EACzC,+BAA+B,EAC/B,oBAAoB,EACpB,gCAAgC,EAChC,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,aAAa,EACb,kCAAkC,GAClC,MAAM,qBAAqB,CAAA"}
@@ -5,4 +5,5 @@ export { RenderConfigResource } from './render-config';
5
5
  export { ScreeningResource } from './screening';
6
6
  export { SyllabusResource } from './syllabus';
7
7
  export { TestAssignmentsResource } from './test-assignments';
8
+ export { TestOutResource } from './test-out';
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Test Out Resource
3
+ *
4
+ * PowerPath self-elected test-out operations.
5
+ */
6
+ import type { GetTestOutEligibilityResponse, MakeExternalStudentTestOutAssignmentResponse } from '@timeback/types/protocols/powerpath';
7
+ import type { MakeExternalStudentTestOutAssignmentInput } from '@timeback/types/zod';
8
+ import type { PowerPathTransportLike } from '../types';
9
+ /**
10
+ * Test out resource for self-elected test-out eligibility and assignment creation.
11
+ */
12
+ export declare class TestOutResource {
13
+ private readonly transport;
14
+ /** @param transport - PowerPath transport instance */
15
+ constructor(transport: PowerPathTransportLike);
16
+ /**
17
+ * Check if a student is eligible to self-request a test-out for a subject.
18
+ *
19
+ * @param studentId - The student's OneRoster sourcedId
20
+ * @param subject - The subject to check eligibility for
21
+ * @returns Eligibility status and optional reason
22
+ */
23
+ getEligibility(studentId: string, subject: string): Promise<GetTestOutEligibilityResponse>;
24
+ /**
25
+ * Create a self-elected test-out assignment.
26
+ *
27
+ * @param input - Assignment data including oneRosterSourcedId and subject
28
+ * @returns Success status and optional data
29
+ */
30
+ createAssignment(input: MakeExternalStudentTestOutAssignmentInput): Promise<MakeExternalStudentTestOutAssignmentResponse>;
31
+ }
32
+ //# sourceMappingURL=test-out.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-out.d.ts","sourceRoot":"","sources":["../../src/resources/test-out.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EACX,6BAA6B,EAC7B,4CAA4C,EAC5C,MAAM,qCAAqC,CAAA;AAC5C,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,qBAAqB,CAAA;AACpF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEtD;;GAEG;AACH,qBAAa,eAAe;IAEf,OAAO,CAAC,QAAQ,CAAC,SAAS;IADtC,sDAAsD;IACtD,YAA6B,SAAS,EAAE,sBAAsB,EAAI;IAElE;;;;;;OAMG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAMzF;IAED;;;;;OAKG;IACH,gBAAgB,CACf,KAAK,EAAE,yCAAyC,GAC9C,OAAO,CAAC,4CAA4C,CAAC,CAUvD;CACD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@timeback/powerpath",
3
- "version": "0.2.1-beta.20260314151810",
3
+ "version": "0.2.1",
4
4
  "description": "PowerPath client SDK for Timeback",
5
5
  "type": "module",
6
6
  "exports": {