@stoker-platform/web-app 0.5.79 → 0.5.80
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 +8 -0
- package/package.json +1 -1
- package/src/Cards.tsx +8 -2
- package/src/Collection.tsx +1 -1
- package/src/Form.tsx +23 -13
package/CHANGELOG.md
CHANGED
package/package.json
CHANGED
package/src/Cards.tsx
CHANGED
|
@@ -218,7 +218,13 @@ function CardItem({ index, style, data }: CardItemProps) {
|
|
|
218
218
|
)}
|
|
219
219
|
onClick={() => goToRecord(collection, record)}
|
|
220
220
|
>
|
|
221
|
-
<div
|
|
221
|
+
<div
|
|
222
|
+
id={`${statusValue}-${record.id}-header`}
|
|
223
|
+
className={cn(
|
|
224
|
+
"grid gap-0.5 p-6",
|
|
225
|
+
((!isPending && !isDisabled && hasUpdateAccess) || isPending) && "pr-0",
|
|
226
|
+
)}
|
|
227
|
+
>
|
|
222
228
|
<button
|
|
223
229
|
className={cn(
|
|
224
230
|
titleClass,
|
|
@@ -255,7 +261,7 @@ function CardItem({ index, style, data }: CardItemProps) {
|
|
|
255
261
|
</div>
|
|
256
262
|
)
|
|
257
263
|
) : (
|
|
258
|
-
<div className="ml-auto relative bottom-1.5 p-6">
|
|
264
|
+
<div className="ml-auto relative bottom-1.5 p-6 pl-4">
|
|
259
265
|
<LoadingSpinner size={7} />
|
|
260
266
|
</div>
|
|
261
267
|
)}
|
package/src/Collection.tsx
CHANGED
|
@@ -424,7 +424,7 @@ function Collection({
|
|
|
424
424
|
const getKeysLength = useCallback(() => {
|
|
425
425
|
let length = 1
|
|
426
426
|
if (tab === "cards") {
|
|
427
|
-
length = statusValues.current?.length || 1
|
|
427
|
+
length = (statusValues.current?.length || 1) - (cardsConfig?.excludeValues?.length || 0)
|
|
428
428
|
if (!isPreloadCacheEnabled && !isServerReadOnly) {
|
|
429
429
|
length++
|
|
430
430
|
}
|
package/src/Form.tsx
CHANGED
|
@@ -2596,8 +2596,13 @@ function RecordForm({
|
|
|
2596
2596
|
)
|
|
2597
2597
|
|
|
2598
2598
|
const handlePermissionsConfirm = useCallback(
|
|
2599
|
-
async (
|
|
2600
|
-
|
|
2599
|
+
async (
|
|
2600
|
+
selectedPermissions: FilePermissions,
|
|
2601
|
+
contextOverride?: "files" | "image-create" | "image-update",
|
|
2602
|
+
imageUpdateOverrides?: { pendingImage: { fieldName: string; file: File }; resolver: () => void },
|
|
2603
|
+
) => {
|
|
2604
|
+
const context = contextOverride ?? permissionsContext
|
|
2605
|
+
if (context === "files") {
|
|
2601
2606
|
if (isMultipleFileUpload) {
|
|
2602
2607
|
if (pendingUploadFiles.length > 0) {
|
|
2603
2608
|
setQueuedUploads((prev) => [
|
|
@@ -2627,7 +2632,7 @@ function RecordForm({
|
|
|
2627
2632
|
return
|
|
2628
2633
|
}
|
|
2629
2634
|
|
|
2630
|
-
if (
|
|
2635
|
+
if (context === "image-create") {
|
|
2631
2636
|
if (!pendingUploadFile || !pendingImageFieldName) return
|
|
2632
2637
|
setQueuedImageUploads((prev) => ({
|
|
2633
2638
|
...prev,
|
|
@@ -2642,9 +2647,11 @@ function RecordForm({
|
|
|
2642
2647
|
return
|
|
2643
2648
|
}
|
|
2644
2649
|
|
|
2645
|
-
if (
|
|
2646
|
-
|
|
2647
|
-
const
|
|
2650
|
+
if (context === "image-update") {
|
|
2651
|
+
const effectivePendingImage = imageUpdateOverrides?.pendingImage ?? pendingImageForUpdate
|
|
2652
|
+
const effectiveResolver = imageUpdateOverrides?.resolver ?? imageUpdateResolver
|
|
2653
|
+
if (!effectivePendingImage || !id || !currentUser) return
|
|
2654
|
+
const { fieldName, file } = effectivePendingImage
|
|
2648
2655
|
const basePath = computeBasePath(id)
|
|
2649
2656
|
const filename = file.name.trim()
|
|
2650
2657
|
const validationError = validateStorageName(filename)
|
|
@@ -2653,9 +2660,9 @@ function RecordForm({
|
|
|
2653
2660
|
setShowPermissionsDialog(false)
|
|
2654
2661
|
setPendingImageForUpdate(null)
|
|
2655
2662
|
setPermissionsContext("files")
|
|
2656
|
-
if (
|
|
2663
|
+
if (effectiveResolver) {
|
|
2657
2664
|
setIsUploading((prev) => ({ ...prev, [fieldName]: false }))
|
|
2658
|
-
|
|
2665
|
+
effectiveResolver()
|
|
2659
2666
|
}
|
|
2660
2667
|
return
|
|
2661
2668
|
}
|
|
@@ -2689,9 +2696,9 @@ function RecordForm({
|
|
|
2689
2696
|
setShowPermissionsDialog(false)
|
|
2690
2697
|
setPendingImageForUpdate(null)
|
|
2691
2698
|
setPermissionsContext("files")
|
|
2692
|
-
if (
|
|
2699
|
+
if (effectiveResolver) {
|
|
2693
2700
|
setIsUploading((prev) => ({ ...prev, [fieldName]: false }))
|
|
2694
|
-
|
|
2701
|
+
effectiveResolver()
|
|
2695
2702
|
}
|
|
2696
2703
|
return
|
|
2697
2704
|
}
|
|
@@ -2733,9 +2740,9 @@ function RecordForm({
|
|
|
2733
2740
|
setShowPermissionsDialog(false)
|
|
2734
2741
|
setPendingImageForUpdate(null)
|
|
2735
2742
|
setPermissionsContext("files")
|
|
2736
|
-
if (
|
|
2743
|
+
if (effectiveResolver) {
|
|
2737
2744
|
setIsUploading((prev) => ({ ...prev, [fieldName]: false }))
|
|
2738
|
-
|
|
2745
|
+
effectiveResolver()
|
|
2739
2746
|
}
|
|
2740
2747
|
return
|
|
2741
2748
|
}
|
|
@@ -2786,7 +2793,10 @@ function RecordForm({
|
|
|
2786
2793
|
setIsMultipleFileUpload(false)
|
|
2787
2794
|
setImageUpdateResolver(() => resolve)
|
|
2788
2795
|
if (shouldSkipPermissionsDialog()) {
|
|
2789
|
-
|
|
2796
|
+
handlePermissionsConfirm(getDefaultPermissions(), "image-update", {
|
|
2797
|
+
pendingImage: { fieldName, file },
|
|
2798
|
+
resolver: resolve,
|
|
2799
|
+
})
|
|
2790
2800
|
} else {
|
|
2791
2801
|
setShowPermissionsDialog(true)
|
|
2792
2802
|
}
|