@lodashventure/medusa-banner 1.1.8 → 1.3.1
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.
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
const jsxRuntime = require("react/jsx-runtime");
|
|
3
3
|
const adminSdk = require("@medusajs/admin-sdk");
|
|
4
4
|
const icons = require("@medusajs/icons");
|
|
5
|
+
const Medusa = require("@medusajs/js-sdk");
|
|
5
6
|
const core = require("@dnd-kit/core");
|
|
6
7
|
const sortable = require("@dnd-kit/sortable");
|
|
7
8
|
const ui = require("@medusajs/ui");
|
|
@@ -10,30 +11,27 @@ const react = require("react");
|
|
|
10
11
|
const reactQuery = require("@tanstack/react-query");
|
|
11
12
|
const utilities = require("@dnd-kit/utilities");
|
|
12
13
|
const reactDropzone = require("react-dropzone");
|
|
14
|
+
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
|
15
|
+
const Medusa__default = /* @__PURE__ */ _interopDefault(Medusa);
|
|
16
|
+
const sdk = new Medusa__default.default({
|
|
17
|
+
baseUrl: "/",
|
|
18
|
+
debug: false,
|
|
19
|
+
auth: {
|
|
20
|
+
type: "session"
|
|
21
|
+
}
|
|
22
|
+
});
|
|
13
23
|
const useBanners = () => {
|
|
14
|
-
const getUploadedFiles = async () => {
|
|
15
|
-
try {
|
|
16
|
-
const response = await fetch("/admin/banners", {
|
|
17
|
-
method: "GET",
|
|
18
|
-
credentials: "include"
|
|
19
|
-
});
|
|
20
|
-
if (!response.ok) {
|
|
21
|
-
throw new Error(`HTTP error! Status: ${response.status}`);
|
|
22
|
-
}
|
|
23
|
-
const data = await response.json();
|
|
24
|
-
return data ?? {
|
|
25
|
-
banners: [],
|
|
26
|
-
count: 0
|
|
27
|
-
};
|
|
28
|
-
} catch (error) {
|
|
29
|
-
console.error("Error fetching banners:", error);
|
|
30
|
-
throw error;
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
24
|
return reactQuery.useQuery({
|
|
34
25
|
queryKey: ["banners"],
|
|
35
|
-
queryFn:
|
|
36
|
-
|
|
26
|
+
queryFn: async () => {
|
|
27
|
+
const response = await sdk.client.fetch(
|
|
28
|
+
"/admin/banners",
|
|
29
|
+
{
|
|
30
|
+
method: "GET"
|
|
31
|
+
}
|
|
32
|
+
);
|
|
33
|
+
return response ?? { banners: [], count: 0 };
|
|
34
|
+
},
|
|
37
35
|
retry: false
|
|
38
36
|
});
|
|
39
37
|
};
|
|
@@ -173,11 +171,14 @@ const UploadBannerDrawerContent = ({
|
|
|
173
171
|
}
|
|
174
172
|
formData.append("files", file.file);
|
|
175
173
|
});
|
|
176
|
-
const
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
174
|
+
const response = await sdk.client.fetch(
|
|
175
|
+
"/admin/banners",
|
|
176
|
+
{
|
|
177
|
+
method: "POST",
|
|
178
|
+
body: formData
|
|
179
|
+
}
|
|
180
|
+
);
|
|
181
|
+
const { uploadedFiles } = response;
|
|
181
182
|
onSuccess(uploadedFiles);
|
|
182
183
|
return {
|
|
183
184
|
files,
|
|
@@ -402,12 +403,10 @@ const BannerPage = () => {
|
|
|
402
403
|
};
|
|
403
404
|
const saveNewOrder = async () => {
|
|
404
405
|
try {
|
|
405
|
-
await fetch("/admin/banners/reorder", {
|
|
406
|
+
await sdk.client.fetch("/admin/banners/reorder", {
|
|
406
407
|
method: "POST",
|
|
407
|
-
credentials: "include",
|
|
408
408
|
headers: {
|
|
409
|
-
"Content-Type": "application/json"
|
|
410
|
-
Accept: "application/json"
|
|
409
|
+
"Content-Type": "application/json"
|
|
411
410
|
},
|
|
412
411
|
body: JSON.stringify({
|
|
413
412
|
ids: orderedBanners.map((banner) => banner.id)
|
|
@@ -432,10 +431,8 @@ const BannerPage = () => {
|
|
|
432
431
|
try {
|
|
433
432
|
await fetch("/admin/banners", {
|
|
434
433
|
method: "DELETE",
|
|
435
|
-
credentials: "include",
|
|
436
434
|
headers: {
|
|
437
|
-
"Content-Type": "application/json"
|
|
438
|
-
Accept: "application/json"
|
|
435
|
+
"Content-Type": "application/json"
|
|
439
436
|
},
|
|
440
437
|
body: JSON.stringify({ ids })
|
|
441
438
|
});
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { defineRouteConfig } from "@medusajs/admin-sdk";
|
|
3
3
|
import { Trash, StackPerspective } from "@medusajs/icons";
|
|
4
|
+
import Medusa from "@medusajs/js-sdk";
|
|
4
5
|
import { useSensors, useSensor, PointerSensor, KeyboardSensor, DndContext, closestCenter, DragOverlay } from "@dnd-kit/core";
|
|
5
6
|
import { useSortable, sortableKeyboardCoordinates, SortableContext, rectSortingStrategy, arrayMove } from "@dnd-kit/sortable";
|
|
6
7
|
import { clx, Button, usePrompt, Drawer } from "@medusajs/ui";
|
|
@@ -9,30 +10,25 @@ import { useState, useCallback } from "react";
|
|
|
9
10
|
import { useQuery } from "@tanstack/react-query";
|
|
10
11
|
import { CSS } from "@dnd-kit/utilities";
|
|
11
12
|
import { useDropzone } from "react-dropzone";
|
|
13
|
+
const sdk = new Medusa({
|
|
14
|
+
baseUrl: "/",
|
|
15
|
+
debug: false,
|
|
16
|
+
auth: {
|
|
17
|
+
type: "session"
|
|
18
|
+
}
|
|
19
|
+
});
|
|
12
20
|
const useBanners = () => {
|
|
13
|
-
const getUploadedFiles = async () => {
|
|
14
|
-
try {
|
|
15
|
-
const response = await fetch("/admin/banners", {
|
|
16
|
-
method: "GET",
|
|
17
|
-
credentials: "include"
|
|
18
|
-
});
|
|
19
|
-
if (!response.ok) {
|
|
20
|
-
throw new Error(`HTTP error! Status: ${response.status}`);
|
|
21
|
-
}
|
|
22
|
-
const data = await response.json();
|
|
23
|
-
return data ?? {
|
|
24
|
-
banners: [],
|
|
25
|
-
count: 0
|
|
26
|
-
};
|
|
27
|
-
} catch (error) {
|
|
28
|
-
console.error("Error fetching banners:", error);
|
|
29
|
-
throw error;
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
21
|
return useQuery({
|
|
33
22
|
queryKey: ["banners"],
|
|
34
|
-
queryFn:
|
|
35
|
-
|
|
23
|
+
queryFn: async () => {
|
|
24
|
+
const response = await sdk.client.fetch(
|
|
25
|
+
"/admin/banners",
|
|
26
|
+
{
|
|
27
|
+
method: "GET"
|
|
28
|
+
}
|
|
29
|
+
);
|
|
30
|
+
return response ?? { banners: [], count: 0 };
|
|
31
|
+
},
|
|
36
32
|
retry: false
|
|
37
33
|
});
|
|
38
34
|
};
|
|
@@ -172,11 +168,14 @@ const UploadBannerDrawerContent = ({
|
|
|
172
168
|
}
|
|
173
169
|
formData.append("files", file.file);
|
|
174
170
|
});
|
|
175
|
-
const
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
171
|
+
const response = await sdk.client.fetch(
|
|
172
|
+
"/admin/banners",
|
|
173
|
+
{
|
|
174
|
+
method: "POST",
|
|
175
|
+
body: formData
|
|
176
|
+
}
|
|
177
|
+
);
|
|
178
|
+
const { uploadedFiles } = response;
|
|
180
179
|
onSuccess(uploadedFiles);
|
|
181
180
|
return {
|
|
182
181
|
files,
|
|
@@ -401,12 +400,10 @@ const BannerPage = () => {
|
|
|
401
400
|
};
|
|
402
401
|
const saveNewOrder = async () => {
|
|
403
402
|
try {
|
|
404
|
-
await fetch("/admin/banners/reorder", {
|
|
403
|
+
await sdk.client.fetch("/admin/banners/reorder", {
|
|
405
404
|
method: "POST",
|
|
406
|
-
credentials: "include",
|
|
407
405
|
headers: {
|
|
408
|
-
"Content-Type": "application/json"
|
|
409
|
-
Accept: "application/json"
|
|
406
|
+
"Content-Type": "application/json"
|
|
410
407
|
},
|
|
411
408
|
body: JSON.stringify({
|
|
412
409
|
ids: orderedBanners.map((banner) => banner.id)
|
|
@@ -431,10 +428,8 @@ const BannerPage = () => {
|
|
|
431
428
|
try {
|
|
432
429
|
await fetch("/admin/banners", {
|
|
433
430
|
method: "DELETE",
|
|
434
|
-
credentials: "include",
|
|
435
431
|
headers: {
|
|
436
|
-
"Content-Type": "application/json"
|
|
437
|
-
Accept: "application/json"
|
|
432
|
+
"Content-Type": "application/json"
|
|
438
433
|
},
|
|
439
434
|
body: JSON.stringify({ ids })
|
|
440
435
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Migration20250414061948 = void 0;
|
|
4
|
-
const migrations_1 = require("@mikro-orm/migrations");
|
|
4
|
+
const migrations_1 = require("@medusajs/framework/mikro-orm/migrations");
|
|
5
5
|
class Migration20250414061948 extends migrations_1.Migration {
|
|
6
6
|
async up() {
|
|
7
7
|
this.addSql(`create table if not exists "banner" ("id" text not null, "url" text not null, "order" integer not null, "created_at" timestamptz not null default now(), "updated_at" timestamptz not null default now(), "deleted_at" timestamptz null, constraint "banner_pkey" primary key ("id"));`);
|
|
@@ -12,4 +12,4 @@ class Migration20250414061948 extends migrations_1.Migration {
|
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
exports.Migration20250414061948 = Migration20250414061948;
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTA0MTQwNjE5NDguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9iYW5uZXIvbWlncmF0aW9ucy9NaWdyYXRpb24yMDI1MDQxNDA2MTk0OC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5RUFBcUU7QUFFckUsTUFBYSx1QkFBd0IsU0FBUSxzQkFBUztJQUUzQyxLQUFLLENBQUMsRUFBRTtRQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsd1JBQXdSLENBQUMsQ0FBQztRQUN0UyxJQUFJLENBQUMsTUFBTSxDQUFDLHVHQUF1RyxDQUFDLENBQUM7SUFDdkgsQ0FBQztJQUVRLEtBQUssQ0FBQyxJQUFJO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsd0NBQXdDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0NBRUY7QUFYRCwwREFXQyJ9
|
|
@@ -20,31 +20,71 @@ const deleteBannersStep = (0, workflows_sdk_1.createStep)("delete-banners", asyn
|
|
|
20
20
|
throw new Error("No banners found with the provided IDs");
|
|
21
21
|
}
|
|
22
22
|
const bannerIds = banners.map((banner) => banner.id);
|
|
23
|
-
//
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
// Try to delete files using the file service
|
|
24
|
+
// We'll handle file deletion errors gracefully since the files might already be deleted
|
|
25
|
+
try {
|
|
26
|
+
const fileService = container.resolve(utils_1.Modules.FILE);
|
|
27
|
+
// Extract filenames from banner URLs and create proper file objects
|
|
28
|
+
const fileKeysToDelete = [];
|
|
29
|
+
for (const banner of banners) {
|
|
30
|
+
if (banner.url) {
|
|
31
|
+
// Extract filename from URL like https://storage.googleapis.com/sangaroon/filename.jpg
|
|
32
|
+
const urlParts = banner.url.split('/');
|
|
33
|
+
const filename = urlParts[urlParts.length - 1];
|
|
34
|
+
if (filename) {
|
|
35
|
+
logger.info(`Preparing to delete file: ${filename} from URL: ${banner.url}`);
|
|
36
|
+
fileKeysToDelete.push(filename);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
29
39
|
}
|
|
30
|
-
|
|
31
|
-
logger.
|
|
32
|
-
|
|
40
|
+
if (fileKeysToDelete.length > 0) {
|
|
41
|
+
logger.info(`Attempting to delete ${fileKeysToDelete.length} files from storage`);
|
|
42
|
+
try {
|
|
43
|
+
// Try to delete files using the deleteFiles method
|
|
44
|
+
// First try with filenames as IDs
|
|
45
|
+
try {
|
|
46
|
+
await fileService.deleteFiles(fileKeysToDelete);
|
|
47
|
+
logger.info(`Successfully deleted files using filenames`);
|
|
48
|
+
}
|
|
49
|
+
catch (deleteError) {
|
|
50
|
+
logger.warn(`Could not delete using filenames: ${deleteError.message}`);
|
|
51
|
+
// Try with banner IDs instead
|
|
52
|
+
try {
|
|
53
|
+
await fileService.deleteFiles(bannerIds);
|
|
54
|
+
logger.info(`Successfully deleted files using banner IDs`);
|
|
55
|
+
}
|
|
56
|
+
catch (fallbackError) {
|
|
57
|
+
logger.error(`Could not delete files using banner IDs either: ${fallbackError.message}`);
|
|
58
|
+
// Last attempt: use deleteFilesWorkflow with banner IDs
|
|
59
|
+
try {
|
|
60
|
+
await (0, core_flows_1.deleteFilesWorkflow)(container).run({
|
|
61
|
+
input: { ids: bannerIds },
|
|
62
|
+
});
|
|
63
|
+
logger.info(`Successfully deleted files using deleteFilesWorkflow`);
|
|
64
|
+
}
|
|
65
|
+
catch (workflowError) {
|
|
66
|
+
logger.error(`Error deleting files with workflow: ${workflowError.message}`);
|
|
67
|
+
logger.info(`Files may remain in storage, but continuing with banner deletion`);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
catch (fileDeleteError) {
|
|
73
|
+
// Log the error but continue with banner deletion
|
|
74
|
+
logger.error(`Error in file deletion process: ${fileDeleteError.message}`);
|
|
75
|
+
logger.info(`Continuing with banner record deletion despite file deletion error`);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
logger.info(`No files to delete from storage`);
|
|
33
80
|
}
|
|
34
|
-
});
|
|
35
|
-
const fileResults = await Promise.all(filePromises);
|
|
36
|
-
const files = fileResults.filter((file) => file !== null);
|
|
37
|
-
if (files.length > 0) {
|
|
38
|
-
logger.info(`Deleting ${files.length} files from storage`);
|
|
39
|
-
// Delete the files (banner IDs are also file IDs)
|
|
40
|
-
await (0, core_flows_1.deleteFilesWorkflow)(container).run({
|
|
41
|
-
input: { ids: files.map((file) => file.id) },
|
|
42
|
-
});
|
|
43
81
|
}
|
|
44
|
-
|
|
45
|
-
|
|
82
|
+
catch (error) {
|
|
83
|
+
// If file service is not available or any other error, log and continue
|
|
84
|
+
logger.error(`Error accessing file service: ${error.message}`);
|
|
85
|
+
logger.info(`Continuing with banner record deletion despite file service error`);
|
|
46
86
|
}
|
|
47
|
-
// Delete the banner records
|
|
87
|
+
// Delete the banner records regardless of file deletion success
|
|
48
88
|
await bannerModuleService.deleteBanners(bannerIds);
|
|
49
89
|
return new workflows_sdk_1.StepResponse(bannerIds, bannerIds);
|
|
50
90
|
});
|
|
@@ -52,4 +92,4 @@ exports.deleteBannersWorkflow = (0, workflows_sdk_1.createWorkflow)("delete-bann
|
|
|
52
92
|
const post = deleteBannersStep(deleteInput);
|
|
53
93
|
return new workflows_sdk_1.WorkflowResponse(post);
|
|
54
94
|
});
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLWJhbm5lcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2RlbGV0ZS1iYW5uZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUsyQztBQUMzQyw0REFBa0U7QUFFbEUsOENBQWtEO0FBQ2xELHFEQUFvRDtBQU1wRCxNQUFNLGlCQUFpQixHQUFHLElBQUEsMEJBQVUsRUFDbEMsZ0JBQWdCLEVBQ2hCLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBOEIsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDM0QsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxNQUFNLG1CQUFtQixHQUN2QixTQUFTLENBQUMsT0FBTyxDQUFDLHNCQUFhLENBQUMsQ0FBQztJQUVuQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxNQUFNLFVBQVUsQ0FBQyxDQUFDO0lBRTlDLGdEQUFnRDtJQUNoRCxNQUFNLE9BQU8sR0FBRyxNQUFNLG1CQUFtQixDQUFDLFdBQVcsQ0FBQztRQUNwRCxFQUFFLEVBQUUsR0FBRztLQUNSLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFckQsNkNBQTZDO0lBQzdDLHdGQUF3RjtJQUN4RixJQUFJLENBQUM7UUFDSCxN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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lodashventure/medusa-banner",
|
|
3
|
-
"version": "1.1
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "A starter for Medusa plugins.",
|
|
5
5
|
"author": "Medusa (https://medusajs.com)",
|
|
6
6
|
"license": "MIT",
|
|
@@ -29,25 +29,18 @@
|
|
|
29
29
|
"prepublishOnly": "medusa plugin:build"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@medusajs/admin-sdk": "2.
|
|
33
|
-
"@medusajs/cli": "2.
|
|
34
|
-
"@medusajs/framework": "2.
|
|
35
|
-
"@medusajs/icons": "^2.
|
|
36
|
-
"@medusajs/medusa": "2.
|
|
37
|
-
"@medusajs/test-utils": "2.
|
|
32
|
+
"@medusajs/admin-sdk": "2.11.0",
|
|
33
|
+
"@medusajs/cli": "2.11.0",
|
|
34
|
+
"@medusajs/framework": "2.11.0",
|
|
35
|
+
"@medusajs/icons": "^2.11.0",
|
|
36
|
+
"@medusajs/medusa": "2.11.0",
|
|
37
|
+
"@medusajs/test-utils": "2.11.0",
|
|
38
38
|
"@medusajs/ui": "4.0.4",
|
|
39
|
-
"@mikro-orm/cli": "6.4.3",
|
|
40
|
-
"@mikro-orm/core": "6.4.3",
|
|
41
|
-
"@mikro-orm/knex": "6.4.3",
|
|
42
|
-
"@mikro-orm/migrations": "6.4.3",
|
|
43
|
-
"@mikro-orm/postgresql": "6.4.3",
|
|
44
39
|
"@swc/core": "1.5.7",
|
|
45
40
|
"@types/multer": "^1.4.12",
|
|
46
41
|
"@types/node": "^20.0.0",
|
|
47
42
|
"@types/react": "^18.3.2",
|
|
48
43
|
"@types/react-dom": "^18.2.25",
|
|
49
|
-
"awilix": "^8.0.1",
|
|
50
|
-
"pg": "^8.13.0",
|
|
51
44
|
"prop-types": "^15.8.1",
|
|
52
45
|
"react": "^18.2.0",
|
|
53
46
|
"react-dom": "^18.2.0",
|
|
@@ -57,21 +50,14 @@
|
|
|
57
50
|
"yalc": "^1.0.0-pre.53"
|
|
58
51
|
},
|
|
59
52
|
"peerDependencies": {
|
|
60
|
-
"@medusajs/admin-sdk": "2.
|
|
61
|
-
"@medusajs/cli": "2.
|
|
62
|
-
"@medusajs/framework": "2.
|
|
63
|
-
"@medusajs/icons": "^2.
|
|
64
|
-
"@medusajs/medusa": "2.
|
|
65
|
-
"@medusajs/test-utils": "2.
|
|
53
|
+
"@medusajs/admin-sdk": "2.11.0",
|
|
54
|
+
"@medusajs/cli": "2.11.0",
|
|
55
|
+
"@medusajs/framework": "2.11.0",
|
|
56
|
+
"@medusajs/icons": "^2.11.0",
|
|
57
|
+
"@medusajs/medusa": "2.11.0",
|
|
58
|
+
"@medusajs/test-utils": "2.11.0",
|
|
66
59
|
"@medusajs/ui": "4.0.3",
|
|
67
|
-
"@
|
|
68
|
-
"@mikro-orm/core": "6.4.3",
|
|
69
|
-
"@mikro-orm/knex": "6.4.3",
|
|
70
|
-
"@mikro-orm/migrations": "6.4.3",
|
|
71
|
-
"@mikro-orm/postgresql": "6.4.3",
|
|
72
|
-
"@tanstack/react-query": "*",
|
|
73
|
-
"awilix": "^8.0.1",
|
|
74
|
-
"pg": "^8.13.0"
|
|
60
|
+
"@tanstack/react-query": "*"
|
|
75
61
|
},
|
|
76
62
|
"engines": {
|
|
77
63
|
"node": ">=20"
|