@dani-builder/strapi-plugin-builder 0.10.0 → 0.12.0
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/server/src/components/blocks/inquiry-form.json +7 -0
- package/dist/server/src/config/builder.d.ts +4 -2
- package/dist/server/src/config/builder.d.ts.map +1 -1
- package/dist/server/src/config/builder.js.map +1 -1
- package/dist/server/src/config/index.d.ts +25 -0
- package/dist/server/src/config/index.d.ts.map +1 -1
- package/dist/server/src/config/index.js +95 -1
- package/dist/server/src/config/index.js.map +1 -1
- package/dist/server/src/content-type-availability.d.ts +19 -0
- package/dist/server/src/content-type-availability.d.ts.map +1 -0
- package/dist/server/src/content-type-availability.js +61 -0
- package/dist/server/src/content-type-availability.js.map +1 -0
- package/dist/server/src/content-type-config.d.ts +6 -0
- package/dist/server/src/content-type-config.d.ts.map +1 -0
- package/dist/server/src/content-type-config.js +13 -0
- package/dist/server/src/content-type-config.js.map +1 -0
- package/dist/server/src/content-types/category/index.d.ts +6 -0
- package/dist/server/src/content-types/category/index.d.ts.map +1 -1
- package/dist/server/src/content-types/category/schema.json +6 -0
- package/dist/server/src/content-types/faq/index.d.ts +1 -0
- package/dist/server/src/content-types/faq/index.d.ts.map +1 -1
- package/dist/server/src/content-types/faq/schema.json +3 -2
- package/dist/server/src/content-types/index.d.ts +32 -0
- package/dist/server/src/content-types/index.d.ts.map +1 -1
- package/dist/server/src/content-types/inquiry/index.d.ts +25 -0
- package/dist/server/src/content-types/inquiry/index.d.ts.map +1 -1
- package/dist/server/src/content-types/inquiry/schema.json +34 -3
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/controllers/index.js +2 -1
- package/dist/server/src/controllers/index.js.map +1 -1
- package/dist/server/src/controllers/inquiry.d.ts +8 -0
- package/dist/server/src/controllers/inquiry.d.ts.map +1 -0
- package/dist/server/src/controllers/inquiry.js +27 -0
- package/dist/server/src/controllers/inquiry.js.map +1 -0
- package/dist/server/src/preview/handler.d.ts +1 -1
- package/dist/server/src/preview/handler.d.ts.map +1 -1
- package/dist/server/src/preview/handler.js +8 -4
- package/dist/server/src/preview/handler.js.map +1 -1
- package/dist/server/src/preview-token.d.ts +1 -4
- package/dist/server/src/preview-token.d.ts.map +1 -1
- package/dist/server/src/preview-token.js +5 -52
- package/dist/server/src/preview-token.js.map +1 -1
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/register.js +23 -0
- package/dist/server/src/register.js.map +1 -1
- package/dist/server/src/routes/content-api.d.ts.map +1 -1
- package/dist/server/src/routes/content-api.js +15 -6
- package/dist/server/src/routes/content-api.js.map +1 -1
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/services/index.js +2 -1
- package/dist/server/src/services/index.js.map +1 -1
- package/dist/server/src/services/inquiry.d.ts +15 -0
- package/dist/server/src/services/inquiry.d.ts.map +1 -0
- package/dist/server/src/services/inquiry.js +137 -0
- package/dist/server/src/services/inquiry.js.map +1 -0
- package/package.json +4 -2
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import type { BuilderPreviewConfig } from './index';
|
|
2
|
-
export type { BuilderPreviewConfig, BuilderPreviewDocument } from './index';
|
|
1
|
+
import type { BuilderContentTypesConfig, BuilderInquiryConfig, BuilderPreviewConfig } from './index';
|
|
2
|
+
export type { BuilderContentTypesConfig, BuilderOptionalContentType, BuilderInquiryConfig, InquiryAttribute, InquirySubmission, BuilderPreviewConfig, BuilderPreviewDocument, } from './index';
|
|
3
3
|
type ConfigValue = Record<string, unknown>;
|
|
4
4
|
export interface BuilderPluginOptions extends ConfigValue {
|
|
5
5
|
preview?: BuilderPreviewConfig | false;
|
|
6
|
+
contentTypes?: BuilderContentTypesConfig;
|
|
7
|
+
inquiry?: BuilderInquiryConfig;
|
|
6
8
|
}
|
|
7
9
|
export interface BuilderPluginConfig {
|
|
8
10
|
enabled: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../../server/src/config/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../../server/src/config/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,yBAAyB,EACzB,0BAA0B,EAC1B,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,SAAS,CAAC;AAEjB,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE3C,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD,OAAO,CAAC,EAAE,oBAAoB,GAAG,KAAK,CAAC;IACvC,YAAY,CAAC,EAAE,yBAAyB,CAAC;IACzC,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE;QACN,qBAAqB,EAAE;YACrB,WAAW,EAAE,OAAO,CAAC;YACrB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SACrC,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAClC,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;IACpE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;CACpD;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,UAAU,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,EAAE,GAAG,EAAE,EAAE,mBAAmB,GAAG,WAAW,CAsCvE;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,mBAAmB,EAC5B,aAAa,CAAC,EAAE,oBAAoB,GACnC,mBAAmB,CAKrB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,GAAG,GACJ,EAAE,mBAAmB,GAAG,uBAAuB,CAoC/C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../server/src/config/builder.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../server/src/config/builder.ts"],"names":[],"mappings":";;AAgDA,sCAsCC;AAED,wCAQC;AAED,gDAsCC;AAxFD,SAAgB,aAAa,CAAC,EAAE,GAAG,EAAuB;IACxD,MAAM,QAAQ,GAAG,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;IAEjC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAEvB,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAE1C,OAAO;QACL,QAAQ,EAAE,QAAQ;QAClB,eAAe,EAAE;YACf,OAAO,EAAE,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC;YACtC,SAAS,EAAE;gBACT,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,GAAG,CAAC,mBAAmB,CAAC;oBACtD,CAAC,CAAC;wBACE,WAAW,EAAE;4BACX,WAAW,EAAE,GAAG,CAAC,mBAAmB,CAAC;4BACrC,eAAe,EAAE,GAAG,CAAC,mBAAmB,CAAC;yBAC1C;qBACF;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,MAAM,EAAE,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC;gBACpC,QAAQ;gBACR,cAAc,EAAE,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACnE,MAAM,EAAE;oBACN,MAAM,EAAE,MAAM;oBACd,yEAAyE;oBACzE,kEAAkE;oBAClE,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;iBACtC;aACF;SACF;QACD,aAAa,EAAE;YACb,MAAM,EAAE,EAAE;YACV,YAAY,EAAE,EAAE;YAChB,MAAM,EAAE,EAAE;SACX;KACF,CAAC;AACJ,CAAC;AAED,SAAgB,cAAc,CAC5B,OAA4B,EAC5B,aAAoC;IAEpC,OAAO;QACL,OAAO,EAAE,IAAI;QACb,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC;AAED,SAAgB,kBAAkB,CAAC,EACjC,GAAG,GACiB;IACpB,MAAM,UAAU,GAAG;QACjB,GAAG,CAAC,aAAa,CAAC;QAClB,GAAG,CAAC,cAAc,CAAC;QACnB,GAAG,CAAC,iBAAiB,CAAC;KACvB;SACE,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAClD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,IAAI,CAAC;YACH,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE,CAAC;iBAClE,IAAI,CAAC;QACV,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO;QACL,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE;YACN,qBAAqB,EAAE;gBACrB,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE;oBACV,aAAa,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;oBACnC,SAAS,EAAE;wBACT,QAAQ;wBACR,OAAO;wBACP,OAAO;wBACP,yBAAyB;wBACzB,GAAG,UAAU;qBACd;oBACD,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;oBACxD,uBAAuB,EAAE,IAAI;iBAC9B;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,32 @@
|
|
|
1
|
+
import type { BuilderContentTypesConfig } from '../content-type-config';
|
|
1
2
|
import type { BlockPopulate } from '../types';
|
|
2
3
|
import type { BuilderPreviewConfig } from '../preview/handler';
|
|
3
4
|
export type { BuilderPreviewConfig, BuilderPreviewDocument, } from '../preview/handler';
|
|
5
|
+
export type { BuilderContentTypesConfig, BuilderOptionalContentType, } from '../content-type-config';
|
|
6
|
+
/** Public scalar fields allowed in an inquiry submission. */
|
|
7
|
+
export interface InquiryAttribute {
|
|
8
|
+
type: 'string' | 'text' | 'email' | 'boolean' | 'integer' | 'enumeration';
|
|
9
|
+
maxLength?: number;
|
|
10
|
+
enum?: string[];
|
|
11
|
+
}
|
|
12
|
+
export interface InquirySubmission extends Readonly<Record<string, unknown>> {
|
|
13
|
+
readonly name: string;
|
|
14
|
+
readonly email?: string;
|
|
15
|
+
readonly phone?: string;
|
|
16
|
+
readonly subject?: string;
|
|
17
|
+
readonly message?: string;
|
|
18
|
+
readonly consent: true;
|
|
19
|
+
readonly consentVersion: string;
|
|
20
|
+
readonly idempotencyKey?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface BuilderInquiryConfig {
|
|
23
|
+
attributes?: Record<string, InquiryAttribute>;
|
|
24
|
+
/** Return false to reject; thrown failures fail closed with a generic 500. */
|
|
25
|
+
validate?: (submission: InquirySubmission) => boolean | void | Promise<boolean | void>;
|
|
26
|
+
}
|
|
4
27
|
export interface BuilderConfig {
|
|
28
|
+
inquiry?: BuilderInquiryConfig;
|
|
29
|
+
contentTypes?: BuilderContentTypesConfig;
|
|
5
30
|
preview?: BuilderPreviewConfig | false;
|
|
6
31
|
blocks: {
|
|
7
32
|
extra: Record<string, BlockPopulate>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/config/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/config/index.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,YAAY,EACV,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AA2B5B,YAAY,EACV,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAEhC,6DAA6D;AAC7D,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,iBAAkB,SAAQ,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC9C,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,CACT,UAAU,EAAE,iBAAiB,KAC1B,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,YAAY,CAAC,EAAE,yBAAyB,CAAC;IACzC,OAAO,CAAC,EAAE,oBAAoB,GAAG,KAAK,CAAC;IACvC,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACrC,eAAe,EAAE,OAAO,CAAC;KAC1B,CAAC;IACF,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC,CAAC;CACpE;AA6ED,QAAA,MAAM,MAAM;eACC,aAAa;qBAUP,OAAO,GAAG,IAAI;CAyQhC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const schema_json_1 = __importDefault(require("../content-types/inquiry/schema.json"));
|
|
6
7
|
const bento_grid_json_1 = __importDefault(require("../components/blocks/bento-grid.json"));
|
|
7
8
|
const content_json_1 = __importDefault(require("../components/blocks/content.json"));
|
|
8
9
|
const cta_json_1 = __importDefault(require("../components/blocks/cta.json"));
|
|
@@ -36,6 +37,7 @@ const slider_item_json_1 = __importDefault(require("../components/shared/slider-
|
|
|
36
37
|
const stat_item_json_1 = __importDefault(require("../components/shared/stat-item.json"));
|
|
37
38
|
const team_member_json_1 = __importDefault(require("../components/shared/team-member.json"));
|
|
38
39
|
const testimonial_item_json_1 = __importDefault(require("../components/shared/testimonial-item.json"));
|
|
40
|
+
const content_type_config_1 = require("../content-type-config");
|
|
39
41
|
const attributeTypes = new Set([
|
|
40
42
|
'biginteger',
|
|
41
43
|
'boolean',
|
|
@@ -93,6 +95,14 @@ const componentSchemas = {
|
|
|
93
95
|
'shared.team-member': team_member_json_1.default,
|
|
94
96
|
'shared.testimonial-item': testimonial_item_json_1.default,
|
|
95
97
|
};
|
|
98
|
+
// Attribute names are restricted to ASCII alphanumerics below. Match lodash's
|
|
99
|
+
// snakeCase word boundaries (including acronym/digit/ordinal boundaries), which
|
|
100
|
+
// Strapi uses to derive scalar database columns, without adding a dependency.
|
|
101
|
+
function inquiryColumnName(name) {
|
|
102
|
+
return (name.match(/[A-Z]?[a-z]+|[A-Z]+(?![a-z])|\d*(?:1ST|2ND|3RD|(?![123])\dTH)(?=\b|[a-z_])|\d*(?:1st|2nd|3rd|(?![123])\dth)(?=\b|[A-Z_])|\d+/g) ?? [])
|
|
103
|
+
.map((word) => word.toLowerCase())
|
|
104
|
+
.join('_');
|
|
105
|
+
}
|
|
96
106
|
function isObject(value) {
|
|
97
107
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
98
108
|
}
|
|
@@ -119,7 +129,19 @@ const config = {
|
|
|
119
129
|
},
|
|
120
130
|
validator(value) {
|
|
121
131
|
requireObject(value, 'config');
|
|
122
|
-
rejectUnknownKeys(value, ['blocks', 'components', 'preview'], 'config');
|
|
132
|
+
rejectUnknownKeys(value, ['blocks', 'components', 'preview', 'contentTypes', 'inquiry'], 'config');
|
|
133
|
+
if (value.contentTypes !== undefined) {
|
|
134
|
+
requireObject(value.contentTypes, 'config.contentTypes');
|
|
135
|
+
rejectUnknownKeys(value.contentTypes, [...content_type_config_1.OPTIONAL_CONTENT_TYPES], 'config.contentTypes');
|
|
136
|
+
for (const [name, entry] of Object.entries(value.contentTypes)) {
|
|
137
|
+
const path = `config.contentTypes.${name}`;
|
|
138
|
+
requireObject(entry, path);
|
|
139
|
+
rejectUnknownKeys(entry, ['enabled'], path);
|
|
140
|
+
if (typeof entry.enabled !== 'boolean') {
|
|
141
|
+
throw new Error(`[builder] ${path}.enabled must be a boolean`);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
123
145
|
if (value.preview !== undefined && value.preview !== false) {
|
|
124
146
|
requireObject(value.preview, 'config.preview');
|
|
125
147
|
rejectUnknownKeys(value.preview, ['siteUrl', 'secretEnv', 'resolvePath', 'uids'], 'config.preview');
|
|
@@ -149,6 +171,78 @@ const config = {
|
|
|
149
171
|
typeof value.preview.resolvePath !== 'function')
|
|
150
172
|
throw new Error('[builder] preview.resolvePath is required when preview.uids is non-empty');
|
|
151
173
|
}
|
|
174
|
+
if (value.inquiry !== undefined) {
|
|
175
|
+
requireObject(value.inquiry, 'config.inquiry');
|
|
176
|
+
rejectUnknownKeys(value.inquiry, ['attributes', 'validate'], 'config.inquiry');
|
|
177
|
+
if (value.inquiry.validate !== undefined &&
|
|
178
|
+
typeof value.inquiry.validate !== 'function') {
|
|
179
|
+
throw new Error('[builder] config.inquiry.validate must be a function');
|
|
180
|
+
}
|
|
181
|
+
if (value.inquiry.attributes !== undefined) {
|
|
182
|
+
requireObject(value.inquiry.attributes, 'config.inquiry.attributes');
|
|
183
|
+
const reserved = new Set([
|
|
184
|
+
...Object.keys(schema_json_1.default.attributes),
|
|
185
|
+
'id',
|
|
186
|
+
'documentId',
|
|
187
|
+
'createdAt',
|
|
188
|
+
'updatedAt',
|
|
189
|
+
'publishedAt',
|
|
190
|
+
'createdBy',
|
|
191
|
+
'updatedBy',
|
|
192
|
+
'locale',
|
|
193
|
+
'localizations',
|
|
194
|
+
'__proto__',
|
|
195
|
+
'constructor',
|
|
196
|
+
'prototype',
|
|
197
|
+
]);
|
|
198
|
+
const columns = new Set([...reserved, 'createdById', 'updatedById'].map(inquiryColumnName));
|
|
199
|
+
for (const [name, attribute] of Object.entries(value.inquiry.attributes)) {
|
|
200
|
+
if (!/^[a-z][a-zA-Z0-9]*$/.test(name) || reserved.has(name)) {
|
|
201
|
+
throw new Error('[builder] inquiry attributes must be additive and cannot use reserved names');
|
|
202
|
+
}
|
|
203
|
+
const column = inquiryColumnName(name);
|
|
204
|
+
if (columns.has(column)) {
|
|
205
|
+
throw new Error('[builder] inquiry attributes cannot share a database column with built-in, system, or other added fields');
|
|
206
|
+
}
|
|
207
|
+
columns.add(column);
|
|
208
|
+
requireObject(attribute, `config.inquiry.attributes.${name}`);
|
|
209
|
+
rejectUnknownKeys(attribute, ['type', 'maxLength', 'enum'], `config.inquiry.attributes.${name}`);
|
|
210
|
+
if (![
|
|
211
|
+
'string',
|
|
212
|
+
'text',
|
|
213
|
+
'email',
|
|
214
|
+
'boolean',
|
|
215
|
+
'integer',
|
|
216
|
+
'enumeration',
|
|
217
|
+
].includes(String(attribute.type))) {
|
|
218
|
+
throw new Error('[builder] inquiry attributes must be optional scalar fields');
|
|
219
|
+
}
|
|
220
|
+
if (attribute.maxLength !== undefined &&
|
|
221
|
+
(typeof attribute.maxLength !== 'number' ||
|
|
222
|
+
!Number.isInteger(attribute.maxLength) ||
|
|
223
|
+
attribute.maxLength < 1 ||
|
|
224
|
+
attribute.maxLength > 5000)) {
|
|
225
|
+
throw new Error('[builder] inquiry maxLength must be an integer between 1 and 5000');
|
|
226
|
+
}
|
|
227
|
+
if (attribute.type === 'enumeration' &&
|
|
228
|
+
(!Array.isArray(attribute.enum) ||
|
|
229
|
+
attribute.enum.length === 0 ||
|
|
230
|
+
!attribute.enum.every((item) => typeof item === 'string' && item.length > 0))) {
|
|
231
|
+
throw new Error('[builder] inquiry enumeration requires nonempty string values');
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
if (isObject(value.contentTypes) &&
|
|
237
|
+
isObject(value.contentTypes.inquiry) &&
|
|
238
|
+
value.contentTypes.inquiry.enabled === false &&
|
|
239
|
+
isObject(value.inquiry) &&
|
|
240
|
+
((isObject(value.inquiry.attributes) &&
|
|
241
|
+
Object.keys(value.inquiry.attributes).length > 0) ||
|
|
242
|
+
value.inquiry.validate !== undefined)) {
|
|
243
|
+
throw new Error('[builder] config.inquiry extensions require Inquiry to be enabled. ' +
|
|
244
|
+
'Enable config.contentTypes.inquiry.enabled or remove config.inquiry.attributes and config.inquiry.validate.');
|
|
245
|
+
}
|
|
152
246
|
requireObject(value.blocks, 'config.blocks');
|
|
153
247
|
rejectUnknownKeys(value.blocks, ['extra', 'includeInGlobal'], 'config.blocks');
|
|
154
248
|
requireObject(value.blocks.extra, 'config.blocks.extra');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/src/config/index.ts"],"names":[],"mappings":";;;;;AAAA,2FAA6D;AAC7D,qFAAwD;AACxD,6EAAgD;AAChD,6EAAgD;AAChD,uFAA0D;AAC1D,+EAAkD;AAClD,2FAA8D;AAC9D,+FAAiE;AACjE,2FAA6D;AAC7D,qFAAwD;AACxD,mFAAsD;AACtD,iFAAoD;AACpD,+EAAkD;AAClD,+FAAkE;AAClE,qFAAwD;AACxD,uFAA0D;AAC1D,yGAA2E;AAC3E,2FAA6D;AAC7D,+FAAiE;AACjE,qGAAuE;AACvE,+FAAiE;AACjE,mGAAqE;AACrE,iFAAoD;AACpD,+EAAkD;AAClD,yFAA2D;AAC3D,uGAAyE;AACzE,+FAAiE;AACjE,6EAAgD;AAChD,yGAA2E;AAC3E,6FAA+D;AAC/D,yFAA2D;AAC3D,6FAA+D;AAC/D,uGAAyE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/src/config/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { BuilderContentTypesConfig } from './content-type-config';
|
|
2
|
+
interface AvailabilityConfig {
|
|
3
|
+
contentTypes?: BuilderContentTypesConfig;
|
|
4
|
+
}
|
|
5
|
+
interface Schema {
|
|
6
|
+
attributes?: Record<string, {
|
|
7
|
+
type?: string;
|
|
8
|
+
target?: string;
|
|
9
|
+
component?: string;
|
|
10
|
+
components?: string[];
|
|
11
|
+
}>;
|
|
12
|
+
pluginOptions?: Record<string, unknown>;
|
|
13
|
+
__schema__?: Schema;
|
|
14
|
+
}
|
|
15
|
+
export declare function isBuilderContentTypeEnabled(config: AvailabilityConfig, uid: string): boolean;
|
|
16
|
+
/** Keep models registered so toggling availability never removes stored data. */
|
|
17
|
+
export declare function applyContentTypeAvailability(config: AvailabilityConfig, contentTypes: Record<string, Schema>, getComponent: (uid: string) => Schema | undefined): void;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=content-type-availability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-type-availability.d.ts","sourceRoot":"","sources":["../../../server/src/content-type-availability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EAE1B,MAAM,uBAAuB,CAAC;AAE/B,UAAU,kBAAkB;IAC1B,YAAY,CAAC,EAAE,yBAAyB,CAAC;CAC1C;AAED,UAAU,MAAM;IACd,UAAU,CAAC,EAAE,MAAM,CACjB,MAAM,EACN;QACE,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB,CACF,CAAC;IACF,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,kBAAkB,EAC1B,GAAG,EAAE,MAAM,GACV,OAAO,CAOT;AAED,iFAAiF;AACjF,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,kBAAkB,EAC1B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,GAChD,IAAI,CA0DN"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isBuilderContentTypeEnabled = isBuilderContentTypeEnabled;
|
|
4
|
+
exports.applyContentTypeAvailability = applyContentTypeAvailability;
|
|
5
|
+
function isBuilderContentTypeEnabled(config, uid) {
|
|
6
|
+
const name = uid.startsWith('plugin::builder.')
|
|
7
|
+
? uid.slice('plugin::builder.'.length)
|
|
8
|
+
: '';
|
|
9
|
+
return (config.contentTypes?.[name]?.enabled !== false);
|
|
10
|
+
}
|
|
11
|
+
/** Keep models registered so toggling availability never removes stored data. */
|
|
12
|
+
function applyContentTypeAvailability(config, contentTypes, getComponent) {
|
|
13
|
+
const disabled = new Set(Object.keys(contentTypes).filter((uid) => !isBuilderContentTypeEnabled(config, uid)));
|
|
14
|
+
if (disabled.size === 0)
|
|
15
|
+
return;
|
|
16
|
+
function visit(schema, path, ancestors) {
|
|
17
|
+
for (const [name, attribute] of Object.entries(schema.attributes ?? {})) {
|
|
18
|
+
const attributePath = `${path}.${name}`;
|
|
19
|
+
if (attribute.type === 'relation' &&
|
|
20
|
+
attribute.target &&
|
|
21
|
+
disabled.has(attribute.target)) {
|
|
22
|
+
throw new Error(`[builder] Enabled content type references disabled "${attribute.target}" through ${attributePath}. Enable the target or remove this relation/component from the consumer schema before Builder registration.`);
|
|
23
|
+
}
|
|
24
|
+
const components = attribute.type === 'component'
|
|
25
|
+
? attribute.component
|
|
26
|
+
? [attribute.component]
|
|
27
|
+
: []
|
|
28
|
+
: attribute.type === 'dynamiczone'
|
|
29
|
+
? (attribute.components ?? [])
|
|
30
|
+
: [];
|
|
31
|
+
for (const uid of components) {
|
|
32
|
+
if (ancestors.has(uid))
|
|
33
|
+
continue;
|
|
34
|
+
const component = getComponent(uid);
|
|
35
|
+
if (component)
|
|
36
|
+
visit(component, `${attributePath} -> ${uid}`, new Set([...ancestors, uid]));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
for (const [uid, schema] of Object.entries(contentTypes)) {
|
|
41
|
+
if (!disabled.has(uid))
|
|
42
|
+
visit(schema, uid, new Set());
|
|
43
|
+
}
|
|
44
|
+
for (const uid of disabled) {
|
|
45
|
+
const model = contentTypes[uid];
|
|
46
|
+
if (!model)
|
|
47
|
+
continue;
|
|
48
|
+
for (const schema of [model, model.__schema__]) {
|
|
49
|
+
if (!schema)
|
|
50
|
+
continue;
|
|
51
|
+
schema.pluginOptions ?? (schema.pluginOptions = {});
|
|
52
|
+
for (const plugin of ['content-manager', 'content-type-builder']) {
|
|
53
|
+
schema.pluginOptions[plugin] = {
|
|
54
|
+
...schema.pluginOptions[plugin],
|
|
55
|
+
visible: false,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=content-type-availability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-type-availability.js","sourceRoot":"","sources":["../../../server/src/content-type-availability.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const OPTIONAL_CONTENT_TYPES: readonly ["article", "category", "tag", "series", "author", "faq", "inquiry"];
|
|
2
|
+
export type BuilderOptionalContentType = (typeof OPTIONAL_CONTENT_TYPES)[number];
|
|
3
|
+
export type BuilderContentTypesConfig = Partial<Record<BuilderOptionalContentType, {
|
|
4
|
+
enabled: boolean;
|
|
5
|
+
}>>;
|
|
6
|
+
//# sourceMappingURL=content-type-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-type-config.d.ts","sourceRoot":"","sources":["../../../server/src/content-type-config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,+EAQzB,CAAC;AAEX,MAAM,MAAM,0BAA0B,GACpC,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC1C,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAC7C,MAAM,CAAC,0BAA0B,EAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CACzD,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OPTIONAL_CONTENT_TYPES = void 0;
|
|
4
|
+
exports.OPTIONAL_CONTENT_TYPES = [
|
|
5
|
+
'article',
|
|
6
|
+
'category',
|
|
7
|
+
'tag',
|
|
8
|
+
'series',
|
|
9
|
+
'author',
|
|
10
|
+
'faq',
|
|
11
|
+
'inquiry',
|
|
12
|
+
];
|
|
13
|
+
//# sourceMappingURL=content-type-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-type-config.js","sourceRoot":"","sources":["../../../server/src/content-type-config.ts"],"names":[],"mappings":";;;AAAa,QAAA,sBAAsB,GAAG;IACpC,SAAS;IACT,UAAU;IACV,KAAK;IACL,QAAQ;IACR,QAAQ;IACR,KAAK;IACL,SAAS;CACD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/content-types/category/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/content-types/category/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wBAA0B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/content-types/faq/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/content-types/faq/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wBAA0B"}
|
|
@@ -263,6 +263,12 @@ declare const _default: {
|
|
|
263
263
|
target: string;
|
|
264
264
|
mappedBy: string;
|
|
265
265
|
};
|
|
266
|
+
faqs: {
|
|
267
|
+
type: string;
|
|
268
|
+
relation: string;
|
|
269
|
+
target: string;
|
|
270
|
+
mappedBy: string;
|
|
271
|
+
};
|
|
266
272
|
};
|
|
267
273
|
};
|
|
268
274
|
};
|
|
@@ -392,6 +398,7 @@ declare const _default: {
|
|
|
392
398
|
type: string;
|
|
393
399
|
relation: string;
|
|
394
400
|
target: string;
|
|
401
|
+
inversedBy: string;
|
|
395
402
|
};
|
|
396
403
|
};
|
|
397
404
|
};
|
|
@@ -528,7 +535,32 @@ declare const _default: {
|
|
|
528
535
|
type: string;
|
|
529
536
|
maxLength: number;
|
|
530
537
|
};
|
|
538
|
+
consent: {
|
|
539
|
+
type: string;
|
|
540
|
+
};
|
|
541
|
+
consentAt: {
|
|
542
|
+
type: string;
|
|
543
|
+
};
|
|
544
|
+
consentVersion: {
|
|
545
|
+
type: string;
|
|
546
|
+
maxLength: number;
|
|
547
|
+
};
|
|
548
|
+
processingStatus: {
|
|
549
|
+
type: string;
|
|
550
|
+
enum: string[];
|
|
551
|
+
};
|
|
552
|
+
idempotencyKey: {
|
|
553
|
+
type: string;
|
|
554
|
+
maxLength: number;
|
|
555
|
+
unique: boolean;
|
|
556
|
+
private: boolean;
|
|
557
|
+
};
|
|
531
558
|
};
|
|
559
|
+
indexes: {
|
|
560
|
+
name: string;
|
|
561
|
+
columns: string[];
|
|
562
|
+
type: string;
|
|
563
|
+
}[];
|
|
532
564
|
};
|
|
533
565
|
};
|
|
534
566
|
navigation: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/content-types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/content-types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,wBAaE"}
|
|
@@ -41,7 +41,32 @@ declare const _default: {
|
|
|
41
41
|
type: string;
|
|
42
42
|
maxLength: number;
|
|
43
43
|
};
|
|
44
|
+
consent: {
|
|
45
|
+
type: string;
|
|
46
|
+
};
|
|
47
|
+
consentAt: {
|
|
48
|
+
type: string;
|
|
49
|
+
};
|
|
50
|
+
consentVersion: {
|
|
51
|
+
type: string;
|
|
52
|
+
maxLength: number;
|
|
53
|
+
};
|
|
54
|
+
processingStatus: {
|
|
55
|
+
type: string;
|
|
56
|
+
enum: string[];
|
|
57
|
+
};
|
|
58
|
+
idempotencyKey: {
|
|
59
|
+
type: string;
|
|
60
|
+
maxLength: number;
|
|
61
|
+
unique: boolean;
|
|
62
|
+
private: boolean;
|
|
63
|
+
};
|
|
44
64
|
};
|
|
65
|
+
indexes: {
|
|
66
|
+
name: string;
|
|
67
|
+
columns: string[];
|
|
68
|
+
type: string;
|
|
69
|
+
}[];
|
|
45
70
|
};
|
|
46
71
|
};
|
|
47
72
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/content-types/inquiry/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/content-types/inquiry/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wBAA0B"}
|
|
@@ -11,8 +11,12 @@
|
|
|
11
11
|
"draftAndPublish": false
|
|
12
12
|
},
|
|
13
13
|
"pluginOptions": {
|
|
14
|
-
"content-manager": {
|
|
15
|
-
|
|
14
|
+
"content-manager": {
|
|
15
|
+
"visible": true
|
|
16
|
+
},
|
|
17
|
+
"content-type-builder": {
|
|
18
|
+
"visible": true
|
|
19
|
+
}
|
|
16
20
|
},
|
|
17
21
|
"attributes": {
|
|
18
22
|
"name": {
|
|
@@ -35,6 +39,33 @@
|
|
|
35
39
|
"message": {
|
|
36
40
|
"type": "text",
|
|
37
41
|
"maxLength": 5000
|
|
42
|
+
},
|
|
43
|
+
"consent": {
|
|
44
|
+
"type": "boolean"
|
|
45
|
+
},
|
|
46
|
+
"consentAt": {
|
|
47
|
+
"type": "datetime"
|
|
48
|
+
},
|
|
49
|
+
"consentVersion": {
|
|
50
|
+
"type": "string",
|
|
51
|
+
"maxLength": 120
|
|
52
|
+
},
|
|
53
|
+
"processingStatus": {
|
|
54
|
+
"type": "enumeration",
|
|
55
|
+
"enum": ["received", "reviewing", "responded", "closed"]
|
|
56
|
+
},
|
|
57
|
+
"idempotencyKey": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"maxLength": 128,
|
|
60
|
+
"unique": true,
|
|
61
|
+
"private": true
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
"indexes": [
|
|
65
|
+
{
|
|
66
|
+
"name": "inquiries_idempotency_key_unique",
|
|
67
|
+
"columns": ["idempotency_key"],
|
|
68
|
+
"type": "unique"
|
|
38
69
|
}
|
|
39
|
-
|
|
70
|
+
]
|
|
40
71
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/index.ts"],"names":[],"mappings":"AAMA,QAAA,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAkBxC,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const strapi_1 = require("@strapi/strapi");
|
|
7
|
+
const inquiry_1 = __importDefault(require("./inquiry"));
|
|
7
8
|
const page_1 = __importDefault(require("./page"));
|
|
8
9
|
const global_1 = __importDefault(require("./global"));
|
|
9
10
|
const preview_1 = __importDefault(require("./preview"));
|
|
@@ -16,7 +17,7 @@ const controllers = {
|
|
|
16
17
|
page: page_1.default,
|
|
17
18
|
global: global_1.default,
|
|
18
19
|
preview: preview_1.default,
|
|
19
|
-
inquiry:
|
|
20
|
+
inquiry: inquiry_1.default,
|
|
20
21
|
navigation: strapi_1.factories.createCoreController('plugin::builder.navigation'),
|
|
21
22
|
series: strapi_1.factories.createCoreController('plugin::builder.series'),
|
|
22
23
|
'site-setting': strapi_1.factories.createCoreController('plugin::builder.site-setting'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/src/controllers/index.ts"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,kDAA0B;AAC1B,sDAA8B;AAC9B,wDAAgC;AAEhC,MAAM,WAAW,GAA4B;IAC3C,OAAO,EAAE,kBAAS,CAAC,oBAAoB,CAAC,yBAAyB,CAAC;IAClE,MAAM,EAAE,kBAAS,CAAC,oBAAoB,CAAC,wBAAwB,CAAC;IAChE,QAAQ,EAAE,kBAAS,CAAC,oBAAoB,CAAC,0BAA0B,CAAC;IACpE,gBAAgB,EAAE,kBAAS,CAAC,oBAAoB,CAC9C,gCAAgC,CACjC;IACD,GAAG,EAAE,kBAAS,CAAC,oBAAoB,CAAC,qBAAqB,CAAC;IAC1D,IAAI,EAAJ,cAAI;IACJ,MAAM,EAAN,gBAAM;IACN,OAAO,EAAP,iBAAO;IACP,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/src/controllers/index.ts"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,wDAAgC;AAChC,kDAA0B;AAC1B,sDAA8B;AAC9B,wDAAgC;AAEhC,MAAM,WAAW,GAA4B;IAC3C,OAAO,EAAE,kBAAS,CAAC,oBAAoB,CAAC,yBAAyB,CAAC;IAClE,MAAM,EAAE,kBAAS,CAAC,oBAAoB,CAAC,wBAAwB,CAAC;IAChE,QAAQ,EAAE,kBAAS,CAAC,oBAAoB,CAAC,0BAA0B,CAAC;IACpE,gBAAgB,EAAE,kBAAS,CAAC,oBAAoB,CAC9C,gCAAgC,CACjC;IACD,GAAG,EAAE,kBAAS,CAAC,oBAAoB,CAAC,qBAAqB,CAAC;IAC1D,IAAI,EAAJ,cAAI;IACJ,MAAM,EAAN,gBAAM;IACN,OAAO,EAAP,iBAAO;IACP,OAAO,EAAP,iBAAO;IACP,UAAU,EAAE,kBAAS,CAAC,oBAAoB,CAAC,4BAA4B,CAAC;IACxE,MAAM,EAAE,kBAAS,CAAC,oBAAoB,CAAC,wBAAwB,CAAC;IAChE,cAAc,EAAE,kBAAS,CAAC,oBAAoB,CAC5C,8BAA8B,CAC/B;IACD,GAAG,EAAE,kBAAS,CAAC,oBAAoB,CAAC,qBAAqB,CAAC;CAC3D,CAAC;AAEF,kBAAe,WAAW,CAAC"}
|