medusa-plugin-order-notes 0.1.2 → 0.2.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.
- package/.medusa/server/medusa-config.d.ts +1 -0
- package/.medusa/server/medusa-config.js +3 -3
- package/.medusa/server/src/api/admin/order-notes/[id]/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/order-notes/route.d.ts +4 -0
- package/.medusa/server/src/api/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/validators.d.ts +17 -0
- package/.medusa/server/src/api/validators.js +2 -2
- package/.medusa/server/src/links/order-note-order.d.ts +2 -0
- package/.medusa/server/src/links/order-order-note.d.ts +2 -0
- package/.medusa/server/src/modules/order-note/index.d.ts +22 -0
- package/.medusa/server/src/modules/order-note/index.js +16 -1
- package/.medusa/server/src/modules/order-note/migrations/Migration20260409171812.d.ts +5 -0
- package/.medusa/server/src/modules/order-note/models/order-note.d.ts +8 -0
- package/.medusa/server/src/modules/order-note/service.d.ts +29 -0
- package/README.md +2 -2
- package/package.json +46 -37
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -10,8 +10,8 @@ module.exports = (0, utils_1.defineConfig)({
|
|
|
10
10
|
storeCors: process.env.STORE_CORS || 'http://localhost:5173',
|
|
11
11
|
adminCors: process.env.ADMIN_CORS || 'http://localhost:5173,http://localhost:9000',
|
|
12
12
|
authCors: process.env.AUTH_CORS || 'http://localhost:5173,http://localhost:9000',
|
|
13
|
-
jwtSecret: process.env.JWT_SECRET
|
|
14
|
-
cookieSecret: process.env.COOKIE_SECRET
|
|
13
|
+
jwtSecret: process.env.JWT_SECRET,
|
|
14
|
+
cookieSecret: process.env.COOKIE_SECRET
|
|
15
15
|
}
|
|
16
16
|
},
|
|
17
17
|
modules: [
|
|
@@ -20,4 +20,4 @@ module.exports = (0, utils_1.defineConfig)({
|
|
|
20
20
|
}
|
|
21
21
|
]
|
|
22
22
|
});
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkdXNhLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL21lZHVzYS1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxxREFBaUU7QUFFakUsSUFBQSxlQUFPLEVBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLElBQUksYUFBYSxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFBO0FBRTdELE1BQU0sQ0FBQyxPQUFPLEdBQUcsSUFBQSxvQkFBWSxFQUFDO0lBQzdCLGFBQWEsRUFBRTtRQUNkLFFBQVEsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVM7UUFDL0IsV0FBVyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWTtRQUNyQyxJQUFJLEVBQUU7WUFDTCxTQUFTLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLElBQUksdUJBQXVCO1lBQzVELFNBQVMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsSUFBSSw2Q0FBNkM7WUFDbEYsUUFBUSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxJQUFJLDZDQUE2QztZQUNoRixTQUFTLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVO1lBQ2pDLFlBQVksRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWE7U0FDdkM7S0FDRDtJQUNELE9BQU8sRUFBRTtRQUNSO1lBQ0MsT0FBTyxFQUFFLDBCQUEwQjtTQUNuQztLQUNEO0NBQ0QsQ0FBQyxDQUFBIn0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { AuthenticatedMedusaRequest, MedusaResponse } from '@medusajs/framework/http';
|
|
2
|
+
import { AdminGetOrderNotesType, AdminCreateOrderNoteType } from '../../validators';
|
|
3
|
+
export declare const GET: (req: AuthenticatedMedusaRequest<AdminGetOrderNotesType>, res: MedusaResponse) => Promise<void>;
|
|
4
|
+
export declare const POST: (req: AuthenticatedMedusaRequest<AdminCreateOrderNoteType>, res: MedusaResponse) => Promise<void>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { z } from '@medusajs/framework/zod';
|
|
2
|
+
export declare const AdminGetOrderNotes: z.ZodObject<{
|
|
3
|
+
fields: z.ZodOptional<z.ZodString>;
|
|
4
|
+
offset: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodDefault<z.ZodOptional<z.ZodNumber>>>;
|
|
5
|
+
limit: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodDefault<z.ZodOptional<z.ZodNumber>>>;
|
|
6
|
+
order: z.ZodOptional<z.ZodString> | z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
7
|
+
with_deleted: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodBoolean>>;
|
|
8
|
+
order_id: z.ZodOptional<z.ZodString>;
|
|
9
|
+
}, z.core.$strip>;
|
|
10
|
+
export type AdminGetOrderNotesType = z.infer<typeof AdminGetOrderNotes>;
|
|
11
|
+
export declare const AdminCreateOrderNote: z.ZodObject<{
|
|
12
|
+
order_id: z.ZodString;
|
|
13
|
+
note: z.ZodString;
|
|
14
|
+
sent: z.ZodDefault<z.ZodBoolean>;
|
|
15
|
+
metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
16
|
+
}, z.core.$strip>;
|
|
17
|
+
export type AdminCreateOrderNoteType = z.infer<typeof AdminCreateOrderNote>;
|
|
@@ -13,6 +13,6 @@ exports.AdminCreateOrderNote = zod_1.z.object({
|
|
|
13
13
|
order_id: zod_1.z.string(),
|
|
14
14
|
note: zod_1.z.string(),
|
|
15
15
|
sent: zod_1.z.boolean().default(false),
|
|
16
|
-
metadata: zod_1.z.record(zod_1.z.unknown()).nullable().optional()
|
|
16
|
+
metadata: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).nullable().optional()
|
|
17
17
|
});
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcGkvdmFsaWRhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFBMkM7QUFDM0Msc0VBQXdFO0FBRTNELFFBQUEsa0JBQWtCLEdBQUcsSUFBQSw2QkFBZ0IsRUFBQztJQUNsRCxLQUFLLEVBQUUsRUFBRTtJQUNULE1BQU0sRUFBRSxDQUFDO0NBQ1QsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNULFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0NBQy9CLENBQUMsQ0FBQTtBQUdXLFFBQUEsb0JBQW9CLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNwQixJQUFJLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNoQixJQUFJLEVBQUUsT0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDaEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRTtDQUNqRSxDQUFDLENBQUEifQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { OrderNoteService } from './service';
|
|
2
|
+
export declare const ORDER_NOTE_MODULE = "order_note";
|
|
3
|
+
declare const _default: import("@medusajs/types").ModuleExports<typeof OrderNoteService> & {
|
|
4
|
+
linkable: {
|
|
5
|
+
readonly orderNote: {
|
|
6
|
+
id: {
|
|
7
|
+
serviceName: "order_note";
|
|
8
|
+
field: "orderNote";
|
|
9
|
+
linkable: "order_note_id";
|
|
10
|
+
primaryKey: "id";
|
|
11
|
+
};
|
|
12
|
+
toJSON: () => {
|
|
13
|
+
serviceName: "order_note";
|
|
14
|
+
field: "orderNote";
|
|
15
|
+
linkable: "order_note_id";
|
|
16
|
+
primaryKey: "id";
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
export default _default;
|
|
22
|
+
export * from './service';
|
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
17
|
exports.ORDER_NOTE_MODULE = void 0;
|
|
4
18
|
const utils_1 = require("@medusajs/framework/utils");
|
|
@@ -7,4 +21,5 @@ exports.ORDER_NOTE_MODULE = 'order_note';
|
|
|
7
21
|
exports.default = (0, utils_1.Module)(exports.ORDER_NOTE_MODULE, {
|
|
8
22
|
service: service_1.OrderNoteService
|
|
9
23
|
});
|
|
10
|
-
|
|
24
|
+
__exportStar(require("./service"), exports);
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9vcmRlci1ub3RlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscURBQWtEO0FBQ2xELHVDQUE0QztBQUUvQixRQUFBLGlCQUFpQixHQUFHLFlBQVksQ0FBQTtBQUU3QyxrQkFBZSxJQUFBLGNBQU0sRUFBQyx5QkFBaUIsRUFBRTtJQUN4QyxPQUFPLEVBQUUsMEJBQWdCO0NBQ3pCLENBQUMsQ0FBQTtBQUVGLDRDQUF5QiJ9
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const OrderNote: import("@medusajs/framework/utils").DmlEntity<import("@medusajs/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@medusajs/framework/utils").PrimaryKeyModifier<string, import("@medusajs/framework/utils").IdProperty>;
|
|
3
|
+
order_id: import("@medusajs/framework/utils").TextProperty;
|
|
4
|
+
user_id: import("@medusajs/framework/utils").TextProperty;
|
|
5
|
+
note: import("@medusajs/framework/utils").TextProperty;
|
|
6
|
+
sent: import("@medusajs/framework/utils").BooleanProperty;
|
|
7
|
+
metadata: import("@medusajs/framework/utils").NullableModifier<Record<string, unknown>, import("@medusajs/framework/utils").JSONProperty>;
|
|
8
|
+
}>, "order_note">;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { IEventBusService, Logger, InferTypeOf } from '@medusajs/framework/types';
|
|
2
|
+
import { OrderNote } from './models/order-note';
|
|
3
|
+
type OrderNoteType = InferTypeOf<typeof OrderNote>;
|
|
4
|
+
declare const OrderNoteService_base: import("@medusajs/framework/utils").MedusaServiceReturnType<import("@medusajs/framework/utils").ModelConfigurationsToConfigTemplate<{
|
|
5
|
+
readonly OrderNote: import("@medusajs/framework/utils").DmlEntity<import("@medusajs/framework/utils").DMLEntitySchemaBuilder<{
|
|
6
|
+
id: import("@medusajs/framework/utils").PrimaryKeyModifier<string, import("@medusajs/framework/utils").IdProperty>;
|
|
7
|
+
order_id: import("@medusajs/framework/utils").TextProperty;
|
|
8
|
+
user_id: import("@medusajs/framework/utils").TextProperty;
|
|
9
|
+
note: import("@medusajs/framework/utils").TextProperty;
|
|
10
|
+
sent: import("@medusajs/framework/utils").BooleanProperty;
|
|
11
|
+
metadata: import("@medusajs/framework/utils").NullableModifier<Record<string, unknown>, import("@medusajs/framework/utils").JSONProperty>;
|
|
12
|
+
}>, "order_note">;
|
|
13
|
+
}>>;
|
|
14
|
+
export declare class OrderNoteService extends OrderNoteService_base {
|
|
15
|
+
protected logger_: Logger;
|
|
16
|
+
protected eventBusService_: IEventBusService;
|
|
17
|
+
constructor({ logger, event_bus }: {
|
|
18
|
+
logger: Logger;
|
|
19
|
+
event_bus: IEventBusService;
|
|
20
|
+
}, _options?: any);
|
|
21
|
+
createNote(data: {
|
|
22
|
+
order_id: string;
|
|
23
|
+
user_id: string;
|
|
24
|
+
note: string;
|
|
25
|
+
sent: boolean;
|
|
26
|
+
metadata?: Record<string, unknown> | null;
|
|
27
|
+
}): Promise<OrderNoteType>;
|
|
28
|
+
}
|
|
29
|
+
export {};
|
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@ If you are not familiar with Medusa, you can learn more on [the project web site
|
|
|
9
9
|
## Features
|
|
10
10
|
|
|
11
11
|
- Add notes to any order from the Order detail page
|
|
12
|
-
- Option to mark notes as "
|
|
12
|
+
- Option to mark notes as "send to customer" for email notification
|
|
13
13
|
- Widget on Order detail page displaying all notes with timestamps
|
|
14
14
|
- Delete notes when no longer needed
|
|
15
15
|
- Filterable by order ID via the admin API
|
|
@@ -41,7 +41,7 @@ module.exports = defineConfig({
|
|
|
41
41
|
})
|
|
42
42
|
```
|
|
43
43
|
|
|
44
|
-
To ensure order notes cannot be queried in GET requests to the API, add 'order_note' to your restricted fields in `medusa-config.ts`.
|
|
44
|
+
To ensure order notes cannot be queried in GET requests to the storefront API, add 'order_note' to your restricted fields in `medusa-config.ts`.
|
|
45
45
|
|
|
46
46
|
```ts
|
|
47
47
|
module.exports = defineConfig({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "medusa-plugin-order-notes",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Order notes plugin adding Medusa v1-style notes for Medusa v2",
|
|
5
5
|
"author": "Lacey Pevey",
|
|
6
6
|
"license": "MIT",
|
|
@@ -19,11 +19,26 @@
|
|
|
19
19
|
"require": "./.medusa/server/src/admin/index.js",
|
|
20
20
|
"default": "./.medusa/server/src/admin/index.js"
|
|
21
21
|
},
|
|
22
|
-
"./.medusa/server/src/modules/*":
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
"
|
|
22
|
+
"./.medusa/server/src/modules/*": {
|
|
23
|
+
"types": "./.medusa/server/src/modules/*/index.d.ts",
|
|
24
|
+
"default": "./.medusa/server/src/modules/*/index.js"
|
|
25
|
+
},
|
|
26
|
+
"./modules/*": {
|
|
27
|
+
"types": "./.medusa/server/src/modules/*/index.d.ts",
|
|
28
|
+
"default": "./.medusa/server/src/modules/*/index.js"
|
|
29
|
+
},
|
|
30
|
+
"./providers/*": {
|
|
31
|
+
"types": "./.medusa/server/src/providers/*/index.d.ts",
|
|
32
|
+
"default": "./.medusa/server/src/providers/*/index.js"
|
|
33
|
+
},
|
|
34
|
+
"./*": {
|
|
35
|
+
"types": "./.medusa/server/src/*.d.ts",
|
|
36
|
+
"default": "./.medusa/server/src/*.js"
|
|
37
|
+
},
|
|
38
|
+
".": {
|
|
39
|
+
"types": "./.medusa/server/src/modules/order-note/index.d.ts",
|
|
40
|
+
"default": "./.medusa/server/src/modules/order-note/index.js"
|
|
41
|
+
}
|
|
27
42
|
},
|
|
28
43
|
"keywords": [
|
|
29
44
|
"medusa-v2",
|
|
@@ -40,39 +55,33 @@
|
|
|
40
55
|
"test:integration:http": "TEST_TYPE=integration:http NODE_OPTIONS=--experimental-vm-modules jest --silent=false --runInBand --detectOpenHandles --forceExit"
|
|
41
56
|
},
|
|
42
57
|
"devDependencies": {
|
|
43
|
-
"@medusajs/admin-sdk": "2.
|
|
44
|
-
"@medusajs/cli": "2.
|
|
45
|
-
"@medusajs/framework": "2.
|
|
46
|
-
"@medusajs/icons": "2.
|
|
47
|
-
"@medusajs/
|
|
48
|
-
"@
|
|
49
|
-
"@
|
|
50
|
-
"@
|
|
51
|
-
"@
|
|
52
|
-
"@
|
|
53
|
-
"@types/
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"typescript": "^5.6.2",
|
|
63
|
-
"vite": "^5.2.11",
|
|
64
|
-
"yalc": "^1.0.0-pre.53"
|
|
58
|
+
"@medusajs/admin-sdk": "2.16.0",
|
|
59
|
+
"@medusajs/cli": "2.16.0",
|
|
60
|
+
"@medusajs/framework": "2.16.0",
|
|
61
|
+
"@medusajs/icons": "2.16.0",
|
|
62
|
+
"@medusajs/ui": "4.1.16",
|
|
63
|
+
"@swc/core": "1.15.33",
|
|
64
|
+
"@swc/jest": "0.2.39",
|
|
65
|
+
"@types/jest": "30.0.0",
|
|
66
|
+
"@types/node": "20.0.0",
|
|
67
|
+
"@types/react": "18.3.2",
|
|
68
|
+
"@types/react-dom": "18.2.25",
|
|
69
|
+
"jest": "29.7.0",
|
|
70
|
+
"prop-types": "15.8.1",
|
|
71
|
+
"react": "18.3.1",
|
|
72
|
+
"react-dom": "18.3.1",
|
|
73
|
+
"ts-node": "10.9.2",
|
|
74
|
+
"typescript": "6.0.3",
|
|
75
|
+
"vite": "8.0.8",
|
|
76
|
+
"yalc": "1.0.0-pre.53"
|
|
65
77
|
},
|
|
66
78
|
"peerDependencies": {
|
|
67
|
-
"@medusajs/
|
|
68
|
-
"@medusajs/
|
|
69
|
-
"@medusajs/
|
|
70
|
-
"@medusajs/icons": "2.13.6",
|
|
71
|
-
"@medusajs/medusa": "2.13.6",
|
|
72
|
-
"@medusajs/test-utils": "2.13.6",
|
|
73
|
-
"@medusajs/ui": "4.0.25"
|
|
79
|
+
"@medusajs/framework": "2.16.0",
|
|
80
|
+
"@medusajs/js-sdk": "2.16.0",
|
|
81
|
+
"@medusajs/medusa": "2.16.0"
|
|
74
82
|
},
|
|
75
83
|
"engines": {
|
|
76
84
|
"node": ">=20"
|
|
77
|
-
}
|
|
78
|
-
|
|
85
|
+
},
|
|
86
|
+
"gitHead": "e09c71de0e01897fa9441b40b67315b5a7b6d5bf"
|
|
87
|
+
}
|