@inploi/plugin-job-search 0.0.5 → 0.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/cdn/index.js +7 -7
- package/dist/job-search.api.d.ts +14 -12
- package/dist/job-search.schemas.d.ts +10 -8
- package/dist/plugin-job-search.cjs +377 -188
- package/dist/plugin-job-search.js +377 -188
- package/package.json +3 -3
|
@@ -512,7 +512,75 @@ function C$1(t2, l2, c4, p2, u2) {
|
|
|
512
512
|
return B2 || ("string" == typeof H2 ? B2 = s$1(H2) : null != H2 && false !== H2 && true !== H2 && (B2 = C$1(H2, l2, "svg" === E2 || "foreignObject" !== E2 && c4, p2, t2))), d$1 && d$1(t2), t2.__ = void 0, m$1 && m$1(t2), !B2 && S.has(E2) ? q2 + "/>" : q2 + ">" + B2 + "</" + E2 + ">";
|
|
513
513
|
}
|
|
514
514
|
var S = /* @__PURE__ */ new Set(["area", "base", "br", "col", "command", "embed", "hr", "img", "input", "keygen", "link", "meta", "param", "source", "track", "wbr"]);
|
|
515
|
-
var
|
|
515
|
+
var f$3 = 0;
|
|
516
|
+
function u$1(e2, t2, n2, o2, i2, u2) {
|
|
517
|
+
var a2, c4, p2 = {};
|
|
518
|
+
for (c4 in t2)
|
|
519
|
+
"ref" == c4 ? a2 = t2[c4] : p2[c4] = t2[c4];
|
|
520
|
+
var l2 = { type: e2, props: p2, key: n2, ref: a2, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, constructor: void 0, __v: --f$3, __i: -1, __u: 0, __source: i2, __self: u2 };
|
|
521
|
+
if ("function" == typeof e2 && (a2 = e2.defaultProps))
|
|
522
|
+
for (c4 in a2)
|
|
523
|
+
void 0 === p2[c4] && (p2[c4] = a2[c4]);
|
|
524
|
+
return l$2.vnode && l$2.vnode(l2), l2;
|
|
525
|
+
}
|
|
526
|
+
const Fallback = ({
|
|
527
|
+
error,
|
|
528
|
+
resetError
|
|
529
|
+
}) => {
|
|
530
|
+
return u$1("div", {
|
|
531
|
+
style: {
|
|
532
|
+
padding: "0 1rem",
|
|
533
|
+
fontSize: "1rem",
|
|
534
|
+
color: "#333333",
|
|
535
|
+
fontFamily: "'system-ui' 'Helvetica'"
|
|
536
|
+
},
|
|
537
|
+
children: ["Something went wrong.", u$1("br", {}), ' Error Message: "', error.message, '"', u$1("button", {
|
|
538
|
+
onClick: resetError,
|
|
539
|
+
style: {
|
|
540
|
+
background: "#efefef",
|
|
541
|
+
border: "none",
|
|
542
|
+
cursor: "pointer",
|
|
543
|
+
padding: "0.5rem 1rem"
|
|
544
|
+
},
|
|
545
|
+
children: "Retry"
|
|
546
|
+
})]
|
|
547
|
+
});
|
|
548
|
+
};
|
|
549
|
+
class ErrorBoundary extends b$2 {
|
|
550
|
+
constructor() {
|
|
551
|
+
super(...arguments);
|
|
552
|
+
__publicField(this, "state", {
|
|
553
|
+
error: null
|
|
554
|
+
});
|
|
555
|
+
}
|
|
556
|
+
static getDerivedStateFromError(error) {
|
|
557
|
+
return {
|
|
558
|
+
error: error.message
|
|
559
|
+
};
|
|
560
|
+
}
|
|
561
|
+
componentDidCatch(error) {
|
|
562
|
+
this.setState({
|
|
563
|
+
error
|
|
564
|
+
});
|
|
565
|
+
}
|
|
566
|
+
render() {
|
|
567
|
+
if (this.state.error) {
|
|
568
|
+
const {
|
|
569
|
+
Fallback: Fallback2
|
|
570
|
+
} = this.props;
|
|
571
|
+
return u$1(Fallback2, {
|
|
572
|
+
error: this.state.error,
|
|
573
|
+
resetError: () => {
|
|
574
|
+
this.setState({
|
|
575
|
+
error: null
|
|
576
|
+
});
|
|
577
|
+
}
|
|
578
|
+
});
|
|
579
|
+
}
|
|
580
|
+
return this.props.children;
|
|
581
|
+
}
|
|
582
|
+
}
|
|
583
|
+
var t, r$2, u, i, o = 0, f$2 = [], c$1 = [], e$2 = l$2.__b, a = l$2.__r, v = l$2.diffed, l = l$2.__c, m = l$2.unmount;
|
|
516
584
|
function d(t2, u2) {
|
|
517
585
|
l$2.__h && l$2.__h(r$2, t2, o || u2), o = 0;
|
|
518
586
|
var i2 = r$2.__H || (r$2.__H = { __: [], __h: [] });
|
|
@@ -614,7 +682,7 @@ function V$1() {
|
|
|
614
682
|
return n2.__;
|
|
615
683
|
}
|
|
616
684
|
function b() {
|
|
617
|
-
for (var t2; t2 = f$
|
|
685
|
+
for (var t2; t2 = f$2.shift(); )
|
|
618
686
|
if (t2.__P && t2.__H)
|
|
619
687
|
try {
|
|
620
688
|
t2.__H.__h.forEach(k$3), t2.__H.__h.forEach(w$1), t2.__H.__h = [];
|
|
@@ -627,15 +695,15 @@ l$2.__b = function(n2) {
|
|
|
627
695
|
}, l$2.__r = function(n2) {
|
|
628
696
|
a && a(n2), t = 0;
|
|
629
697
|
var i2 = (r$2 = n2.__c).__H;
|
|
630
|
-
i2 && (u
|
|
698
|
+
i2 && (u === r$2 ? (i2.__h = [], r$2.__h = [], i2.__.forEach(function(n3) {
|
|
631
699
|
n3.__N && (n3.__ = n3.__N), n3.__V = c$1, n3.__N = n3.i = void 0;
|
|
632
|
-
})) : (i2.__h.forEach(k$3), i2.__h.forEach(w$1), i2.__h = [], t = 0)), u
|
|
700
|
+
})) : (i2.__h.forEach(k$3), i2.__h.forEach(w$1), i2.__h = [], t = 0)), u = r$2;
|
|
633
701
|
}, l$2.diffed = function(t2) {
|
|
634
702
|
v && v(t2);
|
|
635
703
|
var o2 = t2.__c;
|
|
636
|
-
o2 && o2.__H && (o2.__H.__h.length && (1 !== f$
|
|
704
|
+
o2 && o2.__H && (o2.__H.__h.length && (1 !== f$2.push(o2) && i === l$2.requestAnimationFrame || ((i = l$2.requestAnimationFrame) || j$1)(b)), o2.__H.__.forEach(function(n2) {
|
|
637
705
|
n2.i && (n2.__H = n2.i), n2.__V !== c$1 && (n2.__ = n2.__V), n2.i = void 0, n2.__V = c$1;
|
|
638
|
-
})), u
|
|
706
|
+
})), u = r$2 = null;
|
|
639
707
|
}, l$2.__c = function(t2, r2) {
|
|
640
708
|
r2.some(function(t3) {
|
|
641
709
|
try {
|
|
@@ -2627,7 +2695,7 @@ const PaginationSchema = object({
|
|
|
2627
2695
|
last_page: number()
|
|
2628
2696
|
});
|
|
2629
2697
|
const payPeriods = {
|
|
2630
|
-
|
|
2698
|
+
ANNUALLY: "per year",
|
|
2631
2699
|
DAILY: "per day",
|
|
2632
2700
|
HOURLY: "per hour",
|
|
2633
2701
|
MONTHLY: "per month",
|
|
@@ -2639,14 +2707,14 @@ const JobPayloadSchema = object({
|
|
|
2639
2707
|
company_logo: string(),
|
|
2640
2708
|
employment_type: union([literal("FULL_TIME"), literal("PART_TIME"), literal("TEMPORARY"), literal("CONTRACTOR"), literal("INTERN"), literal("VOLUNTEER"), literal("OTHER")]),
|
|
2641
2709
|
location_type: union([literal("LOCATION"), literal("REMOTE"), literal("HYBRID")]),
|
|
2642
|
-
pay_type: union([literal("
|
|
2710
|
+
pay_type: union([literal("ANNUALLY"), literal("HOURLY"), literal("MONTHLY"), literal("WEEKLY"), literal("DAILY")]),
|
|
2643
2711
|
pay_currency: string(),
|
|
2644
2712
|
// Whether to mask the pay and show as "competitive"
|
|
2645
2713
|
pay_mask: boolean(),
|
|
2646
2714
|
// Whether to display pay at all
|
|
2647
2715
|
pay_display: boolean(),
|
|
2648
2716
|
// Decimal numeric string e.g. "12.70"
|
|
2649
|
-
pay: string(),
|
|
2717
|
+
pay: nullable(string()),
|
|
2650
2718
|
// Decimal numeric string e.g. "12.70"
|
|
2651
2719
|
pay_min: nullable(string()),
|
|
2652
2720
|
// Decimal numeric string e.g. "12.70"
|
|
@@ -2660,7 +2728,7 @@ const JobPayloadSchema = object({
|
|
|
2660
2728
|
// E.g.: Any varchar, e.g.: "Permanent contract"
|
|
2661
2729
|
contract_type: nullable(string()),
|
|
2662
2730
|
created_at: string(),
|
|
2663
|
-
custom_data: record(any())
|
|
2731
|
+
custom_data: nullable(record(any()))
|
|
2664
2732
|
});
|
|
2665
2733
|
const JobSchema = transform(JobPayloadSchema, (schema) => {
|
|
2666
2734
|
const isNew = new Date(schema.created_at).getTime() > Date.now() - SEVEN_DAYS_MS;
|
|
@@ -2668,6 +2736,17 @@ const JobSchema = transform(JobPayloadSchema, (schema) => {
|
|
|
2668
2736
|
style: "currency",
|
|
2669
2737
|
currency: schema.pay_currency
|
|
2670
2738
|
});
|
|
2739
|
+
const pay = (() => {
|
|
2740
|
+
if (schema.pay_display === false)
|
|
2741
|
+
return void 0;
|
|
2742
|
+
if (schema.pay_mask)
|
|
2743
|
+
return "Competitive";
|
|
2744
|
+
if (schema.pay_max && schema.pay_min)
|
|
2745
|
+
return numberFormatter.formatRange(+schema.pay_min, +schema.pay_max);
|
|
2746
|
+
if (schema.pay)
|
|
2747
|
+
return [numberFormatter.format(+schema.pay), payPeriods[schema.pay_type]].join(" ");
|
|
2748
|
+
throw new Error("Invalid pay data");
|
|
2749
|
+
})();
|
|
2671
2750
|
return {
|
|
2672
2751
|
id: schema.id,
|
|
2673
2752
|
isNew,
|
|
@@ -2677,7 +2756,7 @@ const JobSchema = transform(JobPayloadSchema, (schema) => {
|
|
|
2677
2756
|
},
|
|
2678
2757
|
employmentType: schema.employment_type,
|
|
2679
2758
|
locationType: schema.location_type,
|
|
2680
|
-
pay
|
|
2759
|
+
pay,
|
|
2681
2760
|
description: schema.description,
|
|
2682
2761
|
title: schema.title,
|
|
2683
2762
|
coordinates: schema.coordinates,
|
|
@@ -2795,149 +2874,138 @@ const defineConfig = (options) => {
|
|
|
2795
2874
|
return { compose: compose1, cva: cva1, cx: cx1 };
|
|
2796
2875
|
};
|
|
2797
2876
|
const { compose, cva, cx } = defineConfig();
|
|
2798
|
-
var f$2 = 0;
|
|
2799
|
-
function u(e2, t2, n2, o2, i2, u2) {
|
|
2800
|
-
var a2, c4, p2 = {};
|
|
2801
|
-
for (c4 in t2)
|
|
2802
|
-
"ref" == c4 ? a2 = t2[c4] : p2[c4] = t2[c4];
|
|
2803
|
-
var l2 = { type: e2, props: p2, key: n2, ref: a2, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, constructor: void 0, __v: --f$2, __i: -1, __u: 0, __source: i2, __self: u2 };
|
|
2804
|
-
if ("function" == typeof e2 && (a2 = e2.defaultProps))
|
|
2805
|
-
for (c4 in a2)
|
|
2806
|
-
void 0 === p2[c4] && (p2[c4] = a2[c4]);
|
|
2807
|
-
return l$2.vnode && l$2.vnode(l2), l2;
|
|
2808
|
-
}
|
|
2809
2877
|
const icons = {
|
|
2810
|
-
briefcase: u(g$3, {
|
|
2811
|
-
children: [u("path", {
|
|
2878
|
+
briefcase: u$1(g$3, {
|
|
2879
|
+
children: [u$1("path", {
|
|
2812
2880
|
d: "M17.25 7.75H6.75C5.64543 7.75 4.75 8.64543 4.75 9.75V16.25C4.75 17.3546 5.64543 18.25 6.75 18.25H17.25C18.3546 18.25 19.25 17.3546 19.25 16.25V9.75C19.25 8.64543 18.3546 7.75 17.25 7.75Z"
|
|
2813
|
-
}), u("path", {
|
|
2881
|
+
}), u$1("path", {
|
|
2814
2882
|
d: "M4.75 11.75H19.25"
|
|
2815
|
-
}), u("path", {
|
|
2883
|
+
}), u$1("path", {
|
|
2816
2884
|
d: "M13.25 12.25V13.25H10.75V12.25H13.25Z"
|
|
2817
|
-
}), u("path", {
|
|
2885
|
+
}), u$1("path", {
|
|
2818
2886
|
d: "M9.25 7.5V6.25C9.25 5.42157 9.92157 4.75 10.75 4.75H13.25C14.0784 4.75 14.75 5.42157 14.75 6.25V7.5"
|
|
2819
2887
|
})]
|
|
2820
2888
|
}),
|
|
2821
|
-
brand: u(g$3, {
|
|
2822
|
-
children: [u("path", {
|
|
2889
|
+
brand: u$1(g$3, {
|
|
2890
|
+
children: [u$1("path", {
|
|
2823
2891
|
d: "M18.45 13.9901C18.1288 15.031 17.5574 15.9886 16.773 16.773C15.5071 18.0388 13.7902 18.75 12 18.75C10.2098 18.75 8.49289 18.0388 7.22702 16.773C6.44262 15.9886 5.87122 15.031 5.55003 13.9901"
|
|
2824
|
-
}), u("path", {
|
|
2892
|
+
}), u$1("path", {
|
|
2825
2893
|
d: "M9.87868 14.8713C10.1573 15.1499 10.488 15.3709 10.8519 15.5216C11.2159 15.6724 11.606 15.75 12 15.75C12.394 15.75 12.7841 15.6724 13.1481 15.5216C13.512 15.3709 13.8427 15.1499 14.1213 14.8713"
|
|
2826
|
-
}), u("path", {
|
|
2894
|
+
}), u$1("path", {
|
|
2827
2895
|
d: "M17.0791 7.55413C16.7038 7.12546 16.2758 6.74602 15.8053 6.42486"
|
|
2828
|
-
}), u("path", {
|
|
2896
|
+
}), u$1("path", {
|
|
2829
2897
|
d: "M12.8451 5.30311C12.2799 5.23179 11.7079 5.2323 11.1428 5.30465"
|
|
2830
|
-
}), u("path", {
|
|
2898
|
+
}), u$1("path", {
|
|
2831
2899
|
d: "M8.25666 6.38307C7.78259 6.69901 7.35043 7.07369 6.97047 7.49818"
|
|
2832
|
-
}), u("circle", {
|
|
2900
|
+
}), u$1("circle", {
|
|
2833
2901
|
cx: "18.75",
|
|
2834
2902
|
cy: "12",
|
|
2835
2903
|
r: "2"
|
|
2836
|
-
}), u("circle", {
|
|
2904
|
+
}), u$1("circle", {
|
|
2837
2905
|
cx: "5.25",
|
|
2838
2906
|
cy: "12",
|
|
2839
2907
|
r: "2"
|
|
2840
2908
|
})]
|
|
2841
2909
|
}),
|
|
2842
|
-
building: u(g$3, {
|
|
2843
|
-
children: [u("path", {
|
|
2910
|
+
building: u$1(g$3, {
|
|
2911
|
+
children: [u$1("path", {
|
|
2844
2912
|
d: "M16.75 10.25H13.75"
|
|
2845
|
-
}), u("path", {
|
|
2913
|
+
}), u$1("path", {
|
|
2846
2914
|
d: "M16.75 13.25H13.75"
|
|
2847
|
-
}), u("path", {
|
|
2915
|
+
}), u$1("path", {
|
|
2848
2916
|
d: "M3 18.25H5.25006M5.25006 18.25V14.25C5.25006 13.1454 6.14549 12.25 7.25006 12.25H10.2501L10.25 8.25003C10.25 6.59316 11.5932 5.25 13.25 5.25H17.25C18.9069 5.25 20.25 6.59315 20.25 8.25V18.25H5.25006Z"
|
|
2849
|
-
}), u("path", {
|
|
2917
|
+
}), u$1("path", {
|
|
2850
2918
|
d: "M10.25 12.25V18.25"
|
|
2851
2919
|
})]
|
|
2852
2920
|
}),
|
|
2853
|
-
circles: u(g$3, {
|
|
2854
|
-
children: [u("path", {
|
|
2921
|
+
circles: u$1(g$3, {
|
|
2922
|
+
children: [u$1("path", {
|
|
2855
2923
|
d: "M16.773 16.773C15.829 17.717 14.6262 18.3599 13.3169 18.6203C12.0075 18.8808 10.6503 18.7471 9.41689 18.2362C8.18349 17.7253 7.12928 16.8601 6.38758 15.7501C5.64588 14.6401 5.25 13.335 5.25 12C5.25 10.665 5.64588 9.35993 6.38758 8.2499C7.12928 7.13987 8.18349 6.27471 9.41689 5.76381C10.6503 5.25292 12.0075 5.11925 13.3169 5.3797C14.6262 5.64015 15.829 6.28302 16.773 7.22703"
|
|
2856
|
-
}), u("path", {
|
|
2924
|
+
}), u$1("path", {
|
|
2857
2925
|
d: "M9.34835 9.34835C9.8728 8.8239 10.541 8.46675 11.2684 8.32206C11.9958 8.17736 12.7498 8.25162 13.4351 8.53545C14.1203 8.81928 14.706 9.29993 15.118 9.91661C15.5301 10.5333 15.75 11.2583 15.75 12C15.75 12.7417 15.5301 13.4667 15.118 14.0834C14.706 14.7001 14.1203 15.1807 13.4351 15.4645C12.7498 15.7484 11.9958 15.8226 11.2684 15.6779C10.541 15.5333 9.8728 15.1761 9.34835 14.6517"
|
|
2858
2926
|
})]
|
|
2859
2927
|
}),
|
|
2860
|
-
clock: u(g$3, {
|
|
2861
|
-
children: [u("path", {
|
|
2928
|
+
clock: u$1(g$3, {
|
|
2929
|
+
children: [u$1("path", {
|
|
2862
2930
|
d: "M14 9L12 13L9.5 12"
|
|
2863
|
-
}), u("path", {
|
|
2931
|
+
}), u$1("path", {
|
|
2864
2932
|
d: "M18.75 12C18.75 15.7279 15.7279 18.75 12 18.75C8.27208 18.75 5.25 15.7279 5.25 12C5.25 8.27208 8.27208 5.25 12 5.25C15.7279 5.25 18.75 8.27208 18.75 12Z"
|
|
2865
2933
|
})]
|
|
2866
2934
|
}),
|
|
2867
|
-
filter: u(g$3, {
|
|
2868
|
-
children: u("path", {
|
|
2935
|
+
filter: u$1(g$3, {
|
|
2936
|
+
children: u$1("path", {
|
|
2869
2937
|
d: "M19.25 7H4.75V8.5L10.25 12.25V17.5H13.75V12.25L19.25 8.5V7Z"
|
|
2870
2938
|
})
|
|
2871
2939
|
}),
|
|
2872
|
-
globe: u(g$3, {
|
|
2873
|
-
children: [u("path", {
|
|
2940
|
+
globe: u$1(g$3, {
|
|
2941
|
+
children: [u$1("path", {
|
|
2874
2942
|
d: "M5 13.75H19"
|
|
2875
|
-
}), u("path", {
|
|
2943
|
+
}), u$1("path", {
|
|
2876
2944
|
d: "M5 10.25H19"
|
|
2877
|
-
}), u("path", {
|
|
2945
|
+
}), u$1("path", {
|
|
2878
2946
|
d: "M12 4.75C15.5 9.25 15.5 14.75 12.0001 19.25C8.50012 14.75 8.50005 9.25 12 4.75Z"
|
|
2879
|
-
}), u("circle", {
|
|
2947
|
+
}), u$1("circle", {
|
|
2880
2948
|
cx: "12",
|
|
2881
2949
|
cy: "12",
|
|
2882
2950
|
r: "7.25"
|
|
2883
2951
|
})]
|
|
2884
2952
|
}),
|
|
2885
|
-
magnifier: u(g$3, {
|
|
2886
|
-
children: [u("path", {
|
|
2953
|
+
magnifier: u$1(g$3, {
|
|
2954
|
+
children: [u$1("path", {
|
|
2887
2955
|
d: "M15.5659 15.5659C14.4875 16.6442 13.025 17.25 11.5 17.25C9.97501 17.25 8.51247 16.6442 7.43414 15.5659C6.3558 14.4875 5.75 13.025 5.75 11.5C5.75 9.97501 6.3558 8.51247 7.43414 7.43414C8.51247 6.3558 9.97501 5.75 11.5 5.75C13.025 5.75 14.4875 6.3558 15.5659 7.43414C16.6442 8.51247 17.25 9.97501 17.25 11.5C17.25 13.025 16.6442 14.4875 15.5659 15.5659L15.5659 15.5659Z"
|
|
2888
|
-
}), u("path", {
|
|
2956
|
+
}), u$1("path", {
|
|
2889
2957
|
d: "M11.5 8.75C11.8611 8.75 12.2187 8.82113 12.5524 8.95933C12.886 9.09753 13.1892 9.3001 13.4445 9.55546C13.6999 9.81082 13.9025 10.114 14.0407 10.4476C14.1789 10.7813 14.25 11.1389 14.25 11.5"
|
|
2890
|
-
}), u("path", {
|
|
2958
|
+
}), u$1("path", {
|
|
2891
2959
|
d: "M16 16L19 19"
|
|
2892
2960
|
})]
|
|
2893
2961
|
}),
|
|
2894
|
-
mapPin: u(g$3, {
|
|
2895
|
-
children: u(g$3, {
|
|
2896
|
-
children: [u("circle", {
|
|
2962
|
+
mapPin: u$1(g$3, {
|
|
2963
|
+
children: u$1(g$3, {
|
|
2964
|
+
children: [u$1("circle", {
|
|
2897
2965
|
cx: "12",
|
|
2898
2966
|
cy: "9",
|
|
2899
2967
|
r: "2"
|
|
2900
|
-
}), u("path", {
|
|
2968
|
+
}), u$1("path", {
|
|
2901
2969
|
d: "M16.2426 16.8358C17.0818 17.1155 17.6532 17.4719 17.8847 17.8598C18.1162 18.2478 17.9974 18.6499 17.5433 19.0154C17.0892 19.3808 16.3201 19.6932 15.3334 19.9129C14.3467 20.1327 13.1867 20.25 12 20.25C10.8133 20.25 9.65327 20.1327 8.66658 19.9129C7.67988 19.6932 6.91085 19.3808 6.45672 19.0154C6.0026 18.6499 5.88378 18.2478 6.11529 17.8598C6.3468 17.4719 6.91825 17.1155 7.75736 16.8358"
|
|
2902
|
-
}), u("path", {
|
|
2970
|
+
}), u$1("path", {
|
|
2903
2971
|
d: "M17.25 9C17.25 13.3995 12 16.75 12 16.75C12 16.75 6.75 13.3995 6.75 9C6.75 6.10051 9.10051 3.75 12 3.75C14.8995 3.75 17.25 6.10051 17.25 9Z"
|
|
2904
2972
|
})]
|
|
2905
2973
|
})
|
|
2906
2974
|
}),
|
|
2907
|
-
sunset: u(g$3, {
|
|
2908
|
-
children: [u("path", {
|
|
2975
|
+
sunset: u$1(g$3, {
|
|
2976
|
+
children: [u$1("path", {
|
|
2909
2977
|
d: "M18.5 8.5L17.5 9.5"
|
|
2910
|
-
}), u("path", {
|
|
2978
|
+
}), u$1("path", {
|
|
2911
2979
|
d: "M5.5 8.5L6.5 9.5"
|
|
2912
|
-
}), u("path", {
|
|
2980
|
+
}), u$1("path", {
|
|
2913
2981
|
d: "M12 6L12 7.5"
|
|
2914
|
-
}), u("path", {
|
|
2982
|
+
}), u$1("path", {
|
|
2915
2983
|
d: "M7.5 15.25L7.5 14.25C7.5 13.6591 7.6164 13.0739 7.84254 12.5279C8.06869 11.982 8.40016 11.4859 8.81802 11.068C9.23588 10.6502 9.73196 10.3187 10.2779 10.0925C10.8239 9.8664 11.4091 9.75 12 9.75C12.5909 9.75 13.1761 9.8664 13.7221 10.0925C14.268 10.3187 14.7641 10.6502 15.182 11.068C15.5998 11.4859 15.9313 11.982 16.1575 12.5279C16.3836 13.0739 16.5 13.6591 16.5 14.25V15.25"
|
|
2916
|
-
}), u("path", {
|
|
2984
|
+
}), u$1("path", {
|
|
2917
2985
|
d: "M20.25 15.25H12H3.75"
|
|
2918
|
-
}), u("path", {
|
|
2986
|
+
}), u$1("path", {
|
|
2919
2987
|
d: "M16.25 18.25H12L7.75 18.25"
|
|
2920
2988
|
})]
|
|
2921
2989
|
}),
|
|
2922
|
-
x: u("path", {
|
|
2990
|
+
x: u$1("path", {
|
|
2923
2991
|
d: "M8 8l8 8M8 16l8 -8"
|
|
2924
2992
|
}),
|
|
2925
|
-
"chevron-right": u("path", {
|
|
2993
|
+
"chevron-right": u$1("path", {
|
|
2926
2994
|
d: "M11 8L15 12L11 16"
|
|
2927
2995
|
})
|
|
2928
2996
|
};
|
|
2929
2997
|
const IconSpritesheet = ({
|
|
2930
2998
|
theme
|
|
2931
2999
|
}) => {
|
|
2932
|
-
return u("svg", {
|
|
3000
|
+
return u$1("svg", {
|
|
2933
3001
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2934
3002
|
style: {
|
|
2935
3003
|
display: "none"
|
|
2936
3004
|
},
|
|
2937
|
-
children: u("defs", {
|
|
2938
|
-
children: Object.entries(icons).map(([name, icon]) => u("symbol", {
|
|
3005
|
+
children: u$1("defs", {
|
|
3006
|
+
children: Object.entries(icons).map(([name, icon]) => u$1("symbol", {
|
|
2939
3007
|
id: `i-icon-${name}`,
|
|
2940
|
-
children: u("g", {
|
|
3008
|
+
children: u$1("g", {
|
|
2941
3009
|
fill: "none",
|
|
2942
3010
|
"stroke-width": theme.mode === "dark" && theme.highcontrast != true ? "1" : "1.5",
|
|
2943
3011
|
"stroke-linecap": "round",
|
|
@@ -2953,12 +3021,12 @@ const Icon = ({
|
|
|
2953
3021
|
name,
|
|
2954
3022
|
...props
|
|
2955
3023
|
}) => {
|
|
2956
|
-
return u("svg", {
|
|
3024
|
+
return u$1("svg", {
|
|
2957
3025
|
viewBox: "0 0 24 24",
|
|
2958
3026
|
width: 24,
|
|
2959
3027
|
height: 24,
|
|
2960
3028
|
...props,
|
|
2961
|
-
children: u("use", {
|
|
3029
|
+
children: u$1("use", {
|
|
2962
3030
|
href: `#i-icon-${name}`
|
|
2963
3031
|
})
|
|
2964
3032
|
});
|
|
@@ -3028,7 +3096,7 @@ const Filter = ({
|
|
|
3028
3096
|
const selectedValues = getSelectedValues(current);
|
|
3029
3097
|
const hasValue = selectedValues.length > 0;
|
|
3030
3098
|
const showClearButton = hasValue && active == false;
|
|
3031
|
-
return u("section", {
|
|
3099
|
+
return u$1("section", {
|
|
3032
3100
|
"data-filter-key": filterKey,
|
|
3033
3101
|
role: "tab",
|
|
3034
3102
|
"aria-label": title,
|
|
@@ -3036,24 +3104,24 @@ const Filter = ({
|
|
|
3036
3104
|
class: wrapperClass$1({
|
|
3037
3105
|
hasValue
|
|
3038
3106
|
}),
|
|
3039
|
-
children: [u("div", {
|
|
3107
|
+
children: [u$1("div", {
|
|
3040
3108
|
class: "w-full min-w-0 flex-1",
|
|
3041
|
-
children: [u("button", {
|
|
3109
|
+
children: [u$1("button", {
|
|
3042
3110
|
"aria-label": active ? "Close filter" : "Open filter",
|
|
3043
3111
|
class: "ease-expo-out fr rounded-section flex w-full items-center gap-2 px-4 py-4 transition-all duration-300",
|
|
3044
3112
|
onClick: () => onActiveChange(!active),
|
|
3045
|
-
children: [u(Icon, {
|
|
3113
|
+
children: [u$1(Icon, {
|
|
3046
3114
|
class: iconClass({
|
|
3047
3115
|
hasValue
|
|
3048
3116
|
}),
|
|
3049
3117
|
name: icon
|
|
3050
|
-
}), u("p", {
|
|
3118
|
+
}), u$1("p", {
|
|
3051
3119
|
class: textClass({
|
|
3052
3120
|
hasValue
|
|
3053
3121
|
}),
|
|
3054
3122
|
children: title
|
|
3055
3123
|
})]
|
|
3056
|
-
}), u(FilterInner, {
|
|
3124
|
+
}), u$1(FilterInner, {
|
|
3057
3125
|
active,
|
|
3058
3126
|
current,
|
|
3059
3127
|
onValueChange,
|
|
@@ -3062,13 +3130,13 @@ const Filter = ({
|
|
|
3062
3130
|
onSkip,
|
|
3063
3131
|
state
|
|
3064
3132
|
})]
|
|
3065
|
-
}), showClearButton && u("div", {
|
|
3133
|
+
}), showClearButton && u$1("div", {
|
|
3066
3134
|
class: "flex flex-none items-center justify-center p-4",
|
|
3067
|
-
children: u("button", {
|
|
3135
|
+
children: u$1("button", {
|
|
3068
3136
|
"aria-label": "Clear",
|
|
3069
3137
|
class: "fr touch-hitbox ease-expo-out hover:bg-interactive-accent-bg-hover text-interactive-accent-text rounded-interactive relative cursor-pointer p-1 transition-all duration-300 active:scale-95",
|
|
3070
3138
|
onClick: () => onValueChange(void 0),
|
|
3071
|
-
children: u(Icon, {
|
|
3139
|
+
children: u$1(Icon, {
|
|
3072
3140
|
name: "x"
|
|
3073
3141
|
})
|
|
3074
3142
|
})
|
|
@@ -3098,32 +3166,32 @@ const FilterInner = ({
|
|
|
3098
3166
|
const selectedValues = getSelectedValues(internalValue);
|
|
3099
3167
|
const hasValue = selectedValues.length > 0;
|
|
3100
3168
|
if (active)
|
|
3101
|
-
return u("div", {
|
|
3169
|
+
return u$1("div", {
|
|
3102
3170
|
class: "-mt-4 pt-2",
|
|
3103
|
-
children: [state === "loading" ? u("div", {
|
|
3171
|
+
children: [state === "loading" ? u$1("div", {
|
|
3104
3172
|
class: "flex px-4 pb-1 pt-2",
|
|
3105
|
-
children: u("div", {
|
|
3173
|
+
children: u$1("div", {
|
|
3106
3174
|
"aria-hidden": true,
|
|
3107
3175
|
class: tagClass$1({
|
|
3108
3176
|
size: "lg",
|
|
3109
3177
|
active: false,
|
|
3110
3178
|
class: "animate-skeleton"
|
|
3111
3179
|
}),
|
|
3112
|
-
children: u("span", {
|
|
3180
|
+
children: u$1("span", {
|
|
3113
3181
|
class: "inline-block w-[10ch]"
|
|
3114
3182
|
})
|
|
3115
3183
|
})
|
|
3116
|
-
}) : u("ul", {
|
|
3184
|
+
}) : u$1("ul", {
|
|
3117
3185
|
"aria-label": "Filter options",
|
|
3118
3186
|
class: "hide-scrollbars flex select-none gap-1.5 overflow-x-auto px-4 pb-1 pt-2",
|
|
3119
3187
|
children: suggestions.map((suggestion, k2) => {
|
|
3120
3188
|
const active2 = selectedValues.includes(suggestion.value);
|
|
3121
|
-
return u("li", {
|
|
3189
|
+
return u$1("li", {
|
|
3122
3190
|
style: {
|
|
3123
3191
|
animationDelay: k2 * 0.01 + "s"
|
|
3124
3192
|
},
|
|
3125
3193
|
class: "animate-appear-tag origin-top",
|
|
3126
|
-
children: u("button", {
|
|
3194
|
+
children: u$1("button", {
|
|
3127
3195
|
"data-filter": true,
|
|
3128
3196
|
"data-current-value": active2 ? "true" : void 0,
|
|
3129
3197
|
onClick: () => {
|
|
@@ -3158,9 +3226,9 @@ const FilterInner = ({
|
|
|
3158
3226
|
})
|
|
3159
3227
|
}, suggestion.value);
|
|
3160
3228
|
})
|
|
3161
|
-
}), u("div", {
|
|
3229
|
+
}), u$1("div", {
|
|
3162
3230
|
class: "flex justify-end p-2",
|
|
3163
|
-
children: u("button", {
|
|
3231
|
+
children: u$1("button", {
|
|
3164
3232
|
class: btnNextClass({
|
|
3165
3233
|
hasValue
|
|
3166
3234
|
}),
|
|
@@ -3170,26 +3238,26 @@ const FilterInner = ({
|
|
|
3170
3238
|
}
|
|
3171
3239
|
onSkip();
|
|
3172
3240
|
},
|
|
3173
|
-
children: [hasValue ? "Done" : "Skip", " ", u(Icon, {
|
|
3241
|
+
children: [hasValue ? "Done" : "Skip", " ", u$1(Icon, {
|
|
3174
3242
|
name: "chevron-right"
|
|
3175
3243
|
})]
|
|
3176
3244
|
}, hasValue ? "done" : "skip")
|
|
3177
3245
|
})]
|
|
3178
3246
|
});
|
|
3179
3247
|
if (hasValue)
|
|
3180
|
-
return u("button", {
|
|
3248
|
+
return u$1("button", {
|
|
3181
3249
|
"aria-label": "Current value",
|
|
3182
3250
|
tabIndex: -1,
|
|
3183
3251
|
"data-current-value": "true",
|
|
3184
3252
|
ref: currentRef,
|
|
3185
3253
|
class: "fr -mt-4 w-full select-none overflow-hidden px-4 pb-4 pt-2 focus:outline-none",
|
|
3186
3254
|
onClick: () => onActiveChange(true),
|
|
3187
|
-
children: u("ul", {
|
|
3255
|
+
children: u$1("ul", {
|
|
3188
3256
|
class: "flex flex-wrap gap-1",
|
|
3189
3257
|
children: suggestions.filter((s2) => selectedValues.includes(s2.value)).map((suggestion) => {
|
|
3190
|
-
return u("li", {
|
|
3258
|
+
return u$1("li", {
|
|
3191
3259
|
class: "animate-selected-tag block max-w-full",
|
|
3192
|
-
children: u("span", {
|
|
3260
|
+
children: u$1("span", {
|
|
3193
3261
|
class: tagClass$1({
|
|
3194
3262
|
size: "sm",
|
|
3195
3263
|
active: true
|
|
@@ -3228,6 +3296,75 @@ const useFilterKeyboardFocus = (activeKey, ref) => {
|
|
|
3228
3296
|
focusFirstAvailableOption(keyToFocus, ref);
|
|
3229
3297
|
}, [activeKey, previousActiveKey, ref]);
|
|
3230
3298
|
};
|
|
3299
|
+
const filterIcons = {
|
|
3300
|
+
contract_type: "clock",
|
|
3301
|
+
title: "magnifier",
|
|
3302
|
+
city: "mapPin",
|
|
3303
|
+
town: "mapPin",
|
|
3304
|
+
address_1: "mapPin",
|
|
3305
|
+
address_2: "mapPin",
|
|
3306
|
+
country: "mapPin",
|
|
3307
|
+
company_name: "briefcase",
|
|
3308
|
+
category: "briefcase"
|
|
3309
|
+
};
|
|
3310
|
+
const FilterSection = ({
|
|
3311
|
+
properties,
|
|
3312
|
+
values,
|
|
3313
|
+
availableProperties,
|
|
3314
|
+
onFilterValueChange,
|
|
3315
|
+
state,
|
|
3316
|
+
parentRef
|
|
3317
|
+
}) => {
|
|
3318
|
+
var _a;
|
|
3319
|
+
const [activeKey, setActiveKey] = h((_a = properties[0]) == null ? void 0 : _a.key);
|
|
3320
|
+
useFilterKeyboardFocus(activeKey, parentRef);
|
|
3321
|
+
return u$1("div", {
|
|
3322
|
+
role: "tablist",
|
|
3323
|
+
class: "grid items-stretch gap-2 px-4 md:flex md:flex-col md:px-0",
|
|
3324
|
+
children: properties.map((property) => {
|
|
3325
|
+
var _a2;
|
|
3326
|
+
return u$1(ErrorBoundary, {
|
|
3327
|
+
Fallback,
|
|
3328
|
+
children: u$1(Filter, {
|
|
3329
|
+
icon: property.icon ?? filterIcons[property.key] ?? "filter",
|
|
3330
|
+
filterKey: property.key,
|
|
3331
|
+
title: property.label,
|
|
3332
|
+
suggestions: ((_a2 = availableProperties == null ? void 0 : availableProperties[property.key]) == null ? void 0 : _a2.map((property2) => ({
|
|
3333
|
+
label: property2,
|
|
3334
|
+
value: property2
|
|
3335
|
+
}))) ?? [],
|
|
3336
|
+
onActiveChange: (active) => setActiveKey(active ? property.key : void 0),
|
|
3337
|
+
active: activeKey === property.key,
|
|
3338
|
+
current: values[property.key] ?? {
|
|
3339
|
+
select: property.select,
|
|
3340
|
+
value: void 0
|
|
3341
|
+
},
|
|
3342
|
+
state,
|
|
3343
|
+
onValueChange: (value) => {
|
|
3344
|
+
const newState = onFilterValueChange(property, value, activeKey);
|
|
3345
|
+
setActiveKey(newState.newActiveKey);
|
|
3346
|
+
},
|
|
3347
|
+
onSkip: () => {
|
|
3348
|
+
var _a3;
|
|
3349
|
+
const currentIndex = properties.findIndex((p2) => p2.key === activeKey);
|
|
3350
|
+
const nextPropertyKey = currentIndex !== -1 ? (_a3 = properties[currentIndex + 1]) == null ? void 0 : _a3.key : void 0;
|
|
3351
|
+
setActiveKey(nextPropertyKey);
|
|
3352
|
+
}
|
|
3353
|
+
})
|
|
3354
|
+
}, property.key);
|
|
3355
|
+
})
|
|
3356
|
+
});
|
|
3357
|
+
};
|
|
3358
|
+
const SkeletonText = ({
|
|
3359
|
+
chars
|
|
3360
|
+
}) => {
|
|
3361
|
+
return u$1("span", {
|
|
3362
|
+
style: {
|
|
3363
|
+
width: chars + "ch"
|
|
3364
|
+
},
|
|
3365
|
+
class: "rounded-job-tag inline-block h-[1lh] bg-[currentColor] opacity-25"
|
|
3366
|
+
});
|
|
3367
|
+
};
|
|
3231
3368
|
const wrapperClass = cva({
|
|
3232
3369
|
base: "rounded-job-card bg-job-card-bg ring-width-job-card ring-job-card-stroke active:bg-job-card-bg-active active:ring-job-card-stroke-active flex gap-4 fr ease-expo-out min-w-0 p-4 transition-all duration-500"
|
|
3233
3370
|
});
|
|
@@ -3249,63 +3386,118 @@ const tagClass = cva({
|
|
|
3249
3386
|
const JobCard = ({
|
|
3250
3387
|
job
|
|
3251
3388
|
}) => {
|
|
3252
|
-
return u("a", {
|
|
3389
|
+
return u$1("a", {
|
|
3253
3390
|
href: "",
|
|
3254
3391
|
class: wrapperClass(),
|
|
3255
|
-
children: [u("div", {
|
|
3392
|
+
children: [u$1("div", {
|
|
3256
3393
|
class: "flex flex-1 flex-col gap-4",
|
|
3257
|
-
children: [u("div", {
|
|
3394
|
+
children: [u$1("div", {
|
|
3258
3395
|
class: "flex flex-col items-start gap-1",
|
|
3259
|
-
children: [job.isNew ? u("span", {
|
|
3396
|
+
children: [job.isNew ? u$1("span", {
|
|
3260
3397
|
class: badgeClass(),
|
|
3261
3398
|
children: "NEW"
|
|
3262
|
-
}) : u("p", {
|
|
3399
|
+
}) : u$1("p", {
|
|
3263
3400
|
class: "text-style-job-card-info text-copy-job-info",
|
|
3264
3401
|
children: ["Posted ", job.relativePostedDate]
|
|
3265
|
-
}), u("div", {
|
|
3402
|
+
}), u$1("div", {
|
|
3266
3403
|
class: "flex flex-col gap-1",
|
|
3267
|
-
children: [u("p", {
|
|
3404
|
+
children: [u$1("p", {
|
|
3268
3405
|
class: "text-style-job-card-title text-copy-neutral",
|
|
3269
3406
|
children: job.title
|
|
3270
|
-
}), u("p", {
|
|
3407
|
+
}), u$1("p", {
|
|
3271
3408
|
class: "text-style-job-card text-copy-neutral-lowcontrast",
|
|
3272
3409
|
children: job.company.name
|
|
3273
3410
|
})]
|
|
3274
3411
|
})]
|
|
3275
|
-
}), u("div", {
|
|
3412
|
+
}), u$1("div", {
|
|
3276
3413
|
class: "flex flex-col items-start gap-2",
|
|
3277
|
-
children: [job.pay && u("span", {
|
|
3414
|
+
children: [job.pay && u$1("span", {
|
|
3278
3415
|
class: tagClass({
|
|
3279
3416
|
colorScheme: "monetary"
|
|
3280
3417
|
}),
|
|
3281
3418
|
children: job.pay
|
|
3282
|
-
}), u("div", {
|
|
3419
|
+
}), u$1("div", {
|
|
3283
3420
|
class: "flex items-center gap-2",
|
|
3284
|
-
children: job.contractType && u("span", {
|
|
3421
|
+
children: job.contractType && u$1("span", {
|
|
3285
3422
|
class: tagClass(),
|
|
3286
3423
|
children: job.contractType
|
|
3287
3424
|
})
|
|
3288
3425
|
})]
|
|
3289
3426
|
})]
|
|
3290
|
-
}), u("div", {
|
|
3427
|
+
}), u$1("div", {
|
|
3291
3428
|
class: "flex items-center",
|
|
3292
|
-
children: u(Icon, {
|
|
3429
|
+
children: u$1(Icon, {
|
|
3293
3430
|
name: "chevron-right",
|
|
3294
3431
|
class: "text-copy-neutral-icon"
|
|
3295
3432
|
})
|
|
3296
3433
|
})]
|
|
3297
3434
|
});
|
|
3298
3435
|
};
|
|
3299
|
-
const
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
|
|
3303
|
-
|
|
3304
|
-
|
|
3305
|
-
|
|
3306
|
-
|
|
3307
|
-
|
|
3308
|
-
|
|
3436
|
+
const JobCardSkeleton = ({
|
|
3437
|
+
animationDelay,
|
|
3438
|
+
seed
|
|
3439
|
+
}) => {
|
|
3440
|
+
return u$1("div", {
|
|
3441
|
+
"aria-hidden": true,
|
|
3442
|
+
style: {
|
|
3443
|
+
animationDelay: animationDelay + "s"
|
|
3444
|
+
},
|
|
3445
|
+
class: wrapperClass({
|
|
3446
|
+
class: "animate-skeleton"
|
|
3447
|
+
}),
|
|
3448
|
+
children: [u$1("div", {
|
|
3449
|
+
class: "flex flex-1 flex-col gap-4",
|
|
3450
|
+
children: [u$1("div", {
|
|
3451
|
+
class: "flex flex-col items-start gap-1",
|
|
3452
|
+
children: [u$1("p", {
|
|
3453
|
+
class: "text-style-job-card-info text-copy-job-info",
|
|
3454
|
+
children: u$1(SkeletonText, {
|
|
3455
|
+
chars: 12
|
|
3456
|
+
})
|
|
3457
|
+
}), u$1("div", {
|
|
3458
|
+
class: "flex flex-col gap-1",
|
|
3459
|
+
children: [u$1("p", {
|
|
3460
|
+
class: "text-style-job-card-title text-copy-neutral",
|
|
3461
|
+
children: u$1(SkeletonText, {
|
|
3462
|
+
chars: 13 + (seed + 5) * seed % 7
|
|
3463
|
+
})
|
|
3464
|
+
}), u$1("p", {
|
|
3465
|
+
class: "text-style-job-card text-copy-neutral-lowcontrast",
|
|
3466
|
+
children: u$1(SkeletonText, {
|
|
3467
|
+
chars: 7 + seed * seed % 3
|
|
3468
|
+
})
|
|
3469
|
+
})]
|
|
3470
|
+
})]
|
|
3471
|
+
}), u$1("div", {
|
|
3472
|
+
class: "flex flex-col items-start gap-2",
|
|
3473
|
+
children: [u$1("span", {
|
|
3474
|
+
class: tagClass({
|
|
3475
|
+
colorScheme: "default",
|
|
3476
|
+
class: "h-[1lh] w-[10ch]"
|
|
3477
|
+
})
|
|
3478
|
+
}), u$1("div", {
|
|
3479
|
+
class: "flex items-center gap-2",
|
|
3480
|
+
children: [u$1("span", {
|
|
3481
|
+
class: tagClass({
|
|
3482
|
+
colorScheme: "default",
|
|
3483
|
+
class: "h-[1lh] w-[6ch]"
|
|
3484
|
+
})
|
|
3485
|
+
}), u$1("span", {
|
|
3486
|
+
class: tagClass({
|
|
3487
|
+
colorScheme: "default",
|
|
3488
|
+
class: "h-[1lh] w-[8ch]"
|
|
3489
|
+
})
|
|
3490
|
+
})]
|
|
3491
|
+
})]
|
|
3492
|
+
})]
|
|
3493
|
+
}), u$1("div", {
|
|
3494
|
+
class: "flex items-center",
|
|
3495
|
+
children: u$1(Icon, {
|
|
3496
|
+
name: "chevron-right",
|
|
3497
|
+
class: "text-copy-neutral-icon"
|
|
3498
|
+
})
|
|
3499
|
+
})]
|
|
3500
|
+
});
|
|
3309
3501
|
};
|
|
3310
3502
|
const propertiesToDefaultValues = (properties) => properties.reduce((acc, property) => {
|
|
3311
3503
|
switch (property.select) {
|
|
@@ -3376,12 +3568,12 @@ const JobSearch = ({
|
|
|
3376
3568
|
logger,
|
|
3377
3569
|
params
|
|
3378
3570
|
}) => {
|
|
3379
|
-
var _a;
|
|
3380
3571
|
const appRef = _(null);
|
|
3381
3572
|
const [values, setValues] = h(() => propertiesToDefaultValues(params.properties));
|
|
3382
3573
|
const {
|
|
3383
3574
|
data,
|
|
3384
|
-
isLoading
|
|
3575
|
+
isLoading,
|
|
3576
|
+
error
|
|
3385
3577
|
} = useSWR(JSON.stringify(values), () => getJobSearchResults({
|
|
3386
3578
|
apiClient,
|
|
3387
3579
|
logger,
|
|
@@ -3392,81 +3584,76 @@ const JobSearch = ({
|
|
|
3392
3584
|
revalidateOnReconnect: false,
|
|
3393
3585
|
revalidateIfStale: false
|
|
3394
3586
|
});
|
|
3587
|
+
if (error) {
|
|
3588
|
+
console.log(error.message);
|
|
3589
|
+
}
|
|
3395
3590
|
const availableProperties = data == null ? void 0 : data.data.available_properties;
|
|
3396
|
-
|
|
3397
|
-
|
|
3398
|
-
return u(g$3, {
|
|
3399
|
-
children: [u(IconSpritesheet, {
|
|
3591
|
+
return u$1(g$3, {
|
|
3592
|
+
children: [u$1(IconSpritesheet, {
|
|
3400
3593
|
theme: params.theme
|
|
3401
|
-
}), u("div", {
|
|
3594
|
+
}), u$1("div", {
|
|
3402
3595
|
ref: appRef,
|
|
3403
3596
|
id: JOB_SEARCH_SCOPE_ELEMENT_ID,
|
|
3404
|
-
children: u("div", {
|
|
3597
|
+
children: u$1("div", {
|
|
3405
3598
|
class: "bg-app mx-auto flex min-h-screen max-w-screen-lg flex-col gap-4 py-6 md:grid md:grid-cols-3 md:px-4",
|
|
3406
|
-
children: [u(
|
|
3407
|
-
|
|
3408
|
-
|
|
3409
|
-
|
|
3410
|
-
|
|
3411
|
-
|
|
3412
|
-
|
|
3413
|
-
|
|
3414
|
-
|
|
3415
|
-
|
|
3416
|
-
|
|
3417
|
-
|
|
3418
|
-
|
|
3419
|
-
|
|
3420
|
-
|
|
3421
|
-
|
|
3422
|
-
|
|
3423
|
-
|
|
3424
|
-
|
|
3425
|
-
|
|
3426
|
-
|
|
3427
|
-
|
|
3428
|
-
|
|
3429
|
-
|
|
3430
|
-
|
|
3431
|
-
|
|
3432
|
-
|
|
3433
|
-
|
|
3434
|
-
properties: params.properties,
|
|
3435
|
-
values
|
|
3436
|
-
});
|
|
3437
|
-
setActiveKey(newActiveKey);
|
|
3438
|
-
setValues({
|
|
3439
|
-
...values,
|
|
3440
|
-
[property.key]: newValue
|
|
3441
|
-
});
|
|
3442
|
-
},
|
|
3443
|
-
onSkip: () => {
|
|
3444
|
-
var _a3;
|
|
3445
|
-
const currentIndex = params.properties.findIndex((p2) => p2.key === activeKey);
|
|
3446
|
-
const nextPropertyKey = currentIndex !== -1 ? (_a3 = params.properties[currentIndex + 1]) == null ? void 0 : _a3.key : void 0;
|
|
3447
|
-
setActiveKey(nextPropertyKey);
|
|
3448
|
-
}
|
|
3449
|
-
}, property.key);
|
|
3599
|
+
children: [u$1(ErrorBoundary, {
|
|
3600
|
+
Fallback,
|
|
3601
|
+
children: u$1(FilterSection, {
|
|
3602
|
+
onFilterValueChange: (property, value, activeKey) => {
|
|
3603
|
+
const {
|
|
3604
|
+
newActiveKey,
|
|
3605
|
+
newValue
|
|
3606
|
+
} = nextStateFromValue({
|
|
3607
|
+
property,
|
|
3608
|
+
activeKey,
|
|
3609
|
+
value,
|
|
3610
|
+
properties: params.properties,
|
|
3611
|
+
values
|
|
3612
|
+
});
|
|
3613
|
+
setValues({
|
|
3614
|
+
...values,
|
|
3615
|
+
[property.key]: newValue
|
|
3616
|
+
});
|
|
3617
|
+
return {
|
|
3618
|
+
newActiveKey,
|
|
3619
|
+
newValue
|
|
3620
|
+
};
|
|
3621
|
+
},
|
|
3622
|
+
availableProperties,
|
|
3623
|
+
values,
|
|
3624
|
+
properties: params.properties,
|
|
3625
|
+
state: isLoading && !(data == null ? void 0 : data.data.available_properties) ? "loading" : "loaded",
|
|
3626
|
+
parentRef: appRef
|
|
3450
3627
|
})
|
|
3451
|
-
}), u("
|
|
3628
|
+
}), u$1("div", {
|
|
3452
3629
|
class: "md:col-span-2",
|
|
3453
|
-
children: u("
|
|
3630
|
+
children: u$1("section", {
|
|
3454
3631
|
class: "bg-section-strong-bg ring-section-weak-stroke rounded-section ring-px lg:ring-width-section flex flex-col gap-4 p-4",
|
|
3455
|
-
children: [data && u("
|
|
3632
|
+
children: [isLoading && !(data == null ? void 0 : data.data) && u$1("div", {
|
|
3633
|
+
class: "flex flex-col gap-3",
|
|
3634
|
+
children: [u$1("p", {
|
|
3635
|
+
class: "text-copy-accent-lowcontrast animate-skeleton text-center",
|
|
3636
|
+
children: u$1(SkeletonText, {
|
|
3637
|
+
chars: 8
|
|
3638
|
+
})
|
|
3639
|
+
}), Array.from({
|
|
3640
|
+
length: 4
|
|
3641
|
+
}).map((_2, i2) => u$1(JobCardSkeleton, {
|
|
3642
|
+
seed: i2,
|
|
3643
|
+
animationDelay: (i2 - 4) * 0.1
|
|
3644
|
+
}, i2))]
|
|
3645
|
+
}), data && u$1("p", {
|
|
3456
3646
|
class: "text-copy-accent-lowcontrast text-center",
|
|
3457
3647
|
children: resultCountString(data.pagination.total)
|
|
3458
|
-
}), u("ul", {
|
|
3648
|
+
}), u$1("ul", {
|
|
3459
3649
|
class: "flex flex-col gap-3",
|
|
3460
3650
|
children: data == null ? void 0 : data.data.results.map((job) => {
|
|
3461
|
-
return u("li", {
|
|
3462
|
-
children: u(JobCard, {
|
|
3651
|
+
return u$1("li", {
|
|
3652
|
+
children: u$1(JobCard, {
|
|
3463
3653
|
job
|
|
3464
3654
|
})
|
|
3465
3655
|
}, job.id);
|
|
3466
3656
|
})
|
|
3467
|
-
}), u("p", {
|
|
3468
|
-
class: "text-copy-accent-lowcontrast text-style-job-card-info text-center",
|
|
3469
|
-
children: "You've reached the end of the list."
|
|
3470
3657
|
})]
|
|
3471
3658
|
})
|
|
3472
3659
|
})]
|
|
@@ -3474,7 +3661,7 @@ const JobSearch = ({
|
|
|
3474
3661
|
})]
|
|
3475
3662
|
});
|
|
3476
3663
|
};
|
|
3477
|
-
const tailwind = "#ijs {\n font-size: 16px;\n font-family: sans-serif;\n --tw-content: '';\n font-family:\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n Segoe UI,\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n Open Sans,\n Helvetica Neue,\n sans-serif;\n}\n\n #ijs * {\n box-sizing: border-box;\n border-style: solid;\n border-width: 0;\n -webkit-tap-highlight-color: transparent;\n }\n\n #ijs ::before,\n #ijs ::after {\n box-sizing: border-box;\n }\n\n #ijs :is(a) {\n text-decoration: none;\n }\n\n #ijs :is(ul, ol) {\n list-style: none;\n padding: 0;\n margin: 0;\n }\n\n #ijs :is(p) {\n margin: 0;\n padding: 0;\n }\n\n #ijs :is(li) {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n #ijs :is(button) {\n display: block;\n margin: 0;\n padding: 0;\n border: unset;\n background: unset;\n text-align: unset;\n }\n\n #ijs :is(svg) {\n display: block;\n }\n\n #ijs *, #ijs ::before, #ijs ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n #ijs ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n #ijs .container {\n width: 100%;\n}\n\n @media (min-width: 640px) {\n\n #ijs .container {\n max-width: 640px;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .container {\n max-width: 768px;\n }\n}\n\n @media (min-width: 1024px) {\n\n #ijs .container {\n max-width: 1024px;\n }\n}\n\n @media (min-width: 1280px) {\n\n #ijs .container {\n max-width: 1280px;\n }\n}\n\n @media (min-width: 1536px) {\n\n #ijs .container {\n max-width: 1536px;\n }\n}\n\n #ijs .visible {\n visibility: visible;\n}\n\n #ijs .invisible {\n visibility: hidden;\n}\n\n #ijs .collapse {\n visibility: collapse;\n}\n\n #ijs .static {\n position: static;\n}\n\n #ijs .fixed {\n position: fixed;\n}\n\n #ijs .absolute {\n position: absolute;\n}\n\n #ijs .relative {\n position: relative;\n}\n\n #ijs .sticky {\n position: sticky;\n}\n\n #ijs .isolate {\n isolation: isolate;\n}\n\n #ijs .m-2 {\n margin: 0.5rem;\n}\n\n #ijs .m-9 {\n margin: 2.25rem;\n}\n\n #ijs .mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n #ijs .-mt-4 {\n margin-top: -1rem;\n}\n\n #ijs .block {\n display: block;\n}\n\n #ijs .inline-block {\n display: inline-block;\n}\n\n #ijs .inline {\n display: inline;\n}\n\n #ijs .flex {\n display: flex;\n}\n\n #ijs .inline-flex {\n display: inline-flex;\n}\n\n #ijs .table {\n display: table;\n}\n\n #ijs .table-row {\n display: table-row;\n}\n\n #ijs .flow-root {\n display: flow-root;\n}\n\n #ijs .grid {\n display: grid;\n}\n\n #ijs .inline-grid {\n display: inline-grid;\n}\n\n #ijs .contents {\n display: contents;\n}\n\n #ijs .list-item {\n display: list-item;\n}\n\n #ijs .\\!hidden {\n display: none !important;\n}\n\n #ijs .hidden {\n display: none;\n}\n\n #ijs .h-8 {\n height: 2rem;\n}\n\n #ijs .min-h-screen {\n min-height: 100vh;\n}\n\n #ijs .w-\\[10ch\\] {\n width: 10ch;\n}\n\n #ijs .w-full {\n width: 100%;\n}\n\n #ijs .min-w-0 {\n min-width: 0px;\n}\n\n #ijs .max-w-full {\n max-width: 100%;\n}\n\n #ijs .max-w-screen-lg {\n max-width: 1024px;\n}\n\n #ijs .flex-1 {\n flex: 1 1 0%;\n}\n\n #ijs .flex-none {\n flex: none;\n}\n\n #ijs .flex-shrink {\n flex-shrink: 1;\n}\n\n #ijs .shrink {\n flex-shrink: 1;\n}\n\n #ijs .flex-grow {\n flex-grow: 1;\n}\n\n #ijs .grow {\n flex-grow: 1;\n}\n\n #ijs .border-collapse {\n border-collapse: collapse;\n}\n\n #ijs .origin-top {\n transform-origin: top;\n}\n\n #ijs .transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n @keyframes appear-tag {\n\n 0% {\n transform: scale(0.9);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n #ijs .animate-appear-tag {\n animation: appear-tag 0.6s cubic-bezier(0.16, 1, 0.3, 1) both;\n}\n\n @keyframes selected-tag {\n\n 0% {\n transform: scale(1.11);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n #ijs .animate-selected-tag {\n animation: selected-tag 0.9s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n @keyframes skeleton {\n\n 0% {\n opacity: 0.2;\n }\n\n 50% {\n opacity: 0.5;\n }\n\n 100% {\n opacity: 0.3;\n }\n}\n\n #ijs .animate-skeleton {\n animation: skeleton 1s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n\n #ijs .cursor-pointer {\n cursor: pointer;\n}\n\n #ijs .select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n #ijs .resize {\n resize: both;\n}\n\n #ijs .flex-col {\n flex-direction: column;\n}\n\n #ijs .flex-wrap {\n flex-wrap: wrap;\n}\n\n #ijs .items-start {\n align-items: flex-start;\n}\n\n #ijs .items-center {\n align-items: center;\n}\n\n #ijs .items-stretch {\n align-items: stretch;\n}\n\n #ijs .justify-end {\n justify-content: flex-end;\n}\n\n #ijs .justify-center {\n justify-content: center;\n}\n\n #ijs .gap-1 {\n gap: 0.25rem;\n}\n\n #ijs .gap-1\\.5 {\n gap: 0.375rem;\n}\n\n #ijs .gap-2 {\n gap: 0.5rem;\n}\n\n #ijs .gap-3 {\n gap: 0.75rem;\n}\n\n #ijs .gap-4 {\n gap: 1rem;\n}\n\n #ijs .overflow-hidden {\n overflow: hidden;\n}\n\n #ijs .overflow-x-auto {\n overflow-x: auto;\n}\n\n #ijs .truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n #ijs .whitespace-nowrap {\n white-space: nowrap;\n}\n\n #ijs .rounded-interactive {\n border-radius: var(--i-radius-interactive);\n}\n\n #ijs .rounded-job-card {\n border-radius: var(--i-radius-job-card);\n}\n\n #ijs .rounded-job-tag {\n border-radius: var(--i-radius-job-tag);\n}\n\n #ijs .rounded-section {\n border-radius: var(--i-radius-section);\n}\n\n #ijs .rounded-tag {\n border-radius: var(--i-radius-job-tag);\n}\n\n #ijs .border {\n border-width: 1px;\n}\n\n #ijs .bg-app {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-app-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-job-card-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-job-card-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-section-strong-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-section-strong-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-section-weak-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-section-weak-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-tag-accent-strong-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-tag-accent-strong-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-tag-monetary-weak-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-tag-monetary-weak-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-tag-neutral-strong-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-tag-neutral-strong-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-tag-neutral-weak-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-tag-neutral-weak-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .p-1 {\n padding: 0.25rem;\n}\n\n #ijs .p-2 {\n padding: 0.5rem;\n}\n\n #ijs .p-4 {\n padding: 1rem;\n}\n\n #ijs .px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n #ijs .px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n #ijs .px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n #ijs .px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n\n #ijs .py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n #ijs .py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n #ijs .py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n #ijs .py-6 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n\n #ijs .pb-1 {\n padding-bottom: 0.25rem;\n}\n\n #ijs .pb-4 {\n padding-bottom: 1rem;\n}\n\n #ijs .pl-3 {\n padding-left: 0.75rem;\n}\n\n #ijs .pr-1 {\n padding-right: 0.25rem;\n}\n\n #ijs .pt-2 {\n padding-top: 0.5rem;\n}\n\n #ijs .text-center {\n text-align: center;\n}\n\n #ijs .text-justify {\n text-align: justify;\n}\n\n #ijs .font-family-filter {\n font-family: var(--i-font-filter);\n}\n\n #ijs .font-family-tag {\n font-family: var(--i-font-tag);\n}\n\n #ijs .text-style-filter {\n font-size: 1rem;\n line-height: 1.5rem;\n letter-spacing: -0.01em;\n}\n\n #ijs .text-style-job-card {\n font-size: 0.875rem;\n line-height: 1.125rem;\n}\n\n #ijs .text-style-job-card-info {\n font-size: 0.75rem;\n line-height: 1.125rem;\n}\n\n #ijs .text-style-job-card-title {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n #ijs .text-style-tag {\n font-size: 0.875rem;\n line-height: 1.5rem;\n}\n\n #ijs .font-weight-filter {\n font-weight: var(--i-weight-filter);\n}\n\n #ijs .font-weight-tag {\n font-weight: var(--i-weight-tag);\n}\n\n #ijs .uppercase {\n text-transform: uppercase;\n}\n\n #ijs .lowercase {\n text-transform: lowercase;\n}\n\n #ijs .capitalize {\n text-transform: capitalize;\n}\n\n #ijs .italic {\n font-style: italic;\n}\n\n #ijs .ordinal {\n --tw-ordinal: ordinal;\n font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);\n}\n\n #ijs .text-copy-accent {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-accent) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-accent-icon {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-accent-icon) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-accent-lowcontrast {\n color: oklch(var(--i-copy-accent-lowcontrast) / 0.67);\n}\n\n #ijs .text-copy-job-info {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-info) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-neutral {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-neutral-icon {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-icon) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-neutral-lowcontrast {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-lowcontrast) / var(--tw-text-opacity));\n}\n\n #ijs .text-interactive-accent-text {\n --tw-text-opacity: 1;\n color: oklch(var(--i-interactive-accent-text) / var(--tw-text-opacity));\n}\n\n #ijs .text-interactive-neutral-text {\n --tw-text-opacity: 1;\n color: oklch(var(--i-interactive-neutral-text) / var(--tw-text-opacity));\n}\n\n #ijs .text-tag-accent-strong-copy {\n --tw-text-opacity: 1;\n color: oklch(var(--i-tag-accent-strong-copy) / var(--tw-text-opacity));\n}\n\n #ijs .text-tag-monetary-weak-copy {\n --tw-text-opacity: 1;\n color: oklch(var(--i-tag-monetary-weak-copy) / var(--tw-text-opacity));\n}\n\n #ijs .text-tag-neutral-strong-copy {\n --tw-text-opacity: 1;\n color: oklch(var(--i-tag-neutral-strong-copy) / var(--tw-text-opacity));\n}\n\n #ijs .text-tag-neutral-weak-copy {\n --tw-text-opacity: 1;\n color: oklch(var(--i-tag-neutral-weak-copy) / var(--tw-text-opacity));\n}\n\n #ijs .shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n #ijs .outline {\n outline-style: solid;\n}\n\n #ijs .ring-px {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n #ijs .ring-width-job-card {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(var(--i-job-card-stroke-width) + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n #ijs .ring-width-section {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(var(--i-section-stroke-width) + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n #ijs .ring-job-card-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-job-card-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-section-strong-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-section-strong-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-section-weak-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-section-weak-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-tag-accent-strong-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-tag-accent-strong-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-tag-neutral-strong-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-tag-neutral-strong-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-tag-neutral-weak-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-tag-neutral-weak-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .grayscale {\n --tw-grayscale: grayscale(100%);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .invert {\n --tw-invert: invert(100%);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .sepia {\n --tw-sepia: sepia(100%);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .backdrop-filter {\n -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n\n #ijs .transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .duration-1000 {\n transition-duration: 1000ms;\n}\n\n #ijs .duration-300 {\n transition-duration: 300ms;\n}\n\n #ijs .duration-500 {\n transition-duration: 500ms;\n}\n\n #ijs .ease-expo-out {\n transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n #ijs .font-style-filter {\n font-style: var(--i-style-filter);\n}\n\n #ijs .font-style-tag {\n font-style: var(--i-style-filter);\n}\n\n #ijs .fr {\n outline: none;\n}\n\n #ijs .fr:focus {\n outline: none;\n}\n\n #ijs .fr:focus-visible {\n outline: none;\n --tw-ring-offset-width: 1px;\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-a-7) / 1);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n #ijs .hide-scrollbars::-webkit-scrollbar {\n display: none;\n}\n\n #ijs .hide-scrollbars {\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n\n #ijs .touch-hitbox::before {\n content: '';\n position: absolute;\n display: block;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 100%;\n height: 100%;\n min-height: 44px;\n min-width: 44px;\n z-index: 9999;\n}\n\n #ijs .\\[a-zA-Z0-9-_\\:\\.\\$\\@\\?\\] {\n a-z-a--z0-9-_: .$@?;\n}\n\n #ijs .hover\\:bg-interactive-accent-bg-hover:hover {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-interactive-accent-bg-hover) / var(--tw-bg-opacity));\n}\n\n #ijs .hover\\:bg-interactive-neutral-bg-hover:hover {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-interactive-neutral-bg-hover) / var(--tw-bg-opacity));\n}\n\n #ijs .focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n #ijs .active\\:scale-95:active {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n #ijs .active\\:bg-job-card-bg-active:active {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-job-card-bg-active) / var(--tw-bg-opacity));\n}\n\n #ijs .active\\:ring-job-card-stroke-active:active {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-job-card-stroke-color-active) / var(--tw-ring-opacity));\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:col-span-2 {\n grid-column: span 2 / span 2;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:flex {\n display: flex;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:grid {\n display: grid;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:flex-col {\n flex-direction: column;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:px-0 {\n padding-left: 0px;\n padding-right: 0px;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n}\n\n @media (min-width: 1024px) {\n\n #ijs .lg\\:ring-width-section {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(var(--i-section-stroke-width) + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n }\n}\n";
|
|
3664
|
+
const tailwind = "#ijs {\n font-size: 16px;\n font-family: sans-serif;\n --tw-content: '';\n font-family:\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n Segoe UI,\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n Open Sans,\n Helvetica Neue,\n sans-serif;\n}\n\n #ijs * {\n box-sizing: border-box;\n border-style: solid;\n border-width: 0;\n -webkit-tap-highlight-color: transparent;\n }\n\n #ijs ::before,\n #ijs ::after {\n box-sizing: border-box;\n }\n\n #ijs :is(a) {\n text-decoration: none;\n }\n\n #ijs :is(ul, ol) {\n list-style: none;\n padding: 0;\n margin: 0;\n }\n\n #ijs :is(p) {\n margin: 0;\n padding: 0;\n }\n\n #ijs :is(li) {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n #ijs :is(button) {\n display: block;\n margin: 0;\n padding: 0;\n border: unset;\n background: unset;\n text-align: unset;\n }\n\n #ijs :is(svg) {\n display: block;\n }\n\n #ijs *, #ijs ::before, #ijs ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n #ijs ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n #ijs .container {\n width: 100%;\n}\n\n @media (min-width: 640px) {\n\n #ijs .container {\n max-width: 640px;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .container {\n max-width: 768px;\n }\n}\n\n @media (min-width: 1024px) {\n\n #ijs .container {\n max-width: 1024px;\n }\n}\n\n @media (min-width: 1280px) {\n\n #ijs .container {\n max-width: 1280px;\n }\n}\n\n @media (min-width: 1536px) {\n\n #ijs .container {\n max-width: 1536px;\n }\n}\n\n #ijs .visible {\n visibility: visible;\n}\n\n #ijs .invisible {\n visibility: hidden;\n}\n\n #ijs .collapse {\n visibility: collapse;\n}\n\n #ijs .static {\n position: static;\n}\n\n #ijs .fixed {\n position: fixed;\n}\n\n #ijs .absolute {\n position: absolute;\n}\n\n #ijs .relative {\n position: relative;\n}\n\n #ijs .sticky {\n position: sticky;\n}\n\n #ijs .isolate {\n isolation: isolate;\n}\n\n #ijs .m-2 {\n margin: 0.5rem;\n}\n\n #ijs .m-9 {\n margin: 2.25rem;\n}\n\n #ijs .mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n #ijs .-mt-4 {\n margin-top: -1rem;\n}\n\n #ijs .block {\n display: block;\n}\n\n #ijs .inline-block {\n display: inline-block;\n}\n\n #ijs .inline {\n display: inline;\n}\n\n #ijs .flex {\n display: flex;\n}\n\n #ijs .inline-flex {\n display: inline-flex;\n}\n\n #ijs .table {\n display: table;\n}\n\n #ijs .table-row {\n display: table-row;\n}\n\n #ijs .flow-root {\n display: flow-root;\n}\n\n #ijs .grid {\n display: grid;\n}\n\n #ijs .inline-grid {\n display: inline-grid;\n}\n\n #ijs .contents {\n display: contents;\n}\n\n #ijs .list-item {\n display: list-item;\n}\n\n #ijs .\\!hidden {\n display: none !important;\n}\n\n #ijs .hidden {\n display: none;\n}\n\n #ijs .h-8 {\n height: 2rem;\n}\n\n #ijs .h-\\[1lh\\] {\n height: 1lh;\n}\n\n #ijs .min-h-screen {\n min-height: 100vh;\n}\n\n #ijs .w-\\[10ch\\] {\n width: 10ch;\n}\n\n #ijs .w-\\[6ch\\] {\n width: 6ch;\n}\n\n #ijs .w-\\[8ch\\] {\n width: 8ch;\n}\n\n #ijs .w-full {\n width: 100%;\n}\n\n #ijs .min-w-0 {\n min-width: 0px;\n}\n\n #ijs .max-w-full {\n max-width: 100%;\n}\n\n #ijs .max-w-screen-lg {\n max-width: 1024px;\n}\n\n #ijs .flex-1 {\n flex: 1 1 0%;\n}\n\n #ijs .flex-none {\n flex: none;\n}\n\n #ijs .flex-shrink {\n flex-shrink: 1;\n}\n\n #ijs .shrink {\n flex-shrink: 1;\n}\n\n #ijs .flex-grow {\n flex-grow: 1;\n}\n\n #ijs .grow {\n flex-grow: 1;\n}\n\n #ijs .border-collapse {\n border-collapse: collapse;\n}\n\n #ijs .origin-top {\n transform-origin: top;\n}\n\n #ijs .transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n @keyframes appear-tag {\n\n 0% {\n transform: scale(0.9);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n #ijs .animate-appear-tag {\n animation: appear-tag 0.6s cubic-bezier(0.16, 1, 0.3, 1) both;\n}\n\n @keyframes selected-tag {\n\n 0% {\n transform: scale(1.11);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n #ijs .animate-selected-tag {\n animation: selected-tag 0.9s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n @keyframes skeleton {\n\n 0% {\n opacity: 0.2;\n }\n\n 50% {\n opacity: 0.5;\n }\n\n 100% {\n opacity: 0.3;\n }\n}\n\n #ijs .animate-skeleton {\n animation: skeleton 1s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n\n #ijs .cursor-pointer {\n cursor: pointer;\n}\n\n #ijs .select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n #ijs .resize {\n resize: both;\n}\n\n #ijs .flex-col {\n flex-direction: column;\n}\n\n #ijs .flex-wrap {\n flex-wrap: wrap;\n}\n\n #ijs .items-start {\n align-items: flex-start;\n}\n\n #ijs .items-center {\n align-items: center;\n}\n\n #ijs .items-stretch {\n align-items: stretch;\n}\n\n #ijs .justify-end {\n justify-content: flex-end;\n}\n\n #ijs .justify-center {\n justify-content: center;\n}\n\n #ijs .gap-1 {\n gap: 0.25rem;\n}\n\n #ijs .gap-1\\.5 {\n gap: 0.375rem;\n}\n\n #ijs .gap-2 {\n gap: 0.5rem;\n}\n\n #ijs .gap-3 {\n gap: 0.75rem;\n}\n\n #ijs .gap-4 {\n gap: 1rem;\n}\n\n #ijs .overflow-hidden {\n overflow: hidden;\n}\n\n #ijs .overflow-x-auto {\n overflow-x: auto;\n}\n\n #ijs .truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n #ijs .whitespace-nowrap {\n white-space: nowrap;\n}\n\n #ijs .rounded-interactive {\n border-radius: var(--i-radius-interactive);\n}\n\n #ijs .rounded-job-card {\n border-radius: var(--i-radius-job-card);\n}\n\n #ijs .rounded-job-tag {\n border-radius: var(--i-radius-job-tag);\n}\n\n #ijs .rounded-section {\n border-radius: var(--i-radius-section);\n}\n\n #ijs .rounded-tag {\n border-radius: var(--i-radius-job-tag);\n}\n\n #ijs .border {\n border-width: 1px;\n}\n\n #ijs .bg-\\[currentColor\\] {\n background-color: currentColor;\n}\n\n #ijs .bg-app {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-app-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-job-card-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-job-card-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-section-strong-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-section-strong-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-section-weak-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-section-weak-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-tag-accent-strong-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-tag-accent-strong-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-tag-monetary-weak-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-tag-monetary-weak-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-tag-neutral-strong-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-tag-neutral-strong-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .bg-tag-neutral-weak-bg {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-tag-neutral-weak-bg) / var(--tw-bg-opacity));\n}\n\n #ijs .p-1 {\n padding: 0.25rem;\n}\n\n #ijs .p-2 {\n padding: 0.5rem;\n}\n\n #ijs .p-4 {\n padding: 1rem;\n}\n\n #ijs .px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n #ijs .px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n #ijs .px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n #ijs .px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n\n #ijs .py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n #ijs .py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n #ijs .py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n #ijs .py-6 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n\n #ijs .pb-1 {\n padding-bottom: 0.25rem;\n}\n\n #ijs .pb-4 {\n padding-bottom: 1rem;\n}\n\n #ijs .pl-3 {\n padding-left: 0.75rem;\n}\n\n #ijs .pr-1 {\n padding-right: 0.25rem;\n}\n\n #ijs .pt-2 {\n padding-top: 0.5rem;\n}\n\n #ijs .text-center {\n text-align: center;\n}\n\n #ijs .text-justify {\n text-align: justify;\n}\n\n #ijs .font-family-filter {\n font-family: var(--i-font-filter);\n}\n\n #ijs .font-family-tag {\n font-family: var(--i-font-tag);\n}\n\n #ijs .text-style-filter {\n font-size: 1rem;\n line-height: 1.5rem;\n letter-spacing: -0.01em;\n}\n\n #ijs .text-style-job-card {\n font-size: 0.875rem;\n line-height: 1.125rem;\n}\n\n #ijs .text-style-job-card-info {\n font-size: 0.75rem;\n line-height: 1.125rem;\n}\n\n #ijs .text-style-job-card-title {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n #ijs .text-style-tag {\n font-size: 0.875rem;\n line-height: 1.5rem;\n}\n\n #ijs .font-weight-filter {\n font-weight: var(--i-weight-filter);\n}\n\n #ijs .font-weight-tag {\n font-weight: var(--i-weight-tag);\n}\n\n #ijs .uppercase {\n text-transform: uppercase;\n}\n\n #ijs .lowercase {\n text-transform: lowercase;\n}\n\n #ijs .capitalize {\n text-transform: capitalize;\n}\n\n #ijs .italic {\n font-style: italic;\n}\n\n #ijs .ordinal {\n --tw-ordinal: ordinal;\n font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);\n}\n\n #ijs .text-copy-accent {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-accent) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-accent-icon {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-accent-icon) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-accent-lowcontrast {\n color: oklch(var(--i-copy-accent-lowcontrast) / 0.67);\n}\n\n #ijs .text-copy-job-info {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-info) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-neutral {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-neutral-icon {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-icon) / var(--tw-text-opacity));\n}\n\n #ijs .text-copy-neutral-lowcontrast {\n --tw-text-opacity: 1;\n color: oklch(var(--i-copy-lowcontrast) / var(--tw-text-opacity));\n}\n\n #ijs .text-interactive-accent-text {\n --tw-text-opacity: 1;\n color: oklch(var(--i-interactive-accent-text) / var(--tw-text-opacity));\n}\n\n #ijs .text-interactive-neutral-text {\n --tw-text-opacity: 1;\n color: oklch(var(--i-interactive-neutral-text) / var(--tw-text-opacity));\n}\n\n #ijs .text-tag-accent-strong-copy {\n --tw-text-opacity: 1;\n color: oklch(var(--i-tag-accent-strong-copy) / var(--tw-text-opacity));\n}\n\n #ijs .text-tag-monetary-weak-copy {\n --tw-text-opacity: 1;\n color: oklch(var(--i-tag-monetary-weak-copy) / var(--tw-text-opacity));\n}\n\n #ijs .text-tag-neutral-strong-copy {\n --tw-text-opacity: 1;\n color: oklch(var(--i-tag-neutral-strong-copy) / var(--tw-text-opacity));\n}\n\n #ijs .text-tag-neutral-weak-copy {\n --tw-text-opacity: 1;\n color: oklch(var(--i-tag-neutral-weak-copy) / var(--tw-text-opacity));\n}\n\n #ijs .opacity-25 {\n opacity: 0.25;\n}\n\n #ijs .shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n #ijs .outline {\n outline-style: solid;\n}\n\n #ijs .ring-px {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n #ijs .ring-width-job-card {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(var(--i-job-card-stroke-width) + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n #ijs .ring-width-section {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(var(--i-section-stroke-width) + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n #ijs .ring-job-card-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-job-card-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-section-strong-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-section-strong-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-section-weak-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-section-weak-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-tag-accent-strong-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-tag-accent-strong-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-tag-neutral-strong-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-tag-neutral-strong-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .ring-tag-neutral-weak-stroke {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-tag-neutral-weak-stroke-color) / var(--tw-ring-opacity));\n}\n\n #ijs .blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .grayscale {\n --tw-grayscale: grayscale(100%);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .invert {\n --tw-invert: invert(100%);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .sepia {\n --tw-sepia: sepia(100%);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n #ijs .backdrop-filter {\n -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n\n #ijs .transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .duration-1000 {\n transition-duration: 1000ms;\n}\n\n #ijs .duration-300 {\n transition-duration: 300ms;\n}\n\n #ijs .duration-500 {\n transition-duration: 500ms;\n}\n\n #ijs .ease-expo-out {\n transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n #ijs .font-style-filter {\n font-style: var(--i-style-filter);\n}\n\n #ijs .font-style-tag {\n font-style: var(--i-style-filter);\n}\n\n #ijs .fr {\n outline: none;\n}\n\n #ijs .fr:focus {\n outline: none;\n}\n\n #ijs .fr:focus-visible {\n outline: none;\n --tw-ring-offset-width: 1px;\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-a-7) / 1);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n #ijs .hide-scrollbars::-webkit-scrollbar {\n display: none;\n}\n\n #ijs .hide-scrollbars {\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n\n #ijs .touch-hitbox::before {\n content: '';\n position: absolute;\n display: block;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 100%;\n height: 100%;\n min-height: 44px;\n min-width: 44px;\n z-index: 9999;\n}\n\n #ijs .\\[a-zA-Z0-9-_\\:\\.\\$\\@\\?\\] {\n a-z-a--z0-9-_: .$@?;\n}\n\n #ijs .hover\\:bg-interactive-accent-bg-hover:hover {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-interactive-accent-bg-hover) / var(--tw-bg-opacity));\n}\n\n #ijs .hover\\:bg-interactive-neutral-bg-hover:hover {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-interactive-neutral-bg-hover) / var(--tw-bg-opacity));\n}\n\n #ijs .focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n #ijs .active\\:scale-95:active {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n #ijs .active\\:bg-job-card-bg-active:active {\n --tw-bg-opacity: 1;\n background-color: oklch(var(--i-job-card-bg-active) / var(--tw-bg-opacity));\n}\n\n #ijs .active\\:ring-job-card-stroke-active:active {\n --tw-ring-opacity: 1;\n --tw-ring-color: oklch(var(--i-job-card-stroke-color-active) / var(--tw-ring-opacity));\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:col-span-2 {\n grid-column: span 2 / span 2;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:flex {\n display: flex;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:grid {\n display: grid;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:flex-col {\n flex-direction: column;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:px-0 {\n padding-left: 0px;\n padding-right: 0px;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n}\n\n @media (min-width: 1024px) {\n\n #ijs .lg\\:ring-width-section {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(var(--i-section-stroke-width) + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n }\n}\n";
|
|
3478
3665
|
const match = (m2) => {
|
|
3479
3666
|
const patterns = [];
|
|
3480
3667
|
const i2 = (m22) => ({
|
|
@@ -6892,7 +7079,9 @@ const jobSearchPlugin = (params) => createPlugin(({
|
|
|
6892
7079
|
}, tailwind), y$2("style", {
|
|
6893
7080
|
id: "inploi-job-search-theme"
|
|
6894
7081
|
}, generateColorThemeCss(params.theme))];
|
|
6895
|
-
const App = y$2(
|
|
7082
|
+
const App = y$2(ErrorBoundary, {
|
|
7083
|
+
Fallback
|
|
7084
|
+
}, [styleElements, y$2(JobSearch, {
|
|
6896
7085
|
params,
|
|
6897
7086
|
apiClient,
|
|
6898
7087
|
logger,
|
|
@@ -6903,7 +7092,7 @@ const jobSearchPlugin = (params) => createPlugin(({
|
|
|
6903
7092
|
* Useful when server-side rendering to avoid CLS.
|
|
6904
7093
|
*/
|
|
6905
7094
|
renderToString: () => {
|
|
6906
|
-
return b$1(App);
|
|
7095
|
+
return b$1(y$2(g$3, {}, App));
|
|
6907
7096
|
},
|
|
6908
7097
|
/** Renders the Job Search Plugin inside the container element. */
|
|
6909
7098
|
render: async () => {
|