@ethisyscore/plugin-ui 1.100.2 → 1.100.4

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.
@@ -240,6 +240,10 @@ Object.defineProperty(exports, "CardHeader", {
240
240
  enumerable: true,
241
241
  get: function () { return material.CardHeader; }
242
242
  });
243
+ Object.defineProperty(exports, "Checkbox", {
244
+ enumerable: true,
245
+ get: function () { return material.Checkbox; }
246
+ });
243
247
  Object.defineProperty(exports, "Chip", {
244
248
  enumerable: true,
245
249
  get: function () { return material.Chip; }
@@ -1,5 +1,5 @@
1
1
  import { DialogProps, SxProps, Theme } from '@mui/material';
2
- export { Alert, AlertTitle, Autocomplete, Box, Breadcrumbs, Button, Card, CardActions, CardContent, CardHeader, Chip, CircularProgress, Collapse, Container, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, FilledInput, FormControl, FormControlLabel, FormGroup, FormHelperText, FormLabel, Grid, IconButton, Input, InputAdornment, InputLabel, LinearProgress, Link, ListItemIcon, ListItemText, Menu, MenuItem, OutlinedInput, Paper, Popover, Select, SelectChangeEvent, Skeleton, Stack, Switch, Tab, Table, TableBody, TableCell, TableContainer, TableFooter, TableHead, TableHead as TableHeader, TableRow, Tabs, TextField, TextareaAutosize, Tooltip, Typography } from '@mui/material';
2
+ export { Alert, AlertTitle, Autocomplete, Box, Breadcrumbs, Button, Card, CardActions, CardContent, CardHeader, Checkbox, Chip, CircularProgress, Collapse, Container, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, FilledInput, FormControl, FormControlLabel, FormGroup, FormHelperText, FormLabel, Grid, IconButton, Input, InputAdornment, InputLabel, LinearProgress, Link, ListItemIcon, ListItemText, Menu, MenuItem, OutlinedInput, Paper, Popover, Select, SelectChangeEvent, Skeleton, Stack, Switch, Tab, Table, TableBody, TableCell, TableContainer, TableFooter, TableHead, TableHead as TableHeader, TableRow, Tabs, TextField, TextareaAutosize, Tooltip, Typography } from '@mui/material';
3
3
  import * as react from 'react';
4
4
 
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  import { DialogProps, SxProps, Theme } from '@mui/material';
2
- export { Alert, AlertTitle, Autocomplete, Box, Breadcrumbs, Button, Card, CardActions, CardContent, CardHeader, Chip, CircularProgress, Collapse, Container, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, FilledInput, FormControl, FormControlLabel, FormGroup, FormHelperText, FormLabel, Grid, IconButton, Input, InputAdornment, InputLabel, LinearProgress, Link, ListItemIcon, ListItemText, Menu, MenuItem, OutlinedInput, Paper, Popover, Select, SelectChangeEvent, Skeleton, Stack, Switch, Tab, Table, TableBody, TableCell, TableContainer, TableFooter, TableHead, TableHead as TableHeader, TableRow, Tabs, TextField, TextareaAutosize, Tooltip, Typography } from '@mui/material';
2
+ export { Alert, AlertTitle, Autocomplete, Box, Breadcrumbs, Button, Card, CardActions, CardContent, CardHeader, Checkbox, Chip, CircularProgress, Collapse, Container, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, FilledInput, FormControl, FormControlLabel, FormGroup, FormHelperText, FormLabel, Grid, IconButton, Input, InputAdornment, InputLabel, LinearProgress, Link, ListItemIcon, ListItemText, Menu, MenuItem, OutlinedInput, Paper, Popover, Select, SelectChangeEvent, Skeleton, Stack, Switch, Tab, Table, TableBody, TableCell, TableContainer, TableFooter, TableHead, TableHead as TableHeader, TableRow, Tabs, TextField, TextareaAutosize, Tooltip, Typography } from '@mui/material';
3
3
  import * as react from 'react';
4
4
 
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  import { FormControl, InputLabel, FilledInput, InputAdornment, IconButton, Dialog as Dialog$1, LinearProgress } from '@mui/material';
2
- export { Alert, AlertTitle, Autocomplete, Box, Breadcrumbs, Button, Card, CardActions, CardContent, CardHeader, Chip, CircularProgress, Collapse, Container, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, FilledInput, FormControl, FormControlLabel, FormGroup, FormHelperText, FormLabel, Grid, IconButton, Input, InputAdornment, InputLabel, LinearProgress, Link, ListItemIcon, ListItemText, Menu, MenuItem, OutlinedInput, Paper, Popover, Select, Skeleton, Stack, Switch, Tab, Table, TableBody, TableCell, TableContainer, TableFooter, TableHead, TableHead as TableHeader, TableRow, Tabs, TextField, TextareaAutosize, Tooltip, Typography } from '@mui/material';
2
+ export { Alert, AlertTitle, Autocomplete, Box, Breadcrumbs, Button, Card, CardActions, CardContent, CardHeader, Checkbox, Chip, CircularProgress, Collapse, Container, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, FilledInput, FormControl, FormControlLabel, FormGroup, FormHelperText, FormLabel, Grid, IconButton, Input, InputAdornment, InputLabel, LinearProgress, Link, ListItemIcon, ListItemText, Menu, MenuItem, OutlinedInput, Paper, Popover, Select, Skeleton, Stack, Switch, Tab, Table, TableBody, TableCell, TableContainer, TableFooter, TableHead, TableHead as TableHeader, TableRow, Tabs, TextField, TextareaAutosize, Tooltip, Typography } from '@mui/material';
3
3
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
4
4
  import { memo, useState, useId, useRef, useEffect, useCallback } from 'react';
5
5
 
@@ -1,6 +1,6 @@
1
1
  import { T as ToolInvoker } from '../mcpService-4h3sKDpW.cjs';
2
- import { C as ConnectorCanonicalField, h as MappingCompletenessResult, c as ConnectorMappingSuggestionResult, m as TestToolMappingResult, i as MappingReadiness, g as MappingCompletenessItem, d as ConnectorMappingTranslationEditorProps, f as MappingCompletenessBannerProps } from '../mappingQueryKeys-BcbA0TGy.cjs';
3
- export { a as CONNECTOR_CONTROL_LABEL, b as ConnectorCanonicalFieldKind, P as PLUGIN_PROVIDER_CONTROL_LABEL, j as PROVIDER_CONTROL_LABEL, k as PROVIDER_OPTION_LABEL, T as TestToolMappingExtractedField, l as TestToolMappingRequest, n as connectorMappingCompletenessQueryKey, o as connectorMappingsQueryKey, p as connectorMappingsRootQueryKey, q as pluginTargetMappingsQueryKey, s as selectIncompleteOperations, r as selectMappingReadiness, t as selectOptionalIncompleteOperations, u as selectRequiredIncompleteOperations } from '../mappingQueryKeys-BcbA0TGy.cjs';
2
+ import { C as ConnectorCanonicalField, h as MappingCompletenessResult, c as ConnectorMappingSuggestionResult, m as TestToolMappingResult, i as MappingReadiness, g as MappingCompletenessItem, d as ConnectorMappingTranslationEditorProps, f as MappingCompletenessBannerProps } from '../mappingQueryKeys-KONuceBb.cjs';
3
+ export { a as CONNECTOR_CONTROL_LABEL, b as ConnectorCanonicalFieldKind, P as PLUGIN_PROVIDER_CONTROL_LABEL, j as PROVIDER_CONTROL_LABEL, k as PROVIDER_OPTION_LABEL, T as TestToolMappingExtractedField, l as TestToolMappingRequest, n as connectorMappingCompletenessQueryKey, o as connectorMappingsQueryKey, p as connectorMappingsRootQueryKey, q as pluginTargetMappingsQueryKey, s as selectIncompleteOperations, r as selectMappingReadiness, t as selectOptionalIncompleteOperations, u as selectRequiredIncompleteOperations } from '../mappingQueryKeys-KONuceBb.cjs';
4
4
  import { UseMutationResult } from '@tanstack/react-query';
5
5
  import 'react';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { T as ToolInvoker } from '../mcpService-4h3sKDpW.js';
2
- import { C as ConnectorCanonicalField, h as MappingCompletenessResult, c as ConnectorMappingSuggestionResult, m as TestToolMappingResult, i as MappingReadiness, g as MappingCompletenessItem, d as ConnectorMappingTranslationEditorProps, f as MappingCompletenessBannerProps } from '../mappingQueryKeys-BcbA0TGy.js';
3
- export { a as CONNECTOR_CONTROL_LABEL, b as ConnectorCanonicalFieldKind, P as PLUGIN_PROVIDER_CONTROL_LABEL, j as PROVIDER_CONTROL_LABEL, k as PROVIDER_OPTION_LABEL, T as TestToolMappingExtractedField, l as TestToolMappingRequest, n as connectorMappingCompletenessQueryKey, o as connectorMappingsQueryKey, p as connectorMappingsRootQueryKey, q as pluginTargetMappingsQueryKey, s as selectIncompleteOperations, r as selectMappingReadiness, t as selectOptionalIncompleteOperations, u as selectRequiredIncompleteOperations } from '../mappingQueryKeys-BcbA0TGy.js';
2
+ import { C as ConnectorCanonicalField, h as MappingCompletenessResult, c as ConnectorMappingSuggestionResult, m as TestToolMappingResult, i as MappingReadiness, g as MappingCompletenessItem, d as ConnectorMappingTranslationEditorProps, f as MappingCompletenessBannerProps } from '../mappingQueryKeys-KONuceBb.js';
3
+ export { a as CONNECTOR_CONTROL_LABEL, b as ConnectorCanonicalFieldKind, P as PLUGIN_PROVIDER_CONTROL_LABEL, j as PROVIDER_CONTROL_LABEL, k as PROVIDER_OPTION_LABEL, T as TestToolMappingExtractedField, l as TestToolMappingRequest, n as connectorMappingCompletenessQueryKey, o as connectorMappingsQueryKey, p as connectorMappingsRootQueryKey, q as pluginTargetMappingsQueryKey, s as selectIncompleteOperations, r as selectMappingReadiness, t as selectOptionalIncompleteOperations, u as selectRequiredIncompleteOperations } from '../mappingQueryKeys-KONuceBb.js';
4
4
  import { UseMutationResult } from '@tanstack/react-query';
5
5
  import 'react';
6
6
 
@@ -266,6 +266,27 @@ declare const PLUGIN_PROVIDER_CONTROL_LABEL = "App";
266
266
  /** Label of the control that picks WHICH connector, once "external system" is chosen. */
267
267
  declare const CONNECTOR_CONTROL_LABEL = "Connector";
268
268
 
269
+ /**
270
+ * The reserved request-field-map value meaning "do not send this canonical field to the tool at
271
+ * all". The host reads it in `ConnectorRequestFieldSuppression` (CoreConnect.Application.Common);
272
+ * this is the editor's copy of the same literal, exported so consumers and tests name it rather
273
+ * than retyping it.
274
+ *
275
+ * <p><b>Why an operator needs it.</b> A blank input means "identity - send this field under its
276
+ * canonical name", and until the host learned this sentinel that was the ONLY thing the request
277
+ * side could say besides a rename. So an operation pointed at a tool with no property for one of
278
+ * its canonical inputs sent it anyway, and a tool whose input schema is
279
+ * <code>additionalProperties: false</code> rejects the entire call for the unknown key - not the
280
+ * field, the call. Ticking "Do not send" writes this value; the host's translator then omits the
281
+ * field from the request.</p>
282
+ *
283
+ * <p><b>Why this literal.</b> It has to be a value no tool could declare as an input property name,
284
+ * or a genuine rename onto that name would be swallowed. Parentheses are the discriminator: they
285
+ * are not valid in an identifier in any mainstream language, and across the tool inventory the
286
+ * platform has discovered, no input property name contains one. They also make the row read as an
287
+ * instruction rather than a name.</p>
288
+ */
289
+ declare const SUPPRESS_REQUEST_FIELD_VALUE = "(suppress)";
269
290
  interface ConnectorMappingTranslationEditorProps {
270
291
  open: boolean;
271
292
  /**
@@ -470,4 +491,4 @@ declare function pluginTargetMappingsQueryKey(moduleKey: string): readonly ["con
470
491
  */
471
492
  declare function connectorMappingCompletenessQueryKey(connectorId: string | undefined, moduleKey: string): readonly ["connector-mappings", string | undefined, string, "completeness"];
472
493
 
473
- export { type ConnectorCanonicalField as C, MappingCompletenessBanner as M, PLUGIN_PROVIDER_CONTROL_LABEL as P, type TestToolMappingExtractedField as T, CONNECTOR_CONTROL_LABEL as a, type ConnectorCanonicalFieldKind as b, type ConnectorMappingSuggestionResult as c, type ConnectorMappingTranslationEditorProps as d, ConnectorMappingTranslationEditorView as e, type MappingCompletenessBannerProps as f, type MappingCompletenessItem as g, type MappingCompletenessResult as h, type MappingReadiness as i, PROVIDER_CONTROL_LABEL as j, PROVIDER_OPTION_LABEL as k, type TestToolMappingRequest as l, type TestToolMappingResult as m, connectorMappingCompletenessQueryKey as n, connectorMappingsQueryKey as o, connectorMappingsRootQueryKey as p, pluginTargetMappingsQueryKey as q, selectMappingReadiness as r, selectIncompleteOperations as s, selectOptionalIncompleteOperations as t, selectRequiredIncompleteOperations as u };
494
+ export { type ConnectorCanonicalField as C, MappingCompletenessBanner as M, PLUGIN_PROVIDER_CONTROL_LABEL as P, SUPPRESS_REQUEST_FIELD_VALUE as S, type TestToolMappingExtractedField as T, CONNECTOR_CONTROL_LABEL as a, type ConnectorCanonicalFieldKind as b, type ConnectorMappingSuggestionResult as c, type ConnectorMappingTranslationEditorProps as d, ConnectorMappingTranslationEditorView as e, type MappingCompletenessBannerProps as f, type MappingCompletenessItem as g, type MappingCompletenessResult as h, type MappingReadiness as i, PROVIDER_CONTROL_LABEL as j, PROVIDER_OPTION_LABEL as k, type TestToolMappingRequest as l, type TestToolMappingResult as m, connectorMappingCompletenessQueryKey as n, connectorMappingsQueryKey as o, connectorMappingsRootQueryKey as p, pluginTargetMappingsQueryKey as q, selectMappingReadiness as r, selectIncompleteOperations as s, selectOptionalIncompleteOperations as t, selectRequiredIncompleteOperations as u };
@@ -266,6 +266,27 @@ declare const PLUGIN_PROVIDER_CONTROL_LABEL = "App";
266
266
  /** Label of the control that picks WHICH connector, once "external system" is chosen. */
267
267
  declare const CONNECTOR_CONTROL_LABEL = "Connector";
268
268
 
269
+ /**
270
+ * The reserved request-field-map value meaning "do not send this canonical field to the tool at
271
+ * all". The host reads it in `ConnectorRequestFieldSuppression` (CoreConnect.Application.Common);
272
+ * this is the editor's copy of the same literal, exported so consumers and tests name it rather
273
+ * than retyping it.
274
+ *
275
+ * <p><b>Why an operator needs it.</b> A blank input means "identity - send this field under its
276
+ * canonical name", and until the host learned this sentinel that was the ONLY thing the request
277
+ * side could say besides a rename. So an operation pointed at a tool with no property for one of
278
+ * its canonical inputs sent it anyway, and a tool whose input schema is
279
+ * <code>additionalProperties: false</code> rejects the entire call for the unknown key - not the
280
+ * field, the call. Ticking "Do not send" writes this value; the host's translator then omits the
281
+ * field from the request.</p>
282
+ *
283
+ * <p><b>Why this literal.</b> It has to be a value no tool could declare as an input property name,
284
+ * or a genuine rename onto that name would be swallowed. Parentheses are the discriminator: they
285
+ * are not valid in an identifier in any mainstream language, and across the tool inventory the
286
+ * platform has discovered, no input property name contains one. They also make the row read as an
287
+ * instruction rather than a name.</p>
288
+ */
289
+ declare const SUPPRESS_REQUEST_FIELD_VALUE = "(suppress)";
269
290
  interface ConnectorMappingTranslationEditorProps {
270
291
  open: boolean;
271
292
  /**
@@ -470,4 +491,4 @@ declare function pluginTargetMappingsQueryKey(moduleKey: string): readonly ["con
470
491
  */
471
492
  declare function connectorMappingCompletenessQueryKey(connectorId: string | undefined, moduleKey: string): readonly ["connector-mappings", string | undefined, string, "completeness"];
472
493
 
473
- export { type ConnectorCanonicalField as C, MappingCompletenessBanner as M, PLUGIN_PROVIDER_CONTROL_LABEL as P, type TestToolMappingExtractedField as T, CONNECTOR_CONTROL_LABEL as a, type ConnectorCanonicalFieldKind as b, type ConnectorMappingSuggestionResult as c, type ConnectorMappingTranslationEditorProps as d, ConnectorMappingTranslationEditorView as e, type MappingCompletenessBannerProps as f, type MappingCompletenessItem as g, type MappingCompletenessResult as h, type MappingReadiness as i, PROVIDER_CONTROL_LABEL as j, PROVIDER_OPTION_LABEL as k, type TestToolMappingRequest as l, type TestToolMappingResult as m, connectorMappingCompletenessQueryKey as n, connectorMappingsQueryKey as o, connectorMappingsRootQueryKey as p, pluginTargetMappingsQueryKey as q, selectMappingReadiness as r, selectIncompleteOperations as s, selectOptionalIncompleteOperations as t, selectRequiredIncompleteOperations as u };
494
+ export { type ConnectorCanonicalField as C, MappingCompletenessBanner as M, PLUGIN_PROVIDER_CONTROL_LABEL as P, SUPPRESS_REQUEST_FIELD_VALUE as S, type TestToolMappingExtractedField as T, CONNECTOR_CONTROL_LABEL as a, type ConnectorCanonicalFieldKind as b, type ConnectorMappingSuggestionResult as c, type ConnectorMappingTranslationEditorProps as d, ConnectorMappingTranslationEditorView as e, type MappingCompletenessBannerProps as f, type MappingCompletenessItem as g, type MappingCompletenessResult as h, type MappingReadiness as i, PROVIDER_CONTROL_LABEL as j, PROVIDER_OPTION_LABEL as k, type TestToolMappingRequest as l, type TestToolMappingResult as m, connectorMappingCompletenessQueryKey as n, connectorMappingsQueryKey as o, connectorMappingsRootQueryKey as p, pluginTargetMappingsQueryKey as q, selectMappingReadiness as r, selectIncompleteOperations as s, selectOptionalIncompleteOperations as t, selectRequiredIncompleteOperations as u };
@@ -30,6 +30,73 @@ function _interopNamespace(e) {
30
30
  var extensionRuntime__namespace = /*#__PURE__*/_interopNamespace(extensionRuntime);
31
31
 
32
32
  // src/platform-react/definePlatformReactPluginPage.tsx
33
+
34
+ // src/components/shared/toast.ts
35
+ function dispatchToast(title, description, variant) {
36
+ if (typeof window === "undefined" || title.length === 0) {
37
+ return;
38
+ }
39
+ window.dispatchEvent(new CustomEvent("ethisys:toast", { detail: { title, description, variant } }));
40
+ }
41
+ function showErrorToast(title, description) {
42
+ dispatchToast(title, description, "error");
43
+ }
44
+
45
+ // src/platform-react/pluginQueryClient.ts
46
+ var STATUS_TITLES = /* @__PURE__ */ new Map([
47
+ ["NotFound", "Not Found"],
48
+ ["Unauthorized", "Authentication Error"],
49
+ ["Forbidden", "Access Denied"],
50
+ ["Conflict", "Conflict"]
51
+ ]);
52
+ var UNTITLED_STATUSES = /* @__PURE__ */ new Set(["Invalid", "Error", "CriticalError", "Unavailable", "Accepted"]);
53
+ var GENERIC_TITLE = "Error";
54
+ function isKnownStatus(status) {
55
+ return STATUS_TITLES.has(status) || UNTITLED_STATUSES.has(status);
56
+ }
57
+ function splitStatusPrefix(message) {
58
+ const match = /^\[([A-Za-z]+)\]\s*(.*)$/s.exec(message);
59
+ if (match === null) {
60
+ return { status: null, body: message };
61
+ }
62
+ const [, status, body] = match;
63
+ if (!isKnownStatus(status)) {
64
+ return { status: null, body: message };
65
+ }
66
+ return body.length > 0 ? { status, body } : { status: null, body: message };
67
+ }
68
+ function surfaceError(error, meta) {
69
+ if (meta?.suppressErrorToast === true) {
70
+ return;
71
+ }
72
+ const raw = error instanceof Error && error.message.length > 0 ? error.message : "An unexpected error occurred";
73
+ const { status, body } = splitStatusPrefix(raw);
74
+ const title = meta?.errorTitle ?? (status !== null ? STATUS_TITLES.get(status) ?? GENERIC_TITLE : GENERIC_TITLE);
75
+ showErrorToast(title, body);
76
+ }
77
+ function createPluginQueryClient(config) {
78
+ return new reactQuery.QueryClient({
79
+ queryCache: new reactQuery.QueryCache({
80
+ onError: (error, query) => surfaceError(error, query.meta)
81
+ }),
82
+ mutationCache: new reactQuery.MutationCache({
83
+ onError: (error, _variables, _context, mutation) => surfaceError(error, mutation.meta)
84
+ }),
85
+ ...config,
86
+ defaultOptions: {
87
+ // Spread first so `mutations`, `dehydrate`, `hydrate` and anything else react-query
88
+ // adds to `DefaultOptions` survive. Rebuilding this object from named keys instead
89
+ // silently dropped them, which contradicted the merge promised just above.
90
+ ...config?.defaultOptions,
91
+ queries: {
92
+ retry: 1,
93
+ refetchOnWindowFocus: false,
94
+ staleTime: 3e4,
95
+ ...config?.defaultOptions?.queries
96
+ }
97
+ }
98
+ });
99
+ }
33
100
  var TemplateContext = react.createContext(null);
34
101
  function injectPluginStyles(id, css) {
35
102
  if (typeof document === "undefined") return;
@@ -249,18 +316,7 @@ function useReportingCurrencySync() {
249
316
  }
250
317
 
251
318
  // src/platform-react/definePlatformReactPluginPage.tsx
252
- function makeDefaultQueryClient() {
253
- return new reactQuery.QueryClient({
254
- defaultOptions: {
255
- queries: {
256
- retry: 1,
257
- refetchOnWindowFocus: false,
258
- staleTime: 3e4
259
- }
260
- }
261
- });
262
- }
263
- var defaultQueryClient = makeDefaultQueryClient();
319
+ var defaultQueryClient = createPluginQueryClient();
264
320
  var EHX_PLUGIN_ROOT_CLASS = "ehx-plugin-root";
265
321
  function definePlatformReactPluginPage(Page, options) {
266
322
  const {
@@ -751,18 +807,7 @@ function useOverlayHost() {
751
807
  }
752
808
  return api;
753
809
  }
754
- function makeDefaultQueryClient2() {
755
- return new reactQuery.QueryClient({
756
- defaultOptions: {
757
- queries: {
758
- retry: 1,
759
- refetchOnWindowFocus: false,
760
- staleTime: 3e4
761
- }
762
- }
763
- });
764
- }
765
- var defaultQueryClient2 = makeDefaultQueryClient2();
810
+ var defaultQueryClient2 = createPluginQueryClient();
766
811
  function definePlatformReactPluginOverlay(Overlay, options) {
767
812
  const { rootClassName, styleId, css, manifest = {}, queryClient = defaultQueryClient2, wrapOverlay } = options;
768
813
  return function MountedOverlay(props) {
@@ -1203,6 +1248,7 @@ exports.TypedMcpService = TypedMcpService;
1203
1248
  exports.buildSurfaceUrl = buildSurfaceUrl;
1204
1249
  exports.createPluginOverlayDefiner = createPluginOverlayDefiner;
1205
1250
  exports.createPluginPageDefiner = createPluginPageDefiner;
1251
+ exports.createPluginQueryClient = createPluginQueryClient;
1206
1252
  exports.createReactRouterShim = createReactRouterShim;
1207
1253
  exports.createUseView = createUseView;
1208
1254
  exports.definePlatformReactPluginOverlay = definePlatformReactPluginOverlay;