b2m-utils 0.0.180 → 0.0.182

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.
@@ -0,0 +1,17 @@
1
+ import { Cte } from '../types/Cte';
2
+ /**
3
+ * Calcula o intervalo de datas dos CTEs
4
+ * @param ctes Array de CTEs para analisar
5
+ * @returns String formatada com o intervalo de datas ou null se não houver datas válidas
6
+ *
7
+ * @example
8
+ * // CTEs do mesmo dia
9
+ * getCteDateRange([cte1, cte2]) // "16/03/2026"
10
+ *
11
+ * // CTEs de dias diferentes
12
+ * getCteDateRange([cte1, cte2]) // "01/03/2026 - 16/03/2026"
13
+ *
14
+ * // Sem datas válidas
15
+ * getCteDateRange([cteSemData]) // null
16
+ */
17
+ export declare const getCteDateRange: (ctes: Cte[]) => string | null;
@@ -3,6 +3,7 @@ export * from './convertNumberToCurrency';
3
3
  export * from './getAuditTotalFromCte';
4
4
  export * from './getContractFromFreight';
5
5
  export * from './getContractRouteFromFreight';
6
+ export * from './getCteDateRange';
6
7
  export * from './getCteLane';
7
8
  export * from './getCteLaneFeesTotal';
8
9
  export * from './getCtesFeesResult';
@@ -6843,6 +6843,51 @@ var getContractRouteFromFreight = function (contracts, freight) {
6843
6843
  return false;
6844
6844
  };
6845
6845
 
6846
+ /**
6847
+ * Calcula o intervalo de datas dos CTEs
6848
+ * @param ctes Array de CTEs para analisar
6849
+ * @returns String formatada com o intervalo de datas ou null se não houver datas válidas
6850
+ *
6851
+ * @example
6852
+ * // CTEs do mesmo dia
6853
+ * getCteDateRange([cte1, cte2]) // "16/03/2026"
6854
+ *
6855
+ * // CTEs de dias diferentes
6856
+ * getCteDateRange([cte1, cte2]) // "01/03/2026 - 16/03/2026"
6857
+ *
6858
+ * // Sem datas válidas
6859
+ * getCteDateRange([cteSemData]) // null
6860
+ */
6861
+ var getCteDateRange = function (ctes) {
6862
+ if (!(ctes === null || ctes === void 0 ? void 0 : ctes.length))
6863
+ return null;
6864
+ var dates = ctes
6865
+ .map(function (cte) { return cte.emissionDate; })
6866
+ .filter(function (date) { return date !== undefined && date !== null; }) // Type guard
6867
+ .map(function (date) { return new Date(date); })
6868
+ .filter(function (date) { return !isNaN(date.getTime()); }) // Remover datas inválidas
6869
+ .sort(function (a, b) { return a.getTime() - b.getTime(); }); // Ordenar da mais antiga para a mais recente
6870
+ if (dates.length === 0)
6871
+ return null;
6872
+ var oldest = dates[0];
6873
+ var newest = dates[dates.length - 1];
6874
+ // Se for a mesma data, mostrar apenas uma vez
6875
+ if (oldest.toDateString() === newest.toDateString()) {
6876
+ return oldest.toLocaleDateString('pt-BR', {
6877
+ day: '2-digit',
6878
+ month: '2-digit',
6879
+ year: 'numeric'
6880
+ });
6881
+ }
6882
+ // Formatar intervalo
6883
+ var formatDate = function (date) { return date.toLocaleDateString('pt-BR', {
6884
+ day: '2-digit',
6885
+ month: '2-digit',
6886
+ year: 'numeric'
6887
+ }); };
6888
+ return "".concat(formatDate(oldest), " - ").concat(formatDate(newest));
6889
+ };
6890
+
6846
6891
  var getFilteredFeesToAudit = function (_a) {
6847
6892
  var _b;
6848
6893
  var lane = _a.lane, ratecard = _a.ratecard, cte = _a.cte;
@@ -7120,5 +7165,5 @@ var setFormattedDatesInObjects = function (objectFormat) { return __awaiter(void
7120
7165
  });
7121
7166
  }); };
7122
7167
 
7123
- export { ApplicationColumnNameEnum, ApplicationEnum, CountryEnum, CteStatusEnum, CurrencyEnum, DocumentTypeEnum, DomainConfigurationEnum, DomainTypeEnum, FeeCalculationTypeEnum, FeeCategoryEnum, FeeEnum, FreightRegionEnum, ImapHostsEnum, ModalEnum, NotificationTypeEnum, PermissionEnum, RatecardConditionalFeeTypeEnum, RatecardModalEnum, SlaRegionEnum, SpotStatusEnum, TrackProcessProviderTypeEnum, calculateFee, convertNumberToCurrency, formatDateString, getAuditTotalFromCte, getConfigurationFromDomain, getContractFromFreight, getContractRouteFromFreight, getCookies, getCteLane, getCteLaneFeesTotal, getCtesFeesResult, getDataFromToken, getFilteredFeesToAudit, getFormattedFreightPlaceName, getLaneFeesToCalc, getLaneFromRatecard, getNormalizedCityName, getRatecardFromCte, getRouteDeliveryTimeFromFreight, getRouteOnTimeFromFreight, normalizeString, setFormattedDatesInObjects, verifyConditionalFee, verifyDefaultFees };
7168
+ export { ApplicationColumnNameEnum, ApplicationEnum, CountryEnum, CteStatusEnum, CurrencyEnum, DocumentTypeEnum, DomainConfigurationEnum, DomainTypeEnum, FeeCalculationTypeEnum, FeeCategoryEnum, FeeEnum, FreightRegionEnum, ImapHostsEnum, ModalEnum, NotificationTypeEnum, PermissionEnum, RatecardConditionalFeeTypeEnum, RatecardModalEnum, SlaRegionEnum, SpotStatusEnum, TrackProcessProviderTypeEnum, calculateFee, convertNumberToCurrency, formatDateString, getAuditTotalFromCte, getConfigurationFromDomain, getContractFromFreight, getContractRouteFromFreight, getCookies, getCteDateRange, getCteLane, getCteLaneFeesTotal, getCtesFeesResult, getDataFromToken, getFilteredFeesToAudit, getFormattedFreightPlaceName, getLaneFeesToCalc, getLaneFromRatecard, getNormalizedCityName, getRatecardFromCte, getRouteDeliveryTimeFromFreight, getRouteOnTimeFromFreight, normalizeString, setFormattedDatesInObjects, verifyConditionalFee, verifyDefaultFees };
7124
7169
  //# sourceMappingURL=index.esm.js.map
Binary file