@inploi/plugin-job-search 0.24.0 → 0.25.1
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/cdn/index.js +17 -17
- package/cdn/style.css +1 -1
- package/dist/components/button.d.ts +1 -1
- package/dist/components/combobox.d.ts +25 -0
- package/dist/components/filter-content.active.d.ts +174 -1
- package/dist/components/filter-section.d.ts +3 -2
- package/dist/components/filter.d.ts +57 -0
- package/dist/components/geo-search.d.ts +22 -0
- package/dist/components/geo-search.locate-button.d.ts +8 -0
- package/dist/components/geo-search.location-input.d.ts +10 -0
- package/dist/components/geo-search.utils.d.ts +7 -0
- package/dist/components/icon.d.ts +2 -0
- package/dist/components/job-search.d.ts +21 -1
- package/dist/components/keyword-search.d.ts +3 -2
- package/dist/components/mode-switch.d.ts +3 -3
- package/dist/components/natural-language-section.d.ts +3 -2
- package/dist/components/results-section.d.ts +3 -3
- package/dist/components/tag.d.ts +1 -1
- package/dist/index.cjs +4 -20
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1170 -4735
- package/dist/job-search.api-1670984d.cjs +17 -0
- package/dist/job-search.api-c4af53ba.js +3871 -0
- package/dist/job-search.api.d.ts +83 -27
- package/dist/job-search.d.ts +10 -3
- package/dist/job-search.schemas.d.ts +55 -8
- package/dist/lib/cache-key.d.ts +2 -3
- package/dist/lib/currency.d.ts +1 -1
- package/dist/lib/datetime.d.ts +1 -1
- package/dist/lib/{translation.terms.d.ts → i18n.d.ts} +118 -63
- package/dist/lib/type-utils.d.ts +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/plugin-job-alerts-7fc7b0f9.cjs +1050 -0
- package/dist/{plugin-job-alerts-6f8dbd69.js → plugin-job-alerts-a5cbb5be.js} +1777 -1812
- package/dist/style/tokens.d.ts +3 -3
- package/dist/style.css +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +5 -15
- package/package.json +11 -10
- package/dist/datetime-3eccae90.cjs +0 -1
- package/dist/datetime-796d4b37.js +0 -32
- package/dist/job-search.state.d.ts +0 -4
- package/dist/lib/translation.d.ts +0 -44
- package/dist/lib/translation.test.d.ts +0 -1
- package/dist/plugin-job-alerts-4b46b097.cjs +0 -1050
package/dist/job-search.api.d.ts
CHANGED
|
@@ -1,10 +1,58 @@
|
|
|
1
1
|
import { ApiClient, Logger } from '@inploi/sdk';
|
|
2
2
|
import { SWRResponse } from 'swr';
|
|
3
3
|
import { Input, Output } from 'valibot';
|
|
4
|
-
import {
|
|
5
|
-
import { TFunction } from './lib/
|
|
4
|
+
import { JobSearchState } from './components/job-search';
|
|
5
|
+
import { TFunction } from './lib/i18n';
|
|
6
6
|
|
|
7
|
-
declare const getJobSearchResponseSchema: (t:
|
|
7
|
+
declare const getJobSearchResponseSchema: (t: import('@inploi/i18n/translation').TFn<{
|
|
8
|
+
readonly type_to_search_jobs: "Type to search jobs";
|
|
9
|
+
readonly type_to_search: "Type to search";
|
|
10
|
+
readonly jobs_found: {
|
|
11
|
+
readonly one: "{{count}} job found";
|
|
12
|
+
readonly other: "{{count}} jobs found";
|
|
13
|
+
};
|
|
14
|
+
readonly no_jobs_found: "No jobs found";
|
|
15
|
+
readonly no_jobs_found_description: "We could not find any jobs matching your filtering criteria.";
|
|
16
|
+
readonly jobs_loading_error: "We’re having trouble loading available jobs.";
|
|
17
|
+
readonly filters_loading_error: "We’re having trouble loading available filters.";
|
|
18
|
+
readonly no_filter_options_available: "No filter options available.";
|
|
19
|
+
readonly clear: "Clear";
|
|
20
|
+
readonly selected: "selected";
|
|
21
|
+
readonly done: "Done";
|
|
22
|
+
readonly skip: "Skip";
|
|
23
|
+
readonly new: "NEW";
|
|
24
|
+
readonly posted: "Posted";
|
|
25
|
+
readonly retry: "Retry";
|
|
26
|
+
readonly widget_unavailable: "Sorry, this widget is unavailable at the moment.";
|
|
27
|
+
readonly load_more_count: "Load {{count}} more";
|
|
28
|
+
readonly of_remaining_count: "of {{count}} remaining";
|
|
29
|
+
readonly create_alert: "Create alert";
|
|
30
|
+
readonly alert_header_text: "You will be alerted for new jobs matching the filters currently set";
|
|
31
|
+
readonly today: "today";
|
|
32
|
+
readonly over_30_days_ago: "over 30 days ago";
|
|
33
|
+
readonly in_over_30_days: "in over 30 days";
|
|
34
|
+
readonly up_to: "Up to";
|
|
35
|
+
readonly from: "From";
|
|
36
|
+
readonly invalid_salary: "Invalid salary";
|
|
37
|
+
readonly competitive: "Competitive";
|
|
38
|
+
readonly natural_language_input: "Type anything";
|
|
39
|
+
readonly great_match: "Great match";
|
|
40
|
+
readonly advanced_mode: "Filters";
|
|
41
|
+
readonly simple_mode: "Hide filters";
|
|
42
|
+
readonly ai_disclaimer: "Results may not be perfect. AI-powered search can occasionally suggest unrelated content.";
|
|
43
|
+
readonly geo_error_timeout: "Timed out. Please type your location manually.";
|
|
44
|
+
readonly geo_error_permission_denied: "Please allow location access to use this feature.";
|
|
45
|
+
readonly geo_error_position_unavailable: "Could not locate you. Please type your location manually.";
|
|
46
|
+
readonly geo_my_location: "My location";
|
|
47
|
+
readonly geo_locating: "Locating you...";
|
|
48
|
+
readonly geo_search_placeholder: "Search for a location";
|
|
49
|
+
readonly geo_clear_search: "Clear location search";
|
|
50
|
+
readonly location_provided: "Provided location";
|
|
51
|
+
readonly search_label: "What";
|
|
52
|
+
readonly geo_label: "Where";
|
|
53
|
+
readonly geo_range_label: "Within";
|
|
54
|
+
readonly geo_suggestions_error: "Could not get the suggested locations.";
|
|
55
|
+
}>) => import('valibot').SchemaWithTransform<import('valibot').ObjectSchema<{
|
|
8
56
|
data: import('valibot').ArraySchema<import('valibot').SchemaWithTransform<import('valibot').ObjectSchema<{
|
|
9
57
|
id: import('valibot').NumberSchema<number>;
|
|
10
58
|
company_name: import('valibot').StringSchema<string>;
|
|
@@ -36,6 +84,8 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
36
84
|
country: import('valibot').NullableSchema<import('valibot').StringSchema<string>, undefined, string | null>;
|
|
37
85
|
vector_distance: import('valibot').OptionalSchema<import('valibot').NullableSchema<import('valibot').StringSchema<string>, undefined, string | null>, undefined, string | null | undefined>;
|
|
38
86
|
}, undefined, {
|
|
87
|
+
title: string;
|
|
88
|
+
href: string;
|
|
39
89
|
id: number;
|
|
40
90
|
company_name: string;
|
|
41
91
|
employment_type: string;
|
|
@@ -48,13 +98,11 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
48
98
|
pay_min: string | null;
|
|
49
99
|
pay_max: string | null;
|
|
50
100
|
description: string;
|
|
51
|
-
title: string;
|
|
52
101
|
contract_type: string | null;
|
|
53
102
|
created_at: string | null;
|
|
54
103
|
custom_data: {
|
|
55
104
|
[x: string]: any;
|
|
56
105
|
} | null;
|
|
57
|
-
href: string;
|
|
58
106
|
industry: string | null;
|
|
59
107
|
category: string | null;
|
|
60
108
|
city: string | null;
|
|
@@ -82,6 +130,8 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
82
130
|
[x: string]: any;
|
|
83
131
|
} | null;
|
|
84
132
|
raw: {
|
|
133
|
+
title: string;
|
|
134
|
+
href: string;
|
|
85
135
|
id: number;
|
|
86
136
|
company_name: string;
|
|
87
137
|
employment_type: string;
|
|
@@ -94,13 +144,11 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
94
144
|
pay_min: string | null;
|
|
95
145
|
pay_max: string | null;
|
|
96
146
|
description: string;
|
|
97
|
-
title: string;
|
|
98
147
|
contract_type: string | null;
|
|
99
148
|
created_at: string | null;
|
|
100
149
|
custom_data: {
|
|
101
150
|
[x: string]: any;
|
|
102
151
|
} | null;
|
|
103
|
-
href: string;
|
|
104
152
|
industry: string | null;
|
|
105
153
|
category: string | null;
|
|
106
154
|
city: string | null;
|
|
@@ -130,6 +178,8 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
130
178
|
[x: string]: any;
|
|
131
179
|
} | null;
|
|
132
180
|
raw: {
|
|
181
|
+
title: string;
|
|
182
|
+
href: string;
|
|
133
183
|
id: number;
|
|
134
184
|
company_name: string;
|
|
135
185
|
employment_type: string;
|
|
@@ -142,13 +192,11 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
142
192
|
pay_min: string | null;
|
|
143
193
|
pay_max: string | null;
|
|
144
194
|
description: string;
|
|
145
|
-
title: string;
|
|
146
195
|
contract_type: string | null;
|
|
147
196
|
created_at: string | null;
|
|
148
197
|
custom_data: {
|
|
149
198
|
[x: string]: any;
|
|
150
199
|
} | null;
|
|
151
|
-
href: string;
|
|
152
200
|
industry: string | null;
|
|
153
201
|
category: string | null;
|
|
154
202
|
city: string | null;
|
|
@@ -191,6 +239,8 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
191
239
|
[x: string]: any;
|
|
192
240
|
} | null;
|
|
193
241
|
raw: {
|
|
242
|
+
title: string;
|
|
243
|
+
href: string;
|
|
194
244
|
id: number;
|
|
195
245
|
company_name: string;
|
|
196
246
|
employment_type: string;
|
|
@@ -203,13 +253,11 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
203
253
|
pay_min: string | null;
|
|
204
254
|
pay_max: string | null;
|
|
205
255
|
description: string;
|
|
206
|
-
title: string;
|
|
207
256
|
contract_type: string | null;
|
|
208
257
|
created_at: string | null;
|
|
209
258
|
custom_data: {
|
|
210
259
|
[x: string]: any;
|
|
211
260
|
} | null;
|
|
212
|
-
href: string;
|
|
213
261
|
industry: string | null;
|
|
214
262
|
category: string | null;
|
|
215
263
|
city: string | null;
|
|
@@ -253,6 +301,8 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
253
301
|
[x: string]: any;
|
|
254
302
|
} | null;
|
|
255
303
|
raw: {
|
|
304
|
+
title: string;
|
|
305
|
+
href: string;
|
|
256
306
|
id: number;
|
|
257
307
|
company_name: string;
|
|
258
308
|
employment_type: string;
|
|
@@ -265,13 +315,11 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
265
315
|
pay_min: string | null;
|
|
266
316
|
pay_max: string | null;
|
|
267
317
|
description: string;
|
|
268
|
-
title: string;
|
|
269
318
|
contract_type: string | null;
|
|
270
319
|
created_at: string | null;
|
|
271
320
|
custom_data: {
|
|
272
321
|
[x: string]: any;
|
|
273
322
|
} | null;
|
|
274
|
-
href: string;
|
|
275
323
|
industry: string | null;
|
|
276
324
|
category: string | null;
|
|
277
325
|
city: string | null;
|
|
@@ -287,13 +335,18 @@ declare const getJobSearchResponseSchema: (t: TFunction) => import('valibot').Sc
|
|
|
287
335
|
export type JobSearchResponsePayloadInput = Input<ReturnType<typeof getJobSearchResponseSchema>>;
|
|
288
336
|
export type JobSearchResponsePayloadOutput = Output<ReturnType<typeof getJobSearchResponseSchema>>;
|
|
289
337
|
export declare const getFilterValue: (filterValue: string | string[] | undefined) => string | string[] | null;
|
|
290
|
-
|
|
291
|
-
|
|
338
|
+
type GeoSearchApiParams = {
|
|
339
|
+
lat?: number;
|
|
340
|
+
lng?: number;
|
|
341
|
+
radius?: number;
|
|
342
|
+
type?: 'provided' | 'ip';
|
|
343
|
+
};
|
|
344
|
+
export declare const filtersToPayload: (state: JobSearchState) => Record<string, string | string[] | GeoSearchApiParams | null | undefined>;
|
|
345
|
+
export declare const getAvailableFilters: ({ apiClient, state, logger, signal, }: {
|
|
292
346
|
apiClient: ApiClient;
|
|
293
347
|
logger: Logger;
|
|
294
|
-
keyword: string | undefined;
|
|
295
348
|
signal?: AbortSignal;
|
|
296
|
-
|
|
349
|
+
state: JobSearchState;
|
|
297
350
|
}) => Promise<{
|
|
298
351
|
[x: string]: {
|
|
299
352
|
label: string;
|
|
@@ -302,15 +355,13 @@ export declare const getAvailableFilters: ({ apiClient, filters, keyword, logger
|
|
|
302
355
|
}[];
|
|
303
356
|
}>;
|
|
304
357
|
export type GetAvailableFiltersResponse = Awaited<ReturnType<typeof getAvailableFilters>>;
|
|
305
|
-
export declare const getJobSearchResults: ({ apiClient, logger, signal,
|
|
358
|
+
export declare const getJobSearchResults: ({ apiClient, logger, signal, state, page, t, }: {
|
|
306
359
|
apiClient: ApiClient;
|
|
307
360
|
logger: Logger;
|
|
308
361
|
signal?: AbortSignal;
|
|
309
|
-
|
|
310
|
-
query?: string;
|
|
362
|
+
state: JobSearchState;
|
|
311
363
|
page?: number;
|
|
312
364
|
t: TFunction;
|
|
313
|
-
mode: 'query' | 'vector';
|
|
314
365
|
}) => Promise<{
|
|
315
366
|
pagination: {
|
|
316
367
|
total: number;
|
|
@@ -337,6 +388,8 @@ export declare const getJobSearchResults: ({ apiClient, logger, signal, filters,
|
|
|
337
388
|
[x: string]: any;
|
|
338
389
|
} | null;
|
|
339
390
|
raw: {
|
|
391
|
+
title: string;
|
|
392
|
+
href: string;
|
|
340
393
|
id: number;
|
|
341
394
|
company_name: string;
|
|
342
395
|
employment_type: string;
|
|
@@ -349,13 +402,11 @@ export declare const getJobSearchResults: ({ apiClient, logger, signal, filters,
|
|
|
349
402
|
pay_min: string | null;
|
|
350
403
|
pay_max: string | null;
|
|
351
404
|
description: string;
|
|
352
|
-
title: string;
|
|
353
405
|
contract_type: string | null;
|
|
354
406
|
created_at: string | null;
|
|
355
407
|
custom_data: {
|
|
356
408
|
[x: string]: any;
|
|
357
409
|
} | null;
|
|
358
|
-
href: string;
|
|
359
410
|
industry: string | null;
|
|
360
411
|
category: string | null;
|
|
361
412
|
city: string | null;
|
|
@@ -370,22 +421,27 @@ export declare const getJobSearchResults: ({ apiClient, logger, signal, filters,
|
|
|
370
421
|
}>;
|
|
371
422
|
export type GetJobSearchResponse = Awaited<ReturnType<typeof getJobSearchResults>>;
|
|
372
423
|
export type QueryState<T> = {
|
|
373
|
-
|
|
424
|
+
queryState: 'idle';
|
|
425
|
+
data?: never;
|
|
426
|
+
error?: never;
|
|
427
|
+
swr: SWRResponse<T>;
|
|
428
|
+
} | {
|
|
429
|
+
queryState: 'error';
|
|
374
430
|
data?: never;
|
|
375
431
|
error: unknown;
|
|
376
432
|
swr: SWRResponse<T>;
|
|
377
433
|
} | {
|
|
378
|
-
|
|
434
|
+
queryState: 'loading';
|
|
379
435
|
data?: never;
|
|
380
436
|
error?: never;
|
|
381
437
|
swr: SWRResponse<T>;
|
|
382
438
|
} | {
|
|
383
|
-
|
|
439
|
+
queryState: 'revalidating';
|
|
384
440
|
data: T;
|
|
385
441
|
error?: never;
|
|
386
442
|
swr: SWRResponse<T>;
|
|
387
443
|
} | {
|
|
388
|
-
|
|
444
|
+
queryState: 'loaded';
|
|
389
445
|
data: T;
|
|
390
446
|
error?: never;
|
|
391
447
|
swr: SWRResponse<T>;
|
package/dist/job-search.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { TargetedEvent } from 'preact/compat';
|
|
2
2
|
import { getJobSearchResults } from './job-search.api.ts';
|
|
3
3
|
import { FilterValue } from './components/filter.tsx';
|
|
4
|
+
import { GeoSearchFilter } from './components/geo-search.tsx';
|
|
4
5
|
import { IconName } from './components/icon.tsx';
|
|
5
|
-
import { JobSearchTranslationTerms } from './lib/
|
|
6
|
+
import { JobSearchTranslationTerms } from './lib/i18n.ts';
|
|
6
7
|
|
|
7
8
|
type FontSettings = {
|
|
8
9
|
fontFamily: string;
|
|
@@ -135,12 +136,16 @@ export type JobSearchPluginParams = {
|
|
|
135
136
|
openJob?: 'redirect' | 'redirect-new-tab';
|
|
136
137
|
};
|
|
137
138
|
defaultSearchKeyword?: string;
|
|
139
|
+
defaultGeolocation?: GeoSearchFilter;
|
|
138
140
|
/** Enables the job alerts button */
|
|
139
141
|
enableJobAlerts?: boolean;
|
|
140
142
|
/** Enables searching for jobs by keyword */
|
|
141
143
|
enableKeywordSearch?: boolean;
|
|
142
144
|
/** Translation terms */
|
|
143
145
|
terms?: JobSearchTranslationTerms;
|
|
146
|
+
geolocation?: {
|
|
147
|
+
enabled: boolean;
|
|
148
|
+
};
|
|
144
149
|
naturalLanguageSearch?: {
|
|
145
150
|
/** Enables searching for jobs by natural language */
|
|
146
151
|
enabled: boolean;
|
|
@@ -163,6 +168,7 @@ export interface RenderJobSearchPluginParams extends JobSearchPluginParams {
|
|
|
163
168
|
};
|
|
164
169
|
onFilterChange: (params: Record<string, FilterValue | undefined>) => void;
|
|
165
170
|
onKeywordChange: (keyword: string | undefined) => void;
|
|
171
|
+
onGeolocationChange: (geo: GeoSearchFilter | undefined) => void;
|
|
166
172
|
}
|
|
167
173
|
export declare const createJobSearchDomManager: () => {
|
|
168
174
|
getRenderTargetElement: () => Element;
|
|
@@ -193,6 +199,7 @@ export declare const jobSearchPlugin: () => ({ apiClient, logger, analytics }: {
|
|
|
193
199
|
name: string;
|
|
194
200
|
logo: string | null;
|
|
195
201
|
};
|
|
202
|
+
/** The **fixed** value for the filter. Cannot be removed or changed. */
|
|
196
203
|
employmentType: string;
|
|
197
204
|
locationType: "LOCATION" | "REMOTE" | "HYBRID";
|
|
198
205
|
pay: string | null;
|
|
@@ -205,6 +212,8 @@ export declare const jobSearchPlugin: () => ({ apiClient, logger, analytics }: {
|
|
|
205
212
|
[x: string]: any;
|
|
206
213
|
} | null;
|
|
207
214
|
raw: {
|
|
215
|
+
title: string;
|
|
216
|
+
href: string;
|
|
208
217
|
id: number;
|
|
209
218
|
company_name: string;
|
|
210
219
|
employment_type: string;
|
|
@@ -217,13 +226,11 @@ export declare const jobSearchPlugin: () => ({ apiClient, logger, analytics }: {
|
|
|
217
226
|
pay_min: string | null;
|
|
218
227
|
pay_max: string | null;
|
|
219
228
|
description: string;
|
|
220
|
-
title: string;
|
|
221
229
|
contract_type: string | null;
|
|
222
230
|
created_at: string | null;
|
|
223
231
|
custom_data: {
|
|
224
232
|
[x: string]: any;
|
|
225
233
|
} | null;
|
|
226
|
-
href: string;
|
|
227
234
|
industry: string | null;
|
|
228
235
|
category: string | null;
|
|
229
236
|
city: string | null;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Output } from 'valibot';
|
|
2
|
-
import { TFunction } from './lib/translation.terms';
|
|
3
2
|
|
|
4
3
|
export declare const AvailablePropertiesSchema: import('valibot').RecordSchema<import('valibot').StringSchema<string>, import('valibot').ArraySchema<import('valibot').ObjectSchema<{
|
|
5
4
|
label: import('valibot').StringSchema<string>;
|
|
@@ -65,6 +64,8 @@ export declare const JobPayloadSchema: import('valibot').ObjectSchema<{
|
|
|
65
64
|
country: import('valibot').NullableSchema<import('valibot').StringSchema<string>, undefined, string | null>;
|
|
66
65
|
vector_distance: import('valibot').OptionalSchema<import('valibot').NullableSchema<import('valibot').StringSchema<string>, undefined, string | null>, undefined, string | null | undefined>;
|
|
67
66
|
}, undefined, {
|
|
67
|
+
title: string;
|
|
68
|
+
href: string;
|
|
68
69
|
id: number;
|
|
69
70
|
company_name: string;
|
|
70
71
|
employment_type: string;
|
|
@@ -77,13 +78,11 @@ export declare const JobPayloadSchema: import('valibot').ObjectSchema<{
|
|
|
77
78
|
pay_min: string | null;
|
|
78
79
|
pay_max: string | null;
|
|
79
80
|
description: string;
|
|
80
|
-
title: string;
|
|
81
81
|
contract_type: string | null;
|
|
82
82
|
created_at: string | null;
|
|
83
83
|
custom_data: {
|
|
84
84
|
[x: string]: any;
|
|
85
85
|
} | null;
|
|
86
|
-
href: string;
|
|
87
86
|
industry: string | null;
|
|
88
87
|
category: string | null;
|
|
89
88
|
city: string | null;
|
|
@@ -94,7 +93,55 @@ export declare const JobPayloadSchema: import('valibot').ObjectSchema<{
|
|
|
94
93
|
vector_distance?: string | null | undefined;
|
|
95
94
|
}>;
|
|
96
95
|
export type JobPayloadSchema = Output<typeof JobPayloadSchema>;
|
|
97
|
-
export declare const getJobSchema: (t:
|
|
96
|
+
export declare const getJobSchema: (t: import('@inploi/i18n/translation').TFn<{
|
|
97
|
+
readonly type_to_search_jobs: "Type to search jobs";
|
|
98
|
+
readonly type_to_search: "Type to search";
|
|
99
|
+
readonly jobs_found: {
|
|
100
|
+
readonly one: "{{count}} job found";
|
|
101
|
+
readonly other: "{{count}} jobs found";
|
|
102
|
+
};
|
|
103
|
+
readonly no_jobs_found: "No jobs found";
|
|
104
|
+
readonly no_jobs_found_description: "We could not find any jobs matching your filtering criteria.";
|
|
105
|
+
readonly jobs_loading_error: "We’re having trouble loading available jobs.";
|
|
106
|
+
readonly filters_loading_error: "We’re having trouble loading available filters.";
|
|
107
|
+
readonly no_filter_options_available: "No filter options available.";
|
|
108
|
+
readonly clear: "Clear";
|
|
109
|
+
readonly selected: "selected";
|
|
110
|
+
readonly done: "Done";
|
|
111
|
+
readonly skip: "Skip";
|
|
112
|
+
readonly new: "NEW";
|
|
113
|
+
readonly posted: "Posted";
|
|
114
|
+
readonly retry: "Retry";
|
|
115
|
+
readonly widget_unavailable: "Sorry, this widget is unavailable at the moment.";
|
|
116
|
+
readonly load_more_count: "Load {{count}} more";
|
|
117
|
+
readonly of_remaining_count: "of {{count}} remaining";
|
|
118
|
+
readonly create_alert: "Create alert";
|
|
119
|
+
readonly alert_header_text: "You will be alerted for new jobs matching the filters currently set";
|
|
120
|
+
readonly today: "today";
|
|
121
|
+
readonly over_30_days_ago: "over 30 days ago";
|
|
122
|
+
readonly in_over_30_days: "in over 30 days";
|
|
123
|
+
readonly up_to: "Up to";
|
|
124
|
+
readonly from: "From";
|
|
125
|
+
readonly invalid_salary: "Invalid salary";
|
|
126
|
+
readonly competitive: "Competitive";
|
|
127
|
+
readonly natural_language_input: "Type anything";
|
|
128
|
+
readonly great_match: "Great match";
|
|
129
|
+
readonly advanced_mode: "Filters";
|
|
130
|
+
readonly simple_mode: "Hide filters";
|
|
131
|
+
readonly ai_disclaimer: "Results may not be perfect. AI-powered search can occasionally suggest unrelated content.";
|
|
132
|
+
readonly geo_error_timeout: "Timed out. Please type your location manually.";
|
|
133
|
+
readonly geo_error_permission_denied: "Please allow location access to use this feature.";
|
|
134
|
+
readonly geo_error_position_unavailable: "Could not locate you. Please type your location manually.";
|
|
135
|
+
readonly geo_my_location: "My location";
|
|
136
|
+
readonly geo_locating: "Locating you...";
|
|
137
|
+
readonly geo_search_placeholder: "Search for a location";
|
|
138
|
+
readonly geo_clear_search: "Clear location search";
|
|
139
|
+
readonly location_provided: "Provided location";
|
|
140
|
+
readonly search_label: "What";
|
|
141
|
+
readonly geo_label: "Where";
|
|
142
|
+
readonly geo_range_label: "Within";
|
|
143
|
+
readonly geo_suggestions_error: "Could not get the suggested locations.";
|
|
144
|
+
}>) => import('valibot').SchemaWithTransform<import('valibot').ObjectSchema<{
|
|
98
145
|
id: import('valibot').NumberSchema<number>;
|
|
99
146
|
company_name: import('valibot').StringSchema<string>;
|
|
100
147
|
company_logo: import('valibot').NullableSchema<import('valibot').OptionalSchema<import('valibot').StringSchema<string>, undefined, string | undefined>, undefined, string | undefined>;
|
|
@@ -125,6 +172,8 @@ export declare const getJobSchema: (t: TFunction) => import('valibot').SchemaWit
|
|
|
125
172
|
country: import('valibot').NullableSchema<import('valibot').StringSchema<string>, undefined, string | null>;
|
|
126
173
|
vector_distance: import('valibot').OptionalSchema<import('valibot').NullableSchema<import('valibot').StringSchema<string>, undefined, string | null>, undefined, string | null | undefined>;
|
|
127
174
|
}, undefined, {
|
|
175
|
+
title: string;
|
|
176
|
+
href: string;
|
|
128
177
|
id: number;
|
|
129
178
|
company_name: string;
|
|
130
179
|
employment_type: string;
|
|
@@ -137,13 +186,11 @@ export declare const getJobSchema: (t: TFunction) => import('valibot').SchemaWit
|
|
|
137
186
|
pay_min: string | null;
|
|
138
187
|
pay_max: string | null;
|
|
139
188
|
description: string;
|
|
140
|
-
title: string;
|
|
141
189
|
contract_type: string | null;
|
|
142
190
|
created_at: string | null;
|
|
143
191
|
custom_data: {
|
|
144
192
|
[x: string]: any;
|
|
145
193
|
} | null;
|
|
146
|
-
href: string;
|
|
147
194
|
industry: string | null;
|
|
148
195
|
category: string | null;
|
|
149
196
|
city: string | null;
|
|
@@ -171,6 +218,8 @@ export declare const getJobSchema: (t: TFunction) => import('valibot').SchemaWit
|
|
|
171
218
|
[x: string]: any;
|
|
172
219
|
} | null;
|
|
173
220
|
raw: {
|
|
221
|
+
title: string;
|
|
222
|
+
href: string;
|
|
174
223
|
id: number;
|
|
175
224
|
company_name: string;
|
|
176
225
|
employment_type: string;
|
|
@@ -183,13 +232,11 @@ export declare const getJobSchema: (t: TFunction) => import('valibot').SchemaWit
|
|
|
183
232
|
pay_min: string | null;
|
|
184
233
|
pay_max: string | null;
|
|
185
234
|
description: string;
|
|
186
|
-
title: string;
|
|
187
235
|
contract_type: string | null;
|
|
188
236
|
created_at: string | null;
|
|
189
237
|
custom_data: {
|
|
190
238
|
[x: string]: any;
|
|
191
239
|
} | null;
|
|
192
|
-
href: string;
|
|
193
240
|
industry: string | null;
|
|
194
241
|
category: string | null;
|
|
195
242
|
city: string | null;
|
package/dist/lib/cache-key.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { JobSearchState } from '../components/job-search';
|
|
2
2
|
|
|
3
3
|
export declare const cacheKey: (value: {
|
|
4
|
-
|
|
4
|
+
state: JobSearchState;
|
|
5
5
|
baseKey: string;
|
|
6
|
-
keyword: string | undefined;
|
|
7
6
|
}) => string;
|
package/dist/lib/currency.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { JobPayloadSchema } from '../job-search.schemas';
|
|
2
|
-
import { TFunction } from './
|
|
2
|
+
import { TFunction } from './i18n';
|
|
3
3
|
|
|
4
4
|
export declare const getSalaryAsText: (params: {
|
|
5
5
|
salary: Pick<JobPayloadSchema, 'pay' | 'pay_min' | 'pay_mask' | 'pay_max' | 'pay_type' | 'pay_currency' | 'pay_display'>;
|
package/dist/lib/datetime.d.ts
CHANGED