@dexteel/mesf-core 4.29.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.
@@ -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
- command: manifest
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 }}
@@ -1,3 +1,3 @@
1
1
  {
2
- ".": "4.29.0"
2
+ ".": "4.30.0"
3
3
  }
package/CHANGELOG.md CHANGED
@@ -1,3 +1,134 @@
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
+
1
132
  # Changelog
2
133
 
3
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)
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
@@ -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: any;
6
+ authentication: AuthConfig;
6
7
  routes: ReactNode;
7
8
  navbar: ReactNode;
8
9
  navbarTitle?: string;