@happychef/algorithm 1.2.32 → 1.3.2
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/.github/workflows/ci-cd.yml +80 -80
- package/CHANGELOG.md +8 -8
- package/RESERVERINGEN_GIDS.md +986 -986
- package/assignTables.js +444 -444
- package/changes/2025/December/PR2___change.md +14 -14
- package/changes/2025/December/PR3_add__change.md +20 -20
- package/changes/2025/December/PR4___.md +15 -15
- package/changes/2025/December/PR5___.md +15 -15
- package/changes/2025/December/PR6__del_.md +17 -17
- package/changes/2025/December/PR7_add__change.md +21 -21
- package/changes/2026/February/PR15_add__change.md +21 -21
- package/changes/2026/February/PR16_add_getDateClosingReasons.md +31 -0
- package/changes/2026/January/PR10_add__change.md +21 -21
- package/changes/2026/January/PR11_add__change.md +19 -19
- package/changes/2026/January/PR12_add__.md +21 -21
- package/changes/2026/January/PR13_add__change.md +20 -20
- package/changes/2026/January/PR14_add__change.md +19 -19
- package/changes/2026/January/PR8_add__change.md +38 -38
- package/changes/2026/January/PR9_add__change.md +19 -19
- package/filters/maxArrivalsFilter.js +114 -114
- package/filters/maxGroupsFilter.js +221 -221
- package/filters/timeFilter.js +89 -89
- package/getAvailableTimeblocks.js +158 -158
- package/getDateClosingReasons.js +193 -0
- package/grouping.js +162 -162
- package/index.js +43 -42
- package/isDateAvailable.js +80 -80
- package/isDateAvailableWithTableCheck.js +172 -172
- package/isTimeAvailable.js +26 -26
- package/package.json +27 -27
- package/processing/dailyGuestCounts.js +73 -73
- package/processing/mealTypeCount.js +133 -133
- package/processing/timeblocksAvailable.js +182 -182
- package/reservation_data/counter.js +74 -74
- package/restaurant_data/exceptions.js +150 -150
- package/restaurant_data/openinghours.js +142 -156
- package/simulateTableAssignment.js +726 -726
- package/tableHelpers.js +209 -209
- package/tables/time/parseTime.js +19 -19
- package/tables/time/shifts.js +7 -7
- package/tables/utils/calculateDistance.js +13 -13
- package/tables/utils/isTableFreeForAllSlots.js +14 -14
- package/tables/utils/isTemporaryTableValid.js +39 -39
- package/test/test_counter.js +194 -194
- package/test/test_dailyCount.js +81 -81
- package/test/test_datesAvailable.js +106 -106
- package/test/test_exceptions.js +172 -172
- package/test/test_isDateAvailable.js +330 -330
- package/test/test_mealTypeCount.js +54 -54
- package/test/test_timesAvailable.js +88 -88
- package/test-meal-stop-fix.js +147 -147
- package/test-meal-stop-simple.js +93 -93
- package/test.js +336 -336
- package/bundle_entry.js +0 -100
- package/moment-timezone-shim.js +0 -179
- package/nul +0 -0
|
@@ -1,80 +1,80 @@
|
|
|
1
|
-
name: CI/CD Pipeline
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches:
|
|
6
|
-
- main
|
|
7
|
-
pull_request:
|
|
8
|
-
branches:
|
|
9
|
-
- main
|
|
10
|
-
types: [opened, synchronize, reopened]
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
publish:
|
|
14
|
-
name: Publish to NPM
|
|
15
|
-
runs-on: ubuntu-latest
|
|
16
|
-
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
|
|
17
|
-
|
|
18
|
-
steps:
|
|
19
|
-
- name: Checkout code
|
|
20
|
-
uses: actions/checkout@v4
|
|
21
|
-
|
|
22
|
-
- name: Setup Node.js
|
|
23
|
-
uses: actions/setup-node@v4
|
|
24
|
-
with:
|
|
25
|
-
node-version: '20.x'
|
|
26
|
-
registry-url: 'https://registry.npmjs.org'
|
|
27
|
-
cache: 'npm'
|
|
28
|
-
|
|
29
|
-
- name: Install dependencies
|
|
30
|
-
run: npm ci
|
|
31
|
-
|
|
32
|
-
- name: Check if version changed
|
|
33
|
-
id: version-check
|
|
34
|
-
run: |
|
|
35
|
-
PACKAGE_VERSION=$(node -p "require('./package.json').version")
|
|
36
|
-
NPM_VERSION=$(npm view @happychef/algorithm version 2>/dev/null || echo "0.0.0")
|
|
37
|
-
echo "Package version: $PACKAGE_VERSION"
|
|
38
|
-
echo "NPM version: $NPM_VERSION"
|
|
39
|
-
if [ "$PACKAGE_VERSION" != "$NPM_VERSION" ]; then
|
|
40
|
-
echo "version_changed=true" >> $GITHUB_OUTPUT
|
|
41
|
-
echo "Version changed from $NPM_VERSION to $PACKAGE_VERSION"
|
|
42
|
-
else
|
|
43
|
-
echo "version_changed=false" >> $GITHUB_OUTPUT
|
|
44
|
-
echo "Version unchanged: $PACKAGE_VERSION"
|
|
45
|
-
fi
|
|
46
|
-
|
|
47
|
-
- name: Publish to NPM
|
|
48
|
-
if: steps.version-check.outputs.version_changed == 'true'
|
|
49
|
-
run: |
|
|
50
|
-
npm publish --access public
|
|
51
|
-
echo "## 📦 NPM Package Published" >> $GITHUB_STEP_SUMMARY
|
|
52
|
-
echo "" >> $GITHUB_STEP_SUMMARY
|
|
53
|
-
echo "✅ Successfully published @happychef/algorithm@$(node -p "require('./package.json').version")" >> $GITHUB_STEP_SUMMARY
|
|
54
|
-
echo "" >> $GITHUB_STEP_SUMMARY
|
|
55
|
-
echo "🔗 [View on NPM](https://www.npmjs.com/package/@happychef/algorithm)" >> $GITHUB_STEP_SUMMARY
|
|
56
|
-
env:
|
|
57
|
-
NODE_AUTH_TOKEN: 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
|
|
58
|
-
|
|
59
|
-
- name: Skip publishing (version unchanged)
|
|
60
|
-
if: steps.version-check.outputs.version_changed == 'false'
|
|
61
|
-
run: |
|
|
62
|
-
echo "## ⏭️ Publishing Skipped" >> $GITHUB_STEP_SUMMARY
|
|
63
|
-
echo "" >> $GITHUB_STEP_SUMMARY
|
|
64
|
-
echo "Version $(node -p "require('./package.json').version") is already published" >> $GITHUB_STEP_SUMMARY
|
|
65
|
-
echo "" >> $GITHUB_STEP_SUMMARY
|
|
66
|
-
echo "💡 Bump the version in package.json to trigger publishing" >> $GITHUB_STEP_SUMMARY
|
|
67
|
-
|
|
68
|
-
- name: Create Git Tag
|
|
69
|
-
if: steps.version-check.outputs.version_changed == 'true'
|
|
70
|
-
run: |
|
|
71
|
-
PACKAGE_VERSION=$(node -p "require('./package.json').version")
|
|
72
|
-
git config user.name "github-actions[bot]"
|
|
73
|
-
git config user.email "github-actions[bot]@users.noreply.github.com"
|
|
74
|
-
git tag -a "v$PACKAGE_VERSION" -m "Release v$PACKAGE_VERSION"
|
|
75
|
-
git push origin "v$PACKAGE_VERSION"
|
|
76
|
-
echo "## 🏷️ Git Tag Created" >> $GITHUB_STEP_SUMMARY
|
|
77
|
-
echo "" >> $GITHUB_STEP_SUMMARY
|
|
78
|
-
echo "Created and pushed tag: v$PACKAGE_VERSION" >> $GITHUB_STEP_SUMMARY
|
|
79
|
-
env:
|
|
80
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
1
|
+
name: CI/CD Pipeline
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
pull_request:
|
|
8
|
+
branches:
|
|
9
|
+
- main
|
|
10
|
+
types: [opened, synchronize, reopened]
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
publish:
|
|
14
|
+
name: Publish to NPM
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
|
|
17
|
+
|
|
18
|
+
steps:
|
|
19
|
+
- name: Checkout code
|
|
20
|
+
uses: actions/checkout@v4
|
|
21
|
+
|
|
22
|
+
- name: Setup Node.js
|
|
23
|
+
uses: actions/setup-node@v4
|
|
24
|
+
with:
|
|
25
|
+
node-version: '20.x'
|
|
26
|
+
registry-url: 'https://registry.npmjs.org'
|
|
27
|
+
cache: 'npm'
|
|
28
|
+
|
|
29
|
+
- name: Install dependencies
|
|
30
|
+
run: npm ci
|
|
31
|
+
|
|
32
|
+
- name: Check if version changed
|
|
33
|
+
id: version-check
|
|
34
|
+
run: |
|
|
35
|
+
PACKAGE_VERSION=$(node -p "require('./package.json').version")
|
|
36
|
+
NPM_VERSION=$(npm view @happychef/algorithm version 2>/dev/null || echo "0.0.0")
|
|
37
|
+
echo "Package version: $PACKAGE_VERSION"
|
|
38
|
+
echo "NPM version: $NPM_VERSION"
|
|
39
|
+
if [ "$PACKAGE_VERSION" != "$NPM_VERSION" ]; then
|
|
40
|
+
echo "version_changed=true" >> $GITHUB_OUTPUT
|
|
41
|
+
echo "Version changed from $NPM_VERSION to $PACKAGE_VERSION"
|
|
42
|
+
else
|
|
43
|
+
echo "version_changed=false" >> $GITHUB_OUTPUT
|
|
44
|
+
echo "Version unchanged: $PACKAGE_VERSION"
|
|
45
|
+
fi
|
|
46
|
+
|
|
47
|
+
- name: Publish to NPM
|
|
48
|
+
if: steps.version-check.outputs.version_changed == 'true'
|
|
49
|
+
run: |
|
|
50
|
+
npm publish --access public
|
|
51
|
+
echo "## 📦 NPM Package Published" >> $GITHUB_STEP_SUMMARY
|
|
52
|
+
echo "" >> $GITHUB_STEP_SUMMARY
|
|
53
|
+
echo "✅ Successfully published @happychef/algorithm@$(node -p "require('./package.json').version")" >> $GITHUB_STEP_SUMMARY
|
|
54
|
+
echo "" >> $GITHUB_STEP_SUMMARY
|
|
55
|
+
echo "🔗 [View on NPM](https://www.npmjs.com/package/@happychef/algorithm)" >> $GITHUB_STEP_SUMMARY
|
|
56
|
+
env:
|
|
57
|
+
NODE_AUTH_TOKEN: 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
|
|
58
|
+
|
|
59
|
+
- name: Skip publishing (version unchanged)
|
|
60
|
+
if: steps.version-check.outputs.version_changed == 'false'
|
|
61
|
+
run: |
|
|
62
|
+
echo "## ⏭️ Publishing Skipped" >> $GITHUB_STEP_SUMMARY
|
|
63
|
+
echo "" >> $GITHUB_STEP_SUMMARY
|
|
64
|
+
echo "Version $(node -p "require('./package.json').version") is already published" >> $GITHUB_STEP_SUMMARY
|
|
65
|
+
echo "" >> $GITHUB_STEP_SUMMARY
|
|
66
|
+
echo "💡 Bump the version in package.json to trigger publishing" >> $GITHUB_STEP_SUMMARY
|
|
67
|
+
|
|
68
|
+
- name: Create Git Tag
|
|
69
|
+
if: steps.version-check.outputs.version_changed == 'true'
|
|
70
|
+
run: |
|
|
71
|
+
PACKAGE_VERSION=$(node -p "require('./package.json').version")
|
|
72
|
+
git config user.name "github-actions[bot]"
|
|
73
|
+
git config user.email "github-actions[bot]@users.noreply.github.com"
|
|
74
|
+
git tag -a "v$PACKAGE_VERSION" -m "Release v$PACKAGE_VERSION"
|
|
75
|
+
git push origin "v$PACKAGE_VERSION"
|
|
76
|
+
echo "## 🏷️ Git Tag Created" >> $GITHUB_STEP_SUMMARY
|
|
77
|
+
echo "" >> $GITHUB_STEP_SUMMARY
|
|
78
|
+
echo "Created and pushed tag: v$PACKAGE_VERSION" >> $GITHUB_STEP_SUMMARY
|
|
79
|
+
env:
|
|
80
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
PR 2:
|
|
2
|
-
ADDED:
|
|
3
|
-
- Modified the `getAvailableTimeblocks.js` file to change the default value of `uurOpVoorhand` from 4 hours to 0 hours, enabling immediate bookings when the field is not explicitly set in general settings.
|
|
4
|
-
|
|
5
|
-
REMOVED:
|
|
6
|
-
- No functions, features, or code were removed; only a configuration default value was updated.
|
|
7
|
-
|
|
8
|
-
---
|
|
1
|
+
PR 2:
|
|
2
|
+
ADDED:
|
|
3
|
+
- Modified the `getAvailableTimeblocks.js` file to change the default value of `uurOpVoorhand` from 4 hours to 0 hours, enabling immediate bookings when the field is not explicitly set in general settings.
|
|
4
|
+
|
|
5
|
+
REMOVED:
|
|
6
|
+
- No functions, features, or code were removed; only a configuration default value was updated.
|
|
7
|
+
|
|
8
|
+
---
|