@d19n/youfibre-odin-sdk 2.0.321 → 2.0.322

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 (55) hide show
  1. package/README.md +7 -2
  2. package/dist/actions-v2/CompleteServiceWorkOrderFlowDto.d.ts +14 -14
  3. package/dist/actions-v2/CompleteServiceWorkOrderFlowDto.js +22 -22
  4. package/dist/actions-v2/DefaultServiceWorkOrderEditFormDto.d.ts +8 -1
  5. package/dist/actions-v2/UpdateCustomerDeviceBatteryDto.d.ts +3 -1
  6. package/dist/actions-v2/UpdateCustomerDeviceBatteryDto.js +3 -1
  7. package/dist/api-sdk-v2/CaseApi.d.ts +4 -0
  8. package/dist/api-sdk-v2/CaseApi.js +12 -0
  9. package/dist/api-sdk-v2/CoachingSessionApi.d.ts +50 -0
  10. package/dist/api-sdk-v2/CoachingSessionApi.js +161 -0
  11. package/dist/api-sdk-v2/QaEvaluationAnswerApi.d.ts +48 -0
  12. package/dist/api-sdk-v2/QaEvaluationAnswerApi.js +155 -0
  13. package/dist/api-sdk-v2/QaEvaluationApi.d.ts +54 -0
  14. package/dist/api-sdk-v2/QaEvaluationApi.js +173 -0
  15. package/dist/api-sdk-v2/QaScorecardQuestionApi.d.ts +48 -0
  16. package/dist/api-sdk-v2/QaScorecardQuestionApi.js +155 -0
  17. package/dist/api-sdk-v2/QaScorecardTemplateApi.d.ts +50 -0
  18. package/dist/api-sdk-v2/QaScorecardTemplateApi.js +161 -0
  19. package/dist/db-sdk-v2/CaseDb.d.ts +4 -0
  20. package/dist/db-sdk-v2/CaseDb.js +12 -0
  21. package/dist/db-sdk-v2/CoachingSessionDb.d.ts +122 -0
  22. package/dist/db-sdk-v2/CoachingSessionDb.js +210 -0
  23. package/dist/db-sdk-v2/QaEvaluationAnswerDb.d.ts +120 -0
  24. package/dist/db-sdk-v2/QaEvaluationAnswerDb.js +204 -0
  25. package/dist/db-sdk-v2/QaEvaluationDb.d.ts +126 -0
  26. package/dist/db-sdk-v2/QaEvaluationDb.js +222 -0
  27. package/dist/db-sdk-v2/QaScorecardQuestionDb.d.ts +120 -0
  28. package/dist/db-sdk-v2/QaScorecardQuestionDb.js +204 -0
  29. package/dist/db-sdk-v2/QaScorecardTemplateDb.d.ts +122 -0
  30. package/dist/db-sdk-v2/QaScorecardTemplateDb.js +210 -0
  31. package/dist/entities-v2/Case.d.ts +14 -0
  32. package/dist/entities-v2/Case.js +9 -1
  33. package/dist/entities-v2/CoachingSession.d.ts +247 -0
  34. package/dist/entities-v2/CoachingSession.js +145 -0
  35. package/dist/entities-v2/CustomerDeviceRouter.d.ts +258 -8
  36. package/dist/entities-v2/CustomerDeviceRouter.js +17 -9
  37. package/dist/entities-v2/QaEvaluation.d.ts +361 -0
  38. package/dist/entities-v2/QaEvaluation.js +217 -0
  39. package/dist/entities-v2/QaEvaluationAnswer.d.ts +127 -0
  40. package/dist/entities-v2/QaEvaluationAnswer.js +92 -0
  41. package/dist/entities-v2/QaScorecardQuestion.d.ts +155 -0
  42. package/dist/entities-v2/QaScorecardQuestion.js +96 -0
  43. package/dist/entities-v2/QaScorecardTemplate.d.ts +152 -0
  44. package/dist/entities-v2/QaScorecardTemplate.js +114 -0
  45. package/dist/entities-v2/WorkOrder.d.ts +210 -1
  46. package/dist/entities-v2/WorkOrder.js +22 -4
  47. package/dist/entities-v2/YfFieldVisitOutcomeForm.d.ts +4 -3
  48. package/dist/entities-v2/YfFieldVisitOutcomeForm.js +2 -1
  49. package/dist/records-v2/CustomerDeviceRouterRecord.d.ts +38 -2
  50. package/dist/records-v2/CustomerDeviceRouterRecord.js +37 -0
  51. package/dist/records-v2/WorkOrderRecord.d.ts +4 -4
  52. package/dist/records-v2/WorkOrderRecord.js +4 -4
  53. package/dist/records-v2/YfFieldVisitOutcomeFormRecord.d.ts +5 -4
  54. package/dist/records-v2/YfFieldVisitOutcomeFormRecord.js +5 -5
  55. package/package.json +1 -1
@@ -13,6 +13,8 @@
13
13
  * await record.createCustomerDeviceRouter({ ... }).execute();
14
14
  * ```
15
15
  *
16
+ * Entity Types: CPE_ROUTER, MESH
17
+ *
16
18
  * AUTO-GENERATED - DO NOT EDIT DIRECTLY
17
19
  */
18
20
  import { OdinRecord, OdinRecordLinkDto } from '@d19n/odin-types/dist/core';
@@ -20,7 +22,7 @@ import { PipelineStageEntity } from '@d19n/odin-types/dist/core';
20
22
  import { IDbRecordCreateUpdateRes } from '@d19n/odin-types/dist/core/interfaces/v1.db.interfaces';
21
23
  import { IOdinProvider } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
22
24
  import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
23
- import { CustomerDeviceRouterProperties } from '../entities-v2/CustomerDeviceRouter';
25
+ import { CustomerDeviceRouterProperties, CpeRouterCustomerDeviceRouterProperties, MeshCustomerDeviceRouterProperties } from '../entities-v2/CustomerDeviceRouter';
24
26
  import { CollectCustomerDeviceRouterProperties } from '../actions-v2/CollectCustomerDeviceRouterDto';
25
27
  import { CreateCustomerDeviceRouterFromDispatchProperties } from '../actions-v2/CreateCustomerDeviceRouterFromDispatchDto';
26
28
  import { CustomerDeviceRouterCreateProperties } from '../actions-v2/CustomerDeviceRouterCreateDto';
@@ -33,6 +35,8 @@ import { AddressRecord } from './AddressRecord';
33
35
  import { FieldServiceDispatchedProductRecord } from './FieldServiceDispatchedProductRecord';
34
36
  import { OrderItemRecord } from './OrderItemRecord';
35
37
  import { WorkOrderRecord } from './WorkOrderRecord';
38
+ /** Valid entity types for CustomerDeviceRouter */
39
+ export declare type CustomerDeviceRouterType = 'CPE_ROUTER' | 'MESH';
36
40
  /**
37
41
  * Builder for action execution with dryRun support
38
42
  *
@@ -116,7 +120,7 @@ export declare class CustomerDeviceRouterRecord<TProps = CustomerDeviceRouterPro
116
120
  /** Record ID - always available (pre-generated for new records) */
117
121
  get id(): string;
118
122
  get entity(): string;
119
- get type(): string | undefined;
123
+ get type(): CustomerDeviceRouterType | undefined;
120
124
  /** Record properties - empty object for new (unsaved) records */
121
125
  get properties(): TProps;
122
126
  get title(): string | undefined;
@@ -131,6 +135,38 @@ export declare class CustomerDeviceRouterRecord<TProps = CustomerDeviceRouterPro
131
135
  get links(): OdinRecord<TProps>['links'];
132
136
  /** Access the underlying OdinRecord (null for new records) */
133
137
  get record(): OdinRecord<TProps> | null;
138
+ /**
139
+ * Type guard: check if this record is of type CPE_ROUTER
140
+ *
141
+ * When this returns true, TypeScript automatically narrows the type,
142
+ * giving you access to CPE_ROUTER-specific properties.
143
+ *
144
+ * @example
145
+ * ```typescript
146
+ * if (record.isCpeRouter()) {
147
+ * // TypeScript knows record.properties is CpeRouterCustomerDeviceRouterProperties
148
+ * console.log(record.properties.SomeTypeSpecificField);
149
+ * }
150
+ * ```
151
+ * @remarks CPE Router
152
+ */
153
+ isCpeRouter(): this is CustomerDeviceRouterRecord<CpeRouterCustomerDeviceRouterProperties>;
154
+ /**
155
+ * Type guard: check if this record is of type MESH
156
+ *
157
+ * When this returns true, TypeScript automatically narrows the type,
158
+ * giving you access to MESH-specific properties.
159
+ *
160
+ * @example
161
+ * ```typescript
162
+ * if (record.isMesh()) {
163
+ * // TypeScript knows record.properties is MeshCustomerDeviceRouterProperties
164
+ * console.log(record.properties.SomeTypeSpecificField);
165
+ * }
166
+ * ```
167
+ * @remarks Mesh
168
+ */
169
+ isMesh(): this is CustomerDeviceRouterRecord<MeshCustomerDeviceRouterProperties>;
134
170
  /** Valid labels for File associations */
135
171
  static readonly filesLabels: readonly ["CustomerDeviceRouter__File"];
136
172
  /**
@@ -14,6 +14,8 @@
14
14
  * await record.createCustomerDeviceRouter({ ... }).execute();
15
15
  * ```
16
16
  *
17
+ * Entity Types: CPE_ROUTER, MESH
18
+ *
17
19
  * AUTO-GENERATED - DO NOT EDIT DIRECTLY
18
20
  */
19
21
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
@@ -150,6 +152,41 @@ class CustomerDeviceRouterRecord {
150
152
  get links() { var _a, _b; return (_b = (_a = this._record) === null || _a === void 0 ? void 0 : _a.links) !== null && _b !== void 0 ? _b : []; }
151
153
  /** Access the underlying OdinRecord (null for new records) */
152
154
  get record() { return this._record; }
155
+ // ============================================
156
+ // TYPE GUARDS (with TypeScript type predicates)
157
+ // ============================================
158
+ /**
159
+ * Type guard: check if this record is of type CPE_ROUTER
160
+ *
161
+ * When this returns true, TypeScript automatically narrows the type,
162
+ * giving you access to CPE_ROUTER-specific properties.
163
+ *
164
+ * @example
165
+ * ```typescript
166
+ * if (record.isCpeRouter()) {
167
+ * // TypeScript knows record.properties is CpeRouterCustomerDeviceRouterProperties
168
+ * console.log(record.properties.SomeTypeSpecificField);
169
+ * }
170
+ * ```
171
+ * @remarks CPE Router
172
+ */
173
+ isCpeRouter() { var _a; return ((_a = this._record) === null || _a === void 0 ? void 0 : _a.type) === 'CPE_ROUTER'; }
174
+ /**
175
+ * Type guard: check if this record is of type MESH
176
+ *
177
+ * When this returns true, TypeScript automatically narrows the type,
178
+ * giving you access to MESH-specific properties.
179
+ *
180
+ * @example
181
+ * ```typescript
182
+ * if (record.isMesh()) {
183
+ * // TypeScript knows record.properties is MeshCustomerDeviceRouterProperties
184
+ * console.log(record.properties.SomeTypeSpecificField);
185
+ * }
186
+ * ```
187
+ * @remarks Mesh
188
+ */
189
+ isMesh() { var _a; return ((_a = this._record) === null || _a === void 0 ? void 0 : _a.type) === 'MESH'; }
153
190
  /**
154
191
  * Access linked File records
155
192
  * @remarks Available labels: CustomerDeviceRouter__File
@@ -39,7 +39,7 @@ import { OhExternalAuditCreateProperties } from '../actions-v2/CompletePrePullWo
39
39
  import { CompleteRemediationWorkOrderProperties } from '../actions-v2/CompleteRemediationWorkOrderDto';
40
40
  import { RemediationOutcomeFormProperties } from '../actions-v2/CompleteRemediationWorkOrderFlowDto';
41
41
  import { CompleteServiceWorkOrderProperties } from '../actions-v2/CompleteServiceWorkOrderDto';
42
- import { YfFieldVisitOutcomeFormProperties } from '../actions-v2/CompleteServiceWorkOrderFlowDto';
42
+ import { CreateYfFieldVisitOutcomeFormProperties } from '../actions-v2/CompleteServiceWorkOrderFlowDto';
43
43
  import { CreateCancelCollectionAmcoProperties } from '../actions-v2/CreateCancelCollectionAmcoDto';
44
44
  import { CreateCollectionAmcoReplacementWorkOrderProperties } from '../actions-v2/CreateCollectionAmcoReplacementWorkOrderDto';
45
45
  import { CreateCollectionAmcoReplacementWorkOrderBuilder } from '../actions-v2/CreateCollectionAmcoReplacementWorkOrderDto';
@@ -630,12 +630,12 @@ export declare class CompleteServiceWorkOrderFlowFlowBuilder {
630
630
  */
631
631
  completeServiceWorkOrder(id: string, properties: CompleteServiceWorkOrderProperties, options?: CompleteServiceWorkOrderFlowFlowBuilderStepOptions): this;
632
632
  /**
633
- * Add YfFieldVisitOutcomeForm step to the flow
633
+ * Add CreateYfFieldVisitOutcomeForm step to the flow
634
634
  * @param properties - Properties for this step
635
635
  * @param options - Optional step settings
636
636
  * @returns this (for method chaining)
637
637
  */
638
- yfFieldVisitOutcomeForm(properties: YfFieldVisitOutcomeFormProperties, options?: CompleteServiceWorkOrderFlowFlowBuilderStepOptions): this;
638
+ createYfFieldVisitOutcomeForm(properties: CreateYfFieldVisitOutcomeFormProperties, options?: CompleteServiceWorkOrderFlowFlowBuilderStepOptions): this;
639
639
  /**
640
640
  * Execute the flow
641
641
  * @returns The result from the API
@@ -5071,7 +5071,7 @@ export declare class WorkOrderRecord<TProps = WorkOrderProperties> {
5071
5071
  * const record = await odinClient.workOrders.get(id);
5072
5072
  * await record.completeServiceWorkOrderFlow()
5073
5073
  * .completeServiceWorkOrder(recordId, { ... })
5074
- * .yfFieldVisitOutcomeForm({ ... })
5074
+ * .createYfFieldVisitOutcomeForm({ ... })
5075
5075
  * .execute();
5076
5076
  * ```
5077
5077
  */
@@ -885,15 +885,15 @@ class CompleteServiceWorkOrderFlowFlowBuilder {
885
885
  return this;
886
886
  }
887
887
  /**
888
- * Add YfFieldVisitOutcomeForm step to the flow
888
+ * Add CreateYfFieldVisitOutcomeForm step to the flow
889
889
  * @param properties - Properties for this step
890
890
  * @param options - Optional step settings
891
891
  * @returns this (for method chaining)
892
892
  */
893
- yfFieldVisitOutcomeForm(properties, options) {
893
+ createYfFieldVisitOutcomeForm(properties, options) {
894
894
  var _a;
895
895
  this._steps.push({
896
- actionName: 'YfFieldVisitOutcomeForm',
896
+ actionName: 'CreateYfFieldVisitOutcomeForm',
897
897
  properties,
898
898
  entity: 'FieldServiceModule:YfFieldVisitOutcomeForm',
899
899
  type: 'OUTCOME_FORM',
@@ -7776,7 +7776,7 @@ class WorkOrderRecord {
7776
7776
  * const record = await odinClient.workOrders.get(id);
7777
7777
  * await record.completeServiceWorkOrderFlow()
7778
7778
  * .completeServiceWorkOrder(recordId, { ... })
7779
- * .yfFieldVisitOutcomeForm({ ... })
7779
+ * .createYfFieldVisitOutcomeForm({ ... })
7780
7780
  * .execute();
7781
7781
  * ```
7782
7782
  */
@@ -23,6 +23,7 @@ import { IDbRecordCreateUpdateRes } from '@d19n/odin-types/dist/core/interfaces/
23
23
  import { IOdinProvider } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
24
24
  import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
25
25
  import { YfFieldVisitOutcomeFormProperties, OutcomeFormYfFieldVisitOutcomeFormProperties } from '../entities-v2/YfFieldVisitOutcomeForm';
26
+ import { CreateYfFieldVisitOutcomeFormProperties } from '../actions-v2/CompleteServiceWorkOrderFlowDto';
26
27
  import { WorkOrderRecord } from './WorkOrderRecord';
27
28
  import { AddressRecord } from './AddressRecord';
28
29
  import { NoteRecord } from './NoteRecord';
@@ -253,7 +254,7 @@ export declare class YfFieldVisitOutcomeFormRecord<TProps = YfFieldVisitOutcomeF
253
254
  id: string;
254
255
  } | string): Promise<void>;
255
256
  /**
256
- * YfFieldVisitOutcomeForm
257
+ * CreateYfFieldVisitOutcomeForm
257
258
  *
258
259
  * Creates a new YfFieldVisitOutcomeForm record with the specified properties.
259
260
  * Returns an ActionBuilder - call .execute() to create or .dryRun() for debugging.
@@ -270,13 +271,13 @@ export declare class YfFieldVisitOutcomeFormRecord<TProps = YfFieldVisitOutcomeF
270
271
  * ```typescript
271
272
  * // Create with properties
272
273
  * const record = odinClient.yfFieldVisitOutcomeForms.new();
273
- * await record.yfFieldVisitOutcomeForm({ ... }).execute();
274
+ * await record.createYfFieldVisitOutcomeForm({ ... }).execute();
274
275
  *
275
276
  * // Dry run (for debugging)
276
- * const payload = record.yfFieldVisitOutcomeForm({ ... }).dryRun();
277
+ * const payload = record.createYfFieldVisitOutcomeForm({ ... }).dryRun();
277
278
  * ```
278
279
  */
279
- yfFieldVisitOutcomeForm(properties: YfFieldVisitOutcomeFormProperties, options?: {
280
+ createYfFieldVisitOutcomeForm(properties: CreateYfFieldVisitOutcomeFormProperties, options?: {
280
281
  journeyId?: string;
281
282
  stageKey?: string;
282
283
  }): ActionBuilder;
@@ -357,7 +357,7 @@ class YfFieldVisitOutcomeFormRecord {
357
357
  // CREATE ACTIONS (no existing record required)
358
358
  // ============================================
359
359
  /**
360
- * YfFieldVisitOutcomeForm
360
+ * CreateYfFieldVisitOutcomeForm
361
361
  *
362
362
  * Creates a new YfFieldVisitOutcomeForm record with the specified properties.
363
363
  * Returns an ActionBuilder - call .execute() to create or .dryRun() for debugging.
@@ -374,17 +374,17 @@ class YfFieldVisitOutcomeFormRecord {
374
374
  * ```typescript
375
375
  * // Create with properties
376
376
  * const record = odinClient.yfFieldVisitOutcomeForms.new();
377
- * await record.yfFieldVisitOutcomeForm({ ... }).execute();
377
+ * await record.createYfFieldVisitOutcomeForm({ ... }).execute();
378
378
  *
379
379
  * // Dry run (for debugging)
380
- * const payload = record.yfFieldVisitOutcomeForm({ ... }).dryRun();
380
+ * const payload = record.createYfFieldVisitOutcomeForm({ ... }).dryRun();
381
381
  * ```
382
382
  */
383
- yfFieldVisitOutcomeForm(properties, options) {
383
+ createYfFieldVisitOutcomeForm(properties, options) {
384
384
  const payload = {
385
385
  entity: 'FieldServiceModule:YfFieldVisitOutcomeForm',
386
386
  type: 'OUTCOME_FORM',
387
- actionName: 'YfFieldVisitOutcomeForm',
387
+ actionName: 'CreateYfFieldVisitOutcomeForm',
388
388
  properties: properties || {},
389
389
  associations: this._pendingLinks.length > 0 ? this._pendingLinks : undefined,
390
390
  journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@d19n/youfibre-odin-sdk",
3
- "version": "2.0.321",
3
+ "version": "2.0.322",
4
4
  "description": "",
5
5
  "author": "@d19n",
6
6
  "license": "UNLICENSED",