@stoker-platform/web-app 0.5.32 → 0.5.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @stoker-platform/web-app
2
2
 
3
+ ## 0.5.34
4
+
5
+ ### Patch Changes
6
+
7
+ - 9bc227d: fix: ignore inaccesible collections in record sidebar
8
+
9
+ ## 0.5.33
10
+
11
+ ### Patch Changes
12
+
13
+ - feat: add filter default value option
14
+ - @stoker-platform/node-client@0.5.21
15
+ - @stoker-platform/utils@0.5.15
16
+ - @stoker-platform/web-client@0.5.16
17
+
3
18
  ## 0.5.32
4
19
 
5
20
  ### Patch Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stoker-platform/web-app",
3
- "version": "0.5.32",
3
+ "version": "0.5.34",
4
4
  "type": "module",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "scripts": {
@@ -51,9 +51,9 @@
51
51
  "@radix-ui/react-tooltip": "^1.2.8",
52
52
  "@react-google-maps/api": "^2.20.8",
53
53
  "@sentry/react": "^10.38.0",
54
- "@stoker-platform/node-client": "0.5.20",
55
- "@stoker-platform/utils": "0.5.14",
56
- "@stoker-platform/web-client": "0.5.15",
54
+ "@stoker-platform/node-client": "0.5.21",
55
+ "@stoker-platform/utils": "0.5.15",
56
+ "@stoker-platform/web-client": "0.5.16",
57
57
  "@tanstack/react-table": "^8.21.3",
58
58
  "@types/react": "18.3.13",
59
59
  "@types/react-dom": "18.3.1",
@@ -120,6 +120,8 @@ export interface Query {
120
120
  }[]
121
121
  }
122
122
 
123
+ const hasFirstPageLoaded: { [key: StokerCollection]: boolean } = {}
124
+
123
125
  function Collection({
124
126
  collection,
125
127
  formList,
@@ -822,24 +824,38 @@ function Collection({
822
824
 
823
825
  const filtersClone = cloneDeep(filters)
824
826
  const filtersState = state[`collection-filters-${labels.collection.toLowerCase()}`]
825
- if (!relationList && filtersState) {
826
- const filterValues = filtersState.split(",")
827
- filtersClone.forEach((filter: Filter) => {
828
- if (filter.type === "status" || filter.type === "range") {
829
- return
830
- }
831
- const filterValue = filterValues.find((value) => value.split("=")[0] === filter.field)
832
- if (filterValue) {
833
- const field = getField(fields, filter.field)
834
- if (field.type === "Number") {
835
- // eslint-disable-next-line security/detect-object-injection
836
- filter.value = Number(filterValue.split("=")[1])
837
- } else {
838
- // eslint-disable-next-line security/detect-object-injection
839
- filter.value = filterValue.split("=")[1]
827
+ if (!relationList) {
828
+ if (filtersState) {
829
+ const filterValues = filtersState.split(",")
830
+ filtersClone.forEach((filter: Filter) => {
831
+ if (filter.type === "status" || filter.type === "range") {
832
+ return
840
833
  }
841
- }
842
- })
834
+ const filterValue = filterValues.find((value) => value.split("=")[0] === filter.field)
835
+ if (filterValue) {
836
+ const field = getField(fields, filter.field)
837
+ if (field.type === "Number") {
838
+ // eslint-disable-next-line security/detect-object-injection
839
+ filter.value = Number(filterValue.split("=")[1])
840
+ } else {
841
+ // eslint-disable-next-line security/detect-object-injection
842
+ filter.value = filterValue.split("=")[1]
843
+ }
844
+ } else if (
845
+ filter.type === "select" &&
846
+ !hasFirstPageLoaded[labels.collection] &&
847
+ filter.defaultValue
848
+ ) {
849
+ filter.value = tryFunction(filter.defaultValue)
850
+ }
851
+ })
852
+ } else {
853
+ filtersClone.forEach((filter: Filter) => {
854
+ if (filter.type === "select" && !hasFirstPageLoaded[labels.collection] && filter.defaultValue) {
855
+ filter.value = tryFunction(filter.defaultValue)
856
+ }
857
+ })
858
+ }
843
859
  }
844
860
 
845
861
  if (statusField || softDelete) {
@@ -1022,6 +1038,7 @@ function Collection({
1022
1038
  setOrder({ field: recordTitleField, direction: "asc" })
1023
1039
  }
1024
1040
 
1041
+ hasFirstPageLoaded[labels.collection] = true
1025
1042
  setIsInitialized(true)
1026
1043
  }
1027
1044
 
@@ -43,6 +43,7 @@ export const RecordSidebar = ({
43
43
  if (collection.relationLists) {
44
44
  collection.relationLists.forEach(async (relationList) => {
45
45
  const relationCollection = schema.collections[relationList.collection]
46
+ if (!relationCollection) return
46
47
  const relationCustomization = getCollectionConfigModule(relationCollection.labels.collection)
47
48
  const titles = await tryPromise(relationCustomization.admin?.titles)
48
49
  const title = titles?.collection || relationList.collection