@strapi/upload 5.0.0 → 5.0.2-beta.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/_chunks/{graphql-DPMDE47y.mjs → graphql-68BJxih-.mjs} +2 -2
- package/dist/_chunks/{graphql-DPMDE47y.mjs.map → graphql-68BJxih-.mjs.map} +1 -1
- package/dist/_chunks/{graphql-CtmISqaK.js → graphql-DkkRswQX.js} +2 -2
- package/dist/_chunks/{graphql-CtmISqaK.js.map → graphql-DkkRswQX.js.map} +1 -1
- package/dist/_chunks/{index-C5KW21l3.js → index-BDq2waDf.js} +10 -5
- package/dist/_chunks/index-BDq2waDf.js.map +1 -0
- package/dist/_chunks/{index-CWuibX66.mjs → index-BGwOh3pn.mjs} +10 -5
- package/dist/_chunks/index-BGwOh3pn.mjs.map +1 -0
- package/dist/_chunks/{index-BE_75e6q.mjs → index-BZzycDYD.mjs} +5 -3
- package/dist/_chunks/index-BZzycDYD.mjs.map +1 -0
- package/dist/_chunks/{index-mZzQHKD_.js → index-Bad-j5le.js} +5 -3
- package/dist/_chunks/index-Bad-j5le.js.map +1 -0
- package/dist/_chunks/{index-C-azC_fq.mjs → index-Bfzfv6Qc.mjs} +2 -2
- package/dist/_chunks/{index-C-azC_fq.mjs.map → index-Bfzfv6Qc.mjs.map} +1 -1
- package/dist/_chunks/{index-C43LhapC.mjs → index-CMBj_eWH.mjs} +29 -9
- package/dist/_chunks/index-CMBj_eWH.mjs.map +1 -0
- package/dist/_chunks/{index-WoakSQD0.js → index-CrZqmO6b.js} +2 -2
- package/dist/_chunks/{index-WoakSQD0.js.map → index-CrZqmO6b.js.map} +1 -1
- package/dist/_chunks/{index-DREq-dKv.js → index-DjFXo1ck.js} +29 -9
- package/dist/_chunks/index-DjFXo1ck.js.map +1 -0
- package/dist/_chunks/{index-BxlIY8_C.js → index-GqSGuOp4.js} +3 -3
- package/dist/_chunks/{index-BxlIY8_C.js.map → index-GqSGuOp4.js.map} +1 -1
- package/dist/_chunks/{index-BsdHnx77.mjs → index-zk7NiVB5.mjs} +3 -3
- package/dist/_chunks/{index-BsdHnx77.mjs.map → index-zk7NiVB5.mjs.map} +1 -1
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/admin/src/hooks/useClipboard.d.ts +4 -0
- package/dist/admin/src/hooks/usePersistentState.d.ts +2 -0
- package/dist/admin/src/hooks/useSelectionState.d.ts +9 -0
- package/dist/server/index.js +1 -1
- package/dist/server/index.mjs +1 -1
- package/dist/server/src/bootstrap.d.ts.map +1 -1
- package/dist/server/src/services/weekly-metrics.d.ts.map +1 -1
- package/dist/shared/contracts/configuration.d.ts +44 -0
- package/dist/shared/contracts/files.d.ts +167 -0
- package/dist/shared/contracts/folders.d.ts +141 -0
- package/dist/shared/contracts/settings.d.ts +41 -0
- package/package.json +17 -6
- package/dist/_chunks/index-BE_75e6q.mjs.map +0 -1
- package/dist/_chunks/index-C43LhapC.mjs.map +0 -1
- package/dist/_chunks/index-C5KW21l3.js.map +0 -1
- package/dist/_chunks/index-CWuibX66.mjs.map +0 -1
- package/dist/_chunks/index-DREq-dKv.js.map +0 -1
- package/dist/_chunks/index-mZzQHKD_.js.map +0 -1
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { errors } from '@strapi/utils';
|
|
2
|
+
export type SortOrder = 'ASC' | 'DESC';
|
|
3
|
+
export type SortKey = 'createdAt' | 'name' | 'updatedAt';
|
|
4
|
+
import type { File } from './files';
|
|
5
|
+
export interface Folder {
|
|
6
|
+
id: number;
|
|
7
|
+
name: string;
|
|
8
|
+
pathId: number;
|
|
9
|
+
/**
|
|
10
|
+
* parent id
|
|
11
|
+
*/
|
|
12
|
+
parent?: number;
|
|
13
|
+
/**
|
|
14
|
+
* children ids
|
|
15
|
+
*/
|
|
16
|
+
children?: number[];
|
|
17
|
+
path: string;
|
|
18
|
+
files?: File[];
|
|
19
|
+
}
|
|
20
|
+
type FolderNode = Partial<Folder> & {
|
|
21
|
+
children: FolderNode[];
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* GET /upload/folders/:id - Get specific folder
|
|
25
|
+
*/
|
|
26
|
+
export declare namespace GetFolder {
|
|
27
|
+
interface Request {
|
|
28
|
+
params: {
|
|
29
|
+
id: number;
|
|
30
|
+
};
|
|
31
|
+
query: {};
|
|
32
|
+
}
|
|
33
|
+
interface Response {
|
|
34
|
+
data: Folder;
|
|
35
|
+
error?: errors.ApplicationError | errors.NotFoundError;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* GET /upload/folders - Get folders
|
|
40
|
+
*/
|
|
41
|
+
export declare namespace GetFolders {
|
|
42
|
+
interface Request {
|
|
43
|
+
body: {};
|
|
44
|
+
query: {
|
|
45
|
+
page?: string;
|
|
46
|
+
pageSize?: string;
|
|
47
|
+
sort?: `${SortKey}:${SortOrder}`;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
interface Response {
|
|
51
|
+
data: Folder[];
|
|
52
|
+
error?: errors.ApplicationError | errors.NotFoundError;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* POST /upload/folders - Create folders
|
|
57
|
+
*/
|
|
58
|
+
export declare namespace CreateFolders {
|
|
59
|
+
interface Request {
|
|
60
|
+
body: Pick<Folder, 'name' | 'parent'>;
|
|
61
|
+
}
|
|
62
|
+
interface Response {
|
|
63
|
+
data: Folder;
|
|
64
|
+
error?: errors.ApplicationError | errors.ValidationError;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* PUT /upload/folders/:id - Update a specific folder
|
|
69
|
+
*/
|
|
70
|
+
export declare namespace UpdateFolder {
|
|
71
|
+
interface Request {
|
|
72
|
+
params: {
|
|
73
|
+
id: number;
|
|
74
|
+
};
|
|
75
|
+
query: {};
|
|
76
|
+
body: {
|
|
77
|
+
name: string;
|
|
78
|
+
parent: number | null;
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
interface Response {
|
|
82
|
+
data: Folder;
|
|
83
|
+
error?: errors.ApplicationError | errors.NotFoundError;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* GET /upload/folder-structure
|
|
88
|
+
*
|
|
89
|
+
* Return the structure of a folder.
|
|
90
|
+
*/
|
|
91
|
+
export declare namespace FolderStructureNamespace {
|
|
92
|
+
interface Request {
|
|
93
|
+
query?: {};
|
|
94
|
+
}
|
|
95
|
+
interface Response {
|
|
96
|
+
data: {
|
|
97
|
+
data: number[] & FolderNode[];
|
|
98
|
+
};
|
|
99
|
+
error?: errors.ApplicationError | errors.NotFoundError;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* POST /upload/actions/bulk-delete - Delete Folder
|
|
104
|
+
*/
|
|
105
|
+
export declare namespace BulkDeleteFolders {
|
|
106
|
+
interface Request {
|
|
107
|
+
body: {
|
|
108
|
+
folderIds: number[];
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
interface Response {
|
|
112
|
+
data: {
|
|
113
|
+
data: {
|
|
114
|
+
files: [];
|
|
115
|
+
folders: Folder[];
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
error?: errors.ApplicationError | errors.ValidationError;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* POST /upload/actions/bulk-move - Move Folder
|
|
123
|
+
*/
|
|
124
|
+
export declare namespace BulkMoveFolders {
|
|
125
|
+
interface Request {
|
|
126
|
+
body: {
|
|
127
|
+
folderIds: number[];
|
|
128
|
+
destinationFolderId: number;
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
interface Response {
|
|
132
|
+
data: {
|
|
133
|
+
data: {
|
|
134
|
+
files: [];
|
|
135
|
+
folders: Folder[];
|
|
136
|
+
};
|
|
137
|
+
};
|
|
138
|
+
error?: errors.ApplicationError | errors.ValidationError;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
export {};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Used to store user configurations related to media files.
|
|
3
|
+
* E.g the size optimization flag, the responsive dimensions flag and the auto orientation.
|
|
4
|
+
*/
|
|
5
|
+
import { errors } from '@strapi/utils';
|
|
6
|
+
import { Utils } from '@strapi/types';
|
|
7
|
+
export interface Settings {
|
|
8
|
+
data: {
|
|
9
|
+
sizeOptimization: boolean;
|
|
10
|
+
responsiveDimensions: boolean;
|
|
11
|
+
autoOrientation?: boolean;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* GET /upload/settings
|
|
16
|
+
*
|
|
17
|
+
* Return the stored settings for the media files.
|
|
18
|
+
*/
|
|
19
|
+
export declare namespace GetSettings {
|
|
20
|
+
interface Request {
|
|
21
|
+
query?: {};
|
|
22
|
+
}
|
|
23
|
+
interface Response {
|
|
24
|
+
data: Settings;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* PUT /upload/settings
|
|
29
|
+
*
|
|
30
|
+
* Update the stored settings
|
|
31
|
+
*/
|
|
32
|
+
export declare namespace UpdateSettings {
|
|
33
|
+
interface Request {
|
|
34
|
+
body: Settings['data'];
|
|
35
|
+
}
|
|
36
|
+
type Response = Utils.OneOf<{
|
|
37
|
+
data: Settings['data'];
|
|
38
|
+
}, {
|
|
39
|
+
error?: errors.ApplicationError | errors.ValidationError;
|
|
40
|
+
}>;
|
|
41
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@strapi/upload",
|
|
3
|
-
"version": "5.0.0",
|
|
3
|
+
"version": "5.0.2-beta.0",
|
|
4
4
|
"description": "Makes it easy to upload images and files to your Strapi Application.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"author": {
|
|
@@ -17,11 +17,19 @@
|
|
|
17
17
|
],
|
|
18
18
|
"exports": {
|
|
19
19
|
"./strapi-admin": {
|
|
20
|
+
"types": "./dist/admin/src/index.d.ts",
|
|
20
21
|
"source": "./admin/src/index.js",
|
|
21
22
|
"import": "./dist/admin/index.mjs",
|
|
22
23
|
"require": "./dist/admin/index.js",
|
|
23
24
|
"default": "./dist/admin/index.js"
|
|
24
25
|
},
|
|
26
|
+
"./_internal/shared": {
|
|
27
|
+
"types": "./dist/shared/index.d.ts",
|
|
28
|
+
"source": "./shared/index.ts",
|
|
29
|
+
"import": "./dist/shared/index.mjs",
|
|
30
|
+
"require": "./dist/shared/index.js",
|
|
31
|
+
"default": "./dist/shared/index.js"
|
|
32
|
+
},
|
|
25
33
|
"./strapi-server": {
|
|
26
34
|
"types": "./dist/server/src/index.d.ts",
|
|
27
35
|
"source": "./server/src/index.ts",
|
|
@@ -41,14 +49,17 @@
|
|
|
41
49
|
"lint": "run -T eslint .",
|
|
42
50
|
"test:front": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js",
|
|
43
51
|
"test:unit": "run -T jest",
|
|
52
|
+
"test:ts:back": "run -T tsc --noEmit -p server/tsconfig.json",
|
|
53
|
+
"test:ts:front": "run -T tsc -p admin/tsconfig.json",
|
|
54
|
+
"test:front:watch": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js --watch",
|
|
44
55
|
"test:unit:watch": "run -T jest --watch",
|
|
45
56
|
"watch": "pack-up watch"
|
|
46
57
|
},
|
|
47
58
|
"dependencies": {
|
|
48
59
|
"@strapi/design-system": "2.0.0-rc.11",
|
|
49
60
|
"@strapi/icons": "2.0.0-rc.11",
|
|
50
|
-
"@strapi/provider-upload-local": "5.0.0",
|
|
51
|
-
"@strapi/utils": "5.0.0",
|
|
61
|
+
"@strapi/provider-upload-local": "5.0.2-beta.0",
|
|
62
|
+
"@strapi/utils": "5.0.2-beta.0",
|
|
52
63
|
"byte-size": "8.1.1",
|
|
53
64
|
"cropperjs": "1.6.1",
|
|
54
65
|
"date-fns": "2.30.0",
|
|
@@ -70,9 +81,9 @@
|
|
|
70
81
|
"yup": "0.32.9"
|
|
71
82
|
},
|
|
72
83
|
"devDependencies": {
|
|
73
|
-
"@strapi/admin": "5.0.0",
|
|
84
|
+
"@strapi/admin": "5.0.2-beta.0",
|
|
74
85
|
"@strapi/pack-up": "5.0.0",
|
|
75
|
-
"@strapi/types": "5.0.0",
|
|
86
|
+
"@strapi/types": "5.0.2-beta.0",
|
|
76
87
|
"@testing-library/dom": "10.1.0",
|
|
77
88
|
"@testing-library/react": "15.0.7",
|
|
78
89
|
"@testing-library/user-event": "14.5.2",
|
|
@@ -107,5 +118,5 @@
|
|
|
107
118
|
"required": true,
|
|
108
119
|
"kind": "plugin"
|
|
109
120
|
},
|
|
110
|
-
"gitHead": "
|
|
121
|
+
"gitHead": "335b9a296249c4460db5cdace15f01c8e2d19c5f"
|
|
111
122
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-BE_75e6q.mjs","sources":["../../admin/src/pages/App/ConfigureTheView/components/Settings.jsx","../../admin/src/pages/App/ConfigureTheView/state/actionTypes.js","../../admin/src/pages/App/ConfigureTheView/state/actions.js","../../admin/src/pages/App/ConfigureTheView/state/init.js","../../admin/src/pages/App/ConfigureTheView/state/reducer.js","../../admin/src/pages/App/ConfigureTheView/index.jsx"],"sourcesContent":["import React from 'react';\n\nimport { Box, Grid, SingleSelectOption, SingleSelect, Field } from '@strapi/design-system';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { pageSizes, sortOptions } from '../../../../constants';\nimport getTrad from '../../../../utils/getTrad';\n\nconst Settings = ({ sort = '', pageSize = 10, onChange }) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Grid.Root gap={4}>\n <Grid.Item s={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n hint={formatMessage({\n id: getTrad('config.entries.note'),\n defaultMessage: 'Number of assets displayed by default in the Media Library',\n })}\n name=\"pageSize\"\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('config.entries.title'),\n defaultMessage: 'Entries per page',\n })}\n </Field.Label>\n <SingleSelect\n onChange={(value) => onChange({ target: { name: 'pageSize', value } })}\n value={pageSize}\n >\n {pageSizes.map((pageSize) => (\n <SingleSelectOption key={pageSize} value={pageSize}>\n {pageSize}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Hint />\n </Field.Root>\n </Grid.Item>\n <Grid.Item s={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n hint={formatMessage({\n id: getTrad('config.note'),\n defaultMessage: 'Note: You can override this value in the media library.',\n })}\n name=\"sort\"\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('config.sort.title'),\n defaultMessage: 'Default sort order',\n })}\n </Field.Label>\n <SingleSelect\n onChange={(value) => onChange({ target: { name: 'sort', value } })}\n value={sort}\n test-sort={sort}\n data-testid=\"sort-select\"\n >\n {sortOptions.map((filter) => (\n <SingleSelectOption\n data-testid={`sort-option-${filter.value}`}\n key={filter.key}\n value={filter.value}\n >\n {formatMessage({ id: getTrad(filter.key), defaultMessage: `${filter.value}` })}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Hint />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Box>\n );\n};\n\nSettings.propTypes = {\n sort: PropTypes.string.isRequired,\n pageSize: PropTypes.number.isRequired,\n onChange: PropTypes.func.isRequired,\n};\n\nexport { Settings };\n","import pluginId from '../../../../pluginId';\n\nexport const ON_CHANGE = `${pluginId}/ON_CHANGE`;\nexport const SET_LOADED = `${pluginId}/SET_LOADED`;\n","import { ON_CHANGE, SET_LOADED } from './actionTypes';\n\nexport const onChange = ({ name, value }) => ({\n type: ON_CHANGE,\n keys: name,\n value,\n});\n\nexport const setLoaded = () => ({\n type: SET_LOADED,\n});\n","const initialState = {\n initialData: {},\n modifiedData: {},\n};\n\nconst init = (configData) => {\n return {\n ...initialState,\n initialData: configData,\n modifiedData: configData,\n };\n};\nexport { init, initialState };\n","import { produce } from 'immer'; // current\nimport get from 'lodash/get';\nimport set from 'lodash/set';\n\nimport { ON_CHANGE, SET_LOADED } from './actionTypes';\nimport { init, initialState } from './init';\n\nconst reducer = (state = initialState, action) =>\n // eslint-disable-next-line consistent-return\n produce(state, (draftState) => {\n switch (action.type) {\n case ON_CHANGE: {\n set(draftState, ['modifiedData', ...action.keys.split('.')], action.value);\n break;\n }\n case SET_LOADED: {\n // This action re-initialises the state using the current modifiedData.\n const reInitialise = init(get(draftState, ['modifiedData'], {}));\n draftState.initialData = reInitialise.initialData;\n draftState.modifiedData = reInitialise.modifiedData;\n break;\n }\n default:\n return draftState;\n }\n });\n\nexport default reducer;\n","import React, { useReducer, useState } from 'react';\n\nimport {\n ConfirmDialog,\n useTracking,\n useNotification,\n Page,\n Layouts,\n} from '@strapi/admin/strapi-admin';\nimport { Button, Dialog, Link } from '@strapi/design-system';\nimport { ArrowLeft, Check } from '@strapi/icons';\nimport isEqual from 'lodash/isEqual';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { useConfig } from '../../../hooks/useConfig';\nimport pluginID from '../../../pluginId';\nimport getTrad from '../../../utils/getTrad';\n\nimport { Settings } from './components/Settings';\nimport { onChange, setLoaded } from './state/actions';\nimport { init, initialState } from './state/init';\nimport reducer from './state/reducer';\n\nconst ConfigureTheView = ({ config }) => {\n const { trackUsage } = useTracking();\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { mutateConfig } = useConfig();\n const { isLoading: isSubmittingForm } = mutateConfig;\n\n const [showWarningSubmit, setWarningSubmit] = useState(false);\n const toggleWarningSubmit = () => setWarningSubmit((prevState) => !prevState);\n\n const [reducerState, dispatch] = useReducer(reducer, initialState, () => init(config));\n const { initialData, modifiedData } = reducerState;\n\n const handleSubmit = (e) => {\n e.preventDefault();\n toggleWarningSubmit();\n };\n\n const handleConfirm = async () => {\n trackUsage('willEditMediaLibraryConfig');\n await mutateConfig.mutateAsync(modifiedData);\n setWarningSubmit(false);\n dispatch(setLoaded());\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'notification.form.success.fields',\n defaultMessage: 'Changes saved',\n }),\n });\n };\n\n const handleChange = ({ target: { name, value } }) => {\n dispatch(onChange({ name, value }));\n };\n\n return (\n <Layouts.Root>\n <Page.Main aria-busy={isSubmittingForm}>\n <form onSubmit={handleSubmit}>\n <Layouts.Header\n navigationAction={\n <Link\n tag={NavLink}\n startIcon={<ArrowLeft />}\n to={`/plugins/${pluginID}`}\n id=\"go-back\"\n >\n {formatMessage({ id: getTrad('config.back'), defaultMessage: 'Back' })}\n </Link>\n }\n primaryAction={\n <Button\n size=\"S\"\n startIcon={<Check />}\n disabled={isEqual(modifiedData, initialData)}\n type=\"submit\"\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n subtitle={formatMessage({\n id: getTrad('config.subtitle'),\n defaultMessage: 'Define the view settings of the media library.',\n })}\n title={formatMessage({\n id: getTrad('config.title'),\n defaultMessage: 'Configure the view - Media Library',\n })}\n />\n\n <Layouts.Content>\n <Settings\n data-testid=\"settings\"\n pageSize={modifiedData.pageSize || ''}\n sort={modifiedData.sort || ''}\n onChange={handleChange}\n />\n </Layouts.Content>\n\n <Dialog.Root open={showWarningSubmit} onOpenChange={toggleWarningSubmit}>\n <ConfirmDialog onConfirm={handleConfirm} variant=\"default\">\n {formatMessage({\n id: getTrad('config.popUpWarning.warning.updateAllSettings'),\n defaultMessage: 'This will modify all your settings',\n })}\n </ConfirmDialog>\n </Dialog.Root>\n </form>\n </Page.Main>\n </Layouts.Root>\n );\n};\n\nConfigureTheView.propTypes = {\n config: PropTypes.shape({\n pageSize: PropTypes.number,\n sort: PropTypes.string,\n }).isRequired,\n};\n\nexport default ConfigureTheView;\n"],"names":["onChange","pageSize","pluginID"],"mappings":"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"}
|