datocms-plugin-sdk 0.6.12 → 0.6.15-alpha.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/dist/cjs/connect.js +7 -2
- package/dist/cjs/connect.js.map +1 -1
- package/dist/esm/connect.d.ts +37 -1
- package/dist/esm/connect.js +7 -2
- package/dist/esm/connect.js.map +1 -1
- package/dist/types/connect.d.ts +37 -1
- package/package.json +2 -2
- package/src/connect.ts +66 -1
- package/types.json +2368 -1842
package/dist/cjs/connect.js
CHANGED
|
@@ -119,11 +119,11 @@ var buildRenderUtils = function (parent) {
|
|
|
119
119
|
function connect(configuration) {
|
|
120
120
|
if (configuration === void 0) { configuration = {}; }
|
|
121
121
|
return __awaiter(this, void 0, void 0, function () {
|
|
122
|
-
var assetSources, mainNavigationTabs, settingsAreaSidebarItemGroups, contentAreaSidebarItems, manualFieldExtensions, itemFormSidebarPanels, itemFormOutlets, listener, penpalConnection, parent, initialSettings, render, render, renderUtils_1, render, renderUtils_2, render, renderUtils_3, render, renderUtils_4, render, renderUtils_5, render, renderUtils_6, render, renderUtils_7, render;
|
|
122
|
+
var assetSources, mainNavigationTabs, settingsAreaSidebarItemGroups, contentAreaSidebarItems, manualFieldExtensions, itemFormSidebarPanels, itemFormOutlets, onBeforeItemDestroy, onBeforeItemPublish, onBeforeItemUnpublish, onBeforeItemUpdate, onBeforeItemCreate, listener, penpalConnection, parent, initialSettings, render, render, renderUtils_1, render, renderUtils_2, render, renderUtils_3, render, renderUtils_4, render, renderUtils_5, render, renderUtils_6, render, renderUtils_7, render;
|
|
123
123
|
return __generator(this, function (_a) {
|
|
124
124
|
switch (_a.label) {
|
|
125
125
|
case 0:
|
|
126
|
-
assetSources = configuration.assetSources, mainNavigationTabs = configuration.mainNavigationTabs, settingsAreaSidebarItemGroups = configuration.settingsAreaSidebarItemGroups, contentAreaSidebarItems = configuration.contentAreaSidebarItems, manualFieldExtensions = configuration.manualFieldExtensions, itemFormSidebarPanels = configuration.itemFormSidebarPanels, itemFormOutlets = configuration.itemFormOutlets;
|
|
126
|
+
assetSources = configuration.assetSources, mainNavigationTabs = configuration.mainNavigationTabs, settingsAreaSidebarItemGroups = configuration.settingsAreaSidebarItemGroups, contentAreaSidebarItems = configuration.contentAreaSidebarItems, manualFieldExtensions = configuration.manualFieldExtensions, itemFormSidebarPanels = configuration.itemFormSidebarPanels, itemFormOutlets = configuration.itemFormOutlets, onBeforeItemDestroy = configuration.onBeforeItemDestroy, onBeforeItemPublish = configuration.onBeforeItemPublish, onBeforeItemUnpublish = configuration.onBeforeItemUnpublish, onBeforeItemUpdate = configuration.onBeforeItemUpdate, onBeforeItemCreate = configuration.onBeforeItemCreate;
|
|
127
127
|
listener = null;
|
|
128
128
|
penpalConnection = (0, connectToParent_1.default)({
|
|
129
129
|
methods: {
|
|
@@ -144,6 +144,11 @@ function connect(configuration) {
|
|
|
144
144
|
manualFieldExtensions: manualFieldExtensions,
|
|
145
145
|
itemFormSidebarPanels: itemFormSidebarPanels,
|
|
146
146
|
itemFormOutlets: itemFormOutlets,
|
|
147
|
+
onBeforeItemDestroy: onBeforeItemDestroy,
|
|
148
|
+
onBeforeItemPublish: onBeforeItemPublish,
|
|
149
|
+
onBeforeItemUnpublish: onBeforeItemUnpublish,
|
|
150
|
+
onBeforeItemUpdate: onBeforeItemUpdate,
|
|
151
|
+
onBeforeItemCreate: onBeforeItemCreate,
|
|
147
152
|
overrideFieldExtensions: toMultifield(configuration.overrideFieldExtensions),
|
|
148
153
|
customMarksForStructuredTextField: toMultifield(configuration.customMarksForStructuredTextField),
|
|
149
154
|
customBlockStylesForStructuredTextField: toMultifield(configuration.customBlockStylesForStructuredTextField),
|
package/dist/cjs/connect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/connect.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+EAAyD;
|
|
1
|
+
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/connect.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/connect.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Field, ItemType } from './SiteApiSchema';
|
|
1
|
+
import { Field, Item, ItemCreateSchema, ItemType, ItemUpdateSchema } from './SiteApiSchema';
|
|
2
2
|
import { AssetSource, ContentAreaSidebarItem, FieldExtensionOverride, InitPropertiesAndMethods, ItemFormSidebarPanel, MainNavigationTab, ManualFieldExtension, OnBootPropertiesAndMethods, RenderAssetSourcePropertiesAndMethods, RenderConfigScreenPropertiesAndMethods, RenderFieldExtensionPropertiesAndMethods, RenderManualFieldExtensionConfigScreenPropertiesAndMethods, RenderModalPropertiesAndMethods, RenderPagePropertiesAndMethods, RenderSidebarPanelPropertiesAndMethods, SettingsAreaSidebarItemGroup } from './types';
|
|
3
3
|
import { ItemFormOutlet, RenderItemFormOutletPropertiesAndMethods, StructuredTextCustomBlockStyle, StructuredTextCustomMark } from '.';
|
|
4
4
|
export declare type SizingUtilities = {
|
|
@@ -31,6 +31,7 @@ export declare type RenderItemFormOutletCtx = RenderItemFormOutletPropertiesAndM
|
|
|
31
31
|
export declare type RenderFieldExtensionCtx = RenderFieldExtensionPropertiesAndMethods & SizingUtilities;
|
|
32
32
|
export declare type RenderManualFieldExtensionConfigScreenCtx = RenderManualFieldExtensionConfigScreenPropertiesAndMethods & SizingUtilities;
|
|
33
33
|
export declare type RenderConfigScreenCtx = RenderConfigScreenPropertiesAndMethods & SizingUtilities;
|
|
34
|
+
declare type MaybePromise<T> = T | Promise<T>;
|
|
34
35
|
/** The full options you can pass to the `connect` function */
|
|
35
36
|
export declare type FullConnectParameters = {
|
|
36
37
|
/**
|
|
@@ -40,6 +41,41 @@ export declare type FullConnectParameters = {
|
|
|
40
41
|
* @tag boot
|
|
41
42
|
*/
|
|
42
43
|
onBoot: (ctx: OnBootCtx) => void;
|
|
44
|
+
/**
|
|
45
|
+
* This function will be called before destroying a record. You can stop the
|
|
46
|
+
* action by returning `false`
|
|
47
|
+
*
|
|
48
|
+
* @tag beforeHooks
|
|
49
|
+
*/
|
|
50
|
+
onBeforeItemDestroy: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
51
|
+
/**
|
|
52
|
+
* This function will be called before creating a new record. You can stop the
|
|
53
|
+
* action by returning `false`
|
|
54
|
+
*
|
|
55
|
+
* @tag beforeHooks
|
|
56
|
+
*/
|
|
57
|
+
onBeforeItemCreate: (payload: ItemCreateSchema, ctx: OnBootCtx) => MaybePromise<ItemCreateSchema | false>;
|
|
58
|
+
/**
|
|
59
|
+
* This function will be called before saving a new version of a record. You
|
|
60
|
+
* can stop the action by returning `false`
|
|
61
|
+
*
|
|
62
|
+
* @tag beforeHooks
|
|
63
|
+
*/
|
|
64
|
+
onBeforeItemUpdate: (payload: ItemUpdateSchema, ctx: OnBootCtx) => MaybePromise<ItemUpdateSchema | false>;
|
|
65
|
+
/**
|
|
66
|
+
* This function will be called before publishing a record. You can stop the
|
|
67
|
+
* action by returning `false`
|
|
68
|
+
*
|
|
69
|
+
* @tag beforeHooks
|
|
70
|
+
*/
|
|
71
|
+
onBeforeItemPublish: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
72
|
+
/**
|
|
73
|
+
* This function will be called before unpublishing a record. You can stop the
|
|
74
|
+
* action by returning `false`
|
|
75
|
+
*
|
|
76
|
+
* @tag beforeHooks
|
|
77
|
+
*/
|
|
78
|
+
onBeforeItemUnpublish: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
43
79
|
/**
|
|
44
80
|
* Use this function to declare new tabs you want to add in the top-bar of the
|
|
45
81
|
* UI
|
package/dist/esm/connect.js
CHANGED
|
@@ -113,11 +113,11 @@ var buildRenderUtils = function (parent) {
|
|
|
113
113
|
export function connect(configuration) {
|
|
114
114
|
if (configuration === void 0) { configuration = {}; }
|
|
115
115
|
return __awaiter(this, void 0, void 0, function () {
|
|
116
|
-
var assetSources, mainNavigationTabs, settingsAreaSidebarItemGroups, contentAreaSidebarItems, manualFieldExtensions, itemFormSidebarPanels, itemFormOutlets, listener, penpalConnection, parent, initialSettings, render, render, renderUtils_1, render, renderUtils_2, render, renderUtils_3, render, renderUtils_4, render, renderUtils_5, render, renderUtils_6, render, renderUtils_7, render;
|
|
116
|
+
var assetSources, mainNavigationTabs, settingsAreaSidebarItemGroups, contentAreaSidebarItems, manualFieldExtensions, itemFormSidebarPanels, itemFormOutlets, onBeforeItemDestroy, onBeforeItemPublish, onBeforeItemUnpublish, onBeforeItemUpdate, onBeforeItemCreate, listener, penpalConnection, parent, initialSettings, render, render, renderUtils_1, render, renderUtils_2, render, renderUtils_3, render, renderUtils_4, render, renderUtils_5, render, renderUtils_6, render, renderUtils_7, render;
|
|
117
117
|
return __generator(this, function (_a) {
|
|
118
118
|
switch (_a.label) {
|
|
119
119
|
case 0:
|
|
120
|
-
assetSources = configuration.assetSources, mainNavigationTabs = configuration.mainNavigationTabs, settingsAreaSidebarItemGroups = configuration.settingsAreaSidebarItemGroups, contentAreaSidebarItems = configuration.contentAreaSidebarItems, manualFieldExtensions = configuration.manualFieldExtensions, itemFormSidebarPanels = configuration.itemFormSidebarPanels, itemFormOutlets = configuration.itemFormOutlets;
|
|
120
|
+
assetSources = configuration.assetSources, mainNavigationTabs = configuration.mainNavigationTabs, settingsAreaSidebarItemGroups = configuration.settingsAreaSidebarItemGroups, contentAreaSidebarItems = configuration.contentAreaSidebarItems, manualFieldExtensions = configuration.manualFieldExtensions, itemFormSidebarPanels = configuration.itemFormSidebarPanels, itemFormOutlets = configuration.itemFormOutlets, onBeforeItemDestroy = configuration.onBeforeItemDestroy, onBeforeItemPublish = configuration.onBeforeItemPublish, onBeforeItemUnpublish = configuration.onBeforeItemUnpublish, onBeforeItemUpdate = configuration.onBeforeItemUpdate, onBeforeItemCreate = configuration.onBeforeItemCreate;
|
|
121
121
|
listener = null;
|
|
122
122
|
penpalConnection = connectToParent({
|
|
123
123
|
methods: {
|
|
@@ -138,6 +138,11 @@ export function connect(configuration) {
|
|
|
138
138
|
manualFieldExtensions: manualFieldExtensions,
|
|
139
139
|
itemFormSidebarPanels: itemFormSidebarPanels,
|
|
140
140
|
itemFormOutlets: itemFormOutlets,
|
|
141
|
+
onBeforeItemDestroy: onBeforeItemDestroy,
|
|
142
|
+
onBeforeItemPublish: onBeforeItemPublish,
|
|
143
|
+
onBeforeItemUnpublish: onBeforeItemUnpublish,
|
|
144
|
+
onBeforeItemUpdate: onBeforeItemUpdate,
|
|
145
|
+
onBeforeItemCreate: onBeforeItemCreate,
|
|
141
146
|
overrideFieldExtensions: toMultifield(configuration.overrideFieldExtensions),
|
|
142
147
|
customMarksForStructuredTextField: toMultifield(configuration.customMarksForStructuredTextField),
|
|
143
148
|
customBlockStylesForStructuredTextField: toMultifield(configuration.customBlockStylesForStructuredTextField),
|
package/dist/esm/connect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/connect.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,eAAe,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/connect.ts"],"names":[],"mappings":"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"}
|
package/dist/types/connect.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Field, ItemType } from './SiteApiSchema';
|
|
1
|
+
import { Field, Item, ItemCreateSchema, ItemType, ItemUpdateSchema } from './SiteApiSchema';
|
|
2
2
|
import { AssetSource, ContentAreaSidebarItem, FieldExtensionOverride, InitPropertiesAndMethods, ItemFormSidebarPanel, MainNavigationTab, ManualFieldExtension, OnBootPropertiesAndMethods, RenderAssetSourcePropertiesAndMethods, RenderConfigScreenPropertiesAndMethods, RenderFieldExtensionPropertiesAndMethods, RenderManualFieldExtensionConfigScreenPropertiesAndMethods, RenderModalPropertiesAndMethods, RenderPagePropertiesAndMethods, RenderSidebarPanelPropertiesAndMethods, SettingsAreaSidebarItemGroup } from './types';
|
|
3
3
|
import { ItemFormOutlet, RenderItemFormOutletPropertiesAndMethods, StructuredTextCustomBlockStyle, StructuredTextCustomMark } from '.';
|
|
4
4
|
export declare type SizingUtilities = {
|
|
@@ -31,6 +31,7 @@ export declare type RenderItemFormOutletCtx = RenderItemFormOutletPropertiesAndM
|
|
|
31
31
|
export declare type RenderFieldExtensionCtx = RenderFieldExtensionPropertiesAndMethods & SizingUtilities;
|
|
32
32
|
export declare type RenderManualFieldExtensionConfigScreenCtx = RenderManualFieldExtensionConfigScreenPropertiesAndMethods & SizingUtilities;
|
|
33
33
|
export declare type RenderConfigScreenCtx = RenderConfigScreenPropertiesAndMethods & SizingUtilities;
|
|
34
|
+
declare type MaybePromise<T> = T | Promise<T>;
|
|
34
35
|
/** The full options you can pass to the `connect` function */
|
|
35
36
|
export declare type FullConnectParameters = {
|
|
36
37
|
/**
|
|
@@ -40,6 +41,41 @@ export declare type FullConnectParameters = {
|
|
|
40
41
|
* @tag boot
|
|
41
42
|
*/
|
|
42
43
|
onBoot: (ctx: OnBootCtx) => void;
|
|
44
|
+
/**
|
|
45
|
+
* This function will be called before destroying a record. You can stop the
|
|
46
|
+
* action by returning `false`
|
|
47
|
+
*
|
|
48
|
+
* @tag beforeHooks
|
|
49
|
+
*/
|
|
50
|
+
onBeforeItemDestroy: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
51
|
+
/**
|
|
52
|
+
* This function will be called before creating a new record. You can stop the
|
|
53
|
+
* action by returning `false`
|
|
54
|
+
*
|
|
55
|
+
* @tag beforeHooks
|
|
56
|
+
*/
|
|
57
|
+
onBeforeItemCreate: (payload: ItemCreateSchema, ctx: OnBootCtx) => MaybePromise<ItemCreateSchema | false>;
|
|
58
|
+
/**
|
|
59
|
+
* This function will be called before saving a new version of a record. You
|
|
60
|
+
* can stop the action by returning `false`
|
|
61
|
+
*
|
|
62
|
+
* @tag beforeHooks
|
|
63
|
+
*/
|
|
64
|
+
onBeforeItemUpdate: (payload: ItemUpdateSchema, ctx: OnBootCtx) => MaybePromise<ItemUpdateSchema | false>;
|
|
65
|
+
/**
|
|
66
|
+
* This function will be called before publishing a record. You can stop the
|
|
67
|
+
* action by returning `false`
|
|
68
|
+
*
|
|
69
|
+
* @tag beforeHooks
|
|
70
|
+
*/
|
|
71
|
+
onBeforeItemPublish: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
72
|
+
/**
|
|
73
|
+
* This function will be called before unpublishing a record. You can stop the
|
|
74
|
+
* action by returning `false`
|
|
75
|
+
*
|
|
76
|
+
* @tag beforeHooks
|
|
77
|
+
*/
|
|
78
|
+
onBeforeItemUnpublish: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
43
79
|
/**
|
|
44
80
|
* Use this function to declare new tabs you want to add in the top-bar of the
|
|
45
81
|
* UI
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "datocms-plugin-sdk",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.15-alpha.1",
|
|
4
4
|
"description": "DatoCMS Plugin SDK",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"datocms",
|
|
@@ -43,5 +43,5 @@
|
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"typedoc": "^0.23.20"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "e68d63dc2149929bfbdfb13e8394387867a32aa7"
|
|
47
47
|
}
|
package/src/connect.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import connectToParent from 'penpal/lib/connectToParent';
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
Field,
|
|
4
|
+
Item,
|
|
5
|
+
ItemCreateSchema,
|
|
6
|
+
ItemType,
|
|
7
|
+
ItemUpdateSchema,
|
|
8
|
+
} from './SiteApiSchema';
|
|
3
9
|
import {
|
|
4
10
|
AssetSource,
|
|
5
11
|
ContentAreaSidebarItem,
|
|
@@ -86,6 +92,8 @@ export type RenderManualFieldExtensionConfigScreenCtx =
|
|
|
86
92
|
export type RenderConfigScreenCtx = RenderConfigScreenPropertiesAndMethods &
|
|
87
93
|
SizingUtilities;
|
|
88
94
|
|
|
95
|
+
type MaybePromise<T> = T | Promise<T>;
|
|
96
|
+
|
|
89
97
|
/** The full options you can pass to the `connect` function */
|
|
90
98
|
export type FullConnectParameters = {
|
|
91
99
|
/**
|
|
@@ -95,6 +103,53 @@ export type FullConnectParameters = {
|
|
|
95
103
|
* @tag boot
|
|
96
104
|
*/
|
|
97
105
|
onBoot: (ctx: OnBootCtx) => void;
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* This function will be called before destroying a record. You can stop the
|
|
109
|
+
* action by returning `false`
|
|
110
|
+
*
|
|
111
|
+
* @tag beforeHooks
|
|
112
|
+
*/
|
|
113
|
+
onBeforeItemDestroy: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* This function will be called before creating a new record. You can stop the
|
|
117
|
+
* action by returning `false`
|
|
118
|
+
*
|
|
119
|
+
* @tag beforeHooks
|
|
120
|
+
*/
|
|
121
|
+
onBeforeItemCreate: (
|
|
122
|
+
payload: ItemCreateSchema,
|
|
123
|
+
ctx: OnBootCtx,
|
|
124
|
+
) => MaybePromise<ItemCreateSchema | false>;
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* This function will be called before saving a new version of a record. You
|
|
128
|
+
* can stop the action by returning `false`
|
|
129
|
+
*
|
|
130
|
+
* @tag beforeHooks
|
|
131
|
+
*/
|
|
132
|
+
onBeforeItemUpdate: (
|
|
133
|
+
payload: ItemUpdateSchema,
|
|
134
|
+
ctx: OnBootCtx,
|
|
135
|
+
) => MaybePromise<ItemUpdateSchema | false>;
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* This function will be called before publishing a record. You can stop the
|
|
139
|
+
* action by returning `false`
|
|
140
|
+
*
|
|
141
|
+
* @tag beforeHooks
|
|
142
|
+
*/
|
|
143
|
+
onBeforeItemPublish: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* This function will be called before unpublishing a record. You can stop the
|
|
147
|
+
* action by returning `false`
|
|
148
|
+
*
|
|
149
|
+
* @tag beforeHooks
|
|
150
|
+
*/
|
|
151
|
+
onBeforeItemUnpublish: (item: Item, ctx: OnBootCtx) => MaybePromise<boolean>;
|
|
152
|
+
|
|
98
153
|
/**
|
|
99
154
|
* Use this function to declare new tabs you want to add in the top-bar of the
|
|
100
155
|
* UI
|
|
@@ -387,6 +442,11 @@ export async function connect(
|
|
|
387
442
|
manualFieldExtensions,
|
|
388
443
|
itemFormSidebarPanels,
|
|
389
444
|
itemFormOutlets,
|
|
445
|
+
onBeforeItemDestroy,
|
|
446
|
+
onBeforeItemPublish,
|
|
447
|
+
onBeforeItemUnpublish,
|
|
448
|
+
onBeforeItemUpdate,
|
|
449
|
+
onBeforeItemCreate,
|
|
390
450
|
} = configuration;
|
|
391
451
|
|
|
392
452
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -412,6 +472,11 @@ export async function connect(
|
|
|
412
472
|
manualFieldExtensions,
|
|
413
473
|
itemFormSidebarPanels,
|
|
414
474
|
itemFormOutlets,
|
|
475
|
+
onBeforeItemDestroy,
|
|
476
|
+
onBeforeItemPublish,
|
|
477
|
+
onBeforeItemUnpublish,
|
|
478
|
+
onBeforeItemUpdate,
|
|
479
|
+
onBeforeItemCreate,
|
|
415
480
|
overrideFieldExtensions: toMultifield(
|
|
416
481
|
configuration.overrideFieldExtensions,
|
|
417
482
|
),
|