@reekon-tools/boldr-utils 1.7.1 → 1.7.3

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.
@@ -17,6 +17,16 @@ export interface CalculatorFieldEntry {
17
17
  locked: boolean;
18
18
  /** Epoch ms. */
19
19
  enteredAt: number;
20
+ /**
21
+ * Id of the group-owned Measurement this entry is mirrored to on a
22
+ * default/list group's grid (see boldr-pro's calculator grid sync). Present
23
+ * only for grid-linked captures — absent for form-group instances, unit-less
24
+ * fields, and values captured before linkage existed. The link is two-way:
25
+ * editing the value updates that doc, clearing the entry deletes it, and
26
+ * deleting the doc on the grid clears the entry. Ignorable by any runtime
27
+ * that doesn't mirror to the grid.
28
+ */
29
+ gridMeasurementId?: string;
20
30
  }
21
31
  export interface CalculatorInstanceFileData {
22
32
  /** Source doc id in the top-level `calculators` collection. */
@@ -334,9 +334,16 @@ export interface Row {
334
334
  [key: string]: any;
335
335
  }
336
336
  export declare enum MeasurementType {
337
- Angle = "angle",
337
+ Angle = "angle",// value is signed degrees
338
338
  Length = "length"
339
339
  }
340
+ export declare enum MeasurementSource {
341
+ Tape = "tape",
342
+ Ldm = "ldm",// laser distance (REEKON tape laser or Bosch GLM)
343
+ Level = "level",
344
+ LaserLevel = "laser_level",
345
+ Manual = "manual"
346
+ }
340
347
  export interface Measurement extends FirestoreDoc, Timestamps, CreatedBy {
341
348
  sectionId: string;
342
349
  value: number;
@@ -350,9 +357,20 @@ export interface Measurement extends FirestoreDoc, Timestamps, CreatedBy {
350
357
  centerFinding?: boolean;
351
358
  isCompleted?: boolean;
352
359
  type?: MeasurementType;
360
+ source?: MeasurementSource;
361
+ deviceProduct?: string;
353
362
  note?: string;
354
363
  deviceMeasurementNumber?: number;
355
364
  fileId?: string | null;
365
+ deviceUuid?: number;
366
+ groupId?: string;
367
+ completedBy?: {
368
+ firstName: string;
369
+ lastName: string;
370
+ userId: string;
371
+ } | null;
372
+ completedAt?: Date | null;
373
+ compoundCutVariantId?: string | null;
356
374
  }
357
375
  export interface Label extends FirestoreDoc, Timestamps {
358
376
  name: string;
@@ -47,11 +47,34 @@ export var ColumnType;
47
47
  ColumnType["ConversionTable"] = "conversionTable";
48
48
  ColumnType["Instructions"] = "instructions";
49
49
  })(ColumnType || (ColumnType = {}));
50
+ // The UNIT FAMILY of a measurement's `value`: how it formats/converts and
51
+ // which column kind accepts it. Values are a Firestore/wire contract — never
52
+ // change them. Absent `type` means Length (every doc written before typing
53
+ // existed).
54
+ //
55
+ // Deliberately binary. Where a reading CAME FROM (tape blade, laser, level
56
+ // sensor, manual entry) is orthogonal metadata — see MeasurementSource.
57
+ // Future calculation results (area, volume, point-to-point) are expected to
58
+ // become their own entity with measurements feeding into them, not new
59
+ // values here.
50
60
  export var MeasurementType;
51
61
  (function (MeasurementType) {
52
62
  MeasurementType["Angle"] = "angle";
53
63
  MeasurementType["Length"] = "length";
54
64
  })(MeasurementType || (MeasurementType = {}));
65
+ // Provenance of a measurement: what produced the reading. Optional
66
+ // display/analytics metadata only — formatting, conversion, and column
67
+ // routing must branch on MeasurementType, never on this. Values are a
68
+ // Firestore contract like MeasurementType and mirror the BLE item
69
+ // vocabulary where applicable.
70
+ export var MeasurementSource;
71
+ (function (MeasurementSource) {
72
+ MeasurementSource["Tape"] = "tape";
73
+ MeasurementSource["Ldm"] = "ldm";
74
+ MeasurementSource["Level"] = "level";
75
+ MeasurementSource["LaserLevel"] = "laser_level";
76
+ MeasurementSource["Manual"] = "manual";
77
+ })(MeasurementSource || (MeasurementSource = {}));
55
78
  export var Units;
56
79
  (function (Units) {
57
80
  Units["Centimeters"] = "cm";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reekon-tools/boldr-utils",
3
- "version": "1.7.1",
3
+ "version": "1.7.3",
4
4
  "description": "Shared utilities for formulas and measurement conversion used in Reekon apps",
5
5
  "author": "REEKON Tools",
6
6
  "license": "MIT",