@zerocarbon/erp-config-sdk 1.0.32 → 1.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/index.d.ts +9 -2
- package/dist/index.esm.js +13 -2
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +13 -2
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
package/dist/index.d.ts
CHANGED
|
@@ -163,11 +163,13 @@ interface Bill {
|
|
|
163
163
|
nestedSubCategory: string;
|
|
164
164
|
amountCalculated: number;
|
|
165
165
|
multiplicationFactor: number;
|
|
166
|
+
billAmount?: number;
|
|
166
167
|
massData?: number;
|
|
167
168
|
config?: {
|
|
168
169
|
type?: string;
|
|
169
170
|
id?: string;
|
|
170
171
|
name?: string;
|
|
172
|
+
[key: string]: any;
|
|
171
173
|
};
|
|
172
174
|
}
|
|
173
175
|
interface Meta {
|
|
@@ -1205,6 +1207,10 @@ interface BillMatchingConfig {
|
|
|
1205
1207
|
type: boolean;
|
|
1206
1208
|
};
|
|
1207
1209
|
}
|
|
1210
|
+
interface CreateBillOptions {
|
|
1211
|
+
billAmount?: number;
|
|
1212
|
+
config?: Record<string, any>;
|
|
1213
|
+
}
|
|
1208
1214
|
declare const BILL_CALCULATION_CONFIGS: BillCalculationConfig[];
|
|
1209
1215
|
declare const DEFAULT_BILL_MATCHING_CONFIG: BillMatchingConfig;
|
|
1210
1216
|
declare class BillManager {
|
|
@@ -1214,7 +1220,7 @@ declare class BillManager {
|
|
|
1214
1220
|
filterBills(options: BillFilterOptions): Bill[];
|
|
1215
1221
|
private matchField;
|
|
1216
1222
|
findBillsForEmissionItem(emissionItem: ProcessedEmissionItem, category: string, year: number, month: number, scope: string, plantId?: string): Bill[];
|
|
1217
|
-
createBill(userId: string, category: string, activityData: number, emissionItem: ProcessedEmissionItem, year: number, month: number, scope: string, industry?: string, vendorConfig?: any, massData?: number, plantId?: string): Omit<Bill, "_id">;
|
|
1223
|
+
createBill(userId: string, category: string, activityData: number, emissionItem: ProcessedEmissionItem, year: number, month: number, scope: string, industry?: string, vendorConfig?: any, massData?: number, plantId?: string, options?: CreateBillOptions): Omit<Bill, "_id">;
|
|
1218
1224
|
private getCalculationConfig;
|
|
1219
1225
|
private calculateEmissions;
|
|
1220
1226
|
private getMultiplicationFactor;
|
|
@@ -1257,6 +1263,7 @@ interface EmissionSource {
|
|
|
1257
1263
|
totalEmissions: number;
|
|
1258
1264
|
amount: string;
|
|
1259
1265
|
activityData: number;
|
|
1266
|
+
billAmount?: number;
|
|
1260
1267
|
isEditing: boolean;
|
|
1261
1268
|
tempActivityData?: number;
|
|
1262
1269
|
bill?: Bill;
|
|
@@ -6539,4 +6546,4 @@ declare namespace index {
|
|
|
6539
6546
|
}
|
|
6540
6547
|
|
|
6541
6548
|
export { ALL_SCOPES_3_RCO, API_ENDPOINTS, API_SCOPE3_CEMENT_CONFIG, BILL_CALCULATION_CONFIGS, BULK_BILL_AGENT_PROFILES, BillManager, CCTS_ALLSCOPES_CEMENT, CCTS_CALCINATION_PRODUCTS, CCTS_ELECTRICITY_PRODUCTS, CCTS_FIRE_EXTINGUISHER_PRODUCTS, CCTS_FUEL_COMBUSTION_PRODUCTS, CCTS_LPG_PRODUCTS, CCTS_MINING_OPERATIONS_PRODUCTS, CCTS_ONSITE_POWER_PRODUCTS, CCTS_PURCHASED_ELECTRICITY, CCTS_REFRIGERANTS, CCTS_SCOPE1_CEMENT, CCTS_SCOPE2_CEMENT, CCTS_SF6_PRODUCTS, CCTS_TABLE_COLUMNS, DEFAULT_BILL_MATCHING_CONFIG, EmissionSourceGenerator, FRONTEND_INDUSTRY_CONFIGS, HTTP_STATUS, INDUSTRIES_CONFIG, INDUSTRY_MAPPING, INDUSTRY_SPECIFIC_FIELDS, INTENSITY_FIELD_LABELS, ISO_CATEGORIES_PACKAGING, index as Industries, UI_FEATURES, WATER_PRODUCTS$5 as WATER_PRODUCTS, addItemForUser, buildBulkBillAgentFinalizerPrompt, buildBulkBillAgentPromptConfig, buildBulkBillAgentRouterPrompt, buildBulkBillAgentSystemPrompt, buildBulkBillAgentWorkerPrompt, buildUserConfigItemKey, calculateCCTSEmission, calculateIntensityMetrics, categorizeApiItem, cleanValue, createBillManager, createCapitalizedMonthMapping, createEmissionSourceGenerator, createMonthMapping, debugCarbonIntensityMapping, extractBulkBillAgentProfileCandidates, extractCarbonIntensityData, formatEmissionValue, formatIntensityValue, formatKPIEmission, formatMonthlyEmission, formatPercentage, getAllConfig, getApiIndustryType, getAvailableFieldsForIndustry, getBulkBillAgentProfile, getBulkBillAgentProfilesForMappingContext, getCombinedBackendConfig, getIndustryBackendConfig, getIndustryConfig$1 as getIndustryConfig, getIndustryFieldConfig, getIntensityFormulas, getItemsForUser, getPlantNameConfig, getPrimaryBulkBillAgentProfile, getRCOConfigByName, getScope3ConfigByName, getUserNameBackendConfig, getUserNameScopeConfig, hasIntensities, isUIFeatureEnabled, listBulkBillAgentProfiles, mapIndustryToApiType, mergeUserItemsIntoIndustryConfig, normalizeConfigKeyText, normalizeConfigText, resolveEmissionFactorsForUser, sameUserConfigText, sanitizeNumber, scoreBulkBillAgentProfile, supportsIntensityCalculations, updateItemEmissionFactorForUser, updateSdkItemEmissionFactorForUser, validateCarbonIntensityData };
|
|
6542
|
-
export type { AllConfigurations, AlloyRequest, AlloyResponse, AluminiumRequest, AluminiumResponse, ApiEndpointConfig, ApiResponse, AutomobileRequest, AutomobileResponse, AviationRequest, AviationResponse, BackendAdditionalScopeItem, BackendEmissionItem, BackendEmissions, BackendEquipmentCategory, BackendIndustries, BackendIndustryConfig, BackendProduct, BackendScope, BackendScope3Item, BackendUserConfig, BackendUserConfigs, BaseRequest, BaseResponse, Bill, BillCalculationConfig, BillFilterOptions, BillMatchingConfig, BulkBillAgentAllowedItem, BulkBillAgentMappingContext, BulkBillAgentProfile, BulkBillAgentProfileCandidate, BulkBillAgentProfileExtractionInput, BulkBillAgentProfileGroup, BulkBillAgentProfileId, BulkBillAgentProfilePage, BulkBillAgentPromptConfig, BulkBillAgentWorkerPromptInput, BusinessTravelEmission, BusinessTravelEmissionAttributes, BusinessTravelEmissionsResponse, BillsAnalyzed$1 as CarbonIntensityBillsAnalyzed, Calculations$1 as CarbonIntensityCalculations, EmissionData$2 as CarbonIntensityEmissionData, ErrorResponse$1 as CarbonIntensityErrorResponse, CarbonIntensityRequest, CarbonIntensityResponse, ChemicalRequest, ChemicalResponse, DetailedCarbonIntensityResponse, EditableItem, EmissionData$3 as EmissionData, EmissionSource, Emissions$j as Emissions, EmissionsDataAttributes, EmissionsDataResponse, FieldConfig, FoodBeveragesRequest, FoodBeveragesResponse, FormData, FormValidationResult, FrontendIndustryConfig, HospitalityRequest, HospitalityResponse, IndustryConfig$1 as IndustryConfig, EmissionData as IndustryEmissionData, IndustryFieldConfig, IndustryFieldSection, ProductionData as IndustryProductionData, IndustryType, IntensityCalculation, IntensityValue, LogisticsRequest, LogisticsResponse, ManufacturingRequest, ManufacturingResponse, Meta, MetalEnergyRequest, MetalEnergyResponse, PackagingRequest, PackagingResponse, Pagination, PetrochemicalRequest, PetrochemicalResponse, PharmaRequest, PharmaResponse, PlantNameConfig, ProcessedEmissionCategory, ProcessedEmissionItem, ProcessedScope3Data, RealEstateRequest, RealEstateResponse, BillsAnalyzed as ResponseBillsAnalyzed, Calculations as ResponseCalculations, EmissionData$1 as ResponseEmissionData, ErrorResponse as ResponseErrorResponse, ScopeConfig, ScopeProduct, ShippingRequest, ShippingResponse, SteelRequest, SteelResponse, StrapiItem, StrapiResponse, TelecommunicationRequest, TelecommunicationResponse, TextileRequest, TextileResponse, TransportationEmission, TransportationEmissionAttributes, TransportationEmissionsResponse, UserConfigApiClient, UserConfigItem, UserData, UserEmissionFactorApprovalResponse, UserEmissionFactorResolution, UtilitiesRequest, UtilitiesResponse, ValidationError, VehicleEmission, VehicleEmissionAttributes, VehicleEmissionsResponse };
|
|
6549
|
+
export type { AllConfigurations, AlloyRequest, AlloyResponse, AluminiumRequest, AluminiumResponse, ApiEndpointConfig, ApiResponse, AutomobileRequest, AutomobileResponse, AviationRequest, AviationResponse, BackendAdditionalScopeItem, BackendEmissionItem, BackendEmissions, BackendEquipmentCategory, BackendIndustries, BackendIndustryConfig, BackendProduct, BackendScope, BackendScope3Item, BackendUserConfig, BackendUserConfigs, BaseRequest, BaseResponse, Bill, BillCalculationConfig, BillFilterOptions, BillMatchingConfig, BulkBillAgentAllowedItem, BulkBillAgentMappingContext, BulkBillAgentProfile, BulkBillAgentProfileCandidate, BulkBillAgentProfileExtractionInput, BulkBillAgentProfileGroup, BulkBillAgentProfileId, BulkBillAgentProfilePage, BulkBillAgentPromptConfig, BulkBillAgentWorkerPromptInput, BusinessTravelEmission, BusinessTravelEmissionAttributes, BusinessTravelEmissionsResponse, BillsAnalyzed$1 as CarbonIntensityBillsAnalyzed, Calculations$1 as CarbonIntensityCalculations, EmissionData$2 as CarbonIntensityEmissionData, ErrorResponse$1 as CarbonIntensityErrorResponse, CarbonIntensityRequest, CarbonIntensityResponse, ChemicalRequest, ChemicalResponse, CreateBillOptions, DetailedCarbonIntensityResponse, EditableItem, EmissionData$3 as EmissionData, EmissionSource, Emissions$j as Emissions, EmissionsDataAttributes, EmissionsDataResponse, FieldConfig, FoodBeveragesRequest, FoodBeveragesResponse, FormData, FormValidationResult, FrontendIndustryConfig, HospitalityRequest, HospitalityResponse, IndustryConfig$1 as IndustryConfig, EmissionData as IndustryEmissionData, IndustryFieldConfig, IndustryFieldSection, ProductionData as IndustryProductionData, IndustryType, IntensityCalculation, IntensityValue, LogisticsRequest, LogisticsResponse, ManufacturingRequest, ManufacturingResponse, Meta, MetalEnergyRequest, MetalEnergyResponse, PackagingRequest, PackagingResponse, Pagination, PetrochemicalRequest, PetrochemicalResponse, PharmaRequest, PharmaResponse, PlantNameConfig, ProcessedEmissionCategory, ProcessedEmissionItem, ProcessedScope3Data, RealEstateRequest, RealEstateResponse, BillsAnalyzed as ResponseBillsAnalyzed, Calculations as ResponseCalculations, EmissionData$1 as ResponseEmissionData, ErrorResponse as ResponseErrorResponse, ScopeConfig, ScopeProduct, ShippingRequest, ShippingResponse, SteelRequest, SteelResponse, StrapiItem, StrapiResponse, TelecommunicationRequest, TelecommunicationResponse, TextileRequest, TextileResponse, TransportationEmission, TransportationEmissionAttributes, TransportationEmissionsResponse, UserConfigApiClient, UserConfigItem, UserData, UserEmissionFactorApprovalResponse, UserEmissionFactorResolution, UtilitiesRequest, UtilitiesResponse, ValidationError, VehicleEmission, VehicleEmissionAttributes, VehicleEmissionsResponse };
|
package/dist/index.esm.js
CHANGED
|
@@ -38890,7 +38890,7 @@ class BillManager {
|
|
|
38890
38890
|
return matchingBills;
|
|
38891
38891
|
}
|
|
38892
38892
|
// Create a bill object with proper calculation
|
|
38893
|
-
createBill(userId, category, activityData, emissionItem, year, month, scope, industry = "cement", vendorConfig, massData, plantId) {
|
|
38893
|
+
createBill(userId, category, activityData, emissionItem, year, month, scope, industry = "cement", vendorConfig, massData, plantId, options = {}) {
|
|
38894
38894
|
const calculationConfig = this.getCalculationConfig(industry, scope, category);
|
|
38895
38895
|
const amountCalculated = this.calculateEmissions(activityData, emissionItem.emissionFactor, calculationConfig, massData);
|
|
38896
38896
|
const multiplicationFactor = this.getMultiplicationFactor(emissionItem.emissionFactor, calculationConfig);
|
|
@@ -38907,8 +38907,12 @@ class BillManager {
|
|
|
38907
38907
|
nestedSubCategory: emissionItem.item,
|
|
38908
38908
|
amountCalculated: amountCalculated,
|
|
38909
38909
|
multiplicationFactor: multiplicationFactor,
|
|
38910
|
+
billAmount: sanitizeNumber(options.billAmount),
|
|
38910
38911
|
massData: massData,
|
|
38911
|
-
config:
|
|
38912
|
+
config: {
|
|
38913
|
+
...(vendorConfig || {}),
|
|
38914
|
+
...(options.config || {}),
|
|
38915
|
+
},
|
|
38912
38916
|
};
|
|
38913
38917
|
}
|
|
38914
38918
|
// Get calculation configuration for specific context
|
|
@@ -39085,6 +39089,7 @@ const formatKPIEmission = (value) => {
|
|
|
39085
39089
|
}
|
|
39086
39090
|
};
|
|
39087
39091
|
|
|
39092
|
+
const sumBillAmounts = (bills) => bills.reduce((sum, bill) => sum + sanitizeNumber(bill.billAmount), 0);
|
|
39088
39093
|
class EmissionSourceGenerator {
|
|
39089
39094
|
constructor(billManager) {
|
|
39090
39095
|
this.billManager = billManager;
|
|
@@ -39108,6 +39113,7 @@ class EmissionSourceGenerator {
|
|
|
39108
39113
|
});
|
|
39109
39114
|
const totalEmissions = matchingBills.reduce((sum, bill) => sum + sanitizeNumber(bill.amountCalculated), 0);
|
|
39110
39115
|
const totalActivityData = matchingBills.reduce((sum, bill) => sum + sanitizeNumber(bill.amount), 0);
|
|
39116
|
+
const totalBillAmount = sumBillAmounts(matchingBills);
|
|
39111
39117
|
sources.push({
|
|
39112
39118
|
id: sourceId,
|
|
39113
39119
|
itemName: subProduct.name,
|
|
@@ -39118,6 +39124,7 @@ class EmissionSourceGenerator {
|
|
|
39118
39124
|
totalEmissions,
|
|
39119
39125
|
amount: totalActivityData.toString(),
|
|
39120
39126
|
activityData: totalActivityData,
|
|
39127
|
+
billAmount: totalBillAmount,
|
|
39121
39128
|
isEditing: false,
|
|
39122
39129
|
bill: matchingBills[0],
|
|
39123
39130
|
scope: scopeConfig.scope || "scope1",
|
|
@@ -39143,6 +39150,7 @@ class EmissionSourceGenerator {
|
|
|
39143
39150
|
const matchingBills = this.billManager.findBillsForEmissionItem(apiItem, scopeConfig.name, year, monthNumber, scopeConfig.scope || "scope3");
|
|
39144
39151
|
const totalEmissions = matchingBills.reduce((sum, bill) => sum + sanitizeNumber(bill.amountCalculated), 0);
|
|
39145
39152
|
const totalActivityData = matchingBills.reduce((sum, bill) => sum + sanitizeNumber(bill.amount), 0);
|
|
39153
|
+
const totalBillAmount = sumBillAmounts(matchingBills);
|
|
39146
39154
|
sources.push({
|
|
39147
39155
|
id: sourceId,
|
|
39148
39156
|
itemName: apiItem.item,
|
|
@@ -39153,6 +39161,7 @@ class EmissionSourceGenerator {
|
|
|
39153
39161
|
totalEmissions,
|
|
39154
39162
|
amount: totalActivityData.toString(),
|
|
39155
39163
|
activityData: totalActivityData,
|
|
39164
|
+
billAmount: totalBillAmount,
|
|
39156
39165
|
isEditing: false,
|
|
39157
39166
|
bill: matchingBills[0],
|
|
39158
39167
|
scope: scopeConfig.scope || "scope3",
|
|
@@ -39185,6 +39194,7 @@ class EmissionSourceGenerator {
|
|
|
39185
39194
|
});
|
|
39186
39195
|
const totalEmissions = matchingBills.reduce((sum, bill) => sum + sanitizeNumber(bill.amountCalculated), 0);
|
|
39187
39196
|
const totalActivityData = matchingBills.reduce((sum, bill) => sum + sanitizeNumber(bill.amount), 0);
|
|
39197
|
+
const totalBillAmount = sumBillAmounts(matchingBills);
|
|
39188
39198
|
sources.push({
|
|
39189
39199
|
id: sourceId,
|
|
39190
39200
|
itemName: item.item,
|
|
@@ -39195,6 +39205,7 @@ class EmissionSourceGenerator {
|
|
|
39195
39205
|
totalEmissions,
|
|
39196
39206
|
amount: totalActivityData.toString(),
|
|
39197
39207
|
activityData: totalActivityData,
|
|
39208
|
+
billAmount: totalBillAmount,
|
|
39198
39209
|
isEditing: false,
|
|
39199
39210
|
bill: matchingBills[0],
|
|
39200
39211
|
scope: scopeConfig.scope || "scope3",
|