UNPKG

@tractorzoom/equipment-attributes

Version:

Source of truth for equipment attributes by category

676 lines (675 loc) 14.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getAllAttributes = exports.ZIP_CODE = exports.YEAR = exports.WIDTH = exports.TRANSMISSION = exports.THREE_POINT_HITCH = exports.TAG_AXLE = exports.SUBCATEGORY = exports.STATE = exports.SPREADER = exports.SPACING = exports.SERIAL = exports.SEPARATOR_HOURS = exports.ROW_CLEANERS = exports.REAR_TIRES = exports.REAR_PTO = exports.POWERFOLD_BIN = exports.PRICE = exports.NUMBER_OF_SHANKS = exports.NUMBER_OF_ROWS = exports.NUMBER_OF_BOTTOMS = exports.NUMBER_OF_BALES = exports.MODEL = exports.MILES = exports.MAKE = exports.LOT_NUMBER = exports.LOADER = exports.LENGTH = exports.HORSEPOWER = exports.HOURS = exports.FRONT_TIRES = exports.EQUIPMENT_CONDITION = exports.EMISSIONS = exports.DRIVE = exports.DESCRIPTION = exports.CONDITION = exports.COMBINE_TYPE = exports.CHOPPER = exports.CITY = exports.CENTER_BULK_FILL = exports.CATEGORY = exports.CAPACITY = exports.CAB = exports.BELLY_MOWER = exports.ACRES = void 0; const categories = require("./categories"); const units = require("./units"); /* Input of number of acres worked */ exports.ACRES = { input: true, inputType: 'number', label: 'Acres', name: 'acres', shortName: 'Acres', type: 'number', }; /* Switch if equipment has belly mower */ exports.BELLY_MOWER = { label: 'Belly Mower', name: 'bellyMower', switch: true, type: 'boolean', }; /* Select of cab types Options: Standard, Deluxe, Buddy Seat */ exports.CAB = { label: 'Cab', name: 'cab', options: [ { name: 'Standard', value: 1, }, { name: 'Premium', value: 2, }, { name: 'No Cab', value: 3, }, ], select: true, type: 'string', }; /* Input of capacity of equipment */ exports.CAPACITY = { input: true, inputType: 'number', label: 'Capacity', name: 'capacity', type: 'number', unitOptions: [units.GALLONS, units.TONS, units.BUSHELS], }; /* Select of equipment categories Options: Ag Trailers, Chemical Applicators, Harvesting, Hay and Forage, Manure Handling, Other Equipment, Planting, Tillage, Tractors */ exports.CATEGORY = { label: 'Category', name: 'category', options: categories.CATEGORY_LIST.map((x) => ({ name: x.name, value: x })), select: true, type: 'string', }; /* Switch if equipment is center bulk fill */ exports.CENTER_BULK_FILL = { label: 'Center Bulk Fill', name: 'centerBulkFill', switch: true, type: 'boolean', }; /* Input of city */ exports.CITY = { input: true, inputType: 'string', label: 'City', name: 'city', type: 'string', }; /* Switch if equipment has chopper */ exports.CHOPPER = { label: 'Chopper', name: 'chopper', switch: true, type: 'boolean', }; /* Select of combine type Options: Corn/Bean, Rice, Small Grains, Specialty */ exports.COMBINE_TYPE = { label: 'Combine Type', name: 'combineType', options: [ { name: 'Corn/Bean', value: 1, }, { name: 'Rice', value: 2, }, { name: 'Small Grain', value: 3, }, { name: 'Specialty', value: 4, }, ], select: true, type: 'string', }; /* Select of equipment condition Options: New, Used */ exports.CONDITION = { default: 'Used', label: 'Condition', name: 'condition', options: [ { name: 'New', value: 0, }, { name: 'Used', value: 1, }, ], select: true, type: 'string', }; /* Input of auctioneer description */ exports.DESCRIPTION = { input: true, inputType: 'string', label: 'Description', name: 'description', type: 'string', }; /* Select of equipment drive Options: */ exports.DRIVE = { label: 'Drive', name: 'drive', options: [ { name: '2WD', value: 1, }, { name: 'MFWD', value: 2, }, { name: '4WD', value: 3, }, { label: 'Two Tracks', name: 'Tracks', value: 4, }, { name: 'RWA', value: 5, }, { label: '4WD/PRWD', name: 'PRWD', value: 6, }, ], select: true, type: 'string', }; /* Select of emission types Options: DEF, DPF, EGR, No Emissions */ exports.EMISSIONS = { label: 'Emissions', name: 'emissions', options: [ { name: 'DEF', value: 1, }, { name: 'DPF', value: 2, }, { name: 'EGR', value: 3, }, { name: 'No Emissions', value: 4, }, ], select: true, type: 'string', }; /* Select of equipment condition types Options: Excellent, Good, Average, Fair, Poor */ exports.EQUIPMENT_CONDITION = { label: 'Condition', name: 'equipmentCondition', options: [ { description: 'The implement has seen little or no use in the field. Engine is in perfect condition with 0 to 600 hrs. of use. Tires have 90 to 100% tread remaining, and no breaks or cracks. The paint is original and bright in appearance. The parts have little or no wear. Well cared for.', name: 'Excellent', value: 1, }, { description: 'Engine is in good running condition. Tires have about 80% of the tread remaining. The paint is original or has a good repaint job. The implement is utilized as if it were in excellent condition and only requires routine maintenance to maintain its running condition.', name: 'Good', value: 2, }, { description: 'Engine will require some minor maintenance in order to extend its life in the foreseeable future. The general appearance of the implement is showing wear but it can still be utilized for the use for which it was originally built. Tires have about 70% of their tread.', name: 'Average', value: 3, }, { description: 'Replacement of parts would enhance performance. Tires have only 60% tread remaining with possibly some scars visible. Paint is weathered and shows some signs of rust. Parts are wearing. Functionally the implement is still useful but to a much lesser extent.', name: 'Fair', value: 4, }, { description: 'Needs major overhaul to restore power or performance. Tires have 50% wear or less tread remaining with scars and cracks. Paint and appearance are rough. Bearings appear to need replacement. Rebuilding is necessary.', name: 'Poor', value: 5, }, ], select: true, type: 'string', }; /* Select of front tire types Options: Singles, Duals */ exports.FRONT_TIRES = { label: 'Front Tires', name: 'frontTires', options: [ { name: 'Singles', value: 1, }, { name: 'Duals', value: 2, }, { name: 'Triples', value: 3, }, { name: 'Tracks', value: 4, }, ], select: true, type: 'string', }; /* Input of equipment hours */ exports.HOURS = { input: true, inputType: 'number', label: 'Hours', name: 'hours', shortName: 'Hrs', type: 'number', }; /* Input of equipment horsepower */ exports.HORSEPOWER = { input: true, inputType: 'number', label: 'Horsepower', name: 'horsepower', shortName: 'HP', type: 'number', }; /* Input of equipment length */ exports.LENGTH = { input: true, inputType: 'number', label: 'Length', name: 'length', shortName: 'Ft', type: 'number', unitOptions: [units.FEET], }; /* Switch if equipment has loader */ exports.LOADER = { label: 'Loader', name: 'loader', switch: true, type: 'boolean', }; /* Input of lot number for equipment in an auction */ exports.LOT_NUMBER = { input: true, inputType: 'string', label: 'Lot Number', name: 'lotNumber', type: 'string', }; /* Select of makes for equipment Options: Dynamic list from database */ exports.MAKE = { label: 'Make', name: 'make', options: [], select: true, type: 'string', }; /* Input of miles driven for equipment */ exports.MILES = { input: true, inputType: 'number', label: 'Miles', name: 'miles', shortName: 'mi', type: 'number', }; /* Select of models based on make for equipment Options: Dynamic list from database based on make */ exports.MODEL = { label: 'Model', name: 'model', options: [], select: true, type: 'string', }; /* Input of number of bales for equipment */ exports.NUMBER_OF_BALES = { input: true, inputType: 'number', label: 'Number of Bales', name: 'numberOfBales', shortName: 'Bales', type: 'number', }; /* Input of number of bottoms for equipment */ exports.NUMBER_OF_BOTTOMS = { input: true, inputType: 'number', label: 'Number of Bottoms', name: 'numberOfBottoms', shortName: 'Bottoms', type: 'number', }; /* Input of number of rows for equipment */ exports.NUMBER_OF_ROWS = { input: true, inputType: 'number', label: 'Number of Rows', name: 'numberOfRows', shortName: 'Rows', type: 'number', }; /* Input of number of shanks for equipment */ exports.NUMBER_OF_SHANKS = { input: true, inputType: 'number', label: 'Number of Shanks', name: 'numberOfShanks', shortName: 'Shanks', type: 'number', }; /* Input of price for equipment */ exports.PRICE = { input: true, inputType: 'number', label: 'Price', name: 'price', type: 'number', }; /* Switch if equipment has powerfold bin */ exports.POWERFOLD_BIN = { label: 'Powerfold Bin', name: 'powerfoldBin', switch: true, type: 'boolean', }; /* Select of rear PTO Options: Yes, No */ exports.REAR_PTO = { label: 'Rear PTO', name: 'rearPTO', options: [ { name: 'No', value: 0, }, { name: 'Yes', value: 1, }, ], select: true, type: 'number', }; /* Select of rear tire types Options: Singles, Duals */ exports.REAR_TIRES = { label: 'Rear Tires', name: 'rearTires', options: [ { name: 'Singles', value: 1, }, { name: 'Duals', value: 2, }, { name: 'Triples', value: 3, }, { name: 'Tracks', value: 4, }, ], select: true, type: 'string', }; /* Switch if equipment has row cleaners */ exports.ROW_CLEANERS = { label: 'Row Cleaners', name: 'rowCleaners', switch: true, type: 'boolean', }; /* Input of separator hours for equipment */ exports.SEPARATOR_HOURS = { input: true, inputType: 'number', label: 'Separator Hours', name: 'separatorHours', shortName: 'Sep Hrs', type: 'number', }; /* Input of serial number for equipment */ exports.SERIAL = { input: true, inputType: 'string', label: 'Serial No.', name: 'serial', type: 'string', }; /* Input of spacing for equipment */ exports.SPACING = { input: true, inputType: 'number', label: 'Spacing', name: 'spacing', shortName: 'In', type: 'number', unitOptions: [units.INCHES], }; /* Switch if equipment has spreader */ exports.SPREADER = { label: 'Spreader', name: 'spreader', switch: true, type: 'boolean', }; /* Input of state */ exports.STATE = { input: true, inputType: 'string', label: 'State', name: 'state', type: 'string', }; /* Select of subcategories based on category for equipment Options: Dynamic list from database based on category */ exports.SUBCATEGORY = { label: 'Subcategory', name: 'subcategory', options: [], select: true, type: 'string', }; /* Switch if equipment has tag axle */ exports.TAG_AXLE = { label: 'Tag Axle', name: 'tagAxle', switch: true, type: 'boolean', }; /* Switch if equipment has three point hitch */ exports.THREE_POINT_HITCH = { label: 'Three Point Hitch', description: 'Complete with Arms & Third Link', name: 'threePointHitch', switch: true, type: 'boolean', }; /* Select of transmission for other equipment category Options: Automatic, Manual */ exports.TRANSMISSION = { label: 'Transmission', name: 'transmission', options: [ { name: 'Automatic', value: 2, }, { name: 'Manual', value: 1, }, ], select: true, type: 'string', }; /* Input of width for equipment */ exports.WIDTH = { input: true, inputType: 'number', label: 'Width', name: 'width', type: 'number', unitOptions: [units.FEET, units.INCHES], }; /* Input of year for equipment */ exports.YEAR = { input: true, inputType: 'number', label: 'Year', name: 'year', type: 'number', }; /* Input of zip code */ exports.ZIP_CODE = { input: true, inputType: 'number', label: 'Zip', name: 'zipCode', type: 'string', }; const getAllAttributes = () => [ exports.ACRES, exports.BELLY_MOWER, exports.CAB, exports.CAPACITY, exports.CATEGORY, exports.CENTER_BULK_FILL, exports.CITY, exports.CHOPPER, exports.CONDITION, exports.COMBINE_TYPE, exports.DESCRIPTION, exports.DRIVE, exports.EMISSIONS, exports.EQUIPMENT_CONDITION, exports.FRONT_TIRES, exports.HOURS, exports.HORSEPOWER, exports.LENGTH, exports.LOADER, exports.LOT_NUMBER, exports.MAKE, exports.MILES, exports.MODEL, exports.NUMBER_OF_BALES, exports.NUMBER_OF_BOTTOMS, exports.NUMBER_OF_ROWS, exports.NUMBER_OF_SHANKS, exports.PRICE, exports.POWERFOLD_BIN, exports.REAR_PTO, exports.REAR_TIRES, exports.ROW_CLEANERS, exports.SEPARATOR_HOURS, exports.SERIAL, exports.SPACING, exports.SPREADER, exports.STATE, exports.SUBCATEGORY, exports.TAG_AXLE, exports.THREE_POINT_HITCH, exports.TRANSMISSION, exports.WIDTH, exports.YEAR, exports.ZIP_CODE, ]; exports.getAllAttributes = getAllAttributes;