Add checkbox-list custom field plugin to Strapi
- Introduced a new custom field type 'checkbox-list' with associated input component. - Updated package.json to reflect the new plugin name. - Added necessary server-side files for plugin registration, including bootstrap, destroy, and service methods. - Updated package-lock.json to include new dependencies and versions. - Enhanced admin interface with custom field registration and input handling.
This commit is contained in:
6
server/src/bootstrap.js
vendored
Normal file
6
server/src/bootstrap.js
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const bootstrap = ({ strapi }) => {
|
||||
// bootstrap phase
|
||||
};
|
||||
exports.default = bootstrap;
|
||||
6
server/src/config/index.js
Normal file
6
server/src/config/index.js
Normal file
@@ -0,0 +1,6 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = {
|
||||
default: {},
|
||||
validator() { },
|
||||
};
|
||||
3
server/src/content-types/index.js
Normal file
3
server/src/content-types/index.js
Normal file
@@ -0,0 +1,3 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = {};
|
||||
12
server/src/controllers/controller.js
Normal file
12
server/src/controllers/controller.js
Normal file
@@ -0,0 +1,12 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const controller = ({ strapi }) => ({
|
||||
index(ctx) {
|
||||
ctx.body = strapi
|
||||
.plugin('strapi-plugin-checkbox-list')
|
||||
// the name of the service file & the method.
|
||||
.service('service')
|
||||
.getWelcomeMessage();
|
||||
},
|
||||
});
|
||||
exports.default = controller;
|
||||
9
server/src/controllers/index.js
Normal file
9
server/src/controllers/index.js
Normal file
@@ -0,0 +1,9 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const controller_1 = __importDefault(require("./controller"));
|
||||
exports.default = {
|
||||
controller: controller_1.default,
|
||||
};
|
||||
6
server/src/destroy.js
Normal file
6
server/src/destroy.js
Normal file
@@ -0,0 +1,6 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const destroy = ({ strapi }) => {
|
||||
// destroy phase
|
||||
};
|
||||
exports.default = destroy;
|
||||
33
server/src/index.js
Normal file
33
server/src/index.js
Normal file
@@ -0,0 +1,33 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
/**
|
||||
* Application methods
|
||||
*/
|
||||
const bootstrap_1 = __importDefault(require("./bootstrap"));
|
||||
const destroy_1 = __importDefault(require("./destroy"));
|
||||
const register_1 = __importDefault(require("./register"));
|
||||
/**
|
||||
* Plugin server methods
|
||||
*/
|
||||
const config_1 = __importDefault(require("./config"));
|
||||
const content_types_1 = __importDefault(require("./content-types"));
|
||||
const controllers_1 = __importDefault(require("./controllers"));
|
||||
const middlewares_1 = __importDefault(require("./middlewares"));
|
||||
const policies_1 = __importDefault(require("./policies"));
|
||||
const routes_1 = __importDefault(require("./routes"));
|
||||
const services_1 = __importDefault(require("./services"));
|
||||
exports.default = {
|
||||
register: register_1.default,
|
||||
bootstrap: bootstrap_1.default,
|
||||
destroy: destroy_1.default,
|
||||
config: config_1.default,
|
||||
controllers: controllers_1.default,
|
||||
routes: routes_1.default,
|
||||
services: services_1.default,
|
||||
contentTypes: content_types_1.default,
|
||||
policies: policies_1.default,
|
||||
middlewares: middlewares_1.default,
|
||||
};
|
||||
3
server/src/middlewares/index.js
Normal file
3
server/src/middlewares/index.js
Normal file
@@ -0,0 +1,3 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = {};
|
||||
3
server/src/policies/index.js
Normal file
3
server/src/policies/index.js
Normal file
@@ -0,0 +1,3 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = {};
|
||||
11
server/src/register.js
Normal file
11
server/src/register.js
Normal file
@@ -0,0 +1,11 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const register = ({ strapi }) => {
|
||||
// register phase
|
||||
strapi.customFields.register({
|
||||
name: 'checkbox-list',
|
||||
plugin: 'checkbox-list',
|
||||
type: 'json',
|
||||
});
|
||||
};
|
||||
exports.default = register;
|
||||
@@ -2,6 +2,11 @@ import type { Core } from '@strapi/strapi';
|
||||
|
||||
const register = ({ strapi }: { strapi: Core.Strapi }) => {
|
||||
// register phase
|
||||
strapi.customFields.register({
|
||||
name: 'checkbox-list',
|
||||
plugin: 'checkbox-list',
|
||||
type: 'json',
|
||||
});
|
||||
};
|
||||
|
||||
export default register;
|
||||
|
||||
6
server/src/routes/admin/index.js
Normal file
6
server/src/routes/admin/index.js
Normal file
@@ -0,0 +1,6 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = () => ({
|
||||
type: 'admin',
|
||||
routes: [],
|
||||
});
|
||||
16
server/src/routes/content-api/index.js
Normal file
16
server/src/routes/content-api/index.js
Normal file
@@ -0,0 +1,16 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.default = () => ({
|
||||
type: 'content-api',
|
||||
routes: [
|
||||
{
|
||||
method: 'GET',
|
||||
path: '/',
|
||||
// name of the controller file & the method.
|
||||
handler: 'controller.index',
|
||||
config: {
|
||||
policies: [],
|
||||
},
|
||||
},
|
||||
],
|
||||
});
|
||||
12
server/src/routes/index.js
Normal file
12
server/src/routes/index.js
Normal file
@@ -0,0 +1,12 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const content_api_1 = __importDefault(require("./content-api"));
|
||||
const admin_1 = __importDefault(require("./admin"));
|
||||
const routes = {
|
||||
'content-api': content_api_1.default,
|
||||
admin: admin_1.default,
|
||||
};
|
||||
exports.default = routes;
|
||||
9
server/src/services/index.js
Normal file
9
server/src/services/index.js
Normal file
@@ -0,0 +1,9 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const service_1 = __importDefault(require("./service"));
|
||||
exports.default = {
|
||||
service: service_1.default,
|
||||
};
|
||||
8
server/src/services/service.js
Normal file
8
server/src/services/service.js
Normal file
@@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const service = ({ strapi }) => ({
|
||||
getWelcomeMessage() {
|
||||
return 'Welcome to Strapi 🚀';
|
||||
},
|
||||
});
|
||||
exports.default = service;
|
||||
Reference in New Issue
Block a user