@thejob/schema 2.0.5 → 2.0.6

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.cjs CHANGED
@@ -61,9 +61,13 @@ __export(index_exports, {
61
61
  GroupTranslationSchema: () => GroupTranslationSchema,
62
62
  GroupVisibility: () => GroupVisibility,
63
63
  InputQuestionSchema: () => InputQuestionSchema,
64
+ JOB_TAXONOMY: () => JOB_TAXONOMY,
65
+ JobCategory: () => JobCategory,
66
+ JobIndustry: () => JobIndustry,
64
67
  JobSchema: () => JobSchema,
65
68
  JobSearchUrgency: () => JobSearchUrgency,
66
69
  JobStatus: () => JobStatus,
70
+ JobSubCategory: () => JobSubCategory,
67
71
  LocationSchema: () => LocationSchema,
68
72
  MIN_SALARY_LOWER_BOUND: () => MIN_SALARY_LOWER_BOUND,
69
73
  MIN_SALARY_UPPER_BOUND: () => MIN_SALARY_UPPER_BOUND,
@@ -97,8 +101,11 @@ __export(index_exports, {
97
101
  SupportedEmployeeCounts: () => SupportedEmployeeCounts,
98
102
  SupportedEmploymentTypes: () => SupportedEmploymentTypes,
99
103
  SupportedExperienceLevels: () => SupportedExperienceLevels,
104
+ SupportedJobCategories: () => SupportedJobCategories,
105
+ SupportedJobIndustries: () => SupportedJobIndustries,
100
106
  SupportedJobSearchUrgencies: () => SupportedJobSearchUrgencies,
101
107
  SupportedJobStatuses: () => SupportedJobStatuses,
108
+ SupportedJobSubCategories: () => SupportedJobSubCategories,
102
109
  SupportedPageStatuses: () => SupportedPageStatuses,
103
110
  SupportedPageTypes: () => SupportedPageTypes,
104
111
  SupportedPostStatuses: () => SupportedPostStatuses,
@@ -114,6 +121,7 @@ __export(index_exports, {
114
121
  SupportedUserRoles: () => SupportedUserRoles,
115
122
  SupportedUserStatuses: () => SupportedUserStatuses,
116
123
  SupportedWorkModes: () => SupportedWorkModes,
124
+ TAXONOMY_LABELS: () => TAXONOMY_LABELS,
117
125
  TermsAcceptedSchema: () => TermsAcceptedSchema,
118
126
  UserAdditionalInfoSchema: () => UserAdditionalInfoSchema,
119
127
  UserCertificationSchema: () => UserCertificationSchema,
@@ -134,8 +142,14 @@ __export(index_exports, {
134
142
  UserStatus: () => UserStatus,
135
143
  WorkExperienceSchema: () => WorkExperienceSchema,
136
144
  WorkMode: () => WorkMode,
145
+ categoryOfIndustry: () => categoryOfIndustry,
146
+ categoryOfSubCategory: () => categoryOfSubCategory,
137
147
  dateString: () => dateString,
138
- getSchemaByQuestion: () => getSchemaByQuestion
148
+ deriveIndustry: () => deriveIndustry,
149
+ getSchemaByQuestion: () => getSchemaByQuestion,
150
+ industriesOfCategory: () => industriesOfCategory,
151
+ industryOfSubCategory: () => industryOfSubCategory,
152
+ subCategoriesOfIndustry: () => subCategoriesOfIndustry
139
153
  });
140
154
  module.exports = __toCommonJS(index_exports);
141
155
 
@@ -852,6 +866,18 @@ var JobSchema = (0, import_yup18.object)({
852
866
  isNegotiable: (0, import_yup18.boolean)().nullable().optional().default(true).label("Is Negotiable")
853
867
  }).nullable().optional().label("Salary Range"),
854
868
  reports: (0, import_yup18.array)().of(UserIdAndCreatedAtSchema).optional().label("Reports"),
869
+ // Taxonomy fields are constants (see job-taxonomy.constant.ts), stored as slugs and
870
+ // translated for display. They are deliberately NOT `oneOf`-constrained here: a value
871
+ // outside the taxonomy must be DROPPED, never a reason to reject the posting. Yup
872
+ // `oneOf` fails the whole object, so one stale subCategory would cost a user their
873
+ // entire job on the create/edit form, and a single drifted LLM value would bin an
874
+ // otherwise-good enriched job.
875
+ //
876
+ // Callers sanitize instead: jobs-service's sanitizeTaxonomy() coerces unknown values
877
+ // to null / filters them out of the array before validation. Taxonomies change over
878
+ // time (values get renamed, retired, added), so stored jobs will always outlive the
879
+ // enum — being lenient here is what lets the taxonomy evolve without a migration
880
+ // gate on every write.
855
881
  category: (0, import_yup18.string)().nullable().optional().label("Category"),
856
882
  industry: (0, import_yup18.string)().nullable().optional().label("Industry"),
857
883
  subCategories: (0, import_yup18.array)().of((0, import_yup18.string)().trim().required()).nullable().optional().label("Sub Categories"),
@@ -861,6 +887,1116 @@ var JobSchema = (0, import_yup18.object)({
861
887
  featuredMarkets: (0, import_yup18.array)().of((0, import_yup18.string)().required()).optional().default([]).label("Featured markets")
862
888
  }).concat(DbDefaultSchema).noUnknown().label("Job");
863
889
 
890
+ // src/job/job-taxonomy.constant.ts
891
+ var JobCategory = /* @__PURE__ */ ((JobCategory2) => {
892
+ JobCategory2["TechnologyDataAndDigital"] = "technology_data_and_digital";
893
+ JobCategory2["HealthcareAndLifeSciences"] = "healthcare_and_life_sciences";
894
+ JobCategory2["AgricultureEnergyAndEnvironment"] = "agriculture_energy_and_environment";
895
+ JobCategory2["FinanceBankingAndLegal"] = "finance_banking_and_legal";
896
+ JobCategory2["ConstructionEngineeringAndTrades"] = "construction_engineering_and_trades";
897
+ JobCategory2["MarketingMediaAndCreative"] = "marketing_media_and_creative";
898
+ JobCategory2["LogisticsSalesAndOperations"] = "logistics_sales_and_operations";
899
+ JobCategory2["EducationAndPublicService"] = "education_and_public_service";
900
+ JobCategory2["HospitalityFoodAndTourism"] = "hospitality_food_and_tourism";
901
+ JobCategory2["ManufacturingAndProduction"] = "manufacturing_and_production";
902
+ JobCategory2["RetailAndConsumerServices"] = "retail_and_consumer_services";
903
+ JobCategory2["AutomotiveAndTransportServices"] = "automotive_and_transport_services";
904
+ return JobCategory2;
905
+ })(JobCategory || {});
906
+ var SupportedJobCategories = Object.values(JobCategory);
907
+ var JobIndustry = /* @__PURE__ */ ((JobIndustry2) => {
908
+ JobIndustry2["SoftwareAndWebDevelopment"] = "software_and_web_development";
909
+ JobIndustry2["DataAIAndAnalytics"] = "data_ai_and_analytics";
910
+ JobIndustry2["ITInfrastructureAndSecurity"] = "it_infrastructure_and_security";
911
+ JobIndustry2["ProductAndDesign"] = "product_and_design";
912
+ JobIndustry2["MedicalPractice"] = "medical_practice";
913
+ JobIndustry2["TherapyAndRehabilitation"] = "therapy_and_rehabilitation";
914
+ JobIndustry2["BioTechAndPharmaceuticals"] = "biotech_and_pharmaceuticals";
915
+ JobIndustry2["MentalHealth"] = "mental_health";
916
+ JobIndustry2["RenewableEnergy"] = "renewable_energy";
917
+ JobIndustry2["NaturalResourcesAndUtilities"] = "natural_resources_and_utilities";
918
+ JobIndustry2["AgricultureAndForestry"] = "agriculture_and_forestry";
919
+ JobIndustry2["EnvironmentalServices"] = "environmental_services";
920
+ JobIndustry2["BankingAndInvestments"] = "banking_and_investments";
921
+ JobIndustry2["FinTechAndInsurance"] = "fintech_and_insurance";
922
+ JobIndustry2["AccountingAndAudit"] = "accounting_and_audit";
923
+ JobIndustry2["LegalServices"] = "legal_services";
924
+ JobIndustry2["ArchitectureAndPlanning"] = "architecture_and_planning";
925
+ JobIndustry2["CivilAndIndustrialEngineering"] = "civil_and_industrial_engineering";
926
+ JobIndustry2["SkilledTrades"] = "skilled_trades";
927
+ JobIndustry2["MarketingAndAdvertising"] = "marketing_and_advertising";
928
+ JobIndustry2["MediaAndEntertainment"] = "media_and_entertainment";
929
+ JobIndustry2["CreativeArtsAndFashion"] = "creative_arts_and_fashion";
930
+ JobIndustry2["SupplyChainAndTransport"] = "supply_chain_and_transport";
931
+ JobIndustry2["SalesAndBusinessDevelopment"] = "sales_and_business_development";
932
+ JobIndustry2["HRAndAdmin"] = "hr_and_admin";
933
+ JobIndustry2["EducationAndTraining"] = "education_and_training";
934
+ JobIndustry2["GovernmentAndNonProfit"] = "government_and_non_profit";
935
+ JobIndustry2["FoodAndBeverageService"] = "food_and_beverage_service";
936
+ JobIndustry2["AccommodationAndTravel"] = "accommodation_and_travel";
937
+ JobIndustry2["ProductionAndAssembly"] = "production_and_assembly";
938
+ JobIndustry2["QualityAndProcess"] = "quality_and_process";
939
+ JobIndustry2["RetailOperations"] = "retail_operations";
940
+ JobIndustry2["CustomerService"] = "customer_service";
941
+ JobIndustry2["VehicleServiceAndRepair"] = "vehicle_service_and_repair";
942
+ JobIndustry2["DrivingAndTransport"] = "driving_and_transport";
943
+ return JobIndustry2;
944
+ })(JobIndustry || {});
945
+ var SupportedJobIndustries = Object.values(JobIndustry);
946
+ var JobSubCategory = /* @__PURE__ */ ((JobSubCategory2) => {
947
+ JobSubCategory2["Frontend"] = "frontend";
948
+ JobSubCategory2["Backend"] = "backend";
949
+ JobSubCategory2["FullStack"] = "full_stack";
950
+ JobSubCategory2["MobileAppDev"] = "mobile_app_dev";
951
+ JobSubCategory2["GameDevelopment"] = "game_development";
952
+ JobSubCategory2["EmbeddedSystems"] = "embedded_systems";
953
+ JobSubCategory2["QAAndTesting"] = "qa_and_testing";
954
+ JobSubCategory2["SoftwareEngineering"] = "software_engineering";
955
+ JobSubCategory2["WebDevelopment"] = "web_development";
956
+ JobSubCategory2["SoftwareArchitecture"] = "software_architecture";
957
+ JobSubCategory2["DataScience"] = "data_science";
958
+ JobSubCategory2["MachineLearning"] = "machine_learning";
959
+ JobSubCategory2["ArtificialIntelligence"] = "artificial_intelligence";
960
+ JobSubCategory2["BusinessIntelligence"] = "business_intelligence";
961
+ JobSubCategory2["DataEngineering"] = "data_engineering";
962
+ JobSubCategory2["DataVisualization"] = "data_visualization";
963
+ JobSubCategory2["DataAnalysis"] = "data_analysis";
964
+ JobSubCategory2["DeepLearning"] = "deep_learning";
965
+ JobSubCategory2["Cybersecurity"] = "cybersecurity";
966
+ JobSubCategory2["CloudEngineering"] = "cloud_engineering";
967
+ JobSubCategory2["DevOps"] = "devops";
968
+ JobSubCategory2["NetworkAdministration"] = "network_administration";
969
+ JobSubCategory2["SystemsEngineering"] = "systems_engineering";
970
+ JobSubCategory2["DatabaseAdministration"] = "database_administration";
971
+ JobSubCategory2["ITSupport"] = "it_support";
972
+ JobSubCategory2["TechnicalSupport"] = "technical_support";
973
+ JobSubCategory2["SiteReliabilityEngineering"] = "site_reliability_engineering";
974
+ JobSubCategory2["ProductManagement"] = "product_management";
975
+ JobSubCategory2["UIUXDesign"] = "ui_ux_design";
976
+ JobSubCategory2["UserResearch"] = "user_research";
977
+ JobSubCategory2["InteractionDesign"] = "interaction_design";
978
+ JobSubCategory2["TechnicalWriting"] = "technical_writing";
979
+ JobSubCategory2["ProductMarketing"] = "product_marketing";
980
+ JobSubCategory2["BusinessAnalysis"] = "business_analysis";
981
+ JobSubCategory2["ProjectManagement"] = "project_management";
982
+ JobSubCategory2["ProgramManagement"] = "program_management";
983
+ JobSubCategory2["Nursing"] = "nursing";
984
+ JobSubCategory2["GeneralPractice"] = "general_practice";
985
+ JobSubCategory2["Surgery"] = "surgery";
986
+ JobSubCategory2["Pediatrics"] = "pediatrics";
987
+ JobSubCategory2["EmergencyMedicine"] = "emergency_medicine";
988
+ JobSubCategory2["Radiology"] = "radiology";
989
+ JobSubCategory2["Anesthesiology"] = "anesthesiology";
990
+ JobSubCategory2["Geriatrics"] = "geriatrics";
991
+ JobSubCategory2["Oncology"] = "oncology";
992
+ JobSubCategory2["Dentistry"] = "dentistry";
993
+ JobSubCategory2["DentalHygiene"] = "dental_hygiene";
994
+ JobSubCategory2["MedicalSecretary"] = "medical_secretary";
995
+ JobSubCategory2["Veterinary"] = "veterinary";
996
+ JobSubCategory2["PhysicalTherapy"] = "physical_therapy";
997
+ JobSubCategory2["OccupationalTherapy"] = "occupational_therapy";
998
+ JobSubCategory2["SpeechPathology"] = "speech_pathology";
999
+ JobSubCategory2["RespiratoryTherapy"] = "respiratory_therapy";
1000
+ JobSubCategory2["ElderlyCare"] = "elderly_care";
1001
+ JobSubCategory2["DisabilitySupport"] = "disability_support";
1002
+ JobSubCategory2["ClinicalResearch"] = "clinical_research";
1003
+ JobSubCategory2["DrugDevelopment"] = "drug_development";
1004
+ JobSubCategory2["Bioinformatics"] = "bioinformatics";
1005
+ JobSubCategory2["Microbiology"] = "microbiology";
1006
+ JobSubCategory2["Pharmacology"] = "pharmacology";
1007
+ JobSubCategory2["LaboratoryTech"] = "laboratory_tech";
1008
+ JobSubCategory2["Psychology"] = "psychology";
1009
+ JobSubCategory2["Counseling"] = "counseling";
1010
+ JobSubCategory2["Psychiatry"] = "psychiatry";
1011
+ JobSubCategory2["SocialWork"] = "social_work";
1012
+ JobSubCategory2["AddictionRecovery"] = "addiction_recovery";
1013
+ JobSubCategory2["ChildWelfare"] = "child_welfare";
1014
+ JobSubCategory2["SolarEnergy"] = "solar_energy";
1015
+ JobSubCategory2["WindPower"] = "wind_power";
1016
+ JobSubCategory2["Hydroelectric"] = "hydroelectric";
1017
+ JobSubCategory2["BatteryAndStorageTech"] = "battery_and_storage_tech";
1018
+ JobSubCategory2["Geothermal"] = "geothermal";
1019
+ JobSubCategory2["Biofuels"] = "biofuels";
1020
+ JobSubCategory2["OilAndGas"] = "oil_and_gas";
1021
+ JobSubCategory2["MiningAndGeology"] = "mining_and_geology";
1022
+ JobSubCategory2["NuclearEnergy"] = "nuclear_energy";
1023
+ JobSubCategory2["WaterManagement"] = "water_management";
1024
+ JobSubCategory2["ElectricalGridOperations"] = "electrical_grid_operations";
1025
+ JobSubCategory2["AgriTech"] = "agri_tech";
1026
+ JobSubCategory2["Horticulture"] = "horticulture";
1027
+ JobSubCategory2["LivestockManagement"] = "livestock_management";
1028
+ JobSubCategory2["Forestry"] = "forestry";
1029
+ JobSubCategory2["FisheriesAndAquaculture"] = "fisheries_and_aquaculture";
1030
+ JobSubCategory2["SoilScience"] = "soil_science";
1031
+ JobSubCategory2["SustainabilityConsulting"] = "sustainability_consulting";
1032
+ JobSubCategory2["WasteManagement"] = "waste_management";
1033
+ JobSubCategory2["WildlifeConservation"] = "wildlife_conservation";
1034
+ JobSubCategory2["CarbonAccounting"] = "carbon_accounting";
1035
+ JobSubCategory2["Ecology"] = "ecology";
1036
+ JobSubCategory2["OccupationalHealthAndSafety"] = "occupational_health_and_safety";
1037
+ JobSubCategory2["Sustainability"] = "sustainability";
1038
+ JobSubCategory2["InvestmentBanking"] = "investment_banking";
1039
+ JobSubCategory2["CorporateFinance"] = "corporate_finance";
1040
+ JobSubCategory2["WealthManagement"] = "wealth_management";
1041
+ JobSubCategory2["VentureCapital"] = "venture_capital";
1042
+ JobSubCategory2["AssetManagement"] = "asset_management";
1043
+ JobSubCategory2["FinancialAnalysis"] = "financial_analysis";
1044
+ JobSubCategory2["FinancialPlanning"] = "financial_planning";
1045
+ JobSubCategory2["RiskManagement"] = "risk_management";
1046
+ JobSubCategory2["CreditAnalysis"] = "credit_analysis";
1047
+ JobSubCategory2["CryptocurrencyAndWeb3"] = "cryptocurrency_and_web3";
1048
+ JobSubCategory2["DigitalPayments"] = "digital_payments";
1049
+ JobSubCategory2["ActuarialScience"] = "actuarial_science";
1050
+ JobSubCategory2["InsuranceUnderwriting"] = "insurance_underwriting";
1051
+ JobSubCategory2["ClaimsAdjustment"] = "claims_adjustment";
1052
+ JobSubCategory2["PublicAccounting"] = "public_accounting";
1053
+ JobSubCategory2["Taxation"] = "taxation";
1054
+ JobSubCategory2["ForensicAccounting"] = "forensic_accounting";
1055
+ JobSubCategory2["AuditAndAssurance"] = "audit_and_assurance";
1056
+ JobSubCategory2["Bookkeeping"] = "bookkeeping";
1057
+ JobSubCategory2["AccountsPayable"] = "accounts_payable";
1058
+ JobSubCategory2["AccountsReceivable"] = "accounts_receivable";
1059
+ JobSubCategory2["Payroll"] = "payroll";
1060
+ JobSubCategory2["Collections"] = "collections";
1061
+ JobSubCategory2["CorporateLaw"] = "corporate_law";
1062
+ JobSubCategory2["Litigation"] = "litigation";
1063
+ JobSubCategory2["IntellectualProperty"] = "intellectual_property";
1064
+ JobSubCategory2["ComplianceAndRegulatory"] = "compliance_and_regulatory";
1065
+ JobSubCategory2["ParalegalServices"] = "paralegal_services";
1066
+ JobSubCategory2["Paralegal"] = "paralegal";
1067
+ JobSubCategory2["UrbanPlanning"] = "urban_planning";
1068
+ JobSubCategory2["InteriorDesign"] = "interior_design";
1069
+ JobSubCategory2["LandscapeArchitecture"] = "landscape_architecture";
1070
+ JobSubCategory2["CADBIMManagement"] = "cad_bim_management";
1071
+ JobSubCategory2["ConstructionManagement"] = "construction_management";
1072
+ JobSubCategory2["SiteSupervision"] = "site_supervision";
1073
+ JobSubCategory2["StructuralEngineering"] = "structural_engineering";
1074
+ JobSubCategory2["MechanicalEngineering"] = "mechanical_engineering";
1075
+ JobSubCategory2["ElectricalEngineering"] = "electrical_engineering";
1076
+ JobSubCategory2["RoboticsAndAutomation"] = "robotics_and_automation";
1077
+ JobSubCategory2["ChemicalEngineering"] = "chemical_engineering";
1078
+ JobSubCategory2["IndustrialEngineering"] = "industrial_engineering";
1079
+ JobSubCategory2["ProcessEngineering"] = "process_engineering";
1080
+ JobSubCategory2["Mechatronics"] = "mechatronics";
1081
+ JobSubCategory2["Electrician"] = "electrician";
1082
+ JobSubCategory2["PlumbingAndHVAC"] = "plumbing_and_hvac";
1083
+ JobSubCategory2["Carpentry"] = "carpentry";
1084
+ JobSubCategory2["Welding"] = "welding";
1085
+ JobSubCategory2["HeavyEquipmentOperation"] = "heavy_equipment_operation";
1086
+ JobSubCategory2["Masonry"] = "masonry";
1087
+ JobSubCategory2["Machining"] = "machining";
1088
+ JobSubCategory2["FacilitiesMaintenance"] = "facilities_maintenance";
1089
+ JobSubCategory2["DigitalMarketing"] = "digital_marketing";
1090
+ JobSubCategory2["SEOSEM"] = "seo_sem";
1091
+ JobSubCategory2["ContentStrategy"] = "content_strategy";
1092
+ JobSubCategory2["SocialMediaManagement"] = "social_media_management";
1093
+ JobSubCategory2["BrandManagement"] = "brand_management";
1094
+ JobSubCategory2["MarketResearch"] = "market_research";
1095
+ JobSubCategory2["MarketingStrategy"] = "marketing_strategy";
1096
+ JobSubCategory2["Journalism"] = "journalism";
1097
+ JobSubCategory2["VideoProduction"] = "video_production";
1098
+ JobSubCategory2["AnimationAndVFX"] = "animation_and_vfx";
1099
+ JobSubCategory2["AudioEngineering"] = "audio_engineering";
1100
+ JobSubCategory2["Photography"] = "photography";
1101
+ JobSubCategory2["Broadcasting"] = "broadcasting";
1102
+ JobSubCategory2["GraphicDesign"] = "graphic_design";
1103
+ JobSubCategory2["FineArts"] = "fine_arts";
1104
+ JobSubCategory2["FashionDesign"] = "fashion_design";
1105
+ JobSubCategory2["ApparelManufacturing"] = "apparel_manufacturing";
1106
+ JobSubCategory2["TextileDesign"] = "textile_design";
1107
+ JobSubCategory2["LogisticsManagement"] = "logistics_management";
1108
+ JobSubCategory2["Warehousing"] = "warehousing";
1109
+ JobSubCategory2["FleetOperations"] = "fleet_operations";
1110
+ JobSubCategory2["FreightForwarding"] = "freight_forwarding";
1111
+ JobSubCategory2["Procurement"] = "procurement";
1112
+ JobSubCategory2["Purchasing"] = "purchasing";
1113
+ JobSubCategory2["WarehouseOperations"] = "warehouse_operations";
1114
+ JobSubCategory2["FreightAndShipping"] = "freight_and_shipping";
1115
+ JobSubCategory2["EnterpriseSales"] = "enterprise_sales";
1116
+ JobSubCategory2["AccountManagement"] = "account_management";
1117
+ JobSubCategory2["RetailManagement"] = "retail_management";
1118
+ JobSubCategory2["RealEstateSales"] = "real_estate_sales";
1119
+ JobSubCategory2["CustomerSuccess"] = "customer_success";
1120
+ JobSubCategory2["SalesManagement"] = "sales_management";
1121
+ JobSubCategory2["SalesOperations"] = "sales_operations";
1122
+ JobSubCategory2["SalesSupport"] = "sales_support";
1123
+ JobSubCategory2["TechnicalSales"] = "technical_sales";
1124
+ JobSubCategory2["Recruiting"] = "recruiting";
1125
+ JobSubCategory2["CompensationAndBenefits"] = "compensation_and_benefits";
1126
+ JobSubCategory2["OfficeAdministration"] = "office_administration";
1127
+ JobSubCategory2["ExecutiveAssistance"] = "executive_assistance";
1128
+ JobSubCategory2["OrganizationalDevelopment"] = "organizational_development";
1129
+ JobSubCategory2["HROperations"] = "hr_operations";
1130
+ JobSubCategory2["TalentAcquisition"] = "talent_acquisition";
1131
+ JobSubCategory2["LearningAndDevelopment"] = "learning_and_development";
1132
+ JobSubCategory2["AdministrativeSupport"] = "administrative_support";
1133
+ JobSubCategory2["OfficeManagement"] = "office_management";
1134
+ JobSubCategory2["K12Teaching"] = "k_12_teaching";
1135
+ JobSubCategory2["HigherEducation"] = "higher_education";
1136
+ JobSubCategory2["SpecialEducation"] = "special_education";
1137
+ JobSubCategory2["ESLInstruction"] = "esl_instruction";
1138
+ JobSubCategory2["EdTech"] = "edtech";
1139
+ JobSubCategory2["CorporateTraining"] = "corporate_training";
1140
+ JobSubCategory2["PublicPolicy"] = "public_policy";
1141
+ JobSubCategory2["SocialServices"] = "social_services";
1142
+ JobSubCategory2["FundraisingAndGrants"] = "fundraising_and_grants";
1143
+ JobSubCategory2["LawEnforcement"] = "law_enforcement";
1144
+ JobSubCategory2["Military"] = "military";
1145
+ JobSubCategory2["Diplomacy"] = "diplomacy";
1146
+ JobSubCategory2["PublicAdministration"] = "public_administration";
1147
+ JobSubCategory2["RestaurantOperations"] = "restaurant_operations";
1148
+ JobSubCategory2["FoodPreparation"] = "food_preparation";
1149
+ JobSubCategory2["CulinaryArts"] = "culinary_arts";
1150
+ JobSubCategory2["BaristaAndBar"] = "barista_and_bar";
1151
+ JobSubCategory2["Catering"] = "catering";
1152
+ JobSubCategory2["FoodService"] = "food_service";
1153
+ JobSubCategory2["HotelOperations"] = "hotel_operations";
1154
+ JobSubCategory2["FrontDeskAndReception"] = "front_desk_and_reception";
1155
+ JobSubCategory2["Housekeeping"] = "housekeeping";
1156
+ JobSubCategory2["TravelAndTourism"] = "travel_and_tourism";
1157
+ JobSubCategory2["EventsAndConferences"] = "events_and_conferences";
1158
+ JobSubCategory2["Assembly"] = "assembly";
1159
+ JobSubCategory2["MachineOperation"] = "machine_operation";
1160
+ JobSubCategory2["ProductionManagement"] = "production_management";
1161
+ JobSubCategory2["ManufacturingEngineering"] = "manufacturing_engineering";
1162
+ JobSubCategory2["FoodProduction"] = "food_production";
1163
+ JobSubCategory2["Packaging"] = "packaging";
1164
+ JobSubCategory2["QualityAssurance"] = "quality_assurance";
1165
+ JobSubCategory2["QualityControl"] = "quality_control";
1166
+ JobSubCategory2["ProcessImprovement"] = "process_improvement";
1167
+ JobSubCategory2["MaintenanceAndReliability"] = "maintenance_and_reliability";
1168
+ JobSubCategory2["IndustrialSafety"] = "industrial_safety";
1169
+ JobSubCategory2["StoreManagement"] = "store_management";
1170
+ JobSubCategory2["SalesAssociate"] = "sales_associate";
1171
+ JobSubCategory2["VisualMerchandising"] = "visual_merchandising";
1172
+ JobSubCategory2["CashierAndCheckout"] = "cashier_and_checkout";
1173
+ JobSubCategory2["InventoryAndStock"] = "inventory_and_stock";
1174
+ JobSubCategory2["CustomerSupport"] = "customer_support";
1175
+ JobSubCategory2["CallCentre"] = "call_centre";
1176
+ JobSubCategory2["ClientAdvisory"] = "client_advisory";
1177
+ JobSubCategory2["ComplaintsAndEscalations"] = "complaints_and_escalations";
1178
+ JobSubCategory2["AutomotiveTechnician"] = "automotive_technician";
1179
+ JobSubCategory2["AutomotiveRepair"] = "automotive_repair";
1180
+ JobSubCategory2["HeavyVehicleMechanic"] = "heavy_vehicle_mechanic";
1181
+ JobSubCategory2["VehicleInspection"] = "vehicle_inspection";
1182
+ JobSubCategory2["AutoBodyAndPaint"] = "auto_body_and_paint";
1183
+ JobSubCategory2["TruckDriving"] = "truck_driving";
1184
+ JobSubCategory2["DeliveryAndCourier"] = "delivery_and_courier";
1185
+ JobSubCategory2["PublicTransport"] = "public_transport";
1186
+ JobSubCategory2["FleetManagement"] = "fleet_management";
1187
+ return JobSubCategory2;
1188
+ })(JobSubCategory || {});
1189
+ var SupportedJobSubCategories = Object.values(JobSubCategory);
1190
+ var JOB_TAXONOMY = [
1191
+ {
1192
+ category: "technology_data_and_digital" /* TechnologyDataAndDigital */,
1193
+ industries: [
1194
+ {
1195
+ industry: "software_and_web_development" /* SoftwareAndWebDevelopment */,
1196
+ subCategories: [
1197
+ "frontend" /* Frontend */,
1198
+ "backend" /* Backend */,
1199
+ "full_stack" /* FullStack */,
1200
+ "mobile_app_dev" /* MobileAppDev */,
1201
+ "game_development" /* GameDevelopment */,
1202
+ "embedded_systems" /* EmbeddedSystems */,
1203
+ "qa_and_testing" /* QAAndTesting */,
1204
+ "software_engineering" /* SoftwareEngineering */,
1205
+ "web_development" /* WebDevelopment */,
1206
+ "software_architecture" /* SoftwareArchitecture */
1207
+ ]
1208
+ },
1209
+ {
1210
+ industry: "data_ai_and_analytics" /* DataAIAndAnalytics */,
1211
+ subCategories: [
1212
+ "data_science" /* DataScience */,
1213
+ "machine_learning" /* MachineLearning */,
1214
+ "artificial_intelligence" /* ArtificialIntelligence */,
1215
+ "business_intelligence" /* BusinessIntelligence */,
1216
+ "data_engineering" /* DataEngineering */,
1217
+ "data_visualization" /* DataVisualization */,
1218
+ "data_analysis" /* DataAnalysis */,
1219
+ "deep_learning" /* DeepLearning */
1220
+ ]
1221
+ },
1222
+ {
1223
+ industry: "it_infrastructure_and_security" /* ITInfrastructureAndSecurity */,
1224
+ subCategories: [
1225
+ "cybersecurity" /* Cybersecurity */,
1226
+ "cloud_engineering" /* CloudEngineering */,
1227
+ "devops" /* DevOps */,
1228
+ "network_administration" /* NetworkAdministration */,
1229
+ "systems_engineering" /* SystemsEngineering */,
1230
+ "database_administration" /* DatabaseAdministration */,
1231
+ "it_support" /* ITSupport */,
1232
+ "technical_support" /* TechnicalSupport */,
1233
+ "site_reliability_engineering" /* SiteReliabilityEngineering */
1234
+ ]
1235
+ },
1236
+ {
1237
+ industry: "product_and_design" /* ProductAndDesign */,
1238
+ subCategories: [
1239
+ "product_management" /* ProductManagement */,
1240
+ "ui_ux_design" /* UIUXDesign */,
1241
+ "user_research" /* UserResearch */,
1242
+ "interaction_design" /* InteractionDesign */,
1243
+ "technical_writing" /* TechnicalWriting */,
1244
+ "product_marketing" /* ProductMarketing */,
1245
+ "business_analysis" /* BusinessAnalysis */,
1246
+ "project_management" /* ProjectManagement */,
1247
+ "program_management" /* ProgramManagement */
1248
+ ]
1249
+ }
1250
+ ]
1251
+ },
1252
+ {
1253
+ category: "healthcare_and_life_sciences" /* HealthcareAndLifeSciences */,
1254
+ industries: [
1255
+ {
1256
+ industry: "medical_practice" /* MedicalPractice */,
1257
+ subCategories: [
1258
+ "nursing" /* Nursing */,
1259
+ "general_practice" /* GeneralPractice */,
1260
+ "surgery" /* Surgery */,
1261
+ "pediatrics" /* Pediatrics */,
1262
+ "emergency_medicine" /* EmergencyMedicine */,
1263
+ "radiology" /* Radiology */,
1264
+ "anesthesiology" /* Anesthesiology */,
1265
+ "geriatrics" /* Geriatrics */,
1266
+ "oncology" /* Oncology */,
1267
+ "dentistry" /* Dentistry */,
1268
+ "dental_hygiene" /* DentalHygiene */,
1269
+ "medical_secretary" /* MedicalSecretary */,
1270
+ "veterinary" /* Veterinary */
1271
+ ]
1272
+ },
1273
+ {
1274
+ industry: "therapy_and_rehabilitation" /* TherapyAndRehabilitation */,
1275
+ subCategories: [
1276
+ "physical_therapy" /* PhysicalTherapy */,
1277
+ "occupational_therapy" /* OccupationalTherapy */,
1278
+ "speech_pathology" /* SpeechPathology */,
1279
+ "respiratory_therapy" /* RespiratoryTherapy */,
1280
+ "elderly_care" /* ElderlyCare */,
1281
+ "disability_support" /* DisabilitySupport */
1282
+ ]
1283
+ },
1284
+ {
1285
+ industry: "biotech_and_pharmaceuticals" /* BioTechAndPharmaceuticals */,
1286
+ subCategories: [
1287
+ "clinical_research" /* ClinicalResearch */,
1288
+ "drug_development" /* DrugDevelopment */,
1289
+ "bioinformatics" /* Bioinformatics */,
1290
+ "microbiology" /* Microbiology */,
1291
+ "pharmacology" /* Pharmacology */,
1292
+ "laboratory_tech" /* LaboratoryTech */
1293
+ ]
1294
+ },
1295
+ {
1296
+ industry: "mental_health" /* MentalHealth */,
1297
+ subCategories: [
1298
+ "psychology" /* Psychology */,
1299
+ "counseling" /* Counseling */,
1300
+ "psychiatry" /* Psychiatry */,
1301
+ "social_work" /* SocialWork */,
1302
+ "addiction_recovery" /* AddictionRecovery */,
1303
+ "child_welfare" /* ChildWelfare */
1304
+ ]
1305
+ }
1306
+ ]
1307
+ },
1308
+ {
1309
+ category: "agriculture_energy_and_environment" /* AgricultureEnergyAndEnvironment */,
1310
+ industries: [
1311
+ {
1312
+ industry: "renewable_energy" /* RenewableEnergy */,
1313
+ subCategories: [
1314
+ "solar_energy" /* SolarEnergy */,
1315
+ "wind_power" /* WindPower */,
1316
+ "hydroelectric" /* Hydroelectric */,
1317
+ "battery_and_storage_tech" /* BatteryAndStorageTech */,
1318
+ "geothermal" /* Geothermal */,
1319
+ "biofuels" /* Biofuels */
1320
+ ]
1321
+ },
1322
+ {
1323
+ industry: "natural_resources_and_utilities" /* NaturalResourcesAndUtilities */,
1324
+ subCategories: [
1325
+ "oil_and_gas" /* OilAndGas */,
1326
+ "mining_and_geology" /* MiningAndGeology */,
1327
+ "nuclear_energy" /* NuclearEnergy */,
1328
+ "water_management" /* WaterManagement */,
1329
+ "electrical_grid_operations" /* ElectricalGridOperations */
1330
+ ]
1331
+ },
1332
+ {
1333
+ industry: "agriculture_and_forestry" /* AgricultureAndForestry */,
1334
+ subCategories: [
1335
+ "agri_tech" /* AgriTech */,
1336
+ "horticulture" /* Horticulture */,
1337
+ "livestock_management" /* LivestockManagement */,
1338
+ "forestry" /* Forestry */,
1339
+ "fisheries_and_aquaculture" /* FisheriesAndAquaculture */,
1340
+ "soil_science" /* SoilScience */
1341
+ ]
1342
+ },
1343
+ {
1344
+ industry: "environmental_services" /* EnvironmentalServices */,
1345
+ subCategories: [
1346
+ "sustainability_consulting" /* SustainabilityConsulting */,
1347
+ "waste_management" /* WasteManagement */,
1348
+ "wildlife_conservation" /* WildlifeConservation */,
1349
+ "carbon_accounting" /* CarbonAccounting */,
1350
+ "ecology" /* Ecology */,
1351
+ "occupational_health_and_safety" /* OccupationalHealthAndSafety */,
1352
+ "sustainability" /* Sustainability */
1353
+ ]
1354
+ }
1355
+ ]
1356
+ },
1357
+ {
1358
+ category: "finance_banking_and_legal" /* FinanceBankingAndLegal */,
1359
+ industries: [
1360
+ {
1361
+ industry: "banking_and_investments" /* BankingAndInvestments */,
1362
+ subCategories: [
1363
+ "investment_banking" /* InvestmentBanking */,
1364
+ "corporate_finance" /* CorporateFinance */,
1365
+ "wealth_management" /* WealthManagement */,
1366
+ "venture_capital" /* VentureCapital */,
1367
+ "asset_management" /* AssetManagement */,
1368
+ "financial_analysis" /* FinancialAnalysis */,
1369
+ "financial_planning" /* FinancialPlanning */,
1370
+ "risk_management" /* RiskManagement */,
1371
+ "credit_analysis" /* CreditAnalysis */
1372
+ ]
1373
+ },
1374
+ {
1375
+ industry: "fintech_and_insurance" /* FinTechAndInsurance */,
1376
+ subCategories: [
1377
+ "cryptocurrency_and_web3" /* CryptocurrencyAndWeb3 */,
1378
+ "digital_payments" /* DigitalPayments */,
1379
+ "actuarial_science" /* ActuarialScience */,
1380
+ "insurance_underwriting" /* InsuranceUnderwriting */,
1381
+ "claims_adjustment" /* ClaimsAdjustment */
1382
+ ]
1383
+ },
1384
+ {
1385
+ industry: "accounting_and_audit" /* AccountingAndAudit */,
1386
+ subCategories: [
1387
+ "public_accounting" /* PublicAccounting */,
1388
+ "taxation" /* Taxation */,
1389
+ "forensic_accounting" /* ForensicAccounting */,
1390
+ "audit_and_assurance" /* AuditAndAssurance */,
1391
+ "bookkeeping" /* Bookkeeping */,
1392
+ "accounts_payable" /* AccountsPayable */,
1393
+ "accounts_receivable" /* AccountsReceivable */,
1394
+ "payroll" /* Payroll */,
1395
+ "collections" /* Collections */
1396
+ ]
1397
+ },
1398
+ {
1399
+ industry: "legal_services" /* LegalServices */,
1400
+ subCategories: [
1401
+ "corporate_law" /* CorporateLaw */,
1402
+ "litigation" /* Litigation */,
1403
+ "intellectual_property" /* IntellectualProperty */,
1404
+ "compliance_and_regulatory" /* ComplianceAndRegulatory */,
1405
+ "paralegal_services" /* ParalegalServices */,
1406
+ "paralegal" /* Paralegal */
1407
+ ]
1408
+ }
1409
+ ]
1410
+ },
1411
+ {
1412
+ category: "construction_engineering_and_trades" /* ConstructionEngineeringAndTrades */,
1413
+ industries: [
1414
+ {
1415
+ industry: "architecture_and_planning" /* ArchitectureAndPlanning */,
1416
+ subCategories: [
1417
+ "urban_planning" /* UrbanPlanning */,
1418
+ "interior_design" /* InteriorDesign */,
1419
+ "landscape_architecture" /* LandscapeArchitecture */,
1420
+ "cad_bim_management" /* CADBIMManagement */,
1421
+ "construction_management" /* ConstructionManagement */,
1422
+ "site_supervision" /* SiteSupervision */
1423
+ ]
1424
+ },
1425
+ {
1426
+ industry: "civil_and_industrial_engineering" /* CivilAndIndustrialEngineering */,
1427
+ subCategories: [
1428
+ "structural_engineering" /* StructuralEngineering */,
1429
+ "mechanical_engineering" /* MechanicalEngineering */,
1430
+ "electrical_engineering" /* ElectricalEngineering */,
1431
+ "robotics_and_automation" /* RoboticsAndAutomation */,
1432
+ "chemical_engineering" /* ChemicalEngineering */,
1433
+ "industrial_engineering" /* IndustrialEngineering */,
1434
+ "process_engineering" /* ProcessEngineering */,
1435
+ "mechatronics" /* Mechatronics */
1436
+ ]
1437
+ },
1438
+ {
1439
+ industry: "skilled_trades" /* SkilledTrades */,
1440
+ subCategories: [
1441
+ "electrician" /* Electrician */,
1442
+ "plumbing_and_hvac" /* PlumbingAndHVAC */,
1443
+ "carpentry" /* Carpentry */,
1444
+ "welding" /* Welding */,
1445
+ "heavy_equipment_operation" /* HeavyEquipmentOperation */,
1446
+ "masonry" /* Masonry */,
1447
+ "machining" /* Machining */,
1448
+ "facilities_maintenance" /* FacilitiesMaintenance */
1449
+ ]
1450
+ }
1451
+ ]
1452
+ },
1453
+ {
1454
+ category: "marketing_media_and_creative" /* MarketingMediaAndCreative */,
1455
+ industries: [
1456
+ {
1457
+ industry: "marketing_and_advertising" /* MarketingAndAdvertising */,
1458
+ subCategories: [
1459
+ "digital_marketing" /* DigitalMarketing */,
1460
+ "seo_sem" /* SEOSEM */,
1461
+ "content_strategy" /* ContentStrategy */,
1462
+ "social_media_management" /* SocialMediaManagement */,
1463
+ "brand_management" /* BrandManagement */,
1464
+ "market_research" /* MarketResearch */,
1465
+ "marketing_strategy" /* MarketingStrategy */
1466
+ ]
1467
+ },
1468
+ {
1469
+ industry: "media_and_entertainment" /* MediaAndEntertainment */,
1470
+ subCategories: [
1471
+ "journalism" /* Journalism */,
1472
+ "video_production" /* VideoProduction */,
1473
+ "animation_and_vfx" /* AnimationAndVFX */,
1474
+ "audio_engineering" /* AudioEngineering */,
1475
+ "photography" /* Photography */,
1476
+ "broadcasting" /* Broadcasting */
1477
+ ]
1478
+ },
1479
+ {
1480
+ industry: "creative_arts_and_fashion" /* CreativeArtsAndFashion */,
1481
+ subCategories: [
1482
+ "graphic_design" /* GraphicDesign */,
1483
+ "fine_arts" /* FineArts */,
1484
+ "fashion_design" /* FashionDesign */,
1485
+ "apparel_manufacturing" /* ApparelManufacturing */,
1486
+ "textile_design" /* TextileDesign */
1487
+ ]
1488
+ }
1489
+ ]
1490
+ },
1491
+ {
1492
+ category: "logistics_sales_and_operations" /* LogisticsSalesAndOperations */,
1493
+ industries: [
1494
+ {
1495
+ industry: "supply_chain_and_transport" /* SupplyChainAndTransport */,
1496
+ subCategories: [
1497
+ "logistics_management" /* LogisticsManagement */,
1498
+ "warehousing" /* Warehousing */,
1499
+ "fleet_operations" /* FleetOperations */,
1500
+ "freight_forwarding" /* FreightForwarding */,
1501
+ "procurement" /* Procurement */,
1502
+ "purchasing" /* Purchasing */,
1503
+ "warehouse_operations" /* WarehouseOperations */,
1504
+ "freight_and_shipping" /* FreightAndShipping */
1505
+ ]
1506
+ },
1507
+ {
1508
+ industry: "sales_and_business_development" /* SalesAndBusinessDevelopment */,
1509
+ subCategories: [
1510
+ "enterprise_sales" /* EnterpriseSales */,
1511
+ "account_management" /* AccountManagement */,
1512
+ "retail_management" /* RetailManagement */,
1513
+ "real_estate_sales" /* RealEstateSales */,
1514
+ "customer_success" /* CustomerSuccess */,
1515
+ "sales_management" /* SalesManagement */,
1516
+ "sales_operations" /* SalesOperations */,
1517
+ "sales_support" /* SalesSupport */,
1518
+ "technical_sales" /* TechnicalSales */
1519
+ ]
1520
+ },
1521
+ {
1522
+ industry: "hr_and_admin" /* HRAndAdmin */,
1523
+ subCategories: [
1524
+ "recruiting" /* Recruiting */,
1525
+ "compensation_and_benefits" /* CompensationAndBenefits */,
1526
+ "office_administration" /* OfficeAdministration */,
1527
+ "executive_assistance" /* ExecutiveAssistance */,
1528
+ "organizational_development" /* OrganizationalDevelopment */,
1529
+ "hr_operations" /* HROperations */,
1530
+ "talent_acquisition" /* TalentAcquisition */,
1531
+ "learning_and_development" /* LearningAndDevelopment */,
1532
+ "administrative_support" /* AdministrativeSupport */,
1533
+ "office_management" /* OfficeManagement */
1534
+ ]
1535
+ }
1536
+ ]
1537
+ },
1538
+ {
1539
+ category: "education_and_public_service" /* EducationAndPublicService */,
1540
+ industries: [
1541
+ {
1542
+ industry: "education_and_training" /* EducationAndTraining */,
1543
+ subCategories: [
1544
+ "k_12_teaching" /* K12Teaching */,
1545
+ "higher_education" /* HigherEducation */,
1546
+ "special_education" /* SpecialEducation */,
1547
+ "esl_instruction" /* ESLInstruction */,
1548
+ "edtech" /* EdTech */,
1549
+ "corporate_training" /* CorporateTraining */
1550
+ ]
1551
+ },
1552
+ {
1553
+ industry: "government_and_non_profit" /* GovernmentAndNonProfit */,
1554
+ subCategories: [
1555
+ "public_policy" /* PublicPolicy */,
1556
+ "social_services" /* SocialServices */,
1557
+ "fundraising_and_grants" /* FundraisingAndGrants */,
1558
+ "law_enforcement" /* LawEnforcement */,
1559
+ "military" /* Military */,
1560
+ "diplomacy" /* Diplomacy */,
1561
+ "public_administration" /* PublicAdministration */
1562
+ ]
1563
+ }
1564
+ ]
1565
+ },
1566
+ {
1567
+ category: "hospitality_food_and_tourism" /* HospitalityFoodAndTourism */,
1568
+ industries: [
1569
+ {
1570
+ industry: "food_and_beverage_service" /* FoodAndBeverageService */,
1571
+ subCategories: [
1572
+ "restaurant_operations" /* RestaurantOperations */,
1573
+ "food_preparation" /* FoodPreparation */,
1574
+ "culinary_arts" /* CulinaryArts */,
1575
+ "barista_and_bar" /* BaristaAndBar */,
1576
+ "catering" /* Catering */,
1577
+ "food_service" /* FoodService */
1578
+ ]
1579
+ },
1580
+ {
1581
+ industry: "accommodation_and_travel" /* AccommodationAndTravel */,
1582
+ subCategories: [
1583
+ "hotel_operations" /* HotelOperations */,
1584
+ "front_desk_and_reception" /* FrontDeskAndReception */,
1585
+ "housekeeping" /* Housekeeping */,
1586
+ "travel_and_tourism" /* TravelAndTourism */,
1587
+ "events_and_conferences" /* EventsAndConferences */
1588
+ ]
1589
+ }
1590
+ ]
1591
+ },
1592
+ {
1593
+ category: "manufacturing_and_production" /* ManufacturingAndProduction */,
1594
+ industries: [
1595
+ {
1596
+ industry: "production_and_assembly" /* ProductionAndAssembly */,
1597
+ subCategories: [
1598
+ "assembly" /* Assembly */,
1599
+ "machine_operation" /* MachineOperation */,
1600
+ "production_management" /* ProductionManagement */,
1601
+ "manufacturing_engineering" /* ManufacturingEngineering */,
1602
+ "food_production" /* FoodProduction */,
1603
+ "packaging" /* Packaging */
1604
+ ]
1605
+ },
1606
+ {
1607
+ industry: "quality_and_process" /* QualityAndProcess */,
1608
+ subCategories: [
1609
+ "quality_assurance" /* QualityAssurance */,
1610
+ "quality_control" /* QualityControl */,
1611
+ "process_improvement" /* ProcessImprovement */,
1612
+ "maintenance_and_reliability" /* MaintenanceAndReliability */,
1613
+ "industrial_safety" /* IndustrialSafety */
1614
+ ]
1615
+ }
1616
+ ]
1617
+ },
1618
+ {
1619
+ category: "retail_and_consumer_services" /* RetailAndConsumerServices */,
1620
+ industries: [
1621
+ {
1622
+ industry: "retail_operations" /* RetailOperations */,
1623
+ subCategories: [
1624
+ "store_management" /* StoreManagement */,
1625
+ "sales_associate" /* SalesAssociate */,
1626
+ "visual_merchandising" /* VisualMerchandising */,
1627
+ "cashier_and_checkout" /* CashierAndCheckout */,
1628
+ "inventory_and_stock" /* InventoryAndStock */
1629
+ ]
1630
+ },
1631
+ {
1632
+ industry: "customer_service" /* CustomerService */,
1633
+ subCategories: [
1634
+ "customer_support" /* CustomerSupport */,
1635
+ "call_centre" /* CallCentre */,
1636
+ "client_advisory" /* ClientAdvisory */,
1637
+ "complaints_and_escalations" /* ComplaintsAndEscalations */
1638
+ ]
1639
+ }
1640
+ ]
1641
+ },
1642
+ {
1643
+ category: "automotive_and_transport_services" /* AutomotiveAndTransportServices */,
1644
+ industries: [
1645
+ {
1646
+ industry: "vehicle_service_and_repair" /* VehicleServiceAndRepair */,
1647
+ subCategories: [
1648
+ "automotive_technician" /* AutomotiveTechnician */,
1649
+ "automotive_repair" /* AutomotiveRepair */,
1650
+ "heavy_vehicle_mechanic" /* HeavyVehicleMechanic */,
1651
+ "vehicle_inspection" /* VehicleInspection */,
1652
+ "auto_body_and_paint" /* AutoBodyAndPaint */
1653
+ ]
1654
+ },
1655
+ {
1656
+ industry: "driving_and_transport" /* DrivingAndTransport */,
1657
+ subCategories: [
1658
+ "truck_driving" /* TruckDriving */,
1659
+ "delivery_and_courier" /* DeliveryAndCourier */,
1660
+ "public_transport" /* PublicTransport */,
1661
+ "fleet_management" /* FleetManagement */
1662
+ ]
1663
+ }
1664
+ ]
1665
+ }
1666
+ ];
1667
+ var TAXONOMY_LABELS = {
1668
+ "technology_data_and_digital": "Technology, Data & Digital",
1669
+ "healthcare_and_life_sciences": "Healthcare & Life Sciences",
1670
+ "agriculture_energy_and_environment": "Agriculture, Energy & Environment",
1671
+ "finance_banking_and_legal": "Finance, Banking & Legal",
1672
+ "construction_engineering_and_trades": "Construction, Engineering & Trades",
1673
+ "marketing_media_and_creative": "Marketing, Media & Creative",
1674
+ "logistics_sales_and_operations": "Logistics, Sales & Operations",
1675
+ "education_and_public_service": "Education & Public Service",
1676
+ "hospitality_food_and_tourism": "Hospitality, Food & Tourism",
1677
+ "manufacturing_and_production": "Manufacturing & Production",
1678
+ "retail_and_consumer_services": "Retail & Consumer Services",
1679
+ "automotive_and_transport_services": "Automotive & Transport Services",
1680
+ "software_and_web_development": "Software & Web Development",
1681
+ "data_ai_and_analytics": "Data, AI & Analytics",
1682
+ "it_infrastructure_and_security": "IT Infrastructure & Security",
1683
+ "product_and_design": "Product & Design",
1684
+ "medical_practice": "Medical Practice",
1685
+ "therapy_and_rehabilitation": "Therapy & Rehabilitation",
1686
+ "biotech_and_pharmaceuticals": "BioTech & Pharmaceuticals",
1687
+ "mental_health": "Mental Health",
1688
+ "renewable_energy": "Renewable Energy",
1689
+ "natural_resources_and_utilities": "Natural Resources & Utilities",
1690
+ "agriculture_and_forestry": "Agriculture & Forestry",
1691
+ "environmental_services": "Environmental Services",
1692
+ "banking_and_investments": "Banking & Investments",
1693
+ "fintech_and_insurance": "FinTech & Insurance",
1694
+ "accounting_and_audit": "Accounting & Audit",
1695
+ "legal_services": "Legal Services",
1696
+ "architecture_and_planning": "Architecture & Planning",
1697
+ "civil_and_industrial_engineering": "Civil & Industrial Engineering",
1698
+ "skilled_trades": "Skilled Trades",
1699
+ "marketing_and_advertising": "Marketing & Advertising",
1700
+ "media_and_entertainment": "Media & Entertainment",
1701
+ "creative_arts_and_fashion": "Creative Arts & Fashion",
1702
+ "supply_chain_and_transport": "Supply Chain & Transport",
1703
+ "sales_and_business_development": "Sales & Business Development",
1704
+ "hr_and_admin": "HR & Admin",
1705
+ "education_and_training": "Education & Training",
1706
+ "government_and_non_profit": "Government & Non-Profit",
1707
+ "food_and_beverage_service": "Food & Beverage Service",
1708
+ "accommodation_and_travel": "Accommodation & Travel",
1709
+ "production_and_assembly": "Production & Assembly",
1710
+ "quality_and_process": "Quality & Process",
1711
+ "retail_operations": "Retail Operations",
1712
+ "customer_service": "Customer Service",
1713
+ "vehicle_service_and_repair": "Vehicle Service & Repair",
1714
+ "driving_and_transport": "Driving & Transport",
1715
+ "frontend": "Frontend",
1716
+ "backend": "Backend",
1717
+ "full_stack": "Full Stack",
1718
+ "mobile_app_dev": "Mobile App Dev",
1719
+ "game_development": "Game Development",
1720
+ "embedded_systems": "Embedded Systems",
1721
+ "qa_and_testing": "QA & Testing",
1722
+ "software_engineering": "Software Engineering",
1723
+ "web_development": "Web Development",
1724
+ "software_architecture": "Software Architecture",
1725
+ "data_science": "Data Science",
1726
+ "machine_learning": "Machine Learning",
1727
+ "artificial_intelligence": "Artificial Intelligence",
1728
+ "business_intelligence": "Business Intelligence",
1729
+ "data_engineering": "Data Engineering",
1730
+ "data_visualization": "Data Visualization",
1731
+ "data_analysis": "Data Analysis",
1732
+ "deep_learning": "Deep Learning",
1733
+ "cybersecurity": "Cybersecurity",
1734
+ "cloud_engineering": "Cloud Engineering",
1735
+ "devops": "DevOps",
1736
+ "network_administration": "Network Administration",
1737
+ "systems_engineering": "Systems Engineering",
1738
+ "database_administration": "Database Administration",
1739
+ "it_support": "IT Support",
1740
+ "technical_support": "Technical Support",
1741
+ "site_reliability_engineering": "Site Reliability Engineering",
1742
+ "product_management": "Product Management",
1743
+ "ui_ux_design": "UI/UX Design",
1744
+ "user_research": "User Research",
1745
+ "interaction_design": "Interaction Design",
1746
+ "technical_writing": "Technical Writing",
1747
+ "product_marketing": "Product Marketing",
1748
+ "business_analysis": "Business Analysis",
1749
+ "project_management": "Project Management",
1750
+ "program_management": "Program Management",
1751
+ "nursing": "Nursing",
1752
+ "general_practice": "General Practice",
1753
+ "surgery": "Surgery",
1754
+ "pediatrics": "Pediatrics",
1755
+ "emergency_medicine": "Emergency Medicine",
1756
+ "radiology": "Radiology",
1757
+ "anesthesiology": "Anesthesiology",
1758
+ "geriatrics": "Geriatrics",
1759
+ "oncology": "Oncology",
1760
+ "dentistry": "Dentistry",
1761
+ "dental_hygiene": "Dental Hygiene",
1762
+ "medical_secretary": "Medical Secretary",
1763
+ "veterinary": "Veterinary",
1764
+ "physical_therapy": "Physical Therapy",
1765
+ "occupational_therapy": "Occupational Therapy",
1766
+ "speech_pathology": "Speech Pathology",
1767
+ "respiratory_therapy": "Respiratory Therapy",
1768
+ "elderly_care": "Elderly Care",
1769
+ "disability_support": "Disability Support",
1770
+ "clinical_research": "Clinical Research",
1771
+ "drug_development": "Drug Development",
1772
+ "bioinformatics": "Bioinformatics",
1773
+ "microbiology": "Microbiology",
1774
+ "pharmacology": "Pharmacology",
1775
+ "laboratory_tech": "Laboratory Tech",
1776
+ "psychology": "Psychology",
1777
+ "counseling": "Counseling",
1778
+ "psychiatry": "Psychiatry",
1779
+ "social_work": "Social Work",
1780
+ "addiction_recovery": "Addiction Recovery",
1781
+ "child_welfare": "Child Welfare",
1782
+ "solar_energy": "Solar Energy",
1783
+ "wind_power": "Wind Power",
1784
+ "hydroelectric": "Hydroelectric",
1785
+ "battery_and_storage_tech": "Battery & Storage Tech",
1786
+ "geothermal": "Geothermal",
1787
+ "biofuels": "Biofuels",
1788
+ "oil_and_gas": "Oil & Gas",
1789
+ "mining_and_geology": "Mining & Geology",
1790
+ "nuclear_energy": "Nuclear Energy",
1791
+ "water_management": "Water Management",
1792
+ "electrical_grid_operations": "Electrical Grid Operations",
1793
+ "agri_tech": "Agri-Tech",
1794
+ "horticulture": "Horticulture",
1795
+ "livestock_management": "Livestock Management",
1796
+ "forestry": "Forestry",
1797
+ "fisheries_and_aquaculture": "Fisheries & Aquaculture",
1798
+ "soil_science": "Soil Science",
1799
+ "sustainability_consulting": "Sustainability Consulting",
1800
+ "waste_management": "Waste Management",
1801
+ "wildlife_conservation": "Wildlife Conservation",
1802
+ "carbon_accounting": "Carbon Accounting",
1803
+ "ecology": "Ecology",
1804
+ "occupational_health_and_safety": "Occupational Health & Safety",
1805
+ "sustainability": "Sustainability",
1806
+ "investment_banking": "Investment Banking",
1807
+ "corporate_finance": "Corporate Finance",
1808
+ "wealth_management": "Wealth Management",
1809
+ "venture_capital": "Venture Capital",
1810
+ "asset_management": "Asset Management",
1811
+ "financial_analysis": "Financial Analysis",
1812
+ "financial_planning": "Financial Planning",
1813
+ "risk_management": "Risk Management",
1814
+ "credit_analysis": "Credit Analysis",
1815
+ "cryptocurrency_and_web3": "Cryptocurrency & Web3",
1816
+ "digital_payments": "Digital Payments",
1817
+ "actuarial_science": "Actuarial Science",
1818
+ "insurance_underwriting": "Insurance Underwriting",
1819
+ "claims_adjustment": "Claims Adjustment",
1820
+ "public_accounting": "Public Accounting",
1821
+ "taxation": "Taxation",
1822
+ "forensic_accounting": "Forensic Accounting",
1823
+ "audit_and_assurance": "Audit & Assurance",
1824
+ "bookkeeping": "Bookkeeping",
1825
+ "accounts_payable": "Accounts Payable",
1826
+ "accounts_receivable": "Accounts Receivable",
1827
+ "payroll": "Payroll",
1828
+ "collections": "Collections",
1829
+ "corporate_law": "Corporate Law",
1830
+ "litigation": "Litigation",
1831
+ "intellectual_property": "Intellectual Property",
1832
+ "compliance_and_regulatory": "Compliance & Regulatory",
1833
+ "paralegal_services": "Paralegal Services",
1834
+ "paralegal": "Paralegal",
1835
+ "urban_planning": "Urban Planning",
1836
+ "interior_design": "Interior Design",
1837
+ "landscape_architecture": "Landscape Architecture",
1838
+ "cad_bim_management": "CAD/BIM Management",
1839
+ "construction_management": "Construction Management",
1840
+ "site_supervision": "Site Supervision",
1841
+ "structural_engineering": "Structural Engineering",
1842
+ "mechanical_engineering": "Mechanical Engineering",
1843
+ "electrical_engineering": "Electrical Engineering",
1844
+ "robotics_and_automation": "Robotics & Automation",
1845
+ "chemical_engineering": "Chemical Engineering",
1846
+ "industrial_engineering": "Industrial Engineering",
1847
+ "process_engineering": "Process Engineering",
1848
+ "mechatronics": "Mechatronics",
1849
+ "electrician": "Electrician",
1850
+ "plumbing_and_hvac": "Plumbing & HVAC",
1851
+ "carpentry": "Carpentry",
1852
+ "welding": "Welding",
1853
+ "heavy_equipment_operation": "Heavy Equipment Operation",
1854
+ "masonry": "Masonry",
1855
+ "machining": "Machining",
1856
+ "facilities_maintenance": "Facilities Maintenance",
1857
+ "digital_marketing": "Digital Marketing",
1858
+ "seo_sem": "SEO/SEM",
1859
+ "content_strategy": "Content Strategy",
1860
+ "social_media_management": "Social Media Management",
1861
+ "brand_management": "Brand Management",
1862
+ "market_research": "Market Research",
1863
+ "marketing_strategy": "Marketing Strategy",
1864
+ "journalism": "Journalism",
1865
+ "video_production": "Video Production",
1866
+ "animation_and_vfx": "Animation & VFX",
1867
+ "audio_engineering": "Audio Engineering",
1868
+ "photography": "Photography",
1869
+ "broadcasting": "Broadcasting",
1870
+ "graphic_design": "Graphic Design",
1871
+ "fine_arts": "Fine Arts",
1872
+ "fashion_design": "Fashion Design",
1873
+ "apparel_manufacturing": "Apparel Manufacturing",
1874
+ "textile_design": "Textile Design",
1875
+ "logistics_management": "Logistics Management",
1876
+ "warehousing": "Warehousing",
1877
+ "fleet_operations": "Fleet Operations",
1878
+ "freight_forwarding": "Freight Forwarding",
1879
+ "procurement": "Procurement",
1880
+ "purchasing": "Purchasing",
1881
+ "warehouse_operations": "Warehouse Operations",
1882
+ "freight_and_shipping": "Freight & Shipping",
1883
+ "enterprise_sales": "Enterprise Sales",
1884
+ "account_management": "Account Management",
1885
+ "retail_management": "Retail Management",
1886
+ "real_estate_sales": "Real Estate Sales",
1887
+ "customer_success": "Customer Success",
1888
+ "sales_management": "Sales Management",
1889
+ "sales_operations": "Sales Operations",
1890
+ "sales_support": "Sales Support",
1891
+ "technical_sales": "Technical Sales",
1892
+ "recruiting": "Recruiting",
1893
+ "compensation_and_benefits": "Compensation & Benefits",
1894
+ "office_administration": "Office Administration",
1895
+ "executive_assistance": "Executive Assistance",
1896
+ "organizational_development": "Organizational Development",
1897
+ "hr_operations": "HR Operations",
1898
+ "talent_acquisition": "Talent Acquisition",
1899
+ "learning_and_development": "Learning & Development",
1900
+ "administrative_support": "Administrative Support",
1901
+ "office_management": "Office Management",
1902
+ "k_12_teaching": "K-12 Teaching",
1903
+ "higher_education": "Higher Education",
1904
+ "special_education": "Special Education",
1905
+ "esl_instruction": "ESL Instruction",
1906
+ "edtech": "EdTech",
1907
+ "corporate_training": "Corporate Training",
1908
+ "public_policy": "Public Policy",
1909
+ "social_services": "Social Services",
1910
+ "fundraising_and_grants": "Fundraising & Grants",
1911
+ "law_enforcement": "Law Enforcement",
1912
+ "military": "Military",
1913
+ "diplomacy": "Diplomacy",
1914
+ "public_administration": "Public Administration",
1915
+ "restaurant_operations": "Restaurant Operations",
1916
+ "food_preparation": "Food Preparation",
1917
+ "culinary_arts": "Culinary Arts",
1918
+ "barista_and_bar": "Barista & Bar",
1919
+ "catering": "Catering",
1920
+ "food_service": "Food Service",
1921
+ "hotel_operations": "Hotel Operations",
1922
+ "front_desk_and_reception": "Front Desk & Reception",
1923
+ "housekeeping": "Housekeeping",
1924
+ "travel_and_tourism": "Travel & Tourism",
1925
+ "events_and_conferences": "Events & Conferences",
1926
+ "assembly": "Assembly",
1927
+ "machine_operation": "Machine Operation",
1928
+ "production_management": "Production Management",
1929
+ "manufacturing_engineering": "Manufacturing Engineering",
1930
+ "food_production": "Food Production",
1931
+ "packaging": "Packaging",
1932
+ "quality_assurance": "Quality Assurance",
1933
+ "quality_control": "Quality Control",
1934
+ "process_improvement": "Process Improvement",
1935
+ "maintenance_and_reliability": "Maintenance & Reliability",
1936
+ "industrial_safety": "Industrial Safety",
1937
+ "store_management": "Store Management",
1938
+ "sales_associate": "Sales Associate",
1939
+ "visual_merchandising": "Visual Merchandising",
1940
+ "cashier_and_checkout": "Cashier & Checkout",
1941
+ "inventory_and_stock": "Inventory & Stock",
1942
+ "customer_support": "Customer Support",
1943
+ "call_centre": "Call Centre",
1944
+ "client_advisory": "Client Advisory",
1945
+ "complaints_and_escalations": "Complaints & Escalations",
1946
+ "automotive_technician": "Automotive Technician",
1947
+ "automotive_repair": "Automotive Repair",
1948
+ "heavy_vehicle_mechanic": "Heavy Vehicle Mechanic",
1949
+ "vehicle_inspection": "Vehicle Inspection",
1950
+ "auto_body_and_paint": "Auto Body & Paint",
1951
+ "truck_driving": "Truck Driving",
1952
+ "delivery_and_courier": "Delivery & Courier",
1953
+ "public_transport": "Public Transport",
1954
+ "fleet_management": "Fleet Management"
1955
+ };
1956
+
1957
+ // src/job/job-taxonomy.util.ts
1958
+ var INDUSTRY_OF_SUB = new Map(
1959
+ JOB_TAXONOMY.flatMap(
1960
+ (c) => c.industries.flatMap((i) => i.subCategories.map((s) => [s, i.industry]))
1961
+ )
1962
+ );
1963
+ var CATEGORY_OF_SUB = new Map(
1964
+ JOB_TAXONOMY.flatMap(
1965
+ (c) => c.industries.flatMap((i) => i.subCategories.map((s) => [s, c.category]))
1966
+ )
1967
+ );
1968
+ var CATEGORY_OF_INDUSTRY = new Map(
1969
+ JOB_TAXONOMY.flatMap((c) => c.industries.map((i) => [i.industry, c.category]))
1970
+ );
1971
+ function industryOfSubCategory(sub) {
1972
+ return INDUSTRY_OF_SUB.get(sub);
1973
+ }
1974
+ function categoryOfSubCategory(sub) {
1975
+ return CATEGORY_OF_SUB.get(sub);
1976
+ }
1977
+ function categoryOfIndustry(industry) {
1978
+ return CATEGORY_OF_INDUSTRY.get(industry);
1979
+ }
1980
+ function industriesOfCategory(category) {
1981
+ return JOB_TAXONOMY.find((c) => c.category === category)?.industries.map((i) => i.industry) ?? [];
1982
+ }
1983
+ function subCategoriesOfIndustry(industry) {
1984
+ for (const c of JOB_TAXONOMY) {
1985
+ for (const i of c.industries) if (i.industry === industry) return i.subCategories;
1986
+ }
1987
+ return [];
1988
+ }
1989
+ function deriveIndustry(category, subCategories) {
1990
+ const subs = (subCategories ?? []).filter((s) => INDUSTRY_OF_SUB.has(s));
1991
+ if (subs.length === 0) return void 0;
1992
+ if (category) {
1993
+ const inCategory = subs.find((s) => CATEGORY_OF_SUB.get(s) === category);
1994
+ if (inCategory) return INDUSTRY_OF_SUB.get(inCategory);
1995
+ return void 0;
1996
+ }
1997
+ return INDUSTRY_OF_SUB.get(subs[0]);
1998
+ }
1999
+
864
2000
  // src/post/post.schema.ts
865
2001
  var import_yup19 = require("yup");
866
2002
 
@@ -1415,9 +2551,13 @@ var StudentCompletenessSchema = UserCompletenessSchema.omit([
1415
2551
  GroupTranslationSchema,
1416
2552
  GroupVisibility,
1417
2553
  InputQuestionSchema,
2554
+ JOB_TAXONOMY,
2555
+ JobCategory,
2556
+ JobIndustry,
1418
2557
  JobSchema,
1419
2558
  JobSearchUrgency,
1420
2559
  JobStatus,
2560
+ JobSubCategory,
1421
2561
  LocationSchema,
1422
2562
  MIN_SALARY_LOWER_BOUND,
1423
2563
  MIN_SALARY_UPPER_BOUND,
@@ -1451,8 +2591,11 @@ var StudentCompletenessSchema = UserCompletenessSchema.omit([
1451
2591
  SupportedEmployeeCounts,
1452
2592
  SupportedEmploymentTypes,
1453
2593
  SupportedExperienceLevels,
2594
+ SupportedJobCategories,
2595
+ SupportedJobIndustries,
1454
2596
  SupportedJobSearchUrgencies,
1455
2597
  SupportedJobStatuses,
2598
+ SupportedJobSubCategories,
1456
2599
  SupportedPageStatuses,
1457
2600
  SupportedPageTypes,
1458
2601
  SupportedPostStatuses,
@@ -1468,6 +2611,7 @@ var StudentCompletenessSchema = UserCompletenessSchema.omit([
1468
2611
  SupportedUserRoles,
1469
2612
  SupportedUserStatuses,
1470
2613
  SupportedWorkModes,
2614
+ TAXONOMY_LABELS,
1471
2615
  TermsAcceptedSchema,
1472
2616
  UserAdditionalInfoSchema,
1473
2617
  UserCertificationSchema,
@@ -1488,6 +2632,12 @@ var StudentCompletenessSchema = UserCompletenessSchema.omit([
1488
2632
  UserStatus,
1489
2633
  WorkExperienceSchema,
1490
2634
  WorkMode,
2635
+ categoryOfIndustry,
2636
+ categoryOfSubCategory,
1491
2637
  dateString,
1492
- getSchemaByQuestion
2638
+ deriveIndustry,
2639
+ getSchemaByQuestion,
2640
+ industriesOfCategory,
2641
+ industryOfSubCategory,
2642
+ subCategoriesOfIndustry
1493
2643
  });