@autologix-engineering/shared 1.2.265 → 1.2.267

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": "@autologix-engineering/shared",
3
- "version": "1.2.265",
3
+ "version": "1.2.267",
4
4
  "dependencies": {
5
5
  "tslib": "^2.3.0"
6
6
  },
@@ -1,5 +1,6 @@
1
1
  export declare class GetBookersByOrganisationDTO {
2
2
  orgContextIds: string[];
3
+ includePPIds?: string[];
3
4
  searchText?: string;
4
5
  skip?: number;
5
6
  take?: number;
@@ -13,7 +13,10 @@ __decorate([
13
13
  if (Array.isArray(value))
14
14
  return value;
15
15
  if (typeof value === 'string')
16
- return value.split(',').map((s) => s.trim()).filter(Boolean);
16
+ return value
17
+ .split(',')
18
+ .map((s) => s.trim())
19
+ .filter(Boolean);
17
20
  return [];
18
21
  }),
19
22
  IsArray(),
@@ -21,6 +24,24 @@ __decorate([
21
24
  ArrayMinSize(1, { message: 'At least one organisation ID is required' }),
22
25
  __metadata("design:type", Array)
23
26
  ], GetBookersByOrganisationDTO.prototype, "orgContextIds", void 0);
27
+ __decorate([
28
+ IsOptional(),
29
+ Transform((value) => {
30
+ if (value == null)
31
+ return undefined;
32
+ if (Array.isArray(value))
33
+ return value;
34
+ if (typeof value === 'string')
35
+ return value
36
+ .split(',')
37
+ .map((s) => s.trim())
38
+ .filter(Boolean);
39
+ return undefined;
40
+ }),
41
+ IsArray(),
42
+ IsUUID('4', { each: true }),
43
+ __metadata("design:type", Array)
44
+ ], GetBookersByOrganisationDTO.prototype, "includePPIds", void 0);
24
45
  __decorate([
25
46
  IsOptional(),
26
47
  IsString(),
@@ -29,14 +50,14 @@ __decorate([
29
50
  __decorate([
30
51
  IsOptional(),
31
52
  IsNumber(),
32
- Transform(({ value }) => (value != null ? Number(value) : 0)),
53
+ Transform(Number),
33
54
  __metadata("design:type", Number)
34
55
  ], GetBookersByOrganisationDTO.prototype, "skip", void 0);
35
56
  __decorate([
36
57
  IsOptional(),
58
+ Transform(Number),
37
59
  IsNumber(),
38
60
  Max(100, { message: 'take must not exceed 100' }),
39
- Transform(({ value }) => (value != null ? Number(value) : 10)),
40
61
  __metadata("design:type", Number)
41
62
  ], GetBookersByOrganisationDTO.prototype, "take", void 0);
42
63
  //# sourceMappingURL=get.bookers.by.organisation.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get.bookers.by.organisation.dto.js","sourceRoot":"","sources":["../../../../../../../libs/shared/src/lib/data-transfer-objects/src/get.bookers.by.organisation.dto.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACN,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,MAAM,EACN,GAAG,GACH,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,2BAA2B;IA4BvC,YAAY,GAA0C;QACrD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC1B,CAAC;CACD;AApBA;IAVC,SAAS,CAAC,CAAE,KAAK,EAAG,EAAE;QACtB,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACvC,IAAI,OAAO,KAAK,KAAK,QAAQ;YAC5B,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9D,OAAO,EAAE,CAAC;IACX,CAAC,CAAC;IACD,OAAO,EAAE;IACT,MAAM,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC3B,YAAY,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,0CAA0C,EAAE,CAAC;;kEACjD;AAIxB;IAFC,UAAU,EAAE;IACZ,QAAQ,EAAE;;+DACS;AAKpB;IAHC,UAAU,EAAE;IACZ,QAAQ,EAAE;IACV,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;yDAChD;AAMd;IAJC,UAAU,EAAE;IACZ,QAAQ,EAAE;IACV,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;IACjD,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;;yDACjD"}
1
+ {"version":3,"file":"get.bookers.by.organisation.dto.js","sourceRoot":"","sources":["../../../../../../../libs/shared/src/lib/data-transfer-objects/src/get.bookers.by.organisation.dto.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACN,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,MAAM,EACN,GAAG,GACH,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,2BAA2B;IA8CvC,YAAY,GAA0C;QACrD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC1B,CAAC;CACD;AAnCA;IAbC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QACpB,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACvC,IAAI,OAAO,KAAK,KAAK,QAAQ;YAC5B,OAAO,KAAK;iBACV,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBACpB,MAAM,CAAC,OAAO,CAAC,CAAC;QACnB,OAAO,EAAE,CAAC;IACX,CAAC,CAAC;IACD,OAAO,EAAE;IACT,MAAM,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC3B,YAAY,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,0CAA0C,EAAE,CAAC;;kEACjD;AAexB;IAbC,UAAU,EAAE;IACZ,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QACpB,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QACpC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACvC,IAAI,OAAO,KAAK,KAAK,QAAQ;YAC5B,OAAO,KAAK;iBACV,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBACpB,MAAM,CAAC,OAAO,CAAC,CAAC;QACnB,OAAO,SAAS,CAAC;IAClB,CAAC,CAAC;IACD,OAAO,EAAE;IACT,MAAM,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;iEACJ;AAIxB;IAFC,UAAU,EAAE;IACZ,QAAQ,EAAE;;+DACS;AAKpB;IAHC,UAAU,EAAE;IACZ,QAAQ,EAAE;IACV,SAAS,CAAC,MAAM,CAAC;;yDACJ;AAMd;IAJC,UAAU,EAAE;IACZ,SAAS,CAAC,MAAM,CAAC;IACjB,QAAQ,EAAE;IACV,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;;yDACpC"}
@@ -1,5 +1,7 @@
1
1
  import { BenchmarkRateField, BusinessContextOwnerField, ClientPersonaField, InstantInvoiceBodyField, NumberedInvoiceField, NumberedInvoiceLineItemField, OrganizationField, RequestField, RuleCategoryField, TaxInvoiceField, VendorDeductionRuleField, VendorGlobalRulesField, } from '../../models/src/index';
2
2
  import { BillingType, BillTo, InvoiceType, RequestType, TripBillingDistanceNewEnum, } from '../../enums/src/index';
3
+ import { pickNumberedInvoiceForBooking } from './pick.numbered.invoice.for.booking';
4
+ import { isAddOnLineItem, isFuelSurchargeLineItem, } from './line.item.helpers';
3
5
  /**
4
6
  * Group a flat rules array by `BillingType` so the helper can do a single
5
7
  * Map lookup per booking instead of filtering the whole array each time.
@@ -53,36 +55,80 @@ export function calculateDeductedSharingAmount(book, options) {
53
55
  // (or not at all, depending on which controller). The helper owns the
54
56
  // invariant now.
55
57
  book[RequestField.Deductions] = [];
56
- // Get cost components: prefer invoice fields when an invoice is present,
57
- // fall back to booking fields for non-invoiced bookings
58
+ // Get cost components. Prefer line-item derivation when an invoice with
59
+ // per-booking line items is present robust to the historical
60
+ // invoice.adjustment.controller.ts bug that wrote add-ons into stored
61
+ // TaxInvoice.BaseCost on CN/DN. The picker handles consolidated parents
62
+ // and CN→parent walks; we classify by description prefix:
63
+ // - "Extra Km" → ExtraKmCost
64
+ // - "Extra Hour" / "Extra Day" → ExtraHrCost
65
+ // - everything else (except pure-extra-expense and fuel surcharge) → BaseCost
58
66
  const invoice = book?.[RequestField.Invoices]?.[0];
59
- let baseCost;
60
- let extraKmCost;
61
- let extraHrCost;
62
- if (invoice && !invoice?.[TaxInvoiceField.Consolidated]) {
63
- baseCost = Number(invoice?.[TaxInvoiceField.BaseCost] ?? 0);
64
- extraKmCost = Number(invoice?.[TaxInvoiceField.ExtraKmCost] ?? 0);
65
- extraHrCost = Number(invoice?.[TaxInvoiceField.ExtraHrCost] ?? 0);
66
- // Fallback: if invoice components not stored, use invoice SharingAmount
67
- if (invoice?.[TaxInvoiceField.BaseCost] == null &&
68
- invoice?.[TaxInvoiceField.ExtraKmCost] == null &&
69
- invoice?.[TaxInvoiceField.ExtraHrCost] == null) {
70
- baseCost = invoice?.[TaxInvoiceField.SharingAmount] || 0;
67
+ let baseCost = 0;
68
+ let extraKmCost = 0;
69
+ let extraHrCost = 0;
70
+ let derivedFromLineItems = false;
71
+ if (invoice) {
72
+ // `picked.negateForFullCancel` is intentionally not consumed here:
73
+ // for consolidated CN/DN the picker walks to the parent NI and
74
+ // returns positive originals, and the `isConsolidatedCNDN` flip
75
+ // block below already negates for ALL consolidated CN/DN (not just
76
+ // full-cancel). Using both would double-flip the sign.
77
+ const picked = pickNumberedInvoiceForBooking(book, invoice);
78
+ const pickedLineItems = picked.lineItems ?? [];
79
+ if (pickedLineItems.length > 0) {
80
+ for (const item of pickedLineItems) {
81
+ if (isAddOnLineItem(item))
82
+ continue;
83
+ if (isFuelSurchargeLineItem(item))
84
+ continue;
85
+ // Normalize for prefix match — bill generators are
86
+ // expected to title-case ("Extra Km") but legacy paths
87
+ // have shipped lower-case; classify uniformly.
88
+ const desc = (item?.[NumberedInvoiceLineItemField.Description] ?? '')
89
+ .toString()
90
+ .toLowerCase();
91
+ const amt = Number(item?.[NumberedInvoiceLineItemField.TotalBeforeTax] ?? 0);
92
+ if (desc.startsWith('extra km')) {
93
+ extraKmCost += amt;
94
+ }
95
+ else if (desc.startsWith('extra hour') ||
96
+ desc.startsWith('extra day')) {
97
+ extraHrCost += amt;
98
+ }
99
+ else {
100
+ baseCost += amt;
101
+ }
102
+ }
103
+ derivedFromLineItems = true;
71
104
  }
72
105
  }
73
- else {
74
- baseCost = Number(book?.[RequestField.BaseCost] ?? 0);
75
- extraKmCost = Number(book?.[RequestField.ExtraKmCost] ?? 0);
76
- extraHrCost = Number(book?.[RequestField.ExtraHrCost] ?? 0);
77
- // Fallback: if booking components not stored, use booking SharingAmount
78
- if (book?.[RequestField.BaseCost] == null &&
79
- book?.[RequestField.ExtraKmCost] == null &&
80
- book?.[RequestField.ExtraHrCost] == null) {
81
- baseCost = book?.[RequestField.SharingAmount] || 0;
106
+ if (!derivedFromLineItems) {
107
+ if (invoice && !invoice?.[TaxInvoiceField.Consolidated]) {
108
+ baseCost = Number(invoice?.[TaxInvoiceField.BaseCost] ?? 0);
109
+ extraKmCost = Number(invoice?.[TaxInvoiceField.ExtraKmCost] ?? 0);
110
+ extraHrCost = Number(invoice?.[TaxInvoiceField.ExtraHrCost] ?? 0);
111
+ // Fallback: if invoice components not stored, use invoice SharingAmount
112
+ if (invoice?.[TaxInvoiceField.BaseCost] == null &&
113
+ invoice?.[TaxInvoiceField.ExtraKmCost] == null &&
114
+ invoice?.[TaxInvoiceField.ExtraHrCost] == null) {
115
+ baseCost = invoice?.[TaxInvoiceField.SharingAmount] || 0;
116
+ }
82
117
  }
83
- if (!invoice) {
84
- // Skip deductions for non-invoiced bookings
85
- return Number((baseCost + extraKmCost + extraHrCost).toFixed(2));
118
+ else {
119
+ baseCost = Number(book?.[RequestField.BaseCost] ?? 0);
120
+ extraKmCost = Number(book?.[RequestField.ExtraKmCost] ?? 0);
121
+ extraHrCost = Number(book?.[RequestField.ExtraHrCost] ?? 0);
122
+ // Fallback: if booking components not stored, use booking SharingAmount
123
+ if (book?.[RequestField.BaseCost] == null &&
124
+ book?.[RequestField.ExtraKmCost] == null &&
125
+ book?.[RequestField.ExtraHrCost] == null) {
126
+ baseCost = book?.[RequestField.SharingAmount] || 0;
127
+ }
128
+ if (!invoice) {
129
+ // Skip deductions for non-invoiced bookings
130
+ return Number((baseCost + extraKmCost + extraHrCost).toFixed(2));
131
+ }
86
132
  }
87
133
  }
88
134
  // Consolidated CN/DN: cost components above came from `book.*` fields
@@ -110,7 +156,10 @@ export function calculateDeductedSharingAmount(book, options) {
110
156
  let totalBaseDeduction = 0;
111
157
  let totalExtraKmDeduction = 0;
112
158
  let totalExtraHrDeduction = 0;
113
- // Benchmark-based deduction: applies to baseCost only (from original)
159
+ // Benchmark-based deduction: computed on (rate + extras) and accumulated
160
+ // into totalBaseDeduction. Since deductions are summed against the total
161
+ // at the end (not clamped per-component), it effectively reduces the
162
+ // whole revenue regardless of which bucket holds it.
114
163
  let deductionPercent = defaultDeduction;
115
164
  let bookingBillType;
116
165
  if (invoice && !invoice?.[TaxInvoiceField.Consolidated]) {
@@ -273,21 +322,22 @@ export function calculateDeductedSharingAmount(book, options) {
273
322
  deductionAmount: Number(ruleDeductionAmount.toFixed(2)),
274
323
  });
275
324
  }
276
- // Subtract all deductions at the end (credit notes can be negative;
277
- // do not clamp to 0)
325
+ // Benchmark deduction is computed on (rate + extras) but stored in
326
+ // totalBaseDeduction (per-component bucket). With per-component
327
+ // Math.max(0, ...) clamping any benchmark amount that exceeds the
328
+ // base component was silently discarded — e.g. for a 4,500 base +
329
+ // 95,864 extras row, an 18% benchmark of 18,065.52 would deduct
330
+ // the full 4,500 (clamped) and silently drop the remaining ~13,565,
331
+ // inflating "Revenue earned for payout" by that amount. The fix
332
+ // is to apply deductions against the total instead of per-bucket:
333
+ // sum the raw per-component deltas, which is mathematically the
334
+ // same as (originalBaseCost + originalExtraKmCost + originalExtraHrCost)
335
+ // minus the aggregate deduction. CN rows already kept signed values
336
+ // (the prior code only clamped for positive originals); this change
337
+ // keeps them signed for the same reason.
278
338
  const rawBaseCost = Number((originalBaseCost - totalBaseDeduction).toFixed(2));
279
339
  const rawExtraKmCost = Number((originalExtraKmCost - totalExtraKmDeduction).toFixed(2));
280
340
  const rawExtraHrCost = Number((originalExtraHrCost - totalExtraHrDeduction).toFixed(2));
281
- baseCost =
282
- originalBaseCost >= 0 ? Math.max(0, rawBaseCost) : rawBaseCost;
283
- extraKmCost =
284
- originalExtraKmCost >= 0
285
- ? Math.max(0, rawExtraKmCost)
286
- : rawExtraKmCost;
287
- extraHrCost =
288
- originalExtraHrCost >= 0
289
- ? Math.max(0, rawExtraHrCost)
290
- : rawExtraHrCost;
291
- return Number((baseCost + extraKmCost + extraHrCost).toFixed(2));
341
+ return Number((rawBaseCost + rawExtraKmCost + rawExtraHrCost).toFixed(2));
292
342
  }
293
343
  //# sourceMappingURL=calculate.deducted.sharing.amount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"calculate.deducted.sharing.amount.js","sourceRoot":"","sources":["../../../../../../../libs/shared/src/lib/utilities/src/calculate.deducted.sharing.amount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"calculate.deducted.sharing.amount.js","sourceRoot":"","sources":["../../../../../../../libs/shared/src/lib/utilities/src/calculate.deducted.sharing.amount.ts"],"names":[],"mappings":"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"}
@@ -26,3 +26,4 @@ export * from './calculate.deducted.sharing.amount';
26
26
  export * from './find.ba.contract.for.booking';
27
27
  export * from './pick.numbered.invoice.for.booking';
28
28
  export * from './pick.incentive.amount';
29
+ export * from './line.item.helpers';
@@ -26,4 +26,5 @@ export * from './calculate.deducted.sharing.amount';
26
26
  export * from './find.ba.contract.for.booking';
27
27
  export * from './pick.numbered.invoice.for.booking';
28
28
  export * from './pick.incentive.amount';
29
+ export * from './line.item.helpers';
29
30
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/shared/src/lib/utilities/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,YAAY,CAAC;AAC3B,cAAc,oCAAoC,CAAC;AACnD,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,OAAO,CAAC;AACtB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/shared/src/lib/utilities/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,YAAY,CAAC;AAC3B,cAAc,oCAAoC,CAAC;AACnD,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wCAAwC,CAAC;AACvD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,OAAO,CAAC;AACtB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Pure-extra-expense (add-on) line items: parking, toll, tips, etc.
3
+ * `ExtraExpense=true && FixedExpense=false`. Used to keep add-ons out
4
+ * of stored cost components (BaseCost/ExtraKmCost/ExtraHrCost) and
5
+ * out of "Amount without tax & add-ons" totals.
6
+ *
7
+ * Single source of truth — was previously inlined / duplicated in
8
+ * invoice.adjustment.controller, export.ba.payout.report.controller,
9
+ * calculate.deducted.sharing.amount, and the vendor knock-off path.
10
+ */
11
+ export declare function isAddOnLineItem(item: any): boolean;
12
+ /**
13
+ * Fuel surcharge items — tracked separately from BaseCost/ExtraKm/ExtraHr
14
+ * (BA report's "Fuel Charge" column, vendor knock-off splits, etc.).
15
+ * Matches on description, case-insensitive, to absorb capitalisation
16
+ * drift between bill generators.
17
+ */
18
+ export declare function isFuelSurchargeLineItem(item: any): boolean;
@@ -0,0 +1,31 @@
1
+ import { NumberedInvoiceLineItemField } from '../../models/src/index';
2
+ /**
3
+ * Pure-extra-expense (add-on) line items: parking, toll, tips, etc.
4
+ * `ExtraExpense=true && FixedExpense=false`. Used to keep add-ons out
5
+ * of stored cost components (BaseCost/ExtraKmCost/ExtraHrCost) and
6
+ * out of "Amount without tax & add-ons" totals.
7
+ *
8
+ * Single source of truth — was previously inlined / duplicated in
9
+ * invoice.adjustment.controller, export.ba.payout.report.controller,
10
+ * calculate.deducted.sharing.amount, and the vendor knock-off path.
11
+ */
12
+ export function isAddOnLineItem(item) {
13
+ if (item == null)
14
+ return false;
15
+ const extraExpense = item[NumberedInvoiceLineItemField.ExtraExpense] ?? item?.extra_expense;
16
+ const fixedExpense = item[NumberedInvoiceLineItemField.FixedExpense] ?? item?.fixed_expense;
17
+ return Boolean(extraExpense) && !fixedExpense;
18
+ }
19
+ /**
20
+ * Fuel surcharge items — tracked separately from BaseCost/ExtraKm/ExtraHr
21
+ * (BA report's "Fuel Charge" column, vendor knock-off splits, etc.).
22
+ * Matches on description, case-insensitive, to absorb capitalisation
23
+ * drift between bill generators.
24
+ */
25
+ export function isFuelSurchargeLineItem(item) {
26
+ const desc = item?.[NumberedInvoiceLineItemField.Description] ?? '';
27
+ return typeof desc === 'string'
28
+ ? desc.toLowerCase().includes('fuel surcharge')
29
+ : false;
30
+ }
31
+ //# sourceMappingURL=line.item.helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line.item.helpers.js","sourceRoot":"","sources":["../../../../../../../libs/shared/src/lib/utilities/src/line.item.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAEtE;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,IAAS;IACxC,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IAC/B,MAAM,YAAY,GACjB,IAAI,CAAC,4BAA4B,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,aAAa,CAAC;IACxE,MAAM,YAAY,GACjB,IAAI,CAAC,4BAA4B,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,aAAa,CAAC;IACxE,OAAO,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC;AAC/C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAS;IAChD,MAAM,IAAI,GAAG,IAAI,EAAE,CAAC,4BAA4B,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IACpE,OAAO,OAAO,IAAI,KAAK,QAAQ;QAC9B,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC/C,CAAC,CAAC,KAAK,CAAC;AACV,CAAC"}