@jobsearch-works/firestore-models 1.0.22 → 1.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -156,8 +156,48 @@ declare namespace ClientQuestion {
156
156
  }
157
157
 
158
158
  declare namespace Vacancy {
159
- const CategoryValues: readonly ["Accounting", "Administration & Office Support", "Advertising, Arts & Media", "Banking & Financial Services", "Call Centre & Customer Service", "CEO & General Management", "Community Services & Development", "Construction", "Consulting & Strategy", "Design & Architecture", "Education & Training", "Engineering", "Farming, Animals & Conservation", "Government & Defence", "Healthcare & Medical", "Hospitality & Tourism", "Human Resources & Recruitment", "Information & Communication Technology", "Insurance & Superannuation", "Legal", "Manufacturing, Transport & Logistics", "Marketing & Communications", "Mining, Resources & Energy", "Real Estate & Property", "Retail & Consumer Products", "Sales", "Science & Technology", "Self Employment", "Sport & Recreation", "Trades & Services"];
160
- type Category = (typeof CategoryValues)[number];
159
+ /**
160
+ * Runtime constant object representing all categories.
161
+ */
162
+ const Category: {
163
+ readonly Accounting: "Accounting";
164
+ readonly AdministrationAndOfficeSupport: "Administration & Office Support";
165
+ readonly AdvertisingArtsAndMedia: "Advertising, Arts & Media";
166
+ readonly BankingAndFinancialServices: "Banking & Financial Services";
167
+ readonly CallCentreAndCustomerService: "Call Centre & Customer Service";
168
+ readonly CEOAndGeneralManagement: "CEO & General Management";
169
+ readonly CommunityServicesAndDevelopment: "Community Services & Development";
170
+ readonly Construction: "Construction";
171
+ readonly ConsultingAndStrategy: "Consulting & Strategy";
172
+ readonly DesignAndArchitecture: "Design & Architecture";
173
+ readonly EducationAndTraining: "Education & Training";
174
+ readonly Engineering: "Engineering";
175
+ readonly FarmingAnimalsAndConservation: "Farming, Animals & Conservation";
176
+ readonly GovernmentAndDefence: "Government & Defence";
177
+ readonly HealthcareAndMedical: "Healthcare & Medical";
178
+ readonly HospitalityAndTourism: "Hospitality & Tourism";
179
+ readonly HumanResourcesAndRecruitment: "Human Resources & Recruitment";
180
+ readonly InformationAndCommunicationTechnology: "Information & Communication Technology";
181
+ readonly InsuranceAndSuperannuation: "Insurance & Superannuation";
182
+ readonly Legal: "Legal";
183
+ readonly ManufacturingTransportAndLogistics: "Manufacturing, Transport & Logistics";
184
+ readonly MarketingAndCommunications: "Marketing & Communications";
185
+ readonly MiningResourcesAndEnergy: "Mining, Resources & Energy";
186
+ readonly RealEstateAndProperty: "Real Estate & Property";
187
+ readonly RetailAndConsumerProducts: "Retail & Consumer Products";
188
+ readonly Sales: "Sales";
189
+ readonly ScienceAndTechnology: "Science & Technology";
190
+ readonly SelfEmployment: "Self Employment";
191
+ readonly SportAndRecreation: "Sport & Recreation";
192
+ readonly TradesAndServices: "Trades & Services";
193
+ };
194
+ /**
195
+ * Type representing a valid category value.
196
+ */
197
+ type Category = (typeof Category)[keyof typeof Category];
198
+ /**
199
+ * Vacancy model definition.
200
+ */
161
201
  interface Model extends BaseModel {
162
202
  company: string;
163
203
  position: string;
@@ -172,10 +212,25 @@ declare namespace Vacancy {
172
212
  category: Category;
173
213
  suggestedTo?: string[];
174
214
  }
215
+ /**
216
+ * Returns the Firestore collection path for vacancies.
217
+ */
175
218
  const collection: () => string;
219
+ /**
220
+ * Returns the Firestore document path for a specific vacancy.
221
+ */
176
222
  const document: (vacancyId: string) => string;
223
+ /**
224
+ * Formats a short summary of a vacancy.
225
+ */
177
226
  const formatSummary: (vacancy: Vacancy.Model) => string;
227
+ /**
228
+ * Formats a date into a localized string.
229
+ */
178
230
  const formatDate: (date: Date | string) => string;
231
+ /**
232
+ * Creates a new Vacancy.Model with the given data.
233
+ */
179
234
  const createNew: (company: string, position: string, location: string, description: string, advertisingUrl: string, applicationUrl: string, applicationDomain: string, advertisingDomain: string, fullPageText: string, jobId: string, category: Category) => Vacancy.Model;
180
235
  }
181
236
 
package/dist/index.d.ts CHANGED
@@ -156,8 +156,48 @@ declare namespace ClientQuestion {
156
156
  }
157
157
 
158
158
  declare namespace Vacancy {
159
- const CategoryValues: readonly ["Accounting", "Administration & Office Support", "Advertising, Arts & Media", "Banking & Financial Services", "Call Centre & Customer Service", "CEO & General Management", "Community Services & Development", "Construction", "Consulting & Strategy", "Design & Architecture", "Education & Training", "Engineering", "Farming, Animals & Conservation", "Government & Defence", "Healthcare & Medical", "Hospitality & Tourism", "Human Resources & Recruitment", "Information & Communication Technology", "Insurance & Superannuation", "Legal", "Manufacturing, Transport & Logistics", "Marketing & Communications", "Mining, Resources & Energy", "Real Estate & Property", "Retail & Consumer Products", "Sales", "Science & Technology", "Self Employment", "Sport & Recreation", "Trades & Services"];
160
- type Category = (typeof CategoryValues)[number];
159
+ /**
160
+ * Runtime constant object representing all categories.
161
+ */
162
+ const Category: {
163
+ readonly Accounting: "Accounting";
164
+ readonly AdministrationAndOfficeSupport: "Administration & Office Support";
165
+ readonly AdvertisingArtsAndMedia: "Advertising, Arts & Media";
166
+ readonly BankingAndFinancialServices: "Banking & Financial Services";
167
+ readonly CallCentreAndCustomerService: "Call Centre & Customer Service";
168
+ readonly CEOAndGeneralManagement: "CEO & General Management";
169
+ readonly CommunityServicesAndDevelopment: "Community Services & Development";
170
+ readonly Construction: "Construction";
171
+ readonly ConsultingAndStrategy: "Consulting & Strategy";
172
+ readonly DesignAndArchitecture: "Design & Architecture";
173
+ readonly EducationAndTraining: "Education & Training";
174
+ readonly Engineering: "Engineering";
175
+ readonly FarmingAnimalsAndConservation: "Farming, Animals & Conservation";
176
+ readonly GovernmentAndDefence: "Government & Defence";
177
+ readonly HealthcareAndMedical: "Healthcare & Medical";
178
+ readonly HospitalityAndTourism: "Hospitality & Tourism";
179
+ readonly HumanResourcesAndRecruitment: "Human Resources & Recruitment";
180
+ readonly InformationAndCommunicationTechnology: "Information & Communication Technology";
181
+ readonly InsuranceAndSuperannuation: "Insurance & Superannuation";
182
+ readonly Legal: "Legal";
183
+ readonly ManufacturingTransportAndLogistics: "Manufacturing, Transport & Logistics";
184
+ readonly MarketingAndCommunications: "Marketing & Communications";
185
+ readonly MiningResourcesAndEnergy: "Mining, Resources & Energy";
186
+ readonly RealEstateAndProperty: "Real Estate & Property";
187
+ readonly RetailAndConsumerProducts: "Retail & Consumer Products";
188
+ readonly Sales: "Sales";
189
+ readonly ScienceAndTechnology: "Science & Technology";
190
+ readonly SelfEmployment: "Self Employment";
191
+ readonly SportAndRecreation: "Sport & Recreation";
192
+ readonly TradesAndServices: "Trades & Services";
193
+ };
194
+ /**
195
+ * Type representing a valid category value.
196
+ */
197
+ type Category = (typeof Category)[keyof typeof Category];
198
+ /**
199
+ * Vacancy model definition.
200
+ */
161
201
  interface Model extends BaseModel {
162
202
  company: string;
163
203
  position: string;
@@ -172,10 +212,25 @@ declare namespace Vacancy {
172
212
  category: Category;
173
213
  suggestedTo?: string[];
174
214
  }
215
+ /**
216
+ * Returns the Firestore collection path for vacancies.
217
+ */
175
218
  const collection: () => string;
219
+ /**
220
+ * Returns the Firestore document path for a specific vacancy.
221
+ */
176
222
  const document: (vacancyId: string) => string;
223
+ /**
224
+ * Formats a short summary of a vacancy.
225
+ */
177
226
  const formatSummary: (vacancy: Vacancy.Model) => string;
227
+ /**
228
+ * Formats a date into a localized string.
229
+ */
178
230
  const formatDate: (date: Date | string) => string;
231
+ /**
232
+ * Creates a new Vacancy.Model with the given data.
233
+ */
179
234
  const createNew: (company: string, position: string, location: string, description: string, advertisingUrl: string, applicationUrl: string, applicationDomain: string, advertisingDomain: string, fullPageText: string, jobId: string, category: Category) => Vacancy.Model;
180
235
  }
181
236
 
package/dist/index.js CHANGED
@@ -243,38 +243,38 @@ var ClientQuestion;
243
243
  // src/models/Vacancy.ts
244
244
  var Vacancy;
245
245
  ((Vacancy2) => {
246
- Vacancy2.CategoryValues = [
247
- "Accounting",
248
- "Administration & Office Support",
249
- "Advertising, Arts & Media",
250
- "Banking & Financial Services",
251
- "Call Centre & Customer Service",
252
- "CEO & General Management",
253
- "Community Services & Development",
254
- "Construction",
255
- "Consulting & Strategy",
256
- "Design & Architecture",
257
- "Education & Training",
258
- "Engineering",
259
- "Farming, Animals & Conservation",
260
- "Government & Defence",
261
- "Healthcare & Medical",
262
- "Hospitality & Tourism",
263
- "Human Resources & Recruitment",
264
- "Information & Communication Technology",
265
- "Insurance & Superannuation",
266
- "Legal",
267
- "Manufacturing, Transport & Logistics",
268
- "Marketing & Communications",
269
- "Mining, Resources & Energy",
270
- "Real Estate & Property",
271
- "Retail & Consumer Products",
272
- "Sales",
273
- "Science & Technology",
274
- "Self Employment",
275
- "Sport & Recreation",
276
- "Trades & Services"
277
- ];
246
+ Vacancy2.Category = {
247
+ Accounting: "Accounting",
248
+ AdministrationAndOfficeSupport: "Administration & Office Support",
249
+ AdvertisingArtsAndMedia: "Advertising, Arts & Media",
250
+ BankingAndFinancialServices: "Banking & Financial Services",
251
+ CallCentreAndCustomerService: "Call Centre & Customer Service",
252
+ CEOAndGeneralManagement: "CEO & General Management",
253
+ CommunityServicesAndDevelopment: "Community Services & Development",
254
+ Construction: "Construction",
255
+ ConsultingAndStrategy: "Consulting & Strategy",
256
+ DesignAndArchitecture: "Design & Architecture",
257
+ EducationAndTraining: "Education & Training",
258
+ Engineering: "Engineering",
259
+ FarmingAnimalsAndConservation: "Farming, Animals & Conservation",
260
+ GovernmentAndDefence: "Government & Defence",
261
+ HealthcareAndMedical: "Healthcare & Medical",
262
+ HospitalityAndTourism: "Hospitality & Tourism",
263
+ HumanResourcesAndRecruitment: "Human Resources & Recruitment",
264
+ InformationAndCommunicationTechnology: "Information & Communication Technology",
265
+ InsuranceAndSuperannuation: "Insurance & Superannuation",
266
+ Legal: "Legal",
267
+ ManufacturingTransportAndLogistics: "Manufacturing, Transport & Logistics",
268
+ MarketingAndCommunications: "Marketing & Communications",
269
+ MiningResourcesAndEnergy: "Mining, Resources & Energy",
270
+ RealEstateAndProperty: "Real Estate & Property",
271
+ RetailAndConsumerProducts: "Retail & Consumer Products",
272
+ Sales: "Sales",
273
+ ScienceAndTechnology: "Science & Technology",
274
+ SelfEmployment: "Self Employment",
275
+ SportAndRecreation: "Sport & Recreation",
276
+ TradesAndServices: "Trades & Services"
277
+ };
278
278
  Vacancy2.collection = () => "vacancies";
279
279
  Vacancy2.document = (vacancyId) => `vacancies/${vacancyId}`;
280
280
  Vacancy2.formatSummary = (vacancy) => `${vacancy.position} at ${vacancy.company} (${vacancy.location})`;
package/dist/index.mjs CHANGED
@@ -208,38 +208,38 @@ var ClientQuestion;
208
208
  // src/models/Vacancy.ts
209
209
  var Vacancy;
210
210
  ((Vacancy2) => {
211
- Vacancy2.CategoryValues = [
212
- "Accounting",
213
- "Administration & Office Support",
214
- "Advertising, Arts & Media",
215
- "Banking & Financial Services",
216
- "Call Centre & Customer Service",
217
- "CEO & General Management",
218
- "Community Services & Development",
219
- "Construction",
220
- "Consulting & Strategy",
221
- "Design & Architecture",
222
- "Education & Training",
223
- "Engineering",
224
- "Farming, Animals & Conservation",
225
- "Government & Defence",
226
- "Healthcare & Medical",
227
- "Hospitality & Tourism",
228
- "Human Resources & Recruitment",
229
- "Information & Communication Technology",
230
- "Insurance & Superannuation",
231
- "Legal",
232
- "Manufacturing, Transport & Logistics",
233
- "Marketing & Communications",
234
- "Mining, Resources & Energy",
235
- "Real Estate & Property",
236
- "Retail & Consumer Products",
237
- "Sales",
238
- "Science & Technology",
239
- "Self Employment",
240
- "Sport & Recreation",
241
- "Trades & Services"
242
- ];
211
+ Vacancy2.Category = {
212
+ Accounting: "Accounting",
213
+ AdministrationAndOfficeSupport: "Administration & Office Support",
214
+ AdvertisingArtsAndMedia: "Advertising, Arts & Media",
215
+ BankingAndFinancialServices: "Banking & Financial Services",
216
+ CallCentreAndCustomerService: "Call Centre & Customer Service",
217
+ CEOAndGeneralManagement: "CEO & General Management",
218
+ CommunityServicesAndDevelopment: "Community Services & Development",
219
+ Construction: "Construction",
220
+ ConsultingAndStrategy: "Consulting & Strategy",
221
+ DesignAndArchitecture: "Design & Architecture",
222
+ EducationAndTraining: "Education & Training",
223
+ Engineering: "Engineering",
224
+ FarmingAnimalsAndConservation: "Farming, Animals & Conservation",
225
+ GovernmentAndDefence: "Government & Defence",
226
+ HealthcareAndMedical: "Healthcare & Medical",
227
+ HospitalityAndTourism: "Hospitality & Tourism",
228
+ HumanResourcesAndRecruitment: "Human Resources & Recruitment",
229
+ InformationAndCommunicationTechnology: "Information & Communication Technology",
230
+ InsuranceAndSuperannuation: "Insurance & Superannuation",
231
+ Legal: "Legal",
232
+ ManufacturingTransportAndLogistics: "Manufacturing, Transport & Logistics",
233
+ MarketingAndCommunications: "Marketing & Communications",
234
+ MiningResourcesAndEnergy: "Mining, Resources & Energy",
235
+ RealEstateAndProperty: "Real Estate & Property",
236
+ RetailAndConsumerProducts: "Retail & Consumer Products",
237
+ Sales: "Sales",
238
+ ScienceAndTechnology: "Science & Technology",
239
+ SelfEmployment: "Self Employment",
240
+ SportAndRecreation: "Sport & Recreation",
241
+ TradesAndServices: "Trades & Services"
242
+ };
243
243
  Vacancy2.collection = () => "vacancies";
244
244
  Vacancy2.document = (vacancyId) => `vacancies/${vacancyId}`;
245
245
  Vacancy2.formatSummary = (vacancy) => `${vacancy.position} at ${vacancy.company} (${vacancy.location})`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jobsearch-works/firestore-models",
3
- "version": "1.0.22",
3
+ "version": "1.0.23",
4
4
  "description": "A shared library for standardizing Firestore document schemas and paths across multiple projects",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",