@tractorzoom/equipment-attributes
Version:
Source of truth for equipment attributes by category
229 lines (228 loc) • 9.36 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getSubcategoriesForCategory = exports.CATEGORY_LIST = exports.CATEGORIES_BY_SLUG = exports.CATEGORIES = void 0;
const subcategories_1 = require("./subcategories");
const AG_TRAILERS = {
name: 'Ag Trailers',
subcategories: {
HEADER_TRAILERS: subcategories_1.HEADER_TRAILERS,
LIVESTOCK_TRAILERS: subcategories_1.LIVESTOCK_TRAILERS,
MATERIAL_HANDLING: subcategories_1.MATERIAL_HANDLING,
OTHER: subcategories_1.OTHER,
},
};
const CHEMICAL_APPLICATORS = {
name: 'Chemical Applicators',
subcategories: {
FERTILIZER_APPLICATORS_ANHYDROUS: subcategories_1.FERTILIZER_APPLICATORS_ANHYDROUS,
FERTILIZER_APPLICATORS_DRY: subcategories_1.FERTILIZER_APPLICATORS_DRY,
FERTILIZER_APPLICATORS_LIQUID: subcategories_1.FERTILIZER_APPLICATORS_LIQUID,
FLOATERS: subcategories_1.FLOATERS,
NH3_ANHYDROUS_TANKS: subcategories_1.NH3_ANHYDROUS_TANKS,
SPRAYERS_3PT_MOUNTED: subcategories_1.SPRAYERS_3PT_MOUNTED,
SPRAYERS_PULL_TYPE: subcategories_1.SPRAYERS_PULL_TYPE,
SPRAYERS_SELF_PROPELLED: subcategories_1.SPRAYERS_SELF_PROPELLED,
TOOLBARS: subcategories_1.TOOLBARS,
// eslint-disable-next-line sort-keys
OTHER: subcategories_1.OTHER,
},
};
const COMBINE_HARVESTERS = {
name: 'Combines',
subcategories: {
CLASS_5: subcategories_1.CLASS_5,
CLASS_6: subcategories_1.CLASS_6,
CLASS_7: subcategories_1.CLASS_7,
CLASS_8: subcategories_1.CLASS_8,
CLASS_9: subcategories_1.CLASS_9,
OTHER: subcategories_1.OTHER,
},
};
const CONSTRUCTION = {
name: 'Construction',
subcategories: {
AERIAL_LIFTS: subcategories_1.AERIAL_LIFTS,
ARTICULATED_TRUCKS: subcategories_1.ARTICULATED_TRUCKS,
ASPHALT_PAVERS: subcategories_1.ASPHALT_PAVERS,
ATTACHMENTS: subcategories_1.ATTACHMENTS,
BACKHOE_LOADERS: subcategories_1.BACKHOE_LOADERS,
COLD_PLANERS: subcategories_1.COLD_PLANERS,
COMPACTORS: subcategories_1.COMPACTORS,
COMPACT_EXCAVATORS: subcategories_1.COMPACT_EXCAVATORS,
COMPACT_TRACK_LOADERS: subcategories_1.COMPACT_TRACK_LOADERS,
CRANE: subcategories_1.CRANE,
DOZERS: subcategories_1.DOZERS,
DRAGLINES: subcategories_1.DRAGLINES,
DRUM_ROLLERS: subcategories_1.DRUM_ROLLERS,
EXCAVATORS: subcategories_1.EXCAVATORS,
FORKLIFTS: subcategories_1.FORKLIFTS,
HYDRAULIC_MINING_SHOVELS: subcategories_1.HYDRAULIC_MINING_SHOVELS,
LIGHT_TOWERS: subcategories_1.LIGHT_TOWERS,
MOTOR_GRADERS: subcategories_1.MOTOR_GRADERS,
OFF_HIGHWAY_TRUCKS: subcategories_1.OFF_HIGHWAY_TRUCKS,
PIPELAYERS: subcategories_1.PIPELAYERS,
SCRAPERS: subcategories_1.SCRAPERS,
SKIDDER: subcategories_1.SKIDDER,
SKID_STEERS: subcategories_1.SKID_STEERS,
TELEHANDLERS: subcategories_1.TELEHANDLERS,
TILE_PLOW: subcategories_1.TILE_PLOW,
TRACK_LOADERS: subcategories_1.TRACK_LOADERS,
TRENCHER: subcategories_1.TRENCHER,
UNDERGROUND_MINING_LOADERS: subcategories_1.UNDERGROUND_MINING_LOADERS,
WHEEL_DOZERS: subcategories_1.WHEEL_DOZERS,
WHEEL_EXCAVATORS: subcategories_1.WHEEL_EXCAVATORS,
WHEEL_LOADERS: subcategories_1.WHEEL_LOADERS,
// eslint-disable-next-line sort-keys
OTHER: subcategories_1.OTHER,
},
};
const HARVESTING = {
name: 'Harvesting',
subcategories: {
COTTON_PICKERS_STRIPPERS: subcategories_1.COTTON_PICKERS_STRIPPERS,
FORAGE_HARVESTERS_PULL_TYPE: subcategories_1.FORAGE_HARVESTERS_PULL_TYPE,
FORAGE_HARVESTERS_SELF_PROPELLED: subcategories_1.FORAGE_HARVESTERS_SELF_PROPELLED,
FORAGE_WAGONS: subcategories_1.FORAGE_WAGONS,
GRAIN_AUGERS_CONVEYORS: subcategories_1.GRAIN_AUGERS_CONVEYORS,
GRAIN_BAGGERS: subcategories_1.GRAIN_BAGGERS,
GRAIN_CARTS: subcategories_1.GRAIN_CARTS,
GRAIN_VACUUMS: subcategories_1.GRAIN_VACUUMS,
GRAVITY_WAGONS: subcategories_1.GRAVITY_WAGONS,
HEADERS_FORAGE: subcategories_1.HEADERS_FORAGE,
HEADERS_PLATFORM: subcategories_1.HEADERS_PLATFORM,
HEADERS_ROW_CROP: subcategories_1.HEADERS_ROW_CROP,
OTHER: subcategories_1.OTHER,
},
};
const HAY_AND_FORAGE = {
name: 'Hay and Forage',
subcategories: {
BALERS_ROUND: subcategories_1.BALERS_ROUND,
BALERS_SQUARE: subcategories_1.BALERS_SQUARE,
BALE_ACCUMULATORS_MOVERS: subcategories_1.BALE_ACCUMULATORS_MOVERS,
BALE_PROCESSORS: subcategories_1.BALE_PROCESSORS,
GRINDERS_MIXERS: subcategories_1.GRINDERS_MIXERS,
HAY_MERGERS: subcategories_1.HAY_MERGERS,
HAY_RAKES_TEDDERS: subcategories_1.HAY_RAKES_TEDDERS,
MOWERS_BATWING: subcategories_1.MOWERS_BATWING,
MOWERS_CONDITIONER: subcategories_1.MOWERS_CONDITIONER,
MOWERS_DISK: subcategories_1.MOWERS_DISK,
MOWERS_FLAIL_STALK_CHOPPERS: subcategories_1.MOWERS_FLAIL_STALK_CHOPPERS,
MOWERS_ROTARY: subcategories_1.MOWERS_ROTARY,
WINDROWERS: subcategories_1.WINDROWERS,
// eslint-disable-next-line sort-keys
OTHER: subcategories_1.OTHER,
},
};
const MANURE_HANDLING = {
name: 'Manure Handling',
subcategories: {
MANURE_SPREADERS_DRY: subcategories_1.MANURE_SPREADERS_DRY,
MANURE_SPREADERS_LIQUID: subcategories_1.MANURE_SPREADERS_LIQUID,
MANURE_SYSTEMS: subcategories_1.MANURE_SYSTEMS,
POULTRY_LITTER_EQUIPMENT: subcategories_1.POULTRY_LITTER_EQUIPMENT,
// eslint-disable-next-line sort-keys
OTHER: subcategories_1.OTHER,
},
};
const OTHER_EQUIPMENT = {
name: 'Other Equipment',
subcategories: {
THREE_POINT_ATTACHMENTS: subcategories_1.THREE_POINT_ATTACHMENTS,
// eslint-disable-next-line sort-keys
FUEL_TRAILERS: subcategories_1.FUEL_TRAILERS,
GENERATORS: subcategories_1.GENERATORS,
GPS_EQUIPMENT: subcategories_1.GPS_EQUIPMENT,
IRRIGATION: subcategories_1.IRRIGATION,
LIFTS: subcategories_1.LIFTS,
LIQUID_TANKS: subcategories_1.LIQUID_TANKS,
LOADERS: subcategories_1.LOADERS,
OUTDOOR_POWER: subcategories_1.OUTDOOR_POWER,
SKID_STEER_ATTACHMENTS: subcategories_1.SKID_STEER_ATTACHMENTS,
TRAILERS: subcategories_1.TRAILERS,
TRUCKS: subcategories_1.TRUCKS,
TURF: subcategories_1.TURF,
VEHICLES: subcategories_1.VEHICLES,
// eslint-disable-next-line sort-keys
OTHER: subcategories_1.OTHER,
},
};
const PLANTING = {
name: 'Planting',
subcategories: {
AIR_SEEDERS_OR_CARTS: subcategories_1.AIR_SEEDERS_OR_CARTS,
GRAIN_DRILLS: subcategories_1.GRAIN_DRILLS,
PLANTERS: subcategories_1.PLANTERS,
SEEDERS: subcategories_1.SEEDERS,
SEED_TENDERS: subcategories_1.SEED_TENDERS,
// eslint-disable-next-line sort-keys
OTHER: subcategories_1.OTHER,
},
};
const TILLAGE = {
name: 'Tillage',
subcategories: {
CHISEL_PLOWS: subcategories_1.CHISEL_PLOWS,
DISKS: subcategories_1.DISKS,
DISK_RIPPERS: subcategories_1.DISK_RIPPERS,
FIELD_CULTIVATORS: subcategories_1.FIELD_CULTIVATORS,
LAND_ROLLERS: subcategories_1.LAND_ROLLERS,
MULCH_FINISHERS: subcategories_1.MULCH_FINISHERS,
PLOWS: subcategories_1.PLOWS,
RIPPERS: subcategories_1.RIPPERS,
ROTARY_TILLAGE: subcategories_1.ROTARY_TILLAGE,
ROW_CROP_CULTIVATORS: subcategories_1.ROW_CROP_CULTIVATORS,
STRIP_TILL_BARS: subcategories_1.STRIP_TILL_BARS,
VERTICAL_TILLAGE: subcategories_1.VERTICAL_TILLAGE,
// eslint-disable-next-line sort-keys
OTHER: subcategories_1.OTHER,
},
};
const TRACTORS = {
name: 'Tractors',
subcategories: {
LESS_THAN_40: subcategories_1.LESS_THAN_40,
// eslint-disable-next-line sort-keys
'40_TO_99': subcategories_1.FROM_40_TO_99,
// eslint-disable-next-line sort-keys
'100_TO_174': subcategories_1.FROM_100_TO_174,
'175_TO_299': subcategories_1.FROM_175_TO_299,
'300_TO_424': subcategories_1.FROM_300_TO_424,
'425_PLUS': subcategories_1.FROM_425_PLUS,
},
};
exports.CATEGORIES = {
AG_TRAILERS,
CHEMICAL_APPLICATORS,
COMBINE_HARVESTERS,
CONSTRUCTION,
HARVESTING,
HAY_AND_FORAGE,
MANURE_HANDLING,
OTHER_EQUIPMENT,
PLANTING,
TILLAGE,
TRACTORS,
};
exports.CATEGORIES_BY_SLUG = {
'ag-trailers': AG_TRAILERS,
'chemical-applicators': CHEMICAL_APPLICATORS,
combines: COMBINE_HARVESTERS,
construction: CONSTRUCTION,
harvesting: HARVESTING,
'hay-and-forage': HAY_AND_FORAGE,
'manure-handling': MANURE_HANDLING,
'other-equipment': OTHER_EQUIPMENT,
planting: PLANTING,
tillage: TILLAGE,
tractors: TRACTORS,
};
exports.CATEGORY_LIST = Object.values(exports.CATEGORIES);
const getSubcategoriesForCategory = (categoryName) => {
const category = Object.values(exports.CATEGORIES).find((x) => x.name === categoryName);
if (!category) {
return [];
}
return Object.values(category.subcategories);
};
exports.getSubcategoriesForCategory = getSubcategoriesForCategory;