@bizmap/sdk 0.0.32 → 0.0.33

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/dist/main.d.ts CHANGED
@@ -112,6 +112,7 @@ declare const CompanyUser: z.ZodObject<{
112
112
  cshr: "cshr";
113
113
  admin: "admin";
114
114
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
115
+ totalAppts: z.ZodDefault<z.ZodInt>;
115
116
  lastActive: z.ZodInt;
116
117
  name: z.ZodRecord<z.ZodEnum<{
117
118
  first: "first";
@@ -148,13 +149,13 @@ declare const CompanyDetails: z.ZodObject<{
148
149
  availableBalance: z.ZodNumber;
149
150
  totalUploads: z.ZodNumber;
150
151
  lastInvoiceNo: z.ZodNullable<z.ZodString>;
151
- lastTktNo: z.ZodNullable<z.ZodNumber>;
152
+ lastTktNo: z.ZodNumber;
152
153
  lastModified: z.ZodNullable<z.ZodInt>;
153
154
  }, z.core.$strip> | z.ZodOptional<z.ZodNullable<z.ZodObject<{
154
155
  availableBalance: z.ZodNumber;
155
156
  totalUploads: z.ZodNumber;
156
157
  lastInvoiceNo: z.ZodNullable<z.ZodString>;
157
- lastTktNo: z.ZodNullable<z.ZodNumber>;
158
+ lastTktNo: z.ZodNumber;
158
159
  lastModified: z.ZodNullable<z.ZodInt>;
159
160
  }, z.core.$strip>>>;
160
161
  preferences: z.ZodObject<{
@@ -270,6 +271,7 @@ declare const CompanyDetails: z.ZodObject<{
270
271
  cshr: "cshr";
271
272
  admin: "admin";
272
273
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
274
+ totalAppts: z.ZodDefault<z.ZodInt>;
273
275
  lastActive: z.ZodInt;
274
276
  name: z.ZodRecord<z.ZodEnum<{
275
277
  first: "first";
@@ -292,6 +294,7 @@ declare const CompanyDetails: z.ZodObject<{
292
294
  lastModified: number | null;
293
295
  };
294
296
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
297
+ totalAppts: number;
295
298
  lastActive: number;
296
299
  name: Record<"first" | "last", string>;
297
300
  email: string;
@@ -312,6 +315,7 @@ declare const CompanyDetails: z.ZodObject<{
312
315
  lastModified: number | null;
313
316
  };
314
317
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
318
+ totalAppts: number;
315
319
  lastActive: number;
316
320
  name: Record<"first" | "last", string>;
317
321
  email: string;
@@ -343,6 +347,7 @@ declare const CompanyDetails: z.ZodObject<{
343
347
  cshr: "cshr";
344
348
  admin: "admin";
345
349
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
350
+ totalAppts: z.ZodDefault<z.ZodInt>;
346
351
  lastActive: z.ZodInt;
347
352
  name: z.ZodRecord<z.ZodEnum<{
348
353
  first: "first";
@@ -365,6 +370,7 @@ declare const CompanyDetails: z.ZodObject<{
365
370
  lastModified: number | null;
366
371
  };
367
372
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
373
+ totalAppts: number;
368
374
  lastActive: number;
369
375
  name: Record<"first" | "last", string>;
370
376
  email: string;
@@ -385,6 +391,7 @@ declare const CompanyDetails: z.ZodObject<{
385
391
  lastModified: number | null;
386
392
  };
387
393
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
394
+ totalAppts: number;
388
395
  lastActive: number;
389
396
  name: Record<"first" | "last", string>;
390
397
  email: string;
@@ -425,13 +432,13 @@ declare const PartialCompanyDetails: z.ZodObject<{
425
432
  availableBalance: z.ZodNumber;
426
433
  totalUploads: z.ZodNumber;
427
434
  lastInvoiceNo: z.ZodNullable<z.ZodString>;
428
- lastTktNo: z.ZodNullable<z.ZodNumber>;
435
+ lastTktNo: z.ZodNumber;
429
436
  lastModified: z.ZodNullable<z.ZodInt>;
430
437
  }, z.core.$strip> | z.ZodOptional<z.ZodNullable<z.ZodObject<{
431
438
  availableBalance: z.ZodNumber;
432
439
  totalUploads: z.ZodNumber;
433
440
  lastInvoiceNo: z.ZodNullable<z.ZodString>;
434
- lastTktNo: z.ZodNullable<z.ZodNumber>;
441
+ lastTktNo: z.ZodNumber;
435
442
  lastModified: z.ZodNullable<z.ZodInt>;
436
443
  }, z.core.$strip>>>;
437
444
  preferences: z.ZodObject<{
@@ -547,6 +554,7 @@ declare const PartialCompanyDetails: z.ZodObject<{
547
554
  cshr: "cshr";
548
555
  admin: "admin";
549
556
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
557
+ totalAppts: z.ZodDefault<z.ZodInt>;
550
558
  lastActive: z.ZodInt;
551
559
  name: z.ZodRecord<z.ZodEnum<{
552
560
  first: "first";
@@ -569,6 +577,7 @@ declare const PartialCompanyDetails: z.ZodObject<{
569
577
  lastModified: number | null;
570
578
  };
571
579
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
580
+ totalAppts: number;
572
581
  lastActive: number;
573
582
  name: Record<"first" | "last", string>;
574
583
  email: string;
@@ -589,6 +598,7 @@ declare const PartialCompanyDetails: z.ZodObject<{
589
598
  lastModified: number | null;
590
599
  };
591
600
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
601
+ totalAppts: number;
592
602
  lastActive: number;
593
603
  name: Record<"first" | "last", string>;
594
604
  email: string;
@@ -620,6 +630,7 @@ declare const PartialCompanyDetails: z.ZodObject<{
620
630
  cshr: "cshr";
621
631
  admin: "admin";
622
632
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
633
+ totalAppts: z.ZodDefault<z.ZodInt>;
623
634
  lastActive: z.ZodInt;
624
635
  name: z.ZodRecord<z.ZodEnum<{
625
636
  first: "first";
@@ -642,6 +653,7 @@ declare const PartialCompanyDetails: z.ZodObject<{
642
653
  lastModified: number | null;
643
654
  };
644
655
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
656
+ totalAppts: number;
645
657
  lastActive: number;
646
658
  name: Record<"first" | "last", string>;
647
659
  email: string;
@@ -662,6 +674,7 @@ declare const PartialCompanyDetails: z.ZodObject<{
662
674
  lastModified: number | null;
663
675
  };
664
676
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
677
+ totalAppts: number;
665
678
  lastActive: number;
666
679
  name: Record<"first" | "last", string>;
667
680
  email: string;
@@ -724,6 +737,7 @@ declare const findConflictingPartners: (...partners: CompanyUser[]) => {
724
737
  lastModified: number | null;
725
738
  };
726
739
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
740
+ totalAppts: number;
727
741
  lastActive: number;
728
742
  name: Record<"first" | "last", string>;
729
743
  email: string;
package/dist/main.js CHANGED
@@ -112,12 +112,19 @@ var CompanyUser = z4.object({
112
112
  (role, i) => i === 0 || compatibleRoles.includes(role)
113
113
  );
114
114
  }, "A user is not allowed to have conflicting roles."),
115
+ /** This should reset at the end of every cycle. */
116
+ totalAppts: z4.int().positive().default(0),
115
117
  lastActive: Timestamp,
116
118
  ...TimeLog.shape
117
119
  }).superRefine((data, ctx) => {
118
120
  if (!data.availability.isAvailable && data.status !== "active") {
119
121
  ctx.addIssue('Unavailable users MUST also have the "active" status.');
120
122
  }
123
+ if (!data.availability.isAvailable && !data.roles.some((role) => role === "doc" || role === "physAsst")) {
124
+ ctx.addIssue(
125
+ 'Only users with the "doc" or "physAsst" role can be marked as unavailable.'
126
+ );
127
+ }
121
128
  });
122
129
  var CompanyIdentity = z4.object({
123
130
  displayName: z4.string().min(3).max(20),
@@ -147,10 +154,9 @@ var CompanyState = z4.object({
147
154
  * @note This should only be null when the cycle resets
148
155
  */
149
156
  lastInvoiceNo: InvoiceNo.nullable(),
150
- /** A counter for the company's ticket no.
151
- * @note This should only be null when the cycle resets
152
- */
153
- lastTktNo: z4.number().positive().nullable(),
157
+ /** A counter for the company's ticket no. */
158
+ lastTktNo: z4.number().positive(),
159
+ // distAppts: z.record(CompanyUser.shape.uid, z.number().positive().nullable()),
154
160
  lastModified: Timestamp.nullable()
155
161
  });
156
162
  var CompanyPreferences = z4.object({
@@ -208,6 +214,10 @@ var CompanyBillingModel = z4.object({
208
214
  }
209
215
  });
210
216
  var StaffDetails = z4.object({
217
+ /** Doc -> total appointments
218
+ * @note This should be reset at the end of every cycle.
219
+ */
220
+ // totalApptsMap: z.record(CompanyUser.shape.uid, z.number().positive()),
211
221
  members: z4.array(CompanyUser).superRefine((users, ctx) => {
212
222
  const duplicateUids = [];
213
223
  const duplicateEmails = [];
@@ -241,10 +251,7 @@ var StaffDetails = z4.object({
241
251
  *@description A map of doctor `uids` to their assistants `uids` */
242
252
  partnerMap: z4.record(
243
253
  CompanyUser.shape.uid,
244
- z4.array(CompanyUser.shape.uid).min(
245
- 1,
246
- "At least (1) partner, excluding the leader, is required to create a partner group."
247
- ).transform((pUids) => {
254
+ z4.array(CompanyUser.shape.uid).transform((pUids) => {
248
255
  const partners = [];
249
256
  for (const uid of pUids) {
250
257
  if (!uid || typeof uid !== "string") continue;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bizmap/sdk",
3
- "version": "0.0.32",
3
+ "version": "0.0.33",
4
4
  "main": "./dist/main.js",
5
5
  "types": "./dist/main.d.ts",
6
6
  "type": "module",