@primershop/strapi-plugin-status-manager 0.0.6 → 0.0.8
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/dist/admin/{components/StatusManager.mjs → HomePage-C4rwBBWf.mjs} +50 -4
- package/dist/admin/HomePage-C4rwBBWf.mjs.map +1 -0
- package/dist/admin/{components/StatusManager.js → HomePage-CgBU0RrT.js} +50 -4
- package/dist/admin/HomePage-CgBU0RrT.js.map +1 -0
- package/dist/admin/index-BaesChab.mjs +279 -0
- package/dist/admin/index-BaesChab.mjs.map +1 -0
- package/dist/admin/index-C5VrYoqI.js +282 -0
- package/dist/admin/index-C5VrYoqI.js.map +1 -0
- package/dist/admin/index.js +8 -41
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +6 -43
- package/dist/admin/index.mjs.map +1 -1
- package/dist/server/bootstrap.js +7 -2
- package/dist/server/bootstrap.js.map +1 -1
- package/dist/server/bootstrap.mjs +7 -2
- package/dist/server/bootstrap.mjs.map +1 -1
- package/dist/server/index.js +1 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +1 -1
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/permissions.js +6 -1
- package/dist/server/permissions.js.map +1 -1
- package/dist/server/permissions.mjs +6 -1
- package/dist/server/permissions.mjs.map +1 -1
- package/dist/server/register.js +0 -7
- package/dist/server/register.js.map +1 -1
- package/dist/server/register.mjs +0 -7
- package/dist/server/register.mjs.map +1 -1
- package/package.json +106 -102
- package/dist/admin/components/Initializer.js +0 -17
- package/dist/admin/components/Initializer.js.map +0 -1
- package/dist/admin/components/Initializer.mjs +0 -15
- package/dist/admin/components/Initializer.mjs.map +0 -1
- package/dist/admin/components/PluginIcon.js +0 -9
- package/dist/admin/components/PluginIcon.js.map +0 -1
- package/dist/admin/components/PluginIcon.mjs +0 -7
- package/dist/admin/components/PluginIcon.mjs.map +0 -1
- package/dist/admin/components/ProductStatusField.js +0 -104
- package/dist/admin/components/ProductStatusField.js.map +0 -1
- package/dist/admin/components/ProductStatusField.mjs +0 -102
- package/dist/admin/components/ProductStatusField.mjs.map +0 -1
- package/dist/admin/components/StatusManager.js.map +0 -1
- package/dist/admin/components/StatusManager.mjs.map +0 -1
- package/dist/admin/listView/StatusFilter.js +0 -76
- package/dist/admin/listView/StatusFilter.js.map +0 -1
- package/dist/admin/listView/StatusFilter.mjs +0 -74
- package/dist/admin/listView/StatusFilter.mjs.map +0 -1
- package/dist/admin/listView/add-status-column-hook.js +0 -34
- package/dist/admin/listView/add-status-column-hook.js.map +0 -1
- package/dist/admin/listView/add-status-column-hook.mjs +0 -32
- package/dist/admin/listView/add-status-column-hook.mjs.map +0 -1
- package/dist/admin/listView/status-cell.js +0 -28
- package/dist/admin/listView/status-cell.js.map +0 -1
- package/dist/admin/listView/status-cell.mjs +0 -26
- package/dist/admin/listView/status-cell.mjs.map +0 -1
- package/dist/admin/pages/HomePage.js +0 -51
- package/dist/admin/pages/HomePage.js.map +0 -1
- package/dist/admin/pages/HomePage.mjs +0 -49
- package/dist/admin/pages/HomePage.mjs.map +0 -1
- package/dist/admin/pluginId.js +0 -6
- package/dist/admin/pluginId.js.map +0 -1
- package/dist/admin/pluginId.mjs +0 -4
- package/dist/admin/pluginId.mjs.map +0 -1
package/dist/server/register.js
CHANGED
|
@@ -11,13 +11,6 @@ const register = ({ strapi })=>{
|
|
|
11
11
|
plugin: pluginId.PLUGIN_ID,
|
|
12
12
|
type: "string"
|
|
13
13
|
});
|
|
14
|
-
// Register permissions
|
|
15
|
-
strapi.admin.services.permission.actionProvider.register({
|
|
16
|
-
section: "plugins",
|
|
17
|
-
displayName: "Status Manager",
|
|
18
|
-
uid: pluginId.PLUGIN_ID,
|
|
19
|
-
pluginName: pluginId.PLUGIN_ID
|
|
20
|
-
});
|
|
21
14
|
strapi.documents.use(filterByStatus);
|
|
22
15
|
strapi.documents.use(addStatusField);
|
|
23
16
|
strapi.documents.use(filterPublished);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.js","sources":["../../server/src/register.ts"],"sourcesContent":["import { PLUGIN_ID } from \"./pluginId\";\r\nimport type { Core } from \"@strapi/strapi\";\r\nimport addStatusField from \"./middlewares/add-status-field\";\r\nimport filterByStatus from \"./middlewares/filter-by-status\";\r\nimport filterPublished from \"./middlewares/filter-published\";\r\n\r\n\r\n\r\nexport const register = ({ strapi }: { strapi: Core.Strapi }): void => {\r\n strapi.customFields.register({\r\n name: \"statusName\",\r\n plugin: PLUGIN_ID,\r\n type: \"string\",\r\n });\r\n
|
|
1
|
+
{"version":3,"file":"register.js","sources":["../../server/src/register.ts"],"sourcesContent":["import { PLUGIN_ID } from \"./pluginId\";\r\nimport type { Core } from \"@strapi/strapi\";\r\nimport addStatusField from \"./middlewares/add-status-field\";\r\nimport filterByStatus from \"./middlewares/filter-by-status\";\r\nimport filterPublished from \"./middlewares/filter-published\";\r\n\r\n\r\n\r\nexport const register = ({ strapi }: { strapi: Core.Strapi }): void => {\r\n strapi.customFields.register({\r\n name: \"statusName\",\r\n plugin: PLUGIN_ID,\r\n type: \"string\",\r\n });\r\n\r\n strapi.documents.use(filterByStatus);\r\n strapi.documents.use(addStatusField);\r\n strapi.documents.use(filterPublished);\r\n};\r\n"],"names":["register","strapi","customFields","name","plugin","PLUGIN_ID","type","documents","use","filterByStatus","addStatusField","filterPublished"],"mappings":";;;;;;;AAQO,MAAMA,QAAAA,GAAW,CAAC,EAAEC,MAAM,EAA2B,GAAA;IAC1DA,MAAAA,CAAOC,YAAY,CAACF,QAAQ,CAAC;QAC3BG,IAAAA,EAAM,YAAA;QACNC,MAAAA,EAAQC,kBAAAA;QACRC,IAAAA,EAAM;AACR,KAAA,CAAA;IAEAL,MAAAA,CAAOM,SAAS,CAACC,GAAG,CAACC,cAAAA,CAAAA;IACrBR,MAAAA,CAAOM,SAAS,CAACC,GAAG,CAACE,cAAAA,CAAAA;IACrBT,MAAAA,CAAOM,SAAS,CAACC,GAAG,CAACG,eAAAA,CAAAA;AACvB;;;;"}
|
package/dist/server/register.mjs
CHANGED
|
@@ -9,13 +9,6 @@ const register = ({ strapi })=>{
|
|
|
9
9
|
plugin: PLUGIN_ID,
|
|
10
10
|
type: "string"
|
|
11
11
|
});
|
|
12
|
-
// Register permissions
|
|
13
|
-
strapi.admin.services.permission.actionProvider.register({
|
|
14
|
-
section: "plugins",
|
|
15
|
-
displayName: "Status Manager",
|
|
16
|
-
uid: PLUGIN_ID,
|
|
17
|
-
pluginName: PLUGIN_ID
|
|
18
|
-
});
|
|
19
12
|
strapi.documents.use(filterByStatus);
|
|
20
13
|
strapi.documents.use(addStatusField);
|
|
21
14
|
strapi.documents.use(filterPublished);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.mjs","sources":["../../server/src/register.ts"],"sourcesContent":["import { PLUGIN_ID } from \"./pluginId\";\r\nimport type { Core } from \"@strapi/strapi\";\r\nimport addStatusField from \"./middlewares/add-status-field\";\r\nimport filterByStatus from \"./middlewares/filter-by-status\";\r\nimport filterPublished from \"./middlewares/filter-published\";\r\n\r\n\r\n\r\nexport const register = ({ strapi }: { strapi: Core.Strapi }): void => {\r\n strapi.customFields.register({\r\n name: \"statusName\",\r\n plugin: PLUGIN_ID,\r\n type: \"string\",\r\n });\r\n
|
|
1
|
+
{"version":3,"file":"register.mjs","sources":["../../server/src/register.ts"],"sourcesContent":["import { PLUGIN_ID } from \"./pluginId\";\r\nimport type { Core } from \"@strapi/strapi\";\r\nimport addStatusField from \"./middlewares/add-status-field\";\r\nimport filterByStatus from \"./middlewares/filter-by-status\";\r\nimport filterPublished from \"./middlewares/filter-published\";\r\n\r\n\r\n\r\nexport const register = ({ strapi }: { strapi: Core.Strapi }): void => {\r\n strapi.customFields.register({\r\n name: \"statusName\",\r\n plugin: PLUGIN_ID,\r\n type: \"string\",\r\n });\r\n\r\n strapi.documents.use(filterByStatus);\r\n strapi.documents.use(addStatusField);\r\n strapi.documents.use(filterPublished);\r\n};\r\n"],"names":["register","strapi","customFields","name","plugin","PLUGIN_ID","type","documents","use","filterByStatus","addStatusField","filterPublished"],"mappings":";;;;;AAQO,MAAMA,QAAAA,GAAW,CAAC,EAAEC,MAAM,EAA2B,GAAA;IAC1DA,MAAAA,CAAOC,YAAY,CAACF,QAAQ,CAAC;QAC3BG,IAAAA,EAAM,YAAA;QACNC,MAAAA,EAAQC,SAAAA;QACRC,IAAAA,EAAM;AACR,KAAA,CAAA;IAEAL,MAAAA,CAAOM,SAAS,CAACC,GAAG,CAACC,cAAAA,CAAAA;IACrBR,MAAAA,CAAOM,SAAS,CAACC,GAAG,CAACE,cAAAA,CAAAA;IACrBT,MAAAA,CAAOM,SAAS,CAACC,GAAG,CAACG,eAAAA,CAAAA;AACvB;;;;"}
|
package/package.json
CHANGED
|
@@ -1,102 +1,106 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@primershop/strapi-plugin-status-manager",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"description": "Enables more status variations for Strapi",
|
|
5
|
-
"exports": {
|
|
6
|
-
"./strapi-admin": {
|
|
7
|
-
"import": "./dist/admin/index.mjs",
|
|
8
|
-
"require": "./dist/admin/index.js",
|
|
9
|
-
"default": "./dist/admin/index.js"
|
|
10
|
-
},
|
|
11
|
-
"./strapi-server": {
|
|
12
|
-
"import": "./dist/server/index.mjs",
|
|
13
|
-
"require": "./dist/server/index.js",
|
|
14
|
-
"default": "./dist/server/index.js"
|
|
15
|
-
},
|
|
16
|
-
"./package.json": "./package.json"
|
|
17
|
-
},
|
|
18
|
-
"files": [
|
|
19
|
-
"dist/"
|
|
20
|
-
],
|
|
21
|
-
"scripts": {
|
|
22
|
-
"build": "npm-run-all clean --parallel build:code",
|
|
23
|
-
"build:code": "rollup -c",
|
|
24
|
-
"build:dev": "rollup -c rollup.config.dev.mjs",
|
|
25
|
-
"build:types": "run-p build:types:server build:types:admin",
|
|
26
|
-
"build:types:server": "tsc -p server/tsconfig.build.json ",
|
|
27
|
-
"build:types:admin": "tsc -p admin/tsconfig.build.json ",
|
|
28
|
-
"clean": "rimraf ./dist",
|
|
29
|
-
"lint": "eslint .",
|
|
30
|
-
"test:front": "cross-env IS_EE=true jest --config ./jest.config.front.js",
|
|
31
|
-
"test:ts:front": "tsc -p admin/tsconfig.json",
|
|
32
|
-
"test:unit": "jest",
|
|
33
|
-
"test:unit:watch": "jest --watch",
|
|
34
|
-
"watch": "rollup -c -w",
|
|
35
|
-
"dev": "NODE_ENV=development DEBUG=true rollup -c rollup.config.dev.mjs -w",
|
|
36
|
-
"test:debug": "NODE_ENV=development DEBUG=true node test-debug.js"
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
"strapi",
|
|
40
|
-
"plugin"
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
"
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
"url": "https://github.com/magdazelena/primer
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
},
|
|
59
|
-
"
|
|
60
|
-
|
|
61
|
-
"@
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
"@
|
|
65
|
-
"@
|
|
66
|
-
"@
|
|
67
|
-
"@
|
|
68
|
-
"@rollup/plugin-
|
|
69
|
-
"@
|
|
70
|
-
"@
|
|
71
|
-
"@
|
|
72
|
-
"@
|
|
73
|
-
"@
|
|
74
|
-
"@
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
"
|
|
85
|
-
"
|
|
86
|
-
},
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
"
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
"
|
|
95
|
-
"
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
"
|
|
99
|
-
"
|
|
100
|
-
"
|
|
101
|
-
|
|
102
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "@primershop/strapi-plugin-status-manager",
|
|
3
|
+
"version": "0.0.8",
|
|
4
|
+
"description": "Enables more status variations for Strapi (v0.0.8)",
|
|
5
|
+
"exports": {
|
|
6
|
+
"./strapi-admin": {
|
|
7
|
+
"import": "./dist/admin/index.mjs",
|
|
8
|
+
"require": "./dist/admin/index.js",
|
|
9
|
+
"default": "./dist/admin/index.js"
|
|
10
|
+
},
|
|
11
|
+
"./strapi-server": {
|
|
12
|
+
"import": "./dist/server/index.mjs",
|
|
13
|
+
"require": "./dist/server/index.js",
|
|
14
|
+
"default": "./dist/server/index.js"
|
|
15
|
+
},
|
|
16
|
+
"./package.json": "./package.json"
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"dist/"
|
|
20
|
+
],
|
|
21
|
+
"scripts": {
|
|
22
|
+
"build": "npm-run-all clean --parallel build:code",
|
|
23
|
+
"build:code": "rollup -c",
|
|
24
|
+
"build:dev": "rollup -c rollup.config.dev.mjs",
|
|
25
|
+
"build:types": "run-p build:types:server build:types:admin",
|
|
26
|
+
"build:types:server": "tsc -p server/tsconfig.build.json ",
|
|
27
|
+
"build:types:admin": "tsc -p admin/tsconfig.build.json ",
|
|
28
|
+
"clean": "rimraf ./dist",
|
|
29
|
+
"lint": "eslint .",
|
|
30
|
+
"test:front": "cross-env IS_EE=true jest --config ./jest.config.front.js",
|
|
31
|
+
"test:ts:front": "tsc -p admin/tsconfig.json",
|
|
32
|
+
"test:unit": "jest",
|
|
33
|
+
"test:unit:watch": "jest --watch",
|
|
34
|
+
"watch": "rollup -c -w",
|
|
35
|
+
"dev": "NODE_ENV=development DEBUG=true rollup -c rollup.config.dev.mjs -w",
|
|
36
|
+
"test:debug": "NODE_ENV=development DEBUG=true node test-debug.js",
|
|
37
|
+
"deploy": "node ../../scripts/plugin-deploy.js strapi-plugin-status-manager",
|
|
38
|
+
"deploy:patch": "node ../../scripts/plugin-deploy.js strapi-plugin-status-manager patch",
|
|
39
|
+
"deploy:minor": "node ../../scripts/plugin-deploy.js strapi-plugin-status-manager minor",
|
|
40
|
+
"deploy:major": "node ../../scripts/plugin-deploy.js strapi-plugin-status-manager major"
|
|
41
|
+
},
|
|
42
|
+
"keywords": [
|
|
43
|
+
"strapi",
|
|
44
|
+
"plugin",
|
|
45
|
+
"strapi-plugin",
|
|
46
|
+
"status",
|
|
47
|
+
"manager"
|
|
48
|
+
],
|
|
49
|
+
"author": "Magda Odrowaz-Zelezik <magda.zelezik@gmail.com>",
|
|
50
|
+
"license": "MIT",
|
|
51
|
+
"repository": {
|
|
52
|
+
"type": "git",
|
|
53
|
+
"url": "https://github.com/magdazelena/primer.git",
|
|
54
|
+
"directory": "packages/strapi-plugin-status-manager"
|
|
55
|
+
},
|
|
56
|
+
"bugs": {
|
|
57
|
+
"url": "https://github.com/magdazelena/primer/issues"
|
|
58
|
+
},
|
|
59
|
+
"homepage": "https://github.com/magdazelena/primer/tree/main/packages/strapi-plugin-status-manager#readme",
|
|
60
|
+
"peerDependencies": {
|
|
61
|
+
"@strapi/strapi": "^5.29.0"
|
|
62
|
+
},
|
|
63
|
+
"devDependencies": {
|
|
64
|
+
"@atlaskit/pragmatic-drag-and-drop": "^1.7.7",
|
|
65
|
+
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.0.3",
|
|
66
|
+
"@eslint/eslintrc": "^3.3.1",
|
|
67
|
+
"@eslint/js": "^9.35.0",
|
|
68
|
+
"@rollup/plugin-commonjs": "^29.0.0",
|
|
69
|
+
"@rollup/plugin-dynamic-import-vars": "^2.1.5",
|
|
70
|
+
"@rollup/plugin-json": "^6.1.0",
|
|
71
|
+
"@rollup/plugin-node-resolve": "^16.0.1",
|
|
72
|
+
"@rollup/plugin-swc": "^0.4.0",
|
|
73
|
+
"@strapi/admin": "^5.29.0",
|
|
74
|
+
"@strapi/content-manager": "^5.29.0",
|
|
75
|
+
"@strapi/types": "^5.29.0",
|
|
76
|
+
"@types/react": "^18.3.1",
|
|
77
|
+
"@types/react-dom": "^18.3.1",
|
|
78
|
+
"@types/node": "^25.0.2",
|
|
79
|
+
"cross-env": "^10.0.0",
|
|
80
|
+
"eslint": "9.39.2",
|
|
81
|
+
"jest": "^30.2.0",
|
|
82
|
+
"npm-run-all": "^4.1.5",
|
|
83
|
+
"rimraf": "^6.0.1",
|
|
84
|
+
"rollup": "^4.52.4",
|
|
85
|
+
"typescript": "^5.3.3"
|
|
86
|
+
},
|
|
87
|
+
"engines": {
|
|
88
|
+
"node": ">=18.0.0",
|
|
89
|
+
"npm": ">=6.0.0"
|
|
90
|
+
},
|
|
91
|
+
"strapi": {
|
|
92
|
+
"kind": "plugin",
|
|
93
|
+
"name": "primershop-status-manager",
|
|
94
|
+
"displayName": "Status Manager",
|
|
95
|
+
"description": "Manages content statuses (v0.0.8)"
|
|
96
|
+
},
|
|
97
|
+
"dependencies": {
|
|
98
|
+
"@strapi/design-system": "^2.0.0-rc.27",
|
|
99
|
+
"@strapi/icons": "^2.0.0-rc.27",
|
|
100
|
+
"@strapi/utils": "^5.29.0",
|
|
101
|
+
"react": "18.3.1",
|
|
102
|
+
"react-dom": "18.3.1",
|
|
103
|
+
"react-router-dom": "6.22.3",
|
|
104
|
+
"styled-components": "^6.1.19"
|
|
105
|
+
}
|
|
106
|
+
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var pluginId = require('../pluginId.js');
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* @type {import('react').FC<{ setPlugin: (id: string) => void }>}
|
|
8
|
-
*/ const Initializer = ({ setPlugin })=>{
|
|
9
|
-
const ref = React.useRef(setPlugin);
|
|
10
|
-
React.useEffect(()=>{
|
|
11
|
-
ref.current(pluginId.PLUGIN_ID);
|
|
12
|
-
}, []);
|
|
13
|
-
return null;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
exports.Initializer = Initializer;
|
|
17
|
-
//# sourceMappingURL=Initializer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Initializer.js","sources":["../../../admin/src/components/Initializer.tsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\r\n\r\nimport { PLUGIN_ID } from \"../pluginId\";\r\n\r\n/**\r\n * @type {import('react').FC<{ setPlugin: (id: string) => void }>}\r\n */\r\nconst Initializer = ({ setPlugin }: { setPlugin: (id: string) => void }) => {\r\n const ref = useRef(setPlugin);\r\n\r\n useEffect(() => {\r\n ref.current(PLUGIN_ID);\r\n }, []);\r\n\r\n return null;\r\n};\r\n\r\nexport { Initializer };\r\n"],"names":["Initializer","setPlugin","ref","useRef","useEffect","current","PLUGIN_ID"],"mappings":";;;;;AAIA;;AAEC,IACD,MAAMA,WAAAA,GAAc,CAAC,EAAEC,SAAS,EAAuC,GAAA;AACrE,IAAA,MAAMC,MAAMC,YAAAA,CAAOF,SAAAA,CAAAA;IAEnBG,eAAAA,CAAU,IAAA;AACRF,QAAAA,GAAAA,CAAIG,OAAO,CAACC,kBAAAA,CAAAA;AACd,IAAA,CAAA,EAAG,EAAE,CAAA;IAEL,OAAO,IAAA;AACT;;;;"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { useRef, useEffect } from 'react';
|
|
2
|
-
import { PLUGIN_ID } from '../pluginId.mjs';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @type {import('react').FC<{ setPlugin: (id: string) => void }>}
|
|
6
|
-
*/ const Initializer = ({ setPlugin })=>{
|
|
7
|
-
const ref = useRef(setPlugin);
|
|
8
|
-
useEffect(()=>{
|
|
9
|
-
ref.current(PLUGIN_ID);
|
|
10
|
-
}, []);
|
|
11
|
-
return null;
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
export { Initializer };
|
|
15
|
-
//# sourceMappingURL=Initializer.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Initializer.mjs","sources":["../../../admin/src/components/Initializer.tsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\r\n\r\nimport { PLUGIN_ID } from \"../pluginId\";\r\n\r\n/**\r\n * @type {import('react').FC<{ setPlugin: (id: string) => void }>}\r\n */\r\nconst Initializer = ({ setPlugin }: { setPlugin: (id: string) => void }) => {\r\n const ref = useRef(setPlugin);\r\n\r\n useEffect(() => {\r\n ref.current(PLUGIN_ID);\r\n }, []);\r\n\r\n return null;\r\n};\r\n\r\nexport { Initializer };\r\n"],"names":["Initializer","setPlugin","ref","useRef","useEffect","current","PLUGIN_ID"],"mappings":";;;AAIA;;AAEC,IACD,MAAMA,WAAAA,GAAc,CAAC,EAAEC,SAAS,EAAuC,GAAA;AACrE,IAAA,MAAMC,MAAMC,MAAAA,CAAOF,SAAAA,CAAAA;IAEnBG,SAAAA,CAAU,IAAA;AACRF,QAAAA,GAAAA,CAAIG,OAAO,CAACC,SAAAA,CAAAA;AACd,IAAA,CAAA,EAAG,EAAE,CAAA;IAEL,OAAO,IAAA;AACT;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PluginIcon.js","sources":["../../../admin/src/components/PluginIcon.tsx"],"sourcesContent":["import { CheckCircle } from \"@strapi/icons\";\r\n\r\nconst PluginIcon = () => <CheckCircle />;\r\n\r\nexport { PluginIcon };\r\n"],"names":["PluginIcon","_jsx","CheckCircle"],"mappings":";;;;;AAEA,MAAMA,UAAAA,GAAa,kBAAMC,cAAA,CAACC,iBAAAA,EAAAA,EAAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PluginIcon.mjs","sources":["../../../admin/src/components/PluginIcon.tsx"],"sourcesContent":["import { CheckCircle } from \"@strapi/icons\";\r\n\r\nconst PluginIcon = () => <CheckCircle />;\r\n\r\nexport { PluginIcon };\r\n"],"names":["PluginIcon","_jsx","CheckCircle"],"mappings":";;;AAEA,MAAMA,UAAAA,GAAa,kBAAMC,GAAA,CAACC,WAAAA,EAAAA,EAAAA;;;;"}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
-
var React = require('react');
|
|
5
|
-
var designSystem = require('@strapi/design-system');
|
|
6
|
-
var admin = require('@strapi/strapi/admin');
|
|
7
|
-
|
|
8
|
-
const ProductStatusField = ()=>{
|
|
9
|
-
const { contentType, id } = admin.unstable_useContentManagerContext();
|
|
10
|
-
const [statuses, setStatuses] = React.useState([]);
|
|
11
|
-
const [currentStatus, setCurrentStatus] = React.useState("");
|
|
12
|
-
const [message, setMessage] = React.useState("");
|
|
13
|
-
const { get, put } = admin.useFetchClient();
|
|
14
|
-
const handleStatusChange = React.useCallback(async (newStatus)=>{
|
|
15
|
-
if (!id) {
|
|
16
|
-
setMessage("Save the product first and then change the status");
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
try {
|
|
20
|
-
await put(`primershop-status-manager/content-status`, {
|
|
21
|
-
contentTypeUid: "api::product.product",
|
|
22
|
-
contentDocumentId: id,
|
|
23
|
-
statusId: statuses.find((status)=>status.name === newStatus)?.documentId
|
|
24
|
-
});
|
|
25
|
-
setMessage(`Status updated ${currentStatus ? `from ${currentStatus}` : ""} to ${newStatus}`);
|
|
26
|
-
setCurrentStatus(newStatus || "");
|
|
27
|
-
} catch (error) {
|
|
28
|
-
setMessage("Error updating status");
|
|
29
|
-
console.error("Error updating status:", error);
|
|
30
|
-
}
|
|
31
|
-
}, [
|
|
32
|
-
id,
|
|
33
|
-
statuses,
|
|
34
|
-
currentStatus,
|
|
35
|
-
put
|
|
36
|
-
]);
|
|
37
|
-
React.useEffect(()=>{
|
|
38
|
-
async function fetchCurrentStatus() {
|
|
39
|
-
try {
|
|
40
|
-
const { data: productData } = await get(`primershop-status-manager/content-status?contentDocumentId=${id}&contentTypeUid=api::product.product`);
|
|
41
|
-
const status = productData?.status;
|
|
42
|
-
if (status && status.name) return setCurrentStatus(status.name);
|
|
43
|
-
if (statuses.length) return handleStatusChange(statuses[0].name);
|
|
44
|
-
} catch (error) {
|
|
45
|
-
console.error("Error fetching product status:", error);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
if (id && !currentStatus.length) fetchCurrentStatus();
|
|
49
|
-
if (!id && statuses.length) setCurrentStatus(statuses[0].name);
|
|
50
|
-
}, [
|
|
51
|
-
id,
|
|
52
|
-
statuses,
|
|
53
|
-
get
|
|
54
|
-
]);
|
|
55
|
-
React.useEffect(()=>{
|
|
56
|
-
async function fetchStatuses() {
|
|
57
|
-
try {
|
|
58
|
-
const { data } = await get("primershop-status-manager/statuses");
|
|
59
|
-
setStatuses(data);
|
|
60
|
-
} catch (error) {
|
|
61
|
-
console.error("Error fetching statuses:", error);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
fetchStatuses();
|
|
65
|
-
}, [
|
|
66
|
-
get
|
|
67
|
-
]);
|
|
68
|
-
return /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
69
|
-
direction: "column",
|
|
70
|
-
justifyContent: "center",
|
|
71
|
-
alignItems: "stretch",
|
|
72
|
-
width: "100%",
|
|
73
|
-
children: [
|
|
74
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
75
|
-
padding: 2,
|
|
76
|
-
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Typography, {
|
|
77
|
-
variant: "sigma",
|
|
78
|
-
children: [
|
|
79
|
-
contentType?.info.displayName,
|
|
80
|
-
" status"
|
|
81
|
-
]
|
|
82
|
-
})
|
|
83
|
-
}),
|
|
84
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.SingleSelect, {
|
|
85
|
-
placeholder: currentStatus,
|
|
86
|
-
onChange: handleStatusChange,
|
|
87
|
-
children: statuses.map((status)=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.SingleSelectOption, {
|
|
88
|
-
value: status.name,
|
|
89
|
-
children: status.name
|
|
90
|
-
}, status.documentId))
|
|
91
|
-
}),
|
|
92
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
93
|
-
padding: 2,
|
|
94
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
95
|
-
variant: "sigma",
|
|
96
|
-
children: message
|
|
97
|
-
})
|
|
98
|
-
})
|
|
99
|
-
]
|
|
100
|
-
});
|
|
101
|
-
};
|
|
102
|
-
|
|
103
|
-
exports.ProductStatusField = ProductStatusField;
|
|
104
|
-
//# sourceMappingURL=ProductStatusField.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProductStatusField.js","sources":["../../../admin/src/components/ProductStatusField.tsx"],"sourcesContent":["import React, { useEffect, useState, useCallback } from \"react\";\r\n\r\nimport {\r\n SingleSelect,\r\n SingleSelectOption,\r\n Box,\r\n Typography,\r\n Flex,\r\n} from \"@strapi/design-system\";\r\nimport {\r\n useFetchClient,\r\n unstable_useContentManagerContext as useContentManagerContext,\r\n} from \"@strapi/strapi/admin\";\r\n\r\ninterface Status {\r\n documentId: string;\r\n name: string;\r\n}\r\n\r\nconst ProductStatusField = () => {\r\n const { contentType, id } = useContentManagerContext();\r\n const [statuses, setStatuses] = useState<Status[]>([]);\r\n const [currentStatus, setCurrentStatus] = useState(\"\");\r\n const [message, setMessage] = useState(\"\");\r\n const { get, put } = useFetchClient();\r\n\r\n const handleStatusChange = useCallback(\r\n async (newStatus: string) => {\r\n if (!id) {\r\n setMessage(\"Save the product first and then change the status\");\r\n return;\r\n }\r\n try {\r\n await put(`primershop-status-manager/content-status`, {\r\n contentTypeUid: \"api::product.product\",\r\n contentDocumentId: id,\r\n statusId: statuses.find((status) => status.name === newStatus)\r\n ?.documentId,\r\n });\r\n setMessage(\r\n `Status updated ${currentStatus ? `from ${currentStatus}` : \"\"} to ${newStatus}`\r\n );\r\n setCurrentStatus(newStatus || \"\");\r\n } catch (error) {\r\n setMessage(\"Error updating status\");\r\n console.error(\"Error updating status:\", error);\r\n }\r\n },\r\n [id, statuses, currentStatus, put]\r\n );\r\n\r\n useEffect(() => {\r\n async function fetchCurrentStatus() {\r\n try {\r\n const { data: productData } = await get(\r\n `primershop-status-manager/content-status?contentDocumentId=${id}&contentTypeUid=api::product.product`\r\n );\r\n const status = productData?.status;\r\n if (status && status.name) return setCurrentStatus(status.name);\r\n if (statuses.length) return handleStatusChange(statuses[0].name);\r\n } catch (error) {\r\n console.error(\"Error fetching product status:\", error);\r\n }\r\n }\r\n if (id && !currentStatus.length) fetchCurrentStatus();\r\n if (!id && statuses.length) setCurrentStatus(statuses[0].name);\r\n }, [id, statuses, get]);\r\n\r\n useEffect(() => {\r\n async function fetchStatuses() {\r\n try {\r\n const { data } = await get(\"primershop-status-manager/statuses\");\r\n setStatuses(data);\r\n } catch (error) {\r\n console.error(\"Error fetching statuses:\", error);\r\n }\r\n }\r\n fetchStatuses();\r\n }, [get]);\r\n\r\n return (\r\n <Flex\r\n direction=\"column\"\r\n justifyContent=\"center\"\r\n alignItems=\"stretch\"\r\n width=\"100%\"\r\n >\r\n <Box padding={2}>\r\n <Typography variant=\"sigma\">\r\n {contentType?.info.displayName} status\r\n </Typography>\r\n </Box>\r\n <SingleSelect placeholder={currentStatus} onChange={handleStatusChange}>\r\n {statuses.map((status) => (\r\n <SingleSelectOption key={status.documentId} value={status.name}>\r\n {status.name}\r\n </SingleSelectOption>\r\n ))}\r\n </SingleSelect>\r\n <Box padding={2}>\r\n <Typography variant=\"sigma\">{message}</Typography>\r\n </Box>\r\n </Flex>\r\n );\r\n};\r\n\r\nexport { ProductStatusField };\r\n"],"names":["ProductStatusField","contentType","id","useContentManagerContext","statuses","setStatuses","useState","currentStatus","setCurrentStatus","message","setMessage","get","put","useFetchClient","handleStatusChange","useCallback","newStatus","contentTypeUid","contentDocumentId","statusId","find","status","name","documentId","error","console","useEffect","fetchCurrentStatus","data","productData","length","fetchStatuses","_jsxs","Flex","direction","justifyContent","alignItems","width","_jsx","Box","padding","Typography","variant","info","displayName","SingleSelect","placeholder","onChange","map","SingleSelectOption","value"],"mappings":"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"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { useState, useCallback, useEffect } from 'react';
|
|
3
|
-
import { Flex, Box, Typography, SingleSelect, SingleSelectOption } from '@strapi/design-system';
|
|
4
|
-
import { unstable_useContentManagerContext, useFetchClient } from '@strapi/strapi/admin';
|
|
5
|
-
|
|
6
|
-
const ProductStatusField = ()=>{
|
|
7
|
-
const { contentType, id } = unstable_useContentManagerContext();
|
|
8
|
-
const [statuses, setStatuses] = useState([]);
|
|
9
|
-
const [currentStatus, setCurrentStatus] = useState("");
|
|
10
|
-
const [message, setMessage] = useState("");
|
|
11
|
-
const { get, put } = useFetchClient();
|
|
12
|
-
const handleStatusChange = useCallback(async (newStatus)=>{
|
|
13
|
-
if (!id) {
|
|
14
|
-
setMessage("Save the product first and then change the status");
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
try {
|
|
18
|
-
await put(`primershop-status-manager/content-status`, {
|
|
19
|
-
contentTypeUid: "api::product.product",
|
|
20
|
-
contentDocumentId: id,
|
|
21
|
-
statusId: statuses.find((status)=>status.name === newStatus)?.documentId
|
|
22
|
-
});
|
|
23
|
-
setMessage(`Status updated ${currentStatus ? `from ${currentStatus}` : ""} to ${newStatus}`);
|
|
24
|
-
setCurrentStatus(newStatus || "");
|
|
25
|
-
} catch (error) {
|
|
26
|
-
setMessage("Error updating status");
|
|
27
|
-
console.error("Error updating status:", error);
|
|
28
|
-
}
|
|
29
|
-
}, [
|
|
30
|
-
id,
|
|
31
|
-
statuses,
|
|
32
|
-
currentStatus,
|
|
33
|
-
put
|
|
34
|
-
]);
|
|
35
|
-
useEffect(()=>{
|
|
36
|
-
async function fetchCurrentStatus() {
|
|
37
|
-
try {
|
|
38
|
-
const { data: productData } = await get(`primershop-status-manager/content-status?contentDocumentId=${id}&contentTypeUid=api::product.product`);
|
|
39
|
-
const status = productData?.status;
|
|
40
|
-
if (status && status.name) return setCurrentStatus(status.name);
|
|
41
|
-
if (statuses.length) return handleStatusChange(statuses[0].name);
|
|
42
|
-
} catch (error) {
|
|
43
|
-
console.error("Error fetching product status:", error);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
if (id && !currentStatus.length) fetchCurrentStatus();
|
|
47
|
-
if (!id && statuses.length) setCurrentStatus(statuses[0].name);
|
|
48
|
-
}, [
|
|
49
|
-
id,
|
|
50
|
-
statuses,
|
|
51
|
-
get
|
|
52
|
-
]);
|
|
53
|
-
useEffect(()=>{
|
|
54
|
-
async function fetchStatuses() {
|
|
55
|
-
try {
|
|
56
|
-
const { data } = await get("primershop-status-manager/statuses");
|
|
57
|
-
setStatuses(data);
|
|
58
|
-
} catch (error) {
|
|
59
|
-
console.error("Error fetching statuses:", error);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
fetchStatuses();
|
|
63
|
-
}, [
|
|
64
|
-
get
|
|
65
|
-
]);
|
|
66
|
-
return /*#__PURE__*/ jsxs(Flex, {
|
|
67
|
-
direction: "column",
|
|
68
|
-
justifyContent: "center",
|
|
69
|
-
alignItems: "stretch",
|
|
70
|
-
width: "100%",
|
|
71
|
-
children: [
|
|
72
|
-
/*#__PURE__*/ jsx(Box, {
|
|
73
|
-
padding: 2,
|
|
74
|
-
children: /*#__PURE__*/ jsxs(Typography, {
|
|
75
|
-
variant: "sigma",
|
|
76
|
-
children: [
|
|
77
|
-
contentType?.info.displayName,
|
|
78
|
-
" status"
|
|
79
|
-
]
|
|
80
|
-
})
|
|
81
|
-
}),
|
|
82
|
-
/*#__PURE__*/ jsx(SingleSelect, {
|
|
83
|
-
placeholder: currentStatus,
|
|
84
|
-
onChange: handleStatusChange,
|
|
85
|
-
children: statuses.map((status)=>/*#__PURE__*/ jsx(SingleSelectOption, {
|
|
86
|
-
value: status.name,
|
|
87
|
-
children: status.name
|
|
88
|
-
}, status.documentId))
|
|
89
|
-
}),
|
|
90
|
-
/*#__PURE__*/ jsx(Box, {
|
|
91
|
-
padding: 2,
|
|
92
|
-
children: /*#__PURE__*/ jsx(Typography, {
|
|
93
|
-
variant: "sigma",
|
|
94
|
-
children: message
|
|
95
|
-
})
|
|
96
|
-
})
|
|
97
|
-
]
|
|
98
|
-
});
|
|
99
|
-
};
|
|
100
|
-
|
|
101
|
-
export { ProductStatusField };
|
|
102
|
-
//# sourceMappingURL=ProductStatusField.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProductStatusField.mjs","sources":["../../../admin/src/components/ProductStatusField.tsx"],"sourcesContent":["import React, { useEffect, useState, useCallback } from \"react\";\r\n\r\nimport {\r\n SingleSelect,\r\n SingleSelectOption,\r\n Box,\r\n Typography,\r\n Flex,\r\n} from \"@strapi/design-system\";\r\nimport {\r\n useFetchClient,\r\n unstable_useContentManagerContext as useContentManagerContext,\r\n} from \"@strapi/strapi/admin\";\r\n\r\ninterface Status {\r\n documentId: string;\r\n name: string;\r\n}\r\n\r\nconst ProductStatusField = () => {\r\n const { contentType, id } = useContentManagerContext();\r\n const [statuses, setStatuses] = useState<Status[]>([]);\r\n const [currentStatus, setCurrentStatus] = useState(\"\");\r\n const [message, setMessage] = useState(\"\");\r\n const { get, put } = useFetchClient();\r\n\r\n const handleStatusChange = useCallback(\r\n async (newStatus: string) => {\r\n if (!id) {\r\n setMessage(\"Save the product first and then change the status\");\r\n return;\r\n }\r\n try {\r\n await put(`primershop-status-manager/content-status`, {\r\n contentTypeUid: \"api::product.product\",\r\n contentDocumentId: id,\r\n statusId: statuses.find((status) => status.name === newStatus)\r\n ?.documentId,\r\n });\r\n setMessage(\r\n `Status updated ${currentStatus ? `from ${currentStatus}` : \"\"} to ${newStatus}`\r\n );\r\n setCurrentStatus(newStatus || \"\");\r\n } catch (error) {\r\n setMessage(\"Error updating status\");\r\n console.error(\"Error updating status:\", error);\r\n }\r\n },\r\n [id, statuses, currentStatus, put]\r\n );\r\n\r\n useEffect(() => {\r\n async function fetchCurrentStatus() {\r\n try {\r\n const { data: productData } = await get(\r\n `primershop-status-manager/content-status?contentDocumentId=${id}&contentTypeUid=api::product.product`\r\n );\r\n const status = productData?.status;\r\n if (status && status.name) return setCurrentStatus(status.name);\r\n if (statuses.length) return handleStatusChange(statuses[0].name);\r\n } catch (error) {\r\n console.error(\"Error fetching product status:\", error);\r\n }\r\n }\r\n if (id && !currentStatus.length) fetchCurrentStatus();\r\n if (!id && statuses.length) setCurrentStatus(statuses[0].name);\r\n }, [id, statuses, get]);\r\n\r\n useEffect(() => {\r\n async function fetchStatuses() {\r\n try {\r\n const { data } = await get(\"primershop-status-manager/statuses\");\r\n setStatuses(data);\r\n } catch (error) {\r\n console.error(\"Error fetching statuses:\", error);\r\n }\r\n }\r\n fetchStatuses();\r\n }, [get]);\r\n\r\n return (\r\n <Flex\r\n direction=\"column\"\r\n justifyContent=\"center\"\r\n alignItems=\"stretch\"\r\n width=\"100%\"\r\n >\r\n <Box padding={2}>\r\n <Typography variant=\"sigma\">\r\n {contentType?.info.displayName} status\r\n </Typography>\r\n </Box>\r\n <SingleSelect placeholder={currentStatus} onChange={handleStatusChange}>\r\n {statuses.map((status) => (\r\n <SingleSelectOption key={status.documentId} value={status.name}>\r\n {status.name}\r\n </SingleSelectOption>\r\n ))}\r\n </SingleSelect>\r\n <Box padding={2}>\r\n <Typography variant=\"sigma\">{message}</Typography>\r\n </Box>\r\n </Flex>\r\n );\r\n};\r\n\r\nexport { ProductStatusField };\r\n"],"names":["ProductStatusField","contentType","id","useContentManagerContext","statuses","setStatuses","useState","currentStatus","setCurrentStatus","message","setMessage","get","put","useFetchClient","handleStatusChange","useCallback","newStatus","contentTypeUid","contentDocumentId","statusId","find","status","name","documentId","error","console","useEffect","fetchCurrentStatus","data","productData","length","fetchStatuses","_jsxs","Flex","direction","justifyContent","alignItems","width","_jsx","Box","padding","Typography","variant","info","displayName","SingleSelect","placeholder","onChange","map","SingleSelectOption","value"],"mappings":"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"}
|