@zerocarbon/erp-config-sdk 1.0.7 → 1.0.8

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.js CHANGED
@@ -38365,505 +38365,6 @@ const supportsIntensityCalculations = (industry) => {
38365
38365
  const config = getIndustryFieldConfig(industry);
38366
38366
  return config.enableIntensityCalculations || false;
38367
38367
  };
38368
- // Industry-specific mappings from user data to Carbon Intensity API requirements
38369
- const CARBON_INTENSITY_FIELD_MAPPINGS = {
38370
- // Steel Industry Mapping (API expects: revenue + steel_production)
38371
- Steel: {
38372
- revenue: {
38373
- userDataPath: "additionalConfig.erp.steel.plants.{plantName}.revenue",
38374
- transform: (value) => parseFloat(value) || 0,
38375
- required: true,
38376
- fieldLabel: "Revenue (₹Cr)",
38377
- industryFieldKey: "revenue",
38378
- },
38379
- steel_production: {
38380
- userDataPath: "additionalConfig.erp.steel.plants.{plantName}.crudeSteel",
38381
- transform: (value) => parseFloat(value) || 0,
38382
- required: true,
38383
- fieldLabel: "Crude Steel Production (tonnes)",
38384
- industryFieldKey: "crudeSteel",
38385
- },
38386
- },
38387
- // Pharmaceutical Industry Mapping (API expects: area + production)
38388
- Pharmaceutical: {
38389
- area: {
38390
- userDataPath: "additionalConfig.erp.pharmaceutical.plants.{plantName}.productionFacilityArea",
38391
- transform: (value) => parseFloat(value) || 0,
38392
- required: true,
38393
- fieldLabel: "Production Facility Area (m²)",
38394
- industryFieldKey: "productionFacilityArea",
38395
- },
38396
- production: {
38397
- userDataPath: "additionalConfig.erp.pharmaceutical.plants.{plantName}.annualProductionVolume",
38398
- transform: (value) => parseFloat(value) || 0,
38399
- required: true,
38400
- fieldLabel: "Annual Production Volume (tonnes)",
38401
- industryFieldKey: "annualProductionVolume",
38402
- },
38403
- },
38404
- // Chemical Industry Mapping (API expects: production only)
38405
- Chemical: {
38406
- production: {
38407
- userDataPath: "additionalConfig.erp.chemical.plants.{plantName}.totalProduction",
38408
- transform: (value) => parseFloat(value) || 0,
38409
- required: true,
38410
- fieldLabel: "Total Chemical Production (tonnes)",
38411
- industryFieldKey: "totalProduction",
38412
- },
38413
- },
38414
- // Aluminum Industry Mapping (API expects: production only)
38415
- Aluminum: {
38416
- production: {
38417
- userDataPath: "additionalConfig.erp.aluminum.plants.{plantName}.annualProduction",
38418
- transform: (value) => parseFloat(value) || 0,
38419
- required: true,
38420
- fieldLabel: "Annual Production (tonnes)",
38421
- industryFieldKey: "annualProduction",
38422
- },
38423
- },
38424
- // Alloy Industry Mapping (API expects: area + production)
38425
- Alloy: {
38426
- area: {
38427
- userDataPath: "additionalConfig.erp.alloy.plants.{plantName}.facilityArea",
38428
- transform: (value) => parseFloat(value) || 0,
38429
- required: true,
38430
- fieldLabel: "Facility Area (m²)",
38431
- industryFieldKey: "facilityArea",
38432
- },
38433
- production: {
38434
- userDataPath: "additionalConfig.erp.alloy.plants.{plantName}.annualProductionVolume",
38435
- transform: (value) => parseFloat(value) || 0,
38436
- required: true,
38437
- fieldLabel: "Annual Production Volume (tonnes)",
38438
- industryFieldKey: "annualProductionVolume",
38439
- },
38440
- },
38441
- // Textile Industry Mapping (API expects: area + production)
38442
- Textile: {
38443
- area: {
38444
- userDataPath: "additionalConfig.erp.textile.plants.{plantName}.productionFacilityArea",
38445
- transform: (value) => parseFloat(value) || 0,
38446
- required: true,
38447
- fieldLabel: "Production Facility Area (m²)",
38448
- industryFieldKey: "productionFacilityArea",
38449
- },
38450
- production: {
38451
- userDataPath: "additionalConfig.erp.textile.plants.{plantName}.annualProductionVolume",
38452
- transform: (value) => parseFloat(value) || 0,
38453
- required: true,
38454
- fieldLabel: "Annual Production Volume (tonnes)",
38455
- industryFieldKey: "annualProductionVolume",
38456
- },
38457
- },
38458
- // Automobile Industry Mapping (API expects: annual_production_units)
38459
- Automobiles: {
38460
- annual_production_units: {
38461
- userDataPath: "additionalConfig.erp.automobiles.plants.{plantName}.annualProductionVolume",
38462
- transform: (value) => parseFloat(value) || 0,
38463
- required: true,
38464
- fieldLabel: "Annual Production Volume (Units)",
38465
- industryFieldKey: "annualProductionVolume",
38466
- },
38467
- },
38468
- // Aviation Industry Mapping (API expects: area only)
38469
- Aviation: {
38470
- area: {
38471
- userDataPath: "additionalConfig.erp.aviation.plants.{plantName}.facilitiesArea",
38472
- transform: (value) => parseFloat(value) || 0,
38473
- required: true,
38474
- fieldLabel: "Facilities Area (m²)",
38475
- industryFieldKey: "facilitiesArea",
38476
- },
38477
- },
38478
- // Shipping Industry Mapping (API expects: area + employees)
38479
- Shipping: {
38480
- area: {
38481
- userDataPath: "additionalConfig.erp.shipping.plants.{plantName}.portTerminalFacilitiesArea",
38482
- transform: (value) => parseFloat(value) || 0,
38483
- required: true,
38484
- fieldLabel: "Port & Terminal Facilities Area (m²)",
38485
- industryFieldKey: "portTerminalFacilitiesArea",
38486
- },
38487
- employees: {
38488
- userDataPath: "additionalConfig.erp.shipping.plants.{plantName}.numberOfEmployees",
38489
- transform: (value) => parseFloat(value) || 0,
38490
- required: true,
38491
- fieldLabel: "Number of Employees",
38492
- industryFieldKey: "numberOfEmployees",
38493
- },
38494
- },
38495
- // Food & Beverages Industry Mapping (API expects: production_facility_area + production)
38496
- "Food & Beverages": {
38497
- production_facility_area: {
38498
- userDataPath: "additionalConfig.erp.food & beverages.plants.{plantName}.productionFacilityArea",
38499
- transform: (value) => parseFloat(value) || 0,
38500
- required: true,
38501
- fieldLabel: "Production Facility Area (m²)",
38502
- industryFieldKey: "productionFacilityArea",
38503
- },
38504
- production: {
38505
- userDataPath: "additionalConfig.erp.food & beverages.plants.{plantName}.annualProductionVolume",
38506
- transform: (value) => parseFloat(value) || 0,
38507
- required: true,
38508
- fieldLabel: "Annual Production Volume (tonnes)",
38509
- industryFieldKey: "annualProductionVolume",
38510
- },
38511
- },
38512
- // Hospitality Industry Mapping (API expects: built_up_area only)
38513
- Hospitality: {
38514
- built_up_area: {
38515
- userDataPath: "additionalConfig.erp.hospitality.plants.{plantName}.totalBuiltUpArea",
38516
- transform: (value) => parseFloat(value) || 0,
38517
- required: true,
38518
- fieldLabel: "Total Built Up Area (m²)",
38519
- industryFieldKey: "totalBuiltUpArea",
38520
- },
38521
- },
38522
- // Logistics Industry Mapping (API expects: warehouse_area only)
38523
- Logistics: {
38524
- warehouse_area: {
38525
- userDataPath: "additionalConfig.erp.logistics.plants.{plantName}.warehouseSpaceOperated",
38526
- transform: (value) => parseFloat(value) || 0,
38527
- required: true,
38528
- fieldLabel: "Warehouse Space Operated (m²)",
38529
- industryFieldKey: "warehouseSpaceOperated",
38530
- },
38531
- },
38532
- // Manufacturing Industry Mapping (API expects: manufacturing_facility_area + annual_production)
38533
- Manufacturing: {
38534
- manufacturing_facility_area: {
38535
- userDataPath: "additionalConfig.erp.manufacturing.plants.{plantName}.manufacturingFacilityArea",
38536
- transform: (value) => parseFloat(value) || 0,
38537
- required: true,
38538
- fieldLabel: "Manufacturing Facility Area (m²)",
38539
- industryFieldKey: "manufacturingFacilityArea",
38540
- },
38541
- annual_production: {
38542
- userDataPath: "additionalConfig.erp.manufacturing.plants.{plantName}.annualProductionVolume",
38543
- transform: (value) => parseFloat(value) || 0,
38544
- required: true,
38545
- fieldLabel: "Annual Production Volume (tonnes)",
38546
- industryFieldKey: "annualProductionVolume",
38547
- },
38548
- },
38549
- // Metals & Energy Industry Mapping (API expects: power_generated + annual_production)
38550
- "Metals & Energy": {
38551
- power_generated: {
38552
- userDataPath: "additionalConfig.erp.metals & energy.plants.{plantName}.powerGenerated",
38553
- transform: (value) => parseFloat(value) || 0,
38554
- required: true,
38555
- fieldLabel: "Power Generated (MWH)",
38556
- industryFieldKey: "powerGenerated",
38557
- },
38558
- annual_production: {
38559
- userDataPath: "additionalConfig.erp.metals & energy.plants.{plantName}.annualProductionVolume",
38560
- transform: (value) => parseFloat(value) || 0,
38561
- required: true,
38562
- fieldLabel: "Annual Production Volume (tonnes)",
38563
- industryFieldKey: "annualProductionVolume",
38564
- },
38565
- },
38566
- // Packaging Industry Mapping (API expects: packaging_units only)
38567
- Packaging: {
38568
- packaging_units: {
38569
- userDataPath: "additionalConfig.erp.packaging.plants.{plantName}.packagingUnitsProduced",
38570
- transform: (value) => parseFloat(value) || 0,
38571
- required: true,
38572
- fieldLabel: "Packaging Units Produced",
38573
- industryFieldKey: "packagingUnitsProduced",
38574
- },
38575
- },
38576
- // Petrochemical Industry Mapping (API expects: chemical_production only)
38577
- "Petro Chemical": {
38578
- chemical_production: {
38579
- userDataPath: "additionalConfig.erp.petro chemical.plants.{plantName}.annualProductionVolume",
38580
- transform: (value) => parseFloat(value) || 0,
38581
- required: true,
38582
- fieldLabel: "Chemical Production (tonnes)",
38583
- industryFieldKey: "annualProductionVolume",
38584
- },
38585
- },
38586
- // Real Estate Industry Mapping (API expects: project_site_area only)
38587
- "Real Estate & Construction": {
38588
- project_site_area: {
38589
- userDataPath: "additionalConfig.erp.real estate & construction.plants.{plantName}.projectSiteArea",
38590
- transform: (value) => parseFloat(value) || 0,
38591
- required: true,
38592
- fieldLabel: "Project Site Area (m²)",
38593
- industryFieldKey: "projectSiteArea",
38594
- },
38595
- },
38596
- // Telecommunications Industry Mapping (API expects: project_site_area only)
38597
- Telecommunications: {
38598
- project_site_area: {
38599
- userDataPath: "additionalConfig.erp.telecommunications.plants.{plantName}.projectSiteArea",
38600
- transform: (value) => parseFloat(value) || 0,
38601
- required: true,
38602
- fieldLabel: "Project Site Area (m²)",
38603
- industryFieldKey: "projectSiteArea",
38604
- },
38605
- },
38606
- // Utilities Industry Mapping (API expects: total_area + annual_production)
38607
- Utilities: {
38608
- total_area: {
38609
- userDataPath: "additionalConfig.erp.utilities.plants.{plantName}.plantArea",
38610
- transform: (value) => parseFloat(value) || 0,
38611
- required: true,
38612
- fieldLabel: "Plant Area (m²)",
38613
- industryFieldKey: "plantArea",
38614
- },
38615
- annual_production: {
38616
- userDataPath: "additionalConfig.erp.utilities.plants.{plantName}.annualProductionServiceOutput",
38617
- transform: (value) => parseFloat(value) || 0,
38618
- required: true,
38619
- fieldLabel: "Annual Production/Service Output",
38620
- industryFieldKey: "annualProductionServiceOutput",
38621
- },
38622
- },
38623
- // Cement Industry Mapping (API expects: manufacturing_facility_area + annual_production)
38624
- Cement: {
38625
- manufacturing_facility_area: {
38626
- userDataPath: "additionalConfig.erp.cement.plants.{plantName}.manufacturingFacilityArea",
38627
- transform: (value) => parseFloat(value) || 0,
38628
- required: true,
38629
- fieldLabel: "Manufacturing Facility Area (m²)",
38630
- industryFieldKey: "manufacturingFacilityArea",
38631
- },
38632
- annual_production: {
38633
- userDataPath: "additionalConfig.erp.cement.plants.{plantName}.cementProduced",
38634
- transform: (value) => parseFloat(value) || 0,
38635
- required: true,
38636
- fieldLabel: "Cement Produced (tonnes)",
38637
- industryFieldKey: "cementProduced",
38638
- },
38639
- },
38640
- // Battery & EV Infrastructure (fallback to manufacturing structure)
38641
- "Battery & EV Infra": {
38642
- manufacturing_facility_area: {
38643
- userDataPath: "additionalConfig.erp.battery & ev infra.plants.{plantName}.facilityArea",
38644
- transform: (value) => parseFloat(value) || 0,
38645
- required: true,
38646
- fieldLabel: "Facility Area (m²)",
38647
- industryFieldKey: "facilityArea",
38648
- },
38649
- annual_production: {
38650
- userDataPath: "additionalConfig.erp.battery & ev infra.plants.{plantName}.annualProduction",
38651
- transform: (value) => parseFloat(value) || 0,
38652
- required: true,
38653
- fieldLabel: "Annual Production (units)",
38654
- industryFieldKey: "annualProduction",
38655
- },
38656
- },
38657
- // Default mapping for industries without specific configuration
38658
- default: {
38659
- manufacturing_facility_area: {
38660
- userDataPath: "additionalConfig.erp.{industry}.plants.{plantName}.facilityArea",
38661
- transform: (value) => parseFloat(value) || 0,
38662
- required: true,
38663
- fieldLabel: "Facility Area (m²)",
38664
- industryFieldKey: "facilityArea",
38665
- },
38666
- annual_production: {
38667
- userDataPath: "additionalConfig.erp.{industry}.plants.{plantName}.annualProduction",
38668
- transform: (value) => parseFloat(value) || 0,
38669
- required: true,
38670
- fieldLabel: "Annual Production (tonnes)",
38671
- industryFieldKey: "annualProduction",
38672
- },
38673
- },
38674
- };
38675
- // Helper function to get nested value from object using dot notation
38676
- const getNestedValue = (obj, path) => {
38677
- if (!obj || !path)
38678
- return undefined;
38679
- // Handle array notation like "plants[].plantData.field"
38680
- if (path.includes("[].")) {
38681
- const [arrayPath, ...restPath] = path.split("[].", 2);
38682
- const arrayValue = getNestedValue(obj, arrayPath);
38683
- if (Array.isArray(arrayValue) && arrayValue.length > 0) {
38684
- // For now, take the first item in the array
38685
- return getNestedValue(arrayValue[0], restPath.join("[]."));
38686
- }
38687
- return undefined;
38688
- }
38689
- return path.split(".").reduce((current, key) => {
38690
- return current && current[key] !== undefined ? current[key] : undefined;
38691
- }, obj);
38692
- };
38693
- // Main function to extract carbon intensity data from user data
38694
- const extractCarbonIntensityData = (userData, industry) => {
38695
- var _a, _b;
38696
- let mapping = CARBON_INTENSITY_FIELD_MAPPINGS[industry];
38697
- // If no mapping found, try default mapping
38698
- if (!mapping) {
38699
- mapping = CARBON_INTENSITY_FIELD_MAPPINGS.default;
38700
- console.warn(`No specific carbon intensity mapping found for industry: ${industry}, using default mapping`);
38701
- }
38702
- const extractedData = {};
38703
- // Get the current plant name - use the first available plant or a default
38704
- const industryData = (_b = (_a = userData.additionalConfig) === null || _a === void 0 ? void 0 : _a.erp) === null || _b === void 0 ? void 0 : _b[industry.toLowerCase()];
38705
- const plants = industryData === null || industryData === void 0 ? void 0 : industryData.plants;
38706
- let currentPlantName = "default";
38707
- if (plants && typeof plants === "object") {
38708
- if (Array.isArray(plants)) {
38709
- // Handle array-based plants structure
38710
- if (plants.length > 0) {
38711
- // Use the first plant's id or name
38712
- const firstPlant = plants[0];
38713
- currentPlantName = firstPlant.id || firstPlant.name || "default";
38714
- console.log(`Using plant "${currentPlantName}" from array for carbon intensity data extraction`);
38715
- }
38716
- }
38717
- else {
38718
- // Handle object-based plants structure
38719
- const plantNames = Object.keys(plants);
38720
- if (plantNames.length > 0) {
38721
- currentPlantName = plantNames[0];
38722
- console.log(`Using plant "${currentPlantName}" from object for carbon intensity data extraction`);
38723
- }
38724
- }
38725
- }
38726
- Object.entries(mapping).forEach(([apiField, config]) => {
38727
- // Replace {industry} and {plantName} placeholders
38728
- let userDataPath = config.userDataPath
38729
- .replace("{industry}", industry.toLowerCase())
38730
- .replace("{plantName}", currentPlantName);
38731
- let value = getNestedValue(userData, userDataPath);
38732
- // If value not found and we have array-based plants, try alternative path
38733
- if ((value === undefined || value === null) &&
38734
- plants &&
38735
- Array.isArray(plants) &&
38736
- plants.length > 0) {
38737
- // Try to get the field directly from the first plant's plantData
38738
- const firstPlant = plants[0];
38739
- const fieldKey = config.industryFieldKey;
38740
- if (firstPlant.plantData &&
38741
- fieldKey &&
38742
- firstPlant.plantData[fieldKey] !== undefined) {
38743
- value = firstPlant.plantData[fieldKey];
38744
- console.log(`Found ${apiField} in plantData: ${value}`);
38745
- }
38746
- }
38747
- // Apply transformation if provided
38748
- if (config.transform && value !== undefined) {
38749
- value = config.transform(value);
38750
- }
38751
- // Only use fallback if config explicitly has one and field is not required
38752
- if (value === undefined || value === null || isNaN(Number(value))) {
38753
- if (config.required) {
38754
- // For required fields, set to 0 to indicate missing data (will be caught by validation)
38755
- value = 0;
38756
- }
38757
- else {
38758
- // For non-required fields, use fallback if available
38759
- value = config.fallback || 0;
38760
- }
38761
- }
38762
- extractedData[apiField] = Number(value);
38763
- });
38764
- return extractedData;
38765
- };
38766
- // Helper function to map frontend industry names to API industry types
38767
- const mapIndustryToApiType = (industryName) => {
38768
- const industryMapping = {
38769
- Steel: "steel",
38770
- Pharmaceutical: "pharma",
38771
- Chemical: "chemical",
38772
- Aluminum: "aluminium",
38773
- Alloy: "alloy",
38774
- Textile: "textile",
38775
- Automobiles: "automobile",
38776
- Aviation: "aviation",
38777
- Shipping: "shipping",
38778
- "Food & Beverages": "food_beverages",
38779
- Hospitality: "hospitality",
38780
- Logistics: "logistics",
38781
- Manufacturing: "manufacturing",
38782
- "Metals & Energy": "metal_energy",
38783
- "Battery & EV Infra": "manufacturing", // Falls back to manufacturing
38784
- Packaging: "packaging",
38785
- "Petro Chemical": "petrochemical",
38786
- "Real Estate & Construction": "real_estate",
38787
- Telecommunications: "telecommunication",
38788
- Utilities: "utilities",
38789
- Cement: "manufacturing", // Maps cement to manufacturing API
38790
- };
38791
- return industryMapping[industryName] || "manufacturing";
38792
- };
38793
- // Helper function to get available fields for an industry from user data
38794
- const getAvailableFieldsForIndustry = (userData, industry) => {
38795
- const mapping = CARBON_INTENSITY_FIELD_MAPPINGS[industry];
38796
- if (!mapping)
38797
- return [];
38798
- const availableFields = [];
38799
- Object.entries(mapping).forEach(([apiField, config]) => {
38800
- const value = getNestedValue(userData, config.userDataPath);
38801
- if (value !== undefined && value !== null && value !== "") {
38802
- availableFields.push(apiField);
38803
- }
38804
- });
38805
- return availableFields;
38806
- };
38807
- // Helper function to validate that required data is available
38808
- const validateCarbonIntensityData = (userData, industry) => {
38809
- var _a, _b;
38810
- let mapping = CARBON_INTENSITY_FIELD_MAPPINGS[industry];
38811
- if (!mapping) {
38812
- mapping = CARBON_INTENSITY_FIELD_MAPPINGS.default;
38813
- }
38814
- const extractedData = extractCarbonIntensityData(userData, industry);
38815
- const missingFields = [];
38816
- const errors = [];
38817
- // Get the current plant name for error messages
38818
- const industryData = (_b = (_a = userData.additionalConfig) === null || _a === void 0 ? void 0 : _a.erp) === null || _b === void 0 ? void 0 : _b[industry.toLowerCase()];
38819
- const plants = industryData === null || industryData === void 0 ? void 0 : industryData.plants;
38820
- let currentPlantName = "default";
38821
- if (plants && typeof plants === "object") {
38822
- if (Array.isArray(plants)) {
38823
- // Handle array-based plants structure
38824
- if (plants.length > 0) {
38825
- // Use the first plant's id or name
38826
- const firstPlant = plants[0];
38827
- currentPlantName = firstPlant.id || firstPlant.name || "default";
38828
- }
38829
- }
38830
- else {
38831
- // Handle object-based plants structure
38832
- const plantNames = Object.keys(plants);
38833
- if (plantNames.length > 0) {
38834
- currentPlantName = plantNames[0];
38835
- }
38836
- }
38837
- }
38838
- Object.entries(mapping).forEach(([apiField, config]) => {
38839
- if (config.required) {
38840
- const value = extractedData[apiField];
38841
- if (!value || value === 0) {
38842
- const userDataPath = config.userDataPath
38843
- .replace("{industry}", industry.toLowerCase())
38844
- .replace("{plantName}", currentPlantName);
38845
- missingFields.push({
38846
- apiField,
38847
- fieldLabel: config.fieldLabel || apiField,
38848
- industryFieldKey: config.industryFieldKey || apiField,
38849
- userDataPath,
38850
- });
38851
- errors.push(`Missing required field: "${config.fieldLabel || apiField}" (Key: ${config.industryFieldKey || apiField}) is required for carbon intensity calculations. Please fill this field in the ${industry} industry configuration for plant "${currentPlantName}".`);
38852
- }
38853
- }
38854
- });
38855
- return {
38856
- isValid: missingFields.length === 0,
38857
- missingFields,
38858
- errors,
38859
- };
38860
- };
38861
- // Debug function to see what data is being extracted
38862
- const debugCarbonIntensityMapping = (userData, industry) => {
38863
- CARBON_INTENSITY_FIELD_MAPPINGS[industry] ||
38864
- CARBON_INTENSITY_FIELD_MAPPINGS.default;
38865
- extractCarbonIntensityData(userData, industry);
38866
- };
38867
38368
 
38868
38369
  /**
38869
38370
  * UI Features Configuration System
@@ -40581,7 +40082,6 @@ exports.API_ENDPOINTS = API_ENDPOINTS;
40581
40082
  exports.API_SCOPE3_CEMENT_CONFIG = API_SCOPE3_CEMENT_CONFIG;
40582
40083
  exports.BILL_CALCULATION_CONFIGS = BILL_CALCULATION_CONFIGS;
40583
40084
  exports.BillManager = BillManager;
40584
- exports.CARBON_INTENSITY_FIELD_MAPPINGS = CARBON_INTENSITY_FIELD_MAPPINGS;
40585
40085
  exports.CCTS_ALLSCOPES_CEMENT = CCTS_ALLSCOPES_CEMENT;
40586
40086
  exports.CCTS_CALCINATION_PRODUCTS = CCTS_CALCINATION_PRODUCTS;
40587
40087
  exports.CCTS_ELECTRICITY_PRODUCTS = CCTS_ELECTRICITY_PRODUCTS;
@@ -40616,26 +40116,20 @@ exports.createBillManager = createBillManager;
40616
40116
  exports.createCapitalizedMonthMapping = createCapitalizedMonthMapping;
40617
40117
  exports.createEmissionSourceGenerator = createEmissionSourceGenerator;
40618
40118
  exports.createMonthMapping = createMonthMapping;
40619
- exports.debugCarbonIntensityMapping = debugCarbonIntensityMapping;
40620
- exports.extractCarbonIntensityData = extractCarbonIntensityData;
40621
40119
  exports.formatEmissionValue = formatEmissionValue;
40622
40120
  exports.formatIntensityValue = formatIntensityValue;
40623
40121
  exports.formatKPIEmission = formatKPIEmission;
40624
40122
  exports.formatMonthlyEmission = formatMonthlyEmission;
40625
40123
  exports.formatPercentage = formatPercentage;
40626
40124
  exports.getApiIndustryType = getApiIndustryType;
40627
- exports.getAvailableFieldsForIndustry = getAvailableFieldsForIndustry;
40628
40125
  exports.getIndustryConfig = getIndustryConfig;
40629
40126
  exports.getIndustryFieldConfig = getIndustryFieldConfig;
40630
40127
  exports.getIntensityFormulas = getIntensityFormulas;
40631
- exports.getNestedValue = getNestedValue;
40632
40128
  exports.getPlantNameConfig = getPlantNameConfig;
40633
40129
  exports.getScope3ConfigByName = getScope3ConfigByName;
40634
40130
  exports.getUserNameWaterManagementConfig = getUserNameWaterManagementConfig;
40635
40131
  exports.hasIntensities = hasIntensities;
40636
40132
  exports.isUIFeatureEnabled = isUIFeatureEnabled;
40637
- exports.mapIndustryToApiType = mapIndustryToApiType;
40638
40133
  exports.sanitizeNumber = sanitizeNumber;
40639
40134
  exports.supportsIntensityCalculations = supportsIntensityCalculations;
40640
- exports.validateCarbonIntensityData = validateCarbonIntensityData;
40641
40135
  //# sourceMappingURL=index.js.map