willba-component-library 0.1.31 → 0.1.33

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/lib/index.umd.js CHANGED
@@ -451,118 +451,6 @@
451
451
  });
452
452
  }
453
453
 
454
- var css_248z$b = ".will-filter-bar-divider {\n width: 1px;\n margin: 0 10px;\n background-color: #384265;\n}\n\n@media (max-width: 960px) {\n .will-filter-bar-divider {\n width: auto;\n margin: 0 10px;\n height: 1px;\n background-color: #384265;\n }\n}";
455
- styleInject(css_248z$b);
456
-
457
- function Divider() {
458
- return React__default.createElement("div", { className: "will-filter-bar-divider" });
459
- }
460
-
461
- var css_248z$a = ".will-filter-bar-select-button {\n width: 100%;\n height: auto;\n background-color: transparent;\n border: none;\n padding: 0 20px;\n border-radius: 20px;\n cursor: pointer;\n font-size: 14px;\n text-align: initial;\n}\n\n.will-filter-bar-select-button .select-button-description {\n font-weight: 400;\n opacity: 0.4;\n}\n\n.will-filter-bar-select-button .select-button-wrapper {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 10px;\n \n}\n\n@media (max-width: 960px) {\n .will-filter-bar-select-button {\n margin: 5px 0;\n padding: 10px 20px;\n }\n\n .will-filter-bar-select-button .select-button-wrapper {\n justify-content: center;\n text-align: center;\n }\n\n .will-filter-bar-select-button .select-button-divider {\n display: none\n }\n}\n\n\n";
462
- styleInject(css_248z$a);
463
-
464
- function SelectButton(_a) {
465
- var label = _a.label, onClick = _a.onClick, style = _a.style, date = _a.date, description = _a.description;
466
- return (React__default.createElement("button", { className: "will-filter-bar-select-button", onClick: onClick, style: style },
467
- React__default.createElement("span", { className: "select-button-wrapper" },
468
- React__default.createElement("div", null,
469
- React__default.createElement("p", { className: "select-button-label" }, label),
470
- React__default.createElement("p", { className: "select-button-description" }, description)),
471
- !!date && (React__default.createElement(React__default.Fragment, null,
472
- React__default.createElement("span", { className: "select-button-divider" }, "|"),
473
- React__default.createElement("span", { className: "select-button-date" },
474
- " ",
475
- date))))));
476
- }
477
-
478
- var DefaultContext = {
479
- color: undefined,
480
- size: undefined,
481
- className: undefined,
482
- style: undefined,
483
- attr: undefined
484
- };
485
- var IconContext = React__default.createContext && React__default.createContext(DefaultContext);
486
-
487
- var __assign$1 = undefined && undefined.__assign || function () {
488
- __assign$1 = Object.assign || function (t) {
489
- for (var s, i = 1, n = arguments.length; i < n; i++) {
490
- s = arguments[i];
491
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
492
- }
493
- return t;
494
- };
495
- return __assign$1.apply(this, arguments);
496
- };
497
- var __rest$1 = undefined && undefined.__rest || function (s, e) {
498
- var t = {};
499
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
500
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
501
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
502
- }
503
- return t;
504
- };
505
- function Tree2Element(tree) {
506
- return tree && tree.map(function (node, i) {
507
- return React__default.createElement(node.tag, __assign$1({
508
- key: i
509
- }, node.attr), Tree2Element(node.child));
510
- });
511
- }
512
- function GenIcon(data) {
513
- // eslint-disable-next-line react/display-name
514
- return function (props) {
515
- return React__default.createElement(IconBase, __assign$1({
516
- attr: __assign$1({}, data.attr)
517
- }, props), Tree2Element(data.child));
518
- };
519
- }
520
- function IconBase(props) {
521
- var elem = function (conf) {
522
- var attr = props.attr,
523
- size = props.size,
524
- title = props.title,
525
- svgProps = __rest$1(props, ["attr", "size", "title"]);
526
- var computedSize = size || conf.size || "1em";
527
- var className;
528
- if (conf.className) className = conf.className;
529
- if (props.className) className = (className ? className + " " : "") + props.className;
530
- return React__default.createElement("svg", __assign$1({
531
- stroke: "currentColor",
532
- fill: "currentColor",
533
- strokeWidth: "0"
534
- }, conf.attr, attr, svgProps, {
535
- className: className,
536
- style: __assign$1(__assign$1({
537
- color: props.color || conf.color
538
- }, conf.style), props.style),
539
- height: computedSize,
540
- width: computedSize,
541
- xmlns: "http://www.w3.org/2000/svg"
542
- }), title && React__default.createElement("title", null, title), props.children);
543
- };
544
- return IconContext !== undefined ? React__default.createElement(IconContext.Consumer, null, function (conf) {
545
- return elem(conf);
546
- }) : elem(DefaultContext);
547
- }
548
-
549
- // THIS FILE IS AUTO GENERATED
550
- function FaSearch (props) {
551
- return GenIcon({"tag":"svg","attr":{"viewBox":"0 0 512 512"},"child":[{"tag":"path","attr":{"d":"M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"}}]})(props);
552
- }
553
-
554
- var css_248z$9 = ".will-filter-bar-submit-button {\n width: auto;\n height: auto;\n background-color: var(--will-primary);\n color: var(--will-white);\n padding: 10px 20px;\n border-radius: 20px;\n cursor: pointer;\n border: none;\n white-space: nowrap;\n text-transform: uppercase;\n font-size: 12px;\n display: flex;\n align-items: center;\n}\n\n.will-filter-bar-submit-button span {\n margin-right: 10px;\n display: flex;\n}\n\n@media (max-width: 960px) {\n .will-filter-bar-submit-button {\n justify-content: center;\n margin-bottom: 5px;\n }\n}\n";
555
- styleInject(css_248z$9);
556
-
557
- function SubmitButton$1(_a) {
558
- var onClick = _a.onClick;
559
- var t = useTranslation('filterBar').t;
560
- return (React__default.createElement("button", { className: "will-filter-bar-submit-button", onClick: onClick },
561
- React__default.createElement("span", null,
562
- React__default.createElement(FaSearch, null)),
563
- t('submit.label')));
564
- }
565
-
566
454
  function _typeof(o) {
567
455
  "@babel/helpers - typeof";
568
456
 
@@ -4003,6 +3891,113 @@
4003
3891
  return date;
4004
3892
  }
4005
3893
 
3894
+ var css_248z$b = ".will-filter-bar-divider {\n width: 1px;\n margin: 0 10px;\n background-color: #384265;\n}\n\n@media (max-width: 960px) {\n .will-filter-bar-divider {\n width: auto;\n margin: 0 10px;\n height: 1px;\n background-color: #384265;\n }\n}";
3895
+ styleInject(css_248z$b);
3896
+
3897
+ function Divider() {
3898
+ return React__default.createElement("div", { className: "will-filter-bar-divider" });
3899
+ }
3900
+
3901
+ var css_248z$a = ".will-filter-bar-select-button {\n width: 100%;\n height: auto;\n background-color: transparent;\n border: none;\n padding: 0 20px;\n border-radius: 20px;\n cursor: pointer;\n font-size: 14px;\n text-align: initial;\n}\n\n.will-filter-bar-select-button .select-button-description {\n font-weight: 400;\n opacity: 0.4;\n}\n\n.will-filter-bar-select-button .select-button-wrapper {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 10px;\n \n}\n\n@media (max-width: 960px) {\n .will-filter-bar-select-button {\n padding: 15px 0;\n }\n\n .will-filter-bar-select-button:first-child {\n padding: 0 0 15px 0;\n }\n\n .will-filter-bar-select-button .select-button-wrapper {\n justify-content: center;\n text-align: center;\n }\n\n .will-filter-bar-select-button .select-button-divider {\n display: none\n }\n}\n\n\n";
3902
+ styleInject(css_248z$a);
3903
+
3904
+ function SelectButton(_a) {
3905
+ var label = _a.label, onClick = _a.onClick, style = _a.style, description = _a.description;
3906
+ return (React__default.createElement("button", { className: "will-filter-bar-select-button", onClick: onClick, style: style },
3907
+ React__default.createElement("span", { className: "select-button-wrapper" },
3908
+ React__default.createElement("div", null,
3909
+ React__default.createElement("p", { className: "select-button-label" }, label),
3910
+ React__default.createElement("p", { className: "select-button-description" }, description)))));
3911
+ }
3912
+
3913
+ var DefaultContext = {
3914
+ color: undefined,
3915
+ size: undefined,
3916
+ className: undefined,
3917
+ style: undefined,
3918
+ attr: undefined
3919
+ };
3920
+ var IconContext = React__default.createContext && React__default.createContext(DefaultContext);
3921
+
3922
+ var __assign$1 = undefined && undefined.__assign || function () {
3923
+ __assign$1 = Object.assign || function (t) {
3924
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
3925
+ s = arguments[i];
3926
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
3927
+ }
3928
+ return t;
3929
+ };
3930
+ return __assign$1.apply(this, arguments);
3931
+ };
3932
+ var __rest$1 = undefined && undefined.__rest || function (s, e) {
3933
+ var t = {};
3934
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
3935
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
3936
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
3937
+ }
3938
+ return t;
3939
+ };
3940
+ function Tree2Element(tree) {
3941
+ return tree && tree.map(function (node, i) {
3942
+ return React__default.createElement(node.tag, __assign$1({
3943
+ key: i
3944
+ }, node.attr), Tree2Element(node.child));
3945
+ });
3946
+ }
3947
+ function GenIcon(data) {
3948
+ // eslint-disable-next-line react/display-name
3949
+ return function (props) {
3950
+ return React__default.createElement(IconBase, __assign$1({
3951
+ attr: __assign$1({}, data.attr)
3952
+ }, props), Tree2Element(data.child));
3953
+ };
3954
+ }
3955
+ function IconBase(props) {
3956
+ var elem = function (conf) {
3957
+ var attr = props.attr,
3958
+ size = props.size,
3959
+ title = props.title,
3960
+ svgProps = __rest$1(props, ["attr", "size", "title"]);
3961
+ var computedSize = size || conf.size || "1em";
3962
+ var className;
3963
+ if (conf.className) className = conf.className;
3964
+ if (props.className) className = (className ? className + " " : "") + props.className;
3965
+ return React__default.createElement("svg", __assign$1({
3966
+ stroke: "currentColor",
3967
+ fill: "currentColor",
3968
+ strokeWidth: "0"
3969
+ }, conf.attr, attr, svgProps, {
3970
+ className: className,
3971
+ style: __assign$1(__assign$1({
3972
+ color: props.color || conf.color
3973
+ }, conf.style), props.style),
3974
+ height: computedSize,
3975
+ width: computedSize,
3976
+ xmlns: "http://www.w3.org/2000/svg"
3977
+ }), title && React__default.createElement("title", null, title), props.children);
3978
+ };
3979
+ return IconContext !== undefined ? React__default.createElement(IconContext.Consumer, null, function (conf) {
3980
+ return elem(conf);
3981
+ }) : elem(DefaultContext);
3982
+ }
3983
+
3984
+ // THIS FILE IS AUTO GENERATED
3985
+ function FaSearch (props) {
3986
+ return GenIcon({"tag":"svg","attr":{"viewBox":"0 0 512 512"},"child":[{"tag":"path","attr":{"d":"M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"}}]})(props);
3987
+ }
3988
+
3989
+ var css_248z$9 = ".will-filter-bar-submit-button {\n width: auto;\n height: auto;\n background-color: var(--will-primary);\n color: var(--will-white);\n padding: 10px 20px;\n border-radius: 20px;\n cursor: pointer;\n border: none;\n white-space: nowrap;\n text-transform: uppercase;\n font-size: 12px;\n display: flex;\n align-items: center;\n}\n\n.will-filter-bar-submit-button span {\n margin-right: 10px;\n display: flex;\n}\n\n@media (max-width: 960px) {\n .will-filter-bar-submit-button {\n justify-content: center;\n \n }\n}\n";
3990
+ styleInject(css_248z$9);
3991
+
3992
+ function SubmitButton$1(_a) {
3993
+ var onClick = _a.onClick;
3994
+ var t = useTranslation('filterBar').t;
3995
+ return (React__default.createElement("button", { className: "will-filter-bar-submit-button", onClick: onClick },
3996
+ React__default.createElement("span", null,
3997
+ React__default.createElement(FaSearch, null)),
3998
+ t('submit.label')));
3999
+ }
4000
+
4006
4001
  /******************************************************************************
4007
4002
  Copyright (c) Microsoft Corporation.
4008
4003
 
@@ -8037,8 +8032,9 @@
8037
8032
 
8038
8033
  function Guests(_a) {
8039
8034
  var ageCategories = _a.ageCategories, updateGuestsCount = _a.updateGuestsCount, ageCategoryCounts = _a.ageCategoryCounts;
8035
+ var t = useTranslation('filterBar').t;
8040
8036
  return (React__default.createElement("div", { className: "will-filter-bar-guests" },
8041
- React__default.createElement("h3", { className: "will-guests-filter-title" }, "Who's coming?"),
8037
+ React__default.createElement("h3", { className: "will-guests-filter-title" }, t('guests.title')),
8042
8038
  React__default.createElement("div", { className: "will-guests-filter-container" }, ageCategories === null || ageCategories === void 0 ? void 0 : ageCategories.map(function (category) { return (React__default.createElement(GuestCount, { key: category.id, id: parseInt(category.id), label: category.name, minVal: category.minVal, sortOrder: category.sortOrder, updateGuestsCount: updateGuestsCount, count: ageCategoryCounts["guests-".concat(category.id)] || category.minVal })); }))));
8043
8039
  }
8044
8040
 
@@ -10508,14 +10504,17 @@
10508
10504
  instance.loadLanguages;
10509
10505
 
10510
10506
  var calendar$1 = {
10507
+ label: "When",
10508
+ roomsLabelPlaceholder: "Add check-in and check-out",
10509
+ eventsLabelPlaceholder: "Add search dates",
10511
10510
  startDate: "Start date",
10512
10511
  endDate: "End date",
10513
10512
  title: "Calendar"
10514
10513
  };
10515
10514
  var guests$1 = {
10516
- label: "Guests",
10517
- title: "Guests",
10518
- subtitle: "Who's coming?",
10515
+ label: "Who",
10516
+ labelPlaceholder: "Add guests",
10517
+ title: "Who's coming?",
10519
10518
  adultsLabel: "Adults",
10520
10519
  kidsLabel: "kids"
10521
10520
  };
@@ -10539,14 +10538,17 @@
10539
10538
  };
10540
10539
 
10541
10540
  var calendar = {
10541
+ label: "Milloin",
10542
+ roomsLabelPlaceholder: "Lisää check-in ja check-out",
10543
+ eventsLabelPlaceholder: "Lisää aikaväli",
10542
10544
  startDate: "Alku",
10543
10545
  endDate: "Loppu",
10544
10546
  title: "Kalenteri"
10545
10547
  };
10546
10548
  var guests = {
10547
- label: "Vieraat",
10548
- title: "Vieraat",
10549
- subtitle: "Kuka saapuu?",
10549
+ label: "Kuka",
10550
+ labelPlaceholder: "Lisää vieraat",
10551
+ title: "Ketkä ovat tulossa?",
10550
10552
  adultsLabel: "Aikuiset",
10551
10553
  kidsLabel: "lapset"
10552
10554
  };
@@ -10639,19 +10641,34 @@
10639
10641
  });
10640
10642
  }
10641
10643
  }, [selectedFilter]);
10644
+ var renderDates = (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to) && (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from)
10645
+ ? "".concat(format(calendarRange.from, 'dd.MM.yyyy'), " -\n ").concat(format(calendarRange.to, 'dd.MM.yyyy'))
10646
+ : null;
10647
+ var renderGuests = Object.entries(ageCategoryCounts).reduce(function (acc, _a) {
10648
+ var _b = __read(_a, 2), key = _b[0], value = _b[1];
10649
+ var ageCategory = ageCategories.find(function (c) { return c.id === key[key.length - 1]; });
10650
+ if (ageCategory) {
10651
+ acc += "".concat(acc ? ' -' : '', " ").concat(ageCategory.name, ": ").concat(value);
10652
+ }
10653
+ return acc;
10654
+ }, '');
10642
10655
  return (React__default.createElement(React__default.Fragment, null,
10643
10656
  selectedFilter && (React__default.createElement("div", { className: "will-filter-bar will-filter-bar-underlay", onClick: function () {
10644
10657
  handleSelectedFilter(false);
10645
10658
  } })),
10646
10659
  React__default.createElement("div", { className: "will-root ".concat(selectedFilter ? 'isMobileAbsolute' : ''), style: themePalette },
10647
- !currentViewApply && (React__default.createElement("div", { className: "will-filter-bar-tabs", ref: targetFilterBarRef },
10660
+ !currentViewApply && (React__default.createElement("div", { className: "will-filter-bar-tabs", ref: !currentViewApply ? targetFilterBarRef : null },
10648
10661
  React__default.createElement(SubmitButton, { label: t('tabs.events'), onClick: function () { return setSelectedPath('/events'); }, active: selectedPath === '/events' }),
10649
10662
  React__default.createElement(SubmitButton, { label: t('tabs.rooms'), onClick: function () { return setSelectedPath('/rooms'); }, active: selectedPath === '/rooms' }))),
10650
- React__default.createElement("div", { className: "will-filter-bar-header" },
10651
- React__default.createElement(SelectButton, { label: 'When', description: 'Add Check-in and -out', onClick: function () { return handleSelectedFilter(1); }, style: fontWeightBold(selectedFilter === 1) }),
10663
+ React__default.createElement("div", { className: "will-filter-bar-header", ref: currentViewApply ? targetFilterBarRef : null },
10664
+ React__default.createElement(SelectButton, { label: t('calendar.label'), description: renderDates
10665
+ ? renderDates
10666
+ : selectedPath === '/rooms'
10667
+ ? t('calendar.roomsLabelPlaceholder')
10668
+ : t('calendar.eventsLabelPlaceholder'), onClick: function () { return handleSelectedFilter(1); }, style: fontWeightBold(selectedFilter === 1), date: (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to) ? format(calendarRange.to, 'dd.MM.yyyy') : null }),
10652
10669
  selectedPath === '/rooms' && (React__default.createElement(React__default.Fragment, null,
10653
10670
  React__default.createElement(Divider, null),
10654
- React__default.createElement(SelectButton, { label: 'Who', description: 'Add Guests', onClick: function () { return handleSelectedFilter(2); }, style: fontWeightBold(selectedFilter === 2) }))),
10671
+ React__default.createElement(SelectButton, { label: t('guests.label'), description: renderGuests ? renderGuests : t('guests.labelPlaceholder'), onClick: function () { return handleSelectedFilter(2); }, style: fontWeightBold(selectedFilter === 2) }))),
10655
10672
  React__default.createElement(SubmitButton$1, { onClick: handleSubmit })),
10656
10673
  selectedFilter && (React__default.createElement("div", { className: "will-filter-bar-container", style: currentViewApply && !isMobile ? { top: 66 } : {} },
10657
10674
  React__default.createElement(CloseButton, { handleClose: function () { return handleSelectedFilter(false); } }),