willba-component-library 0.1.32 → 0.1.34

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.
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
2
  import './SelectButton.css';
3
- export default function SelectButton({ label, onClick, style, date, description, }: any): React.JSX.Element;
3
+ export default function SelectButton({ label, onClick, style, description, }: any): React.JSX.Element;
package/lib/index.esm.js CHANGED
@@ -429,118 +429,6 @@ function useTranslation(ns) {
429
429
  });
430
430
  }
431
431
 
432
- 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}";
433
- styleInject(css_248z$b);
434
-
435
- function Divider() {
436
- return React__default__default.createElement("div", { className: "will-filter-bar-divider" });
437
- }
438
-
439
- 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";
440
- styleInject(css_248z$a);
441
-
442
- function SelectButton(_a) {
443
- var label = _a.label, onClick = _a.onClick, style = _a.style, date = _a.date, description = _a.description;
444
- return (React__default__default.createElement("button", { className: "will-filter-bar-select-button", onClick: onClick, style: style },
445
- React__default__default.createElement("span", { className: "select-button-wrapper" },
446
- React__default__default.createElement("div", null,
447
- React__default__default.createElement("p", { className: "select-button-label" }, label),
448
- React__default__default.createElement("p", { className: "select-button-description" }, description)),
449
- !!date && (React__default__default.createElement(React__default__default.Fragment, null,
450
- React__default__default.createElement("span", { className: "select-button-divider" }, "|"),
451
- React__default__default.createElement("span", { className: "select-button-date" },
452
- " ",
453
- date))))));
454
- }
455
-
456
- var DefaultContext = {
457
- color: undefined,
458
- size: undefined,
459
- className: undefined,
460
- style: undefined,
461
- attr: undefined
462
- };
463
- var IconContext = React__default__default.createContext && React__default__default.createContext(DefaultContext);
464
-
465
- var __assign$1 = undefined && undefined.__assign || function () {
466
- __assign$1 = Object.assign || function (t) {
467
- for (var s, i = 1, n = arguments.length; i < n; i++) {
468
- s = arguments[i];
469
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
470
- }
471
- return t;
472
- };
473
- return __assign$1.apply(this, arguments);
474
- };
475
- var __rest$1 = undefined && undefined.__rest || function (s, e) {
476
- var t = {};
477
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
478
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
479
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
480
- }
481
- return t;
482
- };
483
- function Tree2Element(tree) {
484
- return tree && tree.map(function (node, i) {
485
- return React__default__default.createElement(node.tag, __assign$1({
486
- key: i
487
- }, node.attr), Tree2Element(node.child));
488
- });
489
- }
490
- function GenIcon(data) {
491
- // eslint-disable-next-line react/display-name
492
- return function (props) {
493
- return React__default__default.createElement(IconBase, __assign$1({
494
- attr: __assign$1({}, data.attr)
495
- }, props), Tree2Element(data.child));
496
- };
497
- }
498
- function IconBase(props) {
499
- var elem = function (conf) {
500
- var attr = props.attr,
501
- size = props.size,
502
- title = props.title,
503
- svgProps = __rest$1(props, ["attr", "size", "title"]);
504
- var computedSize = size || conf.size || "1em";
505
- var className;
506
- if (conf.className) className = conf.className;
507
- if (props.className) className = (className ? className + " " : "") + props.className;
508
- return React__default__default.createElement("svg", __assign$1({
509
- stroke: "currentColor",
510
- fill: "currentColor",
511
- strokeWidth: "0"
512
- }, conf.attr, attr, svgProps, {
513
- className: className,
514
- style: __assign$1(__assign$1({
515
- color: props.color || conf.color
516
- }, conf.style), props.style),
517
- height: computedSize,
518
- width: computedSize,
519
- xmlns: "http://www.w3.org/2000/svg"
520
- }), title && React__default__default.createElement("title", null, title), props.children);
521
- };
522
- return IconContext !== undefined ? React__default__default.createElement(IconContext.Consumer, null, function (conf) {
523
- return elem(conf);
524
- }) : elem(DefaultContext);
525
- }
526
-
527
- // THIS FILE IS AUTO GENERATED
528
- function FaSearch (props) {
529
- 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);
530
- }
531
-
532
- 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";
533
- styleInject(css_248z$9);
534
-
535
- function SubmitButton$1(_a) {
536
- var onClick = _a.onClick;
537
- var t = useTranslation('filterBar').t;
538
- return (React__default__default.createElement("button", { className: "will-filter-bar-submit-button", onClick: onClick },
539
- React__default__default.createElement("span", null,
540
- React__default__default.createElement(FaSearch, null)),
541
- t('submit.label')));
542
- }
543
-
544
432
  function _typeof(o) {
545
433
  "@babel/helpers - typeof";
546
434
 
@@ -3981,6 +3869,113 @@ function setYear(dirtyDate, dirtyYear) {
3981
3869
  return date;
3982
3870
  }
3983
3871
 
3872
+ 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}";
3873
+ styleInject(css_248z$b);
3874
+
3875
+ function Divider() {
3876
+ return React__default__default.createElement("div", { className: "will-filter-bar-divider" });
3877
+ }
3878
+
3879
+ 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\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.will-filter-bar-select-button .select-button-wrapper > div {\n max-width: -webkit-fill-available;\n}\n\n.will-filter-bar-select-button .select-button-description {\n font-weight: 400;\n opacity: 0.4;\n \n \n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\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-description {\n white-space: wrap;\n }\n\n .will-filter-bar-select-button .select-button-divider {\n display: none\n }\n}\n\n\n";
3880
+ styleInject(css_248z$a);
3881
+
3882
+ function SelectButton(_a) {
3883
+ var label = _a.label, onClick = _a.onClick, style = _a.style, description = _a.description;
3884
+ return (React__default__default.createElement("button", { className: "will-filter-bar-select-button", onClick: onClick, style: style },
3885
+ React__default__default.createElement("span", { className: "select-button-wrapper" },
3886
+ React__default__default.createElement("div", null,
3887
+ React__default__default.createElement("p", { className: "select-button-label" }, label),
3888
+ React__default__default.createElement("p", { className: "select-button-description" }, description)))));
3889
+ }
3890
+
3891
+ var DefaultContext = {
3892
+ color: undefined,
3893
+ size: undefined,
3894
+ className: undefined,
3895
+ style: undefined,
3896
+ attr: undefined
3897
+ };
3898
+ var IconContext = React__default__default.createContext && React__default__default.createContext(DefaultContext);
3899
+
3900
+ var __assign$1 = undefined && undefined.__assign || function () {
3901
+ __assign$1 = Object.assign || function (t) {
3902
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
3903
+ s = arguments[i];
3904
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
3905
+ }
3906
+ return t;
3907
+ };
3908
+ return __assign$1.apply(this, arguments);
3909
+ };
3910
+ var __rest$1 = undefined && undefined.__rest || function (s, e) {
3911
+ var t = {};
3912
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
3913
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
3914
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
3915
+ }
3916
+ return t;
3917
+ };
3918
+ function Tree2Element(tree) {
3919
+ return tree && tree.map(function (node, i) {
3920
+ return React__default__default.createElement(node.tag, __assign$1({
3921
+ key: i
3922
+ }, node.attr), Tree2Element(node.child));
3923
+ });
3924
+ }
3925
+ function GenIcon(data) {
3926
+ // eslint-disable-next-line react/display-name
3927
+ return function (props) {
3928
+ return React__default__default.createElement(IconBase, __assign$1({
3929
+ attr: __assign$1({}, data.attr)
3930
+ }, props), Tree2Element(data.child));
3931
+ };
3932
+ }
3933
+ function IconBase(props) {
3934
+ var elem = function (conf) {
3935
+ var attr = props.attr,
3936
+ size = props.size,
3937
+ title = props.title,
3938
+ svgProps = __rest$1(props, ["attr", "size", "title"]);
3939
+ var computedSize = size || conf.size || "1em";
3940
+ var className;
3941
+ if (conf.className) className = conf.className;
3942
+ if (props.className) className = (className ? className + " " : "") + props.className;
3943
+ return React__default__default.createElement("svg", __assign$1({
3944
+ stroke: "currentColor",
3945
+ fill: "currentColor",
3946
+ strokeWidth: "0"
3947
+ }, conf.attr, attr, svgProps, {
3948
+ className: className,
3949
+ style: __assign$1(__assign$1({
3950
+ color: props.color || conf.color
3951
+ }, conf.style), props.style),
3952
+ height: computedSize,
3953
+ width: computedSize,
3954
+ xmlns: "http://www.w3.org/2000/svg"
3955
+ }), title && React__default__default.createElement("title", null, title), props.children);
3956
+ };
3957
+ return IconContext !== undefined ? React__default__default.createElement(IconContext.Consumer, null, function (conf) {
3958
+ return elem(conf);
3959
+ }) : elem(DefaultContext);
3960
+ }
3961
+
3962
+ // THIS FILE IS AUTO GENERATED
3963
+ function FaSearch (props) {
3964
+ 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);
3965
+ }
3966
+
3967
+ 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";
3968
+ styleInject(css_248z$9);
3969
+
3970
+ function SubmitButton$1(_a) {
3971
+ var onClick = _a.onClick;
3972
+ var t = useTranslation('filterBar').t;
3973
+ return (React__default__default.createElement("button", { className: "will-filter-bar-submit-button", onClick: onClick },
3974
+ React__default__default.createElement("span", null,
3975
+ React__default__default.createElement(FaSearch, null)),
3976
+ t('submit.label')));
3977
+ }
3978
+
3984
3979
  /******************************************************************************
3985
3980
  Copyright (c) Microsoft Corporation.
3986
3981
 
@@ -10488,7 +10483,8 @@ instance.loadLanguages;
10488
10483
 
10489
10484
  var calendar$1 = {
10490
10485
  label: "When",
10491
- labelPlaceholder: "Add check-in and check-out",
10486
+ roomsLabelPlaceholder: "Add check-in and check-out",
10487
+ eventsLabelPlaceholder: "Add search dates",
10492
10488
  startDate: "Start date",
10493
10489
  endDate: "End date",
10494
10490
  title: "Calendar"
@@ -10521,7 +10517,8 @@ var enFilterBar = {
10521
10517
 
10522
10518
  var calendar = {
10523
10519
  label: "Milloin",
10524
- labelPlaceholder: "Lisää check-in ja check-out",
10520
+ roomsLabelPlaceholder: "Lisää check-in ja check-out",
10521
+ eventsLabelPlaceholder: "Lisää aikaväli",
10525
10522
  startDate: "Alku",
10526
10523
  endDate: "Loppu",
10527
10524
  title: "Kalenteri"
@@ -10622,19 +10619,34 @@ function FilterBar(_a) {
10622
10619
  });
10623
10620
  }
10624
10621
  }, [selectedFilter]);
10622
+ var renderDates = (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to) && (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from)
10623
+ ? "".concat(format(calendarRange.from, 'dd.MM.yyyy'), " -\n ").concat(format(calendarRange.to, 'dd.MM.yyyy'))
10624
+ : null;
10625
+ var renderGuests = Object.entries(ageCategoryCounts).reduce(function (acc, _a) {
10626
+ var _b = __read(_a, 2), key = _b[0], value = _b[1];
10627
+ var ageCategory = ageCategories.find(function (c) { return c.id === key[key.length - 1]; });
10628
+ if (ageCategory && value) {
10629
+ acc += "".concat(acc ? ' -' : '', " ").concat(ageCategory.name, ": ").concat(value);
10630
+ }
10631
+ return acc;
10632
+ }, '');
10625
10633
  return (React__default__default.createElement(React__default__default.Fragment, null,
10626
10634
  selectedFilter && (React__default__default.createElement("div", { className: "will-filter-bar will-filter-bar-underlay", onClick: function () {
10627
10635
  handleSelectedFilter(false);
10628
10636
  } })),
10629
10637
  React__default__default.createElement("div", { className: "will-root ".concat(selectedFilter ? 'isMobileAbsolute' : ''), style: themePalette },
10630
- !currentViewApply && (React__default__default.createElement("div", { className: "will-filter-bar-tabs", ref: targetFilterBarRef },
10638
+ !currentViewApply && (React__default__default.createElement("div", { className: "will-filter-bar-tabs", ref: !currentViewApply ? targetFilterBarRef : null },
10631
10639
  React__default__default.createElement(SubmitButton, { label: t('tabs.events'), onClick: function () { return setSelectedPath('/events'); }, active: selectedPath === '/events' }),
10632
10640
  React__default__default.createElement(SubmitButton, { label: t('tabs.rooms'), onClick: function () { return setSelectedPath('/rooms'); }, active: selectedPath === '/rooms' }))),
10633
- React__default__default.createElement("div", { className: "will-filter-bar-header" },
10634
- React__default__default.createElement(SelectButton, { label: t('calendar.label'), description: t('calendar.labelPlaceholder'), onClick: function () { return handleSelectedFilter(1); }, style: fontWeightBold(selectedFilter === 1) }),
10641
+ React__default__default.createElement("div", { className: "will-filter-bar-header", ref: currentViewApply ? targetFilterBarRef : null },
10642
+ React__default__default.createElement(SelectButton, { label: t('calendar.label'), description: renderDates
10643
+ ? renderDates
10644
+ : selectedPath === '/rooms'
10645
+ ? t('calendar.roomsLabelPlaceholder')
10646
+ : 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 }),
10635
10647
  selectedPath === '/rooms' && (React__default__default.createElement(React__default__default.Fragment, null,
10636
10648
  React__default__default.createElement(Divider, null),
10637
- React__default__default.createElement(SelectButton, { label: t('guests.label'), description: t('guests.labelPlaceholder'), onClick: function () { return handleSelectedFilter(2); }, style: fontWeightBold(selectedFilter === 2) }))),
10649
+ React__default__default.createElement(SelectButton, { label: t('guests.label'), description: renderGuests ? renderGuests : t('guests.labelPlaceholder'), onClick: function () { return handleSelectedFilter(2); }, style: fontWeightBold(selectedFilter === 2) }))),
10638
10650
  React__default__default.createElement(SubmitButton$1, { onClick: handleSubmit })),
10639
10651
  selectedFilter && (React__default__default.createElement("div", { className: "will-filter-bar-container", style: currentViewApply && !isMobile ? { top: 66 } : {} },
10640
10652
  React__default__default.createElement(CloseButton, { handleClose: function () { return handleSelectedFilter(false); } }),