@measurequick/measurequick-report-generator 1.5.200 → 1.5.201

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@measurequick/measurequick-report-generator",
3
- "version": "1.5.200",
3
+ "version": "1.5.201",
4
4
  "description": "Generates PDF documents for various measureQuick applications.",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -236,9 +236,18 @@ export async function getReport(payload, _test) {
236
236
  let mid, low, high;
237
237
 
238
238
  if (label === "Superheat") {
239
- // Temperature Rise - no specific target zone for HP heating, show measured value
239
+ // Temperature Rise - uses temperature_split targets for HP heating
240
240
  value = textFields.tempRise;
241
- // HP heating doesn't have fixed temp rise targets like gas heating
241
+ if (t.targets && t.targets.temperature_split !== undefined) {
242
+ mid = parseFloat(t.targets.temperature_split);
243
+ const idealLow = t.targets.temperature_split_ideal_low !== undefined ? parseFloat(t.targets.temperature_split_ideal_low) : 5;
244
+ const idealHigh = t.targets.temperature_split_ideal_high !== undefined ? parseFloat(t.targets.temperature_split_ideal_high) : 5;
245
+ low = mid - idealLow;
246
+ high = mid + idealHigh;
247
+ if (!isNaN(low) && !isNaN(high)) {
248
+ targetZone = `(${low.toFixed(1)} - ${high.toFixed(1)})`;
249
+ }
250
+ }
242
251
  } else if (label === "Subcooling") {
243
252
  // Approach - LLT minus entering dry bulb
244
253
  value = textFields.approach;
@@ -279,8 +288,19 @@ export async function getReport(payload, _test) {
279
288
  }
280
289
  }
281
290
  } else if (label === "FilterFace") {
282
- // Airflow - no specific target zone
291
+ // Airflow - use airflow target if available
283
292
  value = textFields.airflow;
293
+ // Check for airflow target (airflow_estimated or airflow)
294
+ const airflowTarget = t.targets && (t.targets.airflow_estimated || t.targets.airflow);
295
+ if (airflowTarget !== undefined) {
296
+ mid = parseFloat(airflowTarget);
297
+ // Airflow ideal range is typically ±10%
298
+ low = mid * 0.9;
299
+ high = mid * 1.1;
300
+ if (!isNaN(low) && !isNaN(high)) {
301
+ targetZone = `(${low.toFixed(0)} - ${high.toFixed(0)})`;
302
+ }
303
+ }
284
304
  }
285
305
 
286
306
  // Determine range indicator position if we have target values