@dexteel/mesf-core 4.28.0 → 4.30.0
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/release-please.yml +1 -48
- package/.release-please-manifest.json +1 -1
- package/CHANGELOG.md +149 -0
- package/CLAUDE.md +169 -0
- package/dist/MESFMain.d.ts +2 -1
- package/dist/account/AuthProvider.d.ts +1 -1
- package/dist/account/account.d.ts +2 -0
- package/dist/account/useToken.d.ts +1 -1
- package/dist/index.esm.js +97 -80
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -2
- package/release-please-config.json +2 -9
|
@@ -10,52 +10,5 @@ jobs:
|
|
|
10
10
|
runs-on: ubuntu-latest
|
|
11
11
|
steps:
|
|
12
12
|
- uses: googleapis/release-please-action@v4
|
|
13
|
-
id: release
|
|
14
13
|
with:
|
|
15
|
-
|
|
16
|
-
token: ${{ secrets.GITHUB_TOKEN }}
|
|
17
|
-
|
|
18
|
-
- uses: actions/checkout@v4
|
|
19
|
-
if: ${{ steps.release.outputs.release_created }}
|
|
20
|
-
|
|
21
|
-
- name: Setup Node.js
|
|
22
|
-
if: ${{ steps.release.outputs.release_created }}
|
|
23
|
-
uses: actions/setup-node@v4
|
|
24
|
-
with:
|
|
25
|
-
node-version: 'lts/hydrogen' # Adjust this to your Node.js version
|
|
26
|
-
|
|
27
|
-
- name: Update Node.js package versions
|
|
28
|
-
if: ${{ steps.release.outputs.release_created }}
|
|
29
|
-
run: |
|
|
30
|
-
version="${{ steps.release.outputs.version }}"
|
|
31
|
-
find . -name "package.json" -type f -print0 | while IFS= read -r -d '' file; do
|
|
32
|
-
jq ".version = \"${version}\"" "$file" > temp.json && mv temp.json "$file"
|
|
33
|
-
done
|
|
34
|
-
|
|
35
|
-
- name: Update CHANGELOG.md
|
|
36
|
-
if: ${{ steps.release.outputs.release_created }}
|
|
37
|
-
run: |
|
|
38
|
-
version="${{ steps.release.outputs.version }}"
|
|
39
|
-
date=$(date +"%Y-%m-%d")
|
|
40
|
-
echo -e "# Changelog\n\n## [${version}] - ${date}\n\n${{ steps.release.outputs.changelog }}\n\n$(cat CHANGELOG.md)" > CHANGELOG.md
|
|
41
|
-
|
|
42
|
-
- name: Commit changes
|
|
43
|
-
if: ${{ steps.release.outputs.release_created }}
|
|
44
|
-
run: |
|
|
45
|
-
git config --local user.email "action@github.com"
|
|
46
|
-
git config --local user.name "GitHub Action"
|
|
47
|
-
git add .
|
|
48
|
-
git commit -m "chore: update versions and CHANGELOG for ${{ steps.release.outputs.version }}" || echo "No changes to commit"
|
|
49
|
-
git push
|
|
50
|
-
|
|
51
|
-
- name: Create Release
|
|
52
|
-
if: ${{ steps.release.outputs.release_created }}
|
|
53
|
-
uses: actions/create-release@v1
|
|
54
|
-
env:
|
|
55
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
56
|
-
with:
|
|
57
|
-
tag_name: ${{ steps.release.outputs.tag_name }}
|
|
58
|
-
release_name: Release ${{ steps.release.outputs.version }}
|
|
59
|
-
body: ${{ steps.release.outputs.changelog }}
|
|
60
|
-
draft: false
|
|
61
|
-
prerelease: false
|
|
14
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,152 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [4.30.0](https://github.com/dexteel/mesf-core-frontend/compare/mesf-core-v4.29.0...mesf-core-v4.30.0) (2025-10-17)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **account-page:** Refactor account page, using MaterialUI ([#384](https://github.com/dexteel/mesf-core-frontend/issues/384)) ([16e00f5](https://github.com/dexteel/mesf-core-frontend/commit/16e00f5a73087e1df80b60721b51c1232a427f38))
|
|
9
|
+
* add new button to navigate to current date ([5660460](https://github.com/dexteel/mesf-core-frontend/commit/5660460e46802091f2095c1f079801a46da21aa4))
|
|
10
|
+
* add new button to navigate to current date ([b4e8577](https://github.com/dexteel/mesf-core-frontend/commit/b4e8577f3a463291551f3b57db5e20437e18f993))
|
|
11
|
+
* **AG Grid:** Upgrade AG Grid to 30 ([b5c1255](https://github.com/dexteel/mesf-core-frontend/commit/b5c1255f715768b0c80a013e2d1485096505f7d8))
|
|
12
|
+
* **API Service:** Show method and params in URL ([92424d7](https://github.com/dexteel/mesf-core-frontend/commit/92424d7c86ca4e99f4dc71ed06f4de2d72f8fed0))
|
|
13
|
+
* **API Service:** Show method and params in URL ([13b3529](https://github.com/dexteel/mesf-core-frontend/commit/13b3529fa6fa82533c2ae4b34469c115422492e3))
|
|
14
|
+
* **Config:** Add Settings CRUD ([b44223d](https://github.com/dexteel/mesf-core-frontend/commit/b44223d34bb1223601ebceb8b369ee33eeee9239))
|
|
15
|
+
* **Config:** Add Settings CRUD ([cba320a](https://github.com/dexteel/mesf-core-frontend/commit/cba320a65892cc30ac6b16d7261456b2476c8110))
|
|
16
|
+
* **ContextMenu:** Implement one ContextMenu for whole project ([b96ce77](https://github.com/dexteel/mesf-core-frontend/commit/b96ce77a6bebac3bb7531d464bbf42145b3330b7))
|
|
17
|
+
* **devops:** Add changelog to google message ([eec9420](https://github.com/dexteel/mesf-core-frontend/commit/eec9420c7fe096c1801a32315f06b85d705b303d))
|
|
18
|
+
* **devops:** Add changelog to google message ([bff368b](https://github.com/dexteel/mesf-core-frontend/commit/bff368b6da69c79c31e389b0e5185cef32598034))
|
|
19
|
+
* **devops:** add version to message to google chat ([7490ae1](https://github.com/dexteel/mesf-core-frontend/commit/7490ae12bb70c4385f3660de2101fd758c755f25))
|
|
20
|
+
* **devops:** auto change package.json after release ([ad69516](https://github.com/dexteel/mesf-core-frontend/commit/ad695164dcd91335169d98644b99b2482687b4c6))
|
|
21
|
+
* **devops:** Implement husky and biome ([470833d](https://github.com/dexteel/mesf-core-frontend/commit/470833d6825df4fb1f5c902ac5216336ea25f711))
|
|
22
|
+
* **DialogFilter:** Add IsSelectable to TreeNode | Add treeLabelUnselectable classname ([5f82ea3](https://github.com/dexteel/mesf-core-frontend/commit/5f82ea3147f25a6dd1b7ed836bf84afa9422f2bd))
|
|
23
|
+
* Implement TimeService and timezone from server ([8861ab6](https://github.com/dexteel/mesf-core-frontend/commit/8861ab619c10426e85b4671819bfb74b303a4f8f))
|
|
24
|
+
* **jobs:** Go to master-details | Modified columns ([831379d](https://github.com/dexteel/mesf-core-frontend/commit/831379d88fe583f0a47decca1d0e213037787ae2))
|
|
25
|
+
* **RealTime:** add Client and Config components for RealTime ([93fca5d](https://github.com/dexteel/mesf-core-frontend/commit/93fca5dfc74b217f31c9c98653a39a529446b7c0))
|
|
26
|
+
* **Realtime:** add useMesfRealtime hook ([974b52b](https://github.com/dexteel/mesf-core-frontend/commit/974b52b7f0e73784ab5bb3a18a623f893359ad8b))
|
|
27
|
+
* **settings:** Add SearchBar as quick filter ([951384d](https://github.com/dexteel/mesf-core-frontend/commit/951384d018829434febb6b6c310910682675970e))
|
|
28
|
+
* **settings:** Add SearchBar as quick filter ([8660d62](https://github.com/dexteel/mesf-core-frontend/commit/8660d62fd51b60a3ecf901b167649e74a1905ac5))
|
|
29
|
+
* **Shift Navigator:** Add shift navigator to mesf core ([62706ba](https://github.com/dexteel/mesf-core-frontend/commit/62706ba0ef16ae112f7190cb5f9199549858e776))
|
|
30
|
+
* **Shift Navigator:** Add shift navigator to mesf core ([ead49a0](https://github.com/dexteel/mesf-core-frontend/commit/ead49a03fa2cd16bf823fde00a4355c8987a02ea))
|
|
31
|
+
* **Shift Navigator:** Return shift in methods of hook ([949f1e2](https://github.com/dexteel/mesf-core-frontend/commit/949f1e2aa9a91b2b6dd1e39ac7e065c2305a939d))
|
|
32
|
+
* **Shift Navigator:** Return shift in methods of hook ([52aece5](https://github.com/dexteel/mesf-core-frontend/commit/52aece5e9c9ad67e7cdf078792aa1024af1861a4))
|
|
33
|
+
* **ShiftNavigator v2:** Add Shift and Period Navigator ([e6247a4](https://github.com/dexteel/mesf-core-frontend/commit/e6247a467b035b04dfb3774831d3d0fcd7ef399d))
|
|
34
|
+
* **ShiftNavigator:** Add ability to prevent init automatically to Sh… ([3058513](https://github.com/dexteel/mesf-core-frontend/commit/3058513a5b81a67c9b1d1204a7d296d92a4c93c2))
|
|
35
|
+
* **ShiftNavigator:** Add ability to prevent init automatically to ShiftNavigator ([4397857](https://github.com/dexteel/mesf-core-frontend/commit/43978570dc3132b6dab538a1b63d415579596538))
|
|
36
|
+
* **ShiftNavigator:** Listen now datetime to show next shifts ([b279ff7](https://github.com/dexteel/mesf-core-frontend/commit/b279ff7d01aa5f8e3e69d973e60602940b69f7ec))
|
|
37
|
+
* **ShiftNavigatorV2:** Add configurable properties to enhance component flexibility ([e1d7f45](https://github.com/dexteel/mesf-core-frontend/commit/e1d7f45442aab9c3b9c8ef94fa2ad806eaaef40c))
|
|
38
|
+
* **ShiftNavigatorV2:** Add configurable properties to enhance component flexibility ([24e90d4](https://github.com/dexteel/mesf-core-frontend/commit/24e90d4dfc32098a19fec8f4249fc147f7bc8fc6))
|
|
39
|
+
* **Time Zones:** expose timezone from TimeService ([a3ca37c](https://github.com/dexteel/mesf-core-frontend/commit/a3ca37c12f7cadf5357de9eeba30caa59d6071a4))
|
|
40
|
+
* **TimeService:** add moment instance to mesf ([5706068](https://github.com/dexteel/mesf-core-frontend/commit/57060681fc237b8babdc6f532d45e05bfdbe4029))
|
|
41
|
+
* **TimeService:** add moment instance to mesf ([11bff49](https://github.com/dexteel/mesf-core-frontend/commit/11bff49a59ba714fa3d6a7541203df549122d6be))
|
|
42
|
+
* **tree-picker-control-v2:** Show full path of node selected ([#373](https://github.com/dexteel/mesf-core-frontend/issues/373)) ([8ca434b](https://github.com/dexteel/mesf-core-frontend/commit/8ca434b29d1d41c1d2aed6087a52cc999f4e7452))
|
|
43
|
+
* **TreePickerControl:** Add ability to display asset/drawings relationship and enable the selection of multiple nodes ([1cec643](https://github.com/dexteel/mesf-core-frontend/commit/1cec643d17959cd776691c927738dbe2d8023b83))
|
|
44
|
+
* **TreePickerControlV2:** Implement TreePickerControl with value-OnS… ([ffbb6b5](https://github.com/dexteel/mesf-core-frontend/commit/ffbb6b56e41d5b5fc976519197c82609e560d3ee))
|
|
45
|
+
* **TreePickerControlV2:** Implement TreePickerControl with value-OnSelect paradigm. ([8f488a3](https://github.com/dexteel/mesf-core-frontend/commit/8f488a3be4ec8e7edcc8f6b0e8fd11610fd57513))
|
|
46
|
+
* Use Shift Navigator ([a24b84e](https://github.com/dexteel/mesf-core-frontend/commit/a24b84ee97a9e2f7e2507b276891dc599880080e))
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
### Bug Fixes
|
|
50
|
+
|
|
51
|
+
* **API Service:** truncate content of query param if needed ([caba7b4](https://github.com/dexteel/mesf-core-frontend/commit/caba7b40c605805693760219ac2c6e683785dda4))
|
|
52
|
+
* **API Service:** use axiosInstance inside callV2 method ([9647d1d](https://github.com/dexteel/mesf-core-frontend/commit/9647d1d22c7a8fbf7abc4b728c43ce9c35e6c8d3))
|
|
53
|
+
* **Assets Tree:** Fix bug when assets have parent assets with IsActive as false ([b27651e](https://github.com/dexteel/mesf-core-frontend/commit/b27651e6b6777b140fd0b0738408bfcc3fc42f14))
|
|
54
|
+
* **Assets:** Remove unused comment ([075eb98](https://github.com/dexteel/mesf-core-frontend/commit/075eb988af4aaae69e253df832b21a8d4787cb34))
|
|
55
|
+
* **Assets:** Remove unused comment ([f6b6aea](https://github.com/dexteel/mesf-core-frontend/commit/f6b6aea2c65ae21274be9b5853eda995523c82f0))
|
|
56
|
+
* **Axios:** Show error message correctly ([8a6ed86](https://github.com/dexteel/mesf-core-frontend/commit/8a6ed86c8139a551664064aff706dbf004a871d2))
|
|
57
|
+
* **catalogs-cruds:** Modified contextMenu with white background | Centered text vertically & horizontally in each row | Modified the fontSize of the headers | Modified errorModals | Used MesfModal instead of Modal | Added OptionsFunctions to each one ([32da8a7](https://github.com/dexteel/mesf-core-frontend/commit/32da8a70bac696db162935a188f267e28e2d05f5))
|
|
58
|
+
* **catalogs-cruds:** mr/296-catalogs-enhancements ([f3068c9](https://github.com/dexteel/mesf-core-frontend/commit/f3068c953a9e57d1134e42a76870b92f079f4ba7))
|
|
59
|
+
* **catalogs-minor-changes:** Modified new profile button | Modified parameter of setProfileId in useProfilesOptions ([9bbbda4](https://github.com/dexteel/mesf-core-frontend/commit/9bbbda456d6521cb3e3f8c66bcc5b0c86be748c4))
|
|
60
|
+
* **Config Logs:** Improve styles and performance ([3b64a20](https://github.com/dexteel/mesf-core-frontend/commit/3b64a2046dbedf68a5417ce39f27da0d7fb29650))
|
|
61
|
+
* **Config Logs:** Improve styles and performance ([b73b522](https://github.com/dexteel/mesf-core-frontend/commit/b73b522c65d763b2223eccf48c4403864ae3e660))
|
|
62
|
+
* **Config Pages:** Implement new ContextMenuMESF ([0e8cb01](https://github.com/dexteel/mesf-core-frontend/commit/0e8cb01a37d4f7cca9283243dc406d4718b775c2))
|
|
63
|
+
* **Config Users & Profiles:** show context menu on click options button ([#321](https://github.com/dexteel/mesf-core-frontend/issues/321)) ([bd3b3fb](https://github.com/dexteel/mesf-core-frontend/commit/bd3b3fbcf0c673923d2034174d587c729a919ce7))
|
|
64
|
+
* **ContextMenu:** Add zIndex=1 to differentiate it from MUI Inputs ([5aa158a](https://github.com/dexteel/mesf-core-frontend/commit/5aa158a015ba40086f62e83b4074b957fc049b3d))
|
|
65
|
+
* **development:** fix modal typings (enterhintkey) ([c1eaea8](https://github.com/dexteel/mesf-core-frontend/commit/c1eaea8cd7cafe3c5c9b32244d58e9c7c69c1d51))
|
|
66
|
+
* **development:** Fix typings for MesfModal (enterkeyhint) ([a8f2938](https://github.com/dexteel/mesf-core-frontend/commit/a8f293810a29a92562a3f28087359c2fefc3a26e))
|
|
67
|
+
* **devops:** change from main to master in gh actions ([b18a129](https://github.com/dexteel/mesf-core-frontend/commit/b18a129373d17e527ce0e691f895571f7d1f1ecc))
|
|
68
|
+
* **devops:** change from main to master in gh actions ([5d58452](https://github.com/dexteel/mesf-core-frontend/commit/5d584522a2902d04be1784896abcb88bd4f8a2df))
|
|
69
|
+
* **devops:** Fix dependencies install in GH ([48cd838](https://github.com/dexteel/mesf-core-frontend/commit/48cd8385fc0edaa53ac64873ad1a2b91f5425da5))
|
|
70
|
+
* **devops:** Fix dependencies install in GH ([92c21af](https://github.com/dexteel/mesf-core-frontend/commit/92c21af53c55f24f97996b10594f27a35826a2ee))
|
|
71
|
+
* **devops:** fix react17 typings resolutions ([9b8b63a](https://github.com/dexteel/mesf-core-frontend/commit/9b8b63abe6b1d36b50ed72f7a619f4046e33b8e4))
|
|
72
|
+
* **devops:** fix react17 typings resolutions ([b9424eb](https://github.com/dexteel/mesf-core-frontend/commit/b9424eb53494bbb67f8eb6a378c5ee45a24662d9))
|
|
73
|
+
* **devops:** fix wrong release-please ([6a1c655](https://github.com/dexteel/mesf-core-frontend/commit/6a1c6557d9f7b5b46d2efbbaf866e283b454c0c7))
|
|
74
|
+
* **devops:** force resolutions to react 17 ([398776f](https://github.com/dexteel/mesf-core-frontend/commit/398776fc717c9908abf8eebc5e6462093944f1aa))
|
|
75
|
+
* **devops:** force resolutions to react 17 ([9389a8b](https://github.com/dexteel/mesf-core-frontend/commit/9389a8b5e88bbf89fb0c7163abfb6d00af522eba))
|
|
76
|
+
* **devops:** Remove tsc package in favor of typescript cli ([4b5f7bc](https://github.com/dexteel/mesf-core-frontend/commit/4b5f7bceaecbd1d57408f3e24034e6967a2a8727))
|
|
77
|
+
* **devops:** remove unnecesary error from release-please file ([6311765](https://github.com/dexteel/mesf-core-frontend/commit/6311765439b15d53df813a232ac165c20ef3ba3b))
|
|
78
|
+
* **Error Modal:** fix error message when using callV2 ([674f25e](https://github.com/dexteel/mesf-core-frontend/commit/674f25eb02bcfa83bac0788269388295248a7d77))
|
|
79
|
+
* **Error Modal:** fix error message when using callV2 ([399bf3e](https://github.com/dexteel/mesf-core-frontend/commit/399bf3e15443b77a5f220d38f50702fd3d0e2f40))
|
|
80
|
+
* fire action in gh ([7037f2b](https://github.com/dexteel/mesf-core-frontend/commit/7037f2b9beeb9e3b58fede26fea7da6aa4af3351))
|
|
81
|
+
* fire action in gh ([8af76ad](https://github.com/dexteel/mesf-core-frontend/commit/8af76adee23e4572cdfd5fe1d606afe2667bcd20))
|
|
82
|
+
* getIhPath ([0afb5e6](https://github.com/dexteel/mesf-core-frontend/commit/0afb5e6fd9df71cb8e1de43c1c08bb610cefe3ff))
|
|
83
|
+
* **Header - Settings:** change Gear Icon from FontAwesome to Mui Icons ([5176f87](https://github.com/dexteel/mesf-core-frontend/commit/5176f87955006adf6f64473f71e5b6919c5aa4c3))
|
|
84
|
+
* **Jobs Settings:** refactor tables and actions ([a379ff5](https://github.com/dexteel/mesf-core-frontend/commit/a379ff5e8928e0fda6df9dcad37341ab2421ffd6))
|
|
85
|
+
* **minor-changes:** Resolved changes requested ([e1c885f](https://github.com/dexteel/mesf-core-frontend/commit/e1c885f561cf932b37374ec4d3e118dca01f84c8))
|
|
86
|
+
* **RealTime:** expose signalR from mesf-core ([584f37c](https://github.com/dexteel/mesf-core-frontend/commit/584f37ce60c649241c2e4ed0a00c35cc19ffbe6b))
|
|
87
|
+
* **refactor:** add typings to MESFMain props ([fa0cc67](https://github.com/dexteel/mesf-core-frontend/commit/fa0cc67d72e254755e42391c5d011384d5eaa5c3))
|
|
88
|
+
* **Router:** fix Routes ([33e95f0](https://github.com/dexteel/mesf-core-frontend/commit/33e95f08b719f73ee0385dbf2c82829276e7aa06))
|
|
89
|
+
* **SelectorControl:** Improve styles for selector control using only mui v4 ([59f0091](https://github.com/dexteel/mesf-core-frontend/commit/59f0091af05faba0f58a594ee361f673fd26aa0d))
|
|
90
|
+
* **SelectorsssControl:** Improve styles for selector control using only mui v4 ([cd09ecc](https://github.com/dexteel/mesf-core-frontend/commit/cd09ecc117c678d839f508eefbba90b6e1cb7120))
|
|
91
|
+
* **Shift Navigator:** use router optionally ([f851e10](https://github.com/dexteel/mesf-core-frontend/commit/f851e10329b6f0b1ae4c80c0fbb8290b070e640b))
|
|
92
|
+
* **Shift Navigator:** use router optionally ([395ed7d](https://github.com/dexteel/mesf-core-frontend/commit/395ed7d93188c3794679df0d55a81e85d3798b50))
|
|
93
|
+
* **Shift Period Navigator:** Use cssGrid instead of Flexbox to improve responsiveness ([f90e120](https://github.com/dexteel/mesf-core-frontend/commit/f90e120c140e15209c976963ae62aa56636fa789))
|
|
94
|
+
* **Shift Period Navigator:** Use cssGrid instead of Flexbox to improve responsiveness ([b645194](https://github.com/dexteel/mesf-core-frontend/commit/b6451942fddeb3f25d4dc01bf48224a3c6ee5c22))
|
|
95
|
+
* **shift-navigator-control:** Use TextField as slot ([e8a0424](https://github.com/dexteel/mesf-core-frontend/commit/e8a0424db67cc2cd43adb054888adcb8c982e84b))
|
|
96
|
+
* **ShiftNavigator:** Check every minute if need to reload ([b404f9b](https://github.com/dexteel/mesf-core-frontend/commit/b404f9bc7231d76bcdc3c9edbf79351f3f07a9b9))
|
|
97
|
+
* **ShiftNavigator:** Handle when no shifts are available ([c18318f](https://github.com/dexteel/mesf-core-frontend/commit/c18318ff35610d4cb5107e608ac11cc0e2c394f3))
|
|
98
|
+
* **ShiftNavigator:** Handle when no shifts are available ([8c18afc](https://github.com/dexteel/mesf-core-frontend/commit/8c18afcb3259d132cb29670e8aac560d5024f2b8))
|
|
99
|
+
* **ShiftNavigator:** Prohibit future dates. Disable Last Shift button when needed. ([2674206](https://github.com/dexteel/mesf-core-frontend/commit/267420648d95275ec79c3171d466f683cb0c7d61))
|
|
100
|
+
* **ShiftNavigator:** Prohibit future dates. Disable Last Shift button… ([7ddbf77](https://github.com/dexteel/mesf-core-frontend/commit/7ddbf77059f6bd15d7bf56084d97b5bddb339fb9))
|
|
101
|
+
* **ShiftNavigator:** Show current date correctly ([ce921c4](https://github.com/dexteel/mesf-core-frontend/commit/ce921c4ce7165f2c8424bfaef382feae45cd4088))
|
|
102
|
+
* **ShiftNavigator:** Show current date correctly ([289ca45](https://github.com/dexteel/mesf-core-frontend/commit/289ca45143f76544bbc26289f3cd0be0b82d6c1d))
|
|
103
|
+
* **ShiftNavigatorV2:** fix date picker ([03caca9](https://github.com/dexteel/mesf-core-frontend/commit/03caca9657ab6e7a0d63c98f93e8f6a49c547e9d))
|
|
104
|
+
* **ShiftNavigatorV2:** fix width ([d2c2d42](https://github.com/dexteel/mesf-core-frontend/commit/d2c2d42ff91a3a8006628cf77645d8d184f46aa3))
|
|
105
|
+
* **ShiftNavigatorV2:** minor style change in period selector ([ff847a1](https://github.com/dexteel/mesf-core-frontend/commit/ff847a138d35e03ece52fe018fb49887432b80d1))
|
|
106
|
+
* **TableSettings:** change loadingOverlayComponent to a function ([291610f](https://github.com/dexteel/mesf-core-frontend/commit/291610fded915faa44584495a500e789bc66b90a))
|
|
107
|
+
* **TableSettings:** change loadingOverlayComponent to a function ([f1c5baa](https://github.com/dexteel/mesf-core-frontend/commit/f1c5baaf0c8439ef4140f91f0c48104037dcb39f))
|
|
108
|
+
* **TimeService:** Add some try catches and handle utc datetime strings ([b073cd1](https://github.com/dexteel/mesf-core-frontend/commit/b073cd1e1fc3dcceed7a2155ab1a33e21e962805))
|
|
109
|
+
* **tree picker control:** change title in button and fix expand nodes, and other minor fix ([eafd8fc](https://github.com/dexteel/mesf-core-frontend/commit/eafd8fcb42db11bfb717618604af612223dbeea0))
|
|
110
|
+
* **tree-picker-control-v2:** Fix input style ([a71dfe7](https://github.com/dexteel/mesf-core-frontend/commit/a71dfe790365863c36b4a5aa10e97b4c14d63f35))
|
|
111
|
+
* **tree-picker-control-v2:** Fix input style ([7cc68b9](https://github.com/dexteel/mesf-core-frontend/commit/7cc68b98510397d973fd8b8f949688caab4557e0))
|
|
112
|
+
* **tree-picker-control-v2:** Fix padding and size of clearButton ([eb18866](https://github.com/dexteel/mesf-core-frontend/commit/eb18866ca5ed93e6406677bbf35078a1cfe4d2b6))
|
|
113
|
+
* **TreePickerControl:** control modal visibility with showAssetTree prop ([e66d710](https://github.com/dexteel/mesf-core-frontend/commit/e66d710e49e8845cddb8a47a10f08c5ee632e291))
|
|
114
|
+
* **TreePickerControlV2:** add ? operator in findNameById function ([4d5baa5](https://github.com/dexteel/mesf-core-frontend/commit/4d5baa5f5822228c579563d926974cc07c5ca54b))
|
|
115
|
+
* **TreePickerControlV2:** add ? operator in findNameById function ([dafa520](https://github.com/dexteel/mesf-core-frontend/commit/dafa520fefbb498bb3f4f2d9761f9df22652afc6))
|
|
116
|
+
* **TreePickerControlV2:** add disabled property ([97ba648](https://github.com/dexteel/mesf-core-frontend/commit/97ba648d02d11455855091e409c9c1dc6792da1b))
|
|
117
|
+
* **TreePickerControlV2:** add disabled property ([95b14dc](https://github.com/dexteel/mesf-core-frontend/commit/95b14dc13f812449dc936e117417e1edfe7523d8))
|
|
118
|
+
* **TreeView:** donwgrade @minoru/react-dnd-treeview from version 3.5.0 to 3.4.4 ([33de610](https://github.com/dexteel/mesf-core-frontend/commit/33de610cb020504619b1205861d5ad58975f1e26))
|
|
119
|
+
* **Trending:** Inputs of table fixed. Debounce added to inputs. Scales now allow negative numbers ([3723a06](https://github.com/dexteel/mesf-core-frontend/commit/3723a0665aa2895a7a53cc8fad34846ad2bdf3a2))
|
|
120
|
+
* **Trending:** Inputs of table fixed. Debounce added to inputs. Scales now allow negative numbers ([5eb394e](https://github.com/dexteel/mesf-core-frontend/commit/5eb394e903b51502ee2ce90f738a6ec5b8a081e3))
|
|
121
|
+
* **trending:** Load view bug when you add and remove a view tag ([eb8a155](https://github.com/dexteel/mesf-core-frontend/commit/eb8a1553cad19fa9be106716f8958728fc1507dc))
|
|
122
|
+
* **trending:** Load view bug when you add and remove a view tag ([0b3eb95](https://github.com/dexteel/mesf-core-frontend/commit/0b3eb952e006f8ea5942bb0aa17d0913f75c0ff8))
|
|
123
|
+
* **Typescript:** Fix typescript dependencies ([6575243](https://github.com/dexteel/mesf-core-frontend/commit/6575243ba7b8feb729eaff16cd3969a4d7a59e94))
|
|
124
|
+
* **Typescript:** Fix typescript dependencies ([66ea26e](https://github.com/dexteel/mesf-core-frontend/commit/66ea26e90fc469d97e9139cea32aceaee6f5e713))
|
|
125
|
+
* **typings:** Fix DialogActions typings (enterhintkey) ([241b17a](https://github.com/dexteel/mesf-core-frontend/commit/241b17a97d4409bacf95dc8eefde320539779377))
|
|
126
|
+
* wrong imports ([ab36b9f](https://github.com/dexteel/mesf-core-frontend/commit/ab36b9fbd6320888862e16de786aa793a36a637f))
|
|
127
|
+
|
|
128
|
+
## [4.29.0] - 2025-05-08
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
# Changelog
|
|
133
|
+
|
|
134
|
+
## [4.29.0](https://github.com/dexteel/mesf-core-frontend/compare/@dexteel/mesf-core-v4.28.0...@dexteel/mesf-core-v4.29.0) (2025-05-08)
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
### Features
|
|
138
|
+
|
|
139
|
+
* **account-page:** Refactor account page, using MaterialUI ([#384](https://github.com/dexteel/mesf-core-frontend/issues/384)) ([16e00f5](https://github.com/dexteel/mesf-core-frontend/commit/16e00f5a73087e1df80b60721b51c1232a427f38))
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
### Bug Fixes
|
|
143
|
+
|
|
144
|
+
* **devops:** Remove tsc package in favor of typescript cli ([4b5f7bc](https://github.com/dexteel/mesf-core-frontend/commit/4b5f7bceaecbd1d57408f3e24034e6967a2a8727))
|
|
145
|
+
|
|
146
|
+
## [4.28.0] - 2025-04-16
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
1
150
|
# Changelog
|
|
2
151
|
|
|
3
152
|
## [4.28.0](https://github.com/dexteel/mesf-core-frontend/compare/@dexteel/mesf-core-v4.27.0...@dexteel/mesf-core-v4.28.0) (2025-04-16)
|
package/CLAUDE.md
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
|
|
7
|
+
`@dexteel/mesf-core` is a React component library for Dexteel's Manufacturing Execution System Frontend (MESF). It provides reusable UI components, authentication, configuration pages, and utilities for building manufacturing execution system applications.
|
|
8
|
+
|
|
9
|
+
**Key Technologies:**
|
|
10
|
+
- React 17 with TypeScript
|
|
11
|
+
- Material-UI v4
|
|
12
|
+
- Rollup for building ES modules
|
|
13
|
+
- AG Grid for data tables
|
|
14
|
+
- SignalR for real-time communication
|
|
15
|
+
- Axios for HTTP requests with token refresh interceptors
|
|
16
|
+
- Moment.js with timezone support
|
|
17
|
+
|
|
18
|
+
## Build and Development Commands
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
# Install dependencies (Node v18.20.3 required - see .nvmrc)
|
|
22
|
+
npm install
|
|
23
|
+
|
|
24
|
+
# Build the library (cleans dist/ and bundles with Rollup)
|
|
25
|
+
npm run build
|
|
26
|
+
|
|
27
|
+
# Watch mode for development
|
|
28
|
+
npm run watch
|
|
29
|
+
# or
|
|
30
|
+
npm start
|
|
31
|
+
|
|
32
|
+
# Format and organize imports with Biome
|
|
33
|
+
npx @biomejs/biome check --write ./src
|
|
34
|
+
|
|
35
|
+
# Prepare for publishing (runs rimraf and build)
|
|
36
|
+
npm run prepublishOnly
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
**Note:** This is a library project that gets published to npm, not a standalone application. There is no test command configured.
|
|
40
|
+
|
|
41
|
+
## Code Architecture
|
|
42
|
+
|
|
43
|
+
### Entry Point and Exports
|
|
44
|
+
|
|
45
|
+
`src/index.ts` is the main entry point that exports all public APIs. The library follows a modular structure with barrel exports from each domain:
|
|
46
|
+
- Account/Authentication
|
|
47
|
+
- Configuration pages (users, jobs, logs, profiles, assets, shift crews, settings, realtime)
|
|
48
|
+
- Controls (tables, filters, charts, shift navigators, context menus)
|
|
49
|
+
- Services (API calls, time/timezone handling)
|
|
50
|
+
- Utils and hooks
|
|
51
|
+
|
|
52
|
+
### Core Architecture Components
|
|
53
|
+
|
|
54
|
+
**MESFMain Component** (`src/MESFMain.tsx`)
|
|
55
|
+
The root component that sets up the application with multiple context providers in this order:
|
|
56
|
+
1. `AuthProvider` - Authentication/authorization
|
|
57
|
+
2. `LocalizationProvider` - Date/time localization with moment.js
|
|
58
|
+
3. `UserProvider` - User context
|
|
59
|
+
4. `AssetProvider` - Asset/equipment context
|
|
60
|
+
5. `UTLSettingsProvider` - UTL settings
|
|
61
|
+
6. `RouterContext`, `NavbarContext`, `ConfigurationContext` - Application routing/navigation
|
|
62
|
+
7. `ShiftNavigatorProvider` - Shift navigation
|
|
63
|
+
8. `ContextMenuMESFProvider` - Context menu functionality
|
|
64
|
+
9. `Router` - React Router v6 with dynamic basename from `<base>` tag
|
|
65
|
+
|
|
66
|
+
**Authentication System** (`src/account/`)
|
|
67
|
+
Supports multiple authentication methods:
|
|
68
|
+
- Username/password authentication
|
|
69
|
+
- Azure AD authentication
|
|
70
|
+
- Windows authentication
|
|
71
|
+
- Token-based auth with refresh tokens stored in localStorage
|
|
72
|
+
|
|
73
|
+
**API Service** (`src/services/ApiService.ts`)
|
|
74
|
+
The `MESApiService` class provides methods for calling backend stored procedures:
|
|
75
|
+
- `call()` - Execute stored procedures (legacy, uses fetch)
|
|
76
|
+
- `callV2()` - Execute stored procedures (new, uses axios with interceptors)
|
|
77
|
+
- `callJSON()` - Execute procedures returning JSON
|
|
78
|
+
- `import()` - Import files with procedure execution
|
|
79
|
+
- `export()` / `exportExcel()` - Export data to Excel with custom structure
|
|
80
|
+
- `uploadFiles()` - Upload files to server
|
|
81
|
+
|
|
82
|
+
All methods use the `Configuration` class to determine API URLs based on the `<base>` tag.
|
|
83
|
+
|
|
84
|
+
**Axios Instance with Token Refresh** (`src/context/axiosInstance.ts`)
|
|
85
|
+
Configured axios instance with interceptors that:
|
|
86
|
+
- Automatically adds Bearer token from localStorage
|
|
87
|
+
- Intercepts 499/401 errors and attempts token refresh
|
|
88
|
+
- Retries failed requests with new token
|
|
89
|
+
- Redirects to logout on refresh failure
|
|
90
|
+
|
|
91
|
+
**Time Service** (`src/services/TimeService.ts`)
|
|
92
|
+
Singleton service for timezone handling:
|
|
93
|
+
- Converts Windows timezone identifiers to IANA format
|
|
94
|
+
- Provides `toUTC()` and `toLocalServerTime()` formatters
|
|
95
|
+
- Sets default timezone for moment.js across the application
|
|
96
|
+
|
|
97
|
+
### Configuration Pages
|
|
98
|
+
|
|
99
|
+
Each configuration page module in `src/configuration/pages/` exports:
|
|
100
|
+
- React components for viewing/editing
|
|
101
|
+
- AG Grid column definitions
|
|
102
|
+
- Formatters and style getters for data display
|
|
103
|
+
- TypeScript models/interfaces
|
|
104
|
+
- Repository classes for data access
|
|
105
|
+
|
|
106
|
+
Configuration modules: asset, job, log, profiles, shifCrew, users, settings, realtime
|
|
107
|
+
|
|
108
|
+
### Controls and Reusable Components
|
|
109
|
+
|
|
110
|
+
`src/controls/` contains reusable UI controls:
|
|
111
|
+
- **GenericTable** - AG Grid wrapper with common functionality
|
|
112
|
+
- **Filters** - Filter components (date ranges, dropdowns, etc.)
|
|
113
|
+
- **Charts** - Chart.js wrappers for time-series and bar charts
|
|
114
|
+
- **ShiftNavigator** - Navigation between production shifts (v1 and v2)
|
|
115
|
+
- **ContextMenu** - Right-click context menu functionality
|
|
116
|
+
- **Panels** - Collapsible panel components
|
|
117
|
+
|
|
118
|
+
### Hooks
|
|
119
|
+
|
|
120
|
+
`src/hooks/`:
|
|
121
|
+
- `useMesfRealtime` - SignalR WebSocket connection for real-time updates
|
|
122
|
+
- `useSearchAssets` - Asset search functionality
|
|
123
|
+
- `useSearchUTLSetting` - UTL setting search
|
|
124
|
+
|
|
125
|
+
## Important Patterns
|
|
126
|
+
|
|
127
|
+
### Base URL Handling
|
|
128
|
+
|
|
129
|
+
The application supports deployment in subfolders. The base URL is read from the HTML `<base>` tag:
|
|
130
|
+
```typescript
|
|
131
|
+
const base = document.getElementsByTagName("base")[0].getAttribute("href") || "/";
|
|
132
|
+
```
|
|
133
|
+
This affects routing, API URLs, and redirects. See README.md for subfolder deployment instructions.
|
|
134
|
+
|
|
135
|
+
### API Configuration
|
|
136
|
+
|
|
137
|
+
The `Configuration` class builds API URLs dynamically:
|
|
138
|
+
```typescript
|
|
139
|
+
public API_PROCEDURE_URL = document.getElementsByTagName("base")[0].href + "backend";
|
|
140
|
+
public API_AUTH_URL = document.getElementsByTagName("base")[0].href + "authentication";
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Date Formatting with Stored Procedures
|
|
144
|
+
|
|
145
|
+
When calling stored procedures, dates are formatted as `YYYY-MM-DDTHH:mm:ss` by overriding `Date.prototype.toJSON`:
|
|
146
|
+
```typescript
|
|
147
|
+
Date.prototype.toJSON = function () {
|
|
148
|
+
return moment(this).format("YYYY-MM-DDTHH:mm:ss");
|
|
149
|
+
};
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Error Handling
|
|
153
|
+
|
|
154
|
+
Custom `FetchError` class is used throughout for consistent error handling. The `getError` utility extracts user-friendly error messages from various error formats.
|
|
155
|
+
|
|
156
|
+
## Git Workflow
|
|
157
|
+
|
|
158
|
+
- Main branch: `master`
|
|
159
|
+
- Uses Release Please for automated versioning and changelog generation
|
|
160
|
+
- Husky pre-commit hook runs Biome formatting on staged files
|
|
161
|
+
- Package is published to npm as `@dexteel/mesf-core`
|
|
162
|
+
|
|
163
|
+
## Typescript Configuration
|
|
164
|
+
|
|
165
|
+
- Strict mode enabled
|
|
166
|
+
- No unused variables/parameters checking disabled
|
|
167
|
+
- Declaration files generated in `dist/`
|
|
168
|
+
- Source maps enabled
|
|
169
|
+
- Module: ESNext, JSX: React
|
package/dist/MESFMain.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import React, { type ReactNode } from "react";
|
|
2
|
+
import { AuthConfig } from "./account";
|
|
2
3
|
import "./css/index.css";
|
|
3
4
|
import { ConfigurationsType } from "./configurationMenu";
|
|
4
5
|
interface Props {
|
|
5
|
-
authentication:
|
|
6
|
+
authentication: AuthConfig;
|
|
6
7
|
routes: ReactNode;
|
|
7
8
|
navbar: ReactNode;
|
|
8
9
|
navbarTitle?: string;
|