@happychef/reservation-sidebar 2.1.2 → 2.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +10 -17
- package/dist/index.mjs +10 -17
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -4769,9 +4769,6 @@ var Calendar = ({
|
|
|
4769
4769
|
}))))))));
|
|
4770
4770
|
};
|
|
4771
4771
|
var Calendar_default = Calendar;
|
|
4772
|
-
|
|
4773
|
-
// src/components/ReservationStepOne/DateSelector.js
|
|
4774
|
-
var import_moment = __toESM(require_moment());
|
|
4775
4772
|
var DateSelector = ({
|
|
4776
4773
|
guests: guests2,
|
|
4777
4774
|
formData,
|
|
@@ -4784,12 +4781,12 @@ var DateSelector = ({
|
|
|
4784
4781
|
reservationMode
|
|
4785
4782
|
}) => {
|
|
4786
4783
|
const handleDateSelect = (date) => {
|
|
4787
|
-
const formatted =
|
|
4784
|
+
const formatted = moment2__default.default(date).format("YYYY-MM-DD");
|
|
4788
4785
|
console.log("Selected date:", formatted);
|
|
4789
4786
|
handleChange({ target: { name: "date", value: formatted } });
|
|
4790
4787
|
resetFormDataFields(["time"]);
|
|
4791
4788
|
};
|
|
4792
|
-
const monthStartDate = startDate ? startDate.clone().startOf("month") :
|
|
4789
|
+
const monthStartDate = startDate ? startDate.clone().startOf("month") : moment2__default.default().startOf("month");
|
|
4793
4790
|
return /* @__PURE__ */ React9__default.default.createElement("div", { className: "form-group date-selector-container" }, /* @__PURE__ */ React9__default.default.createElement(
|
|
4794
4791
|
Calendar_default,
|
|
4795
4792
|
{
|
|
@@ -5108,9 +5105,6 @@ var TableSelector_default = TableSelector;
|
|
|
5108
5105
|
|
|
5109
5106
|
// src/components/ReservationStepOne/css/reservationMode.css
|
|
5110
5107
|
styleInject(".new-reservation-page .form-row .field-label {\n display: block;\n margin-bottom: 6px;\n font-weight: 600;\n}\n.new-reservation-page .form-row .reservation-mode-buttons {\n margin-top: 0;\n}\n.new-reservation-page .reservation-mode-buttons {\n display: flex;\n gap: 10px;\n margin-top: 10px;\n}\n.new-reservation-page .reservation-mode-button {\n flex: 1;\n padding: 10px;\n border: 1px solid #ccc;\n border-radius: var(--border-radius);\n background-color: var(--color-white);\n cursor: pointer;\n font-size: 1rem;\n transition: background-color 0.3s ease, color 0.3s ease;\n}\n.new-reservation-page .reservation-mode-button.active,\n.new-reservation-page .reservation-mode-button:hover {\n background-color: var(--color-blue);\n color: var(--color-white);\n}\n.new-reservation-page .reservation-modes-container {\n display: flex;\n flex-wrap: wrap;\n margin: 0 -5px;\n width: 100%;\n}\n.new-reservation-page .reservation-mode-button {\n flex: 0 0 calc(50% - 10px);\n margin: 5px;\n padding: 10px;\n box-sizing: border-box;\n text-align: center;\n border: 1px solid #ccc;\n background: #f7f7f7;\n cursor: pointer;\n}\n.new-reservation-page .reservation-mode-button:nth-child(3) {\n flex: 0 0 100%;\n}\n.new-reservation-page .reservation-modes-container {\n display: flex;\n flex-wrap: wrap;\n margin: 0 -5px;\n width: 100%;\n}\n.new-reservation-page .reservation-mode-button {\n flex: 0 0 calc(50% - 10px);\n margin: 5px;\n padding: 10px;\n box-sizing: border-box;\n text-align: center;\n border: 1px solid #ccc;\n background: #f7f7f7;\n cursor: pointer;\n}\n.new-reservation-page .reservation-mode-button.active,\n.new-reservation-page .reservation-mode-button:hover {\n background-color: var(--color-blue);\n color: var(--color-white);\n}\n.new-reservation-page .unlimited-mode-warning {\n display: flex;\n align-items: flex-start;\n gap: 10px;\n margin: 15px 0;\n padding: 12px 15px;\n background-color: #fff3cd;\n border: 1px solid #ffeaa7;\n border-radius: var(--border-radius, 4px);\n border-left: 4px solid #e67e22;\n font-size: 0.9rem;\n line-height: 1.4;\n}\n.new-reservation-page .unlimited-mode-warning .warning-icon {\n color: #e67e22;\n font-size: 1.1rem;\n margin-top: 2px;\n flex-shrink: 0;\n}\n.new-reservation-page .unlimited-mode-warning .warning-text {\n color: #856404;\n margin: 0;\n}\n@media screen and (max-width: 480px) {\n .new-reservation-page .unlimited-mode-warning {\n margin: 10px 0;\n padding: 10px 12px;\n font-size: 0.85rem;\n }\n .new-reservation-page .unlimited-mode-warning .warning-icon {\n font-size: 1rem;\n }\n}\n.new-reservation-page .reservation-sidebar-component {\n position: fixed;\n top: 0;\n right: -400px;\n width: 400px;\n height: 100%;\n background-color: #fff;\n box-shadow: -2px 0 5px rgba(0, 0, 0, 0.1);\n z-index: var(--z-index-sidebar-reservation);\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n transition: right 0.3s ease-in-out;\n}\n.new-reservation-page .admin-title {\n text-align: center;\n margin-bottom: 30px;\n}\n.new-reservation-page .reservation-sidebar-component.open {\n right: 0;\n}\n.new-reservation-page .reservation-sidebar-content {\n padding: 20px;\n padding-top: 60px;\n}\n.new-reservation-page .close-sidebar-button {\n position: absolute;\n top: 10px;\n left: 10px;\n background-color: transparent;\n border: none;\n cursor: pointer;\n}\n.new-reservation-page .close-sidebar-button svg {\n color: #000;\n}\n.new-reservation-page .sidebar-section-one,\n.new-reservation-page .sidebar-section-two {\n margin-bottom: 20px;\n}\n.new-reservation-page .reservation-footer {\n margin-top: auto;\n}\n.new-reservation-page .store-reservation-button {\n width: 100%;\n padding: 12px;\n background-color: var(--color-blue);\n color: #fff;\n border: none;\n border-radius: 5px;\n cursor: pointer;\n font-size: 1.1rem;\n}\n.new-reservation-page .open-sidebar-button {\n position: fixed;\n bottom: 20px;\n right: 20px;\n background-color: var(--color-blue);\n color: #fff;\n border: none;\n border-radius: 50%;\n width: 50px;\n height: 50px;\n cursor: pointer;\n z-index: var(--z-index-modal) !important;\n transition: all 0.3s ease;\n}\n.new-reservation-page .open-sidebar-button:hover {\n background-color: var(--color-blue-hover-accent) !important;\n}\n.new-reservation-page .open-sidebar-button svg {\n position: relative;\n top: 2px;\n}\n@media screen and (max-width: 480px) {\n .new-reservation-page .reservation-sidebar-component {\n width: 100%;\n }\n}\n.new-reservation-page .sidebar-section-personeel {\n margin-bottom: 10px;\n}\n");
|
|
5111
|
-
|
|
5112
|
-
// src/components/ReservationStepOne/index.js
|
|
5113
|
-
var import_moment2 = __toESM(require_moment());
|
|
5114
5108
|
var useApi = () => {
|
|
5115
5109
|
const getJwtToken = React9.useCallback(() => {
|
|
5116
5110
|
return localStorage.getItem("accessToken");
|
|
@@ -5208,7 +5202,7 @@ var ReservationStepOne = ({
|
|
|
5208
5202
|
[setFormData]
|
|
5209
5203
|
);
|
|
5210
5204
|
React9.useEffect(() => {
|
|
5211
|
-
const today =
|
|
5205
|
+
const today = moment2__default.default().tz("Europe/Amsterdam").startOf("day");
|
|
5212
5206
|
let firstWeekStart = today.clone().startOf("isoWeek");
|
|
5213
5207
|
while (isWeekInPast(firstWeekStart)) {
|
|
5214
5208
|
firstWeekStart.add(1, "week");
|
|
@@ -5669,7 +5663,6 @@ var FormField = ({
|
|
|
5669
5663
|
var FormField_default = FormField;
|
|
5670
5664
|
|
|
5671
5665
|
// src/components/ReservationStepTwo/ReservationStepTwo.js
|
|
5672
|
-
var import_moment3 = __toESM(require_moment());
|
|
5673
5666
|
__toESM(require_nl());
|
|
5674
5667
|
|
|
5675
5668
|
// src/components/ReservationStepTwo/translations.json
|
|
@@ -5814,19 +5807,19 @@ var ReservationStepTwo = ({
|
|
|
5814
5807
|
const [pendingAutofill, setPendingAutofill] = React9.useState(null);
|
|
5815
5808
|
const api = useApi_default();
|
|
5816
5809
|
React9.useEffect(() => {
|
|
5817
|
-
|
|
5810
|
+
moment2__default.default.locale(lang);
|
|
5818
5811
|
if (!formData.date || !formData.time || !menuData.length) return setAvailableMenus([]);
|
|
5819
|
-
const sel =
|
|
5812
|
+
const sel = moment2__default.default(`${formData.date} ${formData.time}`, "YYYY-MM-DD HH:mm");
|
|
5820
5813
|
const filtered = menuData.filter((menu) => {
|
|
5821
5814
|
const inDate = sel.isBetween(
|
|
5822
|
-
|
|
5823
|
-
|
|
5815
|
+
moment2__default.default(menu.startDate, "YYYY-MM-DD"),
|
|
5816
|
+
moment2__default.default(menu.endDate, "YYYY-MM-DD"),
|
|
5824
5817
|
"day",
|
|
5825
5818
|
"[]"
|
|
5826
5819
|
);
|
|
5827
|
-
const inTime =
|
|
5828
|
-
|
|
5829
|
-
|
|
5820
|
+
const inTime = moment2__default.default(formData.time, "HH:mm").isBetween(
|
|
5821
|
+
moment2__default.default(menu.startHour, "HH:mm"),
|
|
5822
|
+
moment2__default.default(menu.endHour, "HH:mm"),
|
|
5830
5823
|
"minute",
|
|
5831
5824
|
"[]"
|
|
5832
5825
|
);
|
package/dist/index.mjs
CHANGED
|
@@ -4760,9 +4760,6 @@ var Calendar = ({
|
|
|
4760
4760
|
}))))))));
|
|
4761
4761
|
};
|
|
4762
4762
|
var Calendar_default = Calendar;
|
|
4763
|
-
|
|
4764
|
-
// src/components/ReservationStepOne/DateSelector.js
|
|
4765
|
-
var import_moment = __toESM(require_moment());
|
|
4766
4763
|
var DateSelector = ({
|
|
4767
4764
|
guests: guests2,
|
|
4768
4765
|
formData,
|
|
@@ -4775,12 +4772,12 @@ var DateSelector = ({
|
|
|
4775
4772
|
reservationMode
|
|
4776
4773
|
}) => {
|
|
4777
4774
|
const handleDateSelect = (date) => {
|
|
4778
|
-
const formatted = (
|
|
4775
|
+
const formatted = moment2(date).format("YYYY-MM-DD");
|
|
4779
4776
|
console.log("Selected date:", formatted);
|
|
4780
4777
|
handleChange({ target: { name: "date", value: formatted } });
|
|
4781
4778
|
resetFormDataFields(["time"]);
|
|
4782
4779
|
};
|
|
4783
|
-
const monthStartDate = startDate ? startDate.clone().startOf("month") : (
|
|
4780
|
+
const monthStartDate = startDate ? startDate.clone().startOf("month") : moment2().startOf("month");
|
|
4784
4781
|
return /* @__PURE__ */ React9.createElement("div", { className: "form-group date-selector-container" }, /* @__PURE__ */ React9.createElement(
|
|
4785
4782
|
Calendar_default,
|
|
4786
4783
|
{
|
|
@@ -5099,9 +5096,6 @@ var TableSelector_default = TableSelector;
|
|
|
5099
5096
|
|
|
5100
5097
|
// src/components/ReservationStepOne/css/reservationMode.css
|
|
5101
5098
|
styleInject(".new-reservation-page .form-row .field-label {\n display: block;\n margin-bottom: 6px;\n font-weight: 600;\n}\n.new-reservation-page .form-row .reservation-mode-buttons {\n margin-top: 0;\n}\n.new-reservation-page .reservation-mode-buttons {\n display: flex;\n gap: 10px;\n margin-top: 10px;\n}\n.new-reservation-page .reservation-mode-button {\n flex: 1;\n padding: 10px;\n border: 1px solid #ccc;\n border-radius: var(--border-radius);\n background-color: var(--color-white);\n cursor: pointer;\n font-size: 1rem;\n transition: background-color 0.3s ease, color 0.3s ease;\n}\n.new-reservation-page .reservation-mode-button.active,\n.new-reservation-page .reservation-mode-button:hover {\n background-color: var(--color-blue);\n color: var(--color-white);\n}\n.new-reservation-page .reservation-modes-container {\n display: flex;\n flex-wrap: wrap;\n margin: 0 -5px;\n width: 100%;\n}\n.new-reservation-page .reservation-mode-button {\n flex: 0 0 calc(50% - 10px);\n margin: 5px;\n padding: 10px;\n box-sizing: border-box;\n text-align: center;\n border: 1px solid #ccc;\n background: #f7f7f7;\n cursor: pointer;\n}\n.new-reservation-page .reservation-mode-button:nth-child(3) {\n flex: 0 0 100%;\n}\n.new-reservation-page .reservation-modes-container {\n display: flex;\n flex-wrap: wrap;\n margin: 0 -5px;\n width: 100%;\n}\n.new-reservation-page .reservation-mode-button {\n flex: 0 0 calc(50% - 10px);\n margin: 5px;\n padding: 10px;\n box-sizing: border-box;\n text-align: center;\n border: 1px solid #ccc;\n background: #f7f7f7;\n cursor: pointer;\n}\n.new-reservation-page .reservation-mode-button.active,\n.new-reservation-page .reservation-mode-button:hover {\n background-color: var(--color-blue);\n color: var(--color-white);\n}\n.new-reservation-page .unlimited-mode-warning {\n display: flex;\n align-items: flex-start;\n gap: 10px;\n margin: 15px 0;\n padding: 12px 15px;\n background-color: #fff3cd;\n border: 1px solid #ffeaa7;\n border-radius: var(--border-radius, 4px);\n border-left: 4px solid #e67e22;\n font-size: 0.9rem;\n line-height: 1.4;\n}\n.new-reservation-page .unlimited-mode-warning .warning-icon {\n color: #e67e22;\n font-size: 1.1rem;\n margin-top: 2px;\n flex-shrink: 0;\n}\n.new-reservation-page .unlimited-mode-warning .warning-text {\n color: #856404;\n margin: 0;\n}\n@media screen and (max-width: 480px) {\n .new-reservation-page .unlimited-mode-warning {\n margin: 10px 0;\n padding: 10px 12px;\n font-size: 0.85rem;\n }\n .new-reservation-page .unlimited-mode-warning .warning-icon {\n font-size: 1rem;\n }\n}\n.new-reservation-page .reservation-sidebar-component {\n position: fixed;\n top: 0;\n right: -400px;\n width: 400px;\n height: 100%;\n background-color: #fff;\n box-shadow: -2px 0 5px rgba(0, 0, 0, 0.1);\n z-index: var(--z-index-sidebar-reservation);\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n transition: right 0.3s ease-in-out;\n}\n.new-reservation-page .admin-title {\n text-align: center;\n margin-bottom: 30px;\n}\n.new-reservation-page .reservation-sidebar-component.open {\n right: 0;\n}\n.new-reservation-page .reservation-sidebar-content {\n padding: 20px;\n padding-top: 60px;\n}\n.new-reservation-page .close-sidebar-button {\n position: absolute;\n top: 10px;\n left: 10px;\n background-color: transparent;\n border: none;\n cursor: pointer;\n}\n.new-reservation-page .close-sidebar-button svg {\n color: #000;\n}\n.new-reservation-page .sidebar-section-one,\n.new-reservation-page .sidebar-section-two {\n margin-bottom: 20px;\n}\n.new-reservation-page .reservation-footer {\n margin-top: auto;\n}\n.new-reservation-page .store-reservation-button {\n width: 100%;\n padding: 12px;\n background-color: var(--color-blue);\n color: #fff;\n border: none;\n border-radius: 5px;\n cursor: pointer;\n font-size: 1.1rem;\n}\n.new-reservation-page .open-sidebar-button {\n position: fixed;\n bottom: 20px;\n right: 20px;\n background-color: var(--color-blue);\n color: #fff;\n border: none;\n border-radius: 50%;\n width: 50px;\n height: 50px;\n cursor: pointer;\n z-index: var(--z-index-modal) !important;\n transition: all 0.3s ease;\n}\n.new-reservation-page .open-sidebar-button:hover {\n background-color: var(--color-blue-hover-accent) !important;\n}\n.new-reservation-page .open-sidebar-button svg {\n position: relative;\n top: 2px;\n}\n@media screen and (max-width: 480px) {\n .new-reservation-page .reservation-sidebar-component {\n width: 100%;\n }\n}\n.new-reservation-page .sidebar-section-personeel {\n margin-bottom: 10px;\n}\n");
|
|
5102
|
-
|
|
5103
|
-
// src/components/ReservationStepOne/index.js
|
|
5104
|
-
var import_moment2 = __toESM(require_moment());
|
|
5105
5099
|
var useApi = () => {
|
|
5106
5100
|
const getJwtToken = useCallback(() => {
|
|
5107
5101
|
return localStorage.getItem("accessToken");
|
|
@@ -5199,7 +5193,7 @@ var ReservationStepOne = ({
|
|
|
5199
5193
|
[setFormData]
|
|
5200
5194
|
);
|
|
5201
5195
|
useEffect(() => {
|
|
5202
|
-
const today = (
|
|
5196
|
+
const today = moment2().tz("Europe/Amsterdam").startOf("day");
|
|
5203
5197
|
let firstWeekStart = today.clone().startOf("isoWeek");
|
|
5204
5198
|
while (isWeekInPast(firstWeekStart)) {
|
|
5205
5199
|
firstWeekStart.add(1, "week");
|
|
@@ -5660,7 +5654,6 @@ var FormField = ({
|
|
|
5660
5654
|
var FormField_default = FormField;
|
|
5661
5655
|
|
|
5662
5656
|
// src/components/ReservationStepTwo/ReservationStepTwo.js
|
|
5663
|
-
var import_moment3 = __toESM(require_moment());
|
|
5664
5657
|
__toESM(require_nl());
|
|
5665
5658
|
|
|
5666
5659
|
// src/components/ReservationStepTwo/translations.json
|
|
@@ -5805,19 +5798,19 @@ var ReservationStepTwo = ({
|
|
|
5805
5798
|
const [pendingAutofill, setPendingAutofill] = useState(null);
|
|
5806
5799
|
const api = useApi_default();
|
|
5807
5800
|
useEffect(() => {
|
|
5808
|
-
|
|
5801
|
+
moment2.locale(lang);
|
|
5809
5802
|
if (!formData.date || !formData.time || !menuData.length) return setAvailableMenus([]);
|
|
5810
|
-
const sel = (
|
|
5803
|
+
const sel = moment2(`${formData.date} ${formData.time}`, "YYYY-MM-DD HH:mm");
|
|
5811
5804
|
const filtered = menuData.filter((menu) => {
|
|
5812
5805
|
const inDate = sel.isBetween(
|
|
5813
|
-
(
|
|
5814
|
-
(
|
|
5806
|
+
moment2(menu.startDate, "YYYY-MM-DD"),
|
|
5807
|
+
moment2(menu.endDate, "YYYY-MM-DD"),
|
|
5815
5808
|
"day",
|
|
5816
5809
|
"[]"
|
|
5817
5810
|
);
|
|
5818
|
-
const inTime = (
|
|
5819
|
-
(
|
|
5820
|
-
(
|
|
5811
|
+
const inTime = moment2(formData.time, "HH:mm").isBetween(
|
|
5812
|
+
moment2(menu.startHour, "HH:mm"),
|
|
5813
|
+
moment2(menu.endHour, "HH:mm"),
|
|
5821
5814
|
"minute",
|
|
5822
5815
|
"[]"
|
|
5823
5816
|
);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@happychef/reservation-sidebar",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.3",
|
|
4
4
|
"description": "A compound component for managing restaurant reservations - JavaScript version with independent styles",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|